M340 CANopen and Woodward easygen

V0N_hydro

Member
Join Date
Sep 2010
Location
lower mainland
Posts
560
I'm trying to get a schneider m340 plc to talk to a woodward easygen 3100 enginer controller over canbus. The 3100 is just a unit to test with, final product will have two easygen 3400 and five LS-5 breaker controllers all talking on canbus.

I've loaded the easygen 3100 EDS file in to the unity hardware catalog manager, added the 3100 to the canopen bus in unity, assigned the same node ID in the easygen as in unity, and have the two connected with a straight-through serial cable (both devices have DB9 male connectors for canbus.) no termination resistors ... I suppose this could be the problem?

the M340 is the canbus master, the easygen and all other devices will be slaves.

I can't get the easygen to leave the pre-operational state. I can send the NMT commands to stop it and the status for the slave ID goes to stopped in M340 canbus master. the m340 is configured to start the node in the bootup procedure configuration for the slave. When I send the NMT command to start the node it goes to preoperational but never leaves pre-operational.

The number of transmitted and received frames shown in the M340 PLC climbs at a steady rate and they are nearly equal, leading me to believe that the straight-through serial cable without resistors is working fine as a communications channel.

I have also tried to configure a TPDO in the easygen 3100 using the toolkit software and configured the same TPDO in the m340 in unity, but since the easygen never leaves preoperational state the PDOs don't come in to play.

Using the CANopen tab on the easygen device in unity allows read a SDO to be sent, this returns an "illegal server failure" status.

any thoughts?
 
I boosted the baud rade to 250 kbps and no longer any frames sent or received, so I made a cable with the 120 ohm terminating resistors soldered across can_h and can_l and i'm back to where I was, with a higher baud, and no longer having to wonder if the missing resistors matter.
 
Why do you want to go the CAN route? I just use Modbus RTU - much easier.
The last job I completed with easYgens I had 6 of them - all on Modbus RTU twisted pair - no hassles at all.
Just doing one at the moment with 3 easYgens and 8 LS5s. Modbus RTU again - I dislike CAN almost as much as I dislike BACnet.
 
when I was approached with the project they had already 'chosen' CAN, so I started down that path and now that I can't get it to work it has become a challenge :p. I had only limited (and painless) exposure to CAN before and it seemed like an interesting solution to the problem of lack of structure in modbus - have to refer to the manual to find out what each register contains and how it is formatted! I have heard nothing good about BACnet though, if CAN is as well regarded as BACnet forget it.

if the two easygen's can loadshare with eachother over modbus, and the LS5s can reduce current through the breaker they are controlling by adjusting the easygens, and the LS5s direct the easygens to sync across the breaker they are controlling, and the PLC can choose which breaker is to be opened / closed then I'll forget about CAN tomorrow.

Not sure how all that can happen with only 1 master, but the 4" of woodward manuals will probably offer some clues.
 
You will require CAN between the easYgen and the LS5s - the easYgen and the LS5s all talk together over CAN. You will definately need a 120 ohm resistor at each end of the CAN line. Also use at the very least 1 sq. mm screened cable between the easYgen and the LS5s. If the engine has CAN the easYgen can hook into the engine also with an option for the engine in the easYgen. The easYgen system talks CAN - end of line - and the protocol is J1939 - that could well be where the problem lies.
If you wish to extract data from the easYgen and LS5s then use Modbus RTU for that. You can also send commands over the Modbus RTU to start the engine, open and close breakers etceterea - there is a 'mud map' in the easYgen manual.
I NEVER send engine start and stop signals to the easYgen via comms - always hard wired. The signals to soft transfer both ways, open and close ACBs and ACB status signals I always hard wire to the LS5s as well.
I was criticised in Ozz for being a 'not very sophisticated' systems integrator for doing it this way and not using comms. Guess what? Just about all the integrators hard wire for these signals now - noise in the comms lines and all sorts of s**t happens - not a pleasant surprise I can assure you. Happened to my opposition and the guy is also a mate of mine - we talk all the time even though competitors. He WAS one of the 'sophisticated integrators' ONCE.
The Woodward CAN communications are very stable and have never really had a problem with them at all. I get the local Woodward distributor to come and set that side of things up - he is ex Navy and very feral about proceeding through the set up a step at a time - I cannot be bothered as I normally have my time cut out with PLC programming and commissioning and sorting out all the other contractor's s**t for them - they never help me though. Better to help them, make some money and move on to the next job quite frankly. Setting up PWM PID loops etcetera also takes time and the local guy can do it in half the time it takes me.
If you need some more assistance just post.
Regards Bob
 
Seems like different experiences with the communications between woodward controllers using CAN being reliable vs. interfacing with another system suffering from noise (on RS485 modbus?).

On this one I figured since the woodward controllers were using canbus for critical control (syncing and load sharing) I may as well hop on there to send 'starts', unloads, etc. If the canbus doesn't work the whole thing falls apart anyway.

If the M340 PLC can't hack it as the CANopen master it seems like it could listen in via a CAN-gateway such as this: http://www.proconx.com/esenet/ I find it interesting that this can gateway has explicit support for the easygen and LS5 devices. do they use CANopen in some non standard way?

Does anyone have a favourite hardware/software for their PC to monitor/log/debug traffic on CANopen bus?

Some projects we hardwire all the outputs back to the PLC and have remote PLC IO racks with only inputs, some projects all IO is hardwired with the exception of one remote IO rack which is several km away, and future projects ... somewhat undecided what the best solution is. There is a new quantum card with 4 ethernet ports so we could do remote IO racks in an ethernet ring.

I've got a fair bit of figuring out to do, but for now it seems like the most robust solution is not going to be a PLC as CANopen master so I will abandon that.

thanks for your thoughts
 
The Woodward comms are robust - I just fail to understand why you would want to cut into the CAN at all. The Proconx devices work and have been designed for the Woodward systems. I have used them many times before. I just hate trying to cut into the CAN.
The last guy I saw do it was trying to get it all working for over a week - I do not have the time. He was using a Toshiba PLC. Perhaps his noise problems were introduced by the PLC or his wiring - I do not know - I only know he had a lot of problems. I was commissioning 6 generators, 6 auxiliaries panels and 4 soft transfer ATS units at the time (total of 14 networked PLCs) and had my work cut out and so no desire to find out his problems or help him in any way - too busy. It all happened in less than a week and was online!
Generators are a big part of my business and quite frankly I leave things on the CAN that were designed to be there and hard wire start/stop and alarm signals. Saves me having to sort out a pile of stuff.
With one easYgen and the LS5s you do not need the Proconx device - you only have one easYgen and you can access all the LS5s through the one easYgen if you wish via Modbus RTU/RS485.
If there were several easyGens then I would use the Proconx device to access everything on the CAN via Modbus RTU.
If you have a lot of time to fiddle about then go for the CAN by all means but I do not have lots of time and always look for the easiest and quickest solution that will work properly to get in, get the job commissioned and get paid - Modbus RTU is that route not CAN where I would probably have to fiddle for days trying to get it to work. If you also hook the CAN into the engine and get the correct option in the easYgen you can get a lot of information out of the engine via the Modbus RTU as well. The Woodward controller translates it for you and you do not have to do a whole lot of floating point maths to sort out the information from the J1039 protocol. When extracting data straight from the Modbus RTU interface on a Caterpillar, for example, I spend hours doing floating point maths as the value you receive for, say, oil pressure then has to have a precision and offset applied to it - that is J1939!
You can send all your commands through the Modbus RTU port on the easYgen interface straight into the CAN. You can also receive all information back from all devices via Modbus RTU.
Schneider M340 is native Modbus and would certainly be the easiest and quickest way to go.
One thing though, if you wish to use no parity for Modbus RTU with Schneider you will need to use 2 stop bits - they will not allow you to use 1 stop bit with no parity.
How do you like the horrible Schneider software by the way?
 
the woodward manuals show diagrams of the CAN network with a PLC on them, which is probably why people try and go that route.

Perhaps woodward has an implementation of CAN that is different from that of toshiba or schneider so it works great when it is all woodward on the bus but doesn't play as nice with others. The fact that Proconx has a CAN to ethernet gateway, and then a separate prodouct for easygen and LS5 CAN to ethernet makes me believe the woodwards might be a bit special.

in any event, I'm going to hardware the two or three signals I need to send to the woodwards, either hit the CAN via proconx for any data or pull it off modbus and be done with it.

I don't mind the unity software, it mostly lets me do what I need to get done and stays out of the way. Haven't tried much else though.

Thanks for your help.
 
Use Modbus RS485 for mine - easiest and quickest by far. Have done many that way and a heap more to do in the near future.

Good luck.
 
Go to www.woodward.com then join - it is free.
You can then do a search for your particular model number and download the manuals.
The latest ones have a new memory area for extraction of electrical data in one go.
If I remember correctly you can only extract 30 words at a time - any more and it will not work - you have to extract data from the different areas in amounts up to 30 words.
The easYgen wil have to be set up for your communications - I normally set them to 19.2, 8, 1, none. You mentioned you have set up for 8, 1, even - that should be OK - Schneider require all the bits to be used (10 bits) for communications.
 
Good Day,

In my case i am connecting HMI Magelis with Easygen3000 for displaying the common parameters voltage surrent frequency Breaker Status etc etc.

I am not using PLC its just HMI for monitoring purpose for that i need MODBUS REGISTER list.

BR

Genjua
 
Same answer
Go to www.woodward.com then join - it is free.
You can then do a search for your particular model number and download the manuals.
The latest ones have a new memory area for extraction of electrical data in one go.
If I remember correctly you can only extract 30 words at a time - any more and it will not work - you have to extract data from the different areas in amounts up to 30 words.
The easYgen wil have to be set up for your communications - I normally set them to 19.2, 8, 1, none. You mentioned you have set up for 8, 1, even - that should be OK - Schneider require all the bits to be used (10 bits) for communications.
 
Thank you very much for your reply.

I will create an account on above mentioned website.

another question can we monitor volatge frequency KHW KW current of all phases of easygen300 over Modbus network?

BR

Genjua
 
I set up the Schneider M340 PLC to talk directly to the easygen on 485 and left it at 8-n-1 and it worked fine.

Only once in my life have I ever seen anything which wasn't 8-n-1, and it was a chinese "envada" brand temperature monitor unit.

BobB is it any particular Schneider equipment which has to use 2 stop bits?
 

Similar Topics

Hi, I'm configuring the M340 controller with ATV320 inverters via Canopen. Everything was fine until today, when after starting the electrical...
Replies
1
Views
1,325
We have 6 lexium servo drives that are being controlled from a schneider m340 via canopen baud rate is 1mb. The drives take a commanded position...
Replies
1
Views
2,073
It is first time we are working with CANOpen. There is a task to control Siemens Micromaster430 from Modicon M340. We've got EDS from Siemens...
Replies
5
Views
5,181
Hello all, I am wanting to update the system clock via NTP in the M580/M340. I'm aware that we are able to connect to a NTP in the controller...
Replies
4
Views
68
I have 9 field devices, three METSEPM5110 power meters and six ACE949-2 rs285 interface modules. I want to read this Modbus rtu data through rs485...
Replies
8
Views
315
Back
Top Bottom