Arduino. Kimmo Silvonen (X)

Samankaltaiset tiedostot
Arduino. Kimmo Silvonen (X)

Arduino. Kimmo Silvonen (X)

Arduino ja perusteita

ELEC-A4010 Sähköpaja Arduinon ohjelmointi. Jukka Helle

Arduinon ohjelmointi. Sami-Petteri Pukkila. 6. helmikuuta 2017

LUMA SUOMI -kehittämisohjelma LUMA FINLAND -utvecklingsprogram LUMA FINLAND development programme Ohjelmointia Arduinolla

ELEC-A4010 Sähköpaja Arduinon ohjelmointi. Peter Kronström

Liikennevalot. Arduino toimii laitteen aivoina. Arduinokortti on kuin pieni tietokone, johon voit ohjelmoida toimintoja.

////// VENETIETO.FI \\\\\\ //// Autopilotti 2014 \\\\ //-PID säätimellä. #include <EEPROM.h> #include <SoftwareSerial.h>

Tällä ohjelmoitavalla laitteella saat hälytyksen, mikäli lämpötila nousee liian korkeaksi.

Sähköpajan elektroniikkaa

Sähköpajan elektroniikkaa

Arduino ohjelmistokehitys

////// VENETIETO.FI \\\\\\ //// Autopilotti 2014 \\\\ #include <EEPROM.h> #include <SoftwareSerial.h> SoftwareSerial gps(10, 0); // RX, TX -pinnit

Sähköpajan elektroniikkaa

Sähköpaja. Kimmo Silvonen (X)

Ohjelmoi Arduino Grovella

Arduinon ohjelmointi. Sami-Petteri Pukkila. 1. helmikuuta 2016

Tarkempaa tietoa saat myös kurssin GitHub-alustalta. Sen wiki-osio on kattava ja yksityiskohtainen, kun tämä vihkonen taas on vain ensihätään.

Arduino tutuksi. Kyösti Blinnikka

Arduinon ohjelmointi. Sami-Petteri Pukkila. 26. syyskuuta 2016

- Käyttäjä voi valita halutun sisääntulon signaalin asetusvalikosta (esim. 0 5V, 0 10 V tai 4 20 ma)

Ohjelmointiharjoituksia Arduino-ympäristössä

- Käyttäjä voi valita halutun sisääntulon signaalin asetusvalikosta (esim. 0 5V, 0 10 V tai 4 20 ma)

ELEC-A4010 Sähköpaja Arduinon väylät tutuiksi

PR SARJA ASENNUS JA KYTKENTÄ

Sähkötekniikka ja elektroniikka

AUTO3030 Digitaalitekniikan jatkokurssi, harjoitus 2, ratkaisuja

PR SARJA ASENNUS JA KYTKENTÄ

P I C A X E O H J E L M O I N T I

Arduinon Alkeet. Johdatus Arduinoon ja elektroniikkaan

Ohjelmoitava päävahvistin WWK-951. Anvia TV Oy Rengastie Seinäjoki

Ohjelmoitava päävahvistin WWK-951LTE

Sähköpaja. Kimmo Silvonen (X)

1 Tarkistetaan että kaikki toimii

U-REMIX USB RF 2 RF 1 POWER

Pienitehoisen keinokuorman suunnittelu ja rakentaminen. AS Automaation ja systeemitekniikan projektityöt Lauri Mäkelä, Henrik Vento 4.2.

AS Automaatio- ja systeemitekniikan projektityöt

Adafruit Circuit Playground Express

DR-3528FX30-12W COOL WHITE 3528(1210) 30 LED/m 8mm 2.4W K DC 12V IP20 3M Teippi

HARJOITUSTYÖ: LabVIEW, Liiketunnistin

ICOM IC-7600 helposti ssb-cw-rtty-digi

Mikro-ohjain µc harjoitukset - yleisohje

SISÄLLYSLUETTELO RC-436

6.3. AVR_rauta. EEPROM-muisti pva

Sähköpajan komponentit

Lataussäädin 12/24V 10A. Käyttöohje

Oletus Sinulla on Raspin Geany-IDE konfiguroituna toimimaan SSH-etäkäytössä.

1 Muutokset piirilevylle

ELEC-C5070 Elektroniikkapaja (5 op)

Yrityslähtöisten ideoiden käyttö fysiikan opetuksessa

HARJOITUSTYÖ: LabVIEW, Kiihtyvyysanturi

Arduinon Alkeet. Johdatus Arduinoon ja elektroniikkaan

Sähkötekniikka ja elektroniikka

Let Me Hack It -kurssilla tarvittavat ohjelmat ja välineet

MITTAUSTEKNIIKAN LABORATORIOTYÖOHJE TYÖ 9 MITTAUSTIEDON KERUU JA KÄSITTELY

Automaation elektroniikka T103403, 3 op AUT2sn. Pekka Rantala syksy Opinto-opas 2012

Taitaja semifinaali 2010, Iisalmi Jääkaapin ovihälytin

Projektityöt. Sami Alaiso, Jyri Lujanen 30. marraskuuta 2009

GateWay v10 Laitekuvaus

Arduino Uno (R3)-kehitysalusta

TAMPEREEN AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma Sulautetut järjestelmät. Tutkintotyö. Markku Autio MIKROKONTROLLERIOHJATTU VIRTALÄHDE

FYSE301 Elektroniikka I osa A Loppukoe (Vastaa kaikkiin viiteen tehtävään)

dupol.eu - smart home product comparison

S85 laseretäisyysanturi

ECIO käyttöohje. Matrix Multimedia Limited. JJJ-Automaatio Oy. Keijo Salonen Jyväskylän ammattiopisto

File: C:\tmp\tmp\mch.txt , 9:37:46. JUKKA LAAKKONEN, OH1NPK ORIKEDONKATU 16 FIN TURKU May 18, 1995

Anturityö, Tomi Pulli

Taitaja2007/Elektroniikka

KOSTEUSLÄHETTIMET RHT

FYSE301(Elektroniikka(1(A3osa,(kevät(2013(

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

NP-2T DL ohje. Oy Nylund-Group Ab

Automaation elektroniikka T103403, 3 op SAU14snS. Pekka Rantala kevät 2016

LED - KORVAUSPOLTTIMOT

Analogiapiirit III. Keskiviikko , klo , TS128. Operaatiovahvistinrakenteet

Paineilman maksimaalinen öljypitoisuus Iskusitkeys max. (XYZ-suunta) Värähtelylujuus (XYZ-suunta) Kuormavastus max.

ESMART202 Teholähde ja akkulaturi

Langaton kuuntelujärjestelmä. E-Lab.

ONE 118 OHJELMOITAVA PÄÄVAHVISTIN

Yleinen arkkitehtuuri

LUMECOM. Jyrsinsovellus. 1. Asennusohje 2. Käyttöohje 3. Käyttöönottokortti

MUISTIPIIRIT H. Honkanen

Mikrokontrollerit. Mikrokontrolleri

S SÄHKÖTEKNIIKKA Kimmo Silvonen

ASENNUS GOLDen GATE, TBLZ-1/

ARDUINON KÄYTTÖ SULAUTETTUJEN JÄRJESTELMIEN OPETUKSESSA

Verilogvs. VHDL. Janne Koljonen University of Vaasa

C-Lynx pinnanvalvontareleet HNM ja HNE

L-sarjan mittamuuntimet

FYSP105 / K3 RC-SUODATTIMET

GSM OHJAIN FF KÄYTTÖOHJE PLC MAX S03

Asennusohje SLC-16 Tilannevalo-ohjain. ApplyLight SLC-16 Asennusohje

Asennusohje Viritettävä terrestiaalipäävahvistin HMB 6. SSTL n:o ULA-VHF I, VHF III, 6 x UHF ja AUX

Verkkodatalehti. T4000-1RBA01 T4000 Standard TUOTEVALIKOIMA

KÄYTTÖOHJE PEL / PEL-M

Sähköpaja. Kimmo Silvonen (X)

KOSTEUSLÄHETTIMET RHT

NiMH Laturi. Suunnittelu Olli Haikarainen

Fy06 Koe Kuopion Lyseon lukio (KK) 1/7

Transkriptio:

Arduino Kimmo Silvonen (X)

Arduino, toimiva oma versio (osat Pajalla) ATmega 328P IC DIL-kotelossa (DIP) päältä katsottuna, Arduinon pinnit +5 V TX RX DTR FT232 10k 22p 22p Reset 1 RX D0 TX D1 D2 PWM D3 D4 + VCC XTAL XTAL PWM D5 PWM D6 D7 D8 14 U 28 A5 in A4 in A3 in A2 in A1 in A0 in AREF AVCC 330 Ω D13 LED D12 D11 PWM D10 PWM 15 D9 PWM Jos hankit oman mikropiirin, ota se bootloaderilla ladattuna! Page 2 (13)

Arduino UNOn liitännät ja virtalinjat Kuva päältä katsottuna seuraavalla sivulla NC = Not Connected. XTAL = 16 MHz kvartsikide (määrää kellotaajuuden). IOREF antaa mahdollisille shieldeille tiedon emäntälevyn käyttöjännitteestä: 5 V (UNO) vai 3,3 V (DUE)? Monet shieldit toimivat vaihtoehtoisilla käyttöjännitteillä. PWM ( ) = Pulse Width Modulation; merkitty tildellä. V IN -liitin ei ota virtaa USB:n ollessa kytkettynä. Kun V IN 6,6 V, kytkeytyy USB-käyttöjännite irti. UNOn lepovirta on reilut 40 ma. LDO = Low Dropout regulator, pudottaa V IN :n viiteen volttiin. ICSP = In-Circuit Serial Programmer -liitin Page 3 (13)

7... 12 V (6... 20 V) ( 5 V?) Vin DC+ NCP1117 LDO USB Reset NC IOREF Reset 3,3 V out 5 V out Vin DC+ (D I/O) A0 in (D I/O) A1 in (D I/O) A2 in (D I/O) A3 in (D I/O) A4 in (D I/O) A5 in U VCC AVCC XTAL 5 V RST2 SCK2 MISO2 ICSP D11 5 V out Led PWM PWM PWM PWM PWM PWM TXLed RXLed Reset D13 D12 Serial clock Serial data AREF D13 I/O D12 I/O D11 I/O D10 I/O D9 I/O D8 I/O D7 I/O D6 I/O D5 I/O D4 I/O D3 I/O D2 I/O D1 I/O Serial out D0 I/O Serial in MOSI2 5 V out Page 4 (13)

Arduinon ohjelmointi, ks. myös Sami Pukkilan luento! Ohjelman perusrakenne: Bare Minimum Arduino-koodi on case-sensitiivistä! Kaksi perusfunktiota: setup ajetaan kerran aina, kun virta kytketään tai reset-napin painamisen jälkeen. Tällöin voidaan esim. alustaa muuttujia tai määritellä pinni OUTPUTiksi. Funktio loop ajetaan uudestaan ja uudestaan. // aloittaa kommenttirivin void setup() { // put your setup code here, to run once: } void loop() { // put your main code here, to run repeatedly: } Page 5 (13)

Bare Minimum (extended) Kirjastojen "inkludointi" sekä muuttujien ja pinnien määrittely tarvittaessa #include <Servo.h> Servo A; // muista puolipisteet! int Tulo = 2; // (integer = kokonaisluku) void setup() { pinmode(2, INPUT); // ylösvetovastus disabloidaan ( suuri R IN ) pinmode(tulo, INPUT_PULLUP); pinmode(13, OUTPUT); A.attach(9); // liitetään servo A pinniin 9 } void loop() { int B = digitalread(2); } Page 6 (13)

Jännitteen tai loogisen tilan lukeminen ja kirjoittaminen digitalread(n) N = liitäntäpinnin numero, esim. 2 digitalwrite(n, HIGH) HIGH = 1 (5 V) digitalwrite(n, LOW) LOW = 0 (0 V) analogread(a0) luetaan pinnin A0 jännite 0... 1023 10-bittinen: 2 10 1 = 1023 analogwrite(n, D) D = 0... 255 vastaa V CC :tä tässä N on PWM-liitäntä (merkitty tildellä ), esim. D9 8-bittinen: 2 8 1 = 255 D on verrannollinen pulssisuhteeseen: 0... 100 % "oikea analogwrite" puuttuu; UNO:ssa ei ole D/A-muunninta! Page 7 (13)

PWM = Pulse Width Modulation Pulssisuhde D = Duty Cycle (Duty Ratio) 0... 100 % T = jaksonaika Katkoviiva on keskiarvo U AVE (average, lasketaan pinta-aloista) D = 60 % D = 40 % T T D = 0 % U AVE = 0 V D = 100 % U AVE = V CC (5 V) D vaikuttaa esim. ledin kirkkauteen, vilkkumista ei ehdi havaita. Unossa f = 1 T = 490 Hz, paitsi pinneissä 5 ja 6 f = 980 Hz. Page 8 (13)

Teensy 2.0; yleensä UNON:n "sketsit" (ohjelmat) toimivat Both Teensy 2.0 and Arduino Leonardo support USB Serial, Keyboard and Mouse Päältä katsottuna (RESET-nappia voi painaa vaikka kuulakärkikynällä): Digital 0 1 2 3 PWM 4 977 Hz PWM 5 6 UART RX 7 UART TX 8 PWM 9 PWM 10 USB Reset A11 Analog +5 V 21 A0 20 A1 19 A2 18 A3 17 A4 16 A5 15 A6 PWM 14 A7 PWM 13 A8 12 A9 PWM 11 A10 LED Pinnien 4, 9,10,12,14 ja 15 PWM-taajuus on 3912 Hz; taajuuksia voidaan tarvittaessa muuttaa (pinnit 9 tai 4/14/15). Page 9 (13)

Arduinon ohjelmointiympäristön installointi Teensyn (2.0) installointi Arduino IDE:n alle IDE = Integrated Development Environment Arduino UNO, ym.: https://www.arduino.cc/en/guide/windows jos käytät Teensyä: https://www.pjrc.com/teensy/td_download.html Teensyä suositellaan kaikille UNOn lisäksi! Page 10 (13)

LED, etuvastus ja RGB-LED anodi ja katodi (cathode) + 220 Ω a k 5 V a k (c) Blue Green Red a tai k Led ja etuvastus: I = E U LED R Yhteisanodi- tai yhteiskatodi-rgbled Yleensä joka ledille tarvitaan oma etuvastus. Ledin jännite U LED normaalilla virralla on tyypillisesti 1,6... 5 V, punaisilla ja vihreillä yleensä korkeintaan noin 2 V. k Page 11 (13)

Harjoituksia Arduinolle ja Teensylle (Pajalla) Nämä on mainittu myös luento-ohjelmassa Hakupolku: www.arduino.cc Learning Tutorials Built-in Examples: 1. Basics Blink, Analog Read Serial, Digital Read Serial, Fade, Read Analog Voltage, ym. 2. Digital Button, State Change Detection, Tone Keyboard, Tone Pitch Follower, ym. Examples from Libraries: LCD, Servo, Stepper, ym. Page 12 (13)

Pakollinen Pajalla tehtävä harjoitus 3.-7.10. tai myöhemmin, assistentti kirjaa ylös tekijät. Harjoituksen tarkoituksena on tehdä Teensy tutuksi ja varmistaa, että jokainen tutustuu Arduinoon ja ohjelmointiin myös käytännössä. Voit saada vapautuksen vain poikkeustapauksessa; helpommalla pääset, kun teet työn (vaikka vartissa). Tehdään joko yksin tai max. 4 hengen ryhmissä. Dokumentointia ei tarvita, mutta tämä sopii hyvin päiväkirjaan. Osat: Teensy 2.0, leipälauta, RGB-led ja 3 kpl 220 Ω vastuksia. Kirjoita ohjelma, joka sytyttää kaikki kolme värikanavaa ja "feidaa" (himmentää) yhtä väriä Arduinon Fading-esimerkin mukaisesti. Esittele tulos assitentille saadaksesi "suoritusmerkinnän" Muuta koodia ja tee kokeiluja. Pyydä tarvittaessa assistentilta apua. Page 13 (13)