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

Samankaltaiset tiedostot
Raspin Geany-IDE:n etäkäyttö

Python-koodaus: Muuttujat

Raspin Geany-IDE:n etäkäyttö Windows-ympäristössä

1. NetBeans-ohjelman asennus ja käyttöönotto pva

Elektroniikan perusteet, Radioamatööritutkintokoulutus

Taitaja2010, Iisalmi Suunnittelutehtävä, teoria osa

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

Näppäimistö CT Käyttäjäopas. Global Safety & Security Solutions Oy info@globalsafety.fi. CT1000v.5

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

Elektroniikan perusteet, Radioamatööritutkintokoulutus

Adafruit Circuit Playground Express

NetBeans asennus ja etäkäyttö C-kielen opiskeluun, Windows

kipinäpurkauksena, josta salama on esimerkki.

Laiteläheinen C-kieli, hello.c

1. Tasavirta. Virtapiirin komponenttien piirrosmerkit. Virtapiiriä havainnollistetaan kytkentäkaaviolla

PUOLIJOHTEET tyhjennysalue

Fysiikan laboratoriotyöt 1, työ nro: 3, Vastuksen ja diodin virta-jänniteominaiskäyrät

GSM PUHEVIESTI & SMS HÄLYTYKSENSIIRTOLAITE

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

7. Resistanssi ja Ohmin laki

Multivibraattorit. Bistabiili multivibraattori:

Sähköpajan elektroniikkaa

1. Tasavirtapiirit ja Kirchhoffin lait

OHJE D C.docx

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

Katso Opetus.tv:n video: Kirchhoffin 1. laki

S SÄHKÖTEKNIIKKA Kimmo Silvonen

GSM LITE. Asennus- ja Ohjelmointiohje. GSM Lite Ver: 1.0 Fi

Diodit. I = Is * (e U/n*Ut - 1) Ihanteellinen diodi

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

Kaksi yleismittaria, tehomittari, mittausalusta 5, muistiinpanot ja oppikirjat. P = U x I

PUOLIJOHTEISTA. Yleistä

Arduino. Kimmo Silvonen (X)

NetBeans asennus ja etäkäyttö C-kielen opiskeluun, Linux

Ääniohjattu vilkkuvalo ledeillä toteutettuna

Laiteläheinen C-kieli osa 1 pva

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

DEE Sähkötekniikan perusteet

PR SARJA ASENNUS JA KYTKENTÄ

Micro:bit. Käyttöohje. Innokas verkosto Petja Pyykkönen, Saimaan mediakeskus Käyttöohje / 2016 Innokas

Asennusohje. EasyLine GSM

2 Jannitelähde 24 V 28 V 7,5 A

Arduino. Kimmo Silvonen (X)

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

WLAN-laitteen asennusopas

Sähköpaja. Kimmo Silvonen (X)

Etälukija PR Käyttäjäopas. Global Safety & Security Solutions Oy info@globalsafety.fi. PR1000v.2

Taitaja2004/Elektroniikka Semifinaali

Tehokas halogeenivalaisin vilkulla ja valon voimakkuuden säädöllä sekä yövalolla. 12V / 20W. Suunnittelija: Mikko Esala

ASENNUS GOLDen GATE, TBLZ-1/

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

DT-105 KÄYTTÖOHJE Sivu 1/5 DT-105 KÄYTTÖOHJE LUE KÄYTTÖOHJE HUOLELLISESTI ENNEN MITTARIN KÄYTTÖÖNOTTOA TULOSIGNAALIEN SUURIMMAT SALLITUT ARVOT

Ledien kytkeminen halpis virtalähteeseen

LED - KORVAUSPOLTTIMOT

PR SARJA ASENNUS JA KYTKENTÄ

Sähkötekiikka muistiinpanot

GSRELE ohjeet. Yleistä

SÄHKÖSTATIIKKA JA MAGNETISMI. NTIETS12 Tasasähköpiirit Jussi Hurri syksy 2013

Harjoitustyö - Mikroprosessorit Liikennevalot

Merkkilamput kiinteällä LEDillä

Asennus GOLDen GATE Lonworks FTT-10,

GateWay v10 Laitekuvaus

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

MIKROAALTOMITTAUKSET 1

Elotec Ajax. Aloitus

LED -valaisin tai koriste

Sähköpajan elektroniikkaa

Raspberry Pi eli Raspi-tietokoneen käyttöönotto

Mittalaitetekniikka. NYMTES13 Vaihtosähköpiirit Jussi Hurri syksy 2014

Johdanto laiteläheiseen C-ohjelmointiin

Digital Thermometer KÄYTTÖOHJE

Python-ohjelmointi Harjoitus 2

DEE-11110: SÄHKÖTEKNIIKAN PERUSTEET. Kirchhoffin lait Aktiiviset piirikomponentit Resistiiviset tasasähköpiirit

Zeus4 DE GSM Ovipuhelin

RAIDETESTERIN KÄYTTÖOHJE

ELEC-C6001 Sähköenergiatekniikka, laskuharjoitukset oppikirjan lukuun 10 liittyen.

PROBYTE GSM ALARM8. PROBYTE GSM ALARM#8 toimii hälyttimenä ja kauko-ohjaimena usealle käyttäjälle. Soitto- tai SMShälytysviestien

PIIRIANALYYSI. Harjoitustyö nro 7. Kipinänsammutuspiirien mitoitus. Mika Lemström

2. Vastuksen läpi kulkee 50A:n virta, kun siihen vaikuttaa 170V:n jännite. Kuinka suuri resistanssi vastuksessa on?

Pieni ja tehokas Led-taskulamppu 9V paristolla

Arduino. Kimmo Silvonen (X)

Omnia AMMATTIOPISTO Pynnönen

1 Muutokset piirilevylle

Aineopintojen laboratoriotyöt I. Ominaiskäyrät

Ohjelmoi Arduino Grovella

Oma nimesi Puolijohteet

Vastksen ja diodin virta-jännite-ominaiskäyrät sekä valodiodi

PERUSRAKENTEET Forward converter, Myötävaihemuunnin ( BUCK regulaattori )

Naulakko huomiovaloilla ja valaistuksella varustettuna. Mikko Esala, Veikko Pöyhönen

Yleistä GSM-RELE /GSMRELE PLUS PROBYTE OY

KL1000 Ohjelmointi-ja toimintaohjeet

Modulaatio-ohjauksen toimimoottori AME 438 SU jousipalautustoiminto (jousinosteinen)

Elektroniikan komponentit

TUTUSTU OHJEESEEN ENNEN VASTUKSEN ASENNUSTA! Jos uusi vastus palaa heti asennettaessa, koska ohjetta ei ole luettu, UUTTA EI SAA ILMAISEKSI.

Tehtävään on varattu aikaa 8:30 10:00. Seuraavaan tehtävään saat siirtyä aiemminkin. Välipalatarjoilu työpisteisiin 10:00

AXCARD AXCARD PR JOHDANTO 2. LUKIJAN KÄYNNISTYS

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

Transistoreiden merkinnät

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

LOPPURAPORTTI Lämpötilahälytin Hans Baumgartner xxxxxxx nimi nimi

Transkriptio:

Python-koodaus: Eka GPIO-ohjelma, LED vilkutus PUNOMO NETWORKS OY 5.8.2016 pva Oletus Sinulla on Raspin Geany-IDE konfiguroituna toimimaan SSH-etäkäytössä. Tämä on Punomon Python koodikoulun ensimmäinen GPIO-oppitunti. Käynnistä Mint-koneessa Terminal-ohjelma. Anna komento: ssh X pi@<koneesi IP osoite> geany Komento käynnistää Raspi-koneessa Geanyn ja kaappaa sen verkon kautta Mintin ruutuun. NONNIIN! Tästä se alkaa. Laiteläheinen ohjelmointi. Loput asiat ohjelmoinnista ja Python-kielen hienouksista opiskelemme laiteläheisesti. Ensin muutama sana RaspberryPi eli Raspin GPIO-liitännästä. Ja lopuksi panemme LED-lampun vilkkumaan, ohjelman ohjaamana, tietty. Raspin 26/40-pinninen GPIO-liitäntä (General Purpose Input Output, yleiskäyttöinen tulo-lähtöliitäntä) on väylä jolla Raspi liitetään ulkomaailmaan. Niinkuin nykyään hienosti sanotaan, IoT, Internet of Things, jolla laitteet liitetään internettiin, (oikeastaan me liitämme Raspin Ethernetliitännästä internettiin). GPIO-pinneihin voimme kytkeä esim. lämpötila-anturin, jonka avulla Raspi mittaa lämpötilaa ja heittää tulokset netin kautta vaikka kännykkään. Niin me tehdään vielä, myöhemmin, mutta malta opiskella ensin perusasiat. Helpoin tapa päästä Python-koodilla manipuloimaan GPIO-pinnejä on ottaa käyttöön ns kirjastot. Kirjastot tarkoittavat valmista käyttökelpoista koodia jonka jotkut osaajat ovat kehittäneet meidän yhteiseen käyttöön. Niin mekin puolestamme teemme kunhan pääsemme sinne asti opinnoissa. Pythonin RPi.GPIO-kirjastot löytyvät täältä: https://pypi.python.org/pypi/rpi.gpio Mutta uudessa Raspbian-käyttöjärjestelmässä tuo on jo valmiina: The library comes pre-installed with the latest Raspbian OS. Katsotaan ensin millainen on GPIO-liitäntä. 1

GPIO Käyttöjännitepinnit ovat joko +5V tai +3,3 V ja GND-maa eli 0V. GPIO-pinnit ovat suoraan kiinni ARMprosessorin rekistereissä, niissä ei ole mitään suojauksia. Siksi niihin ei saa missään tapauksessa tuoda yli 3,3 Voltin jännitettä. Muuten savu nousee. Eikä niistä saa ottaa liikaa virtaa. Eikä niitä saa maadoittaa = oikosulkea maihin. LED kytketään aina suojavastuksen kautta. Tässä on oltava huolellinen, noudata ohjeita kirjaimellisesti. Useilla GPIO-pinneillä on kaksois-merkitys, niitä voidaan käyttää tavallisen I/O-systeemin lisäksi esimerkiksi I2C-väyläliitäntään, tms. Selvitän mitä merkitse I2C, kunhan kurssi on edennyt sinne asti. Raspin GPIO-liitäntä, päältä katsottuna. Mitä nuo kaikki pinni-merkinnät tarkoittavat, selvitän kurssin edetessä. Don't worry. Meillä on Raspin GPIO-liittimen pinnit numeroitu 1 40 kuten kuva osoittaa, päältä katsottuna. Jokaisessa pinnissä on numeron lisäksi lisämääre, joko se on käyttöjännitteeseen liittyvä tai Raspin ARM-prosessorin rekistereihin liittyvä. Toiset koodaajat käyttävät liittimen pinninumeroita ja toisissa koodeissa on käytetty ARM-CPU:n merkintöjä, kuten GPIO2. Ole huolellinen kumman valitset, niin homma hoituu. Ja vielä hämminkiä aiheuttavaa tietoa, joillakin GPIO-pinneillä on kaksoismerkitys. Esim GPIO2 ja GPIO3 voidaan käyttää normaalisti tulona tai lähtönä, input-output, tai ohjelmassa annetulla erikoismäärityksellä nuo pinnit toimivatkin I2C-liitännän ohjauksessa. Tuosta I2C-liitännästä perusteellisesti sitten kun sen aika koittaa. 2

LED, Ligth Emitting Diode, valoa emittoiva diodi. Google on ystäväsi: https://fi.wikipedia.org/wiki/led LED, Ligth Emitting Diode, on puolijohdediodi joka johtaa sähköä vain toiseen suuntaan, päästösuuntaan ja silloin se loistaa valoa jonka väri riippuu diodin rakenteesta. Estosuunta on sama kuin diodi on poikki. Päästösuunta = anodille plus-jännite katodin suhteen. Katodille siis miinus. Kun LEDin läpi kulkee noin 10 ma virta, se loistaa (uusimmat loistavat hyvin jo 5 ma virralla) rakenteensa mukaan punaista, vihreää, keltaista, tms valoa. Sitten katsotaan miten LED kytketään ja saadaan loistamaan. Pin-1 Pin-2 Pin-11 GPIO-17 pin-11 Pin-9 ja moni muu Kts kuva ed.sivulla Virta pitää rajoittaa suojavastuksen avulla. R = U/I eli resistanssi on jännite jaettuna virralla. R = (3,3 V 2 V)/10 ma eli vastuksen arvoksi saadaan 130 ohmia, valitaan turvallinen 330 ohmia, sillä se LED vielä loistaa ihan mukavasti (riippuu väristä, koska eri väreillä on eri kynnysjännite. Kokeile eri vastuksia välillä 150 ohmia 1 kilo-ohmia. +3,3 V on GPIO-17 jännite silloin kun se on asetettu olemaan looginen 1, 2 V on punaisen LEDin kynnysjännite. Joten suojavastuksen yli jää erotus 1,3 V. Kynnysjännite on jännite jolla LED lähtee johtamaan eli virta kulkee sen läpi. Diodin piirrosmerkissä nuoli näyttää minne päin virta kulkee, sähköhän kulkee plussasta miinukseen. Kytke LED kuvan osoittamalla tavalla. LEDin positiivinen jalka GPIO-pinniin numero 11 ja 330 ohmin vastuksen kautta LEDin negatiivinen piuha maahan, eli GND, eli ground, eli 0 V. 3

Sitten koodaamaan. Annan mallikoodin ja kun olet saanut sen toimimaan, niin sitten tekemään harjoituksia. For-silmukan lohko Kirjoita koodi ja talleta se nimellä vilku.py Koodin analyysi. Kommentointi on niin perusteellinen, ettei se kaivanne enempää selitystä. Raspin GPIO-liitännän käyttöön Python-kielen kanssa on tehty työtä helpottamaan valmista koodia joita tarvitaan jotta homma toimii. Meille jää vain valita käytettävä pinni ja sen määritykset, loput hoitaa kirjastotiedosto. Kirjastot otetaan käyttöön ohjelman alkuun laitettavilla import-käskyillä. Toinen import on GPIOliitäntää varten ja toinen viiveen määritystä varten. pin = 11, eli määrittelemme muuttujan pin ja annamme sille arvon 11. For-silmukassa oleva määritys: GPIO.output (pin, GPIO.HIGH) asettaa pinni-11 (GPIO-17) olemaan looginen 1 eli 3,3 V, silloin LED loistaa. Kun se määritetään olemaan LOW, eli looginen 0, eli 0 V, silloin LED ei loista. 4

Kun ohjelma ajetaan, LED vilkkuu 10 kertaa ja samalla se käynnistää LXTerminaalin, jossa näkyy seuraavaa: Joka kierroksella tulostetaan kierroslaskuri ja LED ON-OFF. 5