Welcome, Guest. Please login or register.
Did you miss your activation email?
May 22, 2012, 05:10:39 AM
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
| |-+  ABB Robot Forum (Moderators: Werner Hampel, Sven Weyer, Jim Tyrer, Napierian)
| | |-+  IRB 2400L Inverse Kinematics Solution
0 Members and 1 Guest are viewing this topic. « previous next »
Pages: [1] Print
Author Topic: IRB 2400L Inverse Kinematics Solution  (Read 3286 times)
BigM
Newbie
*
Offline Offline

Gender: Male
Posts: 30



« on: April 24, 2009, 05:58:36 PM »

Hi,

I was wondering if someone could point me in the right direction of being able to solve the inverse kinematics problem for a known pose.
So if I were given the x,y,z coordinates and an approach angle say from a cnc machine, I could produce a robtarget for it.

I've done something similar for converting coordinates of spotwelds on a car from the robot coordinates to the car coordinates with matricies but this has got me a bit confused.

I have done some reading on Devanit-Hartenberg tables, etc, etc and there are pages and pages of matrix equations and the like, but I was hoping for a simple Excel spreadsheet with the equations in there.

I understand that the linkage lengths are important for the equation to work properly but i just need a bit of a helping hand...   

Thanks to anyone that can lend a hand 

Regards,

BigM
Logged
ABB robter
Sr. Member
****
Offline Offline

Gender: Male
Posts: 267


« Reply #1 on: April 28, 2009, 02:33:26 PM »

Are you trying to convert Euler (A.B.C) to quaturnian (q1.q2.q3.q4)Huh?
Ray,
Logged
BigM
Newbie
*
Offline Offline

Gender: Male
Posts: 30



« Reply #2 on: April 29, 2009, 04:05:16 PM »

Hey Ray,

Thanks for the reply.

I actually want to convert 3-axis cnc into robtargets the robot can use.
I hope this calrifies.

Regards,
BigM
Logged
ABB robter
Sr. Member
****
Offline Offline

Gender: Male
Posts: 267


« Reply #3 on: April 29, 2009, 04:48:03 PM »

So you have a file with X,Y,Z positons and the CNC cuts at a defined speed from point to point?
Can you send me an example of the CNC file?
Ray,
Logged
BigM
Newbie
*
Offline Offline

Gender: Male
Posts: 30



« Reply #4 on: April 30, 2009, 03:57:37 AM »

Ray,

I dont have any cnc code but the matter of extracting the x,y,z positions from it would be trivial I'm sure.
The real problem is trying to define a robtarget with a x,y,z and angle given the cnc info.  As reverse kinematics for a known position gives multpile answers (robot configurations) how can 'limits' be put in place to limit the configurations to a particular 'range'Huh?  I know there are equations to work this out but i just need a bit of help.

It sounds simple enough, "Convert CNC code to 5-axis robtargets".  But the answer is not so simple...

Regards,
bigM
Logged
ABB robter
Sr. Member
****
Offline Offline

Gender: Male
Posts: 267


« Reply #5 on: April 30, 2009, 03:15:02 PM »

For configs are you talking about the axis [1,4,6,x] in the robtarget data?
If you are I turned them off (CONFIG OFF). if you start from a known good position with config on then move only in linear with the config off the robot will run the point.
Ray,
Logged
gabriel.falcao
Guest
« Reply #6 on: April 30, 2009, 10:44:54 PM »

Hi, I use the robotics Toolbox for Matlab developed by Corke. I do exactly what you want to do. Convert a cartesian position XYZABC (RPY) or (WRP) to robot joint coordinates. basically you need to model the robot using Denavit Hartenberg standard (I am sure you can find it somewhere already done). Then it is a piece of cake. I then send the values using ethernet to the robot controller.  Hope this helps.  Don't be afraid of the danavit hartenberg notation. It is a simple algorithm to be followed to correct specify the frames attached to each joint.  I have one sheet with it resumed that I always carry with me. (it really helps). If you are interested I could digitize it to post. I just don't have a scanner right now!

Good luck....
Logged
BigM
Newbie
*
Offline Offline

Gender: Male
Posts: 30



« Reply #7 on: May 01, 2009, 05:14:06 AM »

First, Ray,
Thanks for the tip with the config. I considered this and was a little hesitant but sounds like from your experience that its ok, I definately try it!

Second, Gabriel,
Awesome, if you could forward that to me that would great!
I like to know the equations that the Matlab toolbox is performing so i can write a sperate program to do it myself. Is it possible to obtain the equations that the robotics toolbox is perofrming?

Regards,
bigM
Logged
TygerDawg
Full Member
***
Offline Offline

Posts: 230


« Reply #8 on: May 01, 2009, 12:37:25 PM »

If you are interested in a commercial solution, then RobotWorks www.robotworks-eu.com will do this:  convert G-code to ABB language statements.
Logged

TygerDawg
Blue Technik
Virtuoso Robotics Engineering
www.bluetechnik.com
gabriel.falcao
Guest
« Reply #9 on: May 01, 2009, 02:29:56 PM »

Hi, I can post it here next week. I can use a scanner at work. For the excel spreadsheet, well I am not sure. I just had look in the function, It uses an iterative approach to compute the Pseudo-Inverse of the Jacobian. In other words it consist of a numeric approximation, rather than a closed form computation using symbolic algebra.

A symbolic computation is more of an art than mathematics.... the Robot can be expressed as a series of transforms like

XYZABC = A1*A2*A3*A4*A5*A6*q, where each Ax represents a joint transformation and depends on the angle of the joint. it has the form of an homogeneous transformm thus a 4x4 matrix. The inverse Kinematics then tries to invert the equation  to find q (the joint values) This is done by inverting the transform A1*A2*A3*A4*A5*A6 and multipling by the coordinate values. The method to solve this symbolically is to gradually multiply both sides of the equation by the transpose of the A1, then A1 and A2, then A1 and A2 and A3 and so fort and check if you can find a value for one joint from the relations between right side of equation and left side. (Look complicated............. and it is in fact!!!!) I will try to find one handout I had that explain step by step the process for sybolic computation....

Now, what I would recommend and in fact that is what I use currently is to have a function to do it in matlab and to program an automation server inside excel to send your values to matlab (who does the job) then get the result back to excel.  This is a very straight forward approach. I could help you with the VBA Automation if you want.

About the function in matlab you can freely download the toolbox and have a look at the file ikine.m and jacob0.m they do the job.

Best regards
Gabriel Falcao Rozenwald
Logged
BigM
Newbie
*
Offline Offline

Gender: Male
Posts: 30



« Reply #10 on: May 02, 2009, 08:40:35 AM »

Gabriel,

That sounds great!
I look forward to the scanned sheet.

The VBA server sounds very interesting but i won't bother you with that until I'm in a position to start on it  icon_smile

Many thanks for your time and help, it is much appreciated.

bigM
Logged
gabriel.falcao
Guest
« Reply #11 on: May 04, 2009, 07:10:13 PM »

Hi,
here it is...
Just follow the algorithm step by step (drawing the coordinate systems) and  you are good. Remember to always use the right hand rule to get the correct signal.

Hope it helps
Best regards
Gabriel Falcao Rozenwald

Logged
asimo
Guest
« Reply #12 on: May 05, 2009, 02:27:41 AM »

Hi,

If you need a free version of something that looks like the matlab toolbox, look at scilab and the robotics toolbox for it:
http://rtss.sourceforge.net/docs/index.html

You can download the source for the package as well as a compiled version for both Linux and Windows.
Logged
Ian Frasier K
Newbie
*
Offline Offline

Posts: 1


« Reply #13 on: January 05, 2012, 11:05:26 PM »

I am very sorry i am so late to this post.  ABB is new to me.  I now have 2 ABB IRB 4400 with S4C+ controller.  My goal is to use them for fun.  i would like to start with ice sculpture.  I have been in CNC for about 17 years and i have all my own software to draw and design full 3D and program up to 5 axis mills and 22 axis lathes.

My issue is converting the g and m code moves to Rapid.  I figured out how to load and unload robot programs and teach it some points and make small programs.  I have read thru this post many times and installed Scilab and the other files with no luck.  I did find some other presentations and papers on the internet referencing the mentioned systems.  i really am trying, but it seems like some really high end stuff.

I am open to try anything to learn how to convert cnc code to Rapid.  I can post examples and send anyone some cnc code if the need any to help me, or for their own purpose.  If you have models i would be more than happy to process them and post milling code.  Granted this would be based on the post processors i have and if they would meet your needs. 

Thank you very much for your time and patience and let me know how i can help.
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!