-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Question about free-fleet, Is it possible to bind a robot without nav2 pkg to a robot with nav2 pkg? #139
Comments
Hello @kyu8456! You can use https://github.com/open-rmf/rmf_demos/blob/main/rmf_demos/launch/office.launch.xml#L14-L21 as a starting point. |
Thanks your reply. I use the rmf_adapter like this rmf_demos launch square.launch.xml
|
Sorry I misunderstood your question earlier.
This is possible, but highly discouraged, as decisions or commands to the robots directly without through open-rmf, will cause unforeseen disruptions to the scheduling system, as open-rmf uses all the information provided by the fleet adapters to resolve conflicts, allocate tasks and allow sharing of resources (doors, lifts, infrastructure, etc). For example, if user A requests that the turtlebot3 go to waypoint 1 using nav2 (not open-rmf), and user B requests tinyrobot to head to waypoint 1 through open-rmf, at the same time, open-rmf will not know that there will be a traffic conflict ahead of time, and there will be a significant chance that both robots will enter a deadlock on the way to waypoint 1. The best way to operate both robots from different fleets would be using the
The nav graph can certainly be shared between different fleet of robots, if both fleets really do share the same navigation graph. More often, their navigation graphs are different as they may be of different sizes or if a fleet is not allowed to enter certain areas of the map, whereas the other is allowed to. |
Thank you! so much!! but that isn't also work rmf_task command that the tinyRobot_A move the "n8" using the dispatch-patrol As I understand it, if I enter a destination as a node near that robot, I know that the nearby robot moves. so the command is right. As a result, the TinyRobot's state is build time_stamp on rmf_core but that isn't move to rmf_task. so why? what can i change the file? |
heelo. @aaronchongth I understand about free-fleet server yesterday. so the client is two(tb3, tinyRobot) and server is one right? i make the tinyRobot and tb3 are build on rmf_core(nav_graph) i quote about nav2_pkg website. but this is not launch. so i think the value(follow_path) is not correct. maybe. the parameter value is just one(navigate_to_pose)> |
Hi @kyu8456!
Apologies, I'm don't quite understand your question, is it possible to give me an example of what you're trying to achieve or perhaps rephrase your question?
If you are trying to run both turtlebot3 and tinyRobot, you would need turtlebot3 with free fleet and full control fleet adapter, while tinyRobot with the tinyRobot fleet adapter (not through free fleet). Free fleet interacts directly with the navigation stack of the robot, which tinyRobot does not use.
As mentioned tinyRobot uses the slotcar plugin, not nav2, so it should follow the paths as drawn out in your navigation graph without deviating. |
thank you @aaronchongth ! I was curious that tinyRobot didn't move even though it received a command from Rmf. So in my opinion, to solve this problem, you can solve the error below. [free_fleet_client_ros2-11] [ERROR] [1691337344.234318697] [transformPoseInTargetFrame]: Extrapolation Error looking up target frame: Lookup would require extrapolation into the past. Requested time 758.837000 but the earliest data is at time 1691337334.253269, when looking up transform from frame [tinyRobot_base_footprint] to frame [map]I check the tf_tree like picture. the tinyRobot_odom isn't connect the map. so the tinyRobot isn't moving maybe. One more thing to worry about is that TinyRobot doesn't have a controller, but I don't know if it will be able to move when a command is patrol from rmf. Because i want this robot to show movements that don't use nav2. |
Before proceeding, is there an existing issue or discussion for this?
Description
I try two robot, tinyRobot and turtlebot3_burger in free-fleett. so i make tinyRobot.urdf, map etc.. umm. i have question about that. this is server error? but the comment does not look like server error. how can i do it!?
[free_fleet_client_ros2-11] [ERROR] [1691337344.234318697] [transformPoseInTargetFrame]: Extrapolation Error looking up target frame: Lookup would require extrapolation into the past. Requested time 758.837000 but the earliest data is at time 1691337334.253269, when looking up transform from frame [tinyRobot_base_footprint] to frame [map]
[free_fleet_client_ros2-11]
[free_fleet_client_ros2-11] [WARN] [1691337344.234345710] [tinyRobot_A_free_fleet_client_node]: Unable to get robot pose.
I want to test the other robot (turtlebot3_burger & tinyRobot). so i try to free-fleet and build up tinyRobot & turtlebot3_burger. and so i command the task. turtlebot3 is moving to waypoint with nav2. but tinyRobot isn't moving. I want to move just move about tinyRobot.(without nav2). so how do i that..? i know the control_type(full_control, readonly). i check the full_control(slotcar.so) in tinyRobot's sdf file.
help me.. please..
terminal 1 :
ros2 launch ff_examples_ros2 turtlebot3_square_ff.launch.xml
terminal 2 :
ros2 launch rmf_demos square.launch.xml
terminal 3 :
ros2 launch ff_examples_ros2 turtlebot3_square_ff_server.launch.xml
teminal 4 :
ros2 run rmf_demos_task dispatch-patrol -p n3 --use_sim_time (for tb3_burger)
ros2 run rmf_demos_task dispatch-patrol -p n8--use_sim_time (for tinyRobot)
The text was updated successfully, but these errors were encountered: