System för anmälan av doft-imental (31 / 35 steg)
Steg 31: Programmera Arduino
Nu när din bostäder byggs, är det dags att ge lite liv. (aka, programmera arduino)
Koppla Arduino lite USB-porten och också den USB driva lite till en annan USB-port. Anslut USB-power lite till en av ingångarna på Arduino.
I Arduino programvara, inställd på styrelsen "Arduino Leonardo" och USB-porten till den som matchar den Arduino lite.
Programmera Arduino med följande kod:
/*
System för anmälan av Scentamental
Med små bitar
Denna exempelkod är offentlig.
*/
int cloudValue = 0;
Ger unika namn till 3 digital utgångsstift av Arduino
int scent1 = 1;
int scent2 = 5;
int scent3 = 9;
Rutinen installationsprogrammet ställer in Arduino och körs en gång
void setup() {
Initiera digital stiften som utgångsstift.
pinMode (scent1, produktionen);
pinMode (scent2, produktionen);
pinMode (scent3, produktionen);
avkommentera linjen nedan för felsökning
Serial.BEGIN(9600);
}
Rutinen loop kör om och om igen för alltid
void loop() {
Läs analog ingång från Cloudbit
cloudValue = analogRead(A0);
Konvertera analoga värde 0 till 1023 till ett tal mellan 0 och 100
cloudValue = karta (cloudValue, 0, 1023, 0, 100);
avkommentera linjen nedan för felsökning
Serial.println(cloudValue);
Värden från Cloudbit för
Om numret är 25, utlösa doft 1
om ((cloudValue > 10) & & (cloudValue < 33)) {
digitalWrite (scent1, hög);
digitalWrite (scent2, låg);
digitalWrite (scent3, låg);
}
Om talet är 50, utlösa doft 2
annars om ((cloudValue > = 33) & & (cloudValue < 66)) {
digitalWrite (scent1, låg);
digitalWrite (scent2, hög);
digitalWrite (scent3, låg);
}
Om talet är 75, utlösa doft 3
annars om ((cloudValue > = 66) & & (cloudValue < 100)) {
digitalWrite (scent1, låg);
digitalWrite (scent2, låg);
digitalWrite (scent3, hög);
}
Om värdet är 0, utlösa ingenting
annars om (cloudValue < = 10) {
digitalWrite (scent1, låg);
digitalWrite (scent2, låg);
digitalWrite (scent3, låg);
}
}