NEWS
Shell Script GPIO Pins
-
Guten Tag,
hier ein vielleicht etwas außergewöhnliches als Thema.
Thema: Step Motor mit IOBroker steuern.
So mal dirket zum Problem.
Steuern kann ich den Step-Motor natürlich mit dem IOBroker, aber da die Timings nicht so niedrig gehen, wie ich es gerne hätte.
(wechsel zwischen High - Low - High soll 1ms betragen) hatte ich nun die Idee es über ein ausgelagertes Script zu versuchen.
Dies sieht so aus:
source gpio #gpio Ausgänge scharf schalten
gpio mode 5 out #Pin 5 als Output deklarieren DIR
gpio mode 6 out #Pin 6 als Output deklarieren STEP
gpio mode 7 out #Pin 6 als Output deklarieren SLEEP
Richtung=$1 #Variable Richtung(Rechts/Links/Sleep) aus dem IOBroker
Schritte=$2 #Variable Schritte(Zahl) aus dem IOBroker
if [ "$Richtung" == "rechts" ] #If Abfrage ob Laufrichtung rechts
then
gpio write 6 1 #Schreibe Direction Pin
for((x=0;x<"$Schritte";x++)) #For Schleife mit Anzahl der Schritte
do
gpio write 5 1 #Schreibe Pin5 High
sleep 0.0005 #delay von 0.0005s = 500microseconds
gpio write 5 0 #Schreibe Pin5 auf Low
sleep 0.0005 #delay von 0.0005s = 500microseconds
done
else
fi
if [ "$Richtung" == "links" ] #If Abfrage ob Laufrichtung links
then
gpio write 6 0 #Schreibe Direction Pin
for((x=0;x<"$Schritte";x++)) #For Schleife mit Anzahl der Schritte
do
gpio write 5 1 #Schreibe Pin5 High
sleep 0.0005 #delay von 0.0005s = 500microseconds
gpio write 5 0 #Schreibe Pin5 auf Low
sleep 0.0005 #delay von 0.0005s = 500microseconds
done
else
fi
if ["$Richtung" == "stop"] #if Abfrage Richtung stop
then
gpio write 5 0 #Schreibe Pin5 auf Low
gpio write 6 0 #Schreibe Pin5 auf Low
gpio write 7 1 #Schreibe Pin7 auf High
else
fi
Nur verweigert dann der Step-Motor leider seinen Dienst.
Ich hoffe mir kann jemand helfen.
MfG
Torsten S.
-
okay irgendwas scheint mit der if abfrage falsch zu laufen wenn ich die raus nehme dann funktioniert es auf einmal.
erstelle also für jede Motor Bewegung ein Script.
mit nur den Übergabeparametern der Schritte.
Trotzdem wäre es schön zu wissen was an der if abfrage falsch ist falls sich jemand von euch auskennt.
MfG
Torsten S.