Simple Kawasaki AS language question related to TOOL coordinates

  • I have a very simple question related to setting the current tool number in a Kawasaki AS program. I'm not super familiar with Kawasaki AS language and I'm struggling with a very basic thing. The customer has asked me to add a couple new programs to the robot and all of the current programs have been taught, both in AS and Block programming styles, with TOOL NULL or basically no TOOL offset at all. I have created a new proper tool that reflects the actual TCP of the tool installed and I've saved that as TOOL 9.


    In the program I'm writing I need to use the TDRAW command to move around a shape that is not co-planar with any of the robots BASE coordinates. It's just a rectangle that sits on a slanted surface. All I want to do is make TOOL 9 the active tool in the program and then use TDRAW to move in the x,y,z directions of the TOOL 9 TCP. Simple right? In a Fanuc robot I could do this with one line.


    Despite 4 hours of reading Kawasaki programming manuals I have not found the answer for how to do this. Could someone please share how this is done in a Kawasaki E controller using the AS language.


    Thanks for your help.

  • Welcome to the forum.............:beerchug:

    all of the current programs have been taught, both in AS and Block programming styles, with TOOL NULL or basically no TOOL offset at all.

    A very common mistake made when people have not received training or read the manuals before programming.


    Kawasaki has 2 Programming methods which when used, should be used in conjunction with QTOOL.

    - BLOCK (QTOOL ON)

    - AS (QTOOL OFF)

    - QTOOL is a System Switch in Aux 49 (C Controller) or Aux 0304 (D/E Controller).


    1. BLOCK programming:

    - Uses System Switch QTOOL ON

    - Uses Tool values (TOOL1 - TOOL9)


    2. AS programming.

    - Uses System Switch QTOOL OFF.

    - Uses Tool values or transformation components defined and selected by TOOL command.


    AS TOOL command cannot directly access/select Tool value data set in Aux function.


    So in your case, to immediately resolve it:


    1.

    - Check System Switch Aux Function and set QTOOL OFF.

    - Use Command POINT mytool = TRANS(x,y,z,o,a,t) to create the transformation component.

    - Use Command TOOL mytool to select it.


    or:


    2.

    - Check System Switch Aux Function and set QTOOL ON.

    - Select Tool 9 in the Teach Screen.

    - Use Command POINT mytool = TOOL to copy the current Tool as a transformation component.

    - Check System Switch Aux Function and set QTOOL OFF.

    - Use Command TOOL mytool to select it.


    But either way, if you continue to use AS, make sure:

    - QTOOL remains OFF.

    - Use TOOL Command to alternate between Tool Values.

  • Thank you so much. I just needed someone to tell me definitively that AS couldn't access the Tool 1-9 Aux data. That's the part that was driving me nuts. You seldom find a "No, it can't be done" in a manual so I just kept looking for the solution. Thank you for the detailed description and I understand it fine. One additional question. If all of the Block programs were done with basically a zero tool (TCP at faceplate) can I set QTOOL OFF permanently so long as I include a TOOL NULL instruction at the top of each Block program?

  • If all of the Block programs were done with basically a zero tool (TCP at faceplate)

    Any BLOCK program uses Tool 1 - Tool 9 as the Tool no. is stored on the BLOCK Step when it is recorded.

    When executing a BLOCK step, it will change the current Tool no. to the Tool no. on the BLOCK step.

    Whether QTOOL is ON or OFF, this happens.

    However, a BLOCK step position is ALWAYS Joint Angles......Not Cartesian.

    So the target position in BLOCK will never change irrespective of Tool no. selected.


    Whether QTOOL is OFF or ON, it will make no difference to a BLOCK Step target position.

    Whether an AS Tool is selected or not, it will make no difference to a BLOCK Step target position.


    The issue comes when using AS and not turning QTOOL OFF.

  • You may find the following thread of interest, especially if you use D Controllers.

    My video in the last post shows why D Controllers provided some fundamental visual information regarding the status of QTOOL.

    Tool mode motion incorrect, need hints on diagnostics & correction - Kawasaki Robot Forum - Robotforum - Support and discussion community for industrial robots and cobots (robot-forum.com)

Advertising from our partners