ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

AlexandrosNic's profile - activity

2023-08-06 07:41:24 -0500 received badge  Nice Answer (source)
2023-07-19 03:07:25 -0500 received badge  Famous Question (source)
2023-06-07 15:01:00 -0500 marked best answer Real robot UR3e is not moving with moveit

I am connected to a UR3e over the network, working on ROS2 Foxy, on Ubuntu 20.04, via docker.

  • I set up the right host IP on the robot and robot’s IP in the launch file
  • I installed the external control urcap
  • I tried with both enable/disable remote control, and with both local/remote control on teach pendant
  • I tried calibrating the robot (with ur_calibration)

Then I run

ros2 launch ur_bringup ur_control.launch.py ur_type:=ur3e robot_ip:=192.168.0.4 launch_rviz:=false reverse_ip:=192.168.0.2 limited:=true

on one terminal and

ros2 launch ur_bringup ur_moveit.launch.py ur_type:=ur3e robot_ip:=192.168.0.4 launch_rviz:=true reverse_ip:=192.168.0.2

on another terminal.

After that, I run the program on the teach pendant of the robot with the external control (with the correct IP).

Rviz starts with the robot at the right position. I plan and execute a random trajectory.

I get this outputs in terminal 1: Received new action goal Accepted new action goal Goal reached, success! and these on terminal 2: Completed trajectory execution with status SUCCEEDED Solution was found and executed. Plan and Execute request complete! However the real robot does not move. There is no error in the terminals.

Also I was wondering whether warehouse_ros_mongo is really necessary and what does it exactly do?

Any clue what could be the problem here?

PS: It could be a docker issue?

Thank you in advance

2023-06-07 15:01:00 -0500 received badge  Self-Learner (source)
2023-06-07 15:00:49 -0500 received badge  Famous Question (source)
2023-05-31 00:30:45 -0500 received badge  Taxonomist
2023-03-13 05:52:16 -0500 received badge  Necromancer (source)
2023-01-27 08:40:16 -0500 received badge  Famous Question (source)
2023-01-15 22:56:50 -0500 received badge  Famous Question (source)
2023-01-10 07:15:25 -0500 received badge  Famous Question (source)
2022-12-01 12:07:05 -0500 received badge  Famous Question (source)
2022-11-26 10:11:25 -0500 received badge  Notable Question (source)
2022-11-24 20:53:45 -0500 received badge  Notable Question (source)
2022-11-24 20:53:45 -0500 received badge  Famous Question (source)
2022-11-24 20:53:45 -0500 received badge  Popular Question (source)
2022-11-22 03:26:41 -0500 received badge  Notable Question (source)
2022-11-08 12:13:08 -0500 received badge  Popular Question (source)
2022-10-11 03:30:50 -0500 edited question ExternalShutdownException in thread

ExternalShutdownException in thread Hey all, I implemented a simple state machine using smach (migrated to ROS2), that

2022-10-11 03:30:31 -0500 answered a question ExternalShutdownException in thread

Instead of manually terminating the node, I found out that actually the state machine did not terminate automatically (a

2022-10-07 12:49:48 -0500 edited question ExternalShutdownException in thread

ExternalShutdownException in thread Hey all, I implemented a simple state machine using smach (migrated to ROS2), that

2022-10-07 08:06:28 -0500 answered a question Can we use smach on ros2 foxy?

Here is a migrated from ROS1 smach package by DeepX

2022-10-07 07:13:35 -0500 asked a question ExternalShutdownException in thread

ExternalShutdownException in thread Hey all, I implemented a simple state machine using smach (migrated to ROS2), that

2022-10-04 10:43:26 -0500 received badge  Famous Question (source)
2022-10-04 09:11:17 -0500 edited question How can I call a ros2 executable with arguments from a non-ROS file

How can I call a ros2 executable with arguments Hello, I have two questions: I would like to create a ROS API to start

2022-09-28 01:31:12 -0500 received badge  Famous Question (source)
2022-09-27 17:38:00 -0500 commented answer ROS2 and Webots Docker file

I created a docker from scratch which I used without problems (that's not true..) until I reached the moveit part. There

2022-09-27 17:27:58 -0500 received badge  Popular Question (source)
2022-09-21 10:41:23 -0500 commented question Moveit path is not executed even though solution found (too many states) in Webots

You are right. The problem lies somewhere else, and specifically in the approximate solution of moveit, which I was not

2022-09-19 06:16:04 -0500 received badge  Popular Question (source)
2022-09-19 06:16:04 -0500 received badge  Notable Question (source)
2022-09-16 10:02:42 -0500 received badge  Self-Learner (source)
2022-09-16 05:36:33 -0500 answered a question Failed to fetch current robot state - Webots - Moveit2

It was a bit silly on my side that I did not notice this, but I may solved by just adding the use_sim_time: True paramet

2022-09-16 05:36:33 -0500 received badge  Rapid Responder (source)
2022-09-15 07:13:36 -0500 edited question Failed to fetch current robot state - Webots - Moveit2

Failed to fetch current robot state - Webots - Moveit2 After reading all the relevant questions, decided to ask a new on

2022-09-15 07:01:18 -0500 asked a question Failed to fetch current robot state - Webots - Moveit2

Failed to fetch current robot state - Webots - Moveit2 After reading all the relevant questions, decided to ask a new on

2022-09-13 07:21:03 -0500 received badge  Notable Question (source)
2022-09-07 05:36:41 -0500 commented question Moveit path is not executed even though solution found (too many states) in Webots

Thank you for your reply Darko (and btw I consulted your project for creating the vacuum gripper). I used the official m

2022-09-06 09:13:45 -0500 edited question Moveit path is not executed even though solution found (too many states) in Webots

Moveit path is not executed even though solution found (too many states) in Webots I integrated moveit in a webots envir

2022-09-06 09:12:00 -0500 edited question Moveit path is not executed even though solution found (too many states) in Webots

Moveit path is not executed even though solution found (too many states) in Webots I integrated moveit in a webots envir

2022-09-06 09:06:49 -0500 asked a question Moveit path is not executed even though solution found (too many states) in Webots

Moveit path is not executed even though solution found (too many states) in Webots I integrated moveit in a webots envir

2022-08-17 10:11:46 -0500 asked a question How can I control the Onrobot's vacuum gripper VGC10 via ROS

How can I control the Onrobot's vacuum gripper VGC10 via ROS I have a UR3e, coupled with a VGC10 vacuum gripper at its e

2022-08-15 00:08:33 -0500 received badge  Famous Question (source)
2022-08-01 03:54:36 -0500 received badge  Notable Question (source)
2022-07-28 09:32:40 -0500 commented answer Control and read sensors of OnRobot RG2-FT gripper mounted to a UR5 robot arm using ROS2

I ported the VG drivers to ROS2, however I am looking for a way to control the gripper through the UR drivers, since I d

2022-07-28 09:26:36 -0500 commented answer How can I call a ros2 executable with arguments from a non-ROS file

I just edited the question to add these errors. Thank you for your help @ljaniec

2022-07-28 09:25:39 -0500 edited question How can I call a ros2 executable with arguments from a non-ROS file

How can I call a ros2 executable with arguments Hello, I have two questions: I would like to create a ROS API to start

2022-07-28 08:38:16 -0500 marked best answer How can I call a ros2 executable with arguments from a non-ROS file

Hello,

I have two questions: I would like to create a ROS API to start ROS nodes from a non-ROS python script. For example the non-ROS python script: pick.py, would call the pick_ros.py to start a node (assuming that ROS is already running). Even though this is not elegant, the only way I found to do that, is by writing in the Python script the terminal command: os.system("ros2 run package pick") My first question, is there another way to run ros2 run within Python?

Second, the pick method of the pick_ros executable ideally should take three arguments: x, y, z. Is there a way to call the ros node with arguments, without declaring these as ros parameters? (the reason is, that the pick_ros.py calls smach (state machine), which is not a node. And declaring parameters can be done only in nodes) So I would like something like: ros2 run package pick x=0.2, y=0.2, z=0.2

Edit: Declaring parameters however raises a type error:

I get x, y, z values from an action message (as floats - double type is not valid), whether ROS parameter types only accepts double type (no float) which for a reason identifies it as a type error.

In particular, my action msg is:

# Request
float64 x
float64 y
float64 z

and the pick node is:

def pick_sm(x=0.2, y=0.3, z=0.2):
    rclpy.init(args=None)

    node = rclpy.create_node('pick')

    node.declare_parameter('x')
    node.declare_parameter('y')
    node.declare_parameter('z')

    x_par = Parameter('x', Parameter.Type.DOUBLE, x)
    y_par = Parameter('y', Parameter.Type.DOUBLE, y)
    z_par = Parameter('z', Parameter.Type.DOUBLE, z)

When I call the pick_sm node through a non-ROS python script, I get this error:

AssertionError: The 'x' field must be of type 'float'

which prevents me from using these x, y, z fields as ROS parameters

Thank you in advance