Neu hier und eine Frage zur Servoansteuerung

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • ok, bei diesem Servo sind 2 Ampere auch schon knapp bemessen.
      Deine 4 AA Batterien werden auch nicht wesentlich mehr schaffen.

      Die Bezeichnung 2µS / 1520µS / 330Hz beziehen sich auf
      2µS Totzeit, also um diesen Wert muss sich dein Puls ändern, damit sich was bewegt.
      1520µS Mittelstellung
      330Hz (maximale) Pulsfrequenz
      vergleichbare Digitalservos haben in der Beschreibung 50-330Hz

      Mein Programmbeispiel oben macht etwa 87 Hz, sollte passen.

      Achso, auch gerade noch gelesen, Digitalservos brauchen etwa 4x mehr Strom wie analoge.
    • Hallo Forum,
      hier das Programm, mit dem ich gestern probiert habe:
      ******************************************************************************

      $regfile = "m8def.dat"
      $crystal = 8000000
      $swstack = 32
      $hwstack = 32
      $framesize = 40
      Config PortC = Output
      Enable Interrupts
      Do
      portC.0 = 1
      waitus 1000
      portC.0 = 0
      waitus 19000
      Loop
      end
      *********************************************************************************
      Mal sehen, vielleicht hänge ich morgen mal den 6 V Bleiakku von meinem Oldtimermotorrad an den Servo. Ich habe nämlich keine stabilisierte Laborspannungsquelle. Ich musste ja schon bei der Frage nach dem Oszi schmunzeln. Ich setze hier mal eine Abbildung von meiner Experimentierausrüstung rein. Nur, damit Ihr Euch schmunzelnd daran erinnern könnt, mit wie wenig man anfangen kann... ;) Froh zu sein bedarf es wenig! :)
      20210116_232805.jpg

      Gruß, Stefan

      The post was edited 1 time, last by froschkoenig ().

    • froschkoenig wrote:



      Mal sehen, vielleicht hänge ich morgen mal den 6 V Bleiakku von meinem Oldtimermotorrad an den Servo.
      Bitte mit einer kleinen Schmelzsicherung ca. 2A absichern.
      Ein zufälliger Kurzschluss hinterlässt sonst unangenehme Brandschäden.
      Vielleicht noch einTip als Übergangslösung: viele Steckernetzteile für Geräte des täglichen Gebrauchs liefern über ihren USB-Anschluss [Pin 1 und 4] die benötigten 5V.

      Gruß Rudi
      Vielleicht fällt mir noch etwas ein...
    • stefanhamburg wrote:

      Das sieht doch ganz ordentlich aus.
      Hast Du bei jedem IC auch einen Abblockkondensator (100nF) nahe am IC zwischen Vcc und Gnd?
      Hallo Hamburgstefan (östlich oder westlich der Alster?) :) ,

      das habe ich mal versuchsweise gemacht und keinen Unterschied festgestellt. Dann habe ich das weggelassen und vermutet, dass das bei Batterien als Spannungsquelle nicht erforderlich ist.
      So ähnlich war das auch mit den rechtsseitigen Anschlüssen für Vcc und Gnd: Die Programme funktionierten auch ohne - da habe ich es weggelassen. Klar, ich hätte hier mal nachfragen können, aber ich will Euch auch nicht mit jedem Kleinmist belästigen...

      Gruß, Stefan
    • New

      Klar kann man da alles weglassen. Es wird nur immer instabiler und versagt dann wenns am dringensten gebraucht wird. Auch können Fehler auftreten die kaum zu finden sind/ an der falschen Stelle gesucht werden.
      Batterien sind von Natur aus sehr wackelig, da sollte neben den 100nF noch >100µF. Die Pins schalten "hart" durch damit kann er sich schon alleine ausnoggen, noch ein wenig Last dazu und die Versorgung knickt soweit ein das alles möglich ist: EEpromfehler, Brown Outs, Reset, oder nur ein gekipptes Bit.
      Die zweite Seite sollte nicht nur angeschlossen werden sondern auch Kondensatoren bekommen (auch Aref)
      Auch die Stacks können Probleme machen.
      Bei dem Bleiakku würde ich eine Halogenlampe als Vorwiderstand nehmen. Ich hab hier einen so in den Anschlag gefahren das er alleine nicht mehr rauskahm, seid dem hat er nen Knick am Antrieb(Rohrzange)
    • New

      So, eben habe ich die frisch geladene Batterie aus meinem Oldtimer gebaut und an den Servo angeschlossen.

      Um ehrlich zu sein, habe ich die ganze Zeit gedacht, dass ich das nur mache, um Euch zu beweisen, dass das nicht die Ursache ist. :|
      Aber egal. Versuch macht kluch. Ich also alles zusammengestöpselt, das Programm, dass ich weiter oben gepostet habe, mit einer Signalwartedauer von 1520 us geflasht und mich total erschrocken!
      Der Servo hat sich schnell und laut bewegt. Ich hatte mich schon so dran gewöhnt, dass das Ding keinen Piep sagt... :)

      Damit ist die Ursache gefunden. Die Stromquelle war vorher tatsächlich zu schlapp! Vielen Dank an Euch alle, die Ihr mich bei der Fehlerfindung geholfen und auch sonst unterstützt habt! :thumbsup:

      Dann will ich heute abend mal sehen, ob ich dem ATmega8, der sein Gedächtnis und sein Taktgefühl verloren hat, bei der Selbstfindung helfen kann. :)

      Gruß, Stefan
    • New

      ...das klappt leider nicht so.
      Ich hatte die Idee, die Tabelle für "Lock and Fuse Bits" mit Hilfe eines intakten Atmega8s aufzufüllen und dann auf das Sorgenkind zu refreshen. Guter Plan - nur funktionieren muss er. :|
      Bei jedem Refreshversuch nullen sich sämtliche Einstellungen in der Tabelle. Das Programm kann dann nicht mal mehr erkennen, um welchen Prozessor es sich handelt.
      Leider hilft da auch das Help-Menü nicht weiter. So richtig weiß ich auch nicht, wie man die Tabelle anwendet, bzw. auf den Prozessor schreibt.

      Gruß, Stefan
    • New

      Eben habe ich an XTAL1 und XTAL0 einen Quarz (CQ 1.8432 MHz) angeschlossen, dann die Tabelle mit einem intakten ATmega8 aufgerufen und dann die Frequez auf"000110 Ext: RC Osc.0.9 MHz - 3.0 MHz" umgeschaltet und dann an den vergesslichen ATmega8 gesteckt: Sowohl bei Refresh als auch bei Write FS springt die Tabelle wieder auf Null. :|

      Gruß, Stefan
    • New

      froschkoenig wrote:

      dann die Tabelle mit einem intakten ATmega8 aufgerufen
      Das geht so auch nicht. Der ATMega selbst (der nicht mehr geht) muss von Bascom erkannt werden. Falls du keinen externen Oszillator hast, kannst du auch mit dem noch funktionierenden einen Takt erzeugen den du dann bei dem anderen einspeist. Dann kannst du damit versuchen die Fuse neu zu schreiben.
      Eine Lösung habe ich nicht, aber mir gefällt Ihr Problem.
    • New

      Michael wrote:

      Schließ an XTAL1 einen Takt von 1MHz an

      froschkoenig wrote:

      Eben habe ich an XTAL1 und XTAL0 einen Quarz
      Du hast was ganz anderes gemacht, als ich geschrieben hatte.
      Ist ein bissl wie mit der Stromversorgung, Lernen durch Schmerz.

      Nochmal zum nachlesen:
      Schließ an XTAL1 einen Takt von 1MHz an

      Einen Takt wirst du bestimmt mit einem Invertergatter hinkriegen.
      Selbst ein kleines Programm mit einem intakten AVR kann einen Pin toggeln lassen, der als Taktquelle dient.
    • New

      Ich weiß. So hattest du das nicht beschrieben. Aber ich habe in einer alten Kramkiste den Quarz gefunden und gedacht: "Ausprobieren, auch wenn es unwahrscheinlich ist."
      Das ist aber nicht "lernen durch Schmerz", sondern "Learning by mistake" :)

      Ich werde mich auch bald mal wieder um den kleinen "verfusten" Atmega kümmern. Weniger, um die 1,65 Euro zu retten, sondern mehr um zu verstehen, wie die Dinger bzw. Bascom funktionieren.

      Auf jeden Fall: Dank für Deine Geduld! Mein intensives Herumprobieren bedeutet nicht, dass ich Dir nicht glaube!

      Gruß, Stefan

      The post was edited 1 time, last by froschkoenig ().