【论文】ROS系统的无人小车自动跟随方案研究

本文介绍了一种基于ROS操作系统的无人小车自动跟随方案。该方案利用激光雷达进行全方位距离测量,通过编写Python脚本实现对无人小车的控制。系统能够适应不同方位的目标,无需额外定位设施,具有成本低、易于维护等特点。

这个专栏是专注于入了职场之后,对写论文能力要求和技巧经验的一些总结。

在职场不同于在学习等科研院所,更多要求的是发出论文,而不是发高水平论文。

文章列表:

【程序员读论文】为什么要读论文?

【程序员读论文】题外篇:怎么读论文

【程序员读论文】推荐一款OCR软件,识别PDF论文上的文字

简简单单的科研秘籍

论文专利博客写作总结

如何写一篇科研论文

英文学术论文写作有哪些经验心得?

一个博士生接受怎样的训练是完整、全面的科研训练?

科研大牛们怎么读文献?

作为审稿人,你什么情况下会选择拒稿?

哪些思维方式是你刻意训练过的?

首次申上青年基金的一些感悟(综合多位基金评审专家意见)【投稿作品展】

传统学科怎么和深度学习领域结合

【程序员读论文】LeCun, Y., Bengio, Y. & Hinton, G. Deep learning. Nature 521, 436–444 (2015).

【论文】论文阅读记录

今天要阅读的论文是:《ROS系统的无人小车自动跟随方案研究》

摘要

摘要:介绍了一种无人小车自动跟随方案,该小车以树莓派3B为控制板,搭载ROS操作系统,在ROS系统环境下编写Python脚本文件,通过话题的订阅和发布进行对距离信息的数据处理和运动参数的控制实现,采用激光雷达进行距离测量,得出被跟随目标的距离和方位,不需要无线定位导航实现周围任何角度的机器人跟随功能。本方案成本较低,硬件限制小,设计简洁,便于升级、维护和移植。试验结果表明,小车运动精确,具有良好的跟随效果。

摘要是一篇论文的点睛之笔,是一个mini paper。

摘要的句式模板一般是 背景介绍(主要是有啥没解决的问题)+ 研究方法介绍(用了啥方法或技术)+ 主要结论(获得了什么效果)。

引言

引言
无人移动小车在诸多生产生活领域发挥着越来越重要的作用,特别是在航空航天、工业、灾难救援等方面目前对小车跟随方式的研究主要包括:以单片机为控制核心,通过超声波传感器或者红外感应确定日标方位,并传达运动控制指令实现小车的跟随功能31;基于超宽带(UWB)的智能跟随车导航定位,车的上方安置两个固定基站,经计算得出标签到两个基站中点的距离和偏移角度,通过PID控制算法调节PWM值,控制电机的转速和转向从而实现小车自动跟随等
但是上述方法存在不足,超声波、红外传感器的测距角度有限,当测距日标稍微偏离其正对角度误差时就会迅速增大甚至无法探测到,且传感器全部安装在前端,当跟随目标出现在车体两侧或后侧时就完全失去方向检测功能;一旦小车驶出超宽带基站覆盖范围则无法继续进行定位,从而丧失跟随功能等。

针对以上问题,本文基于ROS操作系统,使用激光雷达作为跟随测距装置,通过主机控制一台小车领导运动、一台小车跟随运动的方式,提出了一种跟随平台的研究和验证方案。

引言的作用就是系统性地向读者介绍该篇论文的研究背景、创新点、采用理论及方法等,核心是吸引读者阅读,通常是对于全文内容的高度概括!

几乎所有教你如何写Introduction的,都告诉你有一种叫做“漏斗式”的方法,我理解的漏斗式写作方法就是依次写好这5个部分,已达到逐层聚焦的作用:

①大背景大帽子:例如汽车保有量逐年提高,排放问题日益凸显。

②文献综述:通常有三方向导向(结果导向、方法导向和理论导向),技巧是把引用文献的摘要换个说法表述,如果引用文献较多,建议把类似的放在一起说,也可以列个表格。

③提出未知/存在问题:比如已有研究结果不一致、理论计算公式不准确、模型参数设置不合理、研究内容覆盖度不够,又出现了新问题等等,总之就是“挑前人的刺儿”!

④提出本研究的主要关注点及研究目的

⑤高度概括本文研究内容及方法,即材料与方法部分精炼

材料与方法

总体架构

搭建本文选择的ROS通信机制为基于发布/订阅的话题通信。总体构造思路为:以树莓派3B作为主机,用于开发功能包,并在工作时运行ROS节点管理器,控制本地节点以及远程从机节点的启动;移动小车为从机,从机处理器同样采用树莓派3B,其中0号从机作为跟随者,1号从机作为领导者,领导者按照预定的路径运动,跟随者监控领导者的位置,并跟随领导者运动。主机与从机均安装Ubuntu16.04操作系统,通过无线网络连接。系统总体架构如图1所示。

方案实现配置

节点设置

消息规划

ROS系统工作空间和功能包生成

网络设置和VNC自启动

运动软件设计

**材料与方法(Materials and Methods)部分其实是最容易被忽略的一个部分,但是其实这一部分是非常关键的,是整篇论文的根基!**第一,这一章是审稿人看的最仔细的,直接会影响到审稿人对这篇文章相关结论可信度的判断,如果试验设计上有缺陷,那得出的结论的结论即使再好,那也是没有任何意义的,应该会直接被拒稿!第二,这一章是文献阅读者最关心的一章,也就是按照你的方法他可以复现你的研究,而“可重复性”是科研工作中最重要的一环。

所以这一章必须要高度重视,一定要写的通俗易懂,直接了当,以便让审稿人和读者第一时间掌握你的整套试验流程,一方面可以提高你的文献录用率,另一方面可以提高你文献的引用率!

通常情况下SCI论文可以分为试验类研究还是模拟仿真类类研究两大类,以我个人的经验,通常材料与方法部分采用三段式结构

**试验类研究:**①试验对象/所用设备的描述(车辆的基本参数、排放设备、油耗设备的具体型号及参数等);②试验工况设定/试验流程描述(采用控制变量法,固定哪些参数?变化哪些参数?一共选择多少个工况点?测试循环是什么?);③试验结果处理方法(试验误差的处理)。

**仿真模拟类研究:**①模型介绍及验证(网格划分,子模型选择,参数设定,所使用的公式、模型精度等)②仿真工况设定(采用控制变量法,固定哪些参数?变化哪些参数?一共选择多少个工况点?测试循环是什么?)③结果分析方法

为方便说明,除文字外建议添加示意图以及表格辅助说明,例如:试验设备照片,试验材料照片,试验流程图,工况设定表等。

需要强调的是:工况设定和试验流程部分一定要给出足够的细节,详细再详细,越是掖着藏着越会引起审稿人的怀疑,适得其反!另外,工况设定一定要有原因,为什么要选这几个工况进行研究,在我的SCI投稿经历中,80%的审稿人会问这个工况为什么要这么设定,所以必须要给出足够的说明工况设定的依据,而核心无外乎两点:一是之前的研究者都是这么设定的,二是这个工况与实际情况最为相符!

论文中的图

结果与讨论

试验验证

编译并运行脚本,其操作步骤如下:①在主机上运行ROS核,在主机输入roscore;②在0号从机运行跟随者节点,在VNC(192.168.43.98)输入roslaunchturbot3_multi robot.launchrobot_name:="tb3_0”;③在1号从机运行领导者节点,在VNC(192.168.43.132)输入roslaunch turbot3_multi robot. launch robot_name:=tb3_1”:④运行领导者运动路径脚本,在主机输入rosrunbasictb3_1-square.py;运行跟随者脚本,在主机输入rosrunbasic follow.pyo
运行可视化工具rqt_graph可以查看其计算图,计算图便于直观观察系统运行情况,搞清楚节点、话题、消息详情以及相互间的关系。计算图如图4所示。

讨论部分的核心是对造成试验结果变化的的深层次原因进行分析,**这一部分的核心技巧是是建立逻辑链条!**对于新手学弟学妹来说整理出一条条的逻辑链条是写SCI论文的最大难点!我自己亲测有效的方法就是在别人的论文里找逻辑链条,然后综合多篇文章的逻辑链条,找出自己的逻辑链条,然后再结合我自己归纳的“跷跷板”理论,基本可以应付90%的SCI写作!

结论

结语

本文基于ROS操作系统介绍了一种运动与跟随系统的设计及实现,该跟随系统包括以激光雷达进行全方位角度的距离测量,使用Python语言编写脚本,通过编写激光雷达话题的订阅以及运动话题的发布,完成对目标的运动控制以及对被跟随目标的感知和产生跟随相应的动作。

本系统中无论被跟随目标位于跟随机器人的任何方位,均能实现机器人的跟随,无需额外的基站、标签等定位设施,可以减少整个跟随系统成本。基于ROS系统使开发简单快速,适用范围广,具有良好的可移植性和通用性。

结论部分是SCI论文中最好写的一个部分,说白了就是我们小学时候就学过的“缩写”!缩写什么?缩写的就是结果与讨论部分(Results & Discussion)每一个小标题下的内容,通常的结构是先来一个“小帽子”,再把主要结论逐一列出,具体如下:

**小帽子:**对研究背景、研究内容和研究方法的进行一个概述,相当于对材料与方法部分的缩写。最后来一句:The main findings are as follows或者Main conlusions can be drawn from this work, as follows,逐条引出结论

**结论分条列出(3-5条):**每条100字以内为宜,简单说是对于结果与讨论部分每个子标题内容的一个缩写。

**全文总结或展望:**有的SCI论文还会在分条列出主要结论后,再用1-2句做一个全文总结,有的也会对未来的研究进行展望,该部分是可选项。


更进一步,论文十问

论文十问是可以快速理解论文主旨的一套框架。

Q1 论文试图解决什么问题?

Q2 这是否是一个新的问题?

Q3 这篇文章要验证一个什么科学假设?

Q4 有哪些相关研究?如何归类?谁是这一课题在领域内值得关注的研究员?

Q5 论文中提到的解决方案之关键是什么?

Q6 论文中的实验是如何设计的?

Q7 用于定量评估的数据集是什么?代码有没有开源?

Q8 论文中的实验及结果有没有很好地支持需要验证的科学假设?

Q9 这篇论文到底有什么贡献?

Q10 下一步呢?有什么工作可以继续深入?

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

机载软件与适航

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值