Does anyone know if there is a generic IO configuration that permits identifying and mapping the IOs in run time?
This way it’s possible to have the same configuration for many machines with different IO configurations and change the machine functionalities depending on the hardware installed.
I can’t really answer it in detail, because what to do and how to do it in detail depends very strong on what hardware you use, what fieldbas, and which flexibility and functionality you want to have.
But at least I can tell you what we’ve done in past projects with similar requirements:
- if you use X2X directly at the PLCs X2X master, in my opinion the best option is to start with a hardware configuration where only the PLC itself is configured, and X2X master is activated.
With the functions of the AsIODiag library, you should be able to detect then the modules found while booting.
- if using POWERLINK with IOs behind bus couplers like X20BC0083, at least the bus couplers themselves should be added to the basic hardware configuration - then, the configured POWERLINK master “scans” the bus for the configured devices while startup, and also delivers information to the PLC whats connected to this couplers - again, then you can read it out with AsIODiag functions.
Switching then to the suitable hardware configuration and IO mapping (or even building that configurations at runtime) can be done by using mapp IO, or by using the functions of AsIOMMan.
This is a huge help, thanks. These are the tools I need to do what I have in mind.
I will read more about it and try to develop dynamic solutions for my machines.
Thank you for the help.