PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Roboter fertig stellen



urmurato
30.07.2018, 12:06
hey Guten Tag Freunde,
Meine Name ist Urmat und bin Maschinenbau student, und habe eine Idee einen Roboter zu bauen. Konzept ist voll, mit allen Bauteilen und Funktionen, und nun brauche ich den Geist. Also software und controlling für 21 schrittmotoren. da ich gar keine Idee habe wie ich die 21 Motoren mit einem microkontroller bedienen kann und mit welchem Programm ich die software schreiben kann, würde mich für tipps sehr freuen. Also habe wirklich gar keine Ahnung von Programmierung und natürlich wenn jemand gut in diesem Feld ist, würde auch Partnerschaft anbieten. Die Idee ist Simple, hat nicht Viele Funktionen, aber Bereich wo die Roboter angewendet könnten, ist noch nicht mit Roboter besetzt. Also noch sehr viel Spielraum da. Bitte, bitte und noch mal bitte, wenn jemand Interesse hat, eine Seriöse anfrage an mich senden. Und noch mal, eine Partnerschaft die dein Leben verändern kann. Noch etwas, komme aus mainz.
Lg Urmat

Magistromachina
15.08.2018, 20:14
Hallo Urmat,
ich heiße Thomas und programmiere Industrie Roboter, SPS und Bildverarbeitungssysteme. Es würde mich mal interessieren was für eine Hardware für so etwas hier empfohlen wird. Ich vermute mal miteinander koppelbare Arduino Boards oder eigene Entwürfe. Doch eigene Platinen habe ich nur damals im Studium welche hergestellt um Sensoren zu bauen oder Messgeräte. In dieses Thema hier bin ich gerade erst eingestiegen mit einem kleinen Lasercutter, auf dem ich verschiedene Programme nutzen will, welche ich evtl. auch etwas anpassen werde.
Ich hoffe jemand mit mehr Hardware Kenntnissen gibt hier mal nützlichen Rat.
Grüße aus dem wahren Norden.

Holomino
16.08.2018, 01:49
Gibt's im industriellen Umfeld keine Mehrachs-Module, die sich synchronisieren lassen?

Magistromachina
16.08.2018, 20:34
Es ist einfach nicht zu erwarten dass teure industrielle Produkte hier zum Einsatz kommen. Und außerdem bin ich für die Hardware Auswahl nur im Bereich der Bildverarbeitung zuständig. Echtzeit Programmierung und Synchronisation von Motoren könnte ich Software-seitig programmieren, dazu muss aber die Hardware stimmen. Deshalb frage ich neugierig ob sich evtl. jemand damit gut auskennt. Allerdings könnte ich auch mal ein Arbeitskollegen in der Mittagspause fragen.

Holomino
17.08.2018, 12:50
Allerdings könnte ich auch mal ein Arbeitskollegen in der Mittagspause fragen.
Das ist sicherlich der beste Weg. Wenn Du jemanden direkt fragen kannst, tue das. Da kann man viel schneller Rückfragen stellen an Leute, von denen man sich selbst schon ein Bild gemacht hat.

Ich habe letztes Jahrtausend (zu Zeiten, als der LTP-Port noch das A und O der Steuerungsprogrammierung war) mal eine proprietäre Schrimosteuerung auf 16 Kanälen mit einem 68332 (mit TPU = Time processor unit, quasi ein Timer-Coprozessor) programmiert. Das gute Stück sollte Schrittmuster für Linien und Bögen mit linearer Beschleunigung/Bremsung generieren, wobei die Kanäle beliebig zu sýnchronisierten Gruppen (1 Master, mehrere Slaves, die der Masterbewegung relativ folgten) zusammengefasst werden konnten.

Abgesehen davon, dass das Projekt nie für mehr als drei Achsen verwendet wurde, hat sich die Uhr doch bestimmt weitergedreht. Es gibt doch sicher mittlerweile auch Normen, die die Beschreibung von Bahnen in Linien, Bögen und Splines beschreibt.

Ansonsten dürfte die Vorgehensweise so sein, wie früher: Bei den typischen Anforderungen an die Taktrate der einzelnen Achsen irgendwo im 10..50-kHz-Bereich (Mikrostep) nutzt man Timer, die durch kurze Geradenstücke irgendwo im ms-Bereich Bahnen interpolieren. Da man kaum einen Controller mit 21 Timern findet, wird man die Sache auf mehrere kleine untereinander synchronisierte Controller verteilen, denen man jeweils für jeden OnBoard-Timer so kleine Befehle wie "Generiere mit Timer0 in den nächsten 2ms 83 Schritte in positive Drehrichtung" in den Fifo schreiben kann.

Ob man dann noch die Zerlegung der Bahnen am PC (so wie es der 3D-Drucker mit G-Code tut) als Vorberechnung vornimmt oder on the fly durch eine Zwischenstation (PC sendet Linien und Bögen, Mastercontroller zerhackt das in Liniensegmente, Taktcontroller führen die Liniensegmente im erforderlichen Timing aus), muss man dann sehen. Wird wohl darauf ankommen, ob diese einmalig berechneten Pattern ausreichen, oder ob das System auf irgendetwas reagieren, also selbständig etwas entscheiden muss, das Einfluss auf die berechnete Bahn hat. Steppermotoren mit Positionsrückmeldung wären z.B. ein Beispiel dafür. Hier würde man typischerweise bei diagnostiziertem Schrittverlust auf einer Achse die anderen Achsen abbremsen, um den Fehler möglichst klein zu halten und asap zu korrigieren.


Was ne Herausforderung ist: Stepperendstufen gibt's fertig aufgebaut wie Sand am Meer. Die Versorgung dafür macht das System allerdings anfällig. Bei 21 Achsen sollte man sich im Vorfeld über die Dynamik im klaren sein. Das sind 21 Kandidaten zur Erzeugung von Spannungseinbrüchen und Rückspeisungen über die Freilaufdioden. Wenn das nicht sauber verdrahtet und entstört ist, wird das nix.

Magistromachina
17.08.2018, 16:06
Ich danke für die Antwort, für mich ist es ein kleiner Einblick der mich den Aufwand besser erkennen lässt. Ich schätze dass die eigentliche Anfrage hier eh nicht ganz ernst zu nehmen war.