小车yolo机械臂(四)python ros 和darknet_ros 使用launch文件启动脚本
目录总览
小车yolo机械臂(一)ros下gazebo搭建小车(可键盘控制)安装摄像头仿真 加载yolo检测识别标记物体
小车yolo机械臂(二)机械臂仿真 ros下从xacro模型文件搭建Moveit!+Gazebo仿真系统
小车yolo机械臂(三)ROS消息订阅监听 rospy.Subscriber 订阅监听yolo python实现订阅/darknet_ros/bounding_boxes topic
小车yolo机械臂(四)python ros 和darknet_ros 使用launch文件启动脚本
小车yolo机械臂(五)让小车在命令下运动起来 rostopic pub /cmd_vel geometry_msgs/Twist
小车yolo机械臂(六)ros gazebo 小车摄像头根据darknet_ros中yolo目标检测的信息进行自主运动
小车yolo机械臂(七)小车与机械臂融合,并控制机械臂运动 gazebo control
小车yolo机械臂(八)ros小车和机械臂gazebo仿真,机械臂根据darknet_ros中yolo检测结果来自动运动 python实现
在之前几篇的博客中,我们要启动小车摄像头模型,yolo检测,python文件,都需要打开三个终端,依次输入命令,这样显得比较麻烦,我们现在就先将这三个命令合在一起,一个命令启动小车摄像头模型及yolo检测,python文件。
那就开始了:
首先打开mrobot_gazebo/launch下的my_gazebo3.launch文件
<launch><!-- 设置launch文件的参数 --><arg name="world_name" value="$(find mrobot_gazebo)/worlds/playground.world"/><arg name="paused" default="false"/><arg name="use_sim_time" default="true"/><arg name="gui" default="true"/><arg name="headless" default="false"/><arg name="debug" default="false"/><!-- 运行gazebo仿真环境 --><include file="$(find gazebo_ros)/launch/empty_world.launch"><arg name="world_name" value="$(arg world_name)" /><arg name="debug" value="$(arg debug)" /><arg name="gui" value="$(arg gui)" /><arg name="paused" value="$(arg paused)"/><arg name="use_sim_time" value="$(arg use_sim_time)"/><arg name="headless" value="$(arg headless)"/></include><!-- 加载机器人模型描述参数 --><param name="robot_description" command="$(find xacro)/xacro --inorder '$(find mrobot_gazebo)/urdf/my_gazebo_robot_All.urdf.xacro'" /> \<!-- 运行joint_state_publisher节点,发布机器人的关节状态 --><node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" ></node> <!-- 运行robot_state_publisher节点,发布tf --><node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" output="screen" ><param name="publish_frequency" type="double" value="50.0" /></node><!-- 在gazebo中加载机器人模型--><node name="urdf_spawner" pkg="gazebo_ros" type="spawn_model" respawn="false" output="screen"args="-urdf -model mrobot -param robot_description"/> </launch>
我们先对darknet_ros下的darknet_ros.launch进行添加:
<!-- 启动darknet_ros的yolo检测-->
<include file="$(find darknet_ros)/launch/darknet_ros.launch">
</include>
然后添加mrobot_gazebo/scripts下的python文件listener_yolo.py:
<!-- 启动监听订阅yolo检测话题信息的python -->
<node pkg="mrobot_gazebo" name="listener_yolo" type="listener_yolo.py" output="screen">
</node>
最后的代码:
<launch><!-- 设置launch文件的参数 --><arg name="world_name" value="$(find mrobot_gazebo)/worlds/playground.world"/><arg name="paused" default="false"/><arg name="use_sim_time" default="true"/><arg name="gui" default="true"/><arg name="headless" default="false"/><arg name="debug" default="false"/><!-- 运行gazebo仿真环境 --><include file="$(find gazebo_ros)/launch/empty_world.launch"><arg name="world_name" value="$(arg world_name)" /><arg name="debug" value="$(arg debug)" /><arg name="gui" value="$(arg gui)" /><arg name="paused" value="$(arg paused)"/><arg name="use_sim_time" value="$(arg use_sim_time)"/><arg name="headless" value="$(arg headless)"/></include><!-- 加载机器人模型描述参数 --><param name="robot_description" command="$(find xacro)/xacro --inorder '$(find mrobot_gazebo)/urdf/my_gazebo_robot_All.urdf.xacro'" /> \<!-- 运行joint_state_publisher节点,发布机器人的关节状态 --><node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" ></node> <!-- 运行robot_state_publisher节点,发布tf --><node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" output="screen" ><param name="publish_frequency" type="double" value="50.0" /></node><!-- 在gazebo中加载机器人模型--><node name="urdf_spawner" pkg="gazebo_ros" type="spawn_model" respawn="false" output="screen"args="-urdf -model mrobot -param robot_description"/> <!-- 启动darknet_ros的yolo检测--><include file="$(find darknet_ros)/launch/darknet_ros.launch"></include><!-- 启动监听订阅yolo检测话题信息的python --><node pkg="mrobot_gazebo" name="listener_yolo" type="listener_yolo.py" output="screen"></node></launch>
在终端启动:
roslaunch mrobot_gazebo my_gazebo3.launch
我们可以看到,三者都被启动了
小车yolo机械臂(四)python ros 和darknet_ros 使用launch文件启动脚本相关推荐
- 小车yolo机械臂(一)ros下gazebo搭建小车(可键盘控制)安装摄像头仿真 加载yolo检测识别标记物体
ros下gazebo搭建小车(可键盘控制)安装摄像头仿真 加载yolo检测识别标记物体 目录总览 一,项目代码下载 二,ros下实现darknet_ros(YOLO V3)检测 2.1 编译整个项目 ...
- UR3机械臂+Realsense D435+ROS手眼标定记录
UR3机械臂+Realsense D435+ROS手眼标定记录 前面一段时间,由于实验室工作安排,上手了UR3机械臂和Realsense D435深度相机,在手眼标定这一段真的是让人心累,断断续续折腾 ...
- ROS入门学习三——launch文件
launch作用:便于一次启动多个节点,可启动本地节点和远程节点及修改添加参数服务器参数. <launch> //<launch>是所有launch文件的根标签<node ...
- ROS 学习笔记3. launch文件的使用
launch文件的使用 一.launch文件启动小海龟demo 二.launch文件的各个标签的属性 1.launch标签属性 2.node标签属性 3.include标签属性 4.remap标签属性 ...
- ROS学习笔记-roslaunch文件的编写用sh脚本控制launch文件启动顺序
转载自:https://mp.weixin.qq.com/s?__biz=MzUyMTkxODQyOQ==&mid=2247484719&idx=1&sn=27b3a01c29 ...
- Dobot机械臂的Python Demo
官网下载地址:[OFFICIAL]Dobot Magician Download Center | DOBOT 0.Python Demo流程: 一.下载安装python 3.7.5 64-bit 二 ...
- kinova机械臂GEN3的Ros操作开发教程
文章目录 kinova GEN3 官方文件 kinova GEN3 ip设置 kinova GEN3 有线连接设置 windows下操作 ubuntu下连接操作: kinova GEN3 无线连接设置 ...
- 遨博机械臂——末端工具ROS驱动
文章目录 知识目标 1. 机械臂末端工具(EOAT) 2. 电动夹爪 3. 气动吸盘 参考 知识目标 学习机械臂常用末端工具构成: 学习aubo机械臂安装电动夹爪及启动吸盘的方法: 学习电动夹爪及气动 ...
- MoveIt的使用(二)机械臂URDF在ROS中MoveIt的配置和使用
一.机械臂在ros里面的可视化 在SOLIDWORKS转换成urdf文件之后,生成的文件放在新建的功能包中后,编译(catkin_make),再执行下面代码即可运行可视化文件 roslaunch de ...
- ROS不同工作空间下同名功能包下同名launch文件启动顺序问题(neither a launch file in package...)
ROS开发这么久了,想必大家都知道怎么可以在每次打开终端时不用source环境了,如若还有不知道的小伙伴可以点击这里. 传送门: https://blog.csdn.net/qq_45152498/a ...
最新文章
- asyncawait
- iptables从入门到放弃
- 重启jboss出现问题:端口被占用
- ios不响应presentModalViewController界面的处理
- 点击User Profile Service Application 报错
- 我眼中的 NCC,WTM 寻亲之旅
- java instanceof运算符_Java instanceof 运算符的使用方法
- explode php,php中的explode()函数实例介绍
- Quartus II三种方式实现D触发器
- 【Python】Spy++使用
- 重磅推荐 | 我精选的15个电子书下载网站!
- 中国城市电话区号对照表,不包括台湾
- Indy相关函数用法
- Coding中UML建模问题释疑
- 学习=拟合?深度学习和经典统计学是一回事吗?
- NOIP2012——文化之旅
- 迅为RK3588开发板Linux安卓12瑞芯微ARM核心板人工智能工业AI主板
- Mysql 索引 与 多表查询性能优化
- Grandpa's Estate POJ - 1228(凸包极角序改写)
- 「Android渲染」图像是怎样显示到屏幕上的?