So verbessern Sie die atmega328p-Karte für die Magnetspulensteuerung

Ich entwerfe eine Platine basierend auf dem atmega328p-Mikrocontroller, um einige Magnetventile (2 Proportionalmagnete und 9 EIN / AUS-Magnetventile) zu steuern.

Dies ist das Datenblatt des Ventils . Dies sind die Solenoiddetails:

V = 12 Vcc, R = 3,7 Ohm, I = 1,80 A

Dies ist mein erster PCB-Schaltplan und mein erstes Board . Ich versorge das Board mit 12V, 40Ah. Ich benutze Eagle und habe so etwas noch nie gemacht, also hat das Board viele Fehler. Tatsächlich habe ich meinen ersten Prototyp getestet und dies sind die Probleme:

  1. Wenn ich versuche, Proportionalmagnete (VSX-, VDX-Ausgänge) zu steuern, stürzt die Platine nach einigen Sekunden zufällig ab und bleibt hängen. Ich muss das Board aus- und wieder einschalten, damit es wieder funktioniert.
  2. Das Datenblatt besagt, dass das Ventil 1,8 A ziehen sollte, wenn es mit 12 VDC betrieben wird, aber ich habe 3 A gemessen, wenn PWM 100 % beträgt. Das ist sehr seltsam!

Um das Problem zu lösen, habe ich mithilfe der Community- Vorschläge die folgenden Änderungen hinzugefügt:

  • Am Hauptstromanschluss wurde ein großer 2200uF 35V Kondensator hinzugefügt
  • Eine Filterkappe zwischen VCC (7) und GND (8) und AREF (21) und GND (22) und AVCC (20) und GND (22) auf dem atmega328p hinzugefügt
  • Ich habe die Spur an Pin 22 geschnitten und direkt mit dem L7805CV GND verbunden
  • Eine Diode über jedem Ventilstift hinzugefügt.

Dadurch kann das Board für 1 oder 2 Minuten gut funktionieren, stürzt dann aber wieder ab.

Jetzt werde ich mein Board erneut entwerfen, daher möchte ich Sie fragen, wie ich meine Fehler beheben und mein Design verbessern kann, damit mein Board richtig funktioniert.

WICHTIG : Nach einigen Experimenten stelle ich fest, dass die Platine in Ordnung ist, wenn ich zwischen dem Mosfet-Ausgang und dem Ventil einen 20R 10W-Widerstand in Reihe schalte. Das Problem ist, dass der Widerstand in kürzester Zeit heiß wird. Die Platine funktioniert auch gut, wenn ich ein Voltmeter in Reihe zwischen den Mosfet-Ausgang und das Solenoid schalte, um den Strom zu messen: In diesem Fall funktioniert die Platine mehrere Male einwandfrei. Das ist sehr seltsam für mich!!

Ich dachte an:

  • Verwenden Sie einen Optoisolator (wie ILD213T), um die MOSFETs zu steuern
  • Verwenden Sie einen isolierenden 5-V-Regler (wie NME0505SC oder AM1S-0505SZ), um den atmega328p von der Platine zu isolieren
  • Hinzufügen von Filterkappen an der Hauptstromversorgung und an atmega328p

Was denkst du darüber?

Können Sie mir bitte ein paar Vorschläge machen?

Wie kann ich den Strom auf 1,8 A begrenzen, wenn die PWM bei 100 % liegt?

Ich weiß, dass das Board-Design nicht korrekt ist, wie kann ich es verbessern?

Soll ich die zweite Schicht nur für GND-Leiterbahnen und die obere Schicht nur für Stromleiterbahnen verwenden?

Bitte hilf mir!


BEARBEITEN :

Ich dachte daran, LM25011 mit diesen Schaltplänen zu verwenden . Ich habe diese Schemata mit dem Online-TI-Rechner erstellt.

Können Sie mir sagen, ob dieses Design für mein Board funktionieren könnte? Ich habe den Rsense so eingestellt, dass er den Strom auf 1,8 A bei 12 VDC begrenzt.

"Das Datenblatt sagt, dass das Ventil 1,8 A ziehen sollte" Nein, das tut es nicht. Was es eigentlich sagt, ist, dass Sie es nicht zulassen sollten , mehr als das zu zeichnen. Die Diagramme im Datenblatt scheinen darauf hinzudeuten, dass der für den Betrieb erforderliche Strom vom Flüssigkeitsdruck abhängt. Möglicherweise müssen Sie einen Chopper-Stromregler mit einem Messwiderstand bauen - siehe Schrittmotor-Treiberschaltungen, um eine Vorstellung zu bekommen.
Ich habe vergessen, diese Details hinzuzufügen, sorry. Dies sind die Magnetdaten: V = 12Vcc R = 3,7 Ohm I = 1,80A
Bevor Sie die Platine umgestalten, versuchen Sie außerdem, den 5-V-Regler zu entfernen und ihn durch eine externe 5-V-Versorgung zu ersetzen, wobei nur die Erdung zwischen der Logikversorgung und der Aktuatorversorgung gemeinsam ist. Erwägen Sie, die Strom- und Masseanschlüsse für diese Test-5-V-Versorgung direkt am ATmega oder seinem Bypass-Kondensator vorzunehmen.
"Dies sind die Solenoiddaten: V = 12 Vcc R = 3,7 Ohm I = 1,80 A" Diese Zahlen stimmen im stationären Zustand nicht überein, daher benötigen Sie eine aktive Steuerung des Stroms. Wenn die Bedingungen vorhersehbar sind, können Sie dies möglicherweise im offenen Regelkreis mit einer maximalen PWM-Einstellung weit unter 100 % tun, aber es ist wahrscheinlich am besten, einen aktuellen Monitor zu verwenden.
Ich habe noch nie davon gehört, Stromregler zu hacken, ich habe bei Google nachgesehen, aber ich habe nicht verstanden, wie man ihn entwirft. Können Sie mir bitte ein Tutorial oder Beispiel geben?
Wie gesagt, siehe Schrittmotortreiberschaltungen für ein Beispiel. Obwohl Sie keinen Schrittmotor haben, treiben Sie auch eine Spule an. Suchbegriff "Chopping Stepper Driver"
Sie sprechen von Phasen, aber ich habe nur einen einzigen Magneten für jeden Ausgang. Ich weiß nicht, ich habe versucht, darüber zu lesen, aber die Schaltungen erscheinen mir sehr komplex.
Ein Stepper hat zwei Spulen, Sie haben eine, also brauchen Sie eine Instanz eines Treibers, nicht zwei, und Sie brauchen wirklich nur eine Seite davon, da Sie die andere Seite an die positive Versorgung anschließen können. Aber die Anforderungen sind sehr ähnlich. Was Sie versuchen, ist nicht einfach, also werden die Schaltungen es auch nicht sein.
Sollte ich so etwas wie diesen Treiber verwenden: DRV8825 zum Beispiel?
Nein, was Sie brauchen, ist kein Step-Sequencing-Schrittmotortreiber, sondern die allgemeine Art der Hackschaltungstopologie, die in einem verwendet wird. Obwohl es kein Teil ist, den Sie für Ihr Projekt verwenden möchten, erklärt der Abschnitt „LASTSTROMREGELUNG“ des L297-Datenblatts das Konzept.
Danke für den Tipp! Ich habe den Abschnitt gelesen und fange an zu verstehen, was ich brauche. Was haltet ihr von dieser Lösung? physical.unlv.edu/~bill/PHYS483/current_lim.pdf wobei R1 der Stromsinn ist
Die Schaltung an Ihrem Link ist ein linearer Stromregler, was bedeutet, dass die Differenz zwischen der maximalen Leistung und der benötigten Leistung als Wärme im Leistungstransistor aufgeht, der im Grunde als elektronisch gesteuerter Rheostat verwendet wird. Das kann funktionieren, aber ein Schaltregler ist weniger verschwenderisch und läuft daher viel kühler.
So etwas wie LM2679 sollte effizienter sein? Auch wenn dieses Modell den Strom nicht unter 3A begrenzen kann. Sorry für meine blöden Fragen, aber ich bin Anfänger.
Dieser andere: LM25011 sieht für mich sehr interessant aus. Dies ist das Datenblatt: ti.com/lit/ds/symlink/lm25011.pdf Was denken Sie darüber? Sollte es richtig sein?
Ich dachte daran, LM25011 ( ti.com/lit/ds/symlink/lm25011.pdf ) mit diesen Schaltplänen zu verwenden: skeetty.com/schematics-LM.jpg - Ich habe diese Schaltpläne mit dem Online-TI-Rechner erstellt. Können Sie mir sagen, ob dieses Design für mein Board funktionieren könnte? Ich habe den Rsense so eingestellt, dass er den Strom auf 1,8 A bei 12 VDC begrenzt.
Die Proportionalventilspezifikation sagt "PWM 120Hz", was sehr suggestiv ist. Können Sie Herstellungsempfehlungen zur Kontrolle dieses Produkts erhalten und einen Tag anrufen?
Ist es möglich, dass die Magneteinheit so stark beschädigt ist, dass die Einheit meistens (wenn nicht immer) einen Kurzschluss zwischen allen ihren Anschlussklemmen erzeugt?
Beide Ventile haben dieses Problem, ich glaube nicht, dass beide kaputt sind. Außerdem funktionieren sie mehrere Minuten, bevor das Board klemmt
Warum geben Sie -12 V und Masse an der Quelle aller FETs an, die die Magnetspulen schalten?

Antworten (4)

Die Solenoide erzeugen eine große Gegen-EMK und die Dioden können diese Leistung nicht schnell abbauen. Ich schlage daher vor, dass Sie einige MOVs anstelle von Dioden hinzufügen. Sie leiten Leistung viel besser ab als Dioden. Außerdem sollten Sie prüfen, ob Ihre Stromversorgung sinken könnte so viel Strom von Solenoiden.

Kommentare sind nicht für längere Diskussionen gedacht; Diese Konversation wurde in den Chat verschoben .

Ich hatte ein ähnliches Problem bei der Verwendung einer Relaisschaltung zur Betätigung von Kolben. Die aufgrund der Betätigung des Kolbens erzeugte Gegen-EMK würde den Steuerkreis kurzschließen und somit den Mikrocontroller zurücksetzen.

Ich würde empfehlen, der Schaltung eine optische Isolationsfunktion hinzuzufügen. Opto-Isolatoren wie ILD1, ILD2, ILD5, ILQ1, ILQ2, ILQ5 sind billig, klein und werden in DIP-Paketen geliefert.

  • Signalinformationen, einschließlich eines DC-Pegels, können vom Antrieb übertragen werden, während ein hohes Maß an elektrischer Isolierung zwischen Eingang und Ausgang aufrechterhalten wird.
  • ILD1, ILD2, ILD5, ILQ1, ILQ2, ILQ5 sind speziell für die Ansteuerung von Logik mittlerer Geschwindigkeit ausgelegt und können verwendet werden, um störende Erdschleifen- und Rauschprobleme zu beseitigen.
  • Diese Isolatoren schützen Ihren Mikrocontroller und Ihre Steuerschaltung vor der durch die Betätigung erzeugten Gegen-EMK.
  • Diese Koppler können verwendet werden, um Relais und Transformatoren in vielen digitalen Schnittstellenanwendungen wie CTR-Modulation zu ersetzen.
Ist es möglich, einen Servomotor mit einem Optokoppler anzusteuern?
-1 Marcus , Natürlich kann es mit einem dedizierten Treiber und einer isolierten Stromversorgung

Bevor Sie das PCB-Design erneut erstellen, verbringen Sie mehr Zeit mit der Analyse aller Probleme, um ;

  • Definiere das Problem besser und beschreibe dann die Lösung mit einer Spezifikation (sehr wichtig)
    • Wie zum Beispiel die Ursache von Wärmeableitungsproblemen.
    • Leistungsprobleme der PWM-Durchflusssteuerung im Vergleich zum Druck
      • Es gibt einen Unterschied in der Quellenimpedanz zwischen SPST und SPDT PWM
      • SPST ist ein Open-Drain- oder Kollektor-BJT-Schalter mit einer Klemmdiode
      • vs
      • SPDT-Aktion eines komplementären Treibers, bei dem die Quelle Z immer niedrig ist, außer während einer Transiente oder Überkreuzung mit Totzeit, während der eine Transiente für V=L*di/dt auftritt

Nachdem ich in meiner Karriere Hunderte von Platinen entworfen habe, weiß ich, dass es möglich ist, das zu tun, was Sie versuchen, eine Leiterplatte zu entwerfen, bevor Sie alle Probleme verstehen, und Sie werden aus dem Prozess lernen, dass es bessere Möglichkeiten gibt. Diese Wege erfordern viele Tests und Umfangsanalysen unter Verwendung aller Prinzipien, die Ihnen beigebracht wurden.

Dies ist mein einfacher Ratschlag zum Testen von Teilen der Schaltung, bis sie alle Ihre Kriterien erfüllen. B. Wärmeanstieg, Leistung, EMI, Kosten und Zeit, und versuchen Sie dann, diese Leistung anhand einer Spezifikation zu messen, die Sie später testen und verifizieren können (oder jemand anderen anweisen, dasselbe zu tun).

  • Wenn Sie gute Spezifikationen haben (die die Kundenerwartungen oder Sie selbst erfüllen)

    • und bestehen Sie sie mit Ihren eigenen Designvalidierungstests (DVT) oder vergleichen Sie sie mit dem Datenblatt
    • Am Ende haben Sie ein perfektes Beispieldesign
    • Viel Glück und denken Sie an diese Prinzipien.
  • Vergleichen Sie die Wellenform Ihres linearen Solenoids unter Lastdruck und sehen Sie, ob es Raum für Verbesserungen gibt.

  • Um dies richtig zu machen, benötigen Sie ein Oszilloskop und ein variables Laborzubehör sowie ein gut geschirmtes Paarkabel und eine Auswahl an Ferritperlen für Einzel- und Adernpaare.Geben Sie hier die Bildbeschreibung ein

Denken Sie daran: Die Lösung ist viel einfacher, nachdem Sie alle Probleme verstanden haben, indem Sie danach gesucht haben.

Wenn Sie anderer Meinung sind, begründen Sie warum

Ich glaube nicht, dass Sie spezielle Stromregler benötigen. Zumindest nicht am Anfang.

Ich mache mir Sorgen, dass Sie -12 V und Gnd geschrieben haben, die zusammen mit allen FET-Quellen verbunden sind, die die Magnetspulen schalten.

Holen Sie sich ein Multimeter und messen Sie den Leerlauf-Gleichstromwiderstand der Magnetspulen. Fügen Sie dann einen Vorwiderstand zur Spule hinzu, um den Strom auf 1,8 A bei 12 V zu begrenzen.

Achten Sie sowohl auf Spitzenleistungsbedingungen als auch auf Durchschnittsleistung. Hier erfahren Sie, welche Art von Stromversorgung Sie benötigen.

Ich vermute, dass Ihr Netzteil Ihre Spitzenleistungsanforderungen nicht erfüllt. Bearbeiten: OP verwendet eine Autobatterie, die in diesem Fall ausreichend Leistung bietet.

Entwerfen Sie es mit ein wenig Headroom in Bezug auf die PWM-Steuerung, sodass Sie nie auf 100 % gehen müssen (z. B. 95 % maximale Auslastung).

Die 12-V-Versorgung für die Solenoide kann vom Netzteil für die Steuerung getrennt werden.

Hoffe das hilft.

Ich danke Ihnen für Ihre Hilfe! Die Stromversorgung ist eine AGM-Batterie, 12 V und 200 Ah. Sie ist sehr groß. Glauben Sie, dass sie nicht ausreicht, um die Solenoide mit Strom zu versorgen?
Oh, sorry, wusste nicht, dass Sie eine Autobatterie verwenden! Das ist ausreichend, obwohl die Klemmenspannung etwas höher als 12 V sein wird, eher wie 12,7 V-13 V, wenn sie voll aufgeladen ist.
@MarcusBarnet hast du ein Multimeter? Und bitte sagen Sie mir, dass die -12 V ein Fehler in Ihrem Schaltplan ist?
Ja und -12 V ist offensichtlich ein Fehler im Design. -12 V ist Masse. Entschuldigung.
Der Magnethersteller sagte mir, dass es normal ist, wenn das Ventil 3A ablässt, wenn es kalt ist. Über 30 Grad entleeren die Ventile etwa 2A. Er sagte, wenn ich den Strom nicht auf 2 A begrenze, werde ich unterschiedliche Verhaltensweisen zwischen kaltem und warmem System haben. Wenn das Ventil kalt ist, dreht sich der öldynamische Motor schneller, da das Solenoid mehr Strom verbraucht. Aber ich denke, das ist kein Problem für mich.