Roboware Studio详细安装教程 (ROS kinetic)以及简单使用
RoboWare Studio是一个ROS集成开发环境。它使 ROS开发更加直观、简单、并且易于操作。可进行ROS工作区及包的管理、代码编辑、构建及调试。
安装包下载
1 RoboWare官网:http://www.roboware.me/#/home(自己尝试过,暂时登不进去)
2 官方GitHub链接: https://github.com/TonyRobotics/RoboWare
准备工作
依次执行下边的命令,进行相关的准备工作,下面的部分将会详细解释的。
sudo apt-get install build-essential
sudo apt-get install python-pip
sudo python -m pip install pylint
sudo apt-get install clang-format-3.8
安装前,请查看系统环境并确认:
(1)操作系统 为 Ubuntu。
(2)已完成ROS的安装配置。ROS安装步骤可参照官方网站:
http://wiki.ros.org/kinetic/Installation/Ubuntu
(3)可使用 catkin_make 构建ROS包。若无法构建,可能需要运行:
$ sudo apt-get install build-essential
(4)为支持 Python 相关功能,需要安装 pylint。
$ sudo apt-get install python-pip
$ sudo python -m pip install pylint
(5)为支持 clang-format 相关功能,需要安装 clang-format-3.8 或更高版本。
$ sudo apt-get install clang-format-3.8
安装
下载Roboware Studio最新版,在下载的文档下,鼠标右键调出终端输入:
$ sudo dpkg -i roboware-studio_<version>_<architecture>.deb
i386为32位版本,amd64为64位版本
输入安装包的名字时,可以tab键自动补全~!
安装过程会弹出 用户协议 可以按 ESC 选择确认!
安装过程会弹出 用户协议 可以按 ESC 选择确认!
安装过程会弹出 用户协议 可以按 ESC 选择确认!
安装完成后,直接在终端输入
roboware-studio
简单使用
1 新建工作区
2 点击release,再进行build
3 创建功能包
(1)右击src,点击Add ROS Package
(2)更改package.xml信息(根据自己的邮箱填写),然后ctr+s进行保存
(3)编辑依赖的ROS包列表,一般添加roscpp,rospy,std_msgs,根据自己实际需要进行填写
可以查看CMakeList.txt,依赖关系已经进行更新
(4)ctr+`,调出terminal,输入catkin_make,对test功能包进行编译
4 创建ROS消息
此时CMakeLists.txt 会自动加入以上设置!!!
5 创建src文件夹
6 创建消息发布器talker和订阅器listener(严格按照此步骤!!!)
7 输入程序,并分别保存
talker.cpp
#include "ros/ros.h"
#include "std_msgs/String.h"
#include "sstream"
int main(int argc, char **argv)
{
ros::init(argc, argv, "talker");
ros::NodeHandle n;
ros::Publisher chatter_pub = n.advertise<std_msgs::String>("chatter", 1000);
ros::Rate loop_rate(10);
int count=0;
while (ros::ok())
{
std_msgs::String msg;
std::stringstream ss;
ss << "hello ros~!" << count;
msg.data = ss.str();
ROS_INFO("%s",msg.data.c_str());
chatter_pub.publish(msg);
ros::spinOnce();
loop_rate.sleep();
++count;
}
return 0;
}
listener.cpp
#include "ros/ros.h"
#include "std_msgs/String.h"
void chatterCallback(const std_msgs::String::ConstPtr& msg)
{
ROS_INFO("I heard: [%s]", msg->data.c_str());
}
int main(int argc, char **argv)
{
ros::init(argc, argv, "listener");
ros::NodeHandle n;
ros::Subscriber sub = n.subscribe("chatter", 1000,chatterCallback);
ros::spin();
return 0;
}
8 运行catkin_make,编译成功
9 终端输入(非常重要!!!)
source devel/setup.bash 进行连接配置的
10 终端输入roscore
roscore
11 分别开启talker和listener订阅器
rosrun test talker
rosrun test listener