Welcome, Guest. Please login or register.
Did you miss your activation email?
May 23, 2012, 07:55:13 PM
Home Help Login Register
News: Any Problems or Experience with Industrial Robots ?
Register and place your Question / Answer to worldwide Robotexperts right here !

+  Robotforum | Support for Robotprogrammer and Users
|-+  Industrial Robot Help and Discussion Center
| |-+  KUKA Robot Forum (Moderators: Werner Hampel, Martin H, SkyeFire)
| | |-+  RSI st_pathcorr, st_movesens, and tool frame
0 Members and 1 Guest are viewing this topic. « previous next »
Pages: [1] Print
Author Topic: RSI st_pathcorr, st_movesens, and tool frame  (Read 609 times)
thehandoftheking
Jr. Member
**
Offline Offline

Posts: 52


« on: February 17, 2011, 09:29:05 PM »

Hallo there.  I'd like to control our robot (KR C2) using DeviceNet and RSI so that it moves in tool frame.  Is this possible?  We have RSI v2.0, so the stock of commands is somewhat limited.  I have DeviceNet working so that I can transfer in and out several sixteen-bit numbers.  Currently we're using st_axiscorr and st_movesens to use this for joint-based motion of the robot.  I am wondering if there's a way I can get Cartesian motion in the tool frame using RSI.  Thanks.
Logged
SkyeFire
Global Moderator
*****
Offline Offline

Posts: 1784



« Reply #1 on: February 18, 2011, 03:15:18 PM »

I know it's possible, since the early versions of Force-Torque control used RSI 2.0.  I'm just not exactly sure how.

My best guess is that one of the Transform ST_ operators is what you want.  I don't have any hands-on experience using them, though, so it's going to involve some educated guesswork and some trial&error.

Whichever Transform object you use will need to create the relationship between your sensor's frame of reference and the robot's tool frame of reference.  The latter is definitely a moving target, so ST_ACTPOS will probably be involved somewhere.

There's a regular KRL function that can help you get a handle on this, and test your results: the Geometric Operator, which is simply a colon.  It performs a matrix multiplcation on two POS or FRAME type variables.  The practical effect is to take the frame on the left side of the colon and shift/rotate it by the amount of the second frame.  This means that, if you do this:
Code:
P2=$POS_ACT:P1
what you get is a position, P2, that is shifted along and rotated around the axes of the active tool, starting from said tool's current position.  So if P1 is {Z 100}, P2 will be the current position, shifted 100 along the tool Z axis in the positive direction.  THere's a lot of stuff about the Gro Op in the forum archives.

I'm a bit swamped right now, but if I think of anything useful, I'll pass it on.
Logged
SkyeFire
Global Moderator
*****
Offline Offline

Posts: 1784



« Reply #2 on: February 21, 2011, 02:45:07 PM »

Dunno exactly how useful this might be, but the math&kinematics subforum might be of help:  http://www.robot-forum.com/robotforum/robot_geometry_linear_algebra_forward_and_inverse_kinematics-b38.0/

Logged
thehandoftheking
Jr. Member
**
Offline Offline

Posts: 52


« Reply #3 on: February 02, 2012, 03:54:07 PM »

Thanks.  Do you have any new insight on this?  I ignored the topic for a year, and now want to see if I can implement it.
Logged
SkyeFire
Global Moderator
*****
Offline Offline

Posts: 1784



« Reply #4 on: February 03, 2012, 12:35:37 AM »

Sadly, no.  I haven't been working with RSI in the interim.  If one of the TRANS objects had two realtime inputs, instead of just one, it would be easy (I think).  But all the transformation objects appear to have only one realtime input frame, and one "fixed" input frame.
Logged
bert
Jr. Member
**
Offline Offline

Posts: 68


« Reply #5 on: February 07, 2012, 03:19:15 PM »

How about just using ST_ON1(#TCP, 0), so that corrections are applied in TCP coordinates? Or am I missing something?
Logged
the leg
Full Member
***
Offline Offline

Posts: 191


Life is like a game of poker .


« Reply #6 on: February 07, 2012, 11:42:08 PM »

We use a joystick setup that uses rsi and devnet the the commands to move are sent over rsi so it be done i am just not sure how its done  down
Logged
SkyeFire
Global Moderator
*****
Offline Offline

Posts: 1784



« Reply #7 on: February 08, 2012, 06:45:34 PM »

How about just using ST_ON1(#TCP, 0), so that corrections are applied in TCP coordinates? Or am I missing something?

I'm doped up on cold medicine at the moment, but IIRC the problem is that RSI 2.0 doesn't support that function, only RSI 2.1 (at least, going by the docs I have).

I'm actually certain there's a way to do this in RSI 2.0.  But I can't figure it out just from the docs. 
Logged
bert
Jr. Member
**
Offline Offline

Posts: 68


« Reply #8 on: February 09, 2012, 10:44:40 AM »

Ah, I thought it couldn't really be that simple. I've only got 2.1 so I've really no idea what was added compared to previous versions. I have no documentation for earlier versions.

In that case, I guess my first thought would be to perform the transformation into the correct coordinate system on my controlling device - which in my case is a program running on an external PC.

Another way forward - most certainly simplifying the problem - would be to obtain a copy of v2.1. I have no idea what Kuka's policy for upgrading software is, but it could well be much cheaper than trying to fight the older version.
Logged
Pages: [1] Print 
« previous next »
Jump to:  


Login with username, password and session length

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2011, Simple Machines Valid XHTML 1.0! Valid CSS!