Hi, ich bin aktuell dabei einen (oder genauer gesagt sechs) Linear-Aktuator für einen Simulator zu bauen. Als Steuerplatine kommen ODrive 3.5 zum Einsatz. Die verwendeten Encoder sind CUI AMT10, eingestellt auf 2048 ppr. Der Encoder arbeitet mit 5 V. Angeschlossen sind A, B, Z (Index) auf 5 V toleranten Eingängen am µC (der arbeitet mit 3,3 V) Versorgungsspannung Motoren: 42 V. Motor: 149KV (also max. ca 6200 u/min bei 42 V), max. 70A. Das Problem: Ich habe leider ein Problem mit der EMV auf den Encoder-Leitungen. Die Leitung ist physikalisch so weit weg von den Motorleitungen wie es geht. Der Encoder sitzt direkt am Motor, irgendwo müssen die Leitungen sich also näher kommen. Die Leitung ist geschirmt und an beiden Enden aufgelegt (LIYCY 5x0,25mm²). Die Motorleitungen und auch die Versorgung gehen durch einen Ferrit-Kern. Diese Maßnahmen haben gereicht um die Störungen von 2,2 Vpp runter auf 1,7 Vpp zu bekommen. Das ist leider noch nicht genug, es gibt immer wieder Probleme beim Homing (Index-Signal Suche nach dem Start). Die Störung entspricht exakt den 24 kHz PWM-Frequenz die genutzt wird um den Motor zu steuern. Meine Frage ist jetzt: Was ist die beste Variante diese Störungen weiter zu minimieren? Ich habe auf dem Gebiet nicht allzu viel Erfahrung. Auf der Steuerplatine selbst sitzen nur 3,3kOhm Widerstände gegen Vcc (3,3 V). Reicht ein LPF mit z.b. 2,4 kHz cut-off-frequency (680 Ohm + 100 nF)? Oder würde ein separater Schmitt-Trigger IC besser funktionieren? Vielen dank schon mal für eure Hilfe :) Sollten noch Infos fehlen, liefere ich die gerne nach.
Das Signal sieht doch fast super aus. Ich würde es durch einen Tiefpass schicken und dann durch einen Schmitt Trigger. Wobei die Eingänge vieler Mikrocontroller bereits Schmitt-Trigger enthalten.
Die Schaltflanken sehen doch gut aus. Stören dich die "Störungen" auf dem Scope-Bild ? Das könnte am Messaufbau zum Scope der Grund sein ... GND-Klemme vom Scope an der "richtigen" Stelle angeklemmt ? Sonst wie Stefanus schon geschrieben, TP-Filter (RC oä.) versuchen ...
Für mich sieht das Signal auch okay aus. Leider zeigt aber das Verhalten der Motoren / Steuerung dass es wohl doch zu fehlerhaften Signalen kommt. Ich würde ins blaue raten und sagen dass die Störung ab und zu über die 0,7 * Vcc kommt (ca. 2,3 V). Ein 5 V Schmitt-Trigger würde diese Schwelle ja auf 3,5 V anheben. Das Mess-Aufbau war nicht 100% sauber (keine Feder benutzt, sondern die kurze Masse-Klemme). Dafür fehlten mir drei weitere Hände ;) Ich versuchs dann mal mit dem Tiefpassfilter mit nachgeschaltetem Schmitt-Trigger. Danke für eure Antworten!
Martin K. schrieb: > 2048 ppr Martin K. schrieb: > Tiefpassfilter Nicht dass du dir mit dem TP die schönen 2048 ppr vermiest. Wie groß ist die maximale Drehzahl der Motoren?
Martin K. schrieb: > Das Mess-Aufbau war nicht 100% sauber (keine Feder benutzt, sondern die > kurze Masse-Klemme). Dafür fehlten mir drei weitere Hände ;) Miss mal "Masse gegen Masse". Wie sieht das aus? Hast du die Störungen einfach so überall? Martin K. schrieb: > Was ist die beste Variante diese Störungen weiter zu minimieren? Das eigentliche Problem ist hier ja nur sekundär der gestörte Geber. Im Grunde sollte man mal schauen, ob man die Ursache der Störungen besser in den Griff bekommen könnte. Hast du geschirmte Motorleitungen? Ist der Schirm satt und flächig auf PE gelegt? Oder ist der Schirm herausgeführt, verdrillt und führt über ein 30cm Pigtail irgendwo aufs Gehäuse? Wo ist der Ferrit? Direkt am FU Ausgang? Oder soweit weg, dass die Störungen schon wieder auskoppeln können? Martin K. schrieb: > Die Leitung ist geschirmt und an beiden Enden aufgelegt Probiers mal, den Schirm nur auf einer Seite aufzulegen. Dafür gibt es 2 Möglichkeiten, die solltest du beide ausprobieren.
Pulldowns auf der Steuerplatine wären besser. Der Pushpullausgang des Encoders liefert laut Datenblatt max. 2mA. Der Lowpegel macht wohl aktuell Schwierigkeiten. Mit Pulldowns wird bei 5V immer noch genug High-Pegel für die 3.3V-Eingänge erreicht. Parallel zu den Pulldowns würde ich noch kleine Kondensatoren schalten.
Achim M. schrieb: > Nicht dass du dir mit dem TP die schönen 2048 ppr vermiest. Wie groß ist > die maximale Drehzahl der Motoren? Wie eingangs geschrieben: ca. 6000 u/min maximal. Damit komm ich auf etwa 204 kHz. Das habe ich tatsächlich noch gar nicht beachtet. Lothar M. schrieb: > Miss mal "Masse gegen Masse". Wie sieht das aus? Hast du die Störungen > einfach so überall? Werde ich mal messen. Lothar M. schrieb: > Hast du geschirmte Motorleitungen? Ist der Schirm satt und flächig auf > PE gelegt? Oder ist der Schirm herausgeführt, verdrillt und führt über > ein 30cm Pigtail irgendwo aufs Gehäuse? > Wo ist der Ferrit? Direkt am FU Ausgang? Oder soweit weg, dass die > Störungen schon wieder auskoppeln können? Die Motorleitungen sind ungeschirmt. Der Ferrit ist direkt am Ausgang. Leitungslänge zum Motor etwa 40 cm. Ich werde mal schauen ob ich auf der Arbeit zwei Meter 4x6mm² Ölflex 110 CY abgreifen kann. Leider fehlt mir auf der Seite von der Platine eine richtige Möglichkeit den Schirm aufzulegen. Der Schirm vom Encoder ist mangels vernünftiger Möglichkeit ein kurzer pig-tail (etwa 1cm). Lothar M. schrieb: > Probiers mal, den Schirm nur auf einer Seite aufzulegen. Dafür gibt es 2 > Möglichkeiten, die solltest du beide ausprobieren. Zu Beginn wars nur auf einer Seite, die zweite Seite dazu zu holen hat es minimal verbessert. Noname schrieb: > Der Pushpullausgang des > Encoders liefert laut Datenblatt max. 2mA. Der Lowpegel macht wohl > aktuell Schwierigkeiten. Stimmt, das ist mir gar nicht aufgefallen. Ich werde mal versuchen die Widerstände aus zu löten.
Hallo Martin, wenn ich es richtig sehe, musst du das so machen, wie es alle andere machen. Gehe auf ein Differential Signal direkt am Encoder. Führe für jedes Signal 2 verdrillte Leitungen nach aussen. 1. Kannst du hier dein 3,3V zu 5V Problem lösen. 2. Bist du von Masse befreit. Thema RS422 ... Sender Bausteil AM26LS31 Emfänger Baustein AM26LS32 Gruß Thomas
Ich habe mal eine Simulation mit LT-Spice gemacht. Die Vorlage kommt von Helmut S. Beitrag "Simulationssoftware für Leitungen" Er verwendet in der Simulation ein Koaxialkabel. Ich habe die Simulation für ein Patch-Kabel oder ein Twisted pair -Kabel mit Wellenwiderstand 100 Ohm abgeändert. Die Induktivität von 400nH/m ist eine Annahme. Es ist immer eine Signalleitung mit GND verdrillt. Den Schirm würde ich nur auf der Steuerung auflegen, da vermutlich die PWM kapazitiv auf das Motorgehäuse koppelt. Die Frequenz des Signals habe ich mit 200kHz angenommen. Bei 40cm Leitungslänge und Fehlabschluss kommt es schon zu ziemlichen Verzerrungen. Das RC-Glied glättet diese und hilft auch noch bei den PWM-Störungen. Vielleicht kennt sich ja einer mit der Simulation von Leitungen aus und kann das mal überprüfen. Bei maximaler Motordrehzahl sollte die Signalform mit einem Oszi direkt an den Eingängen der Steuerung gemessen werden. Professionell macht man es aber eher wie das Thomas K. beschrieben hat. Ist halt mehr Aufwand.
> Pulldowns auf der Steuerplatine wären besser. > Der Pushpullausgang des Encoders liefert laut Datenblatt max. 2mA. Noch viel besser als Pulldowns waeren ordentliche Treiber in der Naehe der Encoder. Die dann differentiell das abgeschirmte Kabel treiben. Z.B.: > Sender Bausteil AM26LS31 > Emfänger Baustein AM26LS32 Alles andere ist nur Flickwerk und kann mit anderer Kabelfuehrung wieder versagen.
Larry schrieb: > Noch viel besser als Pulldowns waeren ordentliche Treiber > in der Naehe der Encoder. Wenn ich die steilen (da nicht sichtbaren) Flanken des Signals sehe, scheint mir der Sensor bereits kräftig genug zu treiben.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.


