ME5120
Computer-Aided Design and Manufacture
Introduction
Dr. Subodha Charles
Embedded Systems
Automobile
Military
Medical
Entertainment
Handheld devices/Wearables
Home Automation
Industrial Control Systems
2
Major Related Areas in Embedded Systems
§ Embedded Hardware/Computer Architecture
3
Major Related Areas in Embedded Systems
§ Programming/Software
4
Major Related Areas in Embedded Systems
§ Communication
5
Major Related Areas in Embedded Systems
§ Enclosure Design
6
Major Related Areas in Embedded Systems
§ Embedded
Hardware/Computer
Architecture
§ Programming/Software
§ Communication
§ Enclosure Design
7
Companies in Global Embedded Systems Market
8
Sri Lankan Electrical/Electronics Industry
Source: Export Development Board (EDB)
9
IoT Today (2020)
§ 127 new IoT devices coming online per
second!
§ 26 times more connected things that
people in the world
§ ~$1T in spending
§ Security is most significant technical
concern for acceleration of IoT
deployment
§ IoT will drive the greatest business
transformation in the next three years
Source: Business Insider
10
Major Related Areas in Embedded Systems
§ Embedded
Hardware/Computer
Architecture
§ Programming/Software
§ Communication
§ Enclosure Design
11
Embedded Systems
12
General Purpose vs Embedded
General Purpose Computing
Embedded Systems
13
General Purpose vs Embedded
General Purpose Computing
Embedded Systems
Designed to run a broad class of
applications that may not be known at
design time
Run a single or few specialized applications
often known at design time
Programmable by end user
Typically, not programmable by end user
General Purpose Computing
Higher power, no real-time constraints (in
general), runtime performance may not be
fully predictable
Low power, real-time constraints,
predictable runtime performance
Heavy weight, multi-tasking OS (Windows,
Linux)
Lightweight, real-time OS or no OS
Faster (higher performance) is always
better
Once the requirements are met, a faster
processor is not desirable (overkill) due to
increased cost/power.
Embedded Systems
14
Electronic Devices in Automobiles
Lee [Lee02b] © 2002 IEEE
© 2006 Elsevier
15
Simplified Block Diagram
Display
Analog è Digital
Converter
Embedded Computing
(Processors, Memories, …)
Digital è Analog
Converter
Actuators
Sensors
Environment
16
Overview: Course Project
§ Smart Power Monitor: A device that allows to control the plugged-in electrical appliance
using the remote switching functionality while measuring its power usage.
17
Overview: Course Project
§ Smart Power Monitor: A device that allows to control the plugged-in electrical appliance
using the remote switching functionality while measuring its power usage.
• Inputs
• User Inputs – Tactile Switch, Web Dashboard
• External Sensor - Power Measuring Sensor (ADE9153A)
• ESP 32 Built-In Sensors - Real Time Clock (RTC)
• Outputs
• Telemetry Data – Web Dashboard
• Other Outputs – LED Bulbs, Buzzer
• Communication
• Wi-fi
• Features
• Remote Switching, Timer
• Monitoring (Voltage, Current, Active Power,
Reactive Power, Frequency, kVA)
• Auto Calibration
18
Course Outline
§ Introduction to product design for IoT
§ Advanced schematic and PCB layout design
§ Embedded firmware development
§ Enclosure design for IoT products
§ End to end connectivity for web dashboard
§ Putting it all together to complete the IoT product
19
Course Outline
§ Introduction to Product Development Cycle and Prototyping for IoT Products
20
Course Outline
§ Case Study of a Product Development Lifecycle
• How do we do a Feasibility Analysis?
• What is a Conceptual Model?
• How do we build a prototype?
§ IoT based Project Overview
• Business Requirement Document (BRD)
• Bill of Materials (BOM)
• Conceptual Model Design
21
Course Outline
§ Considerations to be taken in ESP32 based Product Design
§ Schematic design for microcontrollers using electronic design automation
(EDA) software
• Introduction to PCB designing
• Understand the different phases of
PCB design flow
• Smart Power Monitor schematic design
using KiCad (A free EDA software suite).
22
Course Outline
§ Completed Schematic design and PCB layout design for microcontrollers using
electronic design automation (EDA) software
• Smart Power Monitor PCB layout design using KiCad from scratch
• 3D visualization of PCB using Autodesk Viewer
23
Course Outline
§ Advanced PCB Layout Design using Conceptual Models
• Design a PCB with only a conceptual drawing of the
enclosure with the necessary dimensions
§ Best practices in PCB design for microcontrollers and
PCB manufacturing techniques
• Feedback for the submitted PCB designs
• Schematic and PCB design best practices
• PCB manufacturing techniques
• Homemade and Prototype level PCBs (DIY)
• Safety Measures
• Production Level PCBs
• Ordering components
24
Course Outline
§ PCB Design Review Sessions
25
Course Outline
§ Introduction to Wokwi simulation environment
§ Simulate functional components in
microcontroller-based systems using Wokwi
§ Introduction to communication protocols used in
embedded systems
• SPI communication
• UART communication
§ Integrating IoT protocols to embedded systems
• MQTT protocol
§ Introduction to Onshape
• How to begin Product Design
• Developing Parts and Assemblies
26
Course Outline
§ Enclosure Design for IoT based Consumer Products using Onshape
27
Course Outline
§ Getting started with PCB soldering and Testing
§ Introduction to firmware development and testing
• PlatformIO IDE
§ Programming ESP32 custom boards using serial converters
• FTDI Programmer
28
Course Outline
§ Onshape Design Review Session and 3D Printing using FormLabs /Ultimaker
29
Course Outline
§ Enclosure Manufacturing
§ Introduction to IoT
§ IoT with ESP32
30
Course Outline
§ Getting started with Web-Dashboards
§ WHY JavaScript?
§ Using the Node-Red Dashboard
31
Course Outline
§ Complete Software Integration - NodeMCU and Node-RED with MQTT
ESP32
32
Tools You Will be Familiar With
§ Wokwi Simulator - Online Arduino + ESP32 Simulator; supports Micropython
§ Fritzing – Tool for drawing microcontroller-based circuit diagrams
§ KiCad - Free software suite for electronic design automation; schematics for
electronic circuits and their conversion to PCB designs
§ VS Code - Interactive professional IDE for Coding, used for C++ programming
• PlatformIO Extension - Add embedded programming functionalities to VSCode
§ Node-RED - a browser-based flow editor for wiring together hardware
devices, APIs and online services as part of IoT
§ Onshape - FREE browser-based CAD platform that students and educators
can access on any web-connected device.
33
Tools You Will be Familiar With
§ Wokwi Simulator - Online Arduino + ESP32 Simulator; supports Micropython
34
Tools You Will be Familiar With
§ Fritzing – Tool for drawing microcontroller-based circuit diagrams
35
Tools You Will be Familiar With
§ KiCad - Free software suite for electronic design automation; schematics for
electronic circuits and their conversion to PCB designs
36
Tools You Will be Familiar With
§ VS Code - Interactive professional IDE for Coding, used for C++ programming
• PlatformIO Extension - Add embedded programming functionalities to VSCode
37
Tools You Will be Familiar With
§ Node-RED - a browser-based flow editor for wiring together hardware
devices, APIs and online services as part of IoT
38
Tools You Will be Familiar With
§ Onshape - FREE browser-based CAD platform that students and educators
can access on any web-connected device.
39