Ik heb eerlijk gezegd zo goed als geen python ervaring, enkel wat PHP/MySQL ervaring maar dat vind ik totaal niet op python lijken.
Toch heb ik door wat googlen en proberen het ongeveer werkend gekregen wat ik wilde.
Situatie:
Ik heb een Raspberry Pi, hier een Servo op aangesloten.
De Servo moet kwartslag draaien en vervolgens weer terugdraaien, op het moment dat 2 GPIO pins de verbinding met elkaar verliest.
Dat werkt, maar de script sluit zich ook automatisch weer af. Wat ik eigenlijk wil is dat de script constant draait. Dus wanneer de verbinding tussen de 2 GPIO pins de servo draait en vervolgens weer opnieuw 'luisterd' op een volgende verbreking.
Ben ik een beetje duidelijk?
Toch heb ik door wat googlen en proberen het ongeveer werkend gekregen wat ik wilde.
Situatie:
Ik heb een Raspberry Pi, hier een Servo op aangesloten.
De Servo moet kwartslag draaien en vervolgens weer terugdraaien, op het moment dat 2 GPIO pins de verbinding met elkaar verliest.
Dat werkt, maar de script sluit zich ook automatisch weer af. Wat ik eigenlijk wil is dat de script constant draait. Dus wanneer de verbinding tussen de 2 GPIO pins de servo draait en vervolgens weer opnieuw 'luisterd' op een volgende verbreking.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| import RPi.GPIO as GPIO
import time
GPIO.setup(23, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(7,GPIO.OUT)
p = GPIO.PWM(7,50)
p.start(7.5)
print "De kabels moeten op dit moment elkaar aanraken, dus in contact zijn\n"
print "Zodra de verbinding wordt verbroken zal de Servo draaien en weer terugdraaien"
try:
GPIO.wait_for_edge(23, GPIO.RISING)
print "\nVerbinding verbroken"
print "Nu moet de Servo draaien."
p.ChangeDutyCycle(2.5)
time.sleep(1)
p.ChangeDutyCycle(7.5)
time.sleep(1)
except KeyboardInterrupt:
GPIO.cleanup()
GPIO.cleanup() |
Ben ik een beetje duidelijk?
EU DNS: 86.54.11.100