Posts by kwakisaki


    From what you wrote though in terms of the direction of the axes you mentioned, it is in line with Kawasaki left hand rule, which leads me to think some 'tinkering' may have gone on.

    The obvious question is in what way did this issue suddenly appear:

    - During normal use, whilst using it.

    - During reloading of data or upgrading/downgrading of firmware.

    - During a re-zeroing exercise.

    - Are you using Fixed Tool option and is it currently highlighted in the Teach Screen (FLIN).

    - During some maintenance on the arm or controller.

    - After a power cycle.

    Some additional checks I would recommend as confirmations to eliminate zeroing or even incorrect motors (swapped minor axis connections):

    - All joints when individually driven in joint mode go in the correct direction (as per the arrow indications) and to their set software limits.

    - Using Base mode and BASE NULL confirm the robot travels in the correct direction relative to the left hand rule including rx, ry and rz.

    - If the above yield correct results, it does indeed point to a tool coordinate issue in my opinion.

    You have tried to null the tool in a way I would recommend, and I would put my exploratory head on and:

    - Get all the joints to zero degrees.

    - Perform a full file save.

    - Hardware Initialization by use of the dipswitches on the 1TA/1VA (CPU board) and rebooting but do not load any data into it.

    - Then set the ZROBOT function to match your robot model (via the keyboard).

    - Re-zero again.

    - See if the issue has been resolved.

    - If it has, take a full file save again with the joints at zero degrees, use winmerge or other txt comparison application to compare the before/after file saves.

    - This should highlight any data differences and may just reveal not why, but what has possibly changed which may connect into the moment it occurred.

    If the above initialization fails to resolve it, then it could only point to some corruption within the AS/SV firmware then, which would be very strange indeed.

    If you can get a full file save and send it over, I can put it into KROSET and see if it replicates it?

    Would be interested to hear how this evolves for sure......

    In KROSET, you need to use the 'Wizard to set external axis' plugin in order to setup an external axis within your project or else your system will just be a standard 6 axis system.

    When setup, correctly (you will also require a suitable stl to represent an external axis), you could then jog the external axis and interface with it in terms of speed and taught locations just as you would on a live controller.

    Yes, it's the CF card itself.

    I have tried many times to try and utilize 'out of spec' CF cards by using various software to 'downsize' a CF card with no success......:bawling:

    The 'format' function in the controller, I have only ever got to work when using a CF card supplied directly from Kawasaki, any other CF card I have thrown in it, even though within spec, never successfully ever formatted it...:mad:

    You need an 'off the shelf' 4Mb, 8Mb, 16Mb or possibly a 32Mb CF card to really guarantee read/write access within the controller, you have to consider the age of the controller, the internal drivers would have been written by some boffin over 20 years ago when the range of manufacturers and memory sizes were not as varied as they are today, therefore universal compatibility today would not have been considered back then.

    The only recommendation I can give in this area is try and hunt down Sandisk 8Mb or 16Mb, these I use myself.

    Unfortunately in the C Controller, there's no other way of getting software into it except via CF interface.

    This is what your target is:…19af14:g:0l8AAOSwTrpdgfaD…791a91:g:pQIAAOSwpXFdEQl~…7037ed:g:tWQAAOSwFoZdEJyY…2f9c17:g:4qAAAOSwNixc0x-h

    Welcome to the forum...…………:beerchug:

    As far as I'm aware, the positioner configuration is just communication signals to a positional controller.

    This Controller then controls the positioner independent to Kawasaki motion.

    (ie like a variable speed drive controlling the motor of a conveyor - The Kawasaki just sends an enable and speed request to it).

    I don't think the function STWC/STWE commands are intended to control an external axis attached/configured within the Kawasaki.

    I maybe incorrect in this as I am just reading the operation manual and all it references to is:

    - Sending a Positioner ON signal (which I think is just an enable signal to turn on the positioner).

    - Sending speed signals (8bits) using dedicated outputs (a BCD value sent to the positioner).

    - The positioner then runs at the BCD value configured speed.

    - The robot will use the time value set in the STWC/STWE commands respectively to apply the weld.

    - Using parameters either configured in the weld condition if using BLOCK or via the W1SET/W2SET commands if using it in AS.

    - It will carry on welding until either the program ceases the weld, or if a STOP signal is received on the dedicated input if allocated.

    If you were intending to configure the positioner as an external axis and control this (and the exact position of it), then I don't think the STWC/STWE commands apply in that scenario as you would set the external axis to operate in cooperative mode which will synchronise the external axis with JT1-JT6 respectively therefore the external axis positions are included in the path of the robot JT1-JT6.

    What is your intention:

    1. To Control the actual position of the positioner and speed.

    2. To just rotate the positioner.

    You're welcome...……:top:

    Just remember, touch sensing can be applied in many ways:

    - Locate an actual workpiece.

    - Locate a start point to weld.

    - Measurement for work deviation or checking.

    Try different methods when you completely understand the function, this way you will produce a good 'working template' for future installations.

    And I have learned something from your example too, so thank you for that also...……:beerchug:

    I've had a look over it and it works quite well (in KROSET).

    I look at things with very simplistic glasses and what you've written is very clearly broken up into sections, easy to follow and flows in terms of sequencing and does the job indeed.

    Very difficult to offer any recommendations, except alternate methods.

    I would definitely consider incorporating the XMWIRE command though to set an even wire length prior to touch sensing.

    - This will give you the best results for touch sensing/tcp values and reduce errors.

    - Especially if you are using high crater currents to finish the weld on the previous cycle.

    You could adapt to using dedicated reference points on the work piece for X and Y touch sense points as opposed to very close to the intended weld start and end points.

    - Only because this allows for more flexibility around any shape workpiece you intend to weld.

    - Also if you were to introduce a work object frame, then the X/Y Planes of this could be references.

    - By using references too, you could then locate the start weld point based on the XY shift results too.

    Also, DECOMPOSE is very good command to use however if I was targeting just X and Y, then I would favour DX and DY to create the x difference and y difference values.

    However, using the DECOMPOSE gives you access to more which is there if you need to access it, and to be honest, I personally am trying to use this more and more as opposed to just DX/DY/DZ.

    Additional to this, I would possibly utilise the SHIFT in the LW commands, then incorporate the x difference and y difference values into them.

    - This incorporates a slight protection of users being able to POS MOD them easily, which can be good or bad depending on your customer.

    I've attached a video and displaying the running code.

    I wrote it based on what you wrote, but condensed it somewhat......but other than that, what you have done thus far looks ok to me...………:top:


    I am in touch with KRG (Kawasaki Germany) for those new commands but they are also don't have any idea about those new commands .

    This doesn't surprise me with the commands being new, but I expect if you make a request to them, they may do some research on your behalf to ascertain functionality of those commands.

    However, what I have tested in KROSET for touch sensing (not that KROSET is the easiest to simulate touch sensing), they are specifically directed towards BLOCK programming only and I wouldn't be surprised if that was their final answer.


    I informed KRG that now a days most of welding paths are generated by using OLP softwares which means touch sending commands should be applicable for AS language commands ;

    I think KRG will already be aware of this fact and they will end up referring you to the XAC Command as this is the AS Command specifically dedicated to Arc Weld touch sensing.....not workpiece deviation.

    Work piece deviation appears to be something you will need to code in yourself from an AS perspective.


    But i am sure that we can use touch sensing in AS since many OLP softwares are publishing that their solutions are supporting KAWASAKI touch sensing like Delfoi & Octopuz .

    Again, you can by using the XAC Command, what you appear to be asking is a 'clickable wizard' that you say other OLP's are already providing.

    What sort of code are Delfoi and Octopuz producing then for Arc Welding, are they including the touch sense commands or are they just creating points and basic motion instructions to them?

    I can make a program using a whole host of standard AS Commands to create a touch sensing sequence:


    XMOVE target+offset TILL 1002.



    LMOVE target+offset, 1

    SWAIT 1002

    But I would not need to as there is XAC which is a dedicated Arc Weld Command that automatically links in with whatever IO I dedicate to it.

    The only thing I could recommend is to look at KROSET Touch Sensing Demonstration Program.

    This contains some very good information regarding AS commands and Arc Weld Touch Sensing and if Delfoi or Octopuz are producing this type of code, I may need to eat my own words...….

    The other alternative is to try and seek KCONG, that is dedicated to Arc Welding OLP but is very expensive and my last try, they are very reluctant to supply this outside of Asia.

    Without having much experience in Fanuc specifically, but electrically:

    1. Is it possible the 24V from the PSU is overloaded, therefore reducing the output by either failed component or harnessing short circuits.

    2. Is there anyway of isolating the output from the PSU by systematically removing the components that the PSU supplies without losing data etc.

    - Just to see if the 24V becomes available without a specific component connected.

    - This could highlight where the problem may lie.

    Hope the replacement works out and you resolves the freezing issues.

    If not, then post back and include the AS and SV revisions, I may have later versions that could be worth installing......Only if the freezing is still evident...


    Always puts a smile on my face that >20 years and still going.

    Yes, CF adapter will suffice, main thing is the CF size that's all as there is no other way of getting the software onto the MFP.

    Check your 'conversation' you should have the docs, if not let me know...……..


    The others are grinding and polishing units out of Italy.

    I suspect these will probably have been supplied by Tiesse, they are a huge distributor of Kawasaki Robotics out of Italy.

    Thanks for the additional information its all relevant.

    The MFP software has to be compatible with the version of AS you have, otherwise you normally just see a keyboard displayed during bootup.


    Original unit shows T04E2T2J replacement shows T3010K7E.

    I have the T04E2T2J firmware available, so you should be able to load that up to the replacement, making it compatible.

    However, this can only be done using a PCMCIA card I mentioned.....and the size limitation is a must on the older C Controllers, they very early versions only accepted a max 1MB (SRAM which contained its own replaceable battery).

    I will send you a zipped up file via 'conversation' with the full procedures and the version outlined above.

    Just copy the MFP folder contents to your PCMCIA card and follow the very first part of the procedure for only loading teach pendant software, very important you have teach lock on and the tricky bit is the 4 corner touching, especially if you have Gorilla fingers like me or dead corners on the touch screen.

    Make sure to create a full file save before you do this just in case of problems.

    Let me know if you have any issues.

    G'day and welcome to the forum...….:beerchug:

    Wow, you're working with some dated kit there......still, nice to hear JS10 and A Controller are still going.

    - Not that it matters, what is the manufacture date on those, would you know?


    One of the C Controller Multi-Function Displays has an intermittent issue and becomes completely non-reactive on occasion.

    I have found another MFD but when connected shows only a keyboard and ‘Software Version Mismatch’.

    Can you provide some further information:

    1. Have you checked the interface cabling between MFP and Controller including pin bent

    2. Do these C Controllers print messages to the screen as part of the normal process.

    3. Do they have ethernet communications associated with them.

    4. When it freezes, is this at 'random times', 'random screens' or frequently in the same place. (I assume a reboot clears the freezing for a period).

    5. Do you have access to full file saves, and are in a position where you know how to upload and download.

    6. Do you have access to PCMCIA Cards (max size 32Mb - yes max 32Mb, but possibly 16Mb max).

    7. I assume that other than the freezing issue, you are not experiencing any other issues.

    I always assumed work deviation patterns were only applicable with BLOCK instructions (please correct me,someone if I'm wrong).

    AS uses XAC and you use that command to move to the target, and upon detection, teaches the new target instruction location - therefore creating your 'psuedo' pattern as required.

    - At the time we are teaching the robot the welding path points ; How we can inform the robot that following touch points are the references for future welding ?

    XAC taught_pos, detect_pos, dist_to_chk,spd_of_chk.

    LDEPART 100

    LWS detect_pos ; will move to the detected position and commence weld.

    - Assuming that we have changed the work piece by new one & touch sensing performed by the robot ; How we can get the corrected points (Transnational or Joints) or the deviation values ?

    Corrected points are stored as transformation values, therefore by:

    POINT taught_pos+pos_diff=detect_pos

    Will result in the values of pos_diff being the difference between taught_pos and detect_pos

    You could then decompose the pos_diff values to convert them to real values if required.

    - In the ARC welding Manual we found the instructions of RARCWMDP , #GET_ARC_WMDP & #ARC_WMCV but we don't know how to use them to save reference touch points and to get the deviation for every new workpeice .

    These are new to me and also only in the latest manual, I have tried them in KROSET and get no errors, but the results I can't quite get my head around.

    I suspect they are intended to obtain deviation values when used in conjunction with BLOCK.....but I am completely guessing.

    This I think you could do with contacting Kawasaki about to confirm the function and application of these.

    I've just been using my tablet with Duaro in Lite mode (just a quick comms test and checking motion) and all appears to be working, haven't tried any programs as such though, but I think from a 'familiarisation' perspective all appears in order.....:top:

    You may require to adjust the software version to match the version of the tablet too in order to establish comms…..:justice:

    It's quite surreal actually moving a virtual robot on a PC using a tablet as it's very responsive indeed.

    I can see people spending hours on this for sure...…

    Hope you can get the trial sorted, but in the interim, the Lite mode will give you some usability at least...

    I had a feeling this was the case, but without myself having a 'trial license', I couldn't be 100%.

    An oversight on Kawasaki's part.....still, if you can give them the feedback, I am sure they will rectify it.

    In Lite mode, there are many limitations (which are usually directed to the KROSET Cell environment), it maybe you can use the Lite version to at least have a play around with some of the functionality.

    Duaro is designed to be used via a tablet (which requires the correct app to be installed) and I know KROSET does have the availability for you to use the tablet in conjunction with KROSET and configured network(s) of your tablet/local machine to control the Duaro in KROSET via your tablet.

    However, I have never tested it in Lite mode whether it hooks up or not, but the options all appear to be there including all the standard built in programs to communicate, so I should think it'll work just fine.

    If I get sometime, I think I'll try it out now you've raised the question and let you know...….

    Yes, you are on a newer version.

    I have just installed the same version as you, and have Handling (Special) as an application to select the Duaro.

    I notice you are using a 'trail license' though, I myself use a fully licensed USB which includes the Duaro application.

    I suspect your 'trial license' may not include Duaro license.

    You need to speak to your Kawasaki Rep and ask/confirm whether Durao was included in the trial license file obtained from KHI.

    I would be interested to know if this is the case?

    If possible, to test my theory.

    - If you install KROSET onto another PC (without the trial file obviously), this would make KROSET operate in Lite Mode.

    - In this mode, you should have Handling(Special) available, but with limited function.

    If in Lite mode, you can, then it proves Trial License does not include Duaro…….

    (I have tested this on my newer version in Lite Mode and this is the case).