Forum: Mikrocontroller und Digitale Elektronik Spannung messen


von Eugen T. (eugen_t)


Angehängte Dateien:

Lesenswert?

Hallo,

ich versuche die Spannungen an den Ausgängen der Spulen des Nema17 
Schrittmotors mit dem Arduino zu messen(s. Bild). Das heißt, wenn ich 
den Motor per Hand drehe, dann entsteht Spannung an den Spulen und die 
gibt Auskunft über die Geschwindigkeit der Drehung und über die 
Richtung(im Uhrzeigersinn / gegen Uhrzeigersinn). Das funktioniert auch 
einigermaßen, aber es gibt zwei Probleme:

-> Die Spannung kann auch mehr als 5V werden, daher müsste man die 
begrenzen, die Frage ist nur wie?

-> Wenn ich den Motor an den Arduino anschließe muss man mehr Kraft 
aufwenden um den zu drehen.  Mit offenen Kontakten geht es viel 
leichter. Woran liegt das?

von Jörg R. (solar77)


Lesenswert?

Eugen T. schrieb:
> ich versuche die Spannungen an den Ausgängen der Spulen des Nema17
> Schrittmotors mit dem Arduino zu messen(s. Bild). Das heißt, wenn ich
> den Motor per Hand drehe, dann entsteht Spannung an den Spulen und die
> gibt Auskunft über die Geschwindigkeit der Drehung und über die
> Richtung(im Uhrzeigersinn / gegen Uhrzeigersinn). Das funktioniert auch
> einigermaßen, aber es gibt zwei Probleme:
>
> -> Die Spannung kann auch mehr als 5V werden, daher müsste man die
> begrenzen, die Frage ist nur wie?

Der Motor erzeugt auch negative Spannungen, bezogen auf GND vom Arduino. 
Damit killst Du das Board.

Dein Vorhaben macht aus meiner Sicht keinen Sinn. Was genau ist denn 
Dein Plan?

von Eugen T. (eugen_t)


Lesenswert?

Es hat mich auch gewundert, dass der Arduino Uno das mitmacht, aber da 
brennt nichts durch und die Spannungen sind immer positive, auch wenn 
man plus und minus vertauscht. Ich benutze den kleinen Nema17 als 
"rotary encoder", und der ist für mein Vorhaben perfekt, weil man damit 
die Drehung sehr genau abbilden kann und man spürt beim drehen die 
einzelne Schritte.

von Jörg R. (solar77)


Lesenswert?

Eugen T. schrieb:
> Es hat mich auch gewundert, dass der Arduino Uno das mitmacht,
> aber da brennt nichts durch und die Spannungen sind immer positive,
> auch wenn man plus und minus vertauscht.

Wir können weiter diskutieren wenn Du das Thema ernst nimmst.

: Bearbeitet durch User
von Eugen T. (eugen_t)


Lesenswert?

Du musst die Idee nicht mögen. Es gibt zwei Fragen im ersten Post und 
entweder hast du die Antworten oder ich kann deine Kommentare nicht 
gebrauchen.

von Jörg R. (solar77)


Lesenswert?

Eugen T. schrieb:
> Du musst die Idee nicht mögen. Es gibt zwei Fragen im ersten Post
> und
> entweder hast du die Antworten oder ich kann deine Kommentare nicht
> gebrauchen.

Die Antwort ist dass Du den Arduino killst.

Sorry, frisch angemeldet, es ist mitten in der Nacht..hat immer etwas 
von Trollerei aufgrund von Langeweile. Viel Spaß noch bei deinem 
Vorhaben. Ich hole mir jetzt Cola und Popcorn und habe Spaß an dem was 
nun noch folgt🤡

von Azubibubi (Gast)


Lesenswert?

Hey ich antworte dir gern wenn du vom Azubi Antworten willst

Eugen T. schrieb:
> -> Wenn ich den Motor an den Arduino anschließe muss man mehr Kraft
> aufwenden um den zu drehen.  Mit offenen Kontakten geht es viel
> leichter. Woran liegt das?

Über die Schutzdioden des Port fliesst Strom würde ich annehmen? Habe 
gerade keine Arduino Schaltbild vor mir. Hier guck dir die Dioden im 
Atmega an

 https://www-user.tu-chemnitz.de/~heha/hsn/chm/ATmegaX8.chm/14.htm

Deshalb flisst Strom und es entsteht die Gegenkraft

  https://studyflix.de/elektrotechnik/lenzsche-regel-1811

von Stefan S. (chiefeinherjar)


Lesenswert?

Eugen T. schrieb:
> Es hat mich auch gewundert, dass der Arduino Uno das mitmacht, aber da
> brennt nichts durch

Dann hast du Glück gehabt, dass die eingebrachte Energie nicht groß 
genug gewesen ist. Außerhalb der Spezifikationen bist du trotzdem - und 
in diesem Bereich darf der Controller kaputt gehen oder zumindest 
nicht ordnungsgemäß funktionieren.

Eugen T. schrieb:
> -> Die Spannung kann auch mehr als 5V werden, daher müsste man die
> begrenzen, die Frage ist nur wie?

Der Atmega328 hat Schutzdioden eingebaut (siehe Datenblatt). Mit einem 
Vorwiderstand lässt sich der Strom entsprechend begrenzen.
Die Wirkung der Schutzdioden merkst du übrigens bereits - der Motor 
dreht sich per Hand schwerer, wenn er angeschlossen ist. Das liegt 
daran, dass über die Dioden ein Strom fließt, der für eine 
entgegengesetzte Kraft sorgt. Stichwort: Lenz'sche Regel.

Warum vergewaltigst du einen Motor und nimmst nicht einfach einen 
konventionellen Drehgeber, wenn es dir nur um Drehrichtung bzw. 
Geschwindigkeit geht?

von Eugen T. (eugen_t)


Lesenswert?

Azubibubi schrieb:
> Über die Schutzdioden des Port fliesst Strom würde ich annehmen? Habe
> gerade keine Arduino Schaltbild vor mir. Hier guck dir die Dioden im
> Atmega an
>
>  https://www-user.tu-chemnitz.de/~heha/hsn/chm/ATmegaX8.chm/14.htm
>
> Deshalb flisst Strom und es entsteht die Gegenkraft
>
>   https://studyflix.de/elektrotechnik/lenzsche-regel-1811

Vielen Dank. Ich schau mir das an.

von Eugen T. (eugen_t)


Angehängte Dateien:

Lesenswert?

Jörg R. schrieb:
> Die Antwort ist dass Du den Arduino killst.

Tja, damit liegst du leider falsch, der Arduino ist lebendiger den je 
und liefert zuverlässig die Werte(s. Bild)

von Eugen T. (eugen_t)


Angehängte Dateien:

Lesenswert?

Stefan S. schrieb:
> Warum vergewaltigst du einen Motor und nimmst nicht einfach einen
> konventionellen Drehgeber, wenn es dir nur um Drehrichtung bzw.
> Geschwindigkeit geht?

Drei Gründe:

ich hatte einen rumliegen

möchte kein Geld ausgeben

beim drehen leistet der Motor Widerstand und lässt die Schritte spüren, 
was für so ein Drehhebel(s. Bild) wichtig wäre.

von Jörg R. (solar77)


Lesenswert?

Eugen T. schrieb:
> Jörg R. schrieb:
>> Die Antwort ist dass Du den Arduino killst.
>
> Tja, damit liegst du leider falsch, der Arduino ist lebendiger den je
> und liefert zuverlässig die Werte(s. Bild)

Ich brauche mehr Popcorn🍿

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Bei einem ACT 23HS542, dessen Achse ich mit der Kombizange drehe, 
erreiche ich einen Strom zwischen 0,2 A und 0,55 A. Die armen 
Schutzdioden...

von Eugen T. (eugen_t)


Angehängte Dateien:

Lesenswert?

Andreas S. schrieb:
> Bei einem ACT 23HS542, dessen Achse ich mit der Kombizange drehe,
> erreiche ich einen Strom zwischen 0,2 A und 0,55 A. Die armen
> Schutzdioden...

Ist so einer:

Spannung 3.5 Volt
16 Ncm Haltemoment
NEMA 17 bipolar 42*42*20mm4-Draht
1,8 Grad Schrittwinkel (200 Schritte / U)
Nennstrom 1,0 A & Widerstand 3,5 Ohm

von Eugen T. (eugen_t)


Lesenswert?

Wenn man die Gefühle für den vergewaltigten Motor und die Zweckmäßigkeit 
des Vorhabens beiseite legt bleibt die Frage wie man sowas sicher 
betreiben kann. Wie groß muss der Vorwiderstand sein? Wohin mit der 
Überschüssigen Energie damit der Wiederstand beim drehen nicht zu groß 
wird?

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Eugen T. schrieb:
> Du musst die Idee nicht mögen. Es gibt zwei Fragen im ersten Post und
> entweder hast du die Antworten oder ich kann deine Kommentare nicht
> gebrauchen.

Bei solch einem Auftritt wirst Du von mir keine konkrete Unterstützung 
erhalten.

Eugen T. schrieb:
> Ist so einer:

Ist mir egal. Die Messergebnisse waren nicht für Dich bestimmt, sondern 
eher für die anderen Diskutanten.

Eugen T. schrieb:
> Wenn man die Gefühle für den vergewaltigten Motor und die Zweckmäßigkeit
> des Vorhabens beiseite legt

Das ist Merkbefreiung allererster Sahne. Geh woanders spielen.

> Wiederstand

https://www.duden.de/suchen/dudenonline/wiederstand

: Bearbeitet durch User
von Wolfgang (Gast)


Lesenswert?

Eugen T. schrieb:
> -> Die Spannung kann auch mehr als 5V werden, daher müsste man die
> begrenzen, die Frage ist nur wie?
> -> Wenn ich den Motor an den Arduino anschließe muss man mehr Kraft
> aufwenden um den zu drehen.  Mit offenen Kontakten geht es viel
> leichter. Woran liegt das?

Direkte Antwort auf deine Fragen:
1. Damit du den Eingang des Arduino nicht überlastest solltest du 
mindestens den Strom auf Werte unter 1mA begrenzen. Die internen 
Eingangsschutzdioden sorgen dann für den Rest, solange die Stromaufnahme 
von deinem Arduino ausreichend groß ist. Andernfalls wird seine 
Betriebsspannung angehoben, was diese schnell über den spezifierten 
Maximalwert ansteigen ließe.

2. Am Quasi-Kurzschluss der unteren Halbwelle über die untere 
Eingangsschutzdiode. Genauso könntest du die Motorwicklungen jeweils 
direkt kurzschließen.

von Edi R. (edi_r)


Lesenswert?

Zur Problematik wurde ja bereits alles gesagt. Was sich der TO davon zu 
Herzen nimmt, bleibt ihm überlassen. Neu ist die Idee aber keinesfalls:
Beitrag "SCHRITTMOTOR ALS ROTARY ENCODER" - und es gibt noch mehr 
Fundstellen.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Eugen T. schrieb:
> Du musst die Idee nicht mögen.
Auch wenn du das Glück hast, dass der AVR noch nicht spürbar beschädigt 
ist: es ist trotzdem eine blöde Idee, mangels Grundlagenwissen die 
"Absolute Maximum Ratings" im Datenblatt des µC mit jedem Drehen des 
Schrittmotors zu verletzen.

Das ist, wie wenn du mit ohne auf den Verkehr zu achten eine Straße 
überquerst: je nach Tageszeit und Reaktionsvermögen der beteiligten 
Autofahrer kann das mehr oder weniger oft gut gehen. Trotzdem ist es 
eine blöde Idee.

Eugen T. schrieb:
> -> Die Spannung kann auch mehr als 5V werden, daher müsste man die
> begrenzen, die Frage ist nur wie?
Du musst nicht die Spannung des Schrittmotrs begrenzen, sonden lediglich 
die Spannung, die der µC sieht. Also: Serienwiderstand und Klemmdioden 
bzw. Z-Diode.

> -> Wenn ich den Motor an den Arduino anschließe muss man mehr Kraft
> aufwenden um den zu drehen.  Mit offenen Kontakten geht es viel
> leichter. Woran liegt das?
Am Kurzschluss, den die Schutzdiode des AVR gegen GND für negative 
Spannungen erzeugt. Schließ zum Test einfach mal eine Diode an die 
Anschlüsse des Schrittmotrs an. Oder schließ die Anschlüsse des 
Schrittmotrs kurz und dreh dann. Du siehst: gleicher Effekt.

Eugen T. schrieb:
> Wie groß muss der Vorwiderstand sein?
Nimm 10k.

> Wohin mit der Überschüssigen
> Energie damit der Wiederstand beim drehen nicht zu groß wird?
Lass die im Motor. Sobald du sie extern verheizt, musst du sie auch 
aufbringen.

Und noch eins: nimm einfach mal Google, gib dort deinen Plan ein und 
versuche zu verstehen, was Andere da so gemacht haben.
* https://www.google.com/search?q="schrittmotor+als+drehgeber";

: Bearbeitet durch Moderator
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.