Lektion 5 / Arduino intro. Mogens Jacobsen / moja@itu.dk



Relaterede dokumenter
Lektion 6 / Analog Arduino

Example sensors. Accelorometer. Simple kontakter. Lysfølsomme. modstande. RFID reader & tags. Temperaturfølsomme. Flex Sensor.

Arduino kursus lektion 3:

TinkerCad - Arduino simulator

ARDUINO PROGRAMMERING

Microcontroller, Arduino

Arduino Programmering

txtbomber af Felix Vorreiter Mogens Jacobsen / moja@itu.dk

Microcontroller, Arduino

Alt elektronik heri er købt via og arduino udviklingssoftware er hentet fra

Start på Arduino og programmering

Arduino kursus lektion 4:

9. Tyverialarm med buzzer

CANSAT & ARDUINO step by step

Enes Kücükavci Roskilde Tekniske Gymnasium Mathias Turac Informationsteknolog B Vejleder: Karl Bjranasson Programmering C

Hvorfor & Hvordan lære Elever At programmere Arduinoer

CANSAT & ARDUINO step by step

Indholdsfortegnelse Indledning... 2 Projektbeskrivelse... 2 Dette bruger vi i projektet... 2 Komponenter... 2 Software... 2 Kalibrering...

Modeljernbane elektronik for begyndere...og dem der vil igang med at bygge deres egne dekodere

Fysisk Design Instruktorer Troels, Søren og Oskar

BASAL ARDUINO SÅDAN KOMMER DU IGANG MED ARDUINO, OG FORBEREDER DIG TIL KURSERNE MBHOBBY.COM AFHOLDER.

Programmering C Eksamensprojekt. Lavet af Suayb Köse & Nikolaj Egholk Jakobsen

Sådan forbindes Arduinoen via et fumlebræt til ATTiny45 chippen.

Arduinostyret klimaanlæg Afsluttende projekt informationsteknologi B

Projekt Når maskinen reagerer - Dataopsamling og aktuatorer

Fra programmering til mikroprocessor

Hvorfor & Hvordan lære. at programmere Arduinoer

BBC micro:bit så er du i gang

Arduino Programmering

Micro:Bit Indbygget sensorer og Monk Makes sensorbord

Qwpikkemandtyuiopåasdfghjklæøzxc vbnmqwertyuiopåasdflortefissezxcvb nmqwertyuiopåasdfghjklæsupernørd mqwertyuiopåasdfghjklæøzxcvbnmq

Brug af digitale ind og udgange

WT-1011RC Programmer User Guide

Hvorfor & Hvordan lære Elever At programmere Arduinoer

Lektion 8 / Gabriela Goldschmidt

Interrupt - Arduino. Programmering for begyndere Brug af Arduino. Kursusaften 6 EDR Hillerød Knud Krogsgaard Jensen / OZ1QK

WT-1011RC Programmer User Guide

// inkluder library kode: #include <LiquidCrystal.h> #include <Serial.h> // Initialiser display LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

Analoge indgange og A/D konvertering. Analoge udgange

Dette korte foredrag er opdelt i 3 dele: 1. ARDUINO i flere versioner, hvad er det? 2. DEMO-video 3. Din fremtidige Oscillator, SI5351A 4.

Skriftlig Eksamen Beregnelighed (DM517)

Internt interrupt - Arduino

Project Step 7. Behavioral modeling of a dual ported register set. 1/8/ L11 Project Step 5 Copyright Joanne DeGroat, ECE, OSU 1

LCD Character display Intro

MP3 player med DMX interface.

DET KONGELIGE BIBLIOTEK NATIONALBIBLIOTEK OG KØBENHAVNS UNIVERSITETS- BIBLIOTEK. Index

Bruger manual AGAM kontrolboks

Arduinostyret klimaanlæg Afsluttende projekt programmering C

Extraudstyr og opgaver til Micro:Bit

Løkkestrukturer mm. Trykknap: Button, Se eksempler / Digital / Button. Decision: If: Version 05/ Arduino, Loops, løkker, programfunktioner mm.

LCD intro. LCD Character display-intro. Redigeret 4/6-2019

Mircobit Kursus Lektion 1

MB-001 DCC/MM Udviklingsmodul

Hos Podconsultsbutik kan du finde vandpumpen i 3 udgaver, hvilket har betydning for hvordan du samler og forbinder pumpen til din Micro:bit.

Ved indkøring påtrykkes en kendt amplitude (HUSK 50 ohms afslutning) og displayet aflæses.

I 2 C BUSSEN KØRER MED ARDUINO IND I FORÅRET

#AlleKanKode. Lektion 4 - Kontrol flow

DIGITAL HD VIDEO KAMERA TIL BILER

Demonstration af transitmetoden

Micro:bit. Komponenter i CFU-kasser. Lær komponenterne at kende

EKSEMPEL PÅ ELEVOPGAVE TIL ARBEJDET MED PROGRAMMERING AF ARDUIONO MED LED BÅND

Undervisningsplan for faget. Design & Produktion El

Brugervejledning. Fjernbetjening display MT-5

Under 'Microsoft Block Editor', klik 'New project' for at åbne block editor-værktøjet.

MVT380 Vejledning. Forord. Website: Kontakt: Tillykke med din nye GPS tracker MVT380.

NetLogo-simuleringen. Simuleringer og fysiske modeller (henfaldsloven)

QUICK START Updated: 18. Febr. 2014

Brugervejledning. Trådløs HD Sender & Modtager Sæt

Profort A/S. Profort A/S. Dansk ingeniørfirma 12 år på markedet Dansk udviklet og produceret

QUICK START Updated:

Programmeringskursus Kursusaften 3. Programmering for begyndere Brug af Arduino. Display. Kursusaften 3 EDR Hillerød Knud Krogsgaard Jensen / OZ1QK

Vina Nguyen HSSP July 13, 2008

Programmering for begyndere Lektion 2. Opsamling mm

Montørvejledning for DTC2100 Temperaturtyring - Version 1. Generel beskrivelse

TÆND OG SLUK LAPTIMEREN:

Opslagsbog om computer. Af Erik Veidorf og Mike T. Krogh.

BIID11 Lektion 2 Seniorinteraktion. Mogens Jacobsen / moja@itu.dk

Brugermanual. 2GB MP3 afspiller

Projekt Træningsmaskine

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi Opgave: Brev til Sigurd Lære: John Austin Side 1 af 8 Dato:

Dansk El-montage manual Portautomatik

Morse med micro:bit. Morse med micro:bit

Crash Course i Programmering. HumTek, RUC

AVR 용 USB-ISP V03 ( Model : AD-USBISP V03(-L) )

PARALLELIZATION OF ATTILA SIMULATOR WITH OPENMP MIGUEL ÁNGEL MARTÍNEZ DEL AMOR MINIPROJECT OF TDT24 NTNU

BRUGERVEJLEDNING TIL REVOLTA TRANSFORMER 2-WAY VOLTAGE TRANSFORMER USER MANUAL RV-2400

Varenr.: højre venstre º højre med coating º venstre med coating

AVR MP Ingeniørhøjskolen i Århus Michael Kaalund

STEVISON BLUETOOTH USB MICRO SD DAB+ FM DIGITAL RADIO

Penge Noget af det bedste software til kreativ kodning er freeware

Brug af mikroprocessor

CP1x Pulse Servo Quick Guide v1.00. CP1x med Servo - Servoløsning med Pulse Kontrol. Quick Guide

Måling og styring. Sensorer og Arduino

Alle dip 1 7 sættes til On for at opnå stand-alone operation fra PC.

const int disponibel_10= 10; const int disponibel_11= 11; const int disponibel_12= 12; const int blinkled = 13; // pin 13 er LED på NANO

Motorline JAG (indbygget limit switch) Dansk brugermanual

Det er muligt at chekce følgende opg. i CodeJudge: og

Bruger manual for SW 3.06

Transkript:

1 BSPR11 Lektion 5 / Arduino intro Mogens Jacobsen / moja@itu.dk

Dagen i dag 2 Weird & Wild: Grupperne 5 & 6 + mogens Lektion 5 (AUD 3) Om det kommende forløb Om Arduinos historie og slægtskab Om programmering Arduino! (DesignLab) Arduino anatomi Vore Arduino eventyr 4 stoppesteder Digital vs analog Øvelser

Weird & Wild på bloggen 3 Grupperne 5 & 6 i dag Og én (atypisk) fra Mogens Grupperne 7 & 8 til næste gang Husk bloggen (send til Louise)

Har I husket? 4 Download Arduino IDE Installer det USB kabler Bidetænger (15kr i Netto)

Læringsmål 5 - udarbejde digitalt-materielle interaktive sketches, gør udvalgte dele af en tilstræbt brugeroplevelse tilgængelig for direkte manipulation og kropslig erfaring gennem handling.

Slægtskab 6 John Maeda MIT media lab, USA DBN/Design By Numbers Casey Reas Benjamin Fry Zachary Lieberman Theo Watson IDII Ivrea, Italien Processing Massimo Banzi Arduino openframeworks CIID, DK

Computer? 7 Processor: Intel Core 2 Duo Hastighed: 2,66GHz Hukommelse: 4GB Harddisk: 250GB Vægt: 2500g Pris: 16500kr Processor: ATMEL ATmega328 Hastighed: 0,016GHz Hukommelse: 0,0000032GB Harddisk: 0 Vægt: 30g Pris: 200kr ( OpenSource)

Ikke et interface-board 8 Arduino inkluderer en Atmel Atmega mikroprocessor Arduino inkluderer et OS (Arduino Bootloader) Arduino har hukommelse (RAM) Arduino kører programmet uafhængigt af modercomputeren Arduino kan køre på et batteri Arduino starter seneste program, når den tændes igen

Algoritme (klassisk definition) 9 A systematic procedure that produces in an finite number of steps the answer to a question or the solution to a problem Peter Wegner & Dina Goldin: Turing s Ideas and Models of Computation http://www.cse.uconn.edu/~dqg/papers/turing04.pdf

Abū Abdallāh Muḥammad ibn Mūsā al-khwārizmī 10 Persisk mathematiker, astronom, geograf Ca. år 780 til 850 Vores brug af decimaler

Te-brygger algoritme 11 1. If the kettle does not contain water then fill the kettle 2. Plug the kettle into the power point and switch it on. 3. If the teapot is not empty then empty the teapot. 4. Place tea leaves in the teapot. 5. If the water in the kettle is not boiling then go to step 5 6. Switch the kettle off. 7. Pour water from the kettle into the teapot.

Algoritmer 12 if

13 Zach Liebermann: Fear of Programming Stereotype of programmers People think of programming as a sort of reclusive breed of geeky guys Walls of books at bookstores Fear of math Stay fearful, but know that programming is not (but can be for sure) as complicated as most high school math classes Fear of hieroglyphics

Vamos! 14

Arbejdsgangen 15 1. Kode 3. Send til Arduino 2. Kompilering 4. Afvikling

Udlevering af Arduino 16 2 stk Arduino pr gruppe Pas på dem tag dem evt. med hjem Sub-grupper af 3 personer Hver sub-gruppe har en plastbox Der skal kvitteres for nogle dimser Gælder accelerometre, sonar, motorer, TLC5940-chips, flexsensors Kvittering hos hjælpelærerne

Anduino anatomi 17 Power outputs

Anduino IDE anatomi 18 Jeres kode Feedback (og fejl-meddelelser)

Anduino IDE anatomi 19 Verify (kompiler) Stop Upload (til Arduino)

Afsnit 20 setup() Kører én gang når skitsen starter. loop() Gentages også efter sluk

Arduino kode 21 Stave-kritisk (men viser genkendt kode) Forskel på store og små bogstaver Sætning afsluttes med ; (semikolon) Afsnit begrænses af { og } (tuborg-klamme) Linier med // afvikles ikke: Kommentarer Online ordbog: Menu > Help > Reference

Anduino GO! 22 Installer IDE (done) Installer drivere http://arduino.cc/en/guide/macosx http://arduino.cc/en/guide/windows Vælg det rigtige board Menu > Tools > Board Vælg den rigtige kommunikations-port Menu > Tools > Serial Port

Bill Verplank: Do? Feel? Know? 23 BIID Lektion 9

Input/output 24 How do you do? Sensors Actuators How do you feel? Input Sensors Output Actuators

Eksempler 25 Sensors Kontakt Lysfølsom modst. Temperatur modst. Ultralyd afstand Piezo tryk Flex modst. RFID læser & tags Accelerometer Actuators LED (lysdiode) Piezo buzzer (lyd) Motor (bevægelse) Vibrator Blæser (bevægelse luft) Pumpe (bevægelse vand) Kontakt Relæ Optokobler Peltier (kuld/varme)

Digitalt 26 Binært To tilstande: Tændt / slukket 1 / 0 HIGH / LOW

Analog vs Digital 27 Analog kommer fra græsk analogos med betydningen "tilsvarende, lignende". Bruges også om billedlig repræsentation (f.eks. tegning) i modsætning til symbolsk el. digital repræsentation. (f.eks. ord, tal). Digital kommer af latin digitus, der betyder finger eller tå. Afledt heraf er betydningen at tælle eller blot tal. Betydningen ses i engelsk, hvor digit betyder tal, ciffer. Kontinuert Diskret

4 basale input/output modes 28 Digital output digitalwrite(pinnummer, [HIGH/LOW]) Digital Input Værdi[HIGH/LOW] = digitalread(pinnummer) Analog Input Værdi[0-1023] = analogread(pinnummer) Analog Output analogwrite(pinnummer, [0-255])

Digital Output 29 Lysdiode LED = Light Emitting Diode

Lysdiode (LED) 30 Polaritet: Den skal vendes rigtigt Det korte ben på en LED skal sluttes til jord (GND).

Diagrammer 31

Blink (LED på pin 13) 32 void setup() { pinmode(13, OUTPUT); // sets the digital pin as output } void loop() { digitalwrite(13, HIGH); delay(1000); digitalwrite(13, LOW); delay(1000); }

Andre lysdioder (LED) 33 Lys udenfor det synlige område IR (infrarød) LED i fjernbetjening 3 leds i én RGB LED (flere farver)

Motorer 34 Alm. lille motor Step motor Kører et step for hver puls Servo motor Kører til en bestemt vinkel/position (men ikke ren digital output)

Motorer (varianter) 35 Vibrator motor Er en alm. motor med asymmetrisk lod på aksen Pumpe Akavarium/springvand Blæser/køler Lufttryk

36 Advarsel: Kun meget små motorer kan sættes direkte på

Digital Input 37 Kontakt

Trykknap (kontakt) 38

Trykknap: Logisk HIGH & LOW 39 HIGH LOW Sluttet kontakt giver 5V = logisk HIGH Men åben kontakt fluktuerer og er derfor ikke nødvendigvis logisk LOW R skal blot være mange Ohm (10K eller 1M..)

Modstand (resistor) 40 Værdi måles i Ω (Ohm) 1kΩ = 1kilo = 1.000 Ω 1 MΩ = 1mega= 1.000.000Ω Værdi angives med farve-kode

Farvekoder for modstande 41

Altid modstand foran LED 42 Egentligt skal der altid en modstand foran en LED. Men på ben 13 er den indbygget Ca 200-500 Ohm

Reed Relæ (en speciel kontakt) 43 En magnet kontakt

Kontakt 44 void setup() { pinmode(13, OUTPUT); pinmode(2, INPUT); } void loop(){ int buttonstate = digitalread(2); } if (buttonstate == HIGH) { digitalwrite(13, HIGH); } else { delay(1000); //for at gøre det lidt mere interessant digitalwrite(13, LOW); }

Kontakt2 45 int blinketid = 1000; // ny variabel void setup() { pinmode(13, OUTPUT); pinmode(2, INPUT); } void loop(){ int buttonstate = digitalread(2); } if (buttonstate == HIGH) { } digitalwrite(13, HIGH); else { } delay(blinketid); digitalwrite(13, LOW);

Resten af dagen 46 Eksperimenter med lysdioder (husk modstand foran) og kontakter go crazy NOW! Flere blinkede lysdioder Tilfældig blink-tider (se random under online ref.) Kontakt der skal trykkes 2 gange på En elektronisk terning: 6 LEDS og 1 kontakt Et æggeur: Tryk X gange og den lyser X minutter.osv

Til næste gang 47 10/3 Kan alle være her kl 10-16? 17/3 Ren øvelses-/arduino-gang i DesignLab.

Næste gang 48 Aflevering: Tænk over hvad I vil bruge Arduino til i jeres designforløb. (Skriv kommentar på bloggen under aflevering) Læs om breadboards: http://www.tigoe.net/pcomp/code/circuits/breadboards Læs om analog input: http://www.arduino.cc/en/tutorial/analoginput Læs Goldschmidt: The Backtalk of self-generated sketches

49