Raspberry Pi tuppen klockan (4 / 5 steg)
Steg 4: Få det att fungera - python-skript och Cron jobb på linux.
Anslut uttagen motor genom PN2222 transistorn som visas i det första diagrammet.
GPIO 7 (eller beroende på vilken GPIO du valde) är ansluten till basen av transistorn.
När GPIO är hög transistor basen går hög och transistorn låter det aktuella passet från
Uppsamlare till sändaren. Kort sagt fungerar det som en strömbrytare, en digital växel.
Nedan är python skript jag använde:
======================kozhi.py==========================
importera RPi.GPIO som GPIO ## importera GPIO bibliotek
Importera tid
underprocess importera samtal
motorControlGpio = 7
GPIO.setmode (GPIO. STYRELSEN) ## använder styrelsen pin numrering
GPIO.setup (motorControlGpio, GPIO. OUT) ## Setup GPIO stift 7 till ut
def runMotor(dutyCycle,durationInSec):
levelZeroWaitS =(100-dutyCycle) *.0001
levelHighWaitS = dutyCycle*.0001
t_end = time.time() + durationInSec
medan time.time() < t_end:
GPIO.output(motorControlGpio,True)
Time.Sleep(levelHighWaitS)
om levelZeroWaitS > 0:
GPIO.output(motorControlGpio,False)
Time.Sleep(levelZeroWaitS)
GPIO.output(motorControlGpio,False)
runMotor(100,0.5) ## Låt tupp med lock och flytta i 5 sekunder på full effekt
runMotor(80,.5) ## nu ytterligare 5 sekunder, lite långsammare
Ring (["mpg321", "/ home/pi/ajplay/RoosterSoundBible.mp3"]) ## spela RoosterSoundBible.mp3 filen med programmet mgp321
runMotor(100,1) ## efter högt, animera tuppen igen.
GPIO.cleanup()
Exit()
===============================================
Detta skript kommer att animera tupp och spela högt...
Skapa ett cron-jobb, så att skriptet tupp utlöser varje timme.
Ett cron-jobb är en aktivitet som regelbundet kör i ett Linux-system.
Först och främst "cron" bör köras på din Raspberry pi. Om det inte körs användning:
/sbin/service crond start
Du kan redigera crontab arkivera och schdule skript ska köras varje 1 timme.
crontab -e kommer att öppna denna fil för redigering.
Jag har skapat ett skalskript för ringer en klocka klocka ljud. En gång på! Klockan och två gånger vid 2-tiden och så vidare.
Också en enda klocka varje halvtimme.
Vänligen be om tillstånd från din familj / room mate
Här är scriptet:
===ringbell.sh===
ECHO $(date)
numOfBells = 1
om [$1 = "1"]; sedan
numOfBells = 1
annat
timeHrs = $(datum + % jag)
numOfBells = $timeHrs
Fi
ECHO $numOfBells
mpg321 -l $numOfBells /home/pi/ajplay/Clock_Strikes_One.mp3
sudo python /home/pi/ajplay/kozhi.py
=================
I slutet av skriften kallar vår första python skript kozhi.py
Min crontab poster ser ut så här:
30 **** /home/pi/ajplay/ringbell.sh 1 > /home/pi/ajplay/ringbell.log
0 **** /home/pi/ajplay/ringbell.sh 2 > /home/pi/ajplay/ringbell.log
Den första raden ringar en enda klocka varje halvtimme.
Det finns en mycket trevlig artikel här:
https://www.raspberrypi.org/documentation/Linux/US...
Där fick jag den audio arkivera Clock_Strikes_One.mp3 och RoosterSoundBible.mp3 från?
Det finns många webbplatser som du kan söka för att ladda ner ljudfiler. Kontrollera att du inte använder någon kopia rättas media.