搭建Dashgo运行环境
来源:互联网 发布:java程序员考证 编辑:程序博客网 时间:2024/06/04 18:22
安装
- 设置用户的串口读取权限
sudo usermod -a -G dialout your_user_name
your_user_name替换为实际用户名.
重启机器生效
- 安装依赖包
sudo apt-get install git python-serial ros-indigo-serial g++
- 下载并编译dashgo包
mkdir -p ~/dashgo_ws/srccd ~/dashgo_ws/srcgit clone https://github.com/EAIBOT/dashgo.gitcd ~/dashgo_ws/src/dashgogit checkout basic_02cd ~/dashgo_wscatkin_make
在~/.bashrc文件最后增加如下内容。
echo "source ~/dashgo_ws/devel/setup.bash" >> ~/.bashrcsource ~/.bashrc
source ~/.bashrc
使环境变量的配置生效。
- 为Dashgo底盘的串口增加一个设备别名/dev/dashgo
cd ~/dashgo_ws/src/dashgo/dashgo_bringup/startupsudo sh create_dashgo_udev.sh
重新插拔连接电脑的Dashgo的USB线,通过如下命令查看是否生效。
ls -l /dev/dashgo
测试
我们提供三种方式控制小车的移动。
首先需要运行dashgo的底盘驱动节点
roslaunch dashgo_bringup minimal.launch
方式一
首先安装ros-indigo-teleop-twist-keyboard
sudo apt-get install ros-indigo-teleop-twist-keyboard
然后启动
rosrun dashgo_bringup teleop_twist_keyboard.py
会得到如下内容
Reading from the keyboard and Publishing to Twist!---------------------------Moving around: u i o j k l m , .q/z : increase/decrease max speeds by 10%w/x : increase/decrease only linear speed by 10%e/c : increase/decrease only angular speed by 10%anything else : stopCTRL-C to quit
控制底盘移动的按键分布如下:
- 前进: i
- 后退: ,
- 左转: j
- 后转: l
- 停止: k
方式二
执行如下命令,给底盘一个恒定的速度运动。 CTRL+C 取消该命令。
rostopic pub -r 10 /cmd_vel geometry_msgs/Twist '{linear: {x: 0.2, y: 0, z: 0}, angular: {x: 0, y: 0, z: 0}}'
其中:
- {linear: {x: 0.2, y: 0, z: 0} – x: 0.2表示以0.2m/s的速度前进, 也可以修改为0.1~0.7任意值, 0.5以上的速度比较快,主要要把开发平台放到空旷一些的地方。 该值也支持负数, -0.2m/s表示以0.2m/s的速度后退。
- angular: {x: 0, y: 0, z: 0}} – z: 0 表示以rad/s(弧度/秒)的速度向左转动,一般取值0.5~3.0。 该值也支持负数, 表示向右转动。
方式三
通过手机APP控制,目前仅支持Android。
在App启动界面,选择“WIFI”便进入到WiFi连接界面,如下图所示:
需要输入的Master IP是PC或树莓派的IP地址。
连接成功后,界面如下。
操控的方向如下图所示。
注意:ROS系统的IP必须与手机端的IP在同一个网段。
0 0
- 搭建Dashgo运行环境
- 搭建Dashgo运行环境
- 搭建JSTL运行环境
- 搭建PHP运行环境
- 搭建android运行环境
- 搭建Ext运行环境
- 搭建Selenium运行环境
- 搭建kafka运行环境
- 搭建hive运行环境
- 环境搭建,运行Js
- php运行环境搭建!!!
- lua运行环境搭建:
- Tomact运行环境搭建
- 搭建ES6运行环境
- php 运行环境搭建
- Hibernate运行环境搭建
- 搭建React运行环境
- 搭建kafka运行环境
- ios文件操作之目录操作-NSFileManager
- python学习之路---菜鸟教程
- 求最大子列和的四种算法
- 深入理解Android消息处理系统——Looper、Handler、Thread
- JamesMusic浅读--------8,音乐文件播放
- 搭建Dashgo运行环境
- JAVA多线程
- CSS布局奇淫巧计之-强大的负边距
- eclipse导入本地插件的方法
- 单词统计
- Python Flask Web 第五课 —— 包含导航条的程序基模板
- Animation.setFillAfter 是什么意思呢
- 斗鱼TV、熊猫TV移动端竞品分析
- 邻接表建图+深度遍历+判断连通性