Liiketunnistimen lisääminen, Arduinon pään osuus

 

Jos raportissa tuntuu olevan hieman epäjatkuvuutta, niin se johtuu siitä, että jouduimme hankkimaan lisää Arduino-tavaraa kesken projektin. Mm. tämä liiketunnistin saapui vasta siinä vaiheessa, kun langaton puoli oli jo pitkälti valmis. Mutta asiaan.

Vinkkiä liiketunnistimemme käytöstä Arduinolle saimme täältä:

https://www.makerguides.com/hc-sr501-arduino-tutorial/

 

Liiketunnistimen kytkentä

 

Meillä oli siis käytettävissämme liiketunnistin HC-SR501 

https://www.spelektroniikka.fi/p23758-liiketunnistin-hc-sr501-pir-moduuli-arduino-sovelluksiin-jne--fi.html

Siinä oli itsessään pinnit, joten emme voineet kytkeä sitä suoraan hyppylangoilla. Samoin siinä itsessään oli fyysiset säätimet (potentiometrit) herkkyydelle ja ajastukselle. Otimme käyttöön yhden nelijohtoisen kaapelin, jossa oli liittimet molemmissa päissä. Tarvitsimme tosin vain kolme johtoa. Ohjeen kytkentä oli UNOlle, mutta logiikkahan oli sama. Kytkeä 5 V, maa ja digidatapinni.

Kytkimme virran viiteen voltin ulostuloon Arduinossa, maan maahan ja digipinnin Arduinon ykkösdigipinniin, kun se sattui olemaan digipinneistä vapaana Arduinossa . Koko hökötys näytti siis kertauksen vuoksi nyt tältä (PIR vasemmalla):

 

imaged.jpg

 

Huomatkaa että vedimme koekytkentälevylle 5 V toisen puolen plussaan, koska nyt meillä oli jo kaksi sensoria (UÄ ja PIR), jotka olivat 5 V vailla.

Liiketunnistimen tarvitseman koodin lisääminen Arduinoon 

Määrityksiin laitoimme näin:

 

imagedb.png

 

Eli digidatapinni siis se numero yksi ja meidän ledimmehän oli ennestään digidatapinnissä kaksi.

Asetuksiin laitoimme näin:

 

imagedc.png

 

Luuppiin laitoimme näin:

 

imagedd.png

Ja kuten koodista näkyy, niin laitoimme sinne jo sarjaportin määritysten lisäksi myös UDP-osuuden. Mallia oli helppo katsoa nappiosuudesta. Ja tarkkasilmäisimmät huomaavat, että olimme tässä välissä myös siistineet koodia ja nyt vastapään IP ja portti määritellään muuttujalla ainoastaan kerran määrityksissä ja luupissa käytetään muuttujia remoteIP ja remotePort.

 

 imagede.png

 

Ja vaikka määrittelimme IP:n ja portin heti aluksi, niin luupissa oli yhä mahdollista muuttaa niitä. Tämä tapahtuisi simppelisti lähettämällä mikä tahansa teksti Arduinoon UDP:llä, eli sillä jo aiemmin vb.netillä/Visual Studiolla luomallamme GUI:lla. Siitä Arduino nappaa lähettäjän IP:n ja portin ja käyttää jatkossa niitä (niin kauan kuin Arduino on virroissa, eikä sille anneta uutta koodia).

Latasimme uuden koodin Arduinoon ja nyt vastaanottopäämme näytti tältä, kun teimme liikettä ja painoimme nappia:

 

 imagedf.png

 

Pelaa hienosti!

Seuraavassa tarkempi selostus langattomasta yhteydestä, UDP:stä, koodaamisesta vb.netillä/Visual Studiolla.