PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schrittmotorensteuerung mit Matlab



chixtwo
28.09.2005, 14:47
Schrittmotorensteuerung mit Matlab, hats schon mal jemand gemacht?
Tipps?
Was braucht man noch außer Motore, Karte, und Matlab?
Schreibe grad an eine Arbeit, und werde einen Messroboter basteln, auf dem eine Sonde eine vorher festgelegte Fläche abfährt mit Stopps an vorher festgelegten Punkten. also 2 Schrittmotore eine Karte, und der Laptop mit Matlab.

bad-joker
28.09.2005, 15:25
Also willst du regeln oder nur steuern
Ich habe das ganze mal mit Matlab gemacht und zwar habe ich meine Regelung in Simulik aufgebaut und dann in Echtzeitcode übersetzten lassen und das ganze mit xPC-Target betrieben. (ebenfalls von Mathworks).
Was du noch brauchst ist Simulink, xPC-Target einen zweiten PC, Leistungstreiber und Sensorik.
Eventuell kannst du auch RTAI, WindosTarget oder dSpice mit Matlab kombinieren. Von den Kosten her wäre es warscheinlich am billigsten einfach die parallele oder serielle Schnittstelle deines Rechnes anzusprechen und einen Motortreiber mit z.B. RS232 Eingang zu benutzen.
Grüsse
Thomas

chixtwo
28.09.2005, 16:55
Danke, das war ja prompt,

ICh möchte aber nur Steuern, wenn den Verfahrweg pro Schritt weiß dann ist alles im Lot, und brauche warscheinlich nur die Hälfte won dem oben aufgeführten oder? Also nur PC, MAtlab, Target-Software, und die nötigen Treiber für die Motore. Natürlich noch Motore-Hardware.
Wozu war der zweite PC?

Grüße Christian.

Distel
28.09.2005, 17:08
Wenn du ein bischen Geld übrig hast und das ehr ein Prototyp werden soll, brauchst du nur eine dSpace Karte, nen Leistungstreiber für deine zwei Motoren und einen PC mit Simulink.

Gruß Distel

chixtwo
28.09.2005, 17:16
Hallo,

o.k. und was ist ein wenig Geld? Leider wurden die Mittel schon beantragt, und zwar zu knapp. Warscheinlich viel zu knapp für diese Lösung...

Ich wollte es mit Schrittmotoren von Conrad und der dort angebotenen Karte SMC-3000 machen...



Christian.

Distel
28.09.2005, 17:32
Also so ne dSpace Karte kostet mehrere 100€. Kannst ja mal danach googlen. Wenn du wirklich kaum Kohle zur Verfügung hast, musst du wohl auf die Ansteuerung per serielle oder parallele Schnittstelle zurückgreifen. Du kannst ja mal überschlagsmäßig durchrechen was dich billiger kommt. Du könntest auch die Schrittmotoren über nen Mikrokontroller ansteuern und dir deine ganzen Schaltungen selber bauen. Schaltpläne dazu gibt es hier genug.

bad-joker
28.09.2005, 17:57
Hai
Also der zweite PC war für die Echtzeitanwendung angedacht, für xPC Target. Wenn du Windows Target benutzt ist kein weiterer PC notwendig ebensowenig bei dSpace (auser du benutzt die Autobox...).
Aber mit ein paar hunder Euros wirds sehr schwierig, da du bei diesen Systemen nur ausgewählte Karten benutzen kannst die ne Kleinigkeit kosten.
Auswege währen wenn du fit im Programmieren bist, dir die Treiber selber zu schreiben. Auch die Software ist nich gerade billig. Simulink, xPCTargert (WindowsTarget), realTimeWorkshop...
Wenn du allerdings nur Schrittmotoren ansteuerst kannst du auch darauf verzichten und nur ganz einfach Matlab benutzen. Ist dann zwar nicht so konfortabel (und auch nicht echtzeitfähig) aber auch erheblich billiger.
Ein andere Ansatz ist eine Maschine mit Real Time Linux aufzusetzen und dann das ganze in C/C++ zu programmieren. Ist sehr leistungsstark und die Software ist grösstenteils kostefrei.
Grüsse
Thomas

chixtwo
06.10.2005, 12:31
Ich muss allerdings noch, wenn die Motore (serielle Schnittstelle) die Sonde positioniert haben auf einen FFT-Analysator zugreifen, die Messung starten, Daten abrufen und speichern. Das soll über eine IEEE-488 Schnittstelle geschehen. Nach der Messung wird die Sonde neu positioniert und die nächste Messung soll gestartet werden.

Mein großes Problem ist der Einstieg in die Programmierung von Matlab und das erstellen von Routinen zum komunizieren mit den Schnittstellen.

Vielleicht hat jemand schon einmal mit Matlab Schnittstellen angesprochen, und hat ein Beispielprogramm. Wichtig ist, ich programmiere in Matlab ohne Simulink.

chi.