MECT06007 2013 Programming Communications and Interfacing
On completion, the learner will be able to design and implement a program based control unit which will make decisions based on sensor input to drive actuators. e.g. Control unit detects temperature rise and turns on a fan. During this they will interface an application program to a given API to implement some function (e.g. interface to a LabJack, send a text message)
The learner will also learn basic digital/internet communications, how to choose a sensor for a set of datasheets and serial transmission of ASCII data.
On completion of this module the learner will/should be able to;
Recall numbering systems (decimal, binary, hexadecimal) and to convert between them
construct an ASCII serial transmission diagram based on a set of characters
choose a suitable sensor for a project by comparing datasheets based on memorized sensor attributes.
describe how IP packets are transmitted on the internet and outline the main elements of a network and the meaning of the IP packet header attributes.
design and implement a simple monitoring program which will read data from a sensor and make decisions based on the input data. The program should be able to drive some output or actuator based on the decision made
interface an application program to a given API with the corresponding documentation to implement a function (e.g. interface to a LabJack, send a text message)
Module Assessment Strategies
- Quizzes/questions on basic knowledge of communications
- Programming assignments
- Prescribed programming project which will monitor some real world attribute using a sensor and drive a real world output based on a program. (e.g. lights are turned off and an SMS is sent to a phone)
Numbering systems (10%)
- Bases and structure of numbering systems (base 10, base 2, base 16)
- Conversion between binary and hexadecimal
- Conversion between decimal and (binary/hexadecimal)
ASCII transmission (10%)
- How to lookup a simple message ('Hello') in the ASCII table in hexadecimal values
- Convert these to a binary stream and sketch the serially transmitted waveform including start and stop bits
- Canculate the time taken to transmit a message if baud rate (bits/sec) given.
Evaluating sensor datasheets (10%)
- recall the main attributes of a sensor based on a datasheet
- Accuracy, range, span, resolution, sensitivity, hysteresis)
- Use a datasheet to determine if a sensor is suitable for a project.
- Appreciation of IP packet header operation and how packets are routed from source to destination
- NAT, DNS, PC configuration (IP address, Subnet mask, default gateway)
- Exposure to a network monitor such as wireshark
- To design and implement a program based control unit which will make decisions based on sensor input to drive actuators. e.g. Control unit detects temperature rise and turns on a fan.
- To use straightforward documentation and a given API to interface an application program to a function (read a sensor from a labjack, send a text message, etc).
Coursework & Assessment Breakdown
|Title||Type||Form||Percent||Week||Learning Outcomes Assessed|
|1||Assignments based on subject matter||Continuous Assessment||Assignment||30 %||OnGoing||1,2,3,4,5,6|
|2||Two prescribed sensor/actuator programming projects||Continuous Assessment||Practical Evaluation||30 %||End of Term||5,6|
|3||Final exam||Continuous Assessment||Closed Book Exam||40 %||End of Term||1,2,3,4|
Part Time Mode Workload
|Lecture||Distance Learning Suite||Lecture||2||Weekly||2.00|
|Laboratory Practical||Distance Learning Suite||Practical||2||Weekly||2.00|
Programming resources (will be given on module commencement)
Cisco Packet Tracer
As this modules is well linked to industry, prescribed projects will be based on real needs of industry to control and monitor various attributes of their environment.