PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Drehbewegung aus Hallsignal generieren?



der_stefan
20.06.2013, 16:47
Moin Jungs,

zu aller Erst muss ich mich als absoluten Laien outen, aber das ist vermutlich an meiner Frage schon erkennbar. Ausser den elektrotechnischen Grundlagen weiss ich im Prinzip nichts über Stromgeschichten (und selbst davon auch nur noch die Hälfte :rolleyes: ).
Nachdem mein E-Technik-Prof meine Frage nichtmal verstanden hat (wohl zu trivial), wende ich mich an euch!

Hab mich schon ein bisschen durchs Wiki gelesen, viel Schlauer bin ich für meinen speziellen Fall aber nicht geworden.


Folgende Situation: ich habe ein Signal von einem Hallsensor zur Verfügung, der eine Drehzahl von einem Bauteil erfasst, mit Ausgangsspannung u und Frequenz f (natürlich drehzahlabhängig).
Mit diesem Signal muss ich nun einen Motor antreiben, der nun mit der gleichen Frequenz f dreht.
Ein Mitarbeiter aus dem Labor empfahl mir, mich mal im Gebiet der Schrittmotoren und den entsprechenden Controllern umzusehen. Nunja, da bin ich :D

Fragen:

- Sind Schrittmotoren überhaupt dafür geeignet? Es würde nämlich um einen quasi unterbrechungsfreien Dauerbetrieb mit n~10-100s^-1 gehen. Er soll keine genauen Positionen anfahren wie z.B. bei Linearantrieben oder so. Einfach nur 1:1 zu der Frequenz des Hallsignals laufen.

Ist das Rechtecksignal z.B. xV und 50Hz, so soll der Motor auch mit 50 Umdrehungen pro Sekunde laufen.

- Womit realisiert man sowas? Was für ein Controller? Software?


Nur mal die Grundlegenen Fragen. Die Auslegung der einzelnen Komponenten würde dann erfolgen wenns theoretisch möglich ist. Z.b. den Sensor im normalen Betrieb mal mit dem Oszilloskop ausmessen, in welchen Frequenzbereichen ich mich genau bewege.
Die Bordspannung (und gleichzeitig maximal mögiche) wären 12V, der Sensor schmeisst glaube ich 5V aus.



Ich danke euch schonmal von Herzen :cool:

Manf
20.06.2013, 18:21
Man kann grundsätzlich die Aufgabe so lösen dass man zwei Signale miteinander vergleicht, das vorgegebene und das vom mitlaufenden geregelten Motor aufgenommene.
Die beiden Signale werden von einem Phasenkomparator verglichen der dann die Ansteuerung des mitlaufenden geregelten Motors steuert. Das ganze arbeitet dann als Phased Locked Loop, PLL.
Als PLL könnte man den 4046 einsetzen der dann noch einen Motortreiber benötigt. Bei der Drehzahl wird es wohl ein DC Motor sein.
Das ist sicher nur erst einmal eine grobe Skizze der Lösung. Speziell die Anforderungen an Dynamik und Phasenabweichung müssen dabei noch näher betrachtet werden.

der_stefan
20.06.2013, 22:41
Okay das ist ja schonmal ein super Ansatz, und für meine Zwecke denke ich vollkommen ausreichend!

Habe mich ein bisschen ins Thema PLL eingelesen und ein paar simple Schaltungen gefunden.
Die Leitfrequenz f1 muss ja nicht zwingend eine Feste sein, sodass hier ja das Hallsignal eingespeist werden kann (sofern geeignet). Doch wie verhält es sich mit der Frequenz f2 vom VCOOut? Wo kommt hier die anzupassende Frequenz her? Benötigt man einen Motor mit integriertem Sensor oder wird das direkt aus der VCOOut gewonnen?

Hier die Schaltung von er ich behaupten würde, dass sie für mich funktionieren würde:

25812

25813

Seh ich es richtig, dass auf Pin 4 (VCOOut) der Motor bzw. der Treiber des Motors gelegt wird, und auf Pin 9 die Leitfrequenz f1 (VCOIn) vom Hallsensor?
Wofür ist im gezeigten Schaltbild der Jumper zwischen 2, 13 und 9 gedacht?

Die Frequenzen für das spätere Betriebsfenster legt man offensichtlich mit dem Kondesator zwischen 6 & 7, fmax und fmin über die Widerstände an 11 & 12 fest. Soweit ja nicht allzu kompliziert.
Die Einstellungen werde ich dann nach rausmessen des Eingangssignals entsprechend dem Datenblatt für nen 4046 vornehmen.

Gibt es die Möglichkeit einer Justage? Sprich einen Offset einstellen fürs spätere Feintuning?

Schachmann
21.06.2013, 08:05
Hallo,

es gibt auf Youtube ein interessantes Video zur Einführung in die Thematik PLL mit dem 4046: http://youtu.be/0jzLDe950AY

Schau Dir das doch mal an, das gibt Dir sicherlich erstmal einen groben Überblick.

Gruß,
Ralf

Manf
21.06.2013, 08:16
Etwas weiter im Detail:
Der Phasenkomparator erhält zwei Signale, das vorgegebene und das vom mitlaufenden geregelten Motor aufgenommene.
An seinem Ausgang ist dann der Motortreiber mit dem Motor der das zweite Signal liefert.
Dieser mitlaufende Motor ist damit der VCO.
Vom 4046 wird damit nur der Phasenkomparator eingesetzt die ganze Schaltung arbeitet als PLL.

der_stefan
23.06.2013, 22:31
@schachmann
Danke, hab mir das Video mal angeschaut... musste ein paar Male zurückspulen um zu verstehen was er da grad gemacht hat :D

@Manfred
Okay, das hab ich jetzt drin! Versteh ich dich richtig, dass der VCO-Teil garnicht genutzt wird? Was mach ich dann mit den freien Anschlüssen? Alles auf Masse?
Hatte weiter oben zu meiner Schande eine Frage von dir übergangen, und zwar wegen dem Anspruch an Dynamik.
Nun ja... also ich denke das System ist im Gesamten wesentlich träger als der PLL es wäre.

Habe übrigens mal den Frequenzgang des Hallgebers im normalen Betrieb ermittelt: von 0 bis ca. 250Hz. Stellt diese geringe Frequenz ein Problem dar oder sollte man noch einen Mutliplikator einbauen und nachher ein Getriebe an den Motor stecken?


Ich werde mir jetzt mal ein paar Teile zusammenkaufen und ein bisschen testen, vor Allem was das Schwingverhalten beim Nachregeln der sich kontinuierlich ändernden Eingangsfrequenz.

Vielen Dank schonmal... ich glaub das wird was!! :-)

Manf
24.06.2013, 06:06
Speziell die Anforderungen an Dynamik und Phasenabweichung müssen dabei noch näher betrachtet werden.
Das heißt eigentlich nur, dass es für den statischen Fall machbar sein sollte.
Wechsel der Eingangsgröße sind ja nicht näher beschrieben.
Am Ende kommen dann manchmal noch Forderungen, dass die Gesamtzahl der Umdrehungen beider Motore gleich sein soll oder dass ein Fahrzeug mit zwei angetriebenen Rädern rechts und links geradeaus fährt.
Das müsste dann eben noch genauer betrachtet werden.


Was mach ich dann mit den freien Anschlüssen? Alles auf Masse?
Vielleicht zunächst einmal nur die Eingänge.


von 0 bis ca. 250Hz. Stellt diese geringe Frequenz ein Problem dar
Mit 250Hz kann man arbeiten, bei 0Hz ist es mit der Dynamik wieder etwas schwieriger und auch ein Multiplikator wird nicht wirklich helfen. (Falls es etwas ironisch klingt, mehr kann man ja bei der Information nicht sagen.)

der_stefan
25.06.2013, 09:51
Okay also so einen Fall wie z.B. einen Fahrantrieb eines Roboters hab ich nicht. Meine Problemstellung ist der Antrieb eines mechanischen Tachos in einem KFZ. Der Hallgeber sitzt im Getriebe und erfasst die Drehzahl der angetriebenen Achse. Aus dieser Drehfrequenz erzeugt die Mechanik im Tacho dann einen Zeigerausschlag.

Das System KFZ ist ein eher träges System, sprich die Änderung der Geschwindigkeit findet ja nicht schlagartig statt. Was wäre Deine Einschätzung dazu?

Haha, dass bei f=0 auch ein Multiplikator nichts bringt ist schon klar ;-)
Die Frage war eher allgemein, erhöht man durch die Vervielfachung der Frequenz evtl. die Regelgenaugkeit?

Manf
25.06.2013, 16:11
Über die rechtlichen Belange bei einem Kfz Tacho sage ich (fast) nichts.
(Es wird garantiert rechtlich unzulässig sein hier mit einer Eigenlösung zu arbeiten.)

Technisch sollte es gehen, die Drehzahl bzw. die Fahrzeuggeschwindigkeit anzuzeigen.

Hubert.G
26.06.2013, 13:14
Wäre das nicht mit einem kleinen µC und einem Schrittmotor einfacher?
Der µC misst die Zeit zwischen den einzelnen Takten des Hallgeber.
Diese Zeit wird dann umgerechnet auf die Anzahl der Takte des Schrittmotor für eine Umdrehung.
Ein A4988 Schrittmotortreiber benötigt nur die Takte zur Ansteuerung des Schrittmotor.
Der Hardwareaufwand ist gering, allerdings ist etwas Programmierung notwendig.
Bei der PLL-Lösung sehe ich das Problem oder Aufwand in der Umsetzung der Ausgangsspannung der PLL in die entsprechende Motordrehzahl.