Hallo zusammen,
mein Micro Servo Board http://www.pololu.com/file/0J37/ssc03a_guide.pdf zuckt wenn ich es starte. Was kann das sein?
Grüße
datatom
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Ich habe das Micro Servo Board mit dem RN-Mega2560 verbunden. Ich habe alle Anschlüsse für die Spannung belegt, wie in den jeweiligen hier anhängenden Dokus beschrieben ist. Der Strom kommt über einen Netzstecker mit 5 V. Beide Module sind seriell Verbunden, d.h. Tx vom RN-Mega2560 auf den Stecker logic-level seriell input des Servoboards. Der Servo ist am Servoboard angeschlossen. Sobald ich jetzt den Netzstecker reinstecke, dreht der Servo kurz rechts herum. Erst dann dreht er sich in die per Bascomprogramm festgelegten Richtungen. Der Servo drecht auch kurz nach rechts oder versucht es, obwohl er vorher schon seine Endstellung fürs rechtsrumdrehen erreicht hatte.
Ich hoffe die Beschreibung reichtCode:' Pololu Testprogram $regfile = "m2560def.dat" $hwstack = 82 $framesize = 68 $swstack = 68 $crystal = 16000000 'Quarzfrequenz '$baud = 19200 Config Pind.5 = Output Led Alias Portd.5 Dim Servonumber As Byte Dim Servodevice As Byte Dim Servocommand As Byte Dim Servogespeed As Byte Dim Servodata1 As Byte Config Com3 = 19200 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0 Open "com3:" For Binary As #3 'Servomodul Do ' Pololu mode Led = 1 Servodevice = 1 'Device-Number Servonumber = 7 'Servonumber Servocommand = 2 'Position Servodata1 = 90 '0 to 127 Print #3 , Chr(128) ; Chr(servodevice) ; Chr(servocommand) ; Chr(servonumber) ; Chr(servodata1) Wait 2 Led = 0 Servodevice = 1 Servonumber = 7 Servocommand = 2 Servodata1 = 70 Print #3 , Chr(128) ; Chr(servodevice) ; Chr(servocommand) ; Chr(servonumber) ; Chr(servodata1) Wait 2 Loop End
Grüße
datatom
Ich kenne mich mit Bascom nicht so gut aus aber kannst du nicht per $baud=19200 die richtige Baudrate einstellen und die Befehle per print schicken?
Läuft das Board überhaupt mit 19200 baud oder ist es im auto-detect mode?
MfG
Torrentula
MfG Torrentula
Der Befehl ist auskommentiert durch '
Das Board läuft mit 19200 baud. Ich lege es mit diesem Befehl fest:
Ob das Board im auto-detect mode läuft weiß ich nicht. Wäre aber ein Ansatz. Wenn die Baudrate zweimal kommt könnte es ja zu diesem kurzen Drehen kommen. Aber wie kann ich das überprüfen?Code:Config Com3 = 19200 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
Nein die Frage war ob das Servo-Board mit 19200 baud bzw. im auto-detect mode läuft. Mit dem Befehl, den du in Bascom schreibst legst du ja lediglich die baudrate des Microcontrollers fest, nicht jedoch des Servo boards fest!
MfG
Torrentula
MfG Torrentula
Danke Torrentula du hast langes suchen erspart
Wie er schon erwähnt hat legst du mit $baud die Bauerate für den Mikrocontroller fest. Ich hab mich mal durch die Doku des Servoboards gewühlt und das hier auf Seite 5 gefunden:
Bild hier
Das heißt sobald der "Protocol Selection Jumper" gesteckt ist (laut Bild sieht es so aus als ob er das im Auslieferungszustand ist) kann das Servomodul nur mit zwei festgelegten Baudraten arbeiten.
Du musst also deine Bauerate auf 2400 oder 9600 ändern damit es funktioniert. Das Board kann keine anderen baudraten verarbeiten und im Moment empfängt es deswegen nur Datenmüll
Du kannst den Jumper auch entfernen dann funktionieren auch höhere Baudraten. Nur dann wird das ansteuern der Servos komplizierter (siehe Seite 6 deiner Doku). Dann reicht nämlich nicht mehr nur ein Zahlenwert für die Position und die Geschwindigkeit.
Es reicht aber eigentlich vollkommen aus das Modul mit 9600 Baud anzusprechen. Du musst nur gucken ob der Jumper steckt und dann das $baud = 19200 in $baud = 9600 umändern.
Edit: Keine Ahnung wieso aber ich konnte keinen Text aus dem PDF rauskopieren. Liegt sicher an dem dummen Foxit-Reader hier auf dem Lappi. Hoffe das Bild reicht
Geändert von Kampi (31.12.2011 um 12:43 Uhr)
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Also, ich kann den Servo jetzt beliebig drehen
Aber das kurze drehen beim einstecken des Netzsteckers bleibt
Kommt aber angeblich vor und man kann nichts machen. So habe ichs im Pololu Forum erfahren: http://forum.pololu.com/viewtopic.php?f=16&t=4822
Danke und Grüße
datatom
Na solange es klappt ist doch ok
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Lesezeichen