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