玩转树莓派:树莓派智能小车DIY全过程手机控制循迹避障(包含源码)
- 格式:pdf
- 大小:139.54 KB
- 文档页数:4
基于树莓派的智能小车的设计与开发
韩改宁;苏静池;张瑞斌
【期刊名称】《电子设计工程》
【年(卷),期】2024(32)1
【摘要】针对疫情期间或者特殊行业无接触配送的需求,基于树莓派4B处理器及Raspberry操作系统,采用Python开发语言及TensorFlow、OpenCV和
RPi.GPIO等实现开发。
通过车载摄像头采集图像,利用OpenCV技术对图像进行处理,实现循迹功能;通过建立深度学习模型,对红绿灯数据集进行训练,利用训练好的模型实现红绿灯识别功能;通过红外避障模块实现道路避障功能。
在带有红绿灯、障碍物和四个弯道的长方体模拟轨道进行测试,能准确地完成两圈行驶。
该设计原理清晰,易于实现,在无接触配送、无人驾驶等方面具有很高的应用价值。
【总页数】5页(P6-10)
【作者】韩改宁;苏静池;张瑞斌
【作者单位】咸阳师范学院计算机学院
【正文语种】中文
【中图分类】TN4
【相关文献】
1.基于Arduino和树莓派的智能小车的设计与实现
2.基于树莓派单片机的多功能智能小车设计
3.基于树莓派的防疫辅助智能小车的设计
4.基于云开发与树莓派变形监测系统的设计实现
5.基于树莓派的智能小车远程控制系统设计
因版权原因,仅展示原文概要,查看原文内容请购买。
智能寻迹小车实验报告
实验目的:
设计一个智能寻迹小车,能够依据环境中的黑线自主行驶,并避开障碍物。
实验材料:
1. Arduino开发板
2. 电机驱动模块
3. 智能车底盘
4. 红外传感器
5. 电源线
6. 杜邦线
7. 电池
实验步骤:
1. 按照智能车底盘的说明书将车底盘组装起来。
2. 将Arduino开发板安装在车底盘上,并与电机驱动模块连接。
3. 连接红外传感器到Arduino开发板上,以便检测黑线。
4. 配置代码,使小车能够依据红外传感器检测到的黑线自主行驶。
可以使用PID控制算法来控制小车的速度和方向。
5. 测试小车的寻迹功能,可以在地面上绘制黑线,观察小车是否能够准确地跟随黑线行驶。
6. 根据需要,可以添加避障功能。
可以使用超声波传感器或红外避障传感器来检测障碍物,并调整小车的行驶路线。
实验结果:
经过实验,可以发现小车能够依据红外传感器检测到的黑线自主行驶,并能够避开障碍物。
小车的寻迹功能和避障功能能够实现预期的效果。
实验总结:
本次实验成功设计并实现了智能寻迹小车。
通过使用Arduino 开发板、电机驱动模块和红外传感器等材料,配合合适的代码配置,小车能够准确地跟随黑线行驶,并能够避开障碍物。
该实验展示了智能小车的基本原理和应用,为进一步研究和开发智能车提供了基础。
基于单片机的智能小车红外避障循迹系统设计与制作随着科技的高速发展,人们对生活质量的要求越来越高,无人驾驶汽车已经被广为研发和试用,由此智能小车的快速发展也是在情理之中。
通过对基于单片机的智能小车的硬件及软件设计分析,实现红外避障循迹功能,并给出程序系统框图加以分析,最后通过实践证明这一设计的可行性和可靠性。
标签:AT89S52 单片机;智能小车;系统框图;红外避障;循迹1 系统总体设计2 系统的硬件设计与制作在智能小车红外避障循迹系統的设计上,其硬件设计主要在电机模块和传感器模块等这两个部分的内容。
2.1 硬件的设计硬件的设计主要体现在电机和传感器的选择上,在电机设计上采取360度伺服舵机,可以实现连续的速度与位移控制,且其本身存在分别负责伺服舵机的电源、接地、信号控制的红、黑、白三条输入线,还存在基准电路及比较器。
这一结构可以更好地实现智能小车的控制。
传感器的设计上选择了QTI红外传感器,通过接受不同的反射光强度,实现对不同颜色物体的探测,且探测QTI传感器能够自动输出不同的电平信号,为智能小车避障的实现提供了有力的保障。
2.2 硬件的制作硬件的制作主要介绍电路板的焊制及焊制方法,为智能小车的功能实现提供坚实的基础。
2.2.1 电路板的焊制电路板的焊制优劣直接影响到成果的效果展示,电路板的焊接内容主要是焊接电阻、电容、发光二极管、晶振、三极管、STM32、USB、三端稳压、电机驱动。
2.2.2 元件的焊制方法按照先焊一边再焊另一边的方法,先把焊锡丝放在焊盘的中间,放上电烙铁,焊锡丝融化后立马拿开焊锡丝,再拿开电烙铁,一定要注意焊锡的量不能过多也不能过少,一只手用镊子把贴片元件放平夹着,另一只手用电烙铁把焊盘上的焊锡融化,马上把贴片元件的一端推到焊锡处,再把元件的另一端焊盘焊上少量焊锡,推到元件的一端处。
由于元件种类较多,一般按照元件的大小从小到大的顺序焊接。
焊接完成后就可以进行组装,组装完毕后,组装过程中,要注意电源的正负极,不可接反。
基于STM32的智能循迹避障小车【摘要】本文介绍了一款基于STM32的智能循迹避障小车。
在引言中,我们简要介绍了背景信息,并阐明了研究的意义和现状。
在我们详细讨论了STM32控制系统设计、循迹算法实现、避障算法设计、硬件设计和软件设计。
在结论中,我们分析了实验结果,讨论了该小车的优缺点,并展望了未来的发展方向。
通过本文的研究,我们验证了该智能小车在循迹和避障方面的性能,为智能移动机器人领域的研究提供了新的思路和方法。
【关键词】关键词:STM32、智能小车、循迹避障、控制系统、算法设计、硬件设计、实验结果、优缺点、未来展望1. 引言1.1 背景介绍智能循迹避障小车是一种基于STM32单片机的智能机器人,在现代社会中起着越来越重要的作用。
随着科技的发展,人们对智能机器人的需求也日益增长。
智能循迹避障小车不仅可以帮助人们完成一些重复性、繁琐的任务,还可以在一些特殊环境下代替人类进行工作,提高效率和安全性。
循迹功能使智能小车能够按照特定的路径行驶,可以应用于自动导航、自动驾驶等领域。
而避障功能则使智能小车具有避开障碍物的能力,适用于环境复杂、存在风险的场所。
通过将这两个功能结合起来,智能循迹避障小车可以更好地适应各种复杂环境,完成更多的任务。
本文旨在探讨基于STM32的智能循迹避障小车的设计与实现,通过研究其控制系统设计、循迹算法实现、避障算法设计、硬件设计和软件设计等方面,为智能机器人领域的发展做出一定的贡献。
1.2 研究意义智能循迹避障小车的研究旨在利用先进的STM32控制系统设计和算法实现,实现小车的智能循迹和避障功能,从而提高小车的自主导航能力和适应性。
研究意义主要包括以下几个方面:1. 提升科技水平:通过研究智能循迹避障小车,促进了在嵌入式系统领域的发展,推动了智能控制和算法设计的进步,增强了人工智能在实际应用中的影响力。
2. 提高生产效率:智能循迹避障小车可以应用于仓储物流、工业自动化等领域,可以替代人工完成重复、枯燥的任务,提高了生产效率和效益。
十个中文例程教会你轻松上手制作Arduino智能小车Arduino简介Arduino 是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的arduino 板)和软件(arduino IDE)。
适用于艺术家、设计师、爱好者和对于“互动”有兴趣的朋友们。
Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。
板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,烧录进微控制器对Arduino的编程是利用Arduino编程语言(基于Wiring)和Arduino开发环境(based on Processing)来实现的。
基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信(比如Flash, Processing, MaxMSP)来实现。
你可以自己自己动手制作,也可以购买成品套装;Arduino所使用到的软件都可以免费下载。
硬件参考设计(CAD 文件)也是遵循availableopen-source协议, 你可以非常自由地根据你自己的要求去修改他们。
本文精选了Arduino教程、例程、设计案例,集结了国内外官方资料和资深工程师的经验,是学习AArduino的必备宝典。
小车、机器人篇1、Arduino互动玩偶BOXZ此设计制作在2013年Atmel AVR英雄视频大赛中荣获奖励,并且参与了2014的深圳制汇节。
BOXZ,昵称盒仔,其创意始于2012年6月初。
当时的想法是设计一款基于Arduino 的入门级机器人,可以和三五好友在有限的空间里进行踢足球等互动,而且要做到取材容易制作简单,在设计的上采用了模块化的接插结构,同时还要注重外观拥有个性。
2、基于Arduino的自平衡遥控小车车模平衡控制也是通过负反馈来实现的。
因为车模有两个轮子着地,车体只会在轮子滚动的方向上发生倾斜。
智能避障小车实验报告与总结.doc
"
一、实验目的
本次实验的目的主要是为了开发一款智能避障小车,能够在遇到障碍物的时候自动的
调整小车的行驶线路,从而实现自动避障的功能。
二、实验简介
本次实验是借助Arduino组装智能避障小车,小车拥有机械减速装置和两个安装在小
车前面的发射装置,用来发射超声波信号来检测障碍物,当安装在小车前面的发射装置检
测到障碍物的时候,小车会自动的重新调整走行线路,避免进入发射装置检测到的障碍物。
三、实验流程与原理
1. 硬件接线:
硬件从实验清单上将所需电子元件按照所需顺序连接上Arduino开发板,包括:
发射装置、接收装置、步进电机、电机驱动板和超声波传感器。
2. 编程:
编程采用Arduino IDE,将发射装置发射的超声波信号,接收装置接收的反射信号使用超声波模块采集,并且利用Arduino的程序控制电机驱动板,从而调节小车的行驶方向,最终实现自动避障的功能。
3. 运行实验:
将程序上传到Arduino板上,观察小车的避障功能,当小车行驶到障碍物的时候,小车会自动的重新调整方向,避免进入发射装置检测到的障碍物。
四、实验结果与总结
本次实验,通过无线式避障小车,能够在行驶过程中自动检测到障碍物并调整行驶方
向自动避障,且能排除许多可能发生的外界干扰,满足了自动避障的要求,从而达到了实
验目标。
轮式移动机器人的设计报告单片机系统课程设计智能小车(避障及循迹)的设计毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:日期:年月日导师签名:日期:年月日注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
单片机应用——智能循迹小车设计智能循迹小车是一种基于单片机技术的智能机器人,它可以自动跟随线路进行行驶,具有很高的应用价值,被广泛地应用在工业控制和家庭娱乐等领域。
本次智能循迹小车的设计采用的是AT89C51单片机,通过巧妙的编程和外接传感器的配合来实现小车的自动识别和跟踪线路的功能。
下面我们来具体阐述一下智能循迹小车的设计过程。
一、硬件设计智能循迹小车的硬件系统包括电机驱动电路、传感器电路、控制板电路、电源电路等几个部分。
其中,电机驱动电路是实现小车行驶的关键,它通过外接减速电机来带动小车的轮子,从而实现前进、后退、转弯等基本动作。
传感器电路则用来检测小车当前所处的位置和前方的路况,从而将这些信息传递给单片机进行处理。
控制板电路是整个硬件系统的核心部分,它包括AT89C51单片机、EEPROM存储器、逻辑电路等。
其中,AT89C51单片机是控制整个系统的“大脑”,它通过编写相应的程序来实现小车的跟踪功能。
EEPROM存储器则用来保存程序和数据,以便实现数据的长期存储。
逻辑电路则用来实现各个硬件组件之间的协调工作,从而保证整个系统的正常运转。
二、软件设计软件设计是智能循迹小车系统中最为关键的一环,它直接决定了小车的行驶效果。
为了实现小车的自动跟踪功能,我们采用了双路反馈控制系统,并在此基础上进行了进一步优化和改进。
具体来说,我们先使用PID算法对传感器采集到的数据进行处理,得到当前位置和偏差值。
然后再通过控制电机的转速和方向,使小车能够自动跟随线路前进。
三、应用价值智能循迹小车是一种非常实用的机器人,它具有很高的应用价值。
例如,在农业生产中,可以利用智能循迹小车来进行田间作业,大大提高工作效率和质量;在家庭娱乐方面,智能循迹小车可以作为一种智能玩具,为人们带来更加丰富的娱乐体验。
四、总结通过本次智能循迹小车的设计,我们不仅深入了解了单片机及传感器的原理和应用,而且具备了一定的硬件和软件开发能力。
附录程序目录一、前言------------------------------------------------------------二、小车功能------------------------------------------------------三、元器件选择--------------------------------------------------四、 I/O分配及硬件连接简图---------------------------------五、相关模块、算法---------------------------------------------六、系统框图------------------------------------------------------七、调试过程------------------------------------------------------八、小车图片资料---------------------------------------------------九、讲座所感------------------------------------------------------十、实习总结------------------------------------------------------一、前言感生产实习能给我们这次实现自己想法的机会,虽然实验条件异常简陋、资金投入非常有限,总体感觉我的队友们灰常灰常给力啊,我感觉我是抱到大腿了--王威,夏青、峰哥,团队气氛非常好,大家一起讨论,一起分工研究模块,最后一起解决问题调试程序,而且是不同的组合在不同阶段解决了不同的问题,大家合作,各显身手,在奋战中给大三学年画上了圆满的句号。
之前我们本来商量是不是可以拿往年电子设计大赛的题目过来做,如果难度太大就算只实现一部分功能也算是成功完成了,结果研究一天后发现电子设计大赛的题目需要很长时间的知识积累啊,基本上都是准备一个月以上然后开工的,后来王威提议要不我们做个小车吧,超声波测距实现自动物体追踪,控制核心采用单片机,传感器采用广泛用于避障和测距的超声波传感器,前进和后退用普通伺服电机和电机驱动模块实现。
智能循迹小车设计方案智能循迹小车方案自动化06--2班2009年6月5日自动寻迹小车摘要本寻迹小车是以PCB电路板为车架,AT89S51单片机为控制核心,加以直流电机、光电传感器和电源电路以及其他电路构成。
系统由AT89S51通过IO口控制小车的前进后退以及转向。
寻迹由RPR2…各省主要风电塔架制造厂名单序号123456789101112131415161718192021222324 公司名称甘肃玉门锦辉长城甘肃科耀电力有限公司北车集团兰州金牛轨道交通装备有限公司河北强盛风电设备有限公司保定天威电气设备结构有限公司…学习“七.一”讲话精神,深入剖析“四种危险” 胡锦涛在党庆90年大会上,总结了建党以来的“三件大事”和“两大成果”,提出了往后“两个宏伟目标”,指出中共面临“四种考验”和存在“四种危险”。
整篇讲话与时俱进,有新意,有不少新提法,是一篇回顾历史、总结经…自动化06--2班2009年6月5日自动寻迹小车摘要本寻迹小车是以PCB电路板为车架,AT89S51单片机为控制核心,加以直流电机、光电传感器和电源电路以及其他电路构成。
系统由AT89S51通过IO口控制小车的前进后退以及转向。
寻迹由RPR220型光电对管完成。
关键词:AT89S51 直流电机光电传感器自动寻迹电动车AbstractThe smart car is aluminum alloy for the chassis, AT89S51 MCU as its core, including motor and servo, plus photoelectric sensors, as well as other flame sensor and power circuit. MCU controls the car turning back forward or running on the white line. RPR220 reflective photo sensor seeks the trace. Far infrared flame sensor tracks the flame. In addition, the SCM system with Sunplus for voice broadcast can remind current status. The system transmits information through DF module. The car’s status will be transmitted to the Remote Console. OCMJ4X8C LCDdisplay and 2 keys for start control.Keywords: AT89S51 Motor Servo Photo sensor Electrical fire engines一、系统设计1、设计要求(1)寻线跑(2)显示小车当前的速度(3)显示时间并记录行驶距离(4)自动避开障碍物(5)其他2、小车循迹的原理这里的循迹是指小车在地板白纸上循黑线行走,通常采取的方法是红外探测法。
简易智能小车摘要:本系统基于自动控制原理,以MSP430为控制核心,用红外传感器、光敏三极管、霍尔传感器、接近开关之间相互配合,实现了小车的智能化,小车完成了自动寻迹、避障、寻光入库、计时、铁片检测、行程测量的功能。
本系统采用液晶LCD12864显示数据,良好的人机交流界面,显示小车行程的时间、铁片中心线离起始线的距离和铁片的个数。
整个系统控制灵活,反应灵敏。
关键词:MSP430 传感器 LCD12864目录一、方案论证与比较 (3)1、题目任务要求及相关指标的分析 (3)2、方案的比较与选择 (3)(1)控制单元的选择 (3)(2)直流电机驱动电路的选择 (3)(3)轨迹探测模块选择 (3)(4)金属片的探测 (3)(5)路程测量方案的选择 (4)(6)避障方案的选择 (4)(7)小车寻光方案的选择 (4)(8)电源的选择 (4)(9)刹车机构功能方案比较 (5)二、系统总体设计方案及实现方框图 (5)1、系统总体设计方案 (5)2、系统实现框图 (5)三、理论分析与计算 (5)1、铁片中心线距离的测量 (5)2、小车行程时间的测量 (5)四、主要功能电路设计 (6)1、小车循迹模块 (6)2、小车检测铁片模块 (6)3、小车测距模块 (6)4、小车避障模块 (6)5、小车寻光模块 (6)6、直流电机驱动模块 (7)五、系统软件的设计 (8)六、测试量数据与分析 (8)1、测量数据 (8)2、数据分析 (8)参考文献 (8)一、方案论证与比较1.题目任务要求及相关指标的分析题目要求小车按照规定的跑道行驶,同时检测在跑道下的铁片,在检测到最后一块铁片时小车会有连续的声光显示;后又可以准确的避开障碍,而且不与障碍物接触;最后,在光源的引导下,进入车库。
智能小车有显示功能,可以显示检测到铁片的数量,金属片距起点的距离,行驶的总时间。
整个行驶过程中的总时间不大于90秒,小车在行驶90秒后会自动停车。
2. 方案的比较与选择(1)控制单元的选择方案一:利用单片机与FPGA配合使用。
循迹小车设计方案1. 引言循迹小车是一种基于图像处理和电机控制的智能机器人,它可以通过感知地面上的黑色轨迹线来自动移动。
本文档将详细介绍循迹小车的设计方案,包括硬件组件、电路连接和代码实现等。
2. 硬件组件循迹小车的硬件组件主要包括以下几个部分:2.1 微控制器微控制器是循迹小车的核心控制单元,负责接收和处理传感器的数据,并控制电机的运动。
常用的微控制器有Arduino、Raspberry Pi等。
本设计方案以Arduino为例进行介绍。
2.2 循迹模块循迹模块是用于感知地面上的黑色轨迹线的传感器,它通常由多个红外线传感器阵列组成。
传感器阵列会发射红外线向地面照射,当光线被黑色轨迹线吸收时,传感器会检测到光线的变化。
通过检测多个传感器的输出,可以确定小车当前位置的偏移量。
常用的循迹模块有TCRT5000、QTR-8A等。
2.3 电机驱动模块电机驱动模块用于控制小车的电机,使其能够前进、后退和转向。
常用的电机驱动模块有L298N、TB6612FNG等。
2.4 电源模块电源模块为循迹小车提供电能,通常使用锂电池或者干电池。
3. 电路连接循迹小车的电路连接如下图所示:┌───────────┐│ Arduino │└─────┬─────┘│▼┌───────────┐│ 循迹模块│└─────┬─────┘│▼┌───────────┐│ 电机驱动│└─────┬─────┘│┌─────────────────────────┐│ 左电机右电机│└─────────────────────────┘连接步骤如下:1.将循迹模块的信号引脚连接到Arduino的数字引脚上。
2.将电机驱动模块与Arduino的数字引脚连接,用于控制电机的运动。
3.将左电机的正极和负极分别连接到电机驱动模块的输出端口。
4.将右电机的正极和负极分别连接到电机驱动模块的输出端口。
5.将Arduino和电机驱动模块连接到同一个电源模块上。
摘要本系统以设计题目的要求为目的,采用80C51单片机为控制核心,利用红外线传感器进行寻线,控制电动小汽车的自动循迹,并再通过光电开关探测障碍,从而控制电机转向,实现进行壁障功能。
整个系统的电路结构简单,可靠性能高,实验测试结果满足要求。
本文着重叙述了该系统的硬件设计方法、软件设计方法及测试结果分析。
小车运行方案,在现有玩具电动车的基础上,加装红外线光电开关模块和红外寻线模块,实现对电动车位置、运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动车的智能控制。
关键词:80C51单片机、红外线传感器、光电开关、电动小车AbstractThe system requirements of the design project for the purpose of the 80C51 microcontroller for the control of the core,the use of the hunt and infrared sensors,automatic obstacle acoidance control of electric cars,and the photoelectric switch to the barrier function.The electric circuit construction of whole system is simple, the function is dependable. Experiment test result satisfy the request, this text emphasizes introduced the hardware system designs and the result analyse. Car is running the program, under the existing toy electric car, based on the installation of super sonic sensor and infrared sensors, to achieve the location of electric vehicles,operational status of the real-time measurement, and measurement data sent to the microcontroller for processing, then SCM detected according to a variety of data to achieve intelligent control of electric vehicles.Key words: 80C51 single chip computer, infrared sensors, photoelectric switch, the electric car目录第1章绪论 (1)1.1研究目的及意义 (1)1.2国内外发展情况 (2)第2章整体设计框架 (3)2.1方案选择及论证 (3)2.1.1控制模块选择 (4)2.1.2路面探测黑线轨迹模块 (4)2.1.3探测路面障碍模块 (5)2.1.4电机模块 (6)2.1.5电机驱动模块 (6)2.1.6车架选择 (7)2.1.7最终方案选择 (7)2.2方案可行性分析 (8)第3章硬件设计 (8)3.1系统总体设计框图 (9)3.2 红外线光电开关模块 (9)3.2.1光电开关的工作原理 (10)3.2.2光电开关的类型 (10)3.2.3光电开关电路的设计 (13)3.3电机驱动模块 (13)3.4红外循线模块 (15)3.4.1 红外放射式光电传感器特性与工作原理 (15)3.4.2 红外循线具体设计与实现 (16)3.5 最小系统模块 (17)3.5.1 晶振电路的设计 (17)3.5.2 复位电路的设计 (17)3.6电源模块 (18)第4章软件设计 (19)4.1 主程序流程图 (19)4.2 避障子程序流程图 (20)4.3 循线子程序流程图 (21)第5章系统调试和测试 (21)5.1安装步骤 (21)5.2电路调试 (23)5.2.1 光电开关模块调试过程 (23)5.2.2电机模块调试过程 (23)5.2.3红外循线模块调试过程 (24)5.2.4测试结果与分析 (25)结论 (26)致谢 (27)参考文献 (28)附录系统设计原理图 (28)附录设计系统部分源代码 (29)第1章绪论随着生产自动化的发展,机器人已经越来越广泛地应用到生产自动化上,随着科学技术的发展,机器人的感觉传感器种类越来越多,其中视觉传感器成为自动行走和驾驶的重要部件。
智能循迹避障小车设计本文是基于单片机控制的一款智能循迹避障小车,由传感模块、电源模块、驱动模块、调试模块和单片块组成。
利用单片机控制、电源驱动电路、红外对管和超声波检测黑线与障碍物,当右侧传感器检测到黑线时,小车往右侧偏转,左侧的传感器检测到黑线时,小车往左侧偏转,并能控制电动小车的速度及转向,从而实现自动循迹避障的功能。
标签:避障;循迹;智能小车11.1 总体设计思路本系统采用集成设计方案。
通过高发射功率红外光电二极管和高灵敏度光电晶体管组成的传感器循迹模块判断黑线路经,然后由STC单片机通过IO口控制L298N驱动模块改变两个直流电机的工作状态,最后实现小车循迹。
1.2小车循迹避障部分设计思路小车循迹避障部分是能够采集周围环境障碍物的信息,并返回至单片机进行处理,其组成部分包括:环境信息采集电路、放大电路、单片机控制电路。
路线采集电路一般有脉冲调制的反射式红外发射接收器和信号放大器组成,脉冲调制的反射式红外发射接收器根据不同颜色对光的反射程度不同,将路线信息送至放大器,放大器可作为比较器可作简单的滤波,放大器将从脉冲调制的反射式红外发射接收器返回的信号转化为单片机可识别的电平信号后送入单片机。
STC单片机可根据接收的信息判断路线的信息,实现对左右两侧直流电机工作状态的控制,以实现左右转向,最终实现循迹功能。
2 小车的硬件电路设计2.1 单片机的选型选择一款8051系列速度快、功耗低、抗干扰性好的单片机。
它的高效寻址方式、大容量Flash、EEPROM、A/D转换、硬件乘法器、硬件脉宽调制器(PWM)等功能特点,较好的实现了强大的功能与超低功耗的结合。
而且在功能同样的情况下,管脚较少封装体积小,价格比其他型号便宜,因此具有很好的性价。
2.2 微处理器模块电路微处理器用STC单片机构成的最小系统组成,其包括晶振、一个复位电路和一个小车运行模式选择按键。
其中晶振大小为16MHz,复位开关为微动开关,模式选择开关则为带锁开关,可实现模式选择的锁定,以便主程序查询。
《自循迹智能小车控制系统的设计与实现》篇一一、引言随着科技的不断进步,自动化、智能化成为了各个领域发展的趋势。
在机器人领域中,自循迹智能小车以其简单实用、灵活性高等特点受到了广泛的关注。
本文旨在介绍一款自循迹智能小车的控制系统设计与实现过程,通过对该系统的深入研究与探索,展示其在不同环境下的高效控制能力和实际使用价值。
二、系统概述自循迹智能小车控制系统主要由硬件和软件两部分组成。
硬件部分包括电机驱动模块、传感器模块、电源模块等;软件部分则负责控制算法的实现,包括路径规划、避障、速度控制等。
该系统通过传感器获取环境信息,利用控制算法对小车进行精确控制,实现自循迹功能。
三、硬件设计1. 电机驱动模块:采用舵机驱动模块,通过PWM信号控制电机的转速和方向。
2. 传感器模块:包括红外线传感器、超声波传感器等,用于检测障碍物、识别路径等信息。
3. 电源模块:采用可充电锂电池供电,通过DC-DC转换器将电源稳定输出给各个模块。
四、软件设计1. 路径规划:根据环境信息,采用基于路径识别的算法进行路径规划。
当小车检测到路径时,通过控制算法调整小车的行进方向和速度,保证小车能够准确沿着路径行驶。
2. 避障功能:通过超声波传感器检测障碍物距离,当检测到障碍物时,控制算法会调整小车的行进方向和速度,避免与障碍物发生碰撞。
3. 速度控制:根据环境信息和任务需求,通过PWM信号控制电机的转速和方向,实现精确的速度控制。
五、系统实现1. 传感器数据采集:通过传感器模块实时获取环境信息,包括路径信息、障碍物距离等。
2. 数据处理与算法实现:将传感器数据传输至主控制器,主控制器通过算法对数据进行处理和分析,得出小车的行进方向和速度。
3. 控制输出:主控制器将计算结果通过PWM信号输出给电机驱动模块,控制电机的转速和方向,实现小车的精确控制。
六、实验与结果分析1. 实验环境:在室内外不同环境下进行实验,包括平坦路面、崎岖路面、有障碍物等场景。
第一章config显示设置Config 显示设置项详细说明通常情况下,树莓派会自动检测显示器的类型并修改配置。
但有时,自动检测的结果可能不正确。
如果你的树莓派连接到电视上但没有任何显示的话,你要考虑手动修改树莓派的显示配置了。
config.txt中的一些配置项是用来改变、改进视频输出的,这些配置项和其对应的值如下所示。
警告手动调整HDMI或复合视频输出设置可能会导致你的树莓派无法与显示器正常通信,最好是使用自动检测设置。
overscan_left:该项用来将画面整体向左侧移动一定长度,以像素为单位。
如果树莓派的显示超出了屏幕的边界,调整overscan选项可以来修正这种情况。
配置项对应的值是需要移动的像素的数量。
overscan_right:该项用来将画面向显示器右方移动一定长度,单位同上。
overscan_top:该项用来将画面向显示器上方移动一定长度,单位同上。
overscan_bottom:该项用来将画面向显示器下方移动一定长度,单位同上。
disable_overscan:如果你使用HDMI端口连接到显示器或电视上,或许你会发现你的画面四周有黑边存在,为了避免黑边可以通过将该值设为1来把默认overscan选项关闭。
framebuffer_width:该配置项用来调整输出画面的宽度,对应值的单位为像素。
如果你的屏幕上的文字太小,可以将该值设成一个比连接到的显示器默认宽度更小的值。
framebuffer_height:该值对终端画面大小的影响类似于framebuffer_ width,不过是垂直方向的。
framebuffer_depth:控制终端画面的颜色深度,单位为位/像素。
默认为16位,可显示65536色。
该值还可以设为8位(256色)、24位或32位。
framebuffer_ignore_alpha:当配置项对应值为1时,禁止使用控制透明度的alpha通道。
禁止alpha通道不是必须的,但是当framebuffer_depth设为32位/像素时能用来纠正许多图像错误。
基于STM32智能循迹避障小车(设计报告)具有丰富的外设和存储器资源,能够满足本设计的需求。
在硬件方面,采用了红外对管和超声波传感器来检测道路上的轨迹和障碍物,并通过PWM调速来控制电动小车的速度。
在软件方面,采用MDK(keil)软件进行编程,实现对小车的自动循迹和避障,快慢速行驶,以及自动停车等功能。
设计方案本设计方案主要分为硬件设计和软件设计两个部分。
硬件设计部分主要包括电路原理图的设计和PCB的制作。
在电路原理图的设计中,需要将stm32芯片、红外对管、超声波传感器、电机驱动模块等元器件进行连接。
在PCB的制作中,需要将电路原理图转化为PCB布局图,并进行钻孔、贴片等工艺流程,最终得到完整的电路板。
软件设计部分主要包括程序的编写和调试。
在程序的编写中,需要先进行芯片的初始化设置,然后分别编写循迹、避障、速度控制等功能的代码,并将其整合到主函数中。
在调试过程中,需要通过串口调试工具来进行数据的监测和分析,以确保程序的正确性和稳定性。
实验结果经过多次实验测试,本设计方案实现了对电动小车的自动循迹和避障,快慢速行驶,以及自动停车等功能。
在循迹和避障方面,红外对管和超声波传感器的检测精度较高,能够准确地控制小车的运动方向和速度;在速度控制方面,PWM调速的方式能够实现小车的快慢速行驶,且速度控制精度较高;在自动停车方面,通过超声波传感器检测到障碍物后,能够自动停车,确保了小车的安全性。
结论本设计方案采用stm32为控制核心,利用红外对管和超声波传感器实现对电动小车的自动循迹和避障,快慢速行驶,以及自动停车等功能。
在硬件方面,电路结构简单,可靠性能高;在软件方面,采用MDK(keil)软件进行编程,实现了程序的稳定性和正确性。
实验测试结果表明,本设计方案能够满足题目的要求,具有一定的实用性和推广价值。
内核采用ARM32位Cortex-M3 CPU,最高工作频率为72MHz,1.25DMIPS/MHz,具有单周期乘法和硬件除法功能。
引言
当我们手里有一个树莓派的时候,就可以发挥自己的想象力。创造出与众不同的各种东西。
搭建网络服务器、私有云、网络监控器、无人机航模、行走机器人等等等等。今天呢,教大
家如何把手里的树莓派用起来。玩转树莓派嘛 怎么可能让你的树莓派放在角落里吃灰呢。
软件
我将提供大家三种不同语言的小车控制程序所以运行环境请根据需要搭建。系统版本可以是
树莓派Raspbian Jessie或者Ubuntu等。视频网络传输Mjpgstreamer.
我配置好运行环境之后制作的镜像系统
C语言版
树莓派官方系统自带Gcc编译器 , 只需安装编译WiringPi库。
Python版
最近的系统已经默认安装了python-RPi.GPIO ,进行无线网络远程遥控的时候需安装
pip,flask。
Scratch
什么都不用动 打开Scratch软件 设置GPIOSERVER ON就可以了。
青少年可以从SCRATCH编程中学习编程思想,以及算法基础并养成良好的逻辑思维。
高中到大学可以进阶初步学习Python/C语言编程,Python语言是一种较为容易入门的机器学
习语言。
对于有C语言基础的同学学习用WiringPi控制树莓派的GPIO,掌握C语言并应用到自己的实践
中。
硬件
树莓派3代B型主板
部分配件
别小看树莓派 相信出色的你能玩出更多新花样 先看一下我制作的哪些功能
红外避障
黑线循迹
手机软件控制
Scratch编程 红外跟随
下面开始进入主题
为了节省工作量呢 我从C语言版本开始说。
系统配置中文环境和拼音我就不罗嗦了
sudo apt-get install ttf-wqy-zenhei (安装中文字体库)
sudo apt-get install scim-pinyin (安装中文输入法 当然了你也可以全装其他的输入法)
我建议最好用远程桌面的方式连接,以便小车运行时方便修改代码。
树莓派安装xrdp 就可以直接用笔记本自带的远程桌面工具进行远程操作了。最新的系统安
装步骤:
sudo apt-get install xrdp
sudo apt-get install tightvncserver
然后在windows打开远程桌面连接 打开对应的IP地址,即可连接成功
远程桌面界面
C语言安装wiringPi库
WringPI库介绍
wiringPi 安装
方案 A——使用 GIT 工具,通过 GIT 获得 wiringPi 的源代码。
git clone git://git.drogon.net/wiringPi
测试一下是否安装成功:
$gpio -v
先来搭建手机远程控制的功能,稍后再进行与传感器的结合。
简单看一下树莓派上即 服务端代码:carserver.c
几种初始化wiringPi的函数
首先在程序的开始的时候需要调用上面的任意的函数来对wiringpi 进行初始化,否则你的
程序不能正常工作。wiringPiSetup() 该函数初始化wiringPi,幵假定程序将使用wiringPi
的管脚定义图。具体管脚映射,可以通过gpio readall命令来查看。该函数需要root权限。
驱动电机使用四个引脚。1、4控制一侧,5、6另外一侧。编码方式为wPi。
引脚定义
pinMode函数
原型 void pinMode (int pin, int mode) ;使用该函数可以将某个引脚配置为INPUT(输
入)、 OUTPUT(输出) 、PWM_OUTPUT (脉冲输出) 或者GPIO_CLOCK(时钟)。在我们的
小车C语言控制程序中我们分别设置了GPIO1,GPIO4,GPIO5,GPIO6这四个引脚来控制左右
两侧的电机。此时我们是通过GPIO的输出来实现的,所以这里设置mode为OUTPUT。
digitalWrite函数
函数原型void digitalWrite (int pin, int value) ;使用该函数可以向指定的管脚写入
HIGH(高)或者LOW(低)写入前,需要将管脚讴置为输出模式。wiringPi将任何的非0值作
为HIGH(高)来对待,因此,0是唯一能够代表LOW(低)的数值。如下图,定义小车前进
时,将GPIO1置为高GPIO4置为低(左侧前进),将GPIO5置为高GPIO6置为低(右侧前进)。
通过接收到的字符进而控制小车动作
全部代码占用篇幅。完整代码稍后评论区
组装小车
树莓派引脚接线
整体供电使用两节3.7V的18650锂电池。树莓派需要5V供电,所以需要使用一个转5V的降压
模块Lm2596模块。编译carserver.c然后等组装好之后运行。
安卓软件APP源码就不贴出来了。需要的话可以给我留言。
Scratch控制版
部分源码
好累 ,,能不能偷个懒。python代码原理大同小异。初始化GPIO,定义小车点后左右停止
的函数。然后通过GET POST方法发送接收信号。然后控制树莓派进行响应。