Beweging van de Tracker met PIRs, Arduino en een Servo (4 / 4 stap)

Stap 4: Upload programma


Hier is mijn programma. Vrij zelf verklarend. Elke pin PIR wijs ik naar een matrix en in mijn cyclus van de hoofdlus door de array controleren elke PIR voor een hoge staat. Verplaats de servo naar de overeenkomstige PIR servo positie als het gaat hoog.
Ik oorspronkelijk instellen voor 5 PIRs maar één van de kabelbomen was slecht dus eerder dan het scheuren en eraan ging ik met slechts 4 PIRs.

Het programma doet twee andere dingen. Als het een PIR is hoog en de servo is reeds op dat PIRs overeenkomt positie, niet verplaatsen.
Ook gebruik ik een andere array te volgen als de PIR is gebruikt sinds het ging hoog. Ik laat alleen het eenmaal worden gebruikt voor elke hoge staat. Als u dat niet doet krijg je verkeer tussen aangrenzende PIRs thats niet nodig toegevoegd.

Ik weer gewoon op de LED wanneer een PIR hoog, is dus ik vertellen kan door te kijken naar de Arduino als er wat activiteit in de PIRs.

#include < Servo.h >
Auteur: jim demello feb 2014 / /
Booleaanse pirStatus;
Servo servo1;
int servangle = 0; Servo hoek variabele
int pirNo [] = {3,4,5,6,7};          PIR pincodes
int pirPrevLow [] = {1,1,1,1,1};     eerder lage vlag is ingesteld op true
int pirPrevUsed [] = {0,0,0,0,0};     pir is op gebruikt voordat u gaat laag
int pirPos [] = {10,60,100,140,170}; posities voor servo (0-180)
int curPosPir = 0;
int pirPin = 3;
int ledPin = 13;

VOID Setup {}
Serial.begin(9600);
servo1.attach(9);
for (int i = 0; ik < 4; i ++) {}
pinMode (pirNo [i], INPUT);
}
pinMode (ledPin, OUTPUT);
delay(10000); kalibreren voor ongeveer 10 seconden
servo1.write(90); servo op center om te beginnen zetten
}
////////////////////////////
HOOFDLUS
//////////////////
void loop {}
for (int j = 0; j < 4; j ++) {/ / voor elke PIR
pirPin = pirNo [j];
pirStatus = digitalRead(pirPin);
Als (pirStatus == HIGH) {}
digitalWrite (ledPin, hoge);   de led visualiseert de sensoren uitvoer pin staat
if(pirPrevLow[j]) {}
Als (curPosPir! = pirPin & & pirPrevUsed [j] == 0) {/ / als hoge PIR anders is dan de huidige positie PIR dan verplaatsen naar de nieuwe positie
servo1.write(pirPos[j]);
Serial.println(j);
delay(50);
curPosPir = pirPin; houden van de huidige PIR
pirPrevUsed [j] = 1;
}
pirPrevLow [j] = 0; PIR is nu niet laag
}
}
else {}
digitalWrite (ledPin, laag);  de led visualiseert de sensoren uitvoer pin staat
pirPrevLow [j] = 1;   PIR is nu laag
pirPrevUsed [j] = 0;
}
} / / end j pirs lus aantal
} / / einde van de oneindige lus

Gerelateerde Artikelen

Hoe te programmeren van de ATtiny85 met de Arduino uno bestuur

Hoe te programmeren van de ATtiny85 met de Arduino uno bestuur

In deze tutorial zullen we een Arduino board gebruiken als een ATtiny-programmeur.Om dit te doen zullen we een Arduino UNO boord als een ISP (programmeur) en een ATtiny85 micro-controller gebruiken.We gebruiken Codebender - online Arduino IDE.Met de
Het gebruik van interrupters van de foto met je ARDUINO

Het gebruik van interrupters van de foto met je ARDUINO

Een foto-onderbreker is een apparaat dat uit een infrarood led en een foto transistor met een kloof tussen de twee van hen bestaat, wanneer iets wordt geplaatst tussen de gap die het licht wordt gesneden en de stroom door de transistor foto is vermin
Het gebruik van het bord Si4703 de Radio van de FM met RDS - Arduino tutorial Arduino Tutorial

Het gebruik van het bord Si4703 de Radio van de FM met RDS - Arduino tutorial Arduino Tutorial

Dit is een evaluatie-board voor de Silicon Laboratories Si4703 FM tuner chip. Dan wordt een eenvoudige radio van de FM, is de Si4703 ook geschikt voor het opsporen en verwerken van zowel Radio Data Service (RDS) als Radio Broadcast Data Service (RBDS
Bouwen van Laser beveiligingssysteem met atmega8 (arduino)

Bouwen van Laser beveiligingssysteem met atmega8 (arduino)

Op deze instructables, zal ik delen hoe te bouwen beveiligingssysteem met atmega8 arduino,Stap 1: Bouw een Arduino Standalone met atmega8 Check hier: http://arduino.cc/en/Main/Standaloneof u kunt elk type van arduinoStap 2: Wire de LDR, ZOEMER en led
Bedien uw computer met de Arduino en een Joystick

Bedien uw computer met de Arduino en een Joystick

deze tutorial zal je leren over potentiometers en knoppen in de interfacing met een arduino. Daarnaast leert u over sommige opdrachten waarmee dat u de cursor op uw computer met behulp van deze componenten bepalen.Opmerking: Dit werkt alleen met de A
LinkIt met Blynk te beheersen een Servo

LinkIt met Blynk te beheersen een Servo

Er zijn vele toepassingen voor servo's tegenwoordig! Er zijn nog meer toepassingen voor WiFi Servo's! Dit project zal aantonen hoe met een LinkIt een boord beheersen een Servo die met behulp van BlynkStap 1: Upload CodeAls u niet weet hoe om te uploa
Gebouw van de robotarm met 3DP +Arduino(用3DP+Arduino製作機械手臂)

Gebouw van de robotarm met 3DP +Arduino(用3DP+Arduino製作機械手臂)

Dit is een 5-as robotarm, ik maakte het met 3D Printer & Arduino.U kunt stappen hieronder om te downloaden van de bron en het maken.Voorbereiding Stuff:1.MG995 servo x 52. SONY Joystick x13. Arduino x1.Stap 1: Zie de Demo-FilmHier ziet u de Demo-Film
Maken van verstelbare stelten met geen PowerTools uit een kladje 2 x 4

Maken van verstelbare stelten met geen PowerTools uit een kladje 2 x 4

BLACK FRIDAY PUSHBACK 2014! Ik krijg op mijn zeep doos en jaarlijks moedigen mensen aan om te voorkomen dat buitensporige consumentisme door slimme, lokale en eco-vriendelijke tijdens de vakantie winkelen. of beter nog, maak iets zelf. Hier is een di
Gezicht detectie en tracking met Arduino en OpenCV

Gezicht detectie en tracking met Arduino en OpenCV

UPDATES20 februari 2013: In antwoord op een vraag van de student Hala Abuhasna wilt u de seriële .NET-klasse gebruiken, gebruiken de naamgevingsconventie "\\\.\\COMn" en n vervangen door een nummer > 9 te definiëren uw com-poort voor COM-poor
Het gebruik van een relais met je arduino de veilige manier

Het gebruik van een relais met je arduino de veilige manier

Dit instructable zal u tonen hoe te gebruiken een estafette nieuw of met je ARDUINO gebruikt een veilige en juiste manier, als u een preasymbled relais boord voor uw arduino met alle componenten op het koopt dit is niet de handleiding die u zoekt. Di
Maken van een draagbare barcodescanner met een arduino en een cuecat

Maken van een draagbare barcodescanner met een arduino en een cuecat

rond het begin van de eeuw, was er een bedrijf waarvan bedrijfsmodel opgenomen weggeven van gratis barcodescanners die wedijveren met toetsenborden.    Een relatief eenvoudig mod met deze scanners cuecat verwijderd van de codering en maakte hen gesch
Hoe om te controleren van de TV functies met behulp van de analoge ingang en Arduino

Hoe om te controleren van de TV functies met behulp van de analoge ingang en Arduino

heb je ooit wilde een goede oude knop gebruiken om uw TV volume in plaats van herhaalde knop duwen? Of het gecontroleerd door licht te maken? Wilt u uw afstandsbediening te vervangen door een ontzagwekkende arduino en laat het doen van het harde werk
Soort van smakelijk musiceren met een X-Band motiesensor

Soort van smakelijk musiceren met een X-Band motiesensor

Muziek maken met een X-Band radar, hmmm... zou dat niet leuker dan één persoon mag hebben? Het is niet zo moeilijk deze dagen, met de juiste hulpmiddelen natuurlijk. Zoals u in de afbeelding die hoort bij deze intro zien kunt, gebruiken we een bewegi
Manipit - IRONMAN JARVIS-achtige Hand Motion Tracking met geschilderde handschoenen

Manipit - IRONMAN JARVIS-achtige Hand Motion Tracking met geschilderde handschoenen

Note(May, 12, 2015) ***Als u niet kunt de video van het ingesloten bestand, kunt u het bekijken hier!********************************Heb je keek naar de film, "Iron Man"?In de film manipuleert Tony virtuele voorwerpen door zijn hand bewegingen.H