MoveIt libarys not found
HI everyone,
i installed MoveIt 2 the binary way on Ros2 Humble. UNfortunatly when i tried to run the following code i get an error that the moveit module cannot be found.
I would be really grateful if you could help
Code of my ros2 node:
#!/usr/bin/env python3
import rclpy
from rclpy.node import Node
from geometry_msgs.msg import Pose, PoseStamped
from trajectory_msgs.msg import JointTrajectory, JointTrajectoryPoint
from moveit.planning import MoveItPy
from moveit.core.robot_state import RobotState
class Ur10TopicJoints(Node):
def __init__(self):
super().__init__('PPV2')
self.subscriber = self.create_subscription(Point, '/tcp', self.tcpCallback, 10)
self.publischer = self.create_publisher(JointTrajectory, '/joint_trajectory_controller/joint_trajectory', 10)
self.get_logger().info(f"[HINWEIS] PPV2 ist gestartet...")
ur = MoveItPy(node_name="moveit_py")
ur_arm = ur.get_planning_component("ur_manipulator")
ur_state = RobotState(ur.get_robot_model())
self.tcpCallback()
def tcpCallback(self):
x = float(input(f"Bitte x-Ziel-Koordiante eingeben: "))
y = float(input(f"Bitte y-Ziel-Koordiante eingeben: "))
z = float(input(f"Bitte z-Ziel-Koordiante eingeben: "))
jointTraj = self.tcpToJointTraj(x, y, z)
self.publischer.publish(jointTraj)
self.get_logger().info(f'Gelenkwinkel gesendet: {jointTraj}')
def tcpToJointTraj(self, x, y, z):
pose = PoseStamped()
pose.header.frame_id = "wrist_3_link"
pose.position.x = x
pose.position.y = y
pose.position.z = z
pose.orientation.w = 1.0
jointTraj = JointTrajectory()
jointTraj.header.stamp = self.get_clock().now().to_msg()
jointTraj.joint_names = self.ur.get_joint_names()
self.ur_arm.set_start_state_to_current_state()
self.ur_arm.set_goal_state(pose_stamed_msg=pose, pose_link="wrist_3_link")
#Berechnung der inversen Kinematik für die eben erstellte Pose
plan = self.ur.plan()
if plan is not None:
self.get_logger().info('Executing Plan')
self.ur.execute(plan)
jointPos = self.ur_state.get_current_joint_values()
trajPnt = JointTrajectoryPoint()
trajPnt.positions = jointPos
jointTraj.points.append(trajPnt)
return jointTraj
else:
self.get_logger().info('Planning failed')
def main(args=None):
rclpy.init(args=args)
node = Ur10TopicJoints()
rclpy.spin(node)
rclpy.shutdown()
if __name__ == '__main__':
main()
Terminal Error:
ubuntu@ubuntu:~/Schreibtisch/ros2_ws$ ros2 run ur10_faps_driver Ur10TopicJoints
Traceback (most recent call last):
File "/home/ubuntu/Schreibtisch/ros2_ws/install/ur10_faps_driver/lib/ur10_faps_driver/Ur10TopicJoints", line 33, in <module>
sys.exit(load_entry_point('ur10-faps-driver==0.0.0', 'console_scripts', 'Ur10TopicJoints')())
File "/home/ubuntu/Schreibtisch/ros2_ws/install/ur10_faps_driver/lib/ur10_faps_driver/Ur10TopicJoints", line 25, in importlib_load_entry_point
return next(matches).load()
File "/usr/lib/python3.10/importlib/metadata/__init__.py", line 171, in load
module = import_module(match.group('module'))
File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 883, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/ubuntu/Schreibtisch/ros2_ws/install/ur10_faps_driver/lib/python3.10/site-packages/ur10_faps_driver/Ur10TopicJoints.py", line 8, in <module>
from moveit.planning import MoveItPy
ModuleNotFoundError: No module named 'moveit.planning'
[ros2run]: Process exited with failure
Asked by Icon45 on 2023-06-30 02:16:08 UTC
Comments