Arduino ja perusteita

Samankaltaiset tiedostot
Arduino. Kimmo Silvonen (X)

Arduino. Kimmo Silvonen (X)

Arduino. Kimmo Silvonen (X)

Sähköpajan elektroniikkaa

Sähköpajan elektroniikkaa

Sähköpajan elektroniikkaa

Sähköpaja. Kimmo Silvonen (X)

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

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

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

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

Sähkötekniikka ja elektroniikka

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

Adafruit Circuit Playground Express

Sähköpaja. Kimmo Silvonen (X)

Mikro-ohjain µc harjoitukset - yleisohje

Sähköpaja. Kimmo Silvonen (X)

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

Sähköpaja. Kimmo Silvonen (X)

ELEKTRONIIKAN PERUSTEET T700504

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

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

ESMART202 Teholähde ja akkulaturi

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

Arduino tutuksi. Kyösti Blinnikka

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.

1 Muutokset piirilevylle

Sähkötekniikka ja elektroniikka

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

Ohjelmointiharjoituksia Arduino-ympäristössä

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

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

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

Anturit ja Arduino. ELEC-A4010 Sähköpaja Tomi Pulli Signaalinkäsittelyn ja akustiikan laitos Mittaustekniikka

Sähkötekniikka ja elektroniikka

L-sarjan mittamuuntimet

Energian hallinta Energiamittari Tyyppi EM110

Ledien kytkeminen halpis virtalähteeseen

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

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

GSM OHJAIN FF KÄYTTÖOHJE PLC MAX S03

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

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

Supply jännite: Ei kuormaa Tuuletin Vastus Molemmat DC AC Taajuus/taajuudet

Ohjelmoi Arduino Grovella

AS Automaatio- ja systeemitekniikan projektityöt

M2A Suomenkielinen käyttöohje.

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

M2A Suomenkielinen käyttöohje.

Arduino ohjelmistokehitys

VIM RM1 VAL / SKC VIBRATION MONITOR RMS-MITTAUSJÄRJESTELMÄLLE KÄSIKIRJA. VIM-RM1 FI.docx / BL 1(5)

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

HÄMEEN RADIOHARRASTAJAT OH3ACA 1/14

Anturityö, Tomi Pulli

PR SARJA ASENNUS JA KYTKENTÄ

C-Lynx pinnanvalvontareleet HNM ja HNE

Vahvistimet. A-luokka. AB-luokka

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

PR SARJA ASENNUS JA KYTKENTÄ

TEKNISET TIEDOT LED-NAUHA, VARSIVALO, VALOLISTA JA LISÄVARUSTEET

U-REMIX USB RF 2 RF 1 POWER

Elektroniikka. Mitä sähkö on. Käsitteistöä

Sähköautoprojekti Pienoissähköauto Elektroniikan kokoonpano Moottoriohjain.

Teekkareiden Juomapeli

Verkkodatalehti. T4000-1RBA01 T4000 Standard TUOTEVALIKOIMA

KÄYTTÖOHJE - INVERTTERI 12V tai 24V -> 230V 55Hz

Ongelmia mittauksissa Ulkoiset häiriöt

Verkkodatalehti. T4000-1RBA01 T4000 Standard KOSKETUKSETTOMAT TURVARAJAKYTKIMET

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

Verilogvs. VHDL. Janne Koljonen University of Vaasa

Käyttöohje FIN. Suojaerotusmuuntaja 2000W 115/230V 18/ 9A 3600W 115/230V 32/16A 3600W Auto 115/230V 32/16A

-Motorracing Electronics WB-NÄYTTÖ KÄYTTÖOHJE. WB-näyttö Käyttöohje v1.0 12/2011 1/7

Aurinkojärjestelmän syväpurkauksen ohjausyksikkö Suunnittelu Mikko Esala

Jännitelähteet ja regulaattorit

Ohjelmoitava päävahvistin WWK-951LTE

Fin v2.0 VA03-S D Käsikirja

GateWay v10 Laitekuvaus

Pitkien etäisyyksien induktiivinen suorakulmainen lähestymiskytkin. Lähtö NO + NC 20 mm suojattu

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

1 YLEISTÄ. Taitaja2002, Imatra Teollisuuselektroniikkatyö Protorakentelu 1.1 PROJEKTIN TARKOITUS

turvavalopuomi SG-BIG Base

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

em4 3G, GPRS tai Ethernet Loggaus ja hälytys Analogiset tulot/lähdöt Etäkäyttö Keskus Pienoislogiikat

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

Sähköpaja. Kimmo Silvonen (X)

BL40A1711 Johdanto digitaalielektroniikkaan: CMOS-tekniikka ja siihen perustuvat logiikkapiiriperheet

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

Langaton kuuntelujärjestelmä. E-Lab.

I/O-laajennuskortin. asennusohje. (CXS-sarja) F O R S M O O T H C O N T R O L. Kaikki oikeudet muutoksiin ilman etukäteisilmoitusta pidätetään.

Esittely. Tuote. HomeSecure Smart Ulkosireeni:

LOOP 1 OUT RET Silmukka 1 Lähtö CI NC NO C2 NC NO C3 NC NO C4 NC NO. Palo

S SÄHKÖTEKNIIKKA Kimmo Silvonen

Taitaja2007/Elektroniikka

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

ELEC C4210 SÄHKÖTEKNIIKKA JA ELEKTRONIIKKA

5.1.Jännitelähde + 15 V 10 A

smartallinone Sarjaliikenteellä toimiva releohjain

Transkriptio:

Arduino ja perusteita Kimmo Silvonen (X)

Pajan ohjeelliset aukioloajat III periodilla Pajalla tehdään Arduino-harjoituksia ja projektia! Ma klo 12 17 Ti klo 14 16 Ke klo 12 16 To klo 12 17 Pe klo 10 15 Tärkeää: pyytäkää ryhmällenne nimikkoassistentti heti, kun ryhmä on kasassa! Nimikkoassari perehtyy projektiinne hyvin ja pystyy auttamaan tehokkaasti. Muutama projekti (ja vaarallinen akku) on mennyt kokemattomuuden takia pilalle, kun opiskelijat eivät olleet yhteydessä assistenttiin. Tänä vuonna ryhmän ja assistentin välinen tapaaminen on pakollinen. Page 2 (23)

Hajahuomioita Harjoitusten ryhmäjako ei ole sitova Learning Hubissa on käytettävissä ryhmätyöhuoneita ilman ajanvarausta Kaikki ostokset tehdään Kimmon kautta Yritän pitää huoneessani pientä varastoa kriittisistä osista Koulu ei lunasta kuitteja Projektien säilytys Pajan oven viereisessä hyllyssä. Muovi- tai pahvilaatikko, merkitkää teipillä ryhmän numero ja K2018! Page 3 (23)

"Virtalähde", teholähde, verkkolaite (wall-wart) Elektroniikkapiirit vaativat toimiakseen käyttöjännitteen. Paristot noin 1,5 V tai 3 V / kenno Ladattavat NiMH-akut 1,25 V /kenno LiPo-akut 3,7 V /kenno, vaarallisia väärin käytettyinä! USB-liitäntä 5 V. USB3: 900 ma (150 ma), USB2: 500 ma Energiankeräimet: pieni teho tai lyhyt käyttöaika, IC-toteutus Verkkolaitteet, esim. 5 V tai 12 V, + on liittimessä keskellä Napaisuus! Osien rikkoutuminen on tavallista, jos + + + 1,25 3,75 1,25 Page 4 (23)

Arduinon käyttöjännite Neljä AA-koon akkua 5 V, mutta neljä paristoa 6 V, verkkolaite, labrapoveri UNO: Pinni V CC = 5 V. Liitin V IN : 7 12 (6 20) V Akut (4 kpl) olisi liitettävä +5 V liittimeen Max I OUT = 40 ma (3,3 V DC-out: 50 ma) GND (ground) on käyttöjännitteen miinusnapa Min I IN : lepovirta yli 40 ma (ilman kuormaa) Teensy 2.0: 2,7 5,5 V (6 V?, akut, ei paristot!) Max I OUT = 40 ma (output) Max I IN = 200 ma (syöttöjännitteestä V CC ) Min I IN : lepovirta 6 15 ma (ilman kuormaa) Akkujen ja paristojen kapasiteetti (AA, LR6, myös sarjaankytkentä) on tyypillisesti yli 2000 mah; suurella virralla pienempi. Page 5 (23)

Anturit ja toimilaitteet Anturit (sensor) mittaavat mm. lämpötilaa, kiihtyvyyttä, etäisyyttä, kaasun tai nesteen virtausta, ym. Digitaalisia ja analogisia (luento ja harjoitus tulossa!) Toimilaitteet (actuator) toimivat usein sähkömekaanisesti. Esim. moottorit, servot, kaiuttimet, ym. Lisäkortit (shield) mahdollistavat erikoistoimintoja. Arduinolla voi mitata tai säätää mitä tahansa! Analogiatulot ovat 10-bittisiä jännitemittareita, yleensä 0...V CC sensors Arduino? actuator Page 6 (23)

Polaarisuus ja terminaalit + + V CC U MAX =? signaali GND Oikea napaisuus on tärkeä! Vältä ylijännitettä! Tyypillisesti miinus on kytketty "maahan", laitteen kuoreen? Maa ground on erikseen määritelty johdin virtapiirissä. Signaalijännite (analoginen tai digitaalinen) kytketään yleensä "kuuman" navan ja maan väliin. Signaalin kuljettamiseen tarvitaan kaksi johdinta tai johdin ja maa (sama asia). Page 7 (23)

Erilliskomponentit ja regulaattorit (luento tulossa) anodi katodi C B G E D S i Regul. Vältä ylijännitettä ja liikaa virtaa tai tehoa! Kytke oikein! Vain harvat passiiviset komponentit (R, kuiva C, L) voidaan kytkeä kummin päin tahansa. Tunnista liitäntänavat Googlen kuvahaulla! Transistoreilla (BJT) on kolme terminaalia: kollektori (c), kanta (b, base), emitteri (e). Kanavatransistoreilla (MOSFET, JFET) samoin kolme: nielu (d, drain), hila (g, gate), lähde (s, source). Regulaattoreilla on myös kolme terminaalia: i (input), o (output), c (common, usein maa). c o Page 8 (23)

Käytännön ohjeita + floating 1? 0 Digital Kelluvien (floating) tulojen (input) tilaa ei ole määritelty Digitaalitulot pitää kytkeä nollaan (maa) tai ykköseen (käyttöjännite) open R 1 0 closed + 0 1 R + i 0 i 0 Digital Digital Joskus tarvitaan ylösveto (pull-up) tai alasveto (pull-down) -vastus (R 10 kω) Page 9 (23)

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

RGB-LED ja etuvastukset Yhteisanodi- tai yhteiskatodi-rgb-led + a 1 1 1 Blue Green Red a tai k 0 0 0 k Yleensä jokaiselle ledille tarvitaan oma etuvastus, jotka voivat olla erikokoisia. Page 11 (23)

Painonappi, kytkimet ja potentiometri on/off SP3T R 1 + R 2 = 10 kω R 1 = 0...10 kω R 2 = 10 kω...0 R 1 R 2 Page 12 (23)

Rakenne Printti, (paino)piirilevy (PCB, printed circuit board) PCB-suunnittelu: KiCad, Fritzing, Eagle, ym. Radiaalinen komp. vs. pintaliitos (SMD, surface mount device) Leipälauta, koekytkentälevy (breadboard), ei juotoksia Mikropiiri (IC) vs. (diskreetit) erilliskomponentit Page 13 (23)

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! Huom! Seuraavien sivujen kaavioihin ei tarvitse perehtyä syvällisesti! Page 14 (23)

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 GND XTAL XTAL PWM D5 PWM D6 D7 D8 14 U 28 A5 in A4 in A3 in A2 in A1 in A0 in GND AREF AVCC 330 Ω D13 LED D12 D11 PWM D10 PWM 15 D9 PWM Jos hankit oman mikropiirin, ota se bootloaderilla ladattuna! Page 15 (23)

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 16 (23)

7... 12 V (6... 20 V) ( 5 V?) Vin DC+ NCP1117 LDO USB Reset NC IOREF Reset 3,3 V out 5 V out GND GND 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 GND D11 5 V out Led PWM PWM PWM PWM PWM PWM TXLed RXLed Reset D13 D12 Serial clock Serial data AREF GND 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 GND MOSI2 5 V out Page 17 (23)

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 GND 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 18 (23)

Arduinon ohjelmointi, ks. myös luentomateriaalit! 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 19 (23)

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 20 (23)

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 21 (23)

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 22 (23)

Binääri ja heksadesimaaliluvut 2-järjestelmä (0b), 10- järjestelmä ja 16-järjestelmä (0x): "10" on aina kantaluku Bitti: "1" tai "0"; jännitetasot tapauskohtaisia. Positiivinen logiikka: "1" = jännite, "0" = alempi tai negatiivinen jännite, yleensä noin nolla. Viiden voltin logiikka: "1" 5 V. 8 4 2 1 8a + 4b + 2c + d a b c d 10-järj. Heksa 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1 0 2 2 0 0 1 1 3 3 0 1 0 0 4 4 0 1 0 1 5 5 0 1 1 0 6 6 0 1 1 1 7 7 8 4 2 1 8a + 4b + 2c + d a b c d 10-järj. Heksa 1 0 0 0 8 8 1 0 0 1 9 9 1 0 1 0 10 A 1 0 1 1 11 B 1 1 0 0 12 C 1 1 0 1 13 D 1 1 1 0 14 E 1 1 1 1 15 F 16 10 Page 23 (23)