rosserial_java_[学习笔记]Rosserial实现Windows-ROS交互操作(1)
安裝
sudo apt-get install ros-indigo-rosserial-windows
sudo apt-get install ros-indigo-rosserial-server
編譯
rosrun rosserial_windows make_libraries.py my_library
運行后會產生一個my_library文件夾,在my_library這個文件夾下會生成ros_lib文件夾
Windows下創建代碼工程
復制ubuntu下my_library的ros_lib文件夾至windows系統
Windows系統下安裝VisualStudio 2013
創建C++工程(rosserial_hello_world),選項中不要選擇預編譯
添加ros_lib至工程文件夾
VS2013工程配置
將ros_lib文件夾下沒有子文件夾的所有文件復制一份至工程目錄下
在VS2013屬性中配置附加包含目錄
代碼
#include "stdafx.h"
#include
#include
#include "ros.h"
#include
#include
using std::string;
int _tmain (int argc, _TCHAR * argv[])
{
ros::NodeHandle nh;
char *ros_master = "1.2.3.4"; //ROS的IP地址
printf ("Connecting to server at %s\n", ros_master);
nh.initNode (ros_master);
printf ("Advertising cmd_vel message\n");
geometry_msgs::Twist twist_msg;
ros::Publisher cmd_vel_pub ("cmd_vel", &twist_msg);
nh.advertise (cmd_vel_pub);
printf ("Go robot go!\n");
while (1)
{
twist_msg.linear.x = 5.1;
twist_msg.linear.y = 0;
twist_msg.linear.z = 0;
twist_msg.angular.x = 0;
twist_msg.angular.y = 0;
twist_msg.angular.z = -1.8;
cmd_vel_pub.publish (&twist_msg);
nh.spinOnce ();
Sleep (100);
}
printf ("All done!\n");
return 0;
}
ROS端啟動服務
$roscore
$rosrun rosserial_server socket_node
rostopic echo /cmd_vel
啟動客戶端
參考
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的rosserial_java_[学习笔记]Rosserial实现Windows-ROS交互操作(1)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python实现邮件客户端_利用pyth
- 下一篇: mysql主从配置访问_Mysql主从配