Gleichstrommotorstrom erfassen

9

Ich lasse den Strom durch einen Gleichstrommotor durch einen kleinen Widerstand fließen und messe die Spannung darüber. Ich muss diese analoge Spannung einem ADC eines Mikrocontrollers geben, um eine Signalverarbeitung darauf durchzuführen. Mein Problem ist, dass der Mikrocontroller mit einer isolierten Versorgung betrieben wird und die zu erfassende Spannung nicht isoliert ist. Ich halte die Verwendung eines analogen Isolators für keine gute Lösung. Eine Lösung besteht darin, einen externen ADC auf der nicht isolierten Seite zu verwenden und den ADC-Ausgang digital zu isolieren. Dieser ADC kann jedoch keine negativen Spannungen aufnehmen, wenn der Motor in eine andere Richtung läuft. Bitte helfen Sie.

Aashish Thite
quelle
2
"Ich fühle mich wie" ist nicht in der Sprache des Ingenieurs: Wenn Sie den Grund für etwas, das Sie tun, nicht kennen, machen Sie es wahrscheinlich falsch
clabacchio
Tut mir leid für mein schlechtes Englisch. Ich wollte damit sagen, dass ich analoge Isolatoren wegen ihrer schlechten Linearität vermeiden möchte.
Aashish Thite
3
Es geht nicht um schlechtes Englisch, meins ist auch arm. Dies ist nicht technisch gesprochen; Sie sollten Ihre Linearitätsanforderungen definieren und diese dann mit den vorhandenen Komponenten vergleichen.
Clabacchio
2
Sie haben ein Teil mit +/- 5% Fehler und 1% Linearität über den gesamten Bereich "akzeptiert", während Sie ein Gerät mit 0,01% Linearität abgelehnt haben. Es gibt mehr zu den Spezifikationen, als nur das, aber ich denke, das Hall-Gerät kann Ihren ursprünglichen Einwand der "schlechten Linearität" überschreiten.
Russell McMahon
Möglicherweise lag das Problem bei nicht kompensierten Optoisolatoren, die keine sehr gute Linearität liefern können. Dies würde seine anfängliche Zurückhaltung erklären, sie zu benutzen.
W5VO

Antworten:

9

Ich verstehe zwar, dass Sie sich fragen, wie Sie einen Stromerfassungswiderstand verwenden können, um Strom zu erfassen und dann den Wert über eine Isolationsgrenze zu übertragen, aber es gibt einige Alternativen, die Sie in Betracht ziehen sollten, bevor Sie die endgültige Entscheidung in Betracht ziehen.

(Beachten Sie, dass Sie keine Spezifikationen oder Anforderungen wie Bandbreite, Verpackung oder aktuellen Bereich angegeben haben, sodass die genannten spezifischen Teile möglicherweise nicht geeignet sind, aber eine große Auswahl an Teilen verfügbar ist, die wahrscheinlich einwandfrei funktionieren. )

Hall-Effekt-Stromsensoren ermöglichen eine isolierte Stromerfassung, ohne dass Elektronik oder Vorwiderstände auf der "heißen" Seite des Stromkreises erforderlich sind. Der Ausgang kann so ausgewählt werden, dass er für den direkten Anschluss an Ihren isolierten Mikrocontroller geeignet ist. Zum Beispiel, wenn Sie einen 3.3V Mikrocontroller hatte, und der Strom Sie Sinn brauchte , war weniger als +/- 12.5A Allegro Microsystems ACS711 wird Ihnen eine lineare Ausgangsspannung zwischen 0 und 3,3 V, mit 0A Strom bei 1,65 zentriert V. V.

Es ist wirklich so einfach ...

Um dies mit Ihrem Mikrocontroller zu verwenden, verbinden Sie VIout mit einem ADC-Pin.

Natürlich stellen sie diese Sensoren mit unterschiedlichen Stromempfindlichkeiten, Fähigkeiten und Paketen her. Digikey ist dein Freund.

W5VO
quelle
Ich denke, wenn alle anderen eine Anwendungsschaltung geben, sollten Sie dies auch tun.
Kortuk
@Kortuk Die Schaltung ist so einfach, ich dachte nicht, dass es notwendig war (im Vergleich zu der
Servoschleife,
Es ist nicht fair zu erwarten, dass jemand einen Beitrag mit einem Bild mit einem anderen Beitrag vergleicht, der kein Bild auf gleichem Grund hat. :)
Kortuk
[Aktuelles Datenblatt ist bei] ( allegromicro.com/de/Products/Part_Numbers/0711/0711.pdf ) 5% Fehler und 1% Linearität und ...
Russell McMahon
1
@RussellMcMahon Sie machen sie auch mit höherer Linearität und geringerem Fehler und höherer Bandbreite. Zugegeben, Sie werden am Ende nicht die Linearität von 0,01% haben ... aber Sie brauchen keinen Vorwiderstand mit dem Motor, Sie brauchen keine "heißen" Schaltkreise (Regler, Op- Verstärker, Optokoppler usw.), und es ist einfach zu bedienen, unabhängig von Ihrer Motor- / Fahrertopologie.
W5VO
5

"Ich bin der Meinung, dass die Verwendung eines analogen Isolators keine gute Lösung ist."

Wir würden gerne helfen, aber meine Antwort bezieht sich auf einen analogen Isolator. Was stimmt mit denen nicht? Sie sind dafür gemacht.

Der IL300 kann nützlich sein:

Geben Sie hier die Bildbeschreibung ein

Der IL300 hat eine ausgezeichnete Servolinearität von 0,01%. Wenn Sie U1 über die Stromversorgung des Motors mit Strom versorgen möchten, stellen Sie sicher, dass es ordnungsgemäß entkoppelt ist.

(Vcc und Masse links und rechts vom Optokoppler sind offensichtlich unterschiedlich.)

stevenvh
quelle
3

(1) Alle uC mit einem ADC geeigneter Leistung. Wert lesen. Senden Sie digitale Daten über einen Optokoppler.


(2) Sie können "lineare" Opotokoppler kaufen, mit denen eine lineare Spannung über eine Isolationsgrenze repliziert werden kann

Für 2,85 US-Dollar erhalten Sie den LOC110 von IXYS. Sie behaupten:

  • 0,01% Servolinearität
  • THD -87dB Typisch
  • Breite Bandbreite (> 200 kHz)
  • Paare analoge und digitale Signale
  • Energieeffizient
  • 8-poliges Flatpack- oder DIP-Paket (PCMCIA-kompatibel)

Das Gerät enthält 1 x LED und 2 x angepasste Fotodioden. Das Fotodiodenpaar wird verwendet, um ein "Servo" zu erzeugen, so dass die zwei Fotodiodenströme angepasst werden und die Eingangsspannung dann abgeleitet werden kann.

Avago bietet ein viel, viel besseres Datenblatt und einen App-Hinweis für sein HCNR201-Produkt

In jedem Fall ist I_PD1 = I_PD2 und folgen Sie der Schaltung von dort.
Sie bieten zusätzliche Schaltkreise im App-Hinweis, einschließlich eines für bipolare Eingänge.

Da das Gerät über einen Vorwiderstand stromgesteuert wird und in mA "denkt", müssen Sie mit ziemlicher Sicherheit die Spannung Ihres Motors sense_resistor etwas verstärken. Es ist unwahrscheinlich, dass dies ein Problem in der Gesamtreihenfolge darstellt.

Avago HCNR201 dual linear opto.jpg

Russell McMahon
quelle
Hallo Russell, es sieht so aus, als hätten wir die gleiche Lösung. Ich wollte deine Antwort nicht stehlen. Ich muss meine getippt haben, während du deine gepostet hast. Der LOC110 scheint etwas billiger zu sein als der IL300, den ich immer als Referenz benutze.
Stevenvh
@stevenvh - Ich habe dort einen leichten Anfall von Deja Vu erlebt :-). Olin wird meine Antwort # 1 bevorzugen :-)
Russell McMahon
0

Ich hatte 1978 das gleiche Problem mit einem 48V @ 1A Gleichstrommotor mit Fernbedienung und Stromrückmeldung über ein benutzerdefiniertes Telemetriedesign. (jetzt SCADA genannt) Ich hatte eine 1-MBit / s-Telemetrieverbindung entworfen und benötigte einen analogen Strommonitor in etwa 300 m Entfernung, der den digitalen Telemetriekanal von einem Reactor Power Bldg zum Control Bldg verwendet.

Meine Spezifikationen:

  • 1% Fehler Skalenendwert
  • 1% Linearität
  • Abtastrate 1000 Hz.
  • 1 Ampere Nenngleichstrom am Motor mit 10 mΩ Shunt
  • 10 Ampere Stall. wenn die Wirbelstromsonde bei maximaler Leistung in der Mitte der U-Röhre stecken geblieben ist.
  • Reaktionszeit zum Erfassen des Überstroms und Stoppen des Motortreibers 20 ms.

Verfügbar:

  • Einige Statusbits bei einer 1-Mbit / s-Datentelemetrie bei einer Bildrate von 1 kHz.
  • 6800 MCU zum Zurücksenden von Steuerbefehlen mit einer Rate von 100 Kbit / s.

Meine Design-Wahl:

  • Steuerung der Drehzahlimpulsregelung mit 0,1% Auflösung durch Strom
  • mit Pulsfrequenzregelung und einem Schuss. zur Telemetrie
    • 0,1% = 1 pps
    • 1% = 10 pps
    • 10% = 100 pps
    • 100% = 1000 pps = 10A Skalenendwert

Anstelle von ADC habe ich ein Drehzahlkonzept wie ein Auto verwendet ...

  • wobei RPM => variable Pulsfrequenz 1shot ==> akkumulierte Ladung am Spannungsmesser
  • außer hier Motorstrom - verstärkte und gesteuerte Pulsfrequenz mit Weitbereich VCO & One Shot.
  • Der Impuls wurde als 1 Statusbit mit 800 Bytes anderer Daten in jedem Synchronisationsmodus übertragen.
  • Der Empfänger stellte die Drehzahlimpulse wieder her und die einfache Integratorschaltung zeigt den Motorstrom auf einem linearen Analogmessgerät vom Flankentyp an.
  • Der Sollwert für den Stillstand wurde automatisch erkannt und innerhalb von ms reagiert, um den Motor innerhalb von 5 ms anzuhalten.

Vielleicht möchten Sie jetzt eine ähnliche Tacho-Schaltung mit Optokopplern anstelle einer Koax-Telemetrie verwenden. Tachodesigns können einfach gestaltet werden, da dies nicht von der Genauigkeit abhängt.

Tony Stewart Sunnyskyguy EE75
quelle