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

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:

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

Luuppiin laitoimme näin:

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.

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:

Pelaa hienosti!
Seuraavassa tarkempi selostus langattomasta yhteydestä, UDP:stä, koodaamisesta vb.netillä/Visual Studiolla.
Sivu 7 / 16