Forum: Mikrocontroller und Digitale Elektronik µC mit Quadratur Encoder Interface (AB-Signale)


von ARM-Fan (Gast)


Lesenswert?

Hallo allerseits!

Kennt vielleicht jemand einen oder mehrere Microcontroller,
die von Hause aus mit Quadratur-Encoder-Interface ausgestattet sind,
(um damit einen Motorcontroller zu entwickeln)?

Bisher bin ich nur bei Microchip's PICs fündig geworden.

PIC18F2331, PIC18F4331, etc.

PICs sind allerdings nicht so sehr meine Baustelle und ich
will nicht schon wieder neue Entw.-Tools anschaffen (ICD2, PIC18 
Compiler).

Ideal wäre ein ARM oder 8051er Kern. AVR natürlich auch ;-)

Danke und Gruß, Frank

von Benedikt K. (benedikt)


Lesenswert?

Ich kenne nur die dsPICs, aber die gehören auch in die nicht gewünschte 
Gruppe. Schau mal bei den Herstellern, die Motor Controller herstellen. 
ST könnte was haben.

von Peter D. (peda)


Lesenswert?

Bis etwa 500kHz Impulsrate kann man das doch bequem in Software machen.

Oder man stellt z.B. nen AT89LP2052 dafür ab, der dann über UART oder 
SPI die Zählerwerte an den Hauptprozessor sendet.


Peter

von ARM-Fan (Gast)


Lesenswert?

Hmm, naja "bequem" ist ein dehnbarer Begriff denke ich,
wenn der Controller eigentlich noch "nebenbei" nen Motion-Controller
samt PID-Regler mit 1 .. ? kHz Abtastrate realisieren soll und ein
Kommandointerface zum Zugriff auf die Parameter bieten soll.
Soweit zumindest die Idee...

Bin auf der Suche nach einem preiswerten Ersatz für LM629 / HCTL1100
und da fand ich den PIC als SingleChip-Lösung schon sehr charmant.

Leider der falsche Hersteller ;-)

von Steffen (Gast)


Lesenswert?

der LM3S601 (32KB) oder LM3S801 (64KB) von Luminary Micro hat slch einen 
Quadrature Encoder Interface (QEI). Mache derzeit ein Projekt mit dem 
LM3S601.

von ARM-Fan (Gast)


Lesenswert?

Hey, das is'n richtig guter Fund!!
Hast du ne Größenordnung, was die Teile kosten?

von Steffen (Gast)


Lesenswert?

ja bei mouser.com kostet der derzeit 8,48USD ab einem Stück und ab 220 
Stück 7,07 USD. Bei dem Distri Atlantik-Elektronik sind die Preise 
ähnlich. Ich habe die aber bei Mouser bestellt, weil ich noch heute auf 
die Muster von dem Distri warte. Bei der Stückzahl ab 20k liegt der bei 
unter 3USD.

von ARM-Fan (Gast)


Lesenswert?

Na, der Preis geht doch voll ok!

von Thomas S. (Gast)


Lesenswert?

Warum nimmst du nicht z.B. einen TMS320F2812 oder auch die 16 Bit 
Version.
Die haben einen Quadraturencoder drinne und den Rest eh. Für einen PID 
sind die DSPs auch sicherlich schnell genug (sind ja häufig auch in den 
MOtorcontrollern drinne). Preis dürft ca. 20 Euro sein bei kleinen 
Stückzahlen.

Thomas

von olaf (Gast)


Lesenswert?


> Hmm, naja "bequem" ist ein dehnbarer Begriff denke ich,
> wenn der Controller eigentlich noch "nebenbei" nen Motion-Controller
> samt PID-Regler mit 1 .. ? kHz Abtastrate realisieren soll und ein
> Kommandointerface zum Zugriff auf die Parameter bieten soll.
> Soweit zumindest die Idee...

Wo ist das Problem? Ich hab so eine Steuerung im Mega8 laufen.
Samplerate der Quadratursignale ist 35kHz. Motorsteuerung
ueber PWM.
Ausserdem laeuft da noch ein Kaskadenregler fuer Geschwindigkeit und 
Position. Und natuerlich Kommandouebergabe von aussen ueber RS232
und ein DiagnoseLCD an I2C.

Ich sehe wirklich keinen Grund fuer so eine kleine Sache gleich einen 
fetten Prozessor aufzufahren.

Olaf

von Michael (Gast)


Lesenswert?

H8H, H8S, SH1-SH2 von Renesas

von ARM-Fan (Gast)


Lesenswert?

Vielen Dank mal an alle für die guten Hinweise!
Die Frage hier zu stellen, hat sich richtig gelohnt.

@olaf: ich suche ja gerade NICHT nach einem "fetten Prozessor".
Im Gegenteil. So klein (und billig) wie möglich. Aber mit
Quadratur Eingang QEI (bzw. "two phase enocder input", wie ich
gerade bei Reneasas gelernt habe) und ein paar PWM Ausgängen.

Habe mit dem AtMega8 auch schon mal 'nen (einfachen) PI-Regler
programmiert (100Hz). Mit der Berechnung der Regelung war der
schon sehr gut beschäftigt!

Wenn man dann noch die A/B-Signale ein ext.Int. Pins hängt,
dann kommt der Controller zu nichts anderem mehr, als in der
ISR ne Variable hoch- oder runterzuzählen. Daher hätt' ichs halt
gern in Hardware.

Frank

von Falk (Gast)


Lesenswert?

Naja, das mit den Drehgebern sollte bei gescheiter Programmierung 
(tm)nicht die Welt sein.

Beitrag "Drehgeber auslesen"
http://www.mikrocontroller.net/articles/Drehgeber

Und ein Mega8 @ 16 MHz hat 16000 Takte pro Millisekunde. Damit sollte 
ein PI Regler, der ja ausser ein paar Multiplikationen und Additionen 
nix weiter braucht, machbar sein.

MfG
Falk

von Peter D. (peda)


Lesenswert?

ARM-Fan wrote:

> Wenn man dann noch die A/B-Signale ein ext.Int. Pins hängt,
> dann kommt der Controller zu nichts anderem mehr, als in der
> ISR ne Variable hoch- oder runterzuzählen. Daher hätt' ichs halt
> gern in Hardware.


Da sollte man nicht mit Bauchgefühl rangehen, sondern einfach 
nachrechnen.


Also wie hoch ist die maximale Impulsrate bei maximaler Motordrehzahl.

Und dann reichlich gerechnet 100 Zyklen für den Interrupt annehmen und 
die CPU-Last in % ausrechnen.


Peter

von Olaf (Gast)


Lesenswert?


> Da sollte man nicht mit Bauchgefühl rangehen, sondern einfach
> nachrechnen.

Ein wahres Wort gelassen ausgesprochen. :-)
Das kann ich auch nur empfehlen da es halt stark von der Mechanik
abhaengt.

Ich kann allerdings sagen das ich eine Anwendung wo der SampleIRQ
mit 35kHz laeuft etwa 500mal verkauft habe und es hat sich noch keiner
beschwert. Ich glaub machbar waere auch noch so 40-50kHz.

Der Kaskadenregler (2xPID) ist dagegen nicht so das problem da der viel
langsamer laufen kann.

Und wenn man gehobene Ansprueche hat kann man ja noch einen HCTL-2000
von HP nehmen. Sollte hier aber absolut unnoetig sein,

Nebenbei gesagt, die Programmierung von soetwas ist der kleinere Teil,
mehr Arbeit macht es die Regelparameter herauszufinden mit dem ein
System unter allen bedingungen stabil laeuft.

Olaf

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.