UFRAME auslesen

  • Hallo zusammen,


    ich stehe gerade mal wieder vor einem unerwarteten Problem. Ich möchte die aktuellen Werte (XYZWPR) aus einem UFRAME auslesen (PR[8]=UFRAME[3]), dann im PREG verändern und wieder zurück schieben. Klingt einfach, ist es aber nicht. Nach dem Auslesen steht im PR nämlich nicht XYZWPR sondern NX,NY,NZ,OX,OY,OZ,AX,AY,AZ und LX,LY,LZ.
    :nocheck:
    Was muß ich machen um das gute alte XYZWPR zu bekommen?


    Gruß
    Stromer

  • ANZEIGE
  • Das mach ich doch auch so.


    PR[8] = UFRAME[3];
    PR[8,3] = R[]39;
    UFRAME[3] = PR[8];


    Danach ist aber der UFRAME nicht mehr wieder zu erkennen. Total verdreht!
    Wenn ich mir den Frame anschaue, stehen da seltsame Winkel drin und wenn ich mir das Register anschaue sehe ich die oben genannten 12 Werte.

  • Hi,
    genau das meine ich doch es geht nur in eine Richtung von PR[] -> UF . Umgekehrt funktioniert es nicht. D.h. du kann in PR[] dein zukünftigen Nullpunkt abspeichern und dem UF zuweisen. Sollst du eine Verschiebung haben, dann musst du :

    Code
    ! PR[10] = UF1;
    PR[11]=PR[10];
    PR[11,1]=PR[11,1]+10;
    UFRAME[1]=PR[11];


    So behällst du den alten Wert und hast eine Verschiebung :ylsuper:

  • Hallo,


    habe auch kürzlich mit dem Kram zu tun gehabt ...
    Beim Bearbeiten der PR-Werte muss man aber höllisch aufpassen!!!
    Will man beispielsweise den X-Wert verändern,
    muss man mit PR[xy,10] auf diesen zugreifen ... nicht mit PR[xy,1]!!!


    ... ich habe auch mehrmals die Daten hin und her geschaufelt bevor mir dieser Dreher aufgefallen ist ... :wallbash:


    Also:
    PR[xy,1]=?
    PR[xy,2]=?
    PR[xy,3]=?
    PR[xy,4]=?
    PR[xy,5]=?
    PR[xy,6]=?
    PR[xy,7]=Drehung um UFRAME-X
    PR[xy,8]=Drehung um UFRAME-Y
    PR[xy,9]=Drehung um UFRAME-Z
    PR[xy,10]=Verschiebung in UFRAME-X
    PR[xy,11]=Verschiebung in UFRAME-Y
    PR[xy,12]=Verschiebung in UFRAME-Z



    So müsste das PR aufgebaut sein, nachdem man PR[xy]=UFRAME[x] gemacht hat.


    Gruß
    mwe

  • Danke für den Tip! Ist zwar für diesen Robbi zu spät aber beim nächsten mal werd ichs ausprobieren.


    Nur schade dass die Fanuc's sich mit ihren eigenen Robotersystemen nicht auskennen :roll:

  • Es gibt bei FANUC schon den ein oder anderen, der richtig Ahnung von deren Systemen hat.
    Man muss eben die richtigen Leute dort kennen ... ;)


    Aus den bekannten Gründen will ich hier jetzt keine Namen nennen!!!


    Meine Erfahrung ist, dass es bei FANUC für die unterschiedlichsten Applikationen
    (zumindest jene, mit denen ich bisher zu tun hatte) jeweils einen kompetenten
    Ansprechpartner gibt ...


    Gruß
    mwe

  • Hallo Leute,
    kann sein, dass das Auslesen des UFRAME überarbeitet wurde?

    Habe hier v9.3 und mit PR[15]=UFRAME[1] habe ich ganz normal die Werte XYZWPR im Posreg.

  • Bisher wurden Frames immer in einer Matrix Darstellung in PR´s angezeigt.

    Tatsächlich kann man die Darstellung mittlerweile selber beeinflussen.

    Bei mir im Roboter mit V9.40 gibt's im CONFIG Menu ganz unten den neuen Punkt "Position reg matrix form", ist default auf FALSE.

    Stellt man das auf TRUE gibt es wieder die Matrix Darstellung NX,NY,NZ,OX,OY,OZ,AX,AY,AZ,LX,LY,LZ.

  • Hallo Rob76,


    da drüber bin ich auch gestolpert, ich lese seit der V8.3 ein Tool in ein PR[x] und bearbeite es hat auch bisher gut Funktioniert bei meinem letzten Robi V9.3 habe ich das PRG wie immer kopiert und er hat ganz komische Sachen gemacht! Hab dann gesehen das mein TOOL ganz anders aussieht und habe den richtigen PR[x,12] in PR[x,6] geändert und alles war wieder gut. Habe es so hingenommen und nicht weiter hinterfragt. Jetzt weiß ich warum das so ist und kann es wieder zurück Ändern wegen der Gleichheit der PRG`s.


    Nochmals Danke für die Info :thumbup: :thumbup: :thumbup:

  • "Position reg matrix form", ist default auf FALSE.

    Die entsprechende Variable lautet:

    $PR_CARTREP

    Die kann man auch bei älteren Steuerungen umstellen/benutzen.

    Aber Vorsicht:

    bei vielen 'alten' Programmen findet man z.b. folgenden Code:

    R[10]=PR[10,7]

    R[11]=PR[10,8]

    R[12]=PR[10,9]

    R[13]=PR[10,10]

    ..

    ---> Da wird mit dem Matrix-Format(KarelTyp:POSITION) gerechnet!!!

    Also die Variable nur bei neuen Installationen umstellen oder wenn man weiß das diese Berechnungsart NICHT genutzt wird.


    Beste Grüße

    PnsStarter

  • Hallo pnsStarter,


    habe es probiert bei $PR_CARTREP=FALSE gibt er die Matrix aus bei TRUE als Position. Jetzt überlege ich mir wie rum ich es mache. Karel betrifft mich in dem Fall nicht.


    Gruß

    Team Rosario

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden