Hallo
Ich habe das RN-Control 128 Funkboard, daran habe ich ein Servoboard. Dieses ist über I2C angeschlossen. Am Servoboard habe ich ein Kontronik Jazz 55-6-18 Drehzahlsteller. Wenn ich diesen an ein normales RC Empfänger anschliesse und dann per Fernsteuerung ihn ansteuere läuft dieser. Über das Servoboard läuft er aber nicht.
Richtig angeschlossen ist alles. Über ein C-Control 2 habe ich den Drehzahlsteller schon einmal angesteuert aber über den PLM Anschluss.
Ich benutze folgenden Code:
Er ist auch richtig am servo7 Anschluss des Servoboards. Woran könnte das liegen? Brauche dringend Hilfe!Code:'################################################### 'microservoboard.bas 'für 'RoboterNetz Board RN-Control ab Version 1.1 'und das Micro Servo Board 'Aufgabe: ' Dieses Testprogramm bewegt ein Servo das am Anschluss SERVO7 ' des Micro Servo Board steckt, hin und her. ' Der Jumper am Servoboard muss gesteckt sein, da der MINI SSC MODE ' zur Ansteuerung von Servos genutzt wird 'Autor: Frank 'Weitere Beispiele und Beschreibung der Hardware 'unter http://www.Roboternetz.de oder robotikhardware.de '####################################################### $regfile = "m128def.dat" ' Bei Mega 128 " $framesize = 32 $swstack = 32 $hwstack = 32 $crystal = 16000000 'Quarzfrequenz $baud = 19200 'Baudrate für Funkmodul $baud1 = 9600 Sound Portg.2 , 400 , 450 Sound Portg.2 , 400 , 250 Sound Portg.2 , 400 , 450 Dim Servonummer As Byte Dim Servodevice As Byte Dim Servocommand As Byte Dim Servodata1 As Byte Dim Servodata2 As Byte Dim Servodrehbereich As Byte 'Erweiterter Drehbereich des Servos Servodevice = 1 'Jedes Servoboard hat eine Device-Nummer Servonummer = 7 'Servonummer 0 bis 7 Servocommand = 0 'Befehl: Setze verschiedene Parameter (siehe Doku) Servodrehbereich = 255 'Servo Drehbereich 0 bis 31 (Vorgabe 15) Servodata1 = &B01000000 Or Servodrehbereich 'Richtung, Servo Drehbereich etc. festlegen Print Chr(128) ; Chr(servodevice) ; Chr(servocommand) ; Chr(servonummer) ; Chr(servodata1) 'Hier wird die Position in Bytes angegeben, das High Bit wird im ersten Databyte (Bit0)übertragen Servodevice = 1 'Jedes Servoboard hat eine Device-Nummer Servonummer = 7 'Servonummer 0 bis 7 Servocommand = 3 'Befehl: Setze Position (0 - 256 in 2 Byte) Servodata1 = 1 'Position High (Bit0 = Bit8 der Position) Servodata2 = 254 'Position Low Bit0 bis 7 Print Chr(128) ; Chr(servodevice) ; Chr(servocommand) ; Chr(servonummer) ; Chr(servodata1) ; Chr(servodata2) End







Zitieren

Lesezeichen