Accessing I/O on a Moeller PLC from a PC

Yen

Member
Join Date
Dec 2007
Location
Here
Posts
4
After spending the better part of a day on trying to find an answer, I decided finally to try asking, and this seems like a relevant place.

The basic question is simple - I want to disable the program running on a Moeller PLC (a PS4-341, specifically) and access its I/O from a PC and I don't know how.

I have done this sort of thing several times, with different brands of PLCs, and it's usually fairly simple. You find a simple ASCII or binary protocol and implement it or you find that the PLC supports Modbus or OPC.

With the Moeller PLC, however, I could not find anything useful. Moeller's site is a large collection of PDFs, but I couldn't find what I need, and their support links don't seem to have anything relevant.

I found some references to protocols that the PLC uses (SUCOM A and SUKONET), but I could not find any documentation of these protocols.
There is a DLL which implements the SUCOM A protocol, but the functions it has read and write "markerwords" (which I assume are holding registers)and I could not find any details about whether these map to physical I/O and how.

I also found some references to Modbus and OPC, but they were rather vague. As best as I could figure, you need something running on the PLC to support this, and I actually downloaded it, but I don't currently have a cable to be able to test this.

One last point is that I also need to address I/O on expansion modules. I did find some documentation for this (that the format is Line.Station.Module.Byte.Bit), but that only seems to apply to programming the PLC.

So again, the basic question is how to access the I/O on a Moeller PLC and its modules from a PC.
 
You have the answer(s) in your question.

The two best ways to do this would be Modbus or OPC. I am not familiar with the OPC but I would think it would be the easiest way to go.

With the modbus, you'll need a serial converter to go from Suconet to RS232 and you'll have to use the Modbus Slave function block in your program and get the varriables you want into the modbus array. Not very complicated but probably not as easy as the OPC.
 
The OPC approach is broken into the client and server. The OPC Server is a gateway can be thought of like a driver - one side talks to the device and the other exposes OPC funtions.

The OPC client then makes general requests as specified by OPC. Write to this path, subscribe to that tag, etc. An OPC client is usually an application that does more than what you've described. It could be an HMI, a package for alarming or logging historical data, or any number of things.

Yen - your post had several things that led me to believe that you were very experienced, then a red flag. What's your background?
 
surferb said:
Yen - your post had several things that led me to believe that you were very experienced, then a red flag. What's your background?
I'm a PC programmer, and I'm actually used to being on the supporting side in online communities. My company does all kinds of customized control solutions in a variety of unrelated fields (e.g. agricultural and medical), including industrial control applications. I have some experience with OPC, but not for something like this.

Some of our systems replace old systems where the client does not want to replace the hardware. In such cases, we run the control code on a dedicated PC and use the existing hardware as remote I/O. This method has numerous advantages and disadvantages and this is not the place to go into it. Suffice it to say that there are systems where such a solution is legitimate and this is one of them.

In the past, I've done such systems by writing code to implement proprietary protocols or used existing libraries to work with Modbus. I would rather avoid using OPC due to its perceived relative inadequacy for something like this (at least in my mind), but without running an actual test, I don't know whether it's inadequate or not.

For most systems, this is pretty simple. For example, if they use Modbus, reading registers 40001 and on will work for DI, etc. I'm just not sure whether this will work on the Moeller, and If I understand Norm correctly, to get this to work, I need to:
  1. Get a converter (it seems easy enough to build one, at least for testing, since the pin assignment is documented in the manual)
  2. Install the programming software for the PLC.
  3. Write a program which uses the Modbus slave block.
  4. Configure the PLC so that the I/O maps to the Modbus registers.
  5. Run the program on the PLC and communicate with the Modbus slave.
Is this correct? Do you have any input on the speeds you can achieve with such a setup?

P.S. Not that I want to sound like a n00b, but what's the red flag I raised?
 
I believe your steps are correct. The Moeller converter to go from Suconet K to RS232 is shown here:
ftp://ftp.moeller.net/DOCUMENTATION/AWA_INSTRUCTIONS/18230899.pdf

From a speed standpoint, there are many many factors that will go into that.

The PS4-341 is a pretty fast controller so that shouldn't be a problem, especially if you are only going to be mapping the I/O to arrays for Modbus use.

I do believe the Modbus block does run asynchronouse to the program scan but again, the speed of the processor helps there.

I think the highest baud rate is 19.2k so that could be a bottle neck.

There is a section in the manual S40AMK5g.pdf on page 6 that discussed responce and reaction times.

Your hardest learning curve might be the Sucosoft S40 programming which is, as I like to say, intuitively un-obvious.
 
OK, thanks. I don't know the exact details of the system, but I have seen from similar systems that a rate of around 0.5 to 4 Hz is enough for reliable control.

I won't be in the office tomorrow, but hopefully on Tuesday I'll have a cable I can hook up to the PLC to play with and then I'll be wiser and can report back with how it worked. I just hope that mapping the I/O and programming the PLC will be simple enough to not require spending a lot of time.

I'll be glad to hear of any other details you think are relevant.
 
Is there anybody out there? :)

I want to access I/O from my Moeller PS4-341 to display data in a supervisory using OPC. I'm able to read/write markers on PLC, but I don't understand how I can access the inputs. Is there a way to do this by mapping I/O on markers or something like that?

Thank you, guys!
 
Is there anybody out there? :)
I am, but you won't get any help from me. We ended up replacing the hardware in that project, so I never got to do any actual work with the Moeller hardware. You might wish to start a new thread with more details on what you want.
 
Is there anybody out there? :)

I want to access I/O from my Moeller PS4-341 to display data in a supervisory using OPC. I'm able to read/write markers on PLC, but I don't understand how I can access the inputs. Is there a way to do this by mapping I/O on markers or something like that?

Thank you, guys!

If you have the functionality you need with markers then the easiest plan is to write some code to copy the I/O status to markers and use those in your OPC.

I haven't seen one of these controllers in years.
 
I was just wondering if there was a way to access I/O without extra code to copy them to markers (which I hope I'll be able to do it). But it seems the only solution.

By the way, I hate this PLC support (lack of information). Unfortunately, I'll have to deal with it.

Anyway, thanks for your reply :)
 

Similar Topics

Hi all, I am having issues accessing my Cimplicity software - the site code changed after re-install and I am no longer able to attain a new key...
Replies
10
Views
164
For the past few day, I have had problems accessing the Rockwell Knowledgebase. When I try to access it (and I do have a TechConnect Support...
Replies
7
Views
405
Hi, Small issue i've really been beating myself up over today. I've been working with Panelview panels for years. Currently working on an older...
Replies
1
Views
589
Dear experts, I have the following setup: CPU-313C (6ES7313-5BF03-0AB0 V2.6) + CP343-1 (6GK7343-1EX30-0XE0 V2.0) communicating with Siemens PC...
Replies
7
Views
2,701
I'm looking to replace an AB PanelView 600 2711-K6C2 HMI with a C-more EA9-T10WCL. The PLC in the system is a SLC 5/03, which is staying. I...
Replies
2
Views
1,245
Back
Top Bottom