dr_cronik
Member
Hi All
I have started a project which basically tracks a 3 axis cartesian robot around its working area and adjusts the soft limits on the drive to prevent the robot from crashing while being jogged or should some put the incorrect co-ordinates in.
Hardware : 1756L63 V19 and 3 x Kinetix 6000 drives on Sercos.
I have devised a method of setting up 3D zones within the robots working area, each zone then has its own set of softlimits that are SSV'd to the drive when the TCP enters the zone.
All this code works fine until you turn the speed up, then things stop working so well as the scan time of the PLC is not quick enough to detect the zone entry and set the softlimits before the TCP hits the object. I am expecting to be moving at above 2500mm/s.
To solve this I have 4 event tasks. 1 (Task A) to execute after ever course update period and the others (Task B,C,D) to execute on a Axis Watch event triggered by a MAW command.
Task B,C,D are identical besides the tagnames.
The theory is to detect a start of movement with Task A and set up an MAW on each axis 1mm from the strobedActualposition. The first MAW position reached will trigger Task B,C or D which will check the robots position and set up any required softlimits. This task will then cancel all MAW and set up new MAW's on each axis again 1mm from strobedActualposition.
I cannot do all in task A as this uses up to 40% of processor time and I had to slow the coarse update period. I will need to implement this code for up to 8 Cartesians on 1 PLC so code efficiency is vital
The problem. The MAW commands seem to only work for 1 axis the other2 axes will trigger the first MAW in Task A which when the position is reached will trigger the respective Task B,C or D
. This task will then set up another MAW 1mm further along each axis, which will retrigger Task B,C or D. The problem arises on this second scan of the task, a new MAW will be set up but will not Set the PC bit of the instruction when the position is reached and hence the task is never retriggered.
As I mentioned this is only happening on the Y & Z axis if you are moving predominantly on the x axis the all works fine.
My first point of call is to check that all Kinetix drive are on the same firmware rev. I suspect the are not.
Anyone got any other idea's? All help will be GREATLY appreciated.
Let me kno if you need further details.
Thanks in advance
:banghead
I have started a project which basically tracks a 3 axis cartesian robot around its working area and adjusts the soft limits on the drive to prevent the robot from crashing while being jogged or should some put the incorrect co-ordinates in.
Hardware : 1756L63 V19 and 3 x Kinetix 6000 drives on Sercos.
I have devised a method of setting up 3D zones within the robots working area, each zone then has its own set of softlimits that are SSV'd to the drive when the TCP enters the zone.
All this code works fine until you turn the speed up, then things stop working so well as the scan time of the PLC is not quick enough to detect the zone entry and set the softlimits before the TCP hits the object. I am expecting to be moving at above 2500mm/s.
To solve this I have 4 event tasks. 1 (Task A) to execute after ever course update period and the others (Task B,C,D) to execute on a Axis Watch event triggered by a MAW command.
Task B,C,D are identical besides the tagnames.
The theory is to detect a start of movement with Task A and set up an MAW on each axis 1mm from the strobedActualposition. The first MAW position reached will trigger Task B,C or D which will check the robots position and set up any required softlimits. This task will then cancel all MAW and set up new MAW's on each axis again 1mm from strobedActualposition.
I cannot do all in task A as this uses up to 40% of processor time and I had to slow the coarse update period. I will need to implement this code for up to 8 Cartesians on 1 PLC so code efficiency is vital
The problem. The MAW commands seem to only work for 1 axis the other2 axes will trigger the first MAW in Task A which when the position is reached will trigger the respective Task B,C or D
. This task will then set up another MAW 1mm further along each axis, which will retrigger Task B,C or D. The problem arises on this second scan of the task, a new MAW will be set up but will not Set the PC bit of the instruction when the position is reached and hence the task is never retriggered.
As I mentioned this is only happening on the Y & Z axis if you are moving predominantly on the x axis the all works fine.
My first point of call is to check that all Kinetix drive are on the same firmware rev. I suspect the are not.
Anyone got any other idea's? All help will be GREATLY appreciated.
Let me kno if you need further details.
Thanks in advance
:banghead