Lynxmotion SSC32 Servocontrollerboard ansteuern
Möchte meinem Lynxmotion Hexapod ein leistungsstärkeres "Gehirn" geben, sodass ich mich dazu entschieden habe, das originale Bot Board zu entfernen und stattdessen ein Raspberry Pi zu verbauen, welches in Python programmiert werden soll. Doch leider bekomme ich die Ansteurung nicht hin. Habe versucht das Board sowohl über die Rs232 Schnittstelle der GPIO ports anzusteuern als auch über einen USB zu RS232 Converter, an dem das Board angeschlossen war.
Habe das Paket python-serial installiert, mit dem ich dachte mein Projekt umsetzten zu können. Das Testprogramm dazu sah wie folgt aus:
Code:
import serial
serialport = serial.Serial("/dev/ttyAMA0", 9600, timeout=0.5)
serialport.write("#0 P1500 # 1 P1500 T 1000 <cr>")
delay(1000)
serialport.write("#0 P1000 # 1 P1000 T 1000 <cr>")
delay(1000)
Mein RPi gab die fehlermeldung aus, dass delay nicht deklariert sei. Als ich es entfernt hatte und erneut ausführte kam keine Fehlermeldung, jedoch hat sich auch kein Servo bewegt.
Als ich dann versuchte das Board per USB anzusteuern änderte ich die Adresse zu /dev/ttyACM0 , welche entweder nicht richtig ist, oder das Board darauf auch nicht reagiert....
Hat jemand eine Idee zur Lösung meines Problems?
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
danke für deine Mühe. Habe deine Befehle mal in meinem Python Skript hinzugfügt und ausgeführt, doch es hat sich leider nichts geändert...
Ich betreibe das Board mit einem 2S Lipo, welcher über ein Spannungswandler auf 6Volt heruntergeregelt wird. Außerdem sind im ganzen Roboter HS645MG Servos von Hitec verbaut. Um dir ein grobes Bild meines Projektes zu machen, habe ich mal ein Bild von meinem Versuchsaufbau/Roboter gemacht.
Ich gehe nun endgültig davon aus, dass es nicht am Skript liegt.... Werde morgen eines meiner Raspberry Pis nehmen, neues Image drauf laden und das Skript darüber ausführen... obwohl ich mir davon nicht sehr viel verspreche, da man an der Led auf dem SSC32 sieht, dass Signale ankommen... Solltest du noch eine Idee haben, bitte immer her damit :)
Anhang 29003
Liste der Anhänge anzeigen (Anzahl: 1)
Die Schnittstelle darf auf dem Raspi nicht dauernd geöffnet und geschlossen werden. Da kommen dann beim Empfänger BITs an, die da nicht hinsollen. Ich habe mir "damals" extra deswegen ein Sendenprogramm in C geschrieben. Zusätzlich läuft ein Empfangenprogramm durch, welches die Schnittstelle offen hält.
Edit:
Ich habe die beiden Programm mal etwas "entschlackt" und angehangen. Wie man das Empfangen aufruft, ist in der Autostart.sh zu sehen.Anhang 29128
Die Rechte auf 755 nicht vergessen. Ich bin auf meinen Raspis immer root....
Zum Senden dann einfach das Programm aufrufen und das zu Sendende als Parameter übergeben.
/Pfad/sendenXXX Sende mich
Das Empfang sollte das Empfange auf der Konsole ausgeben (Nicht getestet...)