Virtual I/O's

JohnBastian

Guest
J
I have a problem - I have an S7 400 PLC and an S7 300 PLC, but no additional I/O devices (yet). I want to write and test my S7 code (which should run on the 400), and have it access I and Q addresses normally and react to them, but as I cannot assign them any physicak I/O's yet, I would like to map I and Q addresses to the memory of the PLC 300. Can I do such a thing? Do I need any additional hardware (CP's? Profibus? Ethernet? TCP/IP?)? Software? gsd's?
 
I recommend the PLC-SIM software package for this purpose.
With it you can simulate your program on your PC. If you use Protool panels or Protol RT for your HMI you can even test the HMI application against the S7 program.
You can make a special "simulation" routine in the program to simulate the behaviour of your inputs. In that way you can see your entire application working and debug and improve it at the comfort of your desktop.
I do this all the time. And PLC-SIM is quite cheap to my opinion.
 
I do virtual mapping all the time in my projects. First, most of the time the hardware is rarely ready in time, and second, it's a lot safer to test with I/O maps rather than real I/O.

You can approach this several different ways. Personally, I set up a DB that mirrors the real world I/O. At the beginning of every scan, I copy the inputs to the DB, and at the end of the scan, I copy the DB outputs to the real outputs. During development, I use tags to switch these steps off and work only with maps.

I'm not sure of what you're doing exactly (sounds like you are passing data to the second PLC?), but there is no reason you can't write to a data area instead of the I/O area as I described.
 
Never tried that before!
You should be able to link the 2 cpus with either a DP or MPI link.Cable for both is the same,i.e. profibus standard with terminators. The s7-300 model may only have MPI capability. You have to have both cpus in the same project, download the combined project to both and show both cpus in NetPro. While there create a global data table and this allows comms over the MPI bus. You must have identical DBs in each cpu and these are what you specify in the GD table. You then can map your IO bits to the DB addresses. MPI might be a bit slow however, and I think there is a limit to the number of bytes per transfer. If you can DP them together you'll use SFCs, 14 and 15 I think, to read and write data.



I'd love to change the world, but they won't give me the source code!
 
I think his idea is to have the real program in one PLC (the S7-400), and then let the other PLC (the S7-300) be "the proces" or "the machine".

It can be done that way, but it is really not necessary to go to such lenghts.
He can put all the simulation into the same program, and then run it in the S7-400 (or in PLC-SIM).
 
Thats' what I mean too, one PLC will have different blocks from the other. It is a bit extreme, one will have to be programmed to DO something to simulate reacting to external IO. If it's an MPI link only the send and return DBs must be common to both.



To err is human but to really foul things up requires a computer.
 

Similar Topics

Hi all, I would like to replicate my PC onto a virtual machine so I could use it on a different laptop when I'm on site. I have never created a...
Replies
5
Views
253
...and I agree. Context: TIA Portal/HMI = KTP1200 (12" screen) In the attached redacted image, the values in the white boxes are entered by the...
Replies
10
Views
710
Is there any way to use a Virtual HMI (running on a PC) with CCW? This is for an application where there will be an actual HMI (PV800) connected...
Replies
4
Views
408
i have a dell laptop with a real com port host OS is windows 10. Running VB 6.1.42 I cannot get the serial port to configure in VB. Please Help...
Replies
10
Views
1,029
My main laptop operating system is windows10. I have concept2.6 offline version. Since concept2.6 comply with windows xp, so i using vm...
Replies
2
Views
701
Back
Top Bottom