使用ROS通过串口获取遥控器信号(一)

使用ROS通过串口获取遥控器信号

硬件:
AT9S遥控器和R9DS接收机
TX2或者Jetson nano或者DJI manifold2G
软件:
Ubuntu16.04 ROS-kinetic

实现方法:
一:首先安装ROS下的Serial功能包

sudo apt-get install ros-kinetic-serial

P.S. 如果说使用此命令报404错误,可能是软件源的问题,可直接下载deb文件,如serial库http://packages.ros.org/ros/ubuntu/pool/main/r/ros-kinetic-serial/
然后在下载的目录下使用该命令进行安装

sudo dpkg -i xxx.deb //是安装包的准确名

二:查看串口设备,确认自己所接入的串口是哪一个

 ls /dev | grep tty*

三:安装ubuntu下的串口配置助手,sudo install minicom,并使用该工具查看通信是否正常,具体的操作过程可参考其他博客。

四:在ROS下创建工作空间和相关的功能包

创建工作空间,设置环境变量

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
cd ~/catkin_ws/
catkin_make
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

创建功能包

cd ~/catkin_ws/src/
catkin_create_pkg   uart_communication   std_msgs rospy roscpp

五:自定义存储遥控器消息的消息类型

cd ~/catkin_ws/src/uart_communication
mkdir msg
touch remoter_Raw.msg

修改该文件内容,其中ch1-ch14代表遥控器各个通道的消息,可根据自己需求设计

Header header
uint32 ch1
uint32 ch2
uint32 ch3
uint32 ch4
uint32 ch5
uint32 ch6
uint32 ch7
uint32 ch8
uint32 ch9
uint32 ch10
uint32 ch11
uint32 ch12
uint32 ch13
uint32 ch14

六:修改package.xml配置文件

gedit ~/catkin_ws/src/uart_communication package.xml

在package.xml文件中加入以下两行

  <build_depend>message_generation</build_depend>
  <exec_depend>message_runtime</exec_depend>

七:修改CMakeLists.txt的内容

gedit ~/catkin_ws/src/uart_communication CMakeLists.txt

在该文件中

find_package(catkin REQUIRED COMPONENTS
  roscpp
  rospy
  std_msgs
  message_generation
  serial
)

 add_message_files(
   FILES
   remoter_Raw.msg
 )
 
 generate_messages(
   DEPENDENCIES
   std_msgs
 )

catkin_package(
    CATKIN_DEPENDS message_runtime
)

八:编译

cd ~/catkin_ws
catkin_make

九:查看消息是否添加成功

rosmsg show uart_communication/remoter_Raw 

在这里插入图片描述
说明消息添加成功

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值