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

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

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

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

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)

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.

Ohjelmoi Arduino Grovella

Ohjelmointiharjoituksia Arduino-ympäristössä

Arduino tutuksi. Kyösti Blinnikka

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

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

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

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

PR SARJA ASENNUS JA KYTKENTÄ

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

Adafruit Circuit Playground Express

Sähkötekniikka ja elektroniikka

PR SARJA ASENNUS JA KYTKENTÄ

AUTO3030 Digitaalitekniikan jatkokurssi, harjoitus 2, ratkaisuja

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

Sähköpaja. Kimmo Silvonen (X)

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

Ohjelmoitava päävahvistin WWK-951LTE

Arduinon Alkeet. Johdatus Arduinoon ja elektroniikkaan

U-REMIX USB RF 2 RF 1 POWER

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

1 Tarkistetaan että kaikki toimii

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

AS Automaatio- ja systeemitekniikan projektityöt

1 Muutokset piirilevylle

ELEC-C5070 Elektroniikkapaja (5 op)

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

Mikro-ohjain µc harjoitukset - yleisohje

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

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

6.3. AVR_rauta. EEPROM-muisti pva

HARJOITUSTYÖ: LabVIEW, Liiketunnistin

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

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

HARJOITUSTYÖ: LabVIEW, Kiihtyvyysanturi

1. Yleistä. 2. Ominaisuudet. 3. Liitännät

Sähkötekniikka ja elektroniikka

SISÄLLYSLUETTELO RC-436

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

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

Sähköpajan komponentit

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

Tekniikka ja liikenne (5) Tietoliikennetekniikan laboratorio

L-sarjan mittamuuntimet

Langaton kuuntelujärjestelmä. E-Lab.

Arduinon Alkeet. Johdatus Arduinoon ja elektroniikkaan

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

dupol.eu - smart home product comparison

Arduino Uno (R3)-kehitysalusta

Piirien väliset ohjaus- ja tiedonsiirtoväylät H. Honkanen

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

GSM OHJAIN FF KÄYTTÖOHJE PLC MAX S03

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

Mikrokontrollerit. Mikrokontrolleri

NiMH Laturi. Suunnittelu Olli Haikarainen

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

Taitaja2007/Elektroniikka

Anturityö, Tomi Pulli

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

Verkkodatalehti. T4000-1RBA01 T4000 Standard TUOTEVALIKOIMA

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

ONE 118 OHJELMOITAVA PÄÄVAHVISTIN

6. Analogisen signaalin liittäminen mikroprosessoriin Näytteenotto analogisesta signaalista DA-muuntimet 4

HÄMEEN RADIOHARRASTAJAT OH3ACA 1/14

ARDUINON KÄYTTÖ SULAUTETTUJEN JÄRJESTELMIEN OPETUKSESSA

LED - KORVAUSPOLTTIMOT

Teekkareiden Juomapeli

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

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

ELEC-C5070 Elektroniikkapaja (5 op)

S85 laseretäisyysanturi

GateWay v10 Laitekuvaus

Pinces AC/DC-virtapihti ampèremetriques pour courant AC

Tekniset tiedot. Frese OPTIMA Compact -toimilaitteet DN10-DN32. Käyttö. Moottoroitujen toimilaitteiden ominaisuudet

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

Harjoitustyö - Mikroprosessorit Liikennevalot

turvavalopuomi SG-BIG Base

MultiPlus-II 48/3000/ V (aiempi tuotenimi: MultiGrid-II)

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

HARJOITUSTYÖ: LabVIEW, Valokennoportti

Verilogvs. VHDL. Janne Koljonen University of Vaasa

Toiminnallinen määrittely versio 1.2

GSM releen rakennusohjeet

S Elektroniikan häiriökysymykset. Laboratoriotyö, kevät 2010

Transkriptio:

Arduino Kimmo Silvonen (X)

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 2 (14)

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 3 (14)

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 4 (14)

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 5 (14)

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 6 (14)

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 7 (14)

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 8 (14)

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 9 (14)

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 10 (14)

LED, etuvastus anodi ja katodi (cathode) 220 Ω 5 V a k a k (c) Led ja etuvastus: I = E U LED R Ledin jännite U LED normaalilla virralla on tyypillisesti 1,6... 5 V, punaisilla ja vihreillä yleensä korkeintaan noin 2 V. Page 11 (14)

RGB-LED ja etuvastukset Yhteisanodi- tai yhteiskatodi-rgb-led + a 1 1 1 Blue Green Red a tai k 0 0 0 k Yleensä joka ledille tarvitaan oma etuvastus. Page 12 (14)

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 13 (14)

Vapaaehtoinen Teensy-harjoitus Harjoituksen tarkoituksena on tehdä Teensy tutuksi ja varmistaa, että jokainen tutustuu Arduinoon ja ohjelmointiin myös käytännössä. 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 esim. 180, 220 ja 270 Ω vastukset eri väreille. Kirjoita ohjelma, joka sytyttää kaikki kolme värikanavaa ja "feidaa" (himmentää) vähintään yhtä väriä Arduinon Fade-esimerkin mukaisesti. Muuta koodia ja tee kokeiluja! Pyydä tarvittaessa assistentilta apua! Pajalla on myös paljon tehokkaampi Arduino-ohjelmoitava Teensy 3.2, jossa on mm. DAC. Page 14 (14)