Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

PI + Softmotion + Robot + PWM PCA9685

Anonymous
2019-02-17
2019-03-17
  • Anonymous - 2019-02-17

    Originally created by: *michi

    Hallo zusammen,

    basierend auf dem netten Video von Codesys auf Youtube habe ich mir einen kleinen Roboter zugelegt und wollte diesen via Softmotion ansteuern.
    Die Ansteuerung erfolgt über einen PCA 9685. Hierbei war die erste Punkt, dass die Frequenz nicht 50Hz sondern nur 48 Hz betrug. Dies habe ich korrigiert. Faktor 0.88 war falsch sondern 0.92 müssten es sein. Dies hat aber in Bezug auf die Ansteuerung weniger Auswirkung.
    Die Standardformel für 0° auf Modelbauservo mit PW 1ms und 180° bei PW 2ms stimmt auch nicht zu 100%. Dies konnte ich mittels Oszi korrigieren.
    0° entsprechen ca. 0,548 ms und 180° entsprechen 2,44 ms.
    Falls jemand dieses Problem auch hat
    Nachdem die Konstruktion ursprünglich nicht 180° fahren konnte, war es zwangsweise logisch das die Transformation auch nicht 100%ig stimmen konnte.

    Nun aber zu meinem Problem.
    Die Kinematik - Berechnung funktioniert bei mir nicht
    Also Roboter verwende ich einen klein SainSmart 6 - Achsen. Als Kinematik hab ich hierfür den Trafo.Kn_ArticulatedRobot_6DOF verwendet und die Werte dementsprechend eingetragen.
    (Werte und Roboter im Anhang)
    Bei Verfahren um Z-Achse fährt der Roboter eher eine Kreisbahn nach oben.
    Bei Verfahren um X,Y bekomme ich entweder Programm outside working Area oder Axis Limit reached. Zu Deutsch außerhalb Arbeitsbereich oder Achsbegrenzung. Achsbegrenzung ist aber innerhalb Codesys abgeschalten.
    Die Ironie an der Sache ist aber folgende: Verfahre ich die Achsen einzeln, im Joint Modus, rechnet sich das Programm die neuen x,y,z Koordinaten aus ohne Fehlermeldung.

    Daher die Frage: Hatte das schon jemand? Bzw. habe ich einen Denkfehler drin?

    Dankeschön für eure Antworten

    Verfahre ich mittels PTP im HMIRobot Projekt, macht der Roboter auch seine Bewegungen. Nur im "Singlemodus" funktioniert es nicht

    IMG: sainsmart.png

    IMG: parameter.png

    IMG: kinematik.png

     
  • Anonymous - 2019-02-24

    Originally created by: *michi

    Hat keiner eine Idee?

     
  • eschwellinger

    eschwellinger - 2019-02-25

    hm.. ohne Projekt, schwer...zu helfen

     
  • Anonymous - 2019-03-17

    Originally created by: *michi

    Hallo Edwin,

    sorry für die späte Antwort, hab leider erst jetzt wieder Zeit gefunden für das ganze Thema.
    Bei genauerer Betrachtung kann die Transformation, nach meinem Verständnis nicht richtig funktioniert.
    Der Arm hat z.b. bei Achse 1 (Servo1 Drehachse Flansch zu Servo2 Armgelenk) bereits einen Versatz von ca. 40 mm vom Drehpunkt aus. Bei weiterer Betrachtung, haben die anderen Achsen auch einen geringen Versatz drin. In Addition mit mehreren Umrechnungen, kann das logischerweise nicht funktionieren.
    Ich glaube, dafür ist die verfügbare Transformation ungeeignet.
    -> Klarer Anwenderfehler

    Gibt es irgendwo ein Template oder ähnliches, wo ich z.b. die Transformationen selbst definieren kann von Achse zu Achse und dies dann invers betreiben kann?

    Danke dir

    IMG: 2019

     

Log in to post a comment.