Short time Acceleration switching
Hi
I am working on ABB IRB 140.
For my application I need to accelerate the robot with 9500 mm/sec^2 for 0.1 sec and then with 12000 mm/sec^2 for next 0.1 sec and then decelerate it with 19500 mm/sec^2 for next 0.1 sec.
Initial velocity = 0 mm/sec
Final velocity after 0.3 seconds = approx 0 mm/sec
(Note: Acceleration values that I have mentioned are not exact but close to actual values)
Can I switch between these accelerations in that short time frame?
Which commands should I use in RAPID?
Thanks
Nikhil
0
Comments
-
Moved to RobotWare forum.
Henrik Berlin
ABB0 -
You can use the RAPID instructions PathAccLim and WorldAccLim to limit the acceleration. See example belowhere is the code I used[CODE]MODULE Module1
CONST robtarget Target_10:=[[0,0,0],[1,0,0,0],[-1,0,-1,0],[9E9,9E9,9E9,9E9,9E9,9E9]];
CONST robtarget Target_20:=[[0,47.5,0],[1,0,0,0],[-1,0,-1,0],[9E9,9E9,9E9,9E9,9E9,9E9]];
CONST robtarget Target_30:=[[0,202.5,0],[1,0,0,0],[0,-1,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]];
CONST robtarget Target_40:=[[0,320,0],[1,0,0,0],[0,-1,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]];
CONST robtarget Target_50:=[[0,325,0],[1,0,0,0],[0,-1,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]];PROC main()
MoveLPath;
ENDPROC
PROC MoveLPath()
MoveJ Target_10,v1000,fine,tool0WObj:=Workobject_1;
WaitTime 1;
WorldAccLimOn:=9.5;
MoveL Target_20,vmax,z5,tool0WObj:=Workobject_1;
WorldAccLimOn:=12;
MoveL Target_30,vmax,z40,tool0WObj:=Workobject_1;
WorldAccLimOn:=19.5;
MoveJ Target_40,vmax,z0,tool0WObj:=Workobject_1;
MoveJ Target_50,vmax,fine,tool0WObj:=Workobject_1;
ENDPROCENDMODULE
[/CODE]You can analyze the actual acceleration and speed in the Signal Analyzer of RobotStudio. Note that the IRC5 robot controller is optimized to follow the path accurately and if you want to maintain a certain acceleration and speed you need to compromise on the path accuracy, hence the zone data I used in my RAPID program (see zone data in the RAPID program). I adjusted the zones to make the robot maintain the speed. If you want more accurate path following, the robot will slow down before reaching the each programmed point.
Henrik Berlin
ABB0 -
@Henrik BerlinThanks a lot for your reply..I tried to run your code, but I got some problems..I have few questions,1) What are the coordinated and orientation of Workobject_1?I set Workobject_1 asUser Frame Position = ( 500, -150, 800 )and User Frame Orientation = (0, 90, 0)And Object frame same as User Frame..But I get completely different results..The velocity plot if not same as that of yours. Max velocity = 1343.52 mm/secIs it because of different Workobject?2) I am always getting min and max linear acceleration in world = 0.0Why is it so?Am I making any mistake in setting the simulation/signals?3) In your graph maximum acceleration shown is 30,223. I saw in product manual that the max. linear acceleration for IRB 140 is 20,000. So Robot studio does not have any checks to see if vel./ acc reaches max possible?Sorry for such a long email.Thanks for your help.RegardsNikhil0
-
Hi HenrikI didn't know about the signal analyzer. I often need to know the speed and acceleration on the path and it is very helpfull for us. Thank you.Best regardsMarcel0
-
1) Sorry, I forgot that the workobjects and tooldata are placed in the module CalibData.mod by default. Anyway, here is its definition:[CODE]TASK PERS wobjdata Workobject_1:=[FALSE,TRUE,"",[[506.291643817,-100.000001136,679.50001583],[0.500000007,0.000000005,0.8660254,0.000000005]],[[0,0,0],[1,0,0,0]]];[/CODE]I have attached the station too.2) The signal configuration is a little shaky and is sometimes lost. Save and reload your station to recover the setup.3) The signals displays what comes from the internal motion system of the controller, RS does not filter the signal. The real controller will have the same behaviour. The true acceleration of the real robot will be influenced by the power electronics and the mechanical arm, but in essence the signal is the same. In my example the payload is zero and the path is idealized. The max acc value of the product manual is probably a bit more conservative to reflect practical situations.Henrik Berlin
ABB0 -
Additional information, you should you the T-model (IRB 140T). There is no template for it yet, which means you need to create the system in System Builder.
Henrik Berlin
ABB0
Categories
- All Categories
- 5.5K RobotStudio
- 396 UpFeed
- 18 Tutorials
- 13 RobotApps
- 297 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 250 ScreenMaker
- 2.8K Robot Controller
- 316 IRC5
- 61 OmniCore
- 7 RCS (Realistic Controller Simulation)
- 801 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 5 Job listings