游戏手柄介绍(Xu, Chen et al. 2016)

上一章节我们介绍了如何用键盘控制我们的机器人底盘运动。实际使用过程中,我们很难抱着笔记本来遥控小车。更为常见的情况是利用无线遥控手柄来进行遥控控制小车的前进、后退和转弯。

本机器人系统为大家准备的是GameSir游戏手柄,该手柄握感舒适,且按键丰富,可以用于本机器人系统的控制。

无线手柄的接收器连接到底盘主机的USB接口即可。通过后面的例程我们将实现用手柄无线遥控小车运动的DEMO。

运行无线手柄DEMO

开启一个终端,运行底盘控制主节点,输入:

ssh hong@192.168.31.200

roslaunch ros_arduino_python arduino.launch

如下图所示,节点即开启成功。

控制手柄的两个节点分别是手柄开启节点(rosrun joy joy_node)和手柄控制节点(rosrun turtlesim turtle_teleop_joystick),你可以在已经和树莓派实现远程连接的终端下分别运行这两个节点。不过现阶段,我们已经将这两个节点整合到了底盘的主launch文件中,故只需运行roslaunch ros_arduino_python arduino.launch即可通过手柄控制底盘移动。

核心代码讲解

手柄控制是通过~/catkin_ws/src/turtlesim/turtlesim文件夹下的turtle_teleop_joystick.cpp文件实现的。实现过程是通过读取手柄输入值,转化为ROS系统下的cmd_vel话题,小车底盘通过订阅该话题来决定自己的运动状态。手柄所发布的数据可以通过rostopic echo /joy 这个命令查看。

向该主题发布的消息类型是twist,其中twist.linear是底盘运动的线速度,twist.angular是底盘运动的角速度。

最后

到这里我门就实现了用手柄控制小车运行的一个简单例程。其中关键点是cmd_vel指令和turtle_teleop_joystick.cpp文件。如果需要自己开发,可以修改我们本文件中的指令即可。

机器人技术(5)AtdRobot无线手柄控制教程相关推荐

  1. Logitech F710无线手柄控制ROS机器人

    Logitech F710无线手柄控制ROS机器人 注:游戏手柄为罗技F710无线手柄, 系统版本:ubuntu18.04 ROS版本:Melodic 节点功能:手柄与ubuntu通讯并发布/cmd_ ...

  2. 开源机器人技术工具包

    开源机器人技术工具包 使用虚拟舞台来测试机器人技术算法 级别: 中级 M. Tim Jones (mtj@mtjones.com), 顾问工程师, Emulex 2006 年 10 月 08 日 构 ...

  3. 融合机器人技术和神经科学的神经工程未来与挑战

    点击上面"脑机接口社区"关注我们 更多技术干货第一时间送达 大脑建模 机器人专家正在利用神经科学的知识来构建性能更好的机器人.机器人技术和神经科学的这融合代表了一种神经工程方法-- ...

  4. 计算机网络与技术课本,高等学校计算机科学与技术教材:计算机网络基础教程...

    高等学校计算机科学与技术教材:计算机网络基础教程 语音 编辑 锁定 讨论 上传视频 <高等学校计算机科学与技术教材:计算机网络基础教程>是2003年北方交通大学出版社出版的图书,作者是张立 ...

  5. chatbot聊天机器人技术路线汇总

    版权声明:博主原创文章,转载请注明来源,谢谢合作!! https://mp.csdn.net/mdeditor/84481818 聊天机器人实现的技术途径 大约可分为4种:1. 第一种是属于" ...

  6. 四足机器人技术及进展

    四足机器人技术及进展 摘  要:自然界中有许多地形无法使用传统轮式或履带式车辆到达,而哺乳动物却能够在这些地形行走自如,这充分展示出四足移动方式的优势.四足机器人已经成为当今移动机器人研究的热点,其研 ...

  7. 无人驾驶 | 自动驾驶技术和机器人技术的对比

    这是学习中兴开发者社区金明.郑卫军的总结笔记,感谢大佬的总结,学习记录一下 机器人技术的核心是运动控制,包括定位.导航.感知.决策.跟踪等,可广泛应用在家庭服务机器人.工业自动化机器人等领域.自动驾驶 ...

  8. 机器人技术想要取得快速发展,主要面临哪些挑战?

    1.新材料和制造方案 机器人专家正开始不再局限于以往用电动机.齿轮和传感器制作机器人的方法,尝试使用诸如人造肌肉.软机器人技术和新的制造方法,将多种功能整合在一种材料中.但这些先进的制造方法大多数还处 ...

  9. 2018 上海国际服务机器人技术及应用展览会

    2018 上海国际服务机器人技术及应用展览会 Shanghai International Service Robot Technology& Application Exhibition 2 ...

最新文章

  1. C++ GUI Programming with Qt 3安装说明
  2. Android 本地搭建Tomcat服务器供真机测试
  3. linux下oracle数据库由于参数文件丢失导致的数据库服务启动失败,报“failure in processing system parameters“错误问题解决
  4. 消息中间件(Kafka/RabbitMQ)收录集
  5. 为什么苹果内购总是失败_苹果官网送货流程将改革,最快次日达丨iPhone6s 等钉子户终于要换手机了...
  6. Flume将A服务器上的日志实时采集到B服务器
  7. 网络协议:HTTPS
  8. STM32-OLED显示
  9. 内存条上面参数详解_「内存」新旧光威16GB内存条参数对比,发现镁光颗粒
  10. 作为一名大厂的测试人员,软件测试真的是一份低调的工作吗?
  11. Hadoop核心组件及组件介绍
  12. 利用百度API实现图像识别
  13. mysql 里 CST 时区的坑
  14. Win7如何查看自己得Win7版本号
  15. 电商运营之业务数据报告
  16. 【分享贴】I2C无法访问ATEC508A加密芯片问题
  17. Prim / Kruskal - 局域网 - 洛谷 P2820
  18. RK3566调试VL53L01
  19. Qt网络编程概述(一)
  20. mysql事务处理是悲观锁还是_数据库事务的悲观锁和乐观锁

热门文章

  1. 剑指 offer 面试题精选图解 10-I.斐波那契数列
  2. 基于springboot校园志愿者管理系统设计与实现的源码+文档
  3. 【STM32F429开发板用户手册】第33章 STM32F429的SPI总线应用之驱动DAC8563(双通道,16bit分辨率,正负10V)
  4. 计算机桌面有个方框,电脑屏幕的白色方框怎么清除
  5. max3490esa_MAX4524EUB_美信MAXIM半导体代理就找宇航
  6. FFmpeg自学入门笔记
  7. C Primer Plus(6) 中文版 第9章 函数 9.1 复习函数
  8. 自动驾驶中激光雷达如何检测障碍物
  9. linux俄罗斯方块源程序,《俄罗斯方块游戏》项目实作【附源码】
  10. 不用PS,小白也能轻松搞定抠图