I have an idea to simulate a process like this: a conveyor moves a panel to a programmed position, the conveyor stop, a robot (A) holds the panel and moves it to another position, then two other robots work on the panel, after that robot A puts the panel back on the conveyor, the conveyor continues moving, and so on…
I have some problems hope everybody will help:wink::
How to create the signal (to then use in Event manager) to inform that the conveyor’s reached the programmed position (to pause the conveyor and attach the panel to robot A…)?
Similarly, how to create the signal to inform that robot A has put the panel back on the conveyor (to resume moving the conveyor)?
Hi,
You must use station signals as inteface between mechanism and robots (and also between two robots if not using MultiMove).
Event1: Move mechanism: Assign a station signal (ex ConvInPosition) to be set “1” when in pos
Event2: ConvInPosition =1 sets RobA signal “diGetPanel” to 1 (this of course starts the robot)
(Robot picks panel, does its job, returns the panel and acknowlede this with “PulseDO doGetPanelDone;”)
Event3: doGetPanelDone=1 sets ConvInPosition=0 AND move conveyor to homepos
Event4: ConvInPosition =0 sets RobA signal “diGetPanel” to 0
The event manager work with, thats right, Events. This means that if you want a robot di to follow a station signal you must assign both a “1” and a “0” events.
For the mechanism, the ConvInPosition must be reset as in event3 above otherwise it will stay “1” forever, even if the mechanism goes to homepos.
To select a station signal as InPosition-signal, it must be selected/highlighted when applying the change. This gave me a bit of I headache before realizing it…
I’ve built a station like that using station signals and Event Manager. I created the signal “diMoveCNVtoEnd” as a trigger to move the conveyor to its end pos. Then i added the instruction Set DO to set this signal to 1 at the beginning of the program. But the program couldn’t started, this is the error “Could not set program pointer to entrypoint for task T_ROB1 Please check your program for errors”.
Can anybody show me why this error occurs and how to fix it?
Below is my station Pack&Go, hope you take a look.
It seems that the signals are not declared in the configuration editor. First you should declare a Unit, then you can create signals on that unit. Remember to set the Access Level to ALL to allow the signals to be affected by RS. (Since they are output signals, it may not be necessary for this particular case, but it is a good habit).
Thanks for your answer, Mr. Berlin. I created system signals in Configuration Editor (category signal) and restarted the controller, but the error still occured! Is there any other reason for this? Can you tell me the differences between system signals and station signals?
By the way, is it true that the record function is not available on RS 5.12.02 TRIAL version?
Station signals = used only in station to connect station objects
System signals = declared by the controller system. Can be used both by the station and the controller.
The signals were not correctly defined in your system. Please load the attached EIO.CFG into the system were I have updated the configuration. webwiz/772/EIO_sonpt2.zip
Remarks:
Use the “I/O System” of the Offline tab to check that the signals and units appear. You can toggle their value by double-clicking. If they are not correctly defined, they will not appear. If you fail to set the unit mapping, you may affect the value of other signals with the same unit mapping, when changing the value of a signal.
Only output signals can be set using “Set” and “SetDO”, not input signals.
The signal used in the PROC Initial of T_ROB1 (diMoveOutCNVtoEnd) is not declared.
Thank you very much for your detailed explanation, Mr. Berlin. I confused the input and output signals, i didn’t clearly understand how to work with signals in RS, but i think it’s OK now. Anyway, the simulation works well at last .