Home Troubleshooting

Discussion

Left ArrowBack to discussions page
chrisbbnchrisbbn Unconfirmed Posts: 2 Recruit
I am sending commands to the UR robot using URScript commands from within Unity3D game engine.

For speed commands it works fine and as expected, but when using move commands the robot just vibrates and doesn't move

e.g. these work fine and as expected:
speedj([0.2,0.3,0.1,0.05,0,0], 0.5, 0.5)
speedl([0.5,0.4,0.0,0.,1.57,0,0], 0.5, 0.5)

but these just vibrate the robot with no movement
movej([0,1.57,-1.57,3.14,-1.57,1.57], a=1.4, v=1.05, t=0, r=0)
movel([0.2,0.3,0.5,0,0,3.14], a=1.2, v=0.25, t=0, r=0) )

I have ruled out formatting issue as I am using the examples in the URScript manual.

Any obvious things I should check?

Thank you

Comments

  • bcastetsbcastets Vacuum Beta tester Posts: 673 Expert
    Do you send those movej and l in a continuous manner ? It is possible to do that with speedj and speedl but probably not with movej and movel (not sure).
  • chrisbbnchrisbbn Unconfirmed Posts: 2 Recruit
    bcastets said:
    Do you send those movej and l in a continuous manner ? It is possible to do that with speedj and speedl but probably not with movej and movel (not sure).
    Hi bcastets,

    Thanks for replying.

    Yes I sent them continuousily. I have tried to sent them just once but I get the same result where I get vibrations but no movements. If I allow the command to continue sending then after about 5 seconds it get a stop and have to reinitialise.

    I assumed that if I managed to send commands via strings that all commands would work, especially when using the example command structure from the URScript manual, but it seem that some work and some do not.

    Perhaps it is a setting within the controller that needs changing via the pendant.
  • matthewd92matthewd92 Founding Pro, Tactile Sensor Beta Testers Posts: 1,267 Handy
    Is the robot already sitting in the position where the movej or movel are commanding the robot to be?  We have sent commands like that many, many times over the socket and never had any issues getting them to work.  THe only issue is if you are already sitting there.  Also, when you send a movej and a movel you have to send only once and wait for them to complete. There is no return value or anything so the only way the server knows they are complete is to monitor the actual position deviation from the target position.

    So if a script is executing and then you send another script it halts the first script and executes the next script so if you were sending the movej or movel command on a set interval, say at clock speed (2ms or 8ms depending on robot series) then you would get the vibration you are describing as before the robot could execute it would be told to halt and try again.
Sign In or Register to comment.
Left ArrowBack to discussions page