Autor Thema: Servo Steuerung  (Read 216 times)

emil

  • Neuling
  • *
  • Beiträge: 1
Servo Steuerung
« am: 28. Februar 2020, 16:13:47 »
 ;)

Kurzschluss

  • Gast
Re: Servo Steuerung
« Antwort #1 am: 28. Februar 2020, 17:44:45 »
Hallo, ich möchte eine DC-Servosteuerung mit ATmega328 bauen,

dabei muss ein Encoder ausgewertet werden, PWM ausgegeben und es kommen Takt/Richtungssignale vom PC.
Die Herausforderung ist, das die Signale schnell und unkoordiniert kommen. 
Ich habe mal mit Interrrups angefangen, Bei 4-fach Encoderauswertung geht das bis 30 kHz gut,
wenn ich nur 2x Auswerte komme ich bis 80kHz.  Ein anderer INT springt bei Takteingang. Nun kommen die Signale nicht Syncron, es kommt oft vor das gerade der INT Encoder etwas rechnet und gleichzeitig fliegt der INT für den Takt ein,  dann folgt 1 Schrittverlußt.

Klar könnte ich die INT Routine etwas optimieren, dann geht alles flinker, aber das löst das Problem nicht. Nun kann man sagen, alles bisschen viel für so einen AVR, aber der Uli  schafft 200kHz macht noch ganz nebenbei seriell, PID und kocht Kaffe :D
Ob nun zufällig, sind die Encodereingänge dort an den PIN für analoge Komperator oder High-Speed capture angeschlossen, ob da etwas gezaubert wurde ? Oder Bascom am Ende, weil es bei IRQ zeitraubend alle Register sichert ?
Wenn ich beim Encoder auf 100khz und beim Takteingang auf 10khz komme, wäre das schon ein greifbares Ziel. In der Hauptschleife dann noch etwas Mathe zur PID. Hat da jemand Ideen oder möchte mitbasteln ?
lg Holger

« Last Edit: 02. März 2020, 10:22:49 von nase »

löter

  • Gast
Re: Servo Steuerung
« Antwort #2 am: 01. März 2020, 00:02:02 »
Sehr ......diffus das alles !
Woh liegt denn jetzt im einzelnen das Problem???🤔

Kurzschluss

  • Gast
Re: Servo Steuerung
« Antwort #3 am: 03. März 2020, 18:44:37 »
na das ein Interrupt den anderen behindert,
irgendwie muss eine art zwischenpuffer sein, damit man kein signal verpasst,
jedes einzelne für sich geht gut, encoder oder takt/richtung
kann nun mal sein das 2 signaländerungen gleichzeitig kommen,

Löter

  • Gast
Re: Servo Steuerung
« Antwort #4 am: 05. März 2020, 00:12:25 »
Was für ein Encoder ist das?
Elektronisch oder mechanisch??
Beim Mechanischen  könnte es am prellen liegen

Kurzschluss

  • Gast
Re: Servo Steuerung
« Antwort #5 am: 08. März 2020, 22:30:33 »
natürlich optisch,
der DC Motor dreht bis 10.000U/min wie soll man sonst auf 100khz encodersignale kommen,

Löter

  • Gast
Re: Servo Steuerung
« Antwort #6 am: 17. März 2020, 19:24:58 »
wie konnte ich nur so dumm fragen