Fehlerhafte Offset über $DigIn1,2,3

  • Hallo !


    Ich habe einen Roboter KR360 mit der Version V5.5.
    Vor der Teile-Aufnahme wird dem Roboter über eine Kamera die Positionskorrektur mitgeteilt.
    Die Datenübertragung erfolgt mit Profibus, 32 Byte konsistent.
    Im KUKA steckt eine CP5614 Slave.


    Wenn ich die Positionskorrektur X,Y und Winkel a über


    $machine.dat
    :
    SIGNAL $DIGIN1 $IN[593] TO $IN[608] ;DIGITALEINGANG 1 Offset X
    SIGNAL $DIGIN2 $IN[609] TO $IN[624] ;DIGITALEINGANG 2 Offset Y
    SIGNAL $DIGIN3 $IN[625] TO $IN[640] ;DIGITALEINGANG 3 Offset a


    Mein_Verfahrprogram.src
    :
    Offset_X =$DigIn1 *0.1
    Offset_Y =$DigIn2 *0.1
    Offset_a =$DigIn3 *0.1
    :


    ins KUKA-Programm einlese, dann werden nicht immer die richtigen Werte verrechnet.
    Wenn ich mit dem Roboter 100% fahre, dann scheint es öfters schief zu gehen.


    Wenn ich die Positionskorrektur über


    $config.dat
    :
    SIGNAL i_Offset_X $IN[593] TO $IN[608]
    SIGNAL i_Offset_Y $IN[609] TO $IN[624]
    SIGNAL i_Offset_a $IN[625] TO $IN[640]


    einlese, dann kommt es nie zu einem Fehler.


    Was mache ich falsch?!


    Robert

  • Schritt für Schritt zum Roboterprofi!
  • schalte in der $OPTION.DAT den
    BOOL $DIGIN_FILT=TRUE;DIGIN DYNAMIC FILTER (CONVEYOR)
    auf FALSE


    $DIGINx sollte nur für Conveyor benutzt werden (interne Filter und Umrechnungen) !!!

    Wer nach allen Seiten offen ist kann nicht ganz dicht sein

  • Hallo, ich hab auch ein ähnliches Problem. Wir machen über Messsystem eine Toolkorrektur im Greifer. Bei einem Robbi funktioniert es tadelos bei dem anderen ist seit kurzen ein Fehler aufgetreten: Der Wert für Rx also C wird nicht richtig umgerechnet. Es wird auf das "virtuelle Tool" immer ein zu großer Offset gegeben. Die Offsetwerte werden im Roboter richtig eingelesen, aber falsch verrechnet. Sieht ungefähr so aus:


    ;FOLD ISRABASEKORRECTUR
    ISRA_KOR_X=$DIGIN1
    ISRA_KOR_Y=$DIGIN2
    ISRA_KOR_Z=$DIGIN3
    ISRA_KOR_Rx=$DIGIN4
    ISRA_KOR_Ry=$DIGIN5
    ISRA_KOR_Rz=$DIGIN6
    ; ACHTUNG: Beim Uebertragen in den Frame werden
    ; Rz dem A-Winkel und Rx dem C-Winkel zugeordnet !!!
    ISRA_KOR.X = ISRA_KOR_X / 100
    ISRA_KOR.Y = ISRA_KOR_Y / 100
    ISRA_KOR.Z = ISRA_KOR_Z / 100
    ISRA_KOR.A = ISRA_KOR_Rz / 1000
    ISRA_KOR.B = ISRA_KOR_Ry / 1000
    ISRA_KOR.C = ISRA_KOR_Rx / 1000
    ;ENDFOLD




    Ist es möglich das der $DIGIN auch hier eine Fehlerquelle darstellt??



    :merci:

  • ausprobieren (geht über studieren) :P


    setze mal probehalber $DIGIN_FILT auf FALSE


    falls es schon auf FASLSE steht, liegt das Problem wo anders.
    Wäre dann besser statt dem $DIGINx ein selbstdefiniertes SIGNAL zu benutzen

    Wer nach allen Seiten offen ist kann nicht ganz dicht sein

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