Forum: Mikrocontroller und Digitale Elektronik DC Motorstrom messen


von martin (Gast)


Lesenswert?

Bon jour!

Habe mir für einen 12 Volt DC Motor mit einem LN298 und einem ATmega
eine Motoransteuerung gebaut. Funktioniert soweit ganz gut, nur möchte
ich jetzt eine Überlastfunktion für den Motor integrieren sprich ab
einer bestimmten Belastung soll der Motor abschalten!

Nun wäre ich dankbar über ein paar Lösungsvorschläge oder Tipps wie ich
dieses Problem am Besten Löse. Hätte mir gedacht über die ADC und den
Strom (der ja bei Belastung des Motors steigt).
Aber wie messe ich den Strom am Besten( Schaltung) bzw. wandle ihn in
eine Spannung für den ADC um!

Oder gibt es fertige IC's oder einen einfacheren Weg?

Danke im Voraus, Martin

von thomas (Gast)


Lesenswert?

Hi,

eine schöne, saubere Lsg. ist die Messung mit einem LEM-Wandler.

Eine andere, billige Lösung hatte ich schon mal mit einem weiteren
Mosfet unter der Brücke nach GND gemacht. Dieser Mosfet ist dauerhaft
eingeschaltet, und über seinem RdsOn hast Du dann die dem Strom prop.
Spannung. Denke aber daran, dass in der Hochlaufphase des  Motors, je
nach angehängter Last, die Stomgrenze auch überschritten wird.
 Evtl. erst abschalten wenn die Stromgrenze eine gewisse zeit
überschritten wird.


guude aus hessen

thomas

von Ratber (Gast)


Lesenswert?

@Martin


Du meintest LM298 ?
(Datenblatt
http://me118.stanford.edu/pictures/Win01Projects/TheBeast/LM298.pdf )

Pin 1 und 15 sind schon vorgesehen für Motorstrommessung.

Einfach einen Messhunt mit einige milliohm dazwischen (Nach Masse) und
schon haste ne Spannung die zum Motorstrom proportional ist.

Mit einer einfachen RC-Schaltung kannste das Signal etwas verzögern und
damit den Anlaufstrom abfangen (Für Überstrom ist die Sicherung da).
Geht aber auch in Software.(Je nach Geschmack und Anforderung)

Der Atmega hat einen eingebauten Verstärker (Gain-Amp) der dir das
Signal für den ADC aufbereitet also kannstew dir den externen Amp
schenken (wer will kann natürlich extern Arbeiten.Ist wie oben
Geschmackssache oder je nach Anforderungen)

Der Rest ist Software die dann den LM298 über die Enableleitungen (En A
und B) abschaltet.

Messwiderstände gibt es bei jedem Elektronikverkauf.
Man kann sich auch selber einen machen.Ein stück Leitung und etwas
rechnerei sind alles was man dazu braucht.


Also ,dein Wunsch ist erfüllbar.
wie weit du das in Software machst oder den Controller nur als
Schaltzentrale nutzt mußt du selber wissen. (abhängig von freier
Rechenzeit,gewünschter Sicherheit usw.)

von martin (Gast)


Lesenswert?

Danke erstmals für die raschen Antworten.

Bei mir hat sich ein Schreibfehler eingeschlichen, meinte den L298N!
Aber du hast Recht, die beiden Ausgänge 1,15 sind für den Motorstrom!
LOL

Noch eine Frage zur Sicherheit! Am uC ist noch genug Rechenzeit
vorhanden, da ich keine PWM verwende und der uC nur zum Schalten über
eine Funkplatine verwendet wird!
Aber glaube dass ich die Einschaltzeit mit einer Zeitkonstante
überbrücken werde, so bin ich flexibler und spare mir Hardware! Wie
sieht es da von der sicherheitstechnischen Seite aus?

lg, Martin

von Denis (Gast)


Lesenswert?

moin, habe mit "gleicher" konfiguration eine überlastabschaltung
realisiert (Shunt), das Problem an der Sache sind die auftretenden
Peaks bei Motoren, habe mittels Analogkomperator und Zählroutine dies
in den Griff bekommen.

von martin (Gast)


Lesenswert?

Hei Denis!

hast du noch irgendwelche Codesamples oder Schaltpläne?

von Denis (Gast)


Lesenswert?

Beschaltung entsprechend Datenblatt des L298,
Code muss ich heute abend mal nachschauen.

von Denis (Gast)


Lesenswert?

Die Vergleichsspannung für den Komparator über Spannungsteiler und
Poti.

"Codeprinzip"
Interruptroutine
AnaCp:
rjmp Ueberlast


 Motorroutine
  LDI mp,0b00000011;    Enable Anacomp
  OUT ACSR,mp
  LDI mp,0b00001011
  OUT ACSR,mp

->Motor an
-> Motor aus,
  LDI mp,0b00000000  ;  Disable Anacomp
  OUT ACSR,mp



Überlastroutine
UEBERLAST:
  INC   Zaehler     ;erhöhe Zähler um eins
  CPI   Zaehler,$20  ;vergleicher mit ....
  BREQ   UEBERLAST2  ;verzweige wenn gleich
  reti

UEBERLAST2:
-> Überlastaktion

von martin (Gast)


Lesenswert?

Thx an alle!


glaub das bekommich hin :-)

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
Noch kein Account? Hier anmelden.