IO states enable users to synchronize resources using signals in a process where resource programs are running in parallel (e.g., two robot programs).
In robotic workcell containing multiple robots & other programmable resources, the major challenge is to design the IO signals between them in order to optimize the cycle time improving productivity & efficiency.
In V5, IO states bewteen resources can be managed using the different commands in IO Management toolbars.
IO State Management Tools: The toolbar and commands are available in Workcell Sequencing workbench.
- Manage IO State: This command is used to create, modify, or delete IO states. Very useful command to manage multiple IO's in the workcell.
- Set IO State: This command is used to create a set IO state activity. The set IO activity allows users to change the value of state for a given resource.
- Wait IO State: This command is used to create a wait IO state activity. This activity will make the resource wait for another resource to set a state to a given value.
- IO Mapping & Monitoring: The command is used to view IO Mapping, which is a static representation of the IO connections within one or more robot tasks, and IO Monitoring, which is a dynamic representation of the IO connections as robot simulation takes place. Users can edit the IO state or operation combination within the IO map.
Please refer the attached avi demostrating IO definition and managements in V5 using the tools.
Caveat
- While defining the Wait IO State for a resource, very large values of time can not be used in Maximum Wait Time. There is a upper limit for time beyond which there physical hardware senses the time number as negative (parity being set) and hence there is an overflow. The documentation on "time" reads "This class (data type) represents a representation of scalar time, which provides nanosecond fixed point resolution over an entire range of +/- 2.9e+11 years. This provides almost error free numerical stability over a range of +/- 540000 years for most mathematical operations." The max value which can be used is roughly around 9.22e18 seconds and that is close to 2.9e+11. Information obtained based on the discussions with development (0553904).
- Setting the maximum to 0 yields an infinite wait time
