- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 33

Thema: Digital Servo HS-5645MG läuft nicht mit Pulseout

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.715
    Blog-Einträge
    133
    Hallo,
    welches Signal genau erwartest Du an Pinc.1 ? zB Frequenz 50Hz mit high Pulsen von 1,5ms?
    und was für ein Signal soll daraus werden? Hab leider keine Erfahrung mit Fernsteuerungen und verstehe das Skalieren nicht.

    Falls die Stromanschlüsse des Servos auf das Steckbrett gesteckt sind, runter damit und für eine stabile, für hohe Ströme geeignete Verbindung sorgen.

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    Am PinC.1 steht das PWM Signal aus dem 2,4GHz Empfänger an. Das wurde im Display mit neutral = 139 angezeigt. Das Problem dabei ist das ich nicht weiß, welche freuquenz dort wirklich raus kommt. Aber ich vermute das es 50Hz zu 1,5ms Pulse sind. Das Skalieren dachte ich mir so das der Servo mit der "139" direkt als Puls bei 4MHz nichts anfangen kann bzw dann versucht über Mindestanschlag noch weiter runter zu fahren.

    Die Neutralstellung des (analogen) Servos liegt bei 1600 (139 * 11,511 =~ 1600).

    Ja, Verbindungen sind noch gesteckt.

    EDIT:
    Code:
    $regfile = "m8adef.dat"
    $crystal = 4000000
    
    '$sim
    '$baud = 19200
    
    $hwstack = 40
    $swstack = 16
    $framesize = 32
    
     Ddrb.0 = 1
    Portb.0 = 0
    
    Portb.0 = 1                                                 'system run
    '(
    Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.4 , Db6 = Portd.3 , Db7 = Portd.2 , E = Portd.6 , Rs = Portd.7
    Waitms 100
    Config Lcd = 20 * 4
    Waitms 10
    ')
    Dim Rc_1 As Byte
    Dim F As Single
    Dim F1 As Word
    
    'Cls
    'Cursor Off
    
    Do
    '(
       Pulsein Rc_1 , Pinc , 1 , 1
    
    
       'Locate 1 , 1
       'Lcd "Servo1 = " ; Rc_1
    
          F = Rc_1 * 11.511
          F1 = F
    
       'Locate 2 , 1
       'Lcd "Servo1 = " ; F1
    ')
    
       Pulseout Portb , 7 , 1600
       Waitms 4
    
    Loop
    
    End
    Leider bringt das auscoden von Pulsein auch nichts... der bewegt sich einfach nicht auf neutral "1600"
    Geändert von HeXPloreR (21.10.2012 um 10:05 Uhr)

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.715
    Blog-Einträge
    133
    Hi, für Pulseout muß laut Bascom Hilfe der Pin vorher als Output konfiguriert werde. Das kann ich für Portb.7 nicht erkennen?

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Zitat Zitat von Searcher Beitrag anzeigen
    Das kann ich für Portb.7 nicht erkennen?
    Sehr gut

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Das HS-5645MG haben als Kern einen ATmega8 und der kann auf Spannungseinbrüche zickig reagieren.
    Auch bist Du jetzt bei 177Hz, wähl' mal die Widerholrate mit 50Hz.

  6. #6
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    @Searcher:
    Hmm, als Output konfiguriert hatte ich bis jetzt nicht weil, da dachte ich der Pulseout Befehl ändert den Pin selbständig...da die analogen Servos doch mit dem Programm so laufen.

    @MagicWSmoke:
    Wie errechnest Du die Wiederholrate?
    Ich probiere jetzt nochmal ein wait von 500µs.

    EDIT: keine Änderung des Problems bei DDRB.7 = 1

    Aber ich habe die Dioden auch noch nicht fertig...
    Geändert von HeXPloreR (21.10.2012 um 10:41 Uhr)

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Zitat Zitat von HeXPloreR Beitrag anzeigen
    Wie errechnest Du die Wiederholrate?
    Die Wiederholrate ist bei Deinem vereinfachten Code: 1/(Pulseoutzeit + Wartezeit)
    Tatsächlich hab' ich's zur Prüfung simuliert, Haltepunkt auf Pulseout, verbrauchte Prozessortakte geteilt durch Hauptclock ergibt Wiederholrate.
    Damit Du auf die üblichen ~50Hz kommst, solltest Du Waitms 18 verwenden.

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.715
    Blog-Einträge
    133
    Zitat Zitat von HeXPloreR Beitrag anzeigen
    Hmm, als Output konfiguriert hatte ich bis jetzt nicht weil, da dachte ich der Pulseout Befehl ändert den Pin selbständig...da die analogen Servos doch mit dem Programm so laufen.
    Ja, hatte ich auch dran gedacht. Eine Erklärung wg. der analogen Servos könnte sein, daß der Pulsout trotzdem das PORTB Register toggelt, obwohl das über DDRB ein Input ist. Dann würde eine 1 in PORTB den internen Pullup einschalten und den Pin so nach high ziehen, daß das ausreicht.

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  9. #9
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    Leider keine Änderung mit den Dioden. Davon habe ich nun 18(!!)St in Reihe gelötet. Damit habe ich von 11.5V auf ca 6,6V reduziert
    Aber auch das kann es nicht sein.

    PortB.7 ist ein Output und PortB.7 = 0 - schreibe ich dort eine 1 für High ein (PullUp schaltet der ja nicht mehr bei Output), fährt der Servo immer nur auf (über) minium gegen den Anschlag Vermutlich weil der Servo dann quasi 100% PWM "denkt"

    Ich probiere zwischendurch immer mal wieder den digitalen Servo am Empfänger ganz normal mit Fernbedienung aus, um gegen zu prüfen ob ich der schon "abgeraucht" ist.
    Nicht das ich das provozieren wollte, aber nur damit ich hier nicht alles durchteste und dann ist der Servo nachher schon seit drei stunden schitich.

    Also wie gesagt das Programm funktioniert so, sogar mit sehr viel kürzerem wait - für analoge Servos. Benutze Bascom 2.0.7.5 nicht das es daran liegt.

    Ich danke euch erstmal für die Hilfe.
    Ich weiß nicht weiter.

  10. #10
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Ich weiß nicht weiter.
    Zeig doch bitte noch mal das aktuelle Programm.
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Digital Servo von Conrad, VSD 1 Problem
    Von Movie85 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 6
    Letzter Beitrag: 01.05.2009, 13:20
  2. [läuft+Code] Servotest an ATtiny13 läuft nicht
    Von oberallgeier im Forum Motoren
    Antworten: 4
    Letzter Beitrag: 18.10.2007, 16:49
  3. HITEC Digital-Servo Protokoll HFP-10
    Von ManfredKoehler im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 30.05.2007, 12:07
  4. Antworten: 3
    Letzter Beitrag: 15.08.2005, 16:41
  5. Programmierung digital Servo
    Von sevenofnine im Forum Motoren
    Antworten: 4
    Letzter Beitrag: 24.02.2005, 16:49

Stichworte

Berechtigungen

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

LiFePO4 Speicher Test