In this lesson, you'll explore key components like sensors and actuators, learn step-by-step system design, assign team roles, discuss ethics, and create an initial plan.
Embedded systems are specialised computers integrated into devices for specific tasks, like a smart thermostat. You'll design automated applications while being flexible with tech like Micro:bit or Arduino.
It should span several sessions, allowing you time to think deeply and collaborate with your team.
Start by understanding core components of embedded systems, referencing foundations like CPU architecture and digital vs. analogue inputs from earlier lessons. Embedded systems integrate these components to perform specific tasks efficiently.
Key components include:
This demonstrates abstraction: focusing on essential parts while ignoring unnecessary details to simplify design.
Now, design your embedded system step by step. This process builds on computational thinking skills like problem-solving and algorithmic thinking, helping you break down complex tasks into manageable parts.
IF sensor_value > threshold THEN activate actuator
.Example Pseudocode for a Light-Activated LED:
WHILE true
read analogue input from light sensor
IF input < 500 THEN
turn on LED
ELSE
turn off LED
END IF
END WHILE
Embedded systems are everywhere in our daily lives, from smart home devices to medical equipment, and they can have significant ethical and societal impacts. In this step, you'll discuss these aspects, building on what you've learned about the relationship between computing technologies and society and the positive and negative impacts on culture and society. For example, while these systems can improve efficiency and safety, they might also raise concerns about privacy or unintended harm.
Take time to think about how your embedded system could affect people and the environment. Use the following prompts to guide your discussion:
Now that you've explored components, designed your system step by step, and discussed ethics, it's time to build upon the initial plan you created in the previous lesson. This step helps you refine and expand your ideas into a more detailed format, incorporating what you've learned in this lesson.
Review your initial plan document and update it (aim for 2-4 pages, or expand as needed) using tools like Google Docs, Microsoft Word, or similar. Incorporate new insights from this lesson, such as detailed component choices, system sketches, and ethical considerations. Structure it with the following sections to ensure your plan is comprehensive and easy to follow:
Example updates for a Plant Watering System (building on an initial plan):
Section 1: Problem and Components The system automates watering plants when soil moisture is low to prevent over- or under-watering. Components now include: Moisture sensor (analogue input for continuous readings), water pump (actuator for dispensing water), Micro:bit (microcontroller), battery pack (power supply), connecting wires, and an added LED for status indication – chosen for better user feedback.
Section 2: Design Sketch [Insert your revised sketched diagram here, showing the moisture sensor connected to the Micro:bit's analogue pin, the pump to a digital output, and the new LED]. Updated Pseudocode: WHILE true
read moisture from analogue sensor
IF moisture < 30% THEN
activate pump for 5 seconds
flash LED green
ELSE
flash LED red
END IF
END WHILE
.
Section 3: Team Roles Alice: Hardware assembly and testing; Bob: Programming and pseudocode; Charlie: Ethical review and documentation; Added: Dana: User testing.
Section 4: Ethical Considerations Privacy: No data storage to avoid misuse. Safety: Add a shut-off if pump runs too long. Accessibility: Include LED indicators for visual feedback and consider audio alerts. Environmental: Use low-power components to reduce energy use; added plan to recycle materials.
Section 5: Next Steps Week 1: Program inputs/outputs including new LED; Week 2: Assemble and test prototype with safeguards; Gather moisture sensor, pump, and LED if needed.