22437 Rapid prototyping af digital sensorsystemer med Arduino teknologi

2021/2022

Kursusinformation
Rapid Prototyping of Digital Sensor Systems using Arduino Technology
Dansk
10
Bachelor
Kurset udbydes som enkeltfag
F5 (ons 8-17)
Campus Lyngby
Videoforelæsninger, opgaver, lab-øvelser, obligatoriske quizzer.
13-uger
F5A, Reeksamen i august
Skriftlig eksamen
Obligatoriske quizzer skal beståes for at deltage i eksamen.
Skriftlig eksamen: 4 timer
Alle hjælpemidler er tilladt
7-trins skala , intern bedømmelse
Erfaring med analog elektronik. Det antages, at deltagerne ingen erfaring har med programmering.
Minimum 10
Kaj-Åge Henneberg , Lyngby Campus, Bygning 349, Tlf. (+45) 4525 3905 , khen@dtu.dk
René Gadkjær , Lyngby Campus, Bygning 349, Tlf. (+45) 4525 3684 , rega@dtu.dk
22 Institut for Sundhedsteknologi
I studieplanlæggeren
Overordnede kursusmål
Kurset introducerer til anvendelsen af mikrocontrollere til opbygning af digitale sensorsystemer. Deltageren får indledningsvist en viden om mikrokontrollerens mange undersystemer og deres rolle i forskellige anvendelser. Herefter udforskes mikrokontrollerens forskellige muligheder for at interface med sensorer, displays, motorer, samt en host-computer, og der skabes et videngrundlag for at sammensætte og programmere et måleteknisk system. I første del af kurset sker læring ved, at man opbygger kopier af eksisterende systemer og tilegner sig basale færdigheder i programmering ved at studere det tilhørende programmel. I den sidste tredjedel af kurset arbejder man i grupper, opbygger egne hardware systemer og udvikler eget programmel. Kurset antager, at man ikke har forudgående viden om programmering.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
  • Viden (fakta, teori, metoder): For et Arduino-baseret system beskrive og forklare formål, funktion, opbygning og virkemåder.
  • Viden (praksis): For et Arduino-baseret system forklare praktiske forhold, der begrænser anvendeligheden af teorier, metoder og materialer.
  • Viden (fakta, teori, metoder): Anvende, analysere og evaluere begreber, teorier, modeller, fagterminologi, metoder og procedurer inden for Arduino-baserede systemer til at sammensætte funktionelle systemer.
  • Viden (fakta, teori, metoder): Anvende, analysere og evaluere begreber, teorier, modeller, fagterminologi, metoder og procedurer inden for C-programmering til at udvikle operative Arduino-baserede systemer.
  • Færdigheder: Udføre komplekse procedurer og bruge avancerede værktøjer uafhængigt og uden fejl, samt prioritere og tilpasse metoder og procedurer til situationen.
  • Kommunikation: Beherske sprog og kommunikationsværktøjer med kun få fejl i mundtlige fremlæggelser og skriftlige materialer; kunne strukturere indhold i henhold til norm, i øvet grad gøre anvendelse af fortællestil i overensstemmelse med kontekst og standarder, redigere for fejl, logik, klarhed, uregelmæssig stil og kildeoplysninger og på et øvet niveau udføre en kontekstanalyse til bestemmelse af kommunikationens formål samt modtagerens kompetencer.
  • Teamwork: Udføre og koordinere teamwork, udfærdige teamkontrakter og overvåge teamprocesser og teammedlemmers overholdelse af definerede normer.
  • Kritisk tænkning: Fortolke evidens præcist og objektivt, identificere relevante argumenter, analysere og evaluere alternative synspunkter, drage berettigede og logiske konklusioner, forklare og begrunde resultater og procedurer, begrunde beslutninger og fortolkninger og objektivt følge evidens og logisk ræsonnement.
  • Systemtænkning: Analysere funktioner og formål med et system og dets indflydelse på det interne og eksterne miljø med brug af flere perspektiver. Identifice undersystemer og karakterisere deres funktioner, interaktioner, indbyrdes afhængighed og tidsmæssige dynamik.
  • Prædiktiv tænkning: Gøre brug af et spektrum af relevante perspektiver til at designe scenarier til belysning af mekanismer og operationer i et komplekst system. Simulere sådanne scenarier for at afsløre styrker og svagheder i selve systemet og i interaktionen af systemet med andre systemer og med brugere af systemet.
  • Problemløsning (analyse): Diagnosticere komplekse, flertrins, lukkede problemer med en kompleks, inkonsekvent og upræcis beskrivelse, der kræver fortolkning. Udtænke og simulere flere løsningsmuligheder, analysere performance og indvirkning og rangére løsninger baseret på veldefinerede kriterier.
  • Problemløsning (syntese): Designe udvalgte løsninger og opbygge prototyper af analoge delsystemer på fumlebræt og veroboard. Udføre konstruktionstest af analoge delsystemer med et multimeter. Kombinere analoge og digitale subsystemer til et funktionelt system. Designe og udføre funktionstest af det komplette system. Validere funktionstest mod systemspecifikationer.
Kursusindhold
Basale digitale begreber:
Det binære og hexadecimale talsystem. Microcontroller arkitektur.

Arduino systemer:
Digital input, digital output, timere, hukommelse, interrupts, seriel kommunikation med digitale sensorer og med programmel kørende på værtscomputer.

Interfacing analoge systemer:
Analog til digital konvertering, analog input, analog output, pulsbredde modulation (PWM).

C Programmering:
Variabel typer, operatorer, flow kontrol (for, while, do, switch, break, continue), digital input/output funktioner, analoge input/output funktioner, timing funktioner, interrupt service rutiner, bit-operatorer, talgeneratorer, deklarering og kald af funktioner, deklarering og brug af arrays og brug af software biblioteker.

Applikationer:
Interfacing kontakter og keypads, måling af analoge fysiske variable som lyd, lys, temperatur og tryk, styring af motor, skrivning til LED og LCD displays.
Bemærkninger
Kurset fokuserer på medicotekniske anvendelser. Studerende arbejder i hold og arbejder på projekter godkendt af den kursusansvarlige. Studerende forventes at medbringe og anvende deres eget Arduino udviklingskit til kursets projekter. Information om udviklingskittets indhold vil blive oplyst ca. 1 måned før kursusstart.
Sidst opdateret
01. december, 2021