Forum: Mikrocontroller und Digitale Elektronik Umdrehungen Schrittmotor über Bedienfeld eingeben etc.


von Kim S. (dj_kimmekk)


Lesenswert?

Hallo,
ersteinmal vorweg: Ich bin ganz neu hier und habe auch noch keine 
Erfahung mit diesem Themengebiet. Allerdings interessiert es mich sehr 
und ich habe auch schon einige Anwendungsbereiche. Ich habe auch einen 
Bekannten der mir bei einfachen Fragen helfen kann.

Nun zu meinem Vorhaben:
Ich möchte ein kleines "Rad" antreiben, welches auf einem Schrittmotor 
montiert werden soll. Das Rad soll z.B. einen kleinen Schlauch auf eine 
bestimmte Länge ausfahren (von ca 600 - 3000 mm).
Über ein kleines Bedienfeld (Computertastatur o.ä.) möchte ich die Länge 
eingeben können.
Nachdem der Schlauch auf die eingestellte Länge ausgefahren wurde, soll 
ein Servo betätigt werden. Dieses drückt auf einen Knopf, der einen 
pneumatischen Zylinder auslöst, sodass der Schlauch abgeschnitten wird.

Ideal wäre es, wenn ich über das besagte Bedienfeld auch die Anzahl der 
Wiederholungen einstellen könnte. Somit könnte ich die Länge und die 
Anzahl der benötigten Schlauchabschnitte einstellen und müsste den 
Vorgang nicht immer wieder manuell auslösen.

Ich habe mir noch keine Gedanken über Controller etc gemacht, da ich neu 
auf diesem Gebiet bin und ich noch nicht weiß, welcher für so eine 
Anwendung geeignet wäre.

Gibt es die Möglichkeit, so etwas mit relativ einfachen Mitteln zu 
lösen?
Ich bin für jede Hilfe dankbar.

Beste Grüße,
Kim

von Amateur (Gast)


Lesenswert?

Ein Schrittmotor am besten mit Getriebe kann dieses Problem lösen

...aber

Da hängt ein ganzer Rattenschwanz von Wenn’s mit dran.

Schon die Spule, von der der Schlauch abgerollt werden soll, darf kein 
Eigenleben führen. Z.B. nach dem Ziehen weiterrollen. Stichwort Haspel.

Dann brauchst Du eine Strecke, auf der der Schlauch möglichst 
reibungsfrei läuft. Auch nicht ganz einfach, da der Schlauch 
wahrscheinlich einen Drall hat.

Dann brauchst Du ein raues, angetriebenes Rad mit definiertem Umfang und 
ein mitlaufendes Gegenstück. Die, aufeinander gepresst, bilden den 
Antrieb. Auch das ist nicht ganz ohne, da der Schlauch nicht rutschen 
darf, aber auch keine Raustellen des Antriebes aufweisen soll. Hier 
kommt auch die gewünschte Genauigkeit mit ins Spiel.

Das Abscheren bzw. die zugehörige Führung sollen auch nicht 08/15 sein. 
Da auch hier die Genauigkeit mit reinspielt und das Aussehen der 
Schnittkante.

Soll's ein Automat sein (100 Stück à 30 cm), so musst Du jeden Schritt 
überwachen.

Also mechanisch, elektrisch und elektronisch machbar, aber 
Anspruchsvoll. Vor allem, wenn verschiedene Durchmesser oder Typen 
verarbeitet werden sollen.

von Kim S. (dj_kimmekk)


Lesenswert?

Hallo,
erstmal Danke für die schnelle Antwort.

Also das mit den ganzen "Wenn's" hatte ich auch schon teils 
durchgespielt.
Es ist mir bewusst dass kein Schlupf vorhanden sein darf. Einen 
ausreichend griffigen Antrieb mit "Gegenrolle" habe ich mir schon 
überlegt.

Der Schlauch ist ziemlich weich und hat keinen Drall. Auch der Nachlauf 
der Rolle ist kein Problem. Das Abscheren des Schlauches ist bereits 
geregelt und funktioniert einwandfrei.

Mir geht es nur um die Elektronik/Steuerung. Ich kann mir vorstellen 
dass es sehr anspruchsvoll ist. Ich möchte es aber trotzdem gern 
versuchen und würde mich freuen wenn ich von euch die benötigte 
Unterstützung bekomme.

Mein größtes Problem ist, dass ich nicht weiß wie das mit der Eingabe 
über das Bedienfeld funktionieren soll. Das mit dem Servo und dem Motor 
würde ich mit Hilfe vom Bekannten vielleicht auch noch hinbekommen. Es 
wäre aber schön wenn ihr mir das hier auch erklären würdet.
Welche Bauteile würde ich denn dafür gebrauchen? Ein Bekannter hat mir 
Arduino empfohlen. Ist es sinnvoll die Bauteile zu verwenden?

von Helge A. (besupreme)


Lesenswert?

Ein Servo, das auf einen Knopf drückt? Für sowas gibts fertige Ventile 
mit elektrischem Anschluß.

Ist denn schon irgendwelche Mechanik vorhanden, die genutzt werden kann? 
Oder Elektronik?

--

Ah überschneidung..


Wenn du einen Schrittmotor angesteuert bekommst, ist doch das Abfragen 
von ein paar Knöpfen machbar..?? Was für eine Steuerung hast du denn da, 
oder willst du nehmen?

von Teo D. (teoderix)


Lesenswert?


von Kim S. (dj_kimmekk)


Lesenswert?

Das mit den elektrischen Ventilen wäre natürlich noch schöner.
Ich mache nebenbei noch ein bisschen Modellbau und habe daher noch ein 
Servo übrig dass ich dafür nutzen könnte. Daher kam mir die Idee mit dem 
Servo.

Wenn die elektrischen Module nicht all zu teuer sind, würde ich diese 
aber vorziehen.

Mein Bekannter sagte gerade, dass er einen "normalen" Gleichstrommotor 
zum laufen bekommt. Mit Schrittmotoren hat er noch nicht gearbeitet. Da 
wäre ich also auch auf eure Hilfe angewiesen.

Ich hatte mir ein Modul angeschaut, mit dem Schrittmotoren angesteuert 
werden können. Das nennt sich "Arduino Motor Shield R3". Das ist als 
Lernpaket angegeben. Welche Steuerungen ich zusätzlich noch benötige, 
weiß ich noch nicht.
Ob das Sinnvoll ist oder welche Module/Steuerungen ich da besser 
verwenden könnte, weiß ich allerdings auch nicht. Da bin ich also 
vollkommen offen für Vorschläge.

von Kim S. (dj_kimmekk)


Lesenswert?

Ja, die Tastatur wäre schon ganz gut. Dann müsste ich die eingetippten 
Zahlen nur noch irgendwo ablesen können. Das wird dann aber 
wahrscheinlich das kleinste Problem darstellen.

von Teo D. (teoderix)


Lesenswert?


von Helge A. (besupreme)


Lesenswert?

Das von dir erwähnte motor shield ist OK, wenn du nur einen kleinen 
Motor antreiben willst. Wenn du dich noch nicht auf eine Ansteuerung 
festgelegt hast, plane den Antrieb für deinen Abroller. Der Motor muß 
stärker sein als die Kraft, die dein Abroller ausüben muß. Einen 
Sicherheitsfaktor von mindestens der 3-fachen Kraft würde ich 
einrechnen. Wenn du dann einen passenden Motor hast, kontrolliere ob der 
motor shield stark genug für den Motor ist.

von Kim S. (dj_kimmekk)


Lesenswert?

Alles klar, so werde ich das machen.
Gibt es denn ein gutes Buch, mit dem ich die Programmierung relativ 
einfach erlernen kann? Evtl. eines mit vielen Beispielen? Oder ein gutes 
"Standardwerk"?

von Thorsten O. (Firma: mechapro GmbH) (ostermann) Benutzerseite


Lesenswert?

Willst du etwas selber bauen oder etwas fertiges kaufen? Wenns etwas 
fertiges sein soll, könnte das eine Lösung sein:
http://www.mechapro.de/schrittmotorensteuerung.html
Die Endstufe (d.h. das Leistungsteil für den Motor) ist da noch nicht 
mit drinn und kann passend zum Motor gewählt werden.

Mit freundlichen Grüßen
Thorsten Ostermann

von Kim S. (dj_kimmekk)


Lesenswert?

Hallo,
das sieht auf jeden Fall schonmal sehr interessant aus. Ich wollte mir 
zwar ursprünglich selbst etwas bauen aber vielleicht hole ich mir auch 
so ein Teil. Das spart ja doch eine Menge arbeit.
Ich muss mal gucken wie das kostenmäßig aussieht.

Danke und Gruß
Kim

von chris (Gast)


Lesenswert?

Pollin 810 027 als Schrittmotor Treiber
Pollin 810 148 als Controller (als Arduino oder mit GCB Basic 
programmierbar)
Beispiel kann ich liefern, kein Problem.

von Kim S. (dj_kimmekk)


Lesenswert?

Hallo und danke! Ein Beispiel wäre super.
Kannst du mir das per Mail schicken oder würdest du es hier auch posten?

Danke und Gruß
Kim

von Chris S. (schris)


Lesenswert?

Kann ich auch hier machen. Schreib genau, was gemacht werden soll, in 
welcher Sequenz. Liest du auch die Länge des Schlauches zurück, mittels 
eines quadratur encoder ?

Hier ein kleines Beispiel für Arduino, Pins müssten noch angepasst 
werden.
1
#include <AccelStepper.h>
2
#include <LiquidCrystal.h>
3
4
// Define a stepper and the pins it will use
5
6
AccelStepper stepper(1, 9, 8);
7
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
8
int pos = 3600;
9
10
void setup()
11
{  
12
  // set up the LCD's number of columns and rows:
13
  lcd.begin(8, 2);
14
  lcd.print("DEMO PRG");
15
16
  stepper.setMaxSpeed(3000);
17
  stepper.setAcceleration(1000);
18
}
19
20
21
void loop()
22
{
23
24
  if (stepper.distanceToGo() == 0)
25
  {
26
   lcd.setCursor(0, 1);
27
   lcd.print("        "); // löscht Zeile
28
   lcd.setCursor(0, 1);   
29
   lcd.print(millis()/1000); // Sekunden seit Start.
30
   
31
   delay(500);           // halbe Sekunde Warten
32
    pos = -pos;          // Richtung invertieren
33
    stepper.moveTo(pos); // und Steps fahren, relativ.
34
  }
35
36
  stepper.run();
37
38
}

von Thorsten O. (Firma: mechapro GmbH) (ostermann) Benutzerseite


Lesenswert?

Hallo chris,

> Pollin 810 027 als Schrittmotor Treiber

Das Ding kann man vergessen, die Schaltung macht ja nichtmal eine 
Stromregelung geschweige denn Mikroschritt o.ä.. Das bedeutet, die 
Versorgungsspannung muss auf den Motor angepasst werden, und die 
Wicklungen sind immer voll bestromt, auch wenn der Motor nicht dreht 
(Verlustleistung).

Für das Geld würde ich eher eins von den diversen Motorshields für den 
Arduino empfehlen, auch wenn bei den Teilen immer davor warne, dass die 
vom (thermischen) Design her eine Katastrophe sind und nur deutlich 
unterhalb der versprochenen Maximalströme betrieben werden sollten. 
Watterott hat da z.B. verschiedene Boards für schmales Geld im Programm.

Mit freundlichen Grüßen
Thorsten Ostermann

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.