Skip to content

Commit f07643f

Browse files
committed
Add onmidirectional mm
1 parent fb8e261 commit f07643f

File tree

5 files changed

+486
-20
lines changed

5 files changed

+486
-20
lines changed
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
#!/usr/bin/env python
2+
3+
import numpy as np
4+
from roboticstoolbox.robot.ERobot import ERobot
5+
from spatialmath import SE3
6+
7+
8+
class FrankieOmni(ERobot):
9+
"""
10+
Class that imports an Omnidirectional Frankie URDF model
11+
12+
``FrankieOmni()`` is a class which imports a FrankieOmni robot definition
13+
from a URDF file. The model describes its kinematic and graphical
14+
characteristics.
15+
16+
.. runblock:: pycon
17+
18+
>>> import roboticstoolbox as rtb
19+
>>> robot = rtb.models.URDF.FrankieOmni()
20+
>>> print(robot)
21+
22+
Defined joint configurations are:
23+
24+
- qz, zero joint angle configuration, 'L' shaped configuration
25+
- qr, vertical 'READY' configuration
26+
- qs, arm is stretched out in the x-direction
27+
- qn, arm is at a nominal non-singular configuration
28+
29+
.. codeauthor:: Jesse Haviland
30+
.. sectionauthor:: Peter Corke
31+
"""
32+
33+
def __init__(self):
34+
35+
links, name, urdf_string, urdf_filepath = self.URDF_read(
36+
"franka_description/robots/frankieOmni_arm_hand.urdf.xacro"
37+
)
38+
39+
super().__init__(
40+
links,
41+
name=name,
42+
manufacturer="Franka Emika",
43+
gripper_links=links[12],
44+
urdf_string=urdf_string,
45+
urdf_filepath=urdf_filepath,
46+
)
47+
48+
self.grippers[0].tool = SE3(0, 0, 0.1034)
49+
50+
self.qdlim = np.array(
51+
[
52+
4.0,
53+
4.0,
54+
4.0,
55+
2.1750,
56+
2.1750,
57+
2.1750,
58+
2.1750,
59+
2.6100,
60+
2.6100,
61+
2.6100,
62+
3.0,
63+
3.0,
64+
]
65+
)
66+
67+
self.addconfiguration("qz", np.array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0]))
68+
69+
self.addconfiguration(
70+
"qr", np.array([0, 0, 0, 0, -0.3, 0, -2.2, 0, 2.0, np.pi / 4])
71+
)
72+
73+
74+
if __name__ == "__main__": # pragma nocover
75+
76+
robot = FrankieOmni()
77+
print(robot)
78+
79+
for link in robot.links:
80+
print(link.name)
81+
print(link.isjoint)
82+
print(len(link.collision))
83+
84+
print()
85+
86+
for link in robot.grippers[0].links:
87+
print(link.name)
88+
print(link.isjoint)
89+
print(len(link.collision))
Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
from roboticstoolbox.models.URDF.Panda import Panda
22
from roboticstoolbox.models.URDF.Frankie import Frankie
3+
from roboticstoolbox.models.URDF.FrankieOmni import FrankieOmni
34
from roboticstoolbox.models.URDF.UR3 import UR3
45
from roboticstoolbox.models.URDF.UR5 import UR5
56
from roboticstoolbox.models.URDF.UR10 import UR10
@@ -20,24 +21,25 @@
2021
from roboticstoolbox.models.URDF.YuMi import YuMi
2122

2223
__all__ = [
23-
'Panda',
24-
'Frankie',
25-
'UR3',
26-
'UR5',
27-
'UR10',
28-
'Puma560',
29-
'px100',
30-
'px150',
31-
'rx150',
32-
'rx200',
33-
'vx300',
34-
'vx300s',
35-
'wx200',
36-
'wx250',
37-
'wx250s',
38-
'Mico',
39-
'PR2',
40-
'LBR',
41-
'KinovaGen3',
42-
'YuMi'
24+
"Panda",
25+
"Frankie",
26+
"FrankieOmni",
27+
"UR3",
28+
"UR5",
29+
"UR10",
30+
"Puma560",
31+
"px100",
32+
"px150",
33+
"rx150",
34+
"rx200",
35+
"vx300",
36+
"vx300s",
37+
"wx200",
38+
"wx250",
39+
"wx250s",
40+
"Mico",
41+
"PR2",
42+
"LBR",
43+
"KinovaGen3",
44+
"YuMi",
4345
]
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version='1.0' encoding='utf-8'?>
2+
<robot xmlns:xacro="http://www.ros.org/wiki/xacro" name="frankie">
3+
<xacro:include filename="$(find franka_description)/robots/frankieOmni_arm.xacro" />
4+
<xacro:panda_arm safety_distance="0.00"/>
5+
</robot>

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy