Hi all,
Does anyone have any detailed timing diagram or information concerning the relationship between the gripper activation/deactivation timings, when tool event timings occur (Before place, at place, after place etc. as defined in the format) and how they all correspond the actual movements of the robot? The manual is bit sketchy on the subject on when these events happen and how they are related if at all.
Reason I’m asking is that I have a vacuum gripper that can pick up items very quickly but needs a bit more time to release the vacuum. My gripper has 2 zones each with it’s own sets of valves to enable and disable the vacuum.
I am trying to do a single pick of 6 items with two place operations of 3 items per place. All works OK except for the timings of the activating/deactiving/idle of the tool setup.
I started by having my 2 activators set up each using 2 bits with the value 1=Activating, 2=Deactiving and 0=Idle. These are assigned to the standard group output pmGripper1_goActivators. Zone 1 starts at bit 0 and Zone 2 starts at bit 2. pmGripper1_goActivators is assigned to a virtual device from address 0 to 15.
I’ve then created digital outputs with the same address as the group output pmGripper1_doActivators namely:
pmGripper1_doZ1ActOn is the same address as pmGripper1_doActivators bit 0
pmGripper1_doZ1DeactOn is the same address as pmGripper1_doActivators bit 1
pmGripper1_doZ2ActOn is the same address as pmGripper1_doActivators bit 2
pmGripper1_doZ2DeactOn is the same address as pmGripper1_doActivators bit 3
I then use these bits in the EIO file cross connections to directly drive the real digital outputs that control the gripper vacuum valves.
All was going well until I needed to tweak the timings of the place operation as the vacuum wasn’t being released quick enough.
There are two timers that are tuneable and are called Place Time and Place Activation on the Pickmaster flexpendant and Place Time and Vacuum Deactivation Time in the Pickmaster 5 software. Not sure why there is a difference in terminology but I managed to figure it out in the end.
This is how I understand it from testing. When the robot reaches the place position on the pallet and movement stops, the Place Time timer starts and the Place Activation Time starts too. When the Place Activation time has timed out, the Zone Deactivation bit goes high and the Zone activation bit goes low. The Place Timer continues to time until it completes and the robot moves away. The problem I seem to have is that after the robot has moved, the Zone Deactivation bit stays high for a duration that seems to be the half the Place Time value plus the Place Activation time value.
In a nutshell, (just for example using big timer values) if the Place Time is 10 seconds and the Place Activation time is 1 second, this is what seems to happen:
Robot stops as place position.
4 seconds (half the Place Time minus the Place Activation Time) later the Zone deactivation bit goes high.
6 seconds later the robot moves away.
6 seconds later the zone deactivation bit goes low.
This then seems to screw up the second place operation if it occurs within the last 6 seconds while the Zone deactivation bit is still high. The previous deactivation timer still seems to being running in the background. The Zone activation and deactivation bits do not change as expected for the second place operation.
I’m not using these sorts of times in my robot, they were just for illustration. But the times I am using, more like 1.5 place time and 0.75 deactivation time still causes problems with the second place operation.
My ideal scenario would be that the robot stops at the place position, the deactivation bit goes high immediately and after the place time has exceeded, the robot moves away. The Zone deactivation bit would stay high while the robot moves away to the final position of that place operation. The Zone deactivation bit should then go low at this point and any background timers should stop/be reset before the robot starts the second place operation.
Has anyone experienced this or can shed some light on it?
By the way, I’m using Pickmaster 5.13 and robotware 5.13.02.
Thanks
Tim