Forum: Mikrocontroller und Digitale Elektronik PIC 16F877A Schrittmotorsteuerung


von Ozul (Gast)


Lesenswert?

Hallo Zusammen,

Vorneweg ich habe noch keine Erfahrungen mit PIC Programmierung...

ich möchte in die PIC Welt einsteigen, und habe auch schon eine erste 
Aufgabe. Schrittmotorsteuerung

Was ich mir vorstelle:

Mit einem Schrittmotor soll eine Scheibe (D15cm) über Riemen angetrieben 
werden.

Ich möchte über 3 Tasten vordefinierte Umdrehungszahlen der Scheibe 
einstellen.
Bsp.
Taste 1 wird gedrückt, die Scheibe dreht 20/Upm.
Taste 2 wird gedrückt, die Scheibe dreht 50/Upm.
Taste 3 wird gedrückt, die Scheibe dreht 70/Upm.

Es soll noch 2 weitere Tasten geben, worüber die jeweils aktive Drehzahl 
beeinflusst werden kann, also Geschwindigkeit +-.

Die Drehzahl der angetriebenen Scheibe soll geprüft werden.

Es soll auf einem Display angezeigt werden welche Drehzahl gewählt 
wurde, also Taste 1,2 oder 3, und die Tatsächliche Drehzahl der Scheibe 
durch Messung.

Material das mir zur Verfügung steht:

Microcontroller: PIC16F877A
Treiberbaustein: L293D
Schrittmotor: Berger Lahr RDM57
Compiler: CC5X

Was benötige ich noch an Bauteilen?

Was ich mir wünschen würde, wen mir jemand erklärt wie ich die Sachen 
miteinander verschalten muss, und wie ein Programm aussehen sollte was 
meine Aufgabe erfüllt.

Ich danke euch schon vorab

von Soeren A. (abraxa)


Lesenswert?

Anspruchsvolles Projekt fuer einen Anfaenger, aber definitv schaffbar :)

Zum Thema LCD: http://www.mikrocontroller.net/articles/AVR-Tutorial:_LCD

Passendes LCD gibt's bspw. hier: 
http://www.watterott.com/16x2-Zeichen-LED-gelb-DEM16216SYH-LY


> Die Drehzahl der angetriebenen Scheibe soll geprüft werden.

Wie moechtest du die Drehzahl messen? Hast du da schon eine Idee?

von Ozul (Gast)


Lesenswert?

Hallo,

und danke erst mal für die schnelle Antwort.

> Wie moechtest du die Drehzahl messen? Hast du da schon eine Idee?

Ich habe mir überlegt an einer Stelle der Scheibe einen reflektierenden 
Punkt aufzukleben, also ein wenig Spiegelfolie, und dan nach 
Lichtschrankenprinzip nach jeder Umdrehung ein Impuls.
Ich weis jedoch nicht ob das Ausreicht, bei so niedrigen Drehzahlen.

von Soeren A. (abraxa)


Lesenswert?

> nach Lichtschrankenprinzip

Auch ich wuerde es optisch machen.


> Ich weis jedoch nicht ob das Ausreicht, bei so niedrigen Drehzahlen.

Bei 20UpM ist das sicherlich zu wenig, um schnell genug reagieren zu 
koennen. Aber du kannst ja bspw. 4 Reflektoren montieren - da hast du 
dann auch Symmetrie.

> Was ich mir wünschen würde, wen mir jemand erklärt wie ich die Sachen
> miteinander verschalten muss, und wie ein Programm aussehen sollte was
> meine Aufgabe erfüllt.

Hast du jemanden vor Ort, der dir zumindest bei der Schaltung helfen 
kann? Natuerlich kann dir jemand hier einen Schaltplan erstellen, aber 
das Verstaendnis kommt dadurch eben nicht so unbedingt in deiner grauen 
Masse an :)

Das Programm wirst du schon selbst schreiben muessen, wobei dafuer C 
sicherlich die am besten geeignete Sprache sein wird. Ich nehme an, dass 
du bereits C-Erfahrung hast, da du dich wohl sonst nicht an ein 
komplexeres Projekt wagen wuerdest. Falls ich falsch liege, solltest du 
erst ein C-Tutorial fuer PIC suchen und absolvieren.

von Ozul (Gast)


Lesenswert?

Hallo.

>> Ich weis jedoch nicht ob das Ausreicht, bei so niedrigen Drehzahlen.

>Bei 20UpM ist das sicherlich zu wenig, um schnell genug reagieren zu
>koennen. Aber du kannst ja bspw. 4 Reflektoren montieren - da hast du
>dann auch Symmetrie.

Daran habe ich auch schon gedacht, doch stellte sich mir sofort die 
Frage wie präziese die Positionierung sein mus?

>Hast du jemanden vor Ort, der dir zumindest bei der Schaltung helfen
>kann? Natuerlich kann dir jemand hier einen Schaltplan erstellen, aber
>das Verstaendnis kommt dadurch eben nicht so unbedingt in deiner grauen
>Masse an :)

Schaltungen lesen und verstehen kann ich ganz gut, nur meistens fällt es 
mir schwer selbst an alles zu denken. Bzw. ich weis nicht was wirklich 
benötigt wird.
Für die Schrittmototren z.B. werde ich eine Spannung von 16V brauchen, 
für den PIC.. 5V da würde ich z.B eine Spannungsquelle mit 16V 
konzipieren, und die 5V über ein Stabbi IC erzeugen. Was ich mir da 
nicht sicher bin, ob das so ok ist, oder ob es elegantere bzw. bessere 
Lösungen gibt.

>Das Programm wirst du schon selbst schreiben muessen, wobei dafuer C
>sicherlich die am besten geeignete Sprache sein wird. Ich nehme an, dass
>du bereits C-Erfahrung hast, da du dich wohl sonst nicht an ein
>komplexeres Projekt wagen wuerdest. Falls ich falsch liege, solltest du
>erst ein C-Tutorial fuer PIC suchen und absolvieren.

Ich habe schon in C programiert, ist eine Ehwigkeit her, und hatte nix 
mit µC zu tun. Von daher werde ich an dieser Stelle viel Hilfe 
benötigen. Ein Tutorial suche ich auch schon, da ich das wirklich lernen 
will.

Ideen für Folgeprojekte habe ich auch schon, aber die sind dann noch 
komplexer und schwieriger.

Ich denke das wichtigste ist mir erst einmal die Motorsteuerung mit den 
Anwahltasten. Display kann später folgen.

von Carsten (Gast)


Lesenswert?

Hi,

ein kurzer Einwurf zur Drehzahlmessung:

Rechnest du bei deinem Projekt mit "Missing Steps" durch eine zu hohe 
Belastung des Motors oder zu hoher Drehzahl für deinen Motor(oder 
Spannungsversorgung)?
Oder möchtest du unbedingt neben der Steuerung sofort auch mit einer 
Auswertung anfangen?

Falls Nein: Warum messen?
Das interessante bei Schrittmotoren ist ja gerade das man die 
Drehzahl/Drehwinkel sehr exakt steuern kann. Sofern man die 
Randbedingungen seines Systems nicht überschreitet bekommt man GENAU das 
was man bekommt. Eine Kontrolle/Nachregelung wie beim "normalen" Motor 
ist nicht nötig...

Was ich damit sagen möchte:
Dein Programm selber steuert die Drehzahl GENAU. Du brauchst im Prinzip 
nur einen kleinen Algoryhtmus der dir die eingestellten Parameter im 
Programm in eine Drehzahl ("Steps pro Sekunde" im Vehältnis "Steps pro 
360 Grad des Schrittmotors") umrechnet. Eine Auswertung ist überflüssig, 
kann natürlich dann als erweiterung zum Üben später mal implementiert 
werden wenn man denn möchte...

Gruß
Carsten

von Carsten (Gast)


Lesenswert?

EDIT: Eine kleine Korrektur:

Im mittleren Absatz muss es natürlich heißen:
***Sofern man die Randbedingungen seines Systems nicht überschreitet 
bekommt man GENAU das was man MIT DEM µC AUSGIBT. (statt bekommt) 
***

Gruß
Carsten

von spess53 (Gast)


Lesenswert?

Hi

Da muss ich Carsten zustimmen. Entweder baust du du einen anständigen 
Schrittmotorantrieb, dann brauchst du keine Drehzahlmessung. Oder du 
baust Murks, dann brauchst du auch keinen Schrittmotor.
Überdenke dein Konzept noch mal.

MfG Spess

von Ozul (Gast)


Lesenswert?

Hallo

also die Drehzahl soll gemessen und angezeigt werden, es soll keine 
Nachregelung erfolgen.

die Anzeige deswegen, da ich ja einmal eine Vorauswahl an Drehzahl habe, 
diese aber über + und - tasten beeinflussbar sein soll. Das 
Übersetzungsverhältniss kriege ich nicht sauber ausgerechnet, da dachte 
ich warum dem µC nicht einfach messen lassen?

Also kein Regelkreis.

Der Motor wird eine Masse von ca.12Kg antreiben müssen, jedoch soll die 
Drehzahl einmal eingestellt dann konstant bleiben. Dies jedoch möglichst 
gleichmäßig, daher kam ich auf Schrittmotor.

Ich denke dan passt es zu dem was Ihr geschrieben habt oder seht ihr nen 
Denkdreher?

von Tugrul Ö. (doenerman)


Lesenswert?

Guten Abend,

Ich weiß nicht ob das jetzt ne blöde Idee ist, aber kann man nicht 
einfach mit kleinen Neodym Magneten und Hallsensoren arbeiten um das mit 
der Umdrehung zu lösen ?.

Man könnte den Neodym magnet an die Scheibe kleben und den Hallsensor 
irgendwie befestigen. Vielleicht sollte man eine Gegenmasse auf die 
Scheibe anbringen, damit da keine Unwucht entsteht.

Hallsensor: TLE 4905

Die Neodym Magnete gibt es auch in sehr klein:
http://www.magnet-shop.net/Neodym-Magnete/Quadermagnete:::56_2.html

Viel Erfolg!

MfG,
Döner Man

von Tugrul Ö. (doenerman)


Lesenswert?

Ach ja...

Als Schrittmotorsteuerung würde ich dir die L297+L298 Kombi empfehlen. 
Der L297 bietet auch eine Stromsteuerung für den Motor an.

Ich selbe habe eine und bin sehr zu frieden damit und löte auch schon 
die zweite zusamm. Die Ansteuerung des Motors ist dank des L297 sehr 
einfach.

Der L298 macht auch mehr mit als der L293D (peak 1.2A).
L298 macht bis 2A mit.

Dann noch nen Kühlerkörper (+kleinen Kühler??) an den L298 und fertig 
ist es.

Hier ist der Link zur Wiki Seite:
http://www.rn-wissen.de/index.php/Schrittmotoren


Hier der Link zum Shop (den gibt es jetzt auch als Fertig-Modul zu 
kaufen, d.h. musst du nicht mehr löten!):
http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=65&products_id=208

Das fertige Modul kostet c.a. 5€ mehr als der Bausatz.

Wenn du dich für die L297+L298 Kombi entscheidest, kann ich dir die Wiki 
Seite nur empfehlen. Da steht fast alles zu dieser Schaltung.
Viel Erfolg.

MfG,
Döner Man

von Ozul (Gast)


Lesenswert?

Hallo Döner Man,

ist es möglich bei dieser Schaltung einfach mehrere Motoren parallel an 
einem Treiber anzuschliessen, oder empfiehlt es sich für jeden Motor 
einen eigenen Treiberbaustein einzusetzen?

Die Motoren sollen sich immer Gleichzeitig gleichschnell drehen. Vom 
Strom her sollte das kein Problem darstellen ,da die Motoren die Ich 
einsetzen will ca. 300mA bei 16V ziehen

Die Schaltung gefällt mir sehr gut, ich weis zwar nicht wie ich den Puls 
generiere, aber ich lerne ja noch....

Grüße

von Ozul (Gast)


Lesenswert?

Noch eine Frage,

ist es besser den Schrittmotor in Follschritten anzusteuern, oder in 
Halbschritten?

Mir geht es vor allem um gleichlauf und Laufruhe.

danke

von spess53 (Gast)


Lesenswert?

Hi

>ist es besser den Schrittmotor in Follschritten anzusteuern, oder in
>Halbschritten?


Kommt auf deinen Motor an. Es mach einen kolossalen Unterschied, ob du
48 oder 400 Schritte/U hast.

MfG Spess

von Michael W. (retikulum)


Lesenswert?

12 kg wiegt die Scheibe? Da denke ich ist so ein kleiner 5 W Motor 
ungeeignet. Eventuell mit sehr langen Rampen zum Beschleunigen und 
Bremsen könnte sich die Scheibe drehen. Ich denke aber eher nicht.
Michael

von JensM (Gast)


Lesenswert?

Hallo

Der Gleichlauf ist kein Problem, da der Tackt durch den Mikroprozessor 
vorgegeben wird. Die Laufruhe ist ein Problem. Wenn man ein System mit 
einem Schrittmotor sicher betreiben will, so muss die Kraft (Drehmoment) 
des Schrittmotors groesser sein als die maximal auftreteneden Kraefte 
des angetriebenen Systems. Dann spürt man aber die Schritte.
Der Unterschied zwischen Vollschritt und Halbschritt ist nach meiner 
Erfahrung dabei nicht so gross.
Dies kann durch eine Schrittmotorsteuerung mit Mikroschritten verbessert 
werden, setzt aber geeignete Ansteuerung und Motoren voraus.

Mit der bisherigen Bescheibung des Systems sehe ich noch wenige 
Vorteile, sondern mehr Nachteile durch einen Antrieb mit einem 
Schrittmotor gegenüber einem Antrieb mit einem Gleichstrom Getriebemotor 
und PWM.

Nach meinem Gefühl ist ein Motor mit 16V/300mA der ein System mit 12kg 
antreiben soll schwach ausgelegt. Vor allem da der Motor nur 24 Schritte 
pro Umdrehung hat.

Mfg JensM

von Tugrul Ö. (doenerman)


Lesenswert?

Guten Morgen Ozul,

>ist es möglich bei dieser Schaltung einfach mehrere Motoren parallel an
>einem Treiber anzuschliessen, oder empfiehlt es sich für jeden Motor
>einen eigenen Treiberbaustein einzusetzen?

Das habe ich noch nie getestet.

Wenn die Schrittmotoren (zwei oder drei) bei Last oder im Stillstand 
nicht mehr als 2A ziehen, müsste das doch ja funktionieren. Du schliesst 
die Motoren dann einfach parallel an die 4 Ausgänge der Schaltung. 
(Ausgänge für die Wicklungen).

------------------------------------------------------------------------ 
-
Nachtrag: Ich sehe gerade im Schaltplan dieser Schaltung, dass das gehen 
sollte. Da ist eine 10 Polige Wannenbuchse auf der Platine, wo die Pins 
jeweils mit Motor1 und Motor2 bezeichnet sind.
------------------------------------------------------------------------ 
-

Mit einer Steuerung kannst du aber nicht zwei Motoren unabhänging 
steuern, aber das willst du ja auch gar nicht.


>Die Schaltung gefällt mir sehr gut, ich weis zwar nicht wie ich den Puls
>generiere, aber ich lerne ja noch...

Puls ? Meinst du den Puls für den Clock Eingang des L297 ?.

Den generierst du doch mit deinem PIC MicroChip. Du nimmst einen Port 
des PIC's und erzeugst damit den Puls (High Low Flanken)

Dabei nicht die 10ms Wartepause zwischen High und Low vergessen, da 
sonst nicht genügend Zeit übrig bleibt, damit sich das Magnetfeld im 
Schrittmotor aufbbaut bzw. abbaut (???) (ich glaube das war der Grund, 
wenn ich mich täusche, tut mir es mir leid !)


Du nimmst von deinem PIC ebenhalt ein Port für die Drehrichtung 
(CW/CCW), eine für Enable (Motor an/aus), einen für Clock und einen für 
Halb/Vollschritt.

Viel Erfolg !

MfG,
Döner Man

von Thany (Gast)


Lesenswert?

>Als Schrittmotorsteuerung würde ich dir die L297+L298 Kombi empfehlen.
Diese Kombination ist veraltet, schrottig ! nimmt lieber TA8435 o.ä.

>Der L297 bietet auch eine Stromsteuerung für den Motor an.
das macht fast jede Endstufe für Schrittmotor.

Gruss

von Tugrul Ö. (doenerman)


Lesenswert?

>Diese Kombination ist veraltet, schrottig....

Nur weil es alt ist, muss es nicht schlecht sein !

Und warum ist es "schrottig" ? Bitte kläre mich auf. Ich weiß es echt 
nicht.

von Thany (Gast)


Lesenswert?

> Und warum ist es "schrottig" ? Bitte kläre mich auf. Ich weiß es echt
>nicht.

in meiner Augen ist die Kombination "schrottig" weil:
a)  brauche 2 ICs und sage und schreibe 8x 3A schnelle Diode
b)  kein Micro-Betrieb möglich
c)  Stromsenkung (Sleepmodul) nur mit Aufwand möglich.
d)  Teuer

Gruss

von Ozul (Gast)


Lesenswert?

Hallo JensM,

>Die Laufruhe ist ein Problem. Wenn man ein System mit
>einem Schrittmotor sicher betreiben will, so muss die Kraft (Drehmoment)
>des Schrittmotors groesser sein als die maximal auftreteneden Kraefte
>des angetriebenen Systems. Dann spürt man aber die Schritte.

Worum es mir geht: Die Scheibe mit dem Gewicht von 12Kg soll auf 
Nenndrehzahl gebracht, ab dann die Drehzahl stabil gehalten werden.
Das verwendete Lager für die Scheibe ist sehr gut, und es wird keine 
weiteren Beeinflussenden Größen geben, also keine zusätzlichen 
Wiederstände gegen das Drehen.
Daher hatte ich mir überlegt das ein "schwacher" Schrittmotor wohl 
länger braucht bis die Drehzahl erreicht ist, jedoch dadurch die 
Laufruhe deutlich verbessert werden kan, da der Motor die Masse nicht so 
unter Kontrolle hat.

>Dies kann durch eine Schrittmotorsteuerung mit Mikroschritten verbessert
>werden, setzt aber geeignete Ansteuerung und Motoren voraus.

Hast du einen Vorschlag, was ein geeigneter Motor und Ansteuerung sein 
kan?
Ich wäre sehr dankbar.

>Mit der bisherigen Bescheibung des Systems sehe ich noch wenige
>Vorteile, sondern mehr Nachteile durch einen Antrieb mit einem
>Schrittmotor gegenüber einem Antrieb mit einem Gleichstrom Getriebemotor
>und PWM.

Ich möchte die Drehzahl sehr stabil halten, und einen Regelkreis 
vermeiden.
Da scheint mir ein Schrittmotor am geeignetsen da über die Ansteuerung 
die Drehzahl gut in den Griff zu bekommen ist. Ein Getriebe kommt meiner 
Meinung nach nicht in frage, da ich ein möglichst leise, Optimal wäre 
unhörbare Lösung suche, und ich befürchte das es kaum geräuschareme 
Getriebe gibt. Ich lasse mich jedoch gerne eines besseren belehren.

viele Grüße

von Michael W. (retikulum)


Lesenswert?

Was für einen Schrittwinkel haben die Motoren bei einem Vollschritt?
Michael

von Ozul (Gast)


Lesenswert?

Hallo Michael W.

>Was für einen Schrittwinkel haben die Motoren bei einem Vollschritt?

Der RDM 57 von Berger macht 24 Schritte/Undrehung, also gehe ich mal von 
15° je Vollschritt aus.

von JensM (Gast)


Lesenswert?

Ein Antrieb mit einem Gleichstrommotor erfordert natuerlich eine 
Regelung.
Mit einer Drehzahlmessung vor einem Getriebe haette man eine hohe 
Messfrequenz und könnte damit sicher eine vernünftige Regelung 
erreichen.

Nun zur Loesung mit dem Schrittmotor:

Wenn der Teller zu schwer ist und der Schrittmotor ihn nicht mit einem 
Schritt bewegen kann, so werden Schrittverluste auftreten. Es kann dazu 
führen, dass sich der Teller gar nicht bewegt.
Wenn der Schrittmotor elektrisch 2 Schritte weiter ist als die Mechanik 
wirkt die Kraft entgegen, weil der Schrittmotor auf dem vorherigen 
Schritt einrasten moechte. Das entstehende Drehmoment des Schrittmotors 
ist dann mal in die eine Richtung und dann in die andere Richtung. Der 
Drehteller bleibt dann stehen.

Ich könnte mir vorstellen, wenn die Verbindung zwischen Schrittmotor und 
Drehteller weich ist (der Schrittmotor macht einen Schritt dann folgt 
der Drehteller), dass man mit einer Rampe (langsam steigende 
Tacktfrequenz) den Teller dann zum drehen bringen könnte. Die weiche 
Verbindung bringt dann natürlich auch wieder bessere Laufruhe.

Eine Mikroschrittsteuerung würde dabei auch Vorteile bringen.
Der oben genannte TA8435 (entspricht dem IMT901) kann das.

Zum Anfahren von exakten Positionen mit Schrittmotoren im 
Mikroschrittbetrieb braucht man Motoren mit geringen Selbsthaltemoment 
(geringes Einrasten des Motors ohne Strom). In diesem Fall ist dies 
jedoch nicht so wichtig.
Man kann dann den Schrittmotor trotzdem im Mikroschrittbetrieb 
betreiben.

MfG JensM

von Michael W. (retikulum)


Lesenswert?

Jens, kleine Korrektur. Wenn der Motor den elektrischen Impulsen nicht 
nachkommt, hinkt er 4 Vollschritte hinterher. Wenn ein Schrittmotor 
bestromt ist und sich nicht dreht und die Motorwelle wird gedreht, 
rastet er 4 Vollschritte weiter wieder ein. Zumindest bei Motoren mit 2 
Spulenanschlüssen.
Michael

von Ozul (Gast)


Lesenswert?

>Ich könnte mir vorstellen, wenn die Verbindung zwischen Schrittmotor und
>Drehteller weich ist (der Schrittmotor macht einen Schritt dann folgt
>der Drehteller), dass man mit einer Rampe (langsam steigende
>Tacktfrequenz) den Teller dann zum drehen bringen könnte. Die weiche
>Verbindung bringt dann natürlich auch wieder bessere Laufruhe.


Ist ein Gummiriemen als weiche Verbindung dienlich?

von Michael W. (retikulum)


Lesenswert?

Dann lieber Zahnriemen und eine Untersetzung schaffen. Oder einen 
Schrittmotor mit kleinerem Vollschritt, so um die 1,8°. Oder beides.
Michael

von Thany (Gast)


Lesenswert?

Eine Masse von 12 Kg mit so einem kleinem Motor zu bewegen, halte ich 
für sehr gewagt.
Der Motor kriegst du nicht zum Laufen. Der rattert nur rum...

von Carsten S. (dg3ycs)


Lesenswert?

Hi,

Ozul schrieb:
> Hallo
>
> also die Drehzahl soll gemessen und angezeigt werden, es soll keine
> Nachregelung erfolgen.
>
> die Anzeige deswegen, da ich ja einmal eine Vorauswahl an Drehzahl habe,
> diese aber über + und - tasten beeinflussbar sein soll. Das
> Übersetzungsverhältniss kriege ich nicht sauber ausgerechnet, da dachte
> ich warum dem µC nicht einfach messen lassen?
>
> Also kein Regelkreis.
> Ich denke dan passt es zu dem was Ihr geschrieben habt oder seht ihr nen
> Denkdreher?

Also entweder hast du noch einen Denkfehler, oder ich liege gerade neben 
der Spur...

Um den Motor zu drehen must du Impulse ausgeben. Je nach ansteuerung 
(bzw. nachgesteuerter Elektronik) entweder nur einen Taktimpuls oder 
halt verschiedene Binärfolgen. Aber das ist ja zweitrangig.

Mir fallen gerade zwei Möglichkeiten ein eine kontinuierliche Drehung 
hinzubekommen. Entweder die einfache mit einer simplen Endlosschleife 
incl. änderbare Warteschleife oder die etwas kompliziertere aber 
wesentlich proffessionellere durch einem Interrupt ausgelöst von einem 
Zähler.

In beiden Fällen musst du jeweils einen Wert im µC verändern um eine 
Drehzahl eingestellt zu bekommen. Anhand der Werte weißt du dann wie oft 
der Schrittmotor einen Impuls pro Sekunde bekommt. Und damit ist es dann 
ein leichtes die U/min zu berechnen. Auf jeden Fall wesentlich leichter 
als mittels Sensoren den Messwert aufzunehmen, das Messergebniss dann im 
µC zu bearbeiten und aus dem Ergebniss der Bearbeitung dann eine Anzeige 
zu generieren.

ODER liegt das Problem dabei das du nicht weißt wie du aus dem 
Verzögerungswert(Endlosschleife) bzw. Ladewert des Timers(IRQ) die 
Tatsächliche Anzahl an Impulsen pro min/sec zu errechnen ist?

Zum Rest:
Ich denke auch das dein Motor etwas zu schwach ist für das was du vor 
hast. Ausserdem ist ein Motor mit einem Schrittwinkel von 15Grad alles 
andere als Laufruhig. Besonders bei so niedrigen Drehzahlen!
Mit geringerem Schrittwinkel würde es besser!

Hier wäre ein Gleichstrommotor mit Nachregelung sicherlich die bessere 
Alternative. Entweder mit Getriebe oder oder auch ohne (Wobei das Ohne 
aufgrund der geringen Drehzahl ggf. eine wesentlich "trickreichere" 
Ansteuerung notwendig macht)

Gruß
Carsten

von mec (Gast)


Lesenswert?

nur so zur info:
Masse ist egal, trägheitsmoment ist das entscheidene.
Aber mit großer masse kann es leicht sein, das das trägheitsmoment auch 
groß ist.
Und dann natürlich die Lagerreibung, die hängt oft von der Masse ab.

Also, wie ist das Trägheitsmoment und die Reibung?

von Ozul (Gast)


Lesenswert?

Hallo Ihr Zwei,

>Carsten Sch.
>ODER liegt das Problem dabei das du nicht weißt wie du aus dem
>Verzögerungswert(Endlosschleife) bzw. Ladewert des Timers(IRQ) die
>Tatsächliche Anzahl an Impulsen pro min/sec zu errechnen ist?

Auf dem Schrittmotor soll ein Rädchen drauf über das ein Riemen läuft.
Der Riemen überträgt die Kraft auf die Scheibe.
Da ich das Übersetzungsverhältniss nicht so genau herausbekomme, würde 
ich durch eine Verrechnung der Steuerimpulse nur einen "Näherungswert" 
bekommen. Ausserdem hätte ich eine Kontrolle ob ich mit meinen Pulsen 
richtig liege oder nicht.

>mec:
>Also, wie ist das Trägheitsmoment und die Reibung?

Zu dieser Frage habe ich keine sinvolle Antwort. Es ist ein 
Bronzeteller, durchmesser ca. 15-20 cm bei einer Dicke von ca.4-7 cm, 
Gewicht ca. 12 Kg.
das Lager ist ein Bronze Synther Lager, das mit wenig Öl geschmiert 
wird.
Die Achse im Lager hat einen Druchmesser von ca. 10mm. wobei die Achse 
senkrecht steht, und der Bronzeteller hat in der Mitte eine Bohrung wo 
die Achse durchgeht. Der Teller soll in der Waagerechten drehen.
Besser kann ich es gerade nicht beschreiben

von Carsten S. (dg3ycs)


Lesenswert?

Ich Nochmal:

> Ozul schrieb:
> Auf dem Schrittmotor soll ein Rädchen drauf über das ein Riemen läuft.
> Der Riemen überträgt die Kraft auf die Scheibe.
> Da ich das Übersetzungsverhältniss nicht so genau herausbekomme, würde
> ich durch eine Verrechnung der Steuerimpulse nur einen "Näherungswert"
> bekommen. Ausserdem hätte ich eine Kontrolle ob ich mit meinen Pulsen
> richtig liege oder nicht.
>

Das Übersetzungsverhältnis ist doch einfach ;-)
Unfang des Rädchens auf dem Schrittmotor geteilt durch den Umfang der 
Scheibe (bzw. Auflagestelle des Riemens. Was du halt mechanisch 
realisierst) Und schon hast du das Verhältnis, Genauigkeit hängt von der 
Genauigkeit des Umfangs ab. Wenn du sehr genaue Angaben hast, so ist die 
Genauigkeit fast 100%

Wobei diese Frage ja eigendlich erst einmal zweitrangig ist!
Zuerst einmal solltest du deinen Motor überhaupt am drehen haben, dann 
kann man in Ruhe immer noch über die Art der Drehzahlermittlung 
nachdenken!

Aber mal eine Andere Frage:
Soll der Hauptzweck dieser Sache das später 100% laufende Projekt sein 
und das "lernen" ist nur Beiwerk, oder möchtest du hauptsächlich etwas 
lernen und das "funktionierende Projekt" ist der nette Nebeneffekt.

Wenn das "Lernen" im vordergrund steht, so würde ich sowieso erst mal 
Schrittweise vorgehen und nicht sofort alles in einem Schritt aufbauen.
Also zuerst mal den µC Teil mit dem Display aufbauen, Ausserdem da du 
Schreibst "Einstieg in die PIC Welt" zusätzlich auch noch ein paar 
einfache LEDS für simple Debugfunktionen vorsehen um zu sehen ob das 
Programm überhaupt läuft wenn das Display dunkel bleibt ;-). Sobald das 
läuft dann die Schrittmotor Hardware auf einer eigenen kleinen Platine 
und erste Tests mit einem Schrittmotor ohne weitere Mechanik, Dann die 
Mechanik ordentlich aufbauen. Und wenn dann alles läuft kannt du ja die 
Elektronik noch einmal komplett ordentlich sauber als ganzes Aufbauen 
;-)
(ggf. unter wiederverwendung der "teuren" Bauteile wie Display, µC und 
Schrittmotortreiber)
So kannst du einfach von unten an einsteigen und hast auch noch die 
Möglichkeit experimentell einfach Komponennten austauschen bzw. einfach 
mal schauen wie sich verschiedene Ausführungen verhalten (z.b. 
Schrittmotoransteuerung, anderer Schrittmotor, oder vieleicht doch ein 
Gleichstrommotor) ohne gleich ALLES neu Aufbauen zu müssen.

Gruß
Carsten

P.S. Gibt es eigendlich einen Grund warum es gerade dieser Schrittmotor 
sein soll? Ansonsten würde ich vorschlagen diesen höchstens für erste 
Gehversuche einzusetzen und später einen mit mehr "power" und einen 
kleineren Schrittwinkel verwenden.


Aber

von Ozul (Gast)


Lesenswert?

>Carsten Sch.

>Das Übersetzungsverhältnis ist doch einfach ;-)

Stimmt, jedoch sind meine Messtoleranzen zu groß glaube ich, ist auch 
erst einmal zweitrangig.

>Zuerst einmal solltest du deinen Motor überhaupt am drehen haben,

Ganz deiner Meinung.

>Aber mal eine Andere Frage:
>Soll der Hauptzweck dieser Sache das später 100% laufende Projekt sein
>und das "lernen" ist nur Beiwerk, oder möchtest du hauptsächlich etwas
>lernen und das "funktionierende Projekt" ist der nette Nebeneffekt.
>Wenn das "Lernen" im vordergrund steht, so würde ich sowieso erst mal
>Schrittweise vorgehen und nicht sofort alles in einem Schritt aufbauen.

Also das was ich mir als Aufgabe gestellt habe soll in einer 
überschaubaren Zeit fertig werden. Und wen möglich besser sein als "nur" 
100% funktionieren.
Aber, der Lerneffekt ist mir sehr wichtig, und ich würde ihn von der 
Priorität durchaus bei 50% ansiedeln. Daher bin ich schon fleissig am  C 
Tutorials lesen, und Code in den µC Schreiben, am Verändern, und schauen 
was passiert. Ich bin in der Glücklichen Situation so ein Development 
Kit zu besitzen, da sind ohne ende LED's, Taster, 7 Segmentanzeigen, ein 
2 Zeiliges Display, ein Grafikdisplay..... dabei, und auch ein ganz 
kleiner unipolarer Schrittmotor der so wenig power braucht das ihn der 
PIC direkt treiben kan. Also alles da um die Grundlagen erst einmal zu 
verstehen, parallel frage ich euch Löcher in die Bäuche, noch bevor ich 
mich wirkich für etwas festlege.
Sobald dann klar ist in welche Richtung es geht, wird als erstes die 
Motortreiberstufe implementiert (freifliegend) um dan schon mal damit 
arbeiten zu können, und dan immer weiter wie du auch beschrieben hast.
Und wenn dann alles so läuft wie ich mir das vorstelle, werde ich 
zusehen das ich irgendwo eine Platine ätzen lasse, um das dan alles in 
die endgültige Formzu bringen, und zu guter letzt kommt alles an seinen 
Platz.

>Gibt es eigendlich einen Grund warum es gerade dieser Schrittmotor
>sein soll? Ansonsten würde ich vorschlagen diesen höchstens für erste
>Gehversuche einzusetzen und später einen mit mehr "power" und einen
>kleineren Schrittwinkel verwenden.

Die Gründe die für diesen Schrittmotor sprechen sind:
Das ich davon 3 Stück hier liegen habe,
und das sie sehr leise "unhörbar" sein sollen.
Das ist mir wichtig also das sehr leise. Das ein Motor mit etwas mehr 
Power und kleinerem Schrittwinkel Sinn macht, habe ich verstanden.
Von daher möchte ich mich nicht zwingend auf diesen Motor festlegen.
Er ist halt da, und für die ersten Gehversuche mit Treiberstufe wird es 
sicher nicht verkehrt sein.
Ursprünglich hatte ich gedacht das dieser Typ ok ist, aber ich lerne 
gerne dazu.

vielen Dank,
und viele Grüße

von Ozul (Gast)


Lesenswert?

Was haltet Ihr von diesem Motor:

Nennspg.: 4,5V
Strom: 1,8A
Wiederst.: 2,5Ohm
Indukt.: 6,5mH
Haltemom.: 57Ncm
Schrittwinkel: 0,9Grad

Kosten: 19,90€


danke schon mal für eure Meinung

Grüße

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.