I have been working with a transporter system designed to work like a two armed robot. I did not design the robot so I don't know every detail of how it works, but have a decent general understanding. The pallets that contain the parts that the robot processes are all part of an order with a set number of pallets. The firstoforder, secondoforder, secondtolastoforder, and lastoforder all have user-defined attributes stating which pallet they are.
The problem I have is when the line backs up the robot gets stuck on the secondoforder pallet's part and will not pick it up for processing. I have looked over the robot control coding and everything seems to look fine so I'm not sure if I'm just overlooking something in the control or if the source of the problem is elsewhere in the model.
I've attached a model where I've singled out the the problem area to avoid confusion. The robot in question is the Cambot working at the Main Bearing Press (MB_PR). I've also stopped the simulation right before the robot gets stuck.
Thanks in advance for any help or advice!
Solved! Go to Solution.
it looks like the robot does NOT pick up a part from the successor due to the fact,
that the sucessor is down (in failure mode).
Please change the "self.cambotControl" so the robot will wait until the successor is no longer in failure mode
and can provide the part to be picked up from the robot
I tried adding in a waituntil statement into the cambotControl and it still will not pick up the part. So I tried disabling the failure altogether to see if it would make a difference and the robot still refuses to pick up the part.
I'm guessing that it has more to do with the line being backed up?
No parts are loaded to indicate the end of a set order, which is set here:
Since both cambots pick up a part off a pallet and replace it on the next pallet, the secondtolastoforder and lastoforder enter the line empty, but the firstoforder and secondoforder exit the line empty.
Okay, being a beginner I didn't even know about the watch window. That makes things a lot easier.
I was able to track the problem to line 68 which was waiting until ZPKA_MB_PR was blocked and that never happened in this case so I commented out this statement:
I also commented out the same statement for SensorID = 1 and everything seems to work well now.
Thanks so much for pointing me in the right direction!