Embedded Systems - 2015-2
Professor: Arliones Hoeller
- Meetings: Tuesdays, 7:30 am and Fridays 9:40 am at Computing Networks I Lab.
- Office hours
- Tuesdays from 10:35 to 11:30
- Thursdays from 14:25 to 15:20
Grades
Student
|
HW1
|
HW2
|
HW3
|
HW4
|
Project
|
Final
|
121000556-5 |
A |
A |
X |
A |
A |
A
|
121003145-0 |
A |
C |
X |
A |
B |
B
|
121001865-9 |
B |
B |
X |
A |
A |
A
|
121000653-7 |
B |
C |
X |
A |
A |
B
|
121003004-7 |
A |
B |
X |
A |
B |
A
|
122002047-8 |
A |
B |
X |
A |
A |
A
|
Lab Experiments
The experiments in this course are based on the project Embedded Systems Experiments for the Telecommunication Engineering Undergraduate Program.
See this page for the Experimental Setup.
We will use the Arduino Uno board as hardware platform, and will be developing software in C/C++ using the GNU compiler with the avrlibc.
We have plenty of Arduinos for use in the classroom, but if you can afford, you are encouraged to buy one for yourself to work on the extra-class assignments. They are available for less than R$50. check MercadoLivre.
Arduino's microcontroller is Atmel's ATMega328P. Download its manual here.
Syllabus
Unit 01 - Get In: Hands on Microcontroller Software
|
Unit 01 - Get In: Hands on Microcontroller Software
Introduction to Embedded Systems
Embedded Systems Development: Design Principles
General Porpuse Input Output and External Interrupts
Serial Communication
Input/Output Buffers
Analog-to-Digital Conversion
Digital-to-Analog Conversion
|
Unit 02 - Get Right: Introduction to Real-Time Systems
|
Unit 02 - Get Right: Introduction to Real-Time Systems
Multitasking
Real-Time Scheduling
|
Unit 03 - Get Out: Networked Embedded Systems
|
Unit 03 - Get Out: Networked Embedded Systems
Embedded Networks and Multiprocessors
Embedded Networks Seminar
- Will be covered by seminars. See Homework 04.
|
Unit 04 - Get Done: Embedded System Design
|
Unit 04 - Get Done: Embedded System Design
|
Homework
Homework 01: UART and Input/Output Buffers - Deadline: Nov. 20th, 2015
|
For this homework, each student must:
- Execute Lab 05: UART - Interrupts and Circular Buffer.
- Implement an UART Loopback Application with the following characteristics:
- Use the Round-Robin With Interrupts architecture (suggestion: model it using a state-machine);
- Use separate input and output buffers with configurable length;
- Modify the application loop to use a delay to simulate data processing for each received byte (see loop pseudo-code bellow);
- Considering the application as a queue system, where bytes arrive through the serial and leave through the output buffer, analyze this communication problem using the queueing theory utilization theorem:
- Define the worst-case arrival rate (A, in bytes/second, remember that an 8N1 serial will send 1 start bit, 8 data bits, and 1 stop bit);
- Define the worst-case departure rate (D, in bytes/second, assume it is, in theory, the inverse of the processing time);
- Compute the utilization of the queue (U=A/D, meaning that U is the amount of bytes going to the queue every second);
- Build a graph where the x axis is the processing time (P={1,4,8}, ms) and the y axis is the minimum buffer size for a 1-second data transfer busrt;
- Plot in this graph curves for different UART bitrates (B={19200,57600,115200}, bps).
- Finally, run the nine configurations of the experiment (PxB) in your board.
- Compare the experimental results to the analytical model;
- Plot the same graph for the experimental results;
- Discuss and justify the differences and/or similarities of the analytical and experimental results.
Pseudo-code for the test application:
void loop() {
char x = read_from_input_buffer();
delay(TIME);
write_to_output_buffer(x);
}
Students must hand-in the source code used in the experiment and a short report (2 pages max.) consisting of:
- Introduction (describe the problem being studied)
- Analytical model (equations and graph)
- Experimental Setup (Material and Methods)
- Results (the other graph)
- Discussion
This template can be used to build the report.
|
Homework 02: Analog and Digital Interchanges - Deadline: Dec. 11th, 2015
|
For this homework, each student must:
- Execute Lab 06: Analog-to-Digital Converters.
- Execute Lab 07: NTC - Negative Temperature Coeficient.
- Implement and calibrate a digital thermometer using the NTC 10KOhm Thermistor using an application with the following characteristics:
- Use the Round-Robin With Interrupts architecture (suggestion: model it using a state-machine);
- Use an ADC buffer to store ADC conversions;
- Implement the Steinhart-Hart model for the Thermistor reading and calibrate it;
- Implement the Beta model for the Thermistor reading and calibrate it;
- Compare the precision of both models and write a report containing:
- Introduction (describe the problem being studied)
- Analytical models (equations and graphs)
- Experimental Setup (Material and Methods)
- Results (experimental graphs)
- Discussion
This template can be used to build the report.
|
Homework 03: Real-Time Operating System - Deadline: Dec. 22nd, 2015
|
|
Homework 04: Embedded Networks - Deadline: Feb. 5th, 2016
|
- In groups of two, students must choose one of the papers bellow and present a seminar during class. Students must:
- Hand-in to the Professor an one-page abstract of the paper (72 hours before presentation)
- Publish for the audience a set of slides (24h before presentation)
- Present a talk on the paper that must last between 25 and 30 minutes
- Papers:
- Group 1: Thiago Werner e Elton Broering
- Khanafer, M.; Guennoun, M.; Mouftah, H.T., "A Survey of Beacon-Enabled IEEE 802.15.4 MAC Protocols in Wireless Sensor Networks", in Communications Surveys & Tutorials, IEEE , vol.16, no.2, pp.856-876, Second Quarter 2014.
- Group 2: Jean Sant'Ana e Danilo Bedaque
- Group 3: Thiago Bonotto e Tiago Teixeira
- Khazali, I.; Boulais, M.; Cole, P., "AFDX software network stack implementation — Practical lessons learned", in Digital Avionics Systems Conference, 2009. DASC '09. IEEE/AIAA 28th , vol., no., pp.1.B.5-1-1.B.5-10, 23-29 Oct. 2009.
- Kemayo, G.; Benammar, N.; Ridouard, F.; Bauer, H.; Richard, P., "Improving AFDX end-to-end delays analysis", in Emerging Technologies & Factory Automation (ETFA), 2015 IEEE 20th Conference on , vol., no., pp.1-8, 8-11 Sept. 2015.
|