Interaktiva Magic Mirror med Candy Dispenser (4 / 6 steg)

Steg 4: Arduino



The Arduino används följande skiss. Titta på kommentarer för pin-anslutningar.

> mirrormirror.ino

#include
#include

Servo myservo; Ny instans av Servo.h

int servoPin = 7. Servo används för att rotera CD
int pingPin = 4; Ping pin
int dtrPin = 3; DTR linje för C17A - DB9 stift 4
int rtsPin = 2; RTS linje för C17A - DB9 stift 7

int buttonState = 0; Initiera knappläge till låg
int bitDelay = 1; mS fördröjning mellan bitar (1 mS OK)
int counter = 0; räknare som används för att ändra/toogle LCD-meddelande

röding kod [32] = "";
booleska isEngaged = false;
int isitreal = 0;

void setup() {
myservo.attach(servoPin);
Serial.BEGIN(9600);
X10.init (rtsPin, dtrPin, bitDelay); Initiera X10 C17A
myservo.write(0);
dropCandy();
}

void loop() {
lång varaktighet, cm;
pinMode (pingPin, produktionen);
digitalWrite (pingPin, låg);
delayMicroseconds(2);
digitalWrite (pingPin, hög);
delayMicroseconds(5);
digitalWrite (pingPin, låg);
pinMode (pingPin, ingång);
längd = pulseIn (pingPin, hög);
cm = microsecondsToCentimeters(duration);

om (cm < 120) {
isitreal ++;
om (isitreal = 2) {
Serial.Print("A");
fördröjning (8 * 1000);
dropCandy();
fördröjning (15 * 1000);
isitreal = 0;
}
} else om (cm > 120 & & cm < 200) {
X10.sendCmd (hcA, 2, cmdOff);
}

Lyssna om datorn skickar signal till droppa godis.
om (Serial.available()) {
char c = (char)Serial.read();
om (c == '1') {
dropCandy();
}
}

Delay(100);
}

void dropCandy() {
Slå på X10 ljus och dimma
X10.sendCmd (hcA, 1, cmdOn);
X10.sendCmd (hcA, 3, cmdOn);
myservo.write(180);
Delay(500);
myservo.write(0);
Vänta 30 sekunder innan nästa godis

Slå på X10 ljus och dimma
X10.sendCmd (hcA, 1, cmdOff);
fördröjning (10 * 1000);
X10.sendCmd (hcA, 3, cmdOff);

}

lång microsecondsToCentimeters(long microseconds)
{
återvända mikrosekunder / 29 / 2;
}

Den följande Applescript hand tar om Arduino-USB-seriell anslutning. Observera att jag använt Xports för att ansluta Applescript till seriell port.

inställd zonea {"Vem är du", "Jag gillar din kostym", "Snurra runt för mig", "Vem är den skönaste av dem alla, du av kursen.", "vad är det magiska ordet?", "göra en dans för mig","Trick or treat, luktar mina fötter"}
inställd zoneb {"Happy Halloween!", "Hasta la vista baby", "Så long, farewell, auf Wiedersehen, god natt", "Tack för besöket, happy halloween"}

Set on till false
inställd use_port "/ dev/cu.usbmodem1d11"
Upprepa tills (get serialport lista) innehåller use_port
dröjsmål 3
avsluta repeat
om (få serialport lista) innehåller use_port sedan
Set on True
Ange myPort till serialport öppna use_port bps pris 9600 data bitar 8 paritet 0 stopp bitar 1 handslag 0
dröjsmål 1
om myPort är lika med -1 sedan
Visa dialogrutan "kunde inte öppna porten"
annat
Upprepa on är sant
Ange (shell script "katt" / full/path/of/file/state.txt "")
om staten är lika med "1" sedan
ange x till serialport läsa myPort
om x inte motsvarar "" sedan
om x är lika med "A" sedan
Ange randomPhraseA till vissa objekt av zonea
säga randomPhraseA
shell script ("sudo -u [användarnamn] arch - i386 osascript /full/path/of/file/animate.scpt & >/dev/null &")
dröjsmål 10
Ange randomPhraseB till vissa objekt av zoneb
säga randomPhraseB
slut om
slut om
annat
serialport skriva "1" till myPort
dröjsmål 5
shell script ("sudo -u [användarnamn] echo 1 > /full/path/of/file/state.txt")
shell script ("sudo -u [användarnamn] arch - i386 osascript /full/path/of/file/animate.scpt & >/dev/null &")
slut om
avsluta repeat
slut om
serialport nära myPort
slut om

Jag använde följande skript nästan trycka ner/lef/höger piltangenterna. Detta gjorde spegel spegel marionett flytta huvudet.

> animate.scpt

tala om för programmet "systemhändelser"
nyckel ner (ASCII-tecken 31)
dröjsmål 1
nyckel upp (ASCII karaktär 31)

nyckel ner (ASCII-tecken 28)
dröjsmål 1
nyckel upp (ASCII karaktär 28)

nyckel ner (ASCII-tecken 29)
dröjsmål 1
nyckel upp (ASCII-tecken 29)

tala om slutet

Se Steg
Relaterade Ämnen

Magic Mirror Mini för Android

några år sedan, jag gjorde ett projekt kallat DIY Magic Mirror. Det är en interaktiv talande magiska spegel som spelar olika video svar från en PC som svar på olika sensoringångar från en Arduino. Jag hade velat göra en miniversion av projektet för e...

Magic Mirror kostym

detta är min 2011 Halloween kostym. Det är en fullt fungerande magiska spegel kostym. Det finns gott om resurser ute för att skapa magiska speglar, men jag ville ta saker ett steg längre. Allt som jag hittade var för en anläggning och jag ville hitta...

Hur man gör en Magic Mirror

I detta projekt ska jag visa dig visar hur jag gjorde en Magic Mirror som datum, tid, några nyheter och en liten fras längst ner. Du kommer att använda en Raspberry Pi, en datorskärm och en webbsida för att göra det ser ut som du har "en smart spegel...

PEZbot Instructables Robot candy dispenser

här är hur man förvandlas en söt Easter Bunny PEZ godis dispenser till en cool Easter Bunny PEZbot Instructables Robot candy dispenser.Passar i din skjorta ficka? Kolla!Ganska billigt att göra? Kolla!Snabba nog att glida in i tävlingen innan det slut...

DIY Magic Mirror och Photobooth - Arduino Powered

en monterade kit för detta projekt är nu tillgänglig frånSeeedstudio.comMer info om detta projekt på http://diymagicmirror.com Programvaran för detta projekt är öppen källkodVem är den skönaste av dem alla. Gör din egen Magic Mirror och reda. Magic M...

En Magic telefonen med kreativa sätt att anmälan

Eftersom detta är en telefon tävling ber om kreativa telefon idéer, jag bara lägger fram en telefon som jag gjorde år sedan.Jag är förvånad över att jag tog dessa bilder tillbaka då, måste tänka om det blir en telefon tävling från Seeed (jag gjorde d...

Dalek interaktiva väggbonad med Chibitronics

Detta är en instructable för Wholigans (fans av brittiska sci-fi showen, Dr som) som vill piffa upp sitt inre med en smart och lustiga väggbonad. Listan över material är mycket enkel och tillgänglig. De är som följer...Skrivare (färgad föredras)Dator...

Interaktiva Ambient Sensor med Intel Edison & Grove Starter Kit Plus

Hej jag har sett en hel del Instructables här men jag vill göra ett projekt där du kan se användningen av olika sensorer, knappar, buzzers, lysdioder och lcd tillsammans! Vad vi kommer att inse är en interaktiv SENSOR för omgivande där du kan välja v...

Makey Makey interaktiv berättelse med Scratch!

Instruktioner om hur man gör en interaktiv berättelse på början med hjälp av Makey Makey och framför allt din fantasi!Steg 1: Samla alla de leveranser som behövs.Leveranser behövs inkluderar:Makey Makey KitDator (antingen en bärbar eller stationär fu...

Magic Mirror halsband

Steg 1: folie De viktigaste ingredienserna (?) för detta är en mini cameo ram, som du kan köpa från amazon eller ett hantverk butik, och kök folie.Fastställa folien över ram och tryck med fingrarna för att göra ett veck där kanten om bilden lite, sed...

Interaktiva Halloween mirror

vi har gjort en interaktiv Halloween spegel.Det är en computerprogram med ett ansikte erkännande modul. Det använda en webbkamera för att ta en live video och sätta roliga Halloween masker i ansiktet på skärmen.Steg 1: Du behöver bara ett par saker f...

4 x 4 x 4 interaktiva LED-cube med Arduino

för att förklara min 4 x 4 x 4 interaktiva LED-cube publicerade förut, lite mer klart, jag ska försöka att göra mitt första steg för steg instructable.Denna 4 x 4 x 4 kub är interaktiv med fyra hörnet lysdioder både som lysdioder och sensorer som rea...

Interaktiva porträtt med Lilypad Mp3

detta projekt utforskar anslutningen mellan porträtt och interaktiv teknik. Det använder en mp3 Lilypad koppar tejp, neodymiummagneter, plexiglas, velum, liten kartong, akrylfärg, en mp3-fil på ett mini SD-kort, ledande tråd, alligator clips, två små...

Candy Dispenser Bot

Tetrix MAX robot som levererar godisSteg 1: ChassidelarSteg 2: Chassi sub församlingSteg 3: Monterade chassi Direct drive, Hej clearance chassi med omni hjul att tillåta exakt leverans av godisSteg 4: Boom och elektronik Steg 5: Inriktade arm monteri...

Interaktiva E-kort med hjälp av Makey Makey och Scratch!

Göra en interaktiv E-kort som du kan ändra om och om igen och skicka till familj och vänner :) Följ dessa steg för att få igång beslutsfattare!Steg 1: Samla material Saker du behöver inkludera:En ruta om den storlek som visas på bilden, jag använde e...

Skapa interaktiva elektroniska instrument med MaxMSP

Detta Instructable är del 3 i ett Intro till MaxMSP serien jag har just avslutat undervisning på Kvinnors ljud uppdrag i San Francisco. Del 1 är en introduktion till MaxMSP och MIDI, del 2 är mellanliggande Max och ljud och detta Instructable handlar...

Ritning med Candy Melts

detta är en bra teknik för att göra intrikata choklad godis bitar som jag upptäckte av en slump år sedan. Det är förvånansvärt enkelt men kan vara tidskrävande om du är ny på det. Det är ganska mycket precis som spårning/färg men med smält choklad. J...

Lätt arbete bänk arrangör med wire dispenser

jag har en liten arbetsbänk i mitt rum att arbeta med elektronik. Eftersom den är liten är det alltid proppfull (se BFEORE bild...) och jag slutar arbeta på tabellen office. Jag tog några träavfall som jag hade liggande och byggt det arbetsbänk. Det...

Fyll Yoda med individuellt dispensable, oumbärlig råd

Yoda. Han är den sista Jedi salvia och hundratals år gamla. Mycket råd han ger. Men från varifrån kommer råd?Det gäller i färdigförpackade råd förpackningar, naturligtvis!Korrekt underhåll av din Yoda inkluderar fylla honom med de råd som du så despe...