Anpassung eines im Handel erhältlichen Schrittmotors an die Erfordernisse von
fischertechnik
Schrittmotoren lassen sehr elegante Positionierungen zu, besonders bei
Plottern und Robots ist das nützlich, deswegen hier weitere Hinweise zum Einsatz von
Schrittmotoren.
Der Schrittmotor des fischertechnik Bausatzes Plotter/Scanner
ist bei http://www.knobloch-gmbh.de als
Einzelteil für knapp 50 DM (Stand Nov 01) erhältlich (Schrittmotor 32311),
zusätzlich : Teilebeutel 75045 (knapp 40DM ebenfall Knobloch) bei http://www.conrad.de werden für ca. 30 DM
Schrittmotoren angeboten, der oben abgebildete war ein Schnäppchen für 3,50 DM. Man
sieht, es gibt da deutliche Unterschiede. Am sinnvollsten wird es wohl sein, in einem
örtlichen Elektronik-Fachgeschäft nach Angeboten zu suchen. Dabei sollte man
2-Strang-Motoren mit einem Strangwiderstand von bis zu ca. 60 Ohm bevorzugen. Motoren mit
mehr Strängen sind nutzbar (siehe Bild) aber nur mit 2 Strängen (Magnetsystemen)
sinnvoll an ein fischertechnik Interface anschließbar.
In jedem Fall braucht man Zubehör (wird auch bei 32311 nicht
mitgeliefert) zum Einbau in die fischertechnik Umwelt. Bei dem Motor im Bild war es eine
normale Experimentierplatine mit 4 mm Metallschrauben und Distanzhülsen, die Motorwelle
(mit 5 mm) wurde mittels eines Aquarien-Luftschlauches an die 4mm von fischertechnik
angepaßt. Phantasie ist gefragt.
Schrittmotoren haben mindestens zwei Magnetsysteme und benötigen dafür
zwei Motorausgänge am fischertechnik Interface, bei Zweien wirds also schon eng, wenn man
einen Motorausgang für andere Zwecke freimachen will ist ein Kompromiß a la Plotter/Scanner 30 571 angesagt. Motoren mit mehr als zwei
Magnetsystemen (und sechs Anschlußkabeln, wie der im Bild) sind auch einsetzbar, man kann
die Mittenanschlüsse schlicht ignorieren.
Zur Programmierung in Visual Basic siehe Schrittmotor
32311, Positionierung und Plotter/Scanner
hier ein Beispiel in Turbo Pascal, das sich auch leicht an Delphi ( unter Einsatz von umFish.ZIP ) anpassen läßt :
procedure p_x;
procedure m_x;
procedure p_y;
procedure m_y;
procedure home;
procedure move(x,y:real);
procedure origin;
procedure set_origin(x,y:real);
procedure scale(x1,x2,y1,y2:real);
procedure line(x,y:real);
procedure rline(x,y:real);
procedure rmove(x,y:real);
procedure box(xa,xe,ya,ye:real;s:integer);
procedure circle(x,y,rx,ry,wa,we:real);
procedure axis(xa,ya,xe,ye,x1,y1,x2,y2:real);
Bild und Programm LeuPlotu.ZIP wurden
freundlicherweise von Hanns-Wilhelm Leuschner ( HaWiLe@aol.com
) zur Verfügung gestellt. |