Raspberry Pi rörelse aktiverat Transparent skrikande Ghost för Halloween (5 / 6 steg)

Steg 5: kod

Jag tänker inte gå in på Detaljer om Raspbian Linux-kommandon eller skriva körbara skalskript i detta dokument. Det finns gott om information där ute om det. Tänk bara på att den sista skriften att göra den körbar med kommandot chmod a + x när du är klar-läge redigera den.

När jag utdraget den video video arkivera, var de uppkallade efter motsvarande spårnumret från Källa DVD med filnamnstillägget .mp4. På pi kör Raspbian, överfördes de extraherade och redigerade videor till en underkatalog som heter Video under standardanvändaren (användarnamn pi).

Jag skrev en enkel bash shell script som använder kommandot gpio från WiringPi bibliotek att kontinuerligt läsa GPIO pin ansluten att PIR-sensorn och läsa 4 taktila knapparna i PiFace styrelse. Körbara shell script heter scareme och ligger i hemkatalogen för användaren pi.

Anteckningar

Bibliotek och gpio verktyget stöder PiFace addon styrelsen. Du åt PiFace GPIO stiften genom att lägga 200 till pin. Skriptet använder också den Piface fyra taktil input knappar (i/o pins 200 till 203). Koden definierar input knapparna som följer:

  • 200 - manuell avtryckare
  • 201 - volym upp
  • 202 - Volym ned
  • 203 - växla video uppsättning. Knappen växlar mellan 3 olika uppsättningar av videoklipp som kan användas för effekt (inte skrämmande, skrämmande och extra lång)

I skriptet ställs taktila knapparna inledningsvis in att använda styrelsens inbyggda pull-up motstånd. Därför läser indatavärdet för knappen är alltid 1 tills någon trycker på en knapp och kopplar det till 0. (Därav, inverterad logik för att läsa dessa stift).

scareme skript

#! / bin/bash
# Upptäcka rörelse på PiFace och spela skrämmande video.

# Definiera PiFace Pins
MotionPin = 207
TriggerPin = 200
VolUpPin = 201
VolDownPin = 202
ModePin = 203

Volym = 1500
Volstep = 50
CurrentState = 0
CurrentMode = 0

DoFlip = ""
# Om du behöver flip video upp och ned, avkommentera följande rad
# DoFlip = "--orientering 180"

# Tilldela numrerade videor till en av tre videolägen. Också definiera den ordning som visas i filmerna
VidMode = 0 # 0 = inte skrämmande, 1 = skrämmande, 2 = Extra lång
VidOrder [0] = "14 30 46 62"
VidOrder [1] = "12 32 44 64 16 28 48 60"
VidOrder [2] = "6 22 38 54"
PriorVid = $VidMode

# Använd piface inre pullup motstånd på taktila knappen pins
gpio -p läge $TriggerPin upp
gpio -p läge $VolUpPin upp
gpio -p läge $VolDownPin upp
gpio -p läge $ModePin upp

# Huvudprogrammet ögla
klart
medan:; göra
för jag i ${VidOrder [$VidMode]}; göra
om [$VidMode - ne $PriorVid]; sedan eko - ne "Video Set $VidMode\r"; PriorVid = $VidMode; bryta; Fi
medan:; göra
PriorState = $CurrentState
PriorVolume = $Volume
PriorMode = $CurrentMode
Låt "CurrentState = (! "gpio -p Läs $TriggerPin") | ("gpio -p Läs $MotionPin") "
Låt "volym += ((! "gpio -p Läs $VolUpPin")-(! "gpio -p Läs $VolDownPin')) * $Volstep"
Låt "CurrentMode = (! "gpio -p Läs $ModePin") "
om [$Volume - ne $PriorVolume]; sedan eko - ne "$Volume\r"; Fi
om [$CurrentMode - gt $PriorMode]; Låt "VidMode = ($VidMode + 1) % 3"; bryta; Fi
om [$CurrentState - gt $PriorState]; sedan
omxplayer -b--vol $Volume $DoFlip./Video/$i.mp4 >> / dev/null
klart
Break
Fi
gjort
gjort
gjort

Se Steg
Relaterade Ämnen

Rörelse aktiverat ghost prop

Detta är en rörelse aktiverat prop som du kan placera var som helst med ett vägguttag.Det kommer att lysa med svart ljus och PIR-sensorn med arduino utlöser reläet för att sätta ljuset på.Steg 1: Elektronisk mekanism Material som behövsArduino unoPIR...

Hemlig rörelse aktiverat ghost projektor (AKA BOO rutan)

jag hade en ledig helg och beslutade att jag skulle dra något tillsammans för Halloween i år med alla bitar och bobs jag hade liggande. Detta är vad jag kom med! Det är i grunden en enkel laser projektor vilka projekt en bild på en vägg samtidigt sän...

Flora Rainbow LED skjorta som är rörelse aktiverat

Lyser som en galax med detta blinkande LED skjorta som lyser upp när du flyttar! Denna skjorta sätter mörkret lågor med 19 lysdioder och 8 olika LED-färger!InspirationJag blev inspirerad av en annan instructable - Fiber Optic klänningen för detta pro...

Håll oönskade besökare bort med en rörelse aktiverat Sprinkler

Tror de lokala djur att din gräsmatta är deras personliga toalett? Hålla ninja mördare försöker smyga in i ditt hus? Hålla dessa oönskade besökare bort med en rörelse aktiverat sprinkleranläggning. Så fort de kliver in i din gräsmatta, en passiv infr...

Rörelse aktiverat Random Music Player

detta projekt kom att vara för alla de rätta orsakerna, leenden, skratt och dela lycka med andra. Jag känner mig välsignad att arbeta med en fantastisk familj och grupp människor som vardagliga generöst dela, gör och inspirera andra i den kreativa pr...

Rörelse aktiverat släppa spindel, låg kostnad, ingen programmering

i detta Intstuctable jag ska visa dig hur man gör en mycket enkel rörelse aktiverat spindel som droppar snabbt och startles alla som går under, sedan dras in. Jag designade detta är en billig och praktisk elektronik projekt som en nybörjare kan göra....

Snabb Tips #3 - snabb och enkel rörelse aktiverat cykel chef ljus

Min El-cykel ledde huvudet ljus inte hade arbetat sedan jag fick den. Så... vad göra vad göra...?Jag bestämde mig snarare än avfall strålkastare eftersom den ser bra ut på cykeln, tills jag kan fixa det på rätt sätt, jag var tvungen att tillfälligt t...

Rörelse aktiverat utomhusbelysning

belysning är en av de viktigaste aspekterna av ditt hem eller företag. Men att av och på hela tiden är jobbigt, för att inte nämna energin går till spillo när du, oundvikligen, glömmer att stänga av dem för natten. Det är därför rörelse aktiverat bel...

Billiga rörelse aktiverat kistan

detta är hur jag byggde en kista som har ljud, dimma, ljus och rörelse aktiverat lock. Att titta på en video ser min photobucket webbplats.Steg 1: Att bygga upp kistan jag började genom att skära en bit plywood till form och storlek på botten av kist...

Rörelse aktiverat Halloween Spider

vi kör en särskild serie av anpassade Instructables för Ace Hardware, en annonsör på Instructables. Detta är först av tre awesome projekt har vi skapat interna med delar från vår lokala Ace butik.Jag ville skapa en motion-aktiverat spindel att sätta...

Scary skrikande Ghost

skriker ghost! LÄTT!Detta är ett super enkelt hantverk och så långt jag har älskat resultaten. Min technic är är att ge det en bra päls över toppen och sidorna. Mätta ögonhålor men inte alltför tokig. Att få lim och tyg i ögon uttagen är ett trick. J...

Rörelse aktiverat Servo

detta är en grundläggande rörelse aktiverat servo som kan användas i en mängd olika projekt, och det är mycket enkel och lätt att göra. Om du använder det kreativt, kan du göra en massa saker med den. Till exempel använt jag mina för att skapa en rör...

Rörelse aktiverat katt skräp låda lukt fan

Detta är ett enkelt in för ett stinkande problem. (det fungerar bättre då det ser ut, jag bara snabbt ställa upp för att se om det fungerar)växeln motion jag använt tänds i 5 minuter men kan ställas in för 10 eller 30.Jag använde följande:1 stor nog...

Rörelse aktiverat Sprinkler DIY

Skydda trädgårdar och gårdar från vanliga djur inkräktare.Hålla dessa oönskade besökare bort med en rörelse aktiverat sprinkleranläggning. Så fort de kliver in i din gräsmatta, en passiv infraröd rörelse sensoren upptäcker inkräktare och aktiverar sp...

Rörelse aktiverat lysdioder

i denna tutorial kommer jag visa dig hur du skapar rörelse aktiverat lysdioder som kommer att utlösas av en Parallax PIR-sensor och kontrolleras av en Arduino Uno. Detta projekt kan ha praktiska tillämpningar som nattbelysning för trappor, gångbryggo...

Squirt - Arduino, rörelse aktiverat vattenkanoner

spruta är vattenkanon rörelse aktiverat genom att använda Arduino.Detta var avsedd för användning i trädgården men eftersom det är vinter vi testade det i badrummet. Det fungerar!True motion tracking är dyrt och komplicerat så detta system aktiveras...

Rörelse aktiverat inomhus Wind Chime

jag ville ha en wind chime som skulle arbeta inomhus och utlöses av rörelse. Så trådbundna jag en PIR (IR rörelsesensor) att en 2n7000 MOSFET-transistor och ett fan som består av en 5 volts motor jag räddade från en gammal dvd-enhet och en RC propell...

Påminnelse låda - rörelse aktiverat inspelade meddelande spelare

jag ville ha en enhet som jag kunde använda för att hjälpa mig komma ihåg saker eller tvinga mig att öva att komma ihåg saker. Så jag byggde denna påminnelse låda som är helt enkelt en röstinspelning modul kopplad till en PIR (passiv infraröd sensor)...

Alla hjärtans dag rörelse aktiverat LED hjärta

detta hjärta tänds när den känner av rörelse genom passiv infraröd (PIR)-sensorn. Vi kommer att använda PIR-sensorn som indata och lysdioderna som resultat.Steg 1: material•PIR motion sensor (1) •Arduino micro (1) •Red lysdioder (16) •Coat hanger(1)...