Forum: Mikrocontroller und Digitale Elektronik Schrittmotor-Daten für Software WOHER nehmen? (Arduino, stepper.h)


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Roth (Gast)


Bewertung
-1 lesenswert
nicht lesenswert
Ich habe mich mit eurer großartigen Hilfe :) in die 
Schrittmotorsteuerung eingelesen und weiß nun in etwa, wie man so einen 
Motor zum Laufen bringt. Ein paar Details verstehe ich leider noch nicht 
ganz bzw. weiß nicht, wo ich die passenden Werte "herzaubern" soll.

Der Einfachkeit halber verwende ich für die Versuche einen Arduino. Wenn 
alles funzt, portiere ich wahrscheinlich auf ATMega. Eine Platine muss 
ich sowieso bauen.

Noch geht es aber um ARDUINO.
Anbei ein Beispielskript für die Steuerung eines Schrittmotors.
Das Skript ist von hier: 
https://www.arduino-tutorial.de/motorsteuerung-eines-schrittmotors-stepper-motor/
1
/* STEPS muss auf die Anzahl der Stepps des verwendeten Motors angepasst werden */
2
#define STEPS 100
3
4
// eine Instanz aus der Klasse Stepper wird erzeugt
5
// sie bekommt die Anzahl der Steps und die Pins, an die der Schrittmotor
6
// angeschlossen ist übermittelt
7
Stepper stepper(STEPS, 8, 9, 10, 11);
8
9
int previous = 0;
10
11
void setup(){
12
  stepper.setSpeed(30);  // setzt die Geschwindigkeit des Motors in Umdrehungen pro Minute
13
}
14
15
void loop(){
16
  int val = analogRead(0);
17
  // dreht den Motor ja nach Sensorwert (Potentiometer)
18
  stepper.step(val - previous);
19
  previous = val;
20
}

Meine beiden Fragen:
1.
1
#define STEPS 100
Woher kriege ich den Initialwert der Konstante STEPS ?

2.
1
stepper.setSpeed(30)
'setSpeed' ist doch vom Motor abhängig, wenn ich es richtig verstehe. 
Wenn der Wert zu hoch ist, müsste es zu Fehlfunktionen kommen, oder 
nicht? Wie finde ich den richtigen Wert heraus?

Es geht um diesen Schrittmotor:
Schrittmotor 91255008 für VDO Kombiinstrument VW
http://www.xenone.de/Schrittmotoren/Schrittmotor-91255008-fuer-VDO-Kombiinstrument-VW-Audi-Seat-Skoda::1153.html

von Theor (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Die Daten erhält man in der Regel aus dem Datenblatt des Motors.

Bei ausgeschlachteten Bauteilen aus Consumer-Produkten erhält man aber 
fast nie Datenblätter.

Dann bleibt nur: selbst messen.

von Stefan ⛄ F. (stefanus)


Bewertung
0 lesenswert
nicht lesenswert
Roth schrieb:
> Woher kriege ich den Initialwert der Konstante STEPS ?

Aus der Produktbeschreibung bzw. Datenblatt des Motors.

> 'setSpeed' ist doch vom Motor abhängig, wenn ich es richtig verstehe.
> Wenn der Wert zu hoch ist, müsste es zu Fehlfunktionen kommen, oder
> nicht? Wie finde ich den richtigen Wert heraus?

Aus der Produktbeschreibung bzw. Datenblatt des Motors.

Wenn das da nicht drin steht, frage den Hersteller. Wenn der Hersteller 
nicht erreichbar ist und die Doku fehlt, dann ist der Motor bestenfalls 
zum Experimentieren (ausprobieren) geeignet, aber nicht für gezielte 
Konstruktion.

Nun müssen wir beachten, dass dies hier kein handelsüblicher Motor ist, 
sondern ein Ersatzteil für Autos. An die technischen Daten wirst du 
eventuell gar nicht heran kommen und der Hersteller wird sie womöglich 
als Betriebsgeheimnis bewahren.

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Roth schrieb:
> 'setSpeed' ist doch vom Motor abhängig, wenn ich es richtig verstehe.

Nicht nur vom Motor, sondern auch von deinem 
Schrittmotortreiber/Versorgungsspannung und dem im Treiber gewählten 
Schrittmode, i.e. Vollschritt/Halbschritt/Viertelschritt/...

Um den Motor auf seine Zielgeschwindungkeit zu bringen und wieder auf 
eine Zielposition abzubremsen, brauchst du meist auch eine 
Beschleunigungs-/Bremsrampe.

von Roth (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Also muss ich am Mo. doch zum VDO-Händler. Die haben da einen Spezi. Ich 
hoffe, der weiß das.

Gibt es irgendwelche Über-den-Daumen-Werte, welche die Profis bei dem 
VDO-Schrittmotor als halbwegs funktionell ansehen würden? Ich habe damit 
nichs großes vor. Lediglich ein kleiner Zeiger soll um max 180° bewegt 
werden. So wie im Cockpit eines Autos, wozu diese Schrittmotoren von VDO 
ja gedacht sind.

von Michael B. (laberkopp)


Bewertung
0 lesenswert
nicht lesenswert
Roth schrieb:
> Woher kriege ich den Initialwert der Konstante STEPS ?

Das ist die Anzahl der Schritte pro Umdrehung.
Ob des Motors alleine oder des Motors inklusive angeflanschtem Getriebe 
liegt an die, ob du die Drehzahl des Mtors oder der Antriebswelle 
vorgeben willst, das kann der treiber-Schreiber nicht wissen.

> 2.stepper.setSpeed(30)'setSpeed' ist doch vom Motor abhängig, wenn ich
> es richtig verstehe.

Nein, von deinem ganzen Aufbau. Wenn der Motor was Schweres anzutreiben 
hat, wird ihm das nicht so schnell gelingen. Auch hier kann der 
Treiber-Schreiber nicht wissen wie dein Aufbau ist.

Man kann mit Drehmomentkurve des Motors und träger Masse und 
Reibungswerten des bewegten Teils was vorher ausrechnen, aber all das 
hast du nicht.

> Wenn der Wert zu hoch ist, müsste es zu Fehlfunktionen kommen, oder
> nicht?

Richtig.

> Wie finde ich den richtigen Wert heraus?

Probieren ?

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Roth schrieb:
> Gibt es irgendwelche Über-den-Daumen-Werte, welche die Profis bei dem
> VDO-Schrittmotor als halbwegs funktionell ansehen würden?

Der Motor darf bei voller Bestromung gut handwarm werden. Bei so einem 
Billigmotor kann es gut sein, dass der für 12V Nennspannung ausgelegt 
ist.

Du könntest den Widerstand der Wicklungen messen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.