- Labornetzteil AliExpress         
Ergebnis 1 bis 4 von 4

Thema: Servo funktioniert nicht.

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    20.01.2008
    Beiträge
    40

    Servo funktioniert nicht.

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo,

    bei dem RNBFRA-Board mit ATMEGA32 von Robotikhardware.de funktioniert der Servotreiber nicht auf anhieb. Ich muss dazu sagen, dass ich auch noch nicht so viel Ahnung von AVR habe. Vielleicht ist es ja nur irgend eine kleinligkeit. Das Board habe ich mit den Beispielprogrammen getestet - lauflicht und getriebemotoren funktionieren einwandfrei. Bei dem folgenden Servotreiber (rns1) geht allerdings gar nichts. auf die richtige Steckerrichtung habe ich geachtet - das servo (auch von robotikhardware) zuckt beim einschalten des boards schon mal. Als Progger nutze ich den USB-ISP-Programmer.
    schon mal vielen dank für eure Antworten.
    gruss euer sascha.

    Code:
    $regfile = "m32def.dat"
    
    
    Declare Sub Rnb_servo(byval Servonummer As Byte , Byval Position As Byte)
    Declare Sub Rnb_servob(byval Servonummer As Byte , Byval Position As Byte)
    
    
    Dim I As Byte
    Dim Pos As Byte
    
    $crystal = 1000000                                          'Quarzfrequenz
    $baud = 9600
    
    
    Wiederhole:
    
       For I = 1 To 255
          Call Rnb_servo(1 , I)
          Waitms 50
       Next I
    
       For I = 1 To 4
          Pos = 1
          Call Rnb_servo(1 , Pos)
          Wait 2                                                'Warte 2 Sekundne
          Pos = 255
          Call Rnb_servo(1 , Pos)
          Wait 2
       Next I
    
    Goto Wiederhole
    
    
    Sub Rnb_servo(byval Servonummer As Byte , Byval Position As Byte)
       Print "#s" ; Chr(servonummer) ; Chr(position)
    End Sub
    
    Sub Rnb_servob(byval Servonummer As Byte , Byval Position As Byte)
       Open "comd.7:9600,8,n,1" For Output As #2
       Print #2 , "#s" ; Chr(servonummer) ; Chr(position)
       Close #2
    End Sub
    
    End

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    20.01.2008
    Beiträge
    40
    Hallo,
    habe nun versucht die Hex-Datei (Servobetriebssystem rns1) auf den Co-Controller mittels ISP2 zu laden. Dabei kam die Fehlermeldung "Error while programming". Dann leuchtete die Rote Prog-LED des ISP-Programmers kontinuierlich und das Board gab auch nichts mehr von sich. Eine erneute programmierung schlug fehl. Auch der versuch das Beispiel-Programm für den Co-Controller drauf zu laden schlug fehl. Habe dann alles Ausgeschaltet und den Progger auch vom PC herausgezogen. Danach konnte ich wenigstens das Bsp-prog für den Co-controller wieder draufladen und ausführen. zwei weitere versuche mit den unterschiedlichen brücken, die im PDF beschrieben waren, haben das gleiche verursacht. (Fehlermeld. "Error while programming" + dauerhaft leuchtende rote led am progger etc.) Dann habe ich versucht eine andere Servo-software für den Co-controller hochzuladen (rnsi2c) https://www.roboternetz.de/phpBB2/ze...ghlight=rnsi2c, das hier im forum als alternative zum rns1-treiber dargestellt wurde - da gab es aber auch den gleichen fehler. Da ich einen Vista-rechner benutze habe ich vorsichtshalber das gleiche auch auf einem XP-Rechner probiert - doch da kam auch der gleiche fehler. Weiss jemand, warum ich das co-controller-test-pgm erfolgreich hochladen kann aber das servo-betriebssystem nicht? Bin mit meinen versuchen echt am ende und würde mich freuen, wenn jemand mir helfen könnte.
    gruß
    sascha

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    20.01.2008
    Beiträge
    40
    Hallo,
    das Problem ist mit den Fusebit-Einstellungen (Code: 101111-... bei meinem Prozessor ATMEGA32 in Bascom - aktuelle Version) gelöst. Servo Funktioniert - allerdings nur mit einem Drehwinkel von 90 Grad. Womit man laut Franks Aussage in einem anderen Beitrag wohl leben muss - wg. der Gefahr, dass das Servo sonst überdreht und sich somit beschädigen könnte. Gibt es evtl. eine Treiberversion, die etwas Hardwarenaher ist und mehr als 1-255 als Positionsangabe unterstützt aber dennoch so einfach zu Programmieren bzw. Einzubinden ist? Auch wenn man sich dabei das Servo zerschiessen könnte... - Ist mir das Risiko wert. [-X
    Vielen Dank und viele Grüße
    Euer Sascha.

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Dirk
    Registriert seit
    30.04.2004
    Ort
    NRW
    Beiträge
    3.803
    Hallo sascha,

    die beste Servo-Treiber-Version für den Co der RNBFRA war m.E. die I2C-Version (ohne Steckbrücken und ähnliches) von PicNick hier:
    https://www.roboternetz.de/phpBB2/viewtopic.php?t=21164

    Gruß Dirk

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress