benewake 发表于 2017-11-23 17:21:57

北醒CE30评测

大家好,我是一名“黑科技”发烧友,最近听闻北醒新推出一款固态激光雷达CE30-A,赶紧入手了一台尝尝鲜,基于移动小车底盘和北醒提供的SDK,简单做了几个小功能,先来看看效果:https://v.qq.com/x/page/x0503dztdtx.html 可以看到视频里雷达的整体效果还是不错的,现在和各位大神和新手朋友分享一下我的开发过程吧,首先是一些基础的准备:1、 系统要求:Ubuntu14.04,安装ROS Indigo系统。2、 ROS系统在ubuntu下安装:参考http://wiki.ros.org/cn/indigo/Installation/Ubuntu3、编译CE30 ROS官方驱动包:(1). 参照教程http://wiki.ros.org/cn/ROS/Tutorials/InstallingandConfiguringROSEnvironment设置工作环境并创建ROS工作空间。(2). 将官方驱动ce30_ros文件夹解压后复制到工作空间下的src文件夹下。(3). 参照教程http://wiki.ros.org/cn/ROS/Tutorials/BuildingPackages中的0.0.2使用catkin_make来编译你的工作空间。4、编译ce30应用程序。(1). 将ce30_use文件夹解压后复制到创建的工作空间的src文件夹下。(2). 参照上述的流程编译ce30_use。5、启动应用程序(1)、将兼容ROS的机器人底盘连接到工控机。(2)、按Ctrl+alt+T键打开terminal。(3)、给串口设置权限,在terminal中输入sudo chmod 777 /dev/ttyUSB*。(4)、如果要使用避障和绕障模式,输入roslaunch ce30_use use.launch。(5)、避障模式和绕障模式通过use.launch文件中的is_avoid参数切换,如果想使用绕障模式,将is_avoid的value值设置为true,否则设置为false。 为了更直观的表达我的思路,下面画了2个流程图:1、 指定车宽避障模式程序流程图(见图1) 图1 避障模式程序流程图 2、绕障模式程序流程图(见图2) 图2 机器人绕障模式 3、跟车模式算法流程(1)      定义PID结构体(其中比例系数P,积分系数I,微分系数D,目标量target,当前误差为iEorro,累计误差为InEorro,微分误差为dEorro,最后误差为lastEorro)。(2)      初始化程序。(3)      接收雷达数据为laserData。(4)      计算当前误差iEorro = target – laserData;a)   累计误差InEorro = InEorro + iEorro;b)   微分误差dEorro = iEorro – lastEorro。(5)      赋值lastEorro = iEorro。(6)      计算控制量V = P*iEorro + I*InEorro +D*dEorro。(7)      将控制量发送给底盘执行。(8)      重复步骤(3)至步骤(7) 以上是我的基本思路和想法,下面贴上代码Obstacle Avoidance.cppVehicle Follow.cpp 各位大神见笑了,还请高手指点,新手朋友有问题的话欢迎交流讨论!

页: [1]
查看完整版本: 北醒CE30评测