我是靠谱客的博主 包容星星,最近开发中收集的这篇文章主要介绍ros1常用命令,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

  1. 初始化catkin工作空间
    $ mkdir -p ~/catkin_ws/src
    $ cd ~/catkin_ws/
    $ catkin_make #初始化工作空间

  2. package的创建
    $ catkin_create_pkg test_pkg roscpp rospy std_msgs

roscd [pacakge]

3.打开bashrc
gedit ~/.bashrc
添加内容
echo ‘’/home/xu/catkin_ws/install_isolated/setup.bash’’ >> ~/.bashrc

  1. 打开软件中心
    gnome-software

5 .添加ros活动路径
先cd到工作目录
source ./devel/setup.bash

6.启动节点
rosrun pkg_name node_name

roslaunch pkg_name file_name.launch

  1. sleep方法

ros::Duration(0.5).sleep(); //用Duration对象的sleep方法休眠

ros::Rate r(10); //10HZ
while(ros::ok())
{
r.sleep();
//定义好sleep的频率, Rate对象会自动让整个循环以10hz休眠, 即使有任务执行占用了时间
}

6.6.3 Timer
Rate的功能是指定一个频率, 让某些动作按照这个频率来循环执行。 与之类似的是ROS中的
定时器Timer, 它是通过设定回调函数和触发时间来实现某些动作的反复执行, 创建方法和
topic中的subscriber很像。
void callback1(const ros::TimerEvent&)
{
ROS_INFO(“Callback 1 triggered”);
}
void callback2(const ros::TimerEvent&)
{
ROS_INFO(“Callback 2 triggered”);
}
int main(int argc, char **argv)
{
ros::init(argc, argv, “talker”);
ros::NodeHandle n;
ros::Timer timer1 = n.createTimer(ros::Duration(0.1), callback1); //timer1每0.1s触发
一次callback1函数
ros::Timer timer2 = n.createTimer(ros::Duration(1.0), callback2); //timer2每1.0s触发
一次callback2函数
ros::spin(); //千万别忘了spin, 只有spin了才能真正去触发回调函数
return 0;
}

  1. 启动gazebo中的TurtleBot
    roslaunch turtlebot_gazebo turtlebot_world.launch
    启动键盘
    roslaunch turtlebot_teleop keyboard_teleop.launch

    启动 rviz
    rosrun rviz rviz

  2. 启动画图工具
    rosrun plotjuggler PlotJuggler

9 ,启动Python文件
先cd 到Python文件的目录下
chmod +x talker.py
10:服务端与客户端写法:
rossrv list
rossrv show std_srvs/Trigger

bool ServiceCallback(std_srvs::Trigger::Request &req,std_srvs::Trigger::Response &res)
{
res.success=is_can_grab;
return true;
}

ros::ServiceServer service = n.advertiseService(“can_grab”, ServiceCallback);

ros::ServiceClient client = n.serviceClient<std_srvs::Trigger>(“can_grab”);

最后

以上就是包容星星为你收集整理的ros1常用命令的全部内容,希望文章能够帮你解决ros1常用命令所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部