INDICATIVE CONTENT
An embedded system is a device or product which contains one or more tiny computers hidden inside it. This ‘hidden computer’, usually a microcontroller, is used to control the device and give it added ‘intelligence’. Embedded systems are a key aspect of modern engineering and are applied in areas as diverse as automotive, medical, and industrial, and in the home and office. In many cases, embedded systems are linked together in networks. Embedded systems are the basis of a new wave of engineering design and practice, notably in machine-to-machine communication and in the Internet of Things.
This unit builds on introductory knowledge students have already gained in electronic circuits. It develops their knowledge of computer hardware, focussing on the small, low-cost type of computer (i.e. a microcontroller), usually used in embedded systems. It then develops skill in devising circuits which operate external to the microcontroller and interface with it; generally, these relate to sensors, actuators, human interface or data transfer. In parallel with this, students will be developing programming skills, writing programmes which download straight to the microcontroller and cause it to interact with its external circuit. Students will also explore the wider context of embedded systems, learning how they are applied in ‘hi-tech’ applications, in many cases revolutionising our ability to undertake certain activities.
Unit assessment will require the design, development, construction and commissioning of an embedded system, meeting a given design brief; this will develop skills which are in much demand in industry. A written assignment, exploring one or more of the many fast-moving embedded system applications in use today, will also be completed.
Microcontroller architecture:
CPU (Central Processing Unit), the instruction set, programme memory, data memory, input/output (I/O), data and address buses, van Neumann and Harvard structures
Peripherals, to include digital I/O, counter/timers, analogue to digital converter (ADC), pulse width modulation (PWM), Serial Peripheral Interface (SPI), Universal Asynchronous Receiver/Transmitter (UART)
Memory types (overview only): Flash, Static RAM (Random Access Memory)
EEPROM (Electrically Erasable Read Only Memory) and their applications
Simple interrupt concepts
Simple digital interfacing:
Switches, light emitting diodes (LEDs), keypads, and 7-segment displays
DC and ADC applications:
DC load switching (e.g. of small motor or solenoid), use of PWM to provide variable DC motor speed control
ADC application, including range and resolution
Signal conditioning for analogue inputs, including simple op amp circuits to provide gain or level shifting Interfacing to external devices with serial capability, applying SPI and UART
Power supply and clock oscillator
The development cycle:
Integrated Development Environment, Assembler and High Level Languages, compilers, simulators, completing an in-circuit debug
Devising a code structure e.g. using flow diagrams and pseudo code
Programming languages and codes:
Review of an appropriate high level programming language (which is likely to be C). Language structure, data types, programme flow, looping, branching, and conditional
Developing application code: initialisation, data input, conditional branching and looping, data output
Code simulation, download, test and debug
Review of application of embedded systems:
Using example sectors e.g. motor vehicle, smart buildings, medical, office, wearable. Review possible limiting factors in an embedded design e.g. power supply, reliability, security
Review of current trends in embedded systems, including the Internet of Things and machine-to-machine
ADDITIONAL ASSESSMENT DETAILS
A 1500-word practical project, involving the design, development, construction and commissioning of an embedded system, meeting a given design brief, weighted at 50%.
Assessing Learning Outcomes 2 and 3. A 1500 word written assignment, exploring one or more of the many fast-moving embedded system applications in use today, weighted at 50%. Assessing Learning Outcomes 1 and 4.
LEARNING STRATEGIES
Whole group lectures will be used to deliver new material and to consolidate previous material. Small-group tutorials, with activities designed to enhance the understanding of the material delivered in the lectures, will be used to apply the skills and knowledge learned. A mixture of classroom based and practical activities will take place supported by staff.
LEARNING OUTCOMES
Explore the principle features of a microcontroller and explain the purpose of its constituent parts.
Design and implement simple external circuitry, interfacing with a given microcontroller.
Write well-structured code in an appropriate programming language, to simulate, test and debug it.
Evaluate the applications of embedded systems in the wider environment, including in networked systems.
RESOURCES
Electronics laboratory with microprocessor matrix kits and PCs with coding software.
TEXTS
BLUM, J. (2013) Exploring Arduino. Wiley.
TOULSON, R. and WILMSHURST, T. (2012) Fast and Effective Embedded System Design: Applying the ARM. Newnes.
WILMSHURST, T. (2009) Designing Embedded Systems with PIC Microcontrollers: Principles and Applications. 2nd Ed. Newnes.
SPECIAL ADMISSIONS REQUIREMENTS
Must be registered on HNC/D Electrical and Electronic Engineering provision at South Staffordshire College.
WEB DESCRIPTOR
An embedded system is a device or product which contains one or more tiny computers hidden inside it. This ‘hidden computer’, usually a microcontroller, is used to control the device and give it added ‘intelligence’. Embedded systems are a key aspect of modern engineering and are applied in areas as diverse as automotive, medical, and industrial, and in the home and office. In many cases, embedded systems are linked together in networks. Embedded systems are the basis of a new wave of engineering design and practice, notably in machine-to-machine communication and in the Internet of Things.
This unit builds on introductory knowledge you have already gained in electronic circuits. It develops your knowledge of computer hardware, focussing on the small, low-cost type of computer (i.e. a microcontroller), usually used in embedded systems. It then develops skill in devising circuits which operate external to the microcontroller and interface with it; generally, these relate to sensors, actuators, human interface or data transfer. In parallel with this, you will be developing programming skills, writing programmes which download straight to the microcontroller and cause it to interact with its external circuit. You will also explore the wider context of embedded systems, learning how they are applied in ‘hi-tech’ applications, in many cases revolutionising our ability to undertake certain activities.
Unit assessment will require the design, development, construction and commissioning of an embedded system, meeting a given design brief; this will develop skills which are in much demand in industry. A written assignment, exploring one or more of the many fast-moving embedded system applications in use today, will also be completed.