23
CS4140 Embedded Systems Laboratory (2020/2021 edition, Apr-Jun) Koen Langendoen (course instructor) Arjan van Gemund (founding father) Vito Kortbeek (lab master)

CS4140 Embedded Systems Laboratory - TU Delft

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 Embedded Systems Laboratory

(2020/2021 edition, Apr-Jun)

Koen Langendoen (course instructor)

Arjan van Gemund (founding father)

Vito Kortbeek (lab master)

Page 2: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 2

Embedded System

ES = computer system embedded within other systemdefining its functionality

printingsystem

user interface

printer

Page 3: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 3

Example Systems

• Phone, cam, audio, VCR, TV, PDA, games ..• Heater, refrigerator, wave, airco, ..• Printer, copier, fax, modem, comm hub, ..• Car engine, brakes, CC, car navig, ..• Missiles, planes, subs, ships, trains, ..• Power plants, chemical plants, ..• Wafer scanners, medical devices, ..

Page 4: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 4

Embedded Systems Boom

• Provides functionality of almost everything• 100 times PC market size• 25% annual growth rate (E Linux > 60%)• Accounts for 25-40% costs in automotive• In society’s critical path• Must be dependable, but affordable

Page 5: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 5

ES Technology Today

• proc + peripheral I/O (boards, racks)• controller (all on single chip)• DSP (idem, optimized for signal proc)• FPGA (idem, no ISA)• ASIC (idem, not programmable)

• Shift from HW to SW (> 10 MLOC in ConsElec)• cs4140: Focus on Embedded Software

Page 6: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 6

Embedded Software Crisis

• TV, mobile phone, car: > 10 MLOC• Code complexity is growing exponentially• Number of bugs is growing exponentially• Despite good SW eng’g 1 – 10 bugs / KLOC• Therac-25, Ariane 5, USS Yorktown, Mars

Climate Orbiter, Mars Polar Lander, Patriotyour car ..?

• 100 G$ / yr on bug costs• Embedded SW is difficult!

Page 7: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 7

What’s so Special About ES?

• Tight interaction with embedding system• Real-time response• Adequately react to unpredictable events• Cope with failures of embedding system

• Physics (electronics, optics, mechanics, ..)• Concurrency• Performance• Power• Dependability

Page 8: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 8

Outline

1. Embedded Systems2. Course Goal3. Lab Project

Page 9: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 9

Course Goal

• Introduction to multidisciplinary design• Work with embedded SW• For CS to get comfortable with embedded HW,

Physics, Signals, Control, ...• For EE, CE, .. to get comfortable with Emb SW• For ES bit of both, common-core course• Focus: SW instead of HW• HW: programmable (COTS)• Allows you to do ES as personal hobby

Page 10: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 10

Course Format

• Lab + supporting lectures• Case: embedded control unit for a QR UAV

• Physics, electronics, control (SW), communication (SW), simulation (SW)

• Technology: PC (C), uctrl (Emb. C)• Lab teams (4 students, ES)• Project deliverables: Demonstrator + Tech-rep.• Grading: deliverables + ranking + individual• Grading: 0.75 D + 0.25 T iff D 50, T 50

Page 11: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 11

Course Support

• Lecture material: course site + WWW• Lab assignment: course site• Assignment: your problem ... so be pro-active,

dig up knowledge yourself, and ASK!• Course site: Resource page• Lab facilities: Lecture Room L (building 36)

• 4-hr slot (Tue|Wed|Fri) for 7 weeks• Lab master: Vito Kortbeek• TAs: Lalith, Talia, Uma 6 labs

1 d-day

Page 12: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 12

Project: Drone Controller

• Electrical model quad-rotor AV (“QR”)• QR: no stabilization, just rotors + sensors• Lab goal: roll, pitch, yaw stabilization• Long-term goal: autonomous UAV

• Experimental sequence: • Control from PC• Yaw stabilization• Roll, pitch stabilization

Page 13: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 13

Hardware of Choice

• PC: user I/O (JS, Data Visualization)

• Embedded system alternatives:• PC I/O card: expensive, inflexible• controller: cheap, flexible, but slow(ish)• FPGA card: cheap, reconfigurable• ASIC: dirt cheap, but inflexible

Page 14: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 14

System Setup

(source: assignment.pdf)

user I/O(pilot)

joystick

drone

PC link

PC

flight control(ES)

Page 15: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 15

Quadrupel drone

• Frame: Turnigy Talon V2.0 (550mm)• Motors: Sunnysky X2212-13 980kV• ESC: Flycolor 20A BCHeli 204S Opto

FCB

LiPo

Page 16: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 16

Flight Control Board

• Sensor module: GY-86• 3-axis gyro + accel.• barometer

• RF SoC: nRF51822• BLE• ARM Cortex M0 (14 MIPS,

256 KB Flash, 16 KB RAM)• 1 Mb Flash

Page 17: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 17

LIFT OFF!

Page 18: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 18

LIFT OFF! REMOTELY!

Page 19: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 19

LIFT OFF! REMOTELY!

dare devils and guinea pigs wantedteam = 2 remote + 2 on-site

Page 20: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 20

Lab Assignment

• assignment.pdf on course web site

• Teams will be assigned tomorrow• Read assignment carefully• Team KO meeting ASAP!• Start system design ASAP!• Final demo during lab session 7• Submit report at Mon June 21st 2021• 10 pp. pdf file to CPM• Late submissions are NOT graded• Reports > 10 pp. are NOT graded

Page 21: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 21

Lab Resources

• 12 Quadrupels (shared by all teams)• Per team:

• PCs (= your laptop!)• 2 FCBs (€50 deposit each) • Basic software tools

• CS4140 Resource Web Page

Page 22: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 22

Course Requirements

• ES students (+ 2nd-year MSc students)• Decent C-programming experience

• Hundreds lines of code• Debugging skills

• Commitment• Lots of time: load ~ 4 x lab + lectures!• Compulsory labs: no show = no grade • Approx. 10-15% drops out

• Online registration (FCFS)

Acceptance TestCSE2425

Page 23: CS4140 Embedded Systems Laboratory - TU Delft

CS4140 ESL (2020-2021) 23

Lab Kick-Off

• Ingrain safety instructions• Read Assignment ASAP• Study CS4140 Resource Web Page ASAP• Read lab notes by TAs

• Start software architecture design• Study/program RS232 communication• Study/program PC – joystick SW

• Lab registration issues: Vito Kortbeek ([email protected])