上期回顾:
RT-Thread智能车目标识别系统连载教程——手写体识别模型 (1)
RT-Thread智能车目标识别系统连载教程——训练卷积神经网络模型(2)
RT-Thread智能车目标识别系统连载教程——运行卷积神经网络模型(3)
RT-Thread智能车目标识别系统连载教程——Darknet 训练目标检测模型(4)
RT-Thread智能车目标识别系统连载教程——连接 ROS 小车控制(5)
引言
这篇文档会介绍如何用 RT-Thread 和 ROS 连接实现一个带摄像头的远程控制小车。

不过其实 RT-Thread 部分的代码已经在这篇文档里面介绍了:RT-Thread 连接 ROS 小车控制,在这个基础上,我们只需要修改 ROS 的代码就可以了。
这里先把整个系统框图画出来,这样如果想要自己做一辆这样的小车也可以动手试一试:

实物图看起来就是这样:

2.ROS平滑运动
2.1 ROS 工作环境
下面的代码都是在安装了 ROS 的电脑上操作的
ROS 的安装之前已经介绍过了,这里就不重复了,我们先新建一个工作区间:
1$ mkdir telebot_ws && cd telebot_ws
2$ catkin_init_workspace
我们再新建一个 ROS 软件包:
1$ cd src
2$ catkin_create_pkg telebot rospy
这样我们就可以开始 ROS 的开发了,在 telebot_ws 目录下:
1$ catkin_make
2$ source devel/setup.bash
2.2 按键触发
我们先建立一个节点用来监听键盘的按键,并且将收到的按键发布到 /keys 这个话题 (ROS 节点间的通信就是靠发布和订阅话题实现的),我们在 telebot_ws/src/telebot/src 目录下新建一个文件key_publisher.py
1#!/usr/bin/python
2
3# 导入软件包
4import sys, select, tty, termios
5import rospy
6from std_msgs.msg import String
7
8if __name__ == '__main__':
9

本文档介绍了如何使用RT-Thread和ROS连接实现带有摄像头的远程控制智能车。通过ROS工作区和软件包的创建,实现了键盘控制小车平滑运动,并通过OpenCV获取及发布摄像头图像,为后续的目标检测打下基础。
最低0.47元/天 解锁文章
618

被折叠的 条评论
为什么被折叠?



