Dry contacts

  • Hi,


    I’ve just been requested to wire a welding hand piece into the robot and just wondering if there is usually any dry contacts on the cards?


    I was hoping to use some of the spare outputs on the 1TW card but noticed they have a 24vDc supply on them (which I’ve heard makes them known as ‘wet contacts’ please correct me if I’ve got something wrong)


    All I need to two contacts/switches from the robot to the welding unit (example: robot will be controlling the buttons on the welder hand piece)


    the buttons on the hand piece are just normal open contacts, that have 9vDc across them, just waiting to be closed. This is why I don’t believe I can use the outputs on the 1TW card, as they have voltage on them already and most likely will damage something on the welder.


    I am hoping there is something I can do, as my other option is installing a couple of 24vDc Relay.

  • Lemster68

    Sounds like a Kawasaki, the recent controllers house 1TW IO Boards......So I'll move it there.....


    89Seth

    1TR board has a couple of 'Dry contacts', also known as 'Potential or Voltage free contacts' which are dedicated for system use only and cannot be 'mapped' for alternative uses.


    You could purchase a 1GN board which piggy backs to the 1TW board (usually supplied as standard with an Arc Welding Robot), but I believe you would also need the relative Arc Software just to 'talk' to the 1GN board.


    Therefore, your only solution(s) (in my opinion) would be a couple of relays if you are going to control them from the 1TW.

    Alternatively, you can utilize the extended IO (if fitted to the Arm ID board) located in the manipulator arm.

    However, again you would need to add a couple of relays as the extended IO is also designed for digital IO control.


    This is in fact what you should do when you are not using the Kawasaki IO to switch digital signals.

  • Thanks very much for the information Kawkisaki!


    The robot controller does have the 1GN board and I was able to use the Arc Start contacts on CN3 plug pins 2 and 3.


    I’ve ran into another issue tho!

    First off, the robot controller is:

    Kawasaki robot controller

    Model: E42F-A002

    (Sorry Lemster68, I forgot to mention at the start)



    You may have guessed this, The error we keep getting is “Arc failure” (E6502) as the controller has not received a signal to indicate welding has started.


    Is there any way to turn this input off?


    The welder is set up and automatically welds once the ‘Arc Start’ Contacts close (on the 1GN board, CN3 plug) but it does not have any ports to connect to the controller, plus the control voltage on the welder is 9V.


    I’ve been looking through the external I/O manual (Kawasaki robot controller E series) but with no luck...

    the couple of points I’ve seen which I thought would work were...


    If inputs are set to 1000 (outputs to 0) they are unused and not worried about, so in my monitor screen I can see a ‘I002_EXT_WCR_INDIVI’ input and when I change its setting to 1000 (was 1153) it no longer appears on the input monitoring screen but the fault still occurs when I start a cycle (it starts welding great, but stops once the scratch distance is reached and goes back to original position and starts again - it did this 4 times before the fault would occur, I was able to change it so it did not keep repeating it).


    I also noticed in the manual the input is a software dedicated signal, so is this something in the TP I can remove or do I need to look at the coding of the program on a computer and possibly remove the need for WCR signal?

  • What kind of welding are you doing exactly?


    If you have a 1GN board fitted, I suspect you have a dedicated arc welding system and may run into problems using the Arc Weld BLOCK or AS commands.

    When using arc weld commands, they automatically invoke the use of the arc weld dedicated signals without the need to code them in.

    Therefore, arc failure will be produced because the input is not received from the weld power source output indicating current flow.

    - This is the WCR input.


    So if you are not interfacing controller to the weld power source, then you will not be able to use Arc Weld BLOCK or Arc Weld AS instructions.

    You would need to set things up just using standard BLOCK (which you don't have on an Arc Weld System) or standard AS which you could use.


    If ALL of your parameters are being set in the weld power source, and ALL you are doing is turning weld on and weld off, then you will have to use standard IO signals and un-dedicate the dedicated signals.


    Seems like a real waste of resource if you already have a dedicated Arc Weld System already, just interface the weld power source with a bank of relays into the 1GN and you'll be golden.


    Can't understand why you don't go down this route, it will make programming a lot easier.


    p.s scratching again looks for io interface exchange between controller and weld power source - WCR input to tell it the controller current is flowing.

  • We are trying to use a Tig welder with the robot.


    The machine we are trying to use (and I bet could be wired into the robot but we lack the cabling... but I haven’t checked yet) is:

    Brand EWM

    Power source - Tetrix 351 AC/DC smart FW

    Wire feeder - tigspeed drive 45 hot wire


    The welding unit that came with the robot is:

    Brand EWM

    Power source - Alpha Q 552 RC


    I suspect it was added onto the robot at a later date, not sure at all. We are using weld code only because it is the only one we know of at the moment.


    So you are saying if we used standard BLOCK or AS, but I’m assuming I won’t be able to connect the tig Trigger for the welder To the 1TW CN2 plug in Either NPN or PNP because the voltage required is 24VDc +\-10% (so about 20-26Vdc) because the welder voltage is about 9VDc?


    Is it possible (but I’m assuming not advised) to parallel any other input into the 1GN board that’s for the WCR input?

    How do I locate where the WCR input physically is? Is it a point you allocate? Or a set pins on the board?

  • I knew you'd say TIG Welding, I haven't done any TIG on a Kawasaki, but I do know there are options available...............:wallbash:

    I shall see if I can locate some further information on it and post back if I find any.


    What Robot are you using (Model) and have you got the installation manual for it?

    - That shows all the 1GN pinouts and functions.


    1TW boards are for digital signals only and are based on a supply voltage of 24VDC +/-10%.

    Per Input current is 10mA and Per Output max load is 100mA based on the external supply, so I don't think 9V will cut it.

    I don't think there is anyway around it but to use relay banks in between.


    I've never used 1TW for the signals before, so I cannot say, but as far as 'mapping' signals to the 1TW is concerned, you would just need to allocate the dedicated signal to the relevant signal on the 1TW

  • The TIG welding unit we have is pretty amazing, it has a wire feed attached to it, so all you need to do with the hand piece is toggle/hold the trigger downwards to start the arc and it will continue to weld, no expect input needed just continue moving.


    The robot model we are using is:

    Kawasaki RS015XA


    I will check with the supervisor where the manual is located.


    Thank you heaps for all your help you are confirming and parting more of this together in my head.

  • Ah right, so you're Robot Model is not a dedicated Arc Weld Robot then RA or BA are usually this.

    Sounds like someone has put Arc Weld Firmware on it then.

    Never come across RS15X as Arc Weld before, only as Sealing or Handling.

    I maybe wrong, but I doubt the installation manual will have the information for the 1GN board then.


    As I haven't done TIG with the Kawasaki, what is 'jumping off the page' in my eyes is the following:

    - How will the the controller or power source know if either device is in an error state, or able to handshake between each other for status exchange.

    - How will the weld power source be able to adjust the wire feed rate with the torch tip speed of the robot.....ie around a radius.

    - How will the weld power source be able to detect the 'end of weld' process......ie so the robot will command a slow down sequence.


    Kawasaki Arc Weld Systems have all these features available to handshake with the weld power source as standard.


    Do you know if the weld power source has Ethernet/IP fieldbus protocol available to it.

    If it does, this will solve many problems as all you would need is the peripheral for your weld power source.

    Kawasaki will have Ethernet/IP available as a software option already in your robot.

    Then interfacing will just be an ethernet cable between the controller and weld power source, and just a case of IO allocation then.

    This would be my recommendation if the weld power source has this option (if I'm honest, I would be very surprised if it hasn't especially it its recent).

  • I will do some digging on the welder unit comms features!


    With those issues you mentioned, there will be a boiler maker standing by making minor adjustments if required and stopping the robot if there is a weld issue (cordless robot remote),the welding requirements don’t need 100% correct settings (fair bit of wiggle room).


    Would it be possible to...

    use the ‘gas on’ on the 1GN board and run that straight into the WCR inputs? (Currently the ‘gas on’ Is not being used as it is not required), but just for a temp measure, could it be used to activate the WCR?


    There is a 24Vdc supply inside the controller, so I believe it would be possible to run a wire to the gas on contacts, than in series it to the WCR (which I’m am really hoping is plug CN4 pins 5-6, just found a wiring diagram for the plasma that was connected to this robot, and the description for those pins is “Arc est” Which I believe is ‘arc established’), So fingers crossed it is the WCR Input we require.


    Very sorry if some of this does not make much sense, I’ve just finished a night shift, if it is really bad I will edit it after a sleep.

  • Attached are a couple of manuals (not sure if you have them).

    Main Installation for a dedicated arc welding robot including 1GN pinouts.

    External IO - Useful for looking at the signal timing charts.

    AS Arc Welding Manual - Reference AS Commands.


    If it was used with a plasma cutter, interfacing would have been fairly straight forward I would assume and probably didn't use the 1GN board, just 1TW.

    The old code used with that would give an indication of how it was interfaced probably.

    Can you post any of the previous code without compromising on company ip?


    With the issues I mentioned, to put into context:

    - When moving around a radius, as you will be 'linearly moving' the tip speed will change, you will end up with too much or too little wire for the weld pool.

    - Resulting in a very bad join, possible too little penetration or too much.

    - You would need to set different speeds for any radius specifically to match the wire feed rate, could be a headache, but with some tickling, made to work.


    - If the wire sticks or a problem at the weld power source, the controller is still outputting the 'torch trigger' and will continue to be on until told to turn off.

    - With your configuration, there is no mechanism in place to detect this, so the robot will continue moving through the program.

    - Likewise if the robot went into error, as long as the output was controlled and turned off to the weld power source, wire will stop being fed.

    - Otherwise the robot will stop, the wire is still being fed and possibly the weld power source is still providing current (but I think you have that covered).


    - At the end of the weld, the robot will want to move clear before disabling the wire feed, dragging the wire (as it's probably stuck to the weld pool).

    - Could cause some damage to the torch etc.

    - So this would need to be carefully managed in the code.


    Personally (if Ethernet/IP is not an option), if you ditched the 1GN completely and just used the 1TW with relay banks, this would get you closer to a result.

    Then you could map whatever signals you need to the 1TW and any piggy backing could be done simply in code with SIGNAL x,x,x commands.

    This would be the simplest method and keeps all your signals on the 1TW and in total control of them and freedom to synchronize what/where you want.

    Some of the issues above could be eliminated adopting this approach and using standard AS Commands.


    If you do really want to utilize the 1GN though as you've mentioned, you will need to use Arc Welding AS Commands.

    The WCR detection time can be delayed by use of WCR_ON_DTIME Command, which will give you up to 60s to feed the input before arc failure error.

    So there is some breathing room there too....that command is listed in the Arc Weld AS Manual attached.


    Difficult one to call with your setup though.

    As a test, you could do what you mentioned and see how you go......it will either work or end up rolling doughnuts.

  • see attached code. you actually wrote this code. i have just butchered it. the first one you helped us with worked very well. and we were able to machine out the holes. this code is to weld the holes back up.

    there is no linear weld movements, its all circumferential.


    once the welder is working with the robot, i can control the welder with 4T step signal, this will allow me to set 2 weld settings on the welding machine for the robot to change.

  • You're using and butchering my code....I don't usually publicise 'debugged' code, just examples......so you run risks if you don't completely understand it.

    Just be aware, as I hold no liability if it's used and there are problems.


    I was actually referring to the 'old plasma cutting code', this would give you an indication of how it was configured before and possibly provide you with examples of how the code was operating.


    So it looks like you are (forgive the words)...'band aiding the code' together to try and get your results.


    Unless you are utilizing all the weld signals that get interfaced between the arc welding software and weld power source, I repeat you will run into issues with the lack of signals the Kawasaki requires in order to utilize the AS Arc weld commands (like you're using) and will have to 'code' around it.


    I would personally ditch the 1GN, use the 1TW with a couple of relays and replace your code with standard AS and weld on/off signals.

    These signals do not need to be dedicated, you can setup general purpose ones instead.

    This eliminates any 'weld related errors' interrupting the process as you will just be using standard AS commands.


    For example below will not produce any arc weld related errors.

    - just requires an output from 1TW to input via relay to weld source

    - Just requires an output from weld source to input via relay to 1TW board.

    You could then incorporate 'trap' areas and user timers around the 'WAIT' that if a set time has elapsed without the signal being received, then to stop the process, recover or do whatever.

    You could go further and code in an interrupt that monitors for the loss of the 'current flowing' signal during the actual weld and dive into a different 'trap' area to cease the weld and cancel signals etc.


    Again, the above is just an example........

  • Yes, we understand the issues with butchering the code and you holding no liability for what we are doing.


    Is there a way to add a step in that depresses and holds in the ‘Gas on’ button on the TP?


    Example, welder moves to position, next step, ‘gas on’ is pushed (physically on the TP, so a wait command) and it latches that button until it gets to its finally position then stops latching.

  • Kawasaki is a retentive system.

    You turn on something, it remains on until turned off, so latching is automatically carried out until otherwise programmed.

    Dedicated signals are controlled by the system and therefore cannot be manually controlled.

    Pushing the button is activating the dedicated signal, that is it's dedicated purpose for manual control/testing of the GAS ON.


    So in answer to your question, unfortunately no.

  • Gone with ditching the 1GN board and just using the 1TW and running a output to a relay which is being used as the welder hand piece switch.


    Working far easier!


    I am not great with the coding side, but I am curious, is there are way to code in when the e-stop on the robot is pushed, it stops the outputs until the cycle is started again?


    Also with the plasma, it was wired into the 1GN board, used like that at a different site, they just gave us the drawings for it.


    Again thanks heaps for your help!

  • An emergency stop is a condition as opposed to any function the controller provides, but you can monitor for that condition and provide an action to it.

    There is also a dedicated output called under emergency stop located in Aux 0602 one of the last pages can be used, if you wish to use that.


    In the SYSTEM SWITCH area, you can monitor for:

    - Teach pendant emergency stop button status

    - Operation panel emergency stop button status

    - External emergency stop button(s) status

    - Controller emergency stop condition (which is looking for the OR of the above).


    To monitor for a SYSTEM SWITCH status you can effectively use any iteration.

    A basic example to toggle an output based on the emergency stop condition:


    IF (SWITCH(EMERGENCY)==TRUE) THEN ; Emergency stop condition is active

    SIGNAL 20

    ELSE

    SIGNAL -20

    END


    You also have the individual emergency stop conditions you could monitor for in the same way if you wish to itemize them:


    IF (SWITCH(TP_EMG==TRUE) THEN ; Teach Pendant emergency stop condition is active

    SIGNAL 21

    ELSE

    SIGNAL -21

    END


    IF (SWITCH(OP_EMG)==TRUE) THEN ; Operation panel emergency stop condition is active

    SIGNAL 22

    ELSE

    SIGNAL -22

    END


    IF (SWITCH(EX_EMG)==TRUE) THEN ; External emergency stop condition is active

    SIGNAL 23

    ELSE

    SIGNAL -23

    END


    A blanket cancellation of ALL general purpose outputs could be simply:


    IF (SWITCH(EMERGENCY)==TRUE) THEN ; Emergency stop condition is active

    RESET

    END

Advertising from our partners