自动识别路径小车
AGV小车是什么

AGV小车也叫无人搬运车,依靠自身自动导向系统,在无需人工操作的情况下能够沿预定的路线将物料自动从起点运送到目的地,具有无人驾驶、柔性好、清洁生产的特点,因此被人们大量使用,受到大众的青睐。
Automated Guided Vehicle,简称AGV,指装备有电磁或光学等自动导引装置,能够沿规定的导引路径行驶,具有安全保护以及各种移载功能的运输车,工业应用中不需驾驶员的搬运车,以可充电之蓄电池为其动力来源,一般市场定价在1.15万-6.6万左右,具体价格要根据设备型号、功能等不同而有所变化。
AGV主要包括车辆、外围设备、现场部件以及固定控制系统。
车辆是AGV的核心,主要执行运输任务;固定控制系统的任务是管理运输订单、优化日程、通过预先定义的接口和其他控制系统通迅,系统还负责与客户交互和提供辅佐功能如图形可视化和统计分析;外围设备包括车辆的各种车载设备如电池装载站和负荷传递机。
AGV按插取方式分为:夹抱式——取货工具为夹爪,主要用于直接夹抱外形包装规则的货物;叉取式——取货工具为货叉,主要用于搬运有托盘装载的货物。
AGV按照货物接驳的方式可以分为辊道移载搬运型AGV、叉式搬运型AGV、推挽移载搬运型AGV、夹抱搬运型AGV、升降接载搬运型AGV等,用户可以根据需要搬运货物的种类以及不同接驳形式选择不同的搬运型AGV产品。
AGV的导航方式有磁导航、激光导航、惯性导航、视觉导航等等,均可轻松改变路径,但激光导航的路径改变更灵活。
江苏六维智能物流装备股份有限公司,成立于1997年,是国内较早从事货架、工位器具、物流系统、自动化立体仓库货架的规划、设计、制造、安装及调试及咨询服务的较大规模厂家,经过二十年的拼搏与发展,六维已成为一家集智能物流解决方案与仓储系统集成的高科技企业。
机器人弹力小车知识点总结

机器人弹力小车知识点总结一、弹力小车概述弹力小车是一种由弹性材料制成的轮胎,能够使车辆在行驶过程中具有弹性,提高车辆在不平路面上的通过能力。
机器人弹力小车是指搭载有自主导航系统和传感器的弹力小车,能够自动识别环境,避障和规划路径,实现自主行驶的智能机器人。
二、弹力小车的原理1. 弹力小车的结构弹力小车的结构主要包括车身、弹性轮胎、电机和控制系统。
弹力轮胎是弹力小车的核心部件,其采用的是特殊的弹性材料制成,能够在行驶过程中对路面不平进行自适应的缓冲和减震,提高车辆通过不平路面的能力。
电机负责提供驱动力,控制系统则实现弹力小车的智能控制和导航。
2. 弹力小车的工作原理当弹力小车行驶在不平路面时,弹力轮胎会受到压缩和拉伸的变形,从而产生对路面的弹性反作用力,使车辆能够更好地适应路面变化。
控制系统通过传感器对路面情况进行实时监测,根据情况调节电机的输出力,保证车辆的稳定性和可靠性。
三、弹力小车的应用领域1. 物流配送弹力小车可以应用于仓储、物流配送领域,能够自主导航,在仓库内部运送货物,提高物流配送效率,降低人力成本。
2. 智能服务机器人弹力小车还可以用于酒店、商场等场所,作为智能服务机器人,能够协助提供服务,为用户提供导航、送物等功能。
3. 工业生产在工业生产线上,弹力小车可以用于物料运输、零部件搬运等工作,提高生产效率,降低人力成本。
4. 农业领域在农业领域,弹力小车可以用于农田里的播种、喷洒农药、采摘作业等,提高农业生产效率。
四、弹力小车的关键技术1. 自主导航技术自主导航技术是弹力小车的核心技术之一,能够通过激光雷达、摄像头等传感器对周围环境进行感知,实现路径规划和避障导航。
2. 机器视觉技术机器视觉技术可以使弹力小车通过摄像头对环境进行识别,实现自主导航、目标检测和路径规划等功能。
3. 人机交互技术人机交互技术使得弹力小车能够与用户进行沟通和交互,提供更加个性化的服务。
4. 机器学习技术机器学习技术能够使弹力小车能够通过数据学习,不断提升自身的智能水平,实现更为精准的导航和操作。
自动循迹小车的设计与实现

自动循迹小车的设计与实现胡涛涛\耿璇2,庞鑫2(1.太原师范学院,山西太原〇306丨9;2.山西工程职业技术大学,山西太原030031)摘要:设计与实现了 一种可以自动循迹的小车该小车能在0.6 - 0. 9 m m的细铁丝轨迹上自动循迹行驶,同时能准确检测到 在任意直道铁丝段上放置的硬币并给出报警,小车的行驶时间和行驶距离实时显示在显示屏上._该小车系统以A rduino为控制核 心,采用T I公司的LDC1000电感数字转换器模块作为金属循迹传感器,结合驱动模块、电源模块和显示模块共同完成了上述各项要求。
该系统具有性能稳定、硬币检测准确、行驶速度快等特点关键词:控制芯片;电感数字转换器;循迹小车中图分类号:TP242 文献标志码:A文章编号:1006 -2394(2021)05 -0031 -04 Design and Implementation of Automatic Tracking CarHU Taotao1,GENG Xuan2,PANG Xin2(1. Taiyuan Normal University,Taiyuan 030619, China;2. Shanxi Engineering Vocation University,Taiyuan030031, China)Abstract :This paper designs an automatic tracking car.The track of the car is marked by0. 6 -0. 9m m thin wire, and 4 coins are placed on any straight wire section.The car can move along the wire track,accurately detect coins and give alarm.The driving time and distance are displayed.The car takes Arduino as the control core and uses T I LDC1000 inductor digital converter module as the metal tracking sensor combining with the drive module,power supply module and display module to complete the above requirements.The system has the characteristics of stable performance,accurate coin detection and fast driving speed.Key w ords:control chip;inductor digital converter;tracking car〇引言随着科学技术的不断发展与进步,机器人在人们日常生产与生活中的应用也越来越广泛。
智能循迹小车-电子设计大赛优选全文

智能寻迹小车总结报告08电本3袁坤朱昊汪武杰1.设计任务:设计并制作了一个智能电动车,通过车前方的感光模块引导小车沿黑色路径运行,并记录小车整个运动过程的时间。
(1)感光模块引导小车运动:小车黑色轨迹白色背景图1如图1,小车运行在以白色背景的黑色轨迹上。
小车在整个运行过程中沿黑色轨迹运动,当黑色轨迹向左转时,小车能够自动左转弯,左转弯灯亮;当黑色轨迹向右转时,小车能够自动右转弯,右转弯灯亮。
(2)小车能记录整个运行过程的时间:在小车开始运行时,单片机控制计时,当小车收到停止指令后,计时器停止计时,并通过小车上的数码管显示小车整个运行过程的时间。
2.程序框图寻迹小车的主程序如下3.系统的具体设计与实现根据设计任务要求,并且根据我们自己的需要而附加的功能,该电路的总体框图可分为几个基本的模块,框图如(图2)所示:红外传感模块3.1设计中选用红外传感器来准确检测黑色寻迹线。
共设置2个传感器,传感器检测到黑色的寻迹线时,输出逻辑电平1,检测不到黑色寻迹线时,输出逻辑电平0。
在小车正前方中间安装两个标号是1号和2号的传感器用于定位寻迹线中心线,如图。
实物图:由电路图可以看出,在整个运行过程中,红外线发射管一直工作,发出红外线,由于黑色对红外线的反射量很小,而白色背景对红外的反射量很大,这样经过红外接收管的电压值的不同,可以判断出小车的运行情况。
当小车在黑色轨迹上正常运行时,1号和2号传感器输出1,当小车右偏时,2号由输出1转变为0,此时单片机驱动电机模块,调控小车左右两轮的转速,调整车身向左转;当小车左偏时,1号由输出1转变为0,单片机调控小车车身向右转。
传感器部分是小车的“眼睛”,只有通过它的引导小车才能正常在轨道上运行。
在小车的调试过程中,遇到了一些问题。
第一,两个传感器中的红外管有时一直感光,有时感光很差;第二,在黑线上运行时,在一些弯路传感器可以判断出来,一些反应迟钝,并且恢复直行的时候,传感器却依然保持上一状态运行。
AGV基础知识介x

2023-10-29•agv概述•agv关键技术•agv应用场景•agv发展趋势与挑战目录01 agv概述agv定义导引原理AGV通过自身搭载的传感器识别周围环境特征,如二维码、RFID 等,实现定位和导引。
导引方式包括电磁导引、激光导引、惯性导引、视觉导引等。
自动导引小车(AGV)一种能够自动导引、自动行驶、自动避障的小型电动车辆,主要用于物流、仓储、制造等场景。
美国通用汽车公司首次使用AGV用于生产线上的物料运输。
20世纪50年代欧洲和日本开始研究和应用AGV技术。
20世纪70年代AGV技术逐渐成熟,开始广泛应用于工业自动化领域。
20世纪80年代随着物联网技术的发展,AGV技术逐渐智能化、网络化。
21世纪初agv发展历程包括潜伏式、牵引式、叉车式、背负式等,根据应用场景和需求进行选择。
AGV类型AGV优点AGV缺点自动化程度高、灵活性好、可实现高效运输、减少人力成本等。
对环境要求高、需要预先铺设导引路径、对硬件设备依赖性强等。
03agv分类及优缺点020102 agv关键技术通过激光雷达扫描环境中的物体,根据反射回来的信号计算距离,实现精确的定位和导航。
导航技术激光雷达导航利用陀螺仪和加速度计等惯性传感器,通过测量加速度和角速度等信息,实现相对位置的推算和导航。
惯性导航通过在路径上设置电磁感应器,感应agv上的电磁信号,实现定位和导航。
电磁导航03基于机器学习的路径规划利用机器学习算法,学习历史路径数据,预测未来可能的最优路径,实现agv的路径规划。
路径规划技术01基于规则的路径规划根据预设的规则和约束条件,计算出可行路径,实现agv的路径规划。
02基于搜索的路径规划通过搜索算法,搜索出满足条件的最优路径,实现agv的路径规划。
用于获取周围环境的距离信息,实现精确的定位和避障。
激光雷达传感器用于获取agv的加速度和角速度信息,实现运动状态的监测和导航。
惯性传感器用于获取电磁信号的信息,实现路径的识别和导航。
路径识别智能小车控制系统的设计与开发

盘毒 一 西
图 2 主 控 模 块 连 接 电路
桥式 电路 ,这种 驱动 电路 可 以很方 便 实现 直流 电机
! 二坠 广东水利电力职 业技术学院 学报21年 第9 第 1 01 卷 期
CN 4 —1 8 Z 4 5 7/ Ju n l f a g o g eh i l ol e fWa r e o re n l tc n ie r g 2 1 o r a o Gu n d n T c nc l g t R su cs dE e r E g ei , 01 ,Vo . , No 1 aC e o e a ci n n 1 9 . 2- 9 6 2
_
- 电机 驰动 模块
图 1 智 能 小 车控 制 系统 总 体 设计 框 图
2控 制 系统硬 件 设 计
21 . 主控模块 设计 根据 小 车要 实 现 的功 能 ,我们 选 用 5 1系列 单
传 感 技 术 、汽 车 电子 、电气 、计 算 机 、机 械 等多
个学 科 。本 文采 用单 片 机控 制技 术 ,成功 设计 开
路 。由于 噪声 会影 响到探 测头 的信 号和单 片机 的运 行 ,所 以此处 我们选 用 串联稳 压 芯片 L 7 0 为 M 85作
单 片 机 、 舵 机 、检 测 头 的 稳 压 芯 片 。 经 验 证 ,
的及 时与 可 靠 性 。 由该 装 置 采 集 的信 息 送 入 单 片 机统 一 处 理 后 ,进行 判 断 ,并 将 相应 的控 制 指 令 传给 执行 电机 ,以实现小 车 的路 径识 别功能 。
源噪 声 ,耗 电量 比较大 的 电路 适于采 用开关 稳压 电
驱 动模 块 、舵 机 控 制模 块 ,图 1即 为智 能 小 车控 制 系 统 的总 体 结 构 框 图 。本 系 统 采用 8C 1 片 05 单
基于STM32的智能循迹避障小车

基于STM32的智能循迹避障小车【摘要】本文介绍了一款基于STM32的智能循迹避障小车。
在引言中,我们简要介绍了背景信息,并阐明了研究的意义和现状。
在我们详细讨论了STM32控制系统设计、循迹算法实现、避障算法设计、硬件设计和软件设计。
在结论中,我们分析了实验结果,讨论了该小车的优缺点,并展望了未来的发展方向。
通过本文的研究,我们验证了该智能小车在循迹和避障方面的性能,为智能移动机器人领域的研究提供了新的思路和方法。
【关键词】关键词:STM32、智能小车、循迹避障、控制系统、算法设计、硬件设计、实验结果、优缺点、未来展望1. 引言1.1 背景介绍智能循迹避障小车是一种基于STM32单片机的智能机器人,在现代社会中起着越来越重要的作用。
随着科技的发展,人们对智能机器人的需求也日益增长。
智能循迹避障小车不仅可以帮助人们完成一些重复性、繁琐的任务,还可以在一些特殊环境下代替人类进行工作,提高效率和安全性。
循迹功能使智能小车能够按照特定的路径行驶,可以应用于自动导航、自动驾驶等领域。
而避障功能则使智能小车具有避开障碍物的能力,适用于环境复杂、存在风险的场所。
通过将这两个功能结合起来,智能循迹避障小车可以更好地适应各种复杂环境,完成更多的任务。
本文旨在探讨基于STM32的智能循迹避障小车的设计与实现,通过研究其控制系统设计、循迹算法实现、避障算法设计、硬件设计和软件设计等方面,为智能机器人领域的发展做出一定的贡献。
1.2 研究意义智能循迹避障小车的研究旨在利用先进的STM32控制系统设计和算法实现,实现小车的智能循迹和避障功能,从而提高小车的自主导航能力和适应性。
研究意义主要包括以下几个方面:1. 提升科技水平:通过研究智能循迹避障小车,促进了在嵌入式系统领域的发展,推动了智能控制和算法设计的进步,增强了人工智能在实际应用中的影响力。
2. 提高生产效率:智能循迹避障小车可以应用于仓储物流、工业自动化等领域,可以替代人工完成重复、枯燥的任务,提高了生产效率和效益。
agv路径算法

agv路径算法
AGV路径算法是指一种自动导航小车的路径规划算法。
AGV是自
动导航小车的简称,它们可以在不需要人工干预的情况下自主地行驶,完成一系列物流任务。
路径规划是AGV的重要任务之一,它需要根据地图、任务、机器人等信息,计算出最优路径,从而保证机器人在最短的时间内到达目的地。
AGV路径算法的基本思路是将整个地图划分成一个个小区域,然后根据任务需求,计算从当前位置到目标位置的最短路径。
这些算法通常采用A*算法、Dijkstra算法、深度优先搜索等优化算法,以达
到最优性。
在实际应用中,AGV路径算法需要考虑多种因素,例如机器人的大小、载重、最大速度、转弯半径等因素,以及地图中的障碍物、交通流量等情况。
此外,路径算法还需要考虑机器人之间的协调,避免碰撞和拥堵。
随着物流自动化的不断发展,AGV路径算法也在不断地优化和改进。
新的算法不断涌现,从而使得AGV能够更加高效地完成物流任务。
- 1 -。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
自动识别路径的智能小车设计报告 来源:kaoshi365 作者:kaoshi365 日期:2009年11月12日 访问次数: 625次 论文关键字:智能小车 电机 驱动 L298 自动循迹 传感器 算法 论文摘要:本系统采用存储空间较大的AT89S52作为主控制芯片,电动车电机驱动采用L298N芯片,结合DS10C4光电开关控制电动小汽车的自动寻路,快慢速行驶和转向,三者的结合使小车更加智能化,自动化。整个系统在设计中注意低功耗处理和力求高性价比等细节,电路结构简单,可靠性能高,无论在结构和技术上都具有较好的科学性。
本设计主要特点: 1. 高效的L298电机驱动电路,提高电源利用率。 2.利用软件实现PWM调速的方法。代替了专用集成芯片电路、通用数字组合电路、分立元器件组成电路、单片机系统控制电路、CPLD系统等。
一、模块方案比较与论证: 1. 车体设计 方案一:购买玩具电动车。购买的玩具电动车具有组装完整的车架车轮。由于装配紧凑,使得各种所需电路的安装十分方便,看起来也比较美观。但玩具电动车一般都价格昂贵。
方案二:自己制作电动车。一般的说来,自己制作的车体比较粗糙,对于白色基板上的道路面行驶,车身重量以及平衡都要有精确的测量,而且也要控制好小车行驶的路线和转弯的力矩及角度,这些都比较难良好地实现。依靠电机与相关齿轮一起驱动,能适应题目中小车准确前进、后退、转弯的要求,
基于以上分析,我们选择了方案二 2.电机模块 方案1:采用步进电机作为该系统的驱动电机。由于其转过的角度可以精确的定位,可以实现小车前进路程和位置的精确定位。虽然采用步进电机有诸多优点,步进电机的输出力矩较低,随转速的升高而下降,且在较高转速时会急剧下降,其转速较低,不适用于小车等有一定速度要求的系统。经综合比较考虑,我们放弃了此方案。
方案 2:直流电机:直流电机的控制方法比较简单,只需给电机的两根控制线加上适当的电压即可使电机转动起来,电压越高则电机转速越高。对于直流电机的速度调节,可以采用改变电压的方法,也可采用PWM调速方法。PWM调速就是使加在直流电机两端的电压为方波形式,通过改变方波的占空比实现对电机转速的调节。
基于以上分析,我们选择了方案二,使用直流电机作为电动车的驱动电机。 3.电机驱动模块 方案 1:采用SM6135W电机遥控驱动模块。SM6135W是专为遥控车设计的大规模集成电路。能实现前进、后退、向右、向左、加速五个功能,但是其采用的是编码输入控制,而不是电平控制,这样在程序中实现比较麻烦,而且该电机模块价格比较高。
方案 2:采用电机驱动芯片L298N。L298N为单块集成电路,高电压,高电流,四通道驱动,可直接的对电机进行控制,无须隔离电路。通过单片机的I/O输入改变芯片控制端的电平,即可以对电机进行正反转,停止的操作,非常方便,亦能满足直流减速电机的大电流要求。调试时在依照上表,用程序输入对应的码值,能够实现对应的动作。表1是其使能、输入引脚和输出引脚的逻辑关系。 表1 L298N的引脚和输出引脚的逻辑关系
EN A(B) IN1(IN3) IN2(IN4) 电机运行情况 H H L 正转 H L H 反转 H 同IN2(IN4) 同IN2(IN4) 快速停止 L X X 停止
基于以上分析,我们选择了方案二,用L298N来做为电机的驱动芯片。 4.寻迹传感器模块 方案1:采用发光二极管+光敏电阻,该方案缺点:易受到外界光源的干扰,有时甚至检测不到黑线,主要是因为可见光的反射效果跟地表的平坦程度、地表材料的反射情况均对检测效果产生直接影响。克服此缺点的方法:采用超高亮度的发光二极管能降低一定的干扰,但这又会增加检测系统的功耗。
方案2:脉冲调制的反射式红外发射接收器。由于采用带有交流分量的调制信号,则可大幅度减少外界的干扰;此外红外发射接收管的工作电流取决于平均电流,如果采用占空比小的调制信号,在平均电流不变的情况下,瞬时电流很大(50~100mA)(ST-188允许的最大输入电流为50mA),则大大提高了信噪比。此种测试方案反应速度大约在5us。
方案3:采用CCD传感器,此种方法虽然能对路面信息进行准确完备的反应,但它存在信息处理满,实时性差等缺点,因此若采用CCD传感器,无疑会加重单片机的处理负担,不利于实现更好的控制策略。
根据以上分析我们采用方案2
5.控制器模块 方案1:采用凌阳的SPCE061A小板作为主控制芯片,而且可以采用凌阳的小车模组,可以很快的完成其基本功能,当是用该小板存在在一定的局限性,较难扩张功能,而且各个模块的拼凑,没有比集成在一块板的稳定性高。
方案2:采用AT89S52作为主控制芯片,该芯片有足够的存储空间,可以方便的在线ISP下载程序,能够满足该系统软件的需要,该芯片提供了两个计数器中断,对于本作品系统已经足够,采用该芯片可以比较灵活的选择各个模块控制芯片,能够准确的计算出时间,有很好的实时性。
基于以上分析,我们选择了方案2
二,采用AT89S52作为电动车的主控制芯片。 6.电源模块 在本系统中,需要用到的电源有单片机的5V,L298N芯片的电源5V和电机的电源7—15V。所以需要对电源的提供必须正确和稳定可靠。
方案1:用9V的锌电源给前、后轮电机供电,然后使用7805稳压管来把高电压稳成5V分别给单片机和电机驱动芯片供电。这种接法比较简单,但小车的电路功耗过大会导致后轮电机动力不足。
方案2:采用双电源。为了确保单片机控制部分和后轮电机驱动的部分的电压不会互相影响,要把单片机的供电和驱动电路分开来,,即:用6节干电池7.2V来驱动电机芯片,然后用7805稳压管来稳成5V供给单片机,后轮电机的电源用3V供电,这样有助于消除电机干扰,提高系统的稳定性。
基于以上分析,我们选择了方案二。 7.最终方案 二、系统总体设计: 1.系统工作原理及功能简介:本系统利用单片机AT89S52单片机作为本系统的主控模块,该单片机可以将从传感器的输出信号得到外界的信息,然后在程序中控制单片机对电动车上的直流电机的输出,从而实现电动车的前进以及转弯等循迹行驶。
2.系统框架图 3.理论分析与计算 4.系统主要模块设计: (1)电源: 为确保小车在行驶过程中各部件均能正常工作且相互之间不受影响,我们可使用了两个电源为两个主要模块提供电压。分别是由转弯电机、单片机和光电传感器组成的总电路电源模块以及后轮驱动电源模块。
(2)转弯与路径出错识别: 小车在行驶过程中会遇到以下两种路况: ① 当小车由直道高速进入弯道时,转角方向和车速应根据弯道的曲率迅速做出相应的改变,原则是弯道曲率越大则方向变化角度越大。
② 当小车遇到十字交叉路段或是脱离轨迹等特殊情况时,智能车应当保持与上次正常情况一致的方向行驶。
(3)光电传感器: 光电传感分布格局: 路径识别方案:电开关脱离轨道时,等待外面任意一只检测到黑线后,做出相应的转向调整,直到中间的光电开关重新检测到黑线(即回到轨道)再恢复正向行驶。现场实测表明,虽然小车在寻迹过程中有一定的左右摇摆。但只要控制好行驶速度就可保证车身基本上接近于沿靠轨道行驶。
四、系统硬件电路设计 (1)系统整体电路图如下: (2)光电传感器电路 (3)电源电路 五、软件代码设计 1.软件算法设计: (1)传感器数据处理及寻迹程序总体流程: 主程序主要起到一个导向和决策功能。其设计思路根据小车所处位置的不同,确定小车的任务。在黑线轨道上走直线时,对传感器的信号进行及时的判断,左边信号为零时控制电机左转,右边为零时控制电机右转。在弯道时,为了不冲出轨道,是左轮一直打偏,直到检测到右边信号为零时控制电机右转,当右信号为1时,继续使左轮一直偏。
(2)具体流程分析: 智能小车采用4个光学传感器置于小车前部,以此判断如何控制舵机转向. 程序不停判断0~3传感器的值,当SENSOR1==1与SENSOR0==0时,小车为图(I)情况,此时应控制舵机向右转,调用TurnRight()函数;当SENSOR0==1与SENSOR1==0时,小车为图(II)情况,此时应控制舵机向右转,调用TurnLeft()函数.
(I) (II) 但由于传感器比较灵敏,经实际测试,白色区域中可能存在杂色,传感器有可能扫描到白色区域中的黑色(如下图),为了避免判断错误,再没检测到需要转右或者转左后,进行延时,接着再次判断此时传感器情况,如果仍然为SENSOR1==1与SENSOR0==0(或者SENSOR0==1与SENSOR1==0)则可能判断在黑色跑道上,接着调用转右(转左)函数.不过,仍然有一定几率判断失误,当延时后,传感器刚好经过另一个杂色的情况,解决方法有待完善.
当前后传感器都为1(黑)时(如下图(III)),则认为小车在黑色跑道上,不需要进行转向,调RecoverBalance()函数,恢复平衡位置.
当前后传感器都为0(白)时(如下图(IV)),则认为传感器将离开跑道范围,为了另小车继续延黑色跑道行走,程序中的pre_dir变量保存最近一次转向方向(1为右,0为左),此时凭此变量来维持小车的转向.
2.主程序流程图: 3. 具体代码分析: //宏定义电机、舵机的输入端 #define ELE_MACHINER1_IN1 P0_0//舵机输入端口1 #define ELE_MACHINER1_IN2 P0_1//舵机输入端口2 #define ELE_MACHINER1_EN P2_7//舵机使能端 //宏定义光电传感器元件0至3 #define SENSOR_INPUT P2 //光电传感器总端口(逆时针排序)