Guten Tag liebe Leute Ich habe in der Firma mehrere, über 20 Jahre alte Schrittmotoren mit integriertem Treiber. Es handelt sich um IMS Mdrive23 (Datenblatt anbei). Nun möchte ich die Treiber neu parametrieren (Anzahl Microsteps und Phasenstrom). Die Motoren können nur per ISP-Schnittstelle angesprochen werden. Siehe dazu Seite 19 und 24-28 im angehängten Datenblatt. Das wurde früher entweder per Terminal-Software direkt über die LPT1-Schnittstelle oder per USB-ISP Adapter und entsprechendem Softwaretool gemacht. Einen alten WinXP-Laptop mit LPT1 habe ich - ich habe das entsprechende Kabel gebastelt, aber das hat leider nicht funktioniert. Wahrscheinlich, da (Gemäss Manual?) viele Laptops nur 3,3V -Signale an LPT1 haben. Der Motortreiber braucht 5V-Signale. Einen normalen USB zu LPT1-Adapter habe ich auch, leider erzeugt dieser in Windows keinen virtuellen COM-Port, somit "sieht" ihn das Softwaretool für die Motoren nicht. Die Software und die nötigen Treiber, um die Motoren per originalem USB-Adapter anzusprechen, habe ich auch. Leider ist das benötigte USB-Kabel nach über 20 Jahren natürlich nicht mehr erhältlich... Zudem kostet es ein Vermögen. Hat jemand eine Idee, wie ich diese Motoren ansprechen kann? Kann ich diese ISP-Schnittstelle mit virtuellem COM-Port über USB irgendwie selber "basteln"? Die Schnittstelle sieht ja sehr ähnlich aus wie die, welche ich z.B. früher für die Atmegas gebraucht habe. Mit dem Unterschied, dass es anstelle eines Reset-Pins ein Chip-Select Pin gibt. Ist das der gleiche Pin, nur mit anderer Bezeichnung? Entschuldigt meine etwas unbeholfene Ausdrucksweise. Ich muss dazu sagen, dass ich mich mit Mikrocontrollern und deren Schnittstellen nur sehr oberflächlich auskenne aber das habt ihr wohl gemerkt ;) Danke für jeden Tipp! Hier das originale USB-Kabel: IMSMD-CC300-001 https://novantaims.com/accesories/md-cc300-001-communication-converters/ Und hier
Christian schrieb: > Einen normalen USB zu LPT1-Adapter habe ich auch, leider erzeugt dieser > in Windows keinen virtuellen COM-Port Er müsste ja eigentlich einen virtuellen LPT-Port bereitstellen. Aber manuelles Bitbanging am LPT über USB ist schon recht "implementationsabhängig". > Einen alten WinXP-Laptop mit LPT1 habe ich - ich habe das entsprechende > Kabel gebastelt, aber das hat leider nicht funktioniert. Wahrscheinlich, > da (Gemäss Manual?) viele Laptops nur 3,3V -Signale an LPT1 haben. Der > Motortreiber braucht 5V-Signale. Normalerweise kommen 5V-Geräte auch mit 3V3-Ausgängen noch zurecht. Mein allererster Handgriff wäre hier das Oszilloskop, um zu kontrollieren, ob sich da am CS#, CLK und MOSI überhaupt was plausibles tut.
:
Bearbeitet durch Moderator
Christian schrieb: > Die Motoren können nur per ISP-Schnittstelle angesprochen werden. Nein. Das ist nicht ISP, das ist SPI. Gleiche Buchstaben, komplett andere Funktion.
Vielen Dank für eure Inputs Lothar M. schrieb: > Er müsste ja eigentlich einen virtuellen LPT-Port bereitstellen. Aber > manuelles Bitbanging am LPT über USB ist schon recht > "implementationsabhängig". Den LPT sehe ich im Device Manager. Leider kann ich im Parametriertool vom Motorhersteller nur andere COM-Ports auswählen, nicht aber den LPT. Das liegt dann wohl an der Applikation, da werde ich nichts ändern können. Lothar M. schrieb: > Normalerweise kommen 5V-Geräte auch mit 3V3-Ausgängen noch zurecht. Im Manual des Motors steht leider explizit geschrieben, dass die Schnittstelle mit 3,3V nicht zurechtkommt. Lothar M. schrieb: > Mein allererster Handgriff wäre hier das Oszilloskop, um zu > kontrollieren, ob sich da am CS#, CLK und MOSI überhaupt was plausibles > tut. Gutes Plan. Das werde ich heute Abend mal direkt am LPT des alten Laptops machen. Mal sehen, was an den entsprechenden Pins ankommt. Émile schrieb: > Nein. Das ist nicht ISP, das ist SPI. > > Gleiche Buchstaben, komplett andere Funktion. Stimmt. Danke! Gibt es denn auch andere Möglichkeiten, eine SPI-Schnittstelle zu "basteln"?
Christian schrieb: > Den LPT sehe ich im Device Manager. Leider kann ich im Parametriertool > vom Motorhersteller nur andere COM-Ports auswählen, nicht aber den LPT. > Das liegt dann wohl an der Applikation, da werde ich nichts ändern > können. Der Druckerport taugt nur zum Bitwackeln per Software. Wenn Dein Parametriertool nur serielle Schnittstellen kennt, ist das keine Lösung. Dann aber enthält das "Kabel" zum Motor nicht einfach nur ein paar Drähte, sondern einen µC o.ä., der aus den seriellen eines COM-Ports das SPI-Protokoll erzeugt. Christian schrieb: > Gibt es denn auch andere Möglichkeiten, eine SPI-Schnittstelle zu > "basteln"? Ja, aber es kommt drauf an, mit was für einer Software Du mit dieser Schnittstelle reden willst. Wenn Du die selbstschreiben willst, kannst Du z.B. die MPSSE des FT232R mit der FTDI-DLL verwenden. Das aber wird Dein Parametriertool vermutlich nicht anzusteuern wissen, da musst Du schon selbst rausfinden müssen, was dem Controller mitzuteilen ist.
Christian schrieb: > Gibt es denn auch andere Möglichkeiten, eine SPI-Schnittstelle zu > "basteln"? Es gibt USB to SPI Interfaces
Émile schrieb: > Der Druckerport taugt nur zum Bitwackeln per Software. Wenn Dein > Parametriertool nur serielle Schnittstellen kennt, ist das keine Lösung. > Dann aber enthält das "Kabel" zum Motor nicht einfach nur ein paar > Drähte, sondern einen µC o.ä., der aus den seriellen eines COM-Ports das > SPI-Protokoll erzeugt. Ok, verstanden. Das im Manual gezeigte Kabel hat tatsächlich nur 5 Drähte von LPT zu Schnittstelle am Motor. Spielt aber keine Rolle denn ich denke, ich werde diese Variante verwerfen. Émile schrieb: > Ja, aber es kommt drauf an, mit was für einer Software Du mit dieser > Schnittstelle reden willst. > > Wenn Du die selbstschreiben willst, kannst Du z.B. die MPSSE des FT232R > mit der FTDI-DLL verwenden. > > Das aber wird Dein Parametriertool vermutlich nicht anzusteuern wissen, > da musst Du schon selbst rausfinden müssen, was dem Controller > mitzuteilen ist. Ok, alles klar. Ich möchte natürlich am liebsten das originale Parametriertool verwenden. Aber ich seh' schon, mit meinen sehr beschränkten Vorkenntnissen wird das schwierig werden. Ich dachte, ich könne die Stepper weiter verwenden (Da Industriequalität, 250$ pro Stück damals). Das wird dann wohl nichts... Schade. kenny schrieb: > Es gibt USB to SPI Interfaces Das wäre vielleicht noch ein Versuch wert. Könntest du da etwas empgehlen? Wäre das sowas z.B.? https://www.digikey.ch/de/products/detail/ftdi,-future-technology-devices-international-ltd/TTL-234X-5V/6823719?utm_adgroup=Smart%20Cables&utm_source=google&utm_medium=cpc&utm_campaign=Shopping_Product_Cable%20Assemblies&utm_term=&productid=6823719&gclid=EAIaIQobChMI2czXjPXQ_AIVWJBoCR20QwOoEAQYBCABEgJ__PD_BwE
Christian schrieb: > Ich dachte, ich könne die Stepper weiter verwenden (Da > Industriequalität, 250$ pro Stück damals). Das wird dann wohl nichts... > Schade. Wer schon nach 4 Stunden und 6 Minuten die Flinte ins Korn wirft, hat nicht viel Durchhaltevermögen. Im Manual ist alles beschrieben. Da steht allerdings nichts von Terminalsoftware und ComPort, sondern nur von SPI und Parallelport. Wenn der Laptop nur 3,3Volt Ausgang hat, braucht man 4 Levelshifter von 3,3V nach 5V, MOSI, CLOCK und /CS in Richtung Motor und MISO in Gegenrichtung. Ist im Manual auch erwähnt, daß es sowas mal als Zubehör gab. Oder man programmiert einen kleinen 5Volt-Mikrocontroller (z.B.Arduino UNO), die Befehle an den Motor stehen auf Seite 25. Dazu muß man dann aber etwas mehr Wissen über SPI und Programmierung haben. Gruß Klaus (der soundsovielte)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.