03-05-2025, 04:41 AM (This post was last modified: 03-06-2025, 10:03 AM by Albert.)
I want to store the current robot position of my Motoman MH80 for use with the IMOV command. Using this stored position, I plan to add an offset to the Z-axis and then command the robot with something like:
Code:
IMOV P001 VJ=10.00;
Here, P001 is the position with the added offset.
To achieve this, I know I can use commands like GETPOS and GETE. However, according to some documentation I’ve read, it is preferable to use GETPOS. The issue is that the GETPOS command stores position information in a PX variable, while the code generated by RoboDK stores the robot position in a variable C (for example, C00000). My DX100 controller only recognizes positions stored in a P variable.
I tried manually converting the C variable in the code to a P variable, but that approach did not work. Is there any way to transform data from a C variable to a P variable on the DX100? Do you have any better solution for this?
This is example code:
Code:
/JOB
//NAME HOME
//POS
///NPOS 1,0,0,0,0,0
///TOOL 0
///POSTYPE PULSE
///PULSE
C00000=92160,0,-103424,-206848,0,0,0
//INST
///DATE 2025/02/28 14:59
///COMM Generated using RoboDK
///ATTR SC,RW
///GROUP1 RB1
NOP
'Program generated by RoboDK v
'5.8.0 for Yaskawa SIA10D on 2
'8/02/2025 14:59:52
'Using nominal kinematics.
'Using Posisi 10x10 (targets w
'rt base):
'28.5,561.0,-128.0,0.0,0.0,0.0
'Tool 2 (Tool Snap 2) should b
'e close to:
'132.5,0.0,63.5,90.0,0.0,90.0
MOVJ C00000 VJ=10.00
END
To convert Yaskawa Motoman C registers (Pulse data) to P registers (Cartesian) you could load your JBI program file in RoboDK to load the program with all targets. You can then generate the same program using the Motoman Cartesian post processor. This will generate Cartesian targets as P registers.
Make sure you have the correct robot loaded in RoboDK before loading the JBI file and the pulses/degree ratio has been properly loaded. You can find more information here: https://robodk.com/doc/en/Robots-Motoman...omanPulses
Hello albert, thank you for replying.
You said, to convert to p variables you can use the motoman cartesian post processor. in the post processor list there are 2, motoman cartesian and motoman cartesian only. below is the generated code from both post processors.
Motoman cartesian only
Code:
/JOB
//NAME H2
//POS
///NPOS 1,0,0,0,0,0
///TOOL 2
///POSTYPE BASE
///RECTAN
///RCONF 1,0,0,0,0,0,0,0
C00000=0.000,578.500,227.500,180.00,-0.00,-180.00
//INST
///DATE 2025/03/07 16:43
///COMM Generated using RoboDK
///ATTR SC,RW,RJ
///GROUP1 RB1
NOP
'Program generated by RoboDK v
'5.9.0 for Yaskawa SIA10D on 0
'7/03/2025 16:43:54
'Using nominal kinematics.
'Using Posisi 10x10 (targets w
'rt base):
'28.5,561.0,-128.0,0.0,0.0,0.0
'Tool 2 (Tool Snap 2) should b
'e close to:
'132.5,0.0,63.5,90.0,0.0,90.0
MOVJ C00000 VJ=50.00
END
Motoman cartesian
Code:
/JOB
//NAME H2
//POS
///NPOS 1,0,0,0,0,0
///TOOL 2
///POSTYPE PULSE
///PULSE
C00000=92160,0,-103424,-206848,0,0,0
//INST
///DATE 2025/03/07 16:55
///COMM Generated using RoboDK
///ATTR SC,RW,RJ
///GROUP1 RB1
NOP
'Program generated by RoboDK v
'5.9.0 for Yaskawa SIA10D on 0
'7/03/2025 16:55:23
'Using nominal kinematics.
'Using Posisi 10x10 (targets w
'rt base):
'28.5,561.0,-128.0,0.0,0.0,0.0
'Tool 2 (Tool Snap 2) should b
'e close to:
'132.5,0.0,63.5,90.0,0.0,90.0
MOVJ C00000 VJ=50.00
END
from the C00000 value, it looks like the program from the cartesian only post processor results in a cartesian coordinate.
after this generate, what to do? actually, I don't really understand what you mean in the previous replay. so I just do what I catch.
I tried to import the two programs generated from the post precessor I mentioned, but both could not be imported. I also tried to manually edit the value of the C variable and replace it with a cartesian coordinate also failed.
the statation is here.
the program i made is simple. the robot just move to home. and afterthe robot reach the home position, I want to use IMOV in three axis based on current position (which is home position), that it is move to 5cm to +x axis, 5cm to +y axis, and 5cm to Z+ axis.
03-08-2025, 11:29 PM (This post was last modified: 03-10-2025, 12:05 PM by Albert.)
Buenas tardes, soy nueva utilizando RoboDK, me gustaria saber como hacer un proyecto donde implemente pruebas de resistencia con un robot kuka R1100 usando Python.
03-11-2025, 01:36 PM (This post was last modified: 03-11-2025, 06:11 PM by Albert.)
No, señor, hasta el momento no tengo ningún proyecto. Cuando hablo de pruebas de resistencia, me refiero a la simulación de esfuerzos mecánicos. Específicamente, quiero realizar una prueba en la que evalúe la resistencia de un objeto, por ejemplo, un recurso sometido a una prueba de tracción. Para ello, planeo fijar un extremo del resorte a una estructura rígida y sujetar el otro extremo con el efecto final del robot KUKA.