Author Topic: ESAB interfacing  (Read 1010 times)

0 Members and 1 Guest are viewing this topic.

Offline glory00

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 24
ESAB interfacing
« on: June 13, 2017, 06:10:45 AM »
Dear All,

i am using ESAB Welding machine and i want to connect it with Kawasaki robot by eathernet/ip.
i cant understand what is wrong.  i did all the steps in correct way.

has anybody made interfacing between ESAB and kawasaki before ? please let me know what should i do ?
i am using ESAB Aristo W82.

Offline kwakisaki

  • Global Moderator
  • Sr. Member
  • *****
  • Thank You
  • -Given: 17
  • -Receive: 68
  • Posts: 409
Re: ESAB interfacing
« Reply #1 on: June 13, 2017, 07:13:20 AM »
Quote
i did all the steps in correct way.

Can you provide some more details:
1. Are you using Fieldbus/Anybus or Software Ethernet IP.
2. Is Fieldbus enabled.
3. Is Kawasaki being setup as Adapter or Scanner.
4. What 'steps' are you referring to - Ethernet/IP is not plug n play.
5. Any error messages on the Controller, what is error code on Ethernet/IP Status screen.
6. Have you set correct signal allocation and no.IO
7. Have you set correct GSDML information correctly as per EASB Ethernet/IP requirement.
8. Is cable correct.


Offline glory00

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 24
Re: ESAB interfacing
« Reply #2 on: June 13, 2017, 08:34:01 AM »
Dear Sir,

first of all, i want to thank you for your quick and kind reply.
you always reply in quiclkly which makes us happy. thank you.

1-i am using software eathernet
2-yes, the fieldbus is enabled
3-i put kawasaki as Master
4-
5-i got only one error, the torch interfacing is error, i read about this error and it's because of the limit switches in the torch ( it was not connected) . after that i connected but the same error occurs. it's a minor error.
the Eathernet/Ip status screen shows scanner and adapter in offline without errors.
6-yes all the signals allocations and i/Os and the setting in the controller was adjusted
7-what is the GSDML , i got the EDS file from ESAB and i open it but i didnt find the information of the TargetConfigConnInstance, TargetProducingConnPoint, TargetConsumingConnPoint, TargetConsumingConnTag, TargetProducingConnTag, ProducingDataRate and ConsumingDataRate ?
8-the cable, please let me know which one is correct. i have tried the straight cable and also tried the cross cable but nothing happened

Offline kwakisaki

  • Global Moderator
  • Sr. Member
  • *****
  • Thank You
  • -Given: 17
  • -Receive: 68
  • Posts: 409
Re: ESAB interfacing
« Reply #3 on: June 13, 2017, 06:55:39 PM »
Thanks for the information, that assists greatly
- Oops, yes my bad, I mix my profinet and Ethernet ip file reference up - yes you are correct eds file.

As for errors, ok Torch Interference is not connected to the Ethernet/IP process and as you say is looking for limit switch.
- To remove error, goto dedicated input aux function and dedicate Torch Interference to 1000.....I think that will remove monitoring.
- Also Torch Interference is only monitored in Repeat (from memory, so in Teach Mode, the error will not appear and can be reset).

Where a lot of issues lie, is that the fields in the Kawasaki are not necessarily named in accordance with the EDS file, so locating the relevant information and making sure it is correct for the field, can be frustrating.
A free application called (EZEDS) allows you to open an EDS and understand the terminology a little clearer and should assist you in finding the instance values that need entering in the Kawasaki.
- These values ( I think you only need 3 fields - TargetConfigConnInstance, TargetProducingConnPoint, TargetConsumingConnPoint......to enter in Aux 06080904 aswell as the IP of the EASB.

I am away from my documentation at the moment, and wouldn't want to steer you in the wrong direction, so give me a day, and hopefully I can point you in the right direction, but:
Software Ethernet/IP uses Port 2 on the 1VA board, not Port 1.
- I think you need to enter 0 for the ip address in the Aux 0812 for Port 2......not too sure on this, but it can't hurt.
- Then set the relevant IP for Port 2 in Aux 06080901.
- Set the correct amount of bytes you are using for the Output and Inputs in Aux 06080903.
This I think is the initial setup for the Kawasaki.

- Then set the relevant IP to one of the scanners (this will be the EASB) in Aux 06080904 and the target  instances.

Like I say, give me a day to look at my docs and I should have some further information.
« Last Edit: June 14, 2017, 06:15:53 PM by kwakisaki »

Offline glory00

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 24
Re: ESAB interfacing
« Reply #4 on: June 14, 2017, 04:36:03 AM »
Thank you, i am waiting your update.
regards,

Offline kwakisaki

  • Global Moderator
  • Sr. Member
  • *****
  • Thank You
  • -Given: 17
  • -Receive: 68
  • Posts: 409
Re: ESAB interfacing
« Reply #5 on: June 14, 2017, 06:08:36 PM »
I've accessed some of my information which may/or may not help.

What I recall, that there are many fields that give you the impression, that there's lots of settings you require to enter.
- The information I have does not deal with any 'fine tuning' settings - which are the majority of the fields funnily enough (I assume).
- I only adjusted a couple of areas to obtain a basic connection and IO exchange.

Saying that, the settings I used, I had to study the EDS (using EZEDS) in conjunction with Fieldbus Manual and also looked into Device Net (Rockwell) to cross reference some of the terminology.
- The error codes are Rockwell error codes that appear in the Ethernet/IP Status window.
- So I would definitely recommend a bit of background reading........................

So here is a brief order of exactly what I did:
Also, the interconnection cable is a standard patch lead one to one.
I used a Kawasaki and an extended IO module which only had 8 inputs and 8 outputs available ( I kept it simple).
1. Enabled Fieldbus.
2. Left Local IO at 32 inputs/32 outputs, but added 16 signals to Master = 80 signals in total.
3. Removed the ARM ID IO allocation.
4. Aux Function 060802 Assign Ports to physical interface and set Master as 12 (Software Ethernet/IP option) and Slave as 0.
5. Reboot and confirmed Software Ethernet/IP status was in the monitoring area - displaying Adapter/Scanner 1-3 all in Grey and OFFLINE.
6. Aux Function 060801 and set allocation of signals which was just Master (65 - 80 set as 1).......and Master (1065 - 1080 set as 1001) - I left the Locals allocated.
7. Aux Function 06080901 Port Setting and set an IP Address for Port 2 (which is the bottom port on the 1VA - I set this to 192.168.11.250
8. I then set my extended IO module IP address on the module to 192.168.11.253

Now the interesting part with the EDS - which contains the parameters which you enter in Aux Function 06080904 - IO Communication.
(I can only go off the EDS file for the module I was using, but I expect yours will also be the same, but maybe different values).

OK, so in the EDS is a section called [assembly]

[Assembly]
        Assem101 =
                "Input",
                "20 04 24 65 30 03",
                ,
                0x0001,
                ,;
        Assem102 =
                "Output",
                "20 04 24 66 30 03",
                ,
                0x0001,
                ,;
        Assem103 =
                "Configuration",
                "20 04 24 67 30 03",
                ,
                0x0001,
                ,;
        Assem198 =
                "Input Only",
                "20 04 24 C6 30 03",
                ,
                0x0001,
                ,;
        Assem199 =
                "Listen Only",
                "20 04 24 C7 30 03",
                ,
                0x0001,
                ,;


So in Aux Function 06080904  I set ONLY the following on Page 1:

Instance = 1
IP Address: IP Address of the Extended IO Module I set earlier
TargetConfigConnInstance = I set to 103 (from the assembly section above).
TargetProducingConnPoint = I set to 101 (from the assembly section above).
TargetConsumingConnPoint = I set 102 (from the assembly section above).

Then on Page 3: I had to obtain the Total IO I was going to be using on the Extended IO Module (in bytes) and enter those values in Input Scanner Size/Output Scanner Size
- Even though I had 8 inputs and 8 outputs (1byte in, 1 byte out), the module had an extra monitor function which required another input byte.
- So Input scanner size was set to 2 bytes and Output scanner size was set 1 byte.

Once I had these set, everything came ONLINE
The monitoring screen showed GREEN and ONLINE for Scanner 1.
- I fired some outputs from the Kawasaki and they fired turned on the outputs on the Extended IO Module, like wise I linked a couple of Inputs on the Extended IO Module and they displayed on the Kawasaki.

I never changed any other parameters except what I have listed above.

So in your case, I would try exactly the same and see how you get on.......(use the values from your EDS in the assembly section aswell as the Input/output size in bytes for the EASB)
I am pretty sure the above is just a 'minimum' requirement of settings to establish a connection, and the other parameters are for fine tuning etc.

I also connected another Kawasaki Controller (set as a slave) to it using setting 2 and the values from the Kawasaki EDS.
- So I ended up with both Extended IO Module and another Controller connected at the same time (scanner 1 and scanner 2 with IO exchange between the Master).

Ordinarily you would load the EDS into a PLC and the PLC would then handle all communication based on these parameters - Unfortunately, the Kawasaki Controller is not a PLC, and parameters require manually entering, it would be great if you could load the EDS into the Kawasaki, however I can't see that ever being an option...................

Hope this helps......................
« Last Edit: June 15, 2017, 10:25:22 AM by kwakisaki »

Offline glory00

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 24
Re: ESAB interfacing
« Reply #6 on: June 18, 2017, 09:34:49 AM »
i really appreciate your efforts.
the words are not enough to thank you.

i will try this way and update you.

the last thing, i am checking the EDS file of ESAB and i can find the assem for input and assem for output , but i cant find the assem for configration.
the assembly has only 2 rows which i mentioned above.

any idea please ?

Offline kwakisaki

  • Global Moderator
  • Sr. Member
  • *****
  • Thank You
  • -Given: 17
  • -Receive: 68
  • Posts: 409
Re: ESAB interfacing
« Reply #7 on: June 18, 2017, 11:54:31 AM »
Quote
the last thing, i am checking the EDS file of ESAB and i can find the assem for input and assem for output , but i cant find the assem for configration.
the assembly has only 2 rows which i mentioned above.

I knew you would say that.............. :wallbash:.......for reasons, I wish I could answer......
The device I have, has that configuration in the assembly......without that setting, I always see an error code in the status of 315......so for my device - this config value is a requirement.

I am not an EDS file expert, but I assume that these assembly instance values set specific parameters native to the IO of the device that the 'connection manager' uses to establish types of connections.
As I see a 'process' within the connection manager parameters.
The following, may be worth a try then.....(I cannot test this theory due to the device I have unfortunately) and if you don't mind trying it......

Firstly, have a look at my assembly information - notice the hex values in each assembly - notice the difference in values for input, output and configuration?
Convert those values from HEX to DEC and you get
65 = 101
66 = 102
67 = 103
Assem101 =
                "Input",
                "20 04 24 65 30 03",
Assem102 =
                "Output",
                "20 04 24 66 30 03",
Assem103 =
                "Configuration",
                "20 04 24 67 30 03",

Now, if you look at the Connection Manager section within the EDS file.
I believe this is the area that is used to establish the 'type' of connection to the device, so your Master device has to match a configuration within the connection manager.......
Because there is input AND output exchange, then the ONLY configuration within the connection manager that includes input AND output is Connection 1 (Exclusive Owner) which I have displayed below.

[Connection Manager]
        Connection1 =
                0x04030002,             $ 0-15    = supported transport classes
                                        $ 16      = trigger: cyclic
                                        $ 17      = trigger: change of state
                                        $ 18      = trigger: application
                                        $ 19-23   = trigger: reserved
                                        $ 24      = application type: listen-only
                                        $ 25      = application type: input-only
                                        $ 26      = application type: exclusive-owner
                                        $ 27      = application type: redundant-owner
                                        $ 28-30   = reserved
                                        $ 31      = Direction: Client = 0 / Server = 1
                0x44640405,             $ 0       = O->T fixed size supported
                                        $ 1       = O->T variable size supported
                                        $ 2       = T->O fixed size supported
                                        $ 3       = T->O variable size supported
                                        $ 4-5     = O->T number of bytes per slot (obsolete)
                                        $ 6-7     = T->O number of bytes per slot (obsolete)
                                        $ 8-10    = O->T Real time transfer format
                                        $ 11      = reserved
                                        $ 12-14   = T->O Real time transfer format
                                        $ 15      = reserved
                                        $ 16      = O->T connection type: NULL
                                        $ 17      = O->T connection type: MULTICAST
                                        $ 18      = O->T connection type: POINT2POINT
                                        $ 19      = O->T connection type: reserved
                                        $ 20      = T->O connection type: NULL
                                        $ 21      = T->O connection type: MULTICAST
                                        $ 22      = T->O connection type: POINT2POINT
                                        $ 23      = T->O connection type: reserved
                                        $ 24      = O->T priority: LOW
                                        $ 25      = O->T priority: HIGH
                                        $ 26      = O->T priority: SCHEDULED
                                        $ 27      = O->T priority: reserved
                                        $ 28      = T->O priority: LOW
                                        $ 29      = T->O priority: HIGH
                                        $ 30      = T->O priority: SCHEDULED
                                        $ 31      = T->O priority: reserved
               Param9,Param5,Assem102, $ O->T RPI, size, format.................This is for Output
               Param9,Param8,Assem101, $ T->O RPI, size, format.................This is for Input
                ,,                      $ proxy config size, format
                 ,Assem103,              $ target config size, format...................I expect your EDS does not contain this
                "Exclusive Owner",      $ Connection Name
                "",                     $ help string
               "20 04 24 67 2c 66 2c 65";    $ Path.......................This path seems to contain the Output, Input and Config HEX values(assem101 (65), assem102 (66) ,assem103 (67))

Now, the thing I think that would be worth trying is this:
I am sure the above $path HEX value is the HEX value that sets the 'type of connection' as it contains the output, input and configuration values.
In the above path, you can see 67 - which is my assem103 DEC to HEX value.
In your path of your EDS Connection Manager for Connection (Exclusive Owner), you will see a different value in place of the '67' of mine.
- So, I would suggest, convert your value that you have in that path from HEX to DEC and then enter that DEC value in the TargetConfigConnInstance field on the Kawasaki.
- As well as the order I did things in my earlier post.

I hope you can follow my theory here..........and see if that works.....something tells me it will........
     
« Last Edit: June 18, 2017, 12:04:02 PM by kwakisaki »

Offline glory00

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 24
Re: ESAB interfacing
« Reply #8 on: June 20, 2017, 09:19:14 AM »
Dear Sir,

thanks a lot. i have added the values from EDS file and i also convert that number from HEX to Decimel and everything is ok.
the robot is connected with the welder.

thank you for your everything.

Offline kwakisaki

  • Global Moderator
  • Sr. Member
  • *****
  • Thank You
  • -Given: 17
  • -Receive: 68
  • Posts: 409
Re: ESAB interfacing
« Reply #9 on: June 20, 2017, 03:38:16 PM »
 :top:..........Good man, did it work then by using that 'value' from that $path HEX value?

Offline glory00

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 24
Re: ESAB interfacing
« Reply #10 on: June 22, 2017, 04:04:35 AM »
yes, added that values from the path then the robot was connected. :dance2:

Offline kwakisaki

  • Global Moderator
  • Sr. Member
  • *****
  • Thank You
  • -Given: 17
  • -Receive: 68
  • Posts: 409
Re: ESAB interfacing
« Reply #11 on: June 22, 2017, 05:27:40 AM »
 :beerchug:...........PERFECT, that's cleared up an answer for me and thank you for trying it out.
- I recommend using BLOCK programming for Arc Welding, as the tip speeds for wire feed and IO Control are automatically set/received via the Ethernet/IP Interface and BLOCK Steps/Conditions.
- Most welders now have preset parameters (job no.s and process no.s which you setup in the welder) and you can easily set these in the Arc Welding settings, without the need of programming additional tasks for the IO exchange.
- This simplifies the application, programming and teaching processes.

Happy welding........ :cheer:
« Last Edit: June 22, 2017, 05:38:32 AM by kwakisaki »

Offline glory00

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 24
Re: ESAB interfacing
« Reply #12 on: July 03, 2017, 12:39:06 PM »
Dear Sir,

sorry to bother you.
just a question please.

i am thinking how the robot will send the current and voltage and speed of weld to the welder controller   or
how the robot will ask the welder controller to adjust certain voltage, current and speed.

as you know, we can add the voltage, current and the speed of the weld in the robot controller  and i did the mapping for signals between robot and welder controller.  but i didn't do all of them.

at the same time, you can do some conditions in ESAB controller and save it then the robot call this condition ( just call number 1 or number 2 then automaticlly the welder will change the current and voltage to that values ).

how can i use the robot to call these conditions.

so, please i need solution by first way ( set values in the robot ) or second way ( set the values in the welder and the robot call these programs ).

any idea ??
is it analogue signal ?

awaiting your kind reply

Offline kwakisaki

  • Global Moderator
  • Sr. Member
  • *****
  • Thank You
  • -Given: 17
  • -Receive: 68
  • Posts: 409
Re: ESAB interfacing
« Reply #13 on: July 03, 2017, 06:09:48 PM »
Hello, yes I mentioned this feature in my last post.......but it depends on your firmware level.
- If you haven't got AUX 1413, then you will need to contact your KHI Distributor for latest firmware.

You can send 'job no's and 'process no.s' directly to the Welder via dedicated signals (using the fieldbus).
- These signals require allocating using AUX 1413.
- When set, you will see they are added to the Dedicated Output Signals AUX 0602.
- You then set your signal allocation range and dedicate them.
- You will also notice these are included in your weld condition AUX 1401 (if using BLOCK).

When configured, your 'signal allocation' will request the specific profile that you have setup in the welder automatically by using the relevant weld condition and values (if using BLOCK).
If you are using AS, then you will need to 'set' these IO via SIG or BITS command instead.
- But by using BLOCK, this simplifies and reduces any need for additional programming.

Hope this helps.............

Offline glory00

  • Newbie
  • *
  • Thank You
  • -Given: 3
  • -Receive: 2
  • Posts: 24
Re: ESAB interfacing
« Reply #14 on: July 04, 2017, 04:44:34 AM »
Dear Sir,
thank you. you are amazing.

i need a favor please.

i didnt understand the singnal allocation range.  ( could you please explain it to me, also the num of the sig  and the num of start sig )
should i put the number of the byte in the welder in the num of sig.   

ex: in welder i have the byte number 5 for welding data , what should i do ?
please check the attached file.

could you please check the attached file and show me one example, how to use it.

another question please, in this case the robot will send the recorded voltage and current to the welder ?  or asking the welder to use the saved condition in the welder itself ?

sorry but i am messy ?

i really appreciate your efforts.