Motion Sensing Digital kamera & larm (aka Critter Cam) (8 / 11 steg)
Steg 8: Programmering din Proto-krets
Ladda ner det bifogade programmet och spara den på din Arduino programvara (om du inte redan, du behöver ladda ner den från Arduinos hemsida). Jag har grundligt kommenterad koden, så felsökning inte bör vara svårt (men låt mig veta om du har problem). Jag har bifogat både en textfil och pdf. Tänk på att du kan behöva åtgärda vissa linjer på grund av ändringar mellan min originalfilen och textfilen. Det kan exempelvis finnas kommentarer som spritt sig till nästa rad, där de inte längre kommenterade ut huvuddelen av koden.
Detta program berättar kameran för att ta bilder när rörelse detekteras. När kameran har tagit en bild, den vita led blinkar och summern ljuder. Den vita lysdioden tänds också som bilden är tagen. Test lysdioden blinkar när knapparna makt eller slutartid på kameran har pressats.
Till en början är 15 sekunder avsatt att kalibrera PIR. Aftewards, programmet är uppdelat i två rutiner, en som kör när rörelse detekteras av PIR, och den andra när ingen rörelse har upptäckts. Var och en av dessa rutiner är indelade i två rutiner. För "motion--upptäcktes" rutinen körs en subrutin om kameran var avstängd under upptäckt, och den andra går om kameran är redan på. För "no-motion-upptäckt" rutinen körs en subrutin om förslaget hade precis slutat och den andra går om ingen rörelse har upptäckts för ett tag.
Har kameran slutade pipa när du trycker på power-slutare-knapparna och manuellt (med batteriet fästas, naturligtvis)? Om ja, sedan syftar subrutiner till att övervaka kamerans aktivitet. Med dessa subrutiner förhindrar koden Arduino att trycka på power-knappen mer än en gång medan kameran är på. Om knappen var nere flera gånger medan kameran var på, skulle kameran övergång från normal fotografering läge in en image management eller läget. Eftersom det skulle vara mycket svårt att skriva ett program som håller reda på dessa olika lägen (som är helt onödiga för vår enhet att fungera), skrev jag koden för att förhindra att Arduino någonsin aktivera en av dessa andra transportsätt.
Denna kod utnyttjar också det faktum att efter 30 sekunders inaktivitet, kameran somnar.
När du har koden och krets redo, koppla in din Arduino till datorns USB-port att testa programmet. Så snart du är klar uppladdning programmet till Arduino, klicka på knappen "Serial Monitor" längst upp till höger (den har ett förstoringsglas med en prick i mitten) så att du kan övervaka den Arduino framsteg. Kolla in nästa steg att se ett exempel video, och hur du kan använda din multimetrar för att övervaka din kamera.