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

ROS communication

asked 2021-08-21 00:58:39 -0600

zuy gravatar image

Hi everyone, I'm having a project to build an application which can remote monitor and control the robot. Is there any way to communicate with the robot (send and receive data) on a device that doesn't have ROS, such as Windows PC or smartphone? Thank you for reading my question. Have a nice day!

edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted
1

answered 2021-08-22 15:13:30 -0600

pltlg gravatar image

updated 2021-08-23 11:32:11 -0600

Yes. Just launch a rosbridge node and you will be able to communicate through websocket. You can develop the client side yourself based on the api doc of the rosbridge node or use a library for example this one in dart language: https://pub.dev/packages/dartros

http://wiki.ros.org/rosbridge_suite

edit flag offensive delete link more

Comments

Thank you! But can we control the robot to do specific tasks like build a map or send goal to move_base?

zuy gravatar image zuy  ( 2021-08-24 02:42:07 -0600 )edit

from http://wiki.ros.org/rosbridge_suite "The protocol covers subscribing and publishing topics, service calls, getting and setting params, and even compressing messages and more." So if you want to control the robot you can send twist instructions on the "/cmd_vel" topic. or you create a ROS node that will handle the ros_bridge messages. because you send/receive data you can do everything, as long as you handle that data.

crnewton gravatar image crnewton  ( 2021-08-24 09:21:02 -0600 )edit
0

answered 2021-08-21 08:34:21 -0600

rex-schilasky gravatar image

At least for the windows PC you could install ROS and control your robot. Otherwise you would need to bridge the ros communication into another protocol like MQTT that is available for some more device types (IoT).

edit flag offensive delete link more

Comments

That could be a bit challenge, I'll think about that. Thank you!

zuy gravatar image zuy  ( 2021-08-22 02:48:28 -0600 )edit

I wouldn't recommend using ROS1 on Windows. Take a look at rosbridge_suite it's designed to solve your problem.

crnewton gravatar image crnewton  ( 2021-08-24 09:03:26 -0600 )edit

Please correct me if I'm wrong. But as I know, rosbridge has some limitation in control the robot, cannot launch a node is an example. Is that true and how can we solve that? Thank you!

zuy gravatar image zuy  ( 2021-08-24 09:10:19 -0600 )edit

You are correct, but you can write a node in ROS that handles the ros_bridge messages. that way you can launch a node by sending a message.( I commented on the post from @pltlg to not create 2 answers about ros_bridge.)

crnewton gravatar image crnewton  ( 2021-08-24 09:23:05 -0600 )edit

Thank you for helping, I will put my mind on that.

zuy gravatar image zuy  ( 2021-08-24 09:33:33 -0600 )edit
0

answered 2021-08-21 04:41:02 -0600

kak13 gravatar image

I could be wrong, but I think you need another device with ROS installed.

To obtain data from publishers/subscribers, you will need to use ROS/ROS2.

Maybe you can use something to send data value to python or server from ros2/ros1 which is possible.

edit flag offensive delete link more

Comments

1

Thank you for answering, I'll think about that.

zuy gravatar image zuy  ( 2021-08-22 02:47:36 -0600 )edit

Question Tools

1 follower

Stats

Asked: 2021-08-21 00:58:39 -0600

Seen: 287 times

Last updated: Aug 23 '21