- Edellytykset:
- VPythonin asentaminen tietokoneellesi:
- VPythonin ohjelmointi:
- Arduinon valmisteleminen:
- Työskentely:
Edellisessä opetusohjelmassa opimme, kuinka python asennetaan Windows-koneellemme ja miten Arduino liitetään pythoniin yksinkertaisen LED-ohjausprojektin avulla. Jos olet uusi, suosittelen vahvasti, että palaat edelliseen opetusohjelmaan, koska tämä opetusohjelma on jatkoa samalle.
Olet ehkä jo alkanut miettiä, miksi tarvitsisimme pythonin Arduinon kanssa, jos kaikki, mitä se voisi tehdä, on vain kommunikoida sarjaportin kautta. Mutta Python on erittäin vahva kehitysalusta, johon voidaan integroida paljon hienoja sovelluksia, joihin koneoppiminen, tietokonenäkö ja paljon muuta voidaan integroida. Tässä opetusohjelmassa opitaan, kuinka voimme luoda pienen graafisen käyttöliittymän Pythonilla. Tätä varten tarvitsemme moduulin nimeltä Vpython. Seuraava opetusohjelma soveltuu vain Windows-käyttäjille, koska Mac- tai Linux-käyttäjille menettely on erilainen.
Tämän opetusohjelman lopussa opimme, kuinka voimme luoda yksinkertaisen käyttöliittymän Pythonilla. Teemme pienen animaation, joka reagoi Arduinoon kiinnitetyn ultraäänianturin arvoon. Tämä sovellus seuraa kohdetta ultraäänianturin avulla ja näyttää sen graafisessa muodossa tietokoneessa VPythonin avulla. Kun liikutamme objektia, ultraäänitunnistin tunnistaa etäisyyden ja lähettää nämä tiedot Python-ohjelmalle Arduinoa käyttäen, ja se siirtää objektin myös tietokoneessa. Kuulostaa mielenkiintoiselta! Joten anna aloittaa…
Edellytykset:
- Arduino (mikä tahansa versio)
- Ultraäänianturi HC-SR04
- Johtojen liittäminen
- Tietokone Pythonin kanssa
- Tiedot edellisestä opetusohjelmasta
VPythonin asentaminen tietokoneellesi:
Edellisessä opetusohjelmassa olemme jo oppineet, miten python asennetaan koneellesi ja kuinka liikkua siinä ja luoda yksinkertainen ohjelma Arduinolla. Nyt olemme asentaneet Visual Pythonin (VPython) tämän päälle, jotta voimme luoda hienoja grafiikoita käyttämällä Python for Arduino -ohjelmaa. Alla olevista yksinkertaisista vaiheista pääset alkuun VPythonin kanssa
Vaihe 1. Varmista, että Python on jo asennettu aiempien ohjeiden mukaisesti.
Vaihe 2. Napsauta VPython ladata exe-tiedosto Visual Pythonille. Älä valitse 64-bittisen version asentamista, vaikka koneesi olisi 64-bittinen. Seuraa vain annettua linkkiä.
Vaihe 3. Käynnistä exe-tiedosto ja seuraa asetuksia. Älä muuta oletushakemistopolkua ja varmista, että olet valinnut "täydellinen asennus".
Vaihe 4. Asennuksen jälkeen sinun pitäisi löytää uusi sovellus nimeltä VIDLE (VPython) työpöydältä tai sovelluspaneelista alla olevan kuvan mukaisesti.
Vaihe 5. Käynnistä sovellus ja saat ikkunan alla olevan kuvan mukaisesti.
Vaihe 6. Tämä on ikkuna, johon kirjoitamme VPython-ohjelmaa. Mutta nyt tarkistetaan, toimiiko Vpython avaamalla esimerkkiohjelman. Voit tehdä tämän valitsemalla File-> Open-> Bounce
Vaihe 7. Sinun pitäisi saada esimerkkiohjelma avatuksi. Yritä käynnistää ohjelma valitsemalla Suorita -> Suorita moduuli . Jos kaikki toimii odotetusti, saat seuraavan näytön.
Sinun pitäisi nähdä Shell-ikkuna (vasemmalla), jossa on kaksi >>>, jotka osoittavat onnistuneen kokoamisen, ja varsinainen ikkuna (edessä), joka näyttää pallon pomppimisen.
Vaihe 8. Voit myös kokeilla muita esimerkkiohjelmia VPythonin voiman löytämiseksi, esimerkiksi "sähkömoottori" -esimerkkiohjelma hämmästyttää sinua seuraavalla näytöllä.
Vaihe 9. Tämä tarkoittaa, että VPython on käyttövalmis ja voit siirtyä " Vpythonin ohjelmointi " -aiheeseen .
Vaihe 10. Muuten, jos olet yksi niistä monista, jotka saavat "numpy-virheen", älä menetä toivoa, sillä me selvitämme asian seuraavissa vaiheissa
Vaihe 11. Avaa Oma tietokone -> C-asema -> Python 27 -> Skriptit -> local.bat . Tämä käynnistää komentokehotteen alla olevan kuvan mukaisesti
Vaihe 12. Kirjoita nyt ”pip install --upgrade numpy” ja paina Enter. Numpyn uuden version pitäisi olla asennettuna koneellesi. Saatat joutua odottamaan jonkin aikaa, jos internetyhteytesi on hidas.
Vaihe 13. Kun olet valmis, voit palata vaiheeseen 4 ja kokeilla esimerkkiohjelmaa, ja sinun pitäisi pystyä saamaan se toimimaan.
VPythonin ohjelmointi:
Seuraavaksi aloitamme ohjelmoinnin VPython-ikkunaamme. Tässä ohjelmassa luomme kaksi suorakulmaista 3D-objektia, joista toinen sijoitetaan näytön keskelle viittausta paikallaan olevaan ultraäänianturiin ja toinen on dynaamisessa paikassa Yhdysvaltain anturin ja kohteen (paperin) välisen etäisyyden perusteella.
Täydellinen Python koodia löytyvät lopussa tämän sivun. Aikaisemmin olen selittänyt tämän python-koodin jakamalla ne pieniksi merkityksellisiksi junkeiksi.
Ensimmäinen rivi olisi tuoda visuaalinen kirjasto, jotta voimme luoda 3D-objekteja. Alla oleva rivi tekee saman.
visuaalisesta tuonnista *
Sinun tulisi tuntea seuraavat neljä riviä, koska olemme käyttäneet niitä jo edellisessä opetusohjelmassa. Niitä käytetään sarja- ja aikakirjaston tuomiseen ja myös sarjaliitännän muodostamiseen Arduinoon COM18: lla, jonka baudinopeus on 9600
tuo sarja # Sarja tuotu sarjaliikennettä varten tuontiaika # Edellyttää viivetoimintojen käyttöä ArduinoSerial = serial.Serial ('com18', 9600) #Create sarjaporttiobjekti nimeltä arduinoSerialData time.sleep (2) #odota 2 sekuntia vakiintua
Nyt on aika luoda esineitä. Olen luonut kaksi kolmiulotteista suorakulmiota nimeltään obj ja wall. Muurille on kiinteä seinän syaanin värin sijoitettu keskelle näytön ja obj on siirrettävä kohde valkoinen väri. Olen myös asettanut teksti "US-anturi" seinän lähelle.
obj = laatikko (pos = (- 5,0,0), koko = (0,1,4,4), väri = väri. valkoinen) seinä L = laatikko (pos = (- 1,0,0), koko = (0,2), 12,12), väri = väri. Syaani) teksti (teksti = 'US-anturi', akseli = (0,1,0), pos = (- 2, -6,0), syvyys = -0,3, väri = väri. syaani)
Olen varma, että edellä mainitut kolme riviä olisivat esiintyneet kreikaksi ja latinaksi useimmille ensimmäistä kertaa lukijoille, mutta ajan myötä pystyt ymmärtämään sen. Kaikki suluissa mainittu on (x, y, z) koordinaatteja. Ja nämä koordinaatit ovat hyvin samankaltaisia kuin ne, jotka löydämme lukiomme geometrialuokalta, kuten alla on esitetty.
Grafiikka- ja sarjaportti on nyt valmis, kaikki mitä meidän on tehtävä, on lukea tiedot ja sijoittaa "obj" (valkoinen suorakulmio) paikkaan Arduinosta tulevien tietojen mukaan. Tämä voidaan tehdä seuraavilla riveillä, joissa obj.pos.x ohjaa objektin X-koordinaattien sijaintia (valkoinen suorakulmio).
t = int (ArduinoSerial.readline ()) #lue sarjatiedot ja tulosta ne rivinä t = t * 0,05 obj.pos.x = t
Arduinon valmisteleminen:
Python-komentosarja on valmis kuuntelemaan arvoja COM-portista ja animoimaan grafiikat vastaavasti, mutta Arduino ei ole vielä valmis. Ensin meidän on liitettävä ultraäänianturi Arduinoon seuraavan piirikaavion mukaisesti. Jos olet täysin uusi Yhdysvaltain anturille ja Arduinolle, sinun on palattava takaisin Arduino- ja ultraäänianturipohjaiseen etäisyysmittausoppaaseen.
Lataa sitten tämän sivun lopussa annettu Arduino-ohjelma. Ohjelma selitetään itse kommenttiriveillä. Tiedämme, että ultraäänianturi toimii laskemalla aika, jonka pulssi osuu esineeseen ja palaa takaisin. Tämä arvo lasketaan käyttämällä PulseIn- funktiota Arduinossa . Myöhemmin käytetty aika muunnetaan etäisyydeksi alla olevan viivan avulla.
dist = (ajastettu / 2) / 2,91;
Tässä etäisyys lasketaan millimetreinä (mm).
Työskentely:
Projektin työskentely on yksinkertaista. Käynnistä Python-ohjelma ja aseta objekti Yhdysvaltain anturin eteen alla esitetyllä tavalla:
Käynnistä nyt python-ohjelma ja sinun pitäisi pystyä havaitsemaan valkoisen suorakulmion liikkuvan paperin mukana, paperin ja anturin välinen etäisyys näkyy myös kuori-ikkunassa, kuten alla olevassa kuvassa näkyy.
Näin voimme seurata kohteen liikettä ultraäänianturin ja Pythonin avulla Arduinolla.
Toivottavasti ymmärrät projektin ja nautit sen rakentamisesta. Tämä on vain yksi hieno askel kohti pythonia, mutta voit rakentaa paljon luovempia asioita tällä. Jos sinulla on aavistustakaan mitä rakentaa tällä viestillä, ne kommenttiosioon ja käytä foorumeita tekniseen apuun. Nähdään toisen mielenkiintoisen python-projektin kanssa.