Stap 10: De Code
Download en open de Arduino IDE van http://arduino.cc/en/Main/Software
Kopieer en plak de onderstaande code:
BEGIN VAN DE CODE #include < Servo.h > //this is een bibliotheek die wordt gebruikt om te bepalen van een servo (voor meer informatie zie www.arduino.cc voor meer info) variabelen
Auteur: Shane Halse
E-mail: ShaneHalse
Datum: 02/11/2011
#define Vul 155 //the positie in graden te vullen van de trechter
#define lege 20 //the positie in graden legen van de bak
#define potPin A0 //this is de pin (moet analoge) die het midden van de potmeter is verbonden met
Servo mainServo; verklaren van de belangrijkste servo
int trigger = 0; Dit wordt gebruikt om te schakelen tussen vulling en leeg
int potIn = 0; Dit is de gegevens te lezen van pin A0 (de potPin)
int count = 1; gebruikt als een tijd-muliplier
VOID Setup
{
Basisinstellingen
mainServo.attach(3); vertellen arduino die pin van de servo is op (de witte draad van de servo)
instellen van de pin-modi
pinMode (4, OUTPUT); gebruiken voor uitvoer van 5V of hoog op de potmeter
pinMode (10, OUTPUT); gebruikt voor de led
pinMode (11, OUTPUT); gebruikt voor de led
digitalWrite (4, HIGH); pin 4 hoog ingesteld
digitalWrite (10, laag); pin 10 laag ingesteld
}
void loop
{
potIn = analogRead(potPin); Lees de positie die de potmeter is op
Als de trigger-waarde 0 invullen de hopper is
if(!trigger)
{
mainServo.write (Vul); //move servo om positie te vullen
Dit wordt gebruikt om de vertraging instellen
Graaf = 171 //uncomment hierop als u wilt instellen van de maximale vertraging tot 3 uur
de vertraging hieronder is berekend op basis van potin (die kan worden 0-1024) als delayinseconds ~ = 0 - 64 seconden
voor (; graaf > = 0; graaf--)
{
voor (; potIn > 0; potIn = potIn-20)
{
Dit is om de LED flash elke 100 + potIn miliseconden
digitalWrite(11,HIGH); set leidde tot op
delay(100+potIn);
digitalWrite(11,LOW); led op uit ingesteld
delay(100+potIn);
}
}
graaf = 1;
trigger = 1; wijzigen trigger op 1 Setup leeg
digitalWrite(11,LOW); set opende
}
anders if(trigger)
{
mainServo.write(empty); instellen van de servo naar lege positie
delay(1000); vertraging terwijl servo positie ingesteld
trigger = 0; trigger op 0 instellen opvulling wijzigen
}
}
EINDE VAN CODE
Sluit de Arduino op uw computer
Klik op de knop compileren
De gecompileerde code uploaden naar de Raad van bestuur en het beginnen met werken automatisch
U kunt vervolgens monteren van de eenheid aan de muur, plaats een kom onder de eenheid en laat de pret ensue!
* OPMERKINGEN * - als u wilt dat kunt u dat een soort uw hond van knop indrukt om een traktatie in plaats van te wachten en u zal hebben zojuist de beroemde Skinner-box!