- LiTime Speicher und Akkus         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Conrad 5Euro Servo einstellungen

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    27.11.2004
    Beiträge
    64

    Conrad 5Euro Servo einstellungen

    Anzeige

    Powerstation Test
    Hi, ich hab hier nen Steckbrett mit Atmega8. Es funzt alles.
    Nur bekomme ich keine richtigen Drehungen hin die werte sind total krum.
    Hier mein Quelltext wie gesagt es funktioniert alles. Es ist der billig servo der marke Conrad für 5 Euro. Ich probiere hier schon über ne stunde rum vieleicht hat ja einer schon die lösung.

    Code:
    $regfile = "m8def.dat"
    $crystal = 4000000
    
     Config Portb = Output
    
    Enable Interrupts
    
    Config Servos = 1 , Servo1 = Portb.1 , Reload = 100
    
    Do
      Servo(1) = 4
      Waitms 2000
      Servo(1) = 18
      Waitms 2000
      Servo(1) = 29
    Loop
    Wenn die werte für schnellen linkslauf und den wert für die mittelstellung und ganz vieleicht noch den wert für schnellen rechtslauf hätte wäre ich sehr sehr dankbar wenn er sie mir sagen könnte.

    Danke

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    09.05.2004
    Ort
    Bielefeld / Paderborn
    Beiträge
    1.253

    Re: Conrad 5Euro Servo einstellungen

    Zitat Zitat von Omit
    Ich probiere hier schon über ne stunde rum vieleicht hat ja einer schon die lösung.
    eine stunde erst??

    ok, schauen wir uns den servo-befehl mal an....

    ja, und da haben wir schon den fehler, denke ich:

    Code:
    Config Servos = 1 , Servo1 = Portb.1 , Reload = 100
    mach mal aus der 100 ne 20. bei 2 Servos ne 10, usw... 20/servoanzahl. wären in deinem fall 0,2 servos!

    dann die schleife....

    die hilfedatei gibt folgendes beispiel:

    Code:
    Dim I As Byte
    Do
     For I = 0 To 100
       Servo(1) = I
       Waitms 1000
     Next
    
     For I = 200 To 0 Step -1
       Servo(1) = I
       Waitms 1000
     Next
    Loop
    End
    tja, probier die demo erstmal aus. ich vermute I ist die pulsweite, die der servo alle 'reload' millisekunden bekommt, in diesem fall also 20 (haben wir ja oben eingestellt). in was die allerdings jetzt angegeben wird.. aja, sagt die hilfe:

    • Servo(1) = 100 '1000 uS on
      Servo(2) = 200 ' 2000 uS on


    d.h. I ist die pulsweite in ms/10.
    die pulsweiten bei nem servo liegen zwischen 1000 und 2000. also ist 1500 die mittelstellung. das heißt I = 150. man kann den servo allerdings idR. noch in extremere positionen fahren, > 2000 und < 1000. einfach ausprobieren wie weit es geht.

    so, das alles beruht jetzt nicht auf meinen langjährigen erfahrungen, bin selber Bascom noob, sondern auf dem lesen der hilfedatei. also wenns total falsch ist: sorry!


    edit: ach, dein "schneller rechtslauf": ein servo hat eine gewisse stellzeit, die ist in deinem fall auch auf der conrad-seite bei der servobeschreibung angegeben. der "schnellste rechtslauf" ist also in dieser zeit möglich. ich weiss nicht, ob die jetzt von der mittelstellung ausgehen, da fragst du jetzt lieber nen rc-modellbauer oder so. auf jeden fall: wenn du es langsamer willst, musst du über zwischenschritte gehen, so ähnlich wie es auch in der schleife gemacht ist. d.h.:
    Code:
    'schneller rechtslauf:
    Servo(1)= 100 'servo ist links, pulsweite 1000 ms
    Servo(1) = 200 'servo geht nach rechts in minimaler zeit =  stellzeit
    
    'langsamer rechtslauf:
    Do
     For I = 100 To 200 step + x
       Servo(1) = I
       Waitms y
     Next 
    'wobei du über x und y noch die geschwindigkeit regeln kannst. x ist die
    'anzahl der zwischenschritte 
    '(x=1 = ca. 100 zwischenschritte, x = 100 ca. 1 zwischenschritt)
    'und y die zeit in ms, die zwischen den schritten gewartet wird
    und auch hier wieder gilt: ich leg meine hand dafür ganz bestimmt ned in natriumpersulfat!

  3. #3
    Gast
    Jo brauchste auch nicht... behalt die Hand!

    Jo danke werde mal nen bischen damit rumprobieren.

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    09.05.2004
    Ort
    Bielefeld / Paderborn
    Beiträge
    1.253
    JOJOJO! Dann berichte mal krass von deinen Erfolgen, alda!

  5. #5
    Gast
    das man bei reload 20/Servoanzahl angeben soll lese ich zum erstenmal. Stimmt das? Woher hast du das?

  6. #6
    Gast
    das steht in der Bacom Hilfedatei

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    29.10.2004
    Ort
    GRAZ
    Alter
    57
    Beiträge
    576
    Hallo

    Habe mir heute auch so ein schönes Servo gekauft (ES-05 JR)

    Habe mal so probiert:
    Code:
    '-------------Config Servo-----------------------
    Config Servos = 1 , Servo1 = Portd.0 , Reload = 10
    Config Portd = Output
    Enable Interrupts
    
    Do
    
    Servo(1) = 38
    Waitms 300
    
    Servo(1) = 150
    Waitms 300
    
    Loop
    
    
    End
    Mit 300ms zirkuliert das Servo schön von rechts nach links.
    Linker max Weg, ohne das es ansteht ist bei 38.
    Rechts bei ca. 150

    Sind eigentlich ganz toll diese Servos (und billig)
    [/quote]

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    22.04.2005
    Beiträge
    178
    @Goblin:
    Reload ist unabhängig von der Zahl der Servos und sollte immer auf 10 stehen. Steht auch so in der Hilfedatei. Der Wert 10 bedeutet, dass alle 10µs eine Interruptroutine gestartet wird und alle 20ms ein neuer Impuls beginnt, was die Standardimpulszeit für Fernsteuerservos ist. Wenn man den Wert ändert, ändern sich auch die Impulszeiten und der Servo macht, was er will. Durch die 10µS Interruptfolge können bei 1000 bis 2000 µS Impulslänge 100 Positionen angefahren werden.

    felack

  9. #9
    Gast
    wann bekommt der fragesteller mal ein korrekte antwort für die servo.
    es hagelt hier nur von gegenteiligen äusserungen.
    ich zweifle bald an die fachliche kompetenz.

    "das man bei reload 20/Servoanzahl angeben soll lese ich zum erstenmal. Stimmt das? Woher hast du das?"

    in der bascomhilfe steht das schwarz auf weiss.
    lesen sollte man die hilfe allemal.

  10. #10
    Gast
    ich habe reload auch mit 5 ausprobiert und kam dann auf ca 180 stellungswerte beim conradservo 5 euro. bei ca 195 kam der servo ins schleudern weil die zeiten vom Bascom nicht mehr eingehalten werden konnten. in fastavr-basic und winavr-c habe ich ca 360 stellungswerte erreicht ohne das das servo schleuderte.
    mfg psf

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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

LiTime Speicher und Akkus