首页>>科技 >>内容

采用STC12C5410AD处理器的自动割草机器人主控系统设计

发布时间:2023-11-09 16:50:08编辑:温柔的背包来源:

很多朋友对采用STC12C5410AD处理器的自动割草机器人主控系统设计不是很了解,每日小编刚好整理了这方面的知识,今天就来带大家一探究竟。

采用STC12C5410AD处理器的自动割草机器人主控系统设计

1、系统结构

自动割草机器人主控制系统结构框图如图1所示。该系统主要由单片机控制系统、传感器系统、电机驱动系统三大部分组成。单片机控制系统的处理器采用国产芯片STC12C5410AD,该芯片包含10位ADC和串口、I2C等通用串行接口。高达40 MHz的主频完全能够胜任本系统的计算和处理速度。

运动系统主要通过单片机给出的多路PWM信号控制自动割草机器人的移动电机和割草电机。传感器系统由电子围栏传感器、光电开关传感器、碰撞开关传感器、雨量传感器、无线遥控接收模块等组成。其中,电子围栏传感器用于检测割草区域边缘;采用光电开关传感器避开缓慢或静止的障碍物;碰撞开关传感器用于避免快速或活动的物体撞击割草机;雨水传感器用于检测阴雨天气并相应返回基站;倾斜开关传感器用作安全措施,防止自动割草机机器人在割草过程中因意外事件而翻倒。一旦传感器检测到的角度超过设定阈值,系统自动停止所有工作,进入休眠状态;无线遥控部分用于方便用户无线控制自动割草机器人。无线遥控距离约为20m。各系统均采用模块化设计,扩展性高,易于升级和维护。二次开发周期短。表1为自动割草机器人参数表。

2、 硬件系统设计

2.1 主控系统

主控系统采用STC12c5410AD单片机,最大主频40 MHz,8路AD输入,可以满足自动割草机器人系统的控制需求。本系统采用30 MHz有源晶振,8路AD输入基本可以满足系统中模拟量的采集需求。

2.2 运动控制系统

运动控制系统的移动电机部分采用两片L298直流电机驱动芯片来控制直流电机。一颗L298驱动芯片可提供最大驱动电流3A。本系统移动电机供电电压为24V。对于设计要求移动总功率不超过60W的驱动系统,两颗L298芯片有足够的驾驶能力。机械结构方面,电机轴上采用减速齿轮,增大电机最大输出扭矩,提高草地行走能力。

割草机电机驱动部分采用MOSFET驱动。 IRLR2705 MOSFET可提供28A的峰值电流,满足割草机电机的要求。割草机电机的开启和关闭由单片机IO控制。割草机电机驱动器具有电流检测反馈环节。当割草机电机工作电流过大时(一般是转子堵转时),通过采样电阻取出电流信号,送至单片机AD转换器进行检测和软件保护。防止堵转电机烧毁mosfet管。电机驱动电路图如图2所示。

2.3 传感器系统

2.3.1 电子围栏感应电路

相控阵雷达一般用于搜索和跟踪空间目标。其相控阵天线以电子方式控制波束方向。它可以同时搜索和测量不同方向的多个波束,建立空间目标的轨道,测量空间目标的方向。窄带特性。例如美国海军的太空监视“NAVSPASUR”系统、法国的GRAVES雷达以及计划中的欧洲太空监视系统。这三种系统利用雷达电子波束在太空中设置拦截屏(或拦截空域),因此通常被称为“电子围栏”。

电子围栏传感器是自动割草机器人最重要的传感器。它可以防止割草机离开工作区域(与基站连接的电线包围的区域),从而保证自动割草机器人在有效区域内工作。电子围栏传感器感应电子围栏发出的一定频率的脉冲信号。当感应线圈靠近通有交流电的导线边界时,会产生特定频率的感应电流。根据对特定频率信号幅度的检测,可以获得割草机是否接近边界的信息。电子围栏传感器感应到信号后进行放大、滤波,然后发送到单片机的AD输入端口。实验表明,越靠近电子围栏边界,MCU 感应到的电压就越大。通过选择合适的阈值进行判断,就可以得到割草机的状态。实际中,将靠近边界3cm时感应的电压设置为阈值。割草机收到这个信号后,就会进行相应的处理,比如转向180,然后继续前进。电子围栏检测电路原理图如图3所示。

传感器是能够探测和感受外部信号、物理条件(如光、热、湿度)或化学成分(如烟雾),并将探测到的信息传输给其他装置或器官的物理装置或生物器官。传感器工作原理分类物理传感器应用物理效应,如压电效应、磁致伸缩现象、电离、极化、热电、光电、磁电等效应。被测信号量的微小变化都会转换成电信号。化学传感器包括那些与化学吸附和电化学反应等现象有因果关系的传感器。被测信号量的微小变化也会转换成电信号。

2.3.2 倾斜开关

在割草机操作过程中,割草机可能会意外倾斜或翻倒。由于割草机的底盘有一对高速割草刀片,底盘暴露在外面会威胁到人或动物的安全。当汽车倾斜到一定角度时,倾角开关会给出开关信号。根据该信号,单片机关闭所有电机控制信号并进入待机状态,等待操作人员手动开启。

2.3.3 紧急开关

碰撞开关是为了让割草机避开光电避障开关无法检测到的盲区障碍物和快速移动的物体。它是一种被动避障方法。碰撞开关的原理是割草机受到异物撞击后撞击到前面的机械弹簧结构,会出现一个触点短路。这可以给微控制器一个低电平信号,通知微控制器遇到了障碍物,微控制器将实施适当的避障措施。

2.3.4 雨量传感器

雨量传感器由吸湿电阻和比较器组成。在正常工作条件下,吸湿电阻的阻值约为1 M,这使得比较器输出较高(正电压(约2.5 V)大于负电压(约2 V))。如果雨水打到吸湿电阻上,该电阻的阻值会急剧下降到1k左右,比较器输出较低(正极电压(约0V)小于负极(约2V)) )。这样单片机就可以获取雨量感应信号并执行返回基站避雨的操作。图4是雨量传感器的电路图。

2.3.5 光电开关避障

光电避障是最重要的避障方法,也是一种主动避障方法。优点是可以在不撞到障碍物的情况下探测并避开障碍物,避免与障碍物直接碰撞。光电开关的检测距离可根据实际控制需要进行调整。

2.3.6 车身传感器布置

多传感器系统中传感器的位置和布置对控制精度有很大影响。借鉴其他多传感器系统的布置方式,设计了本系统的传感器布置图,如图5所示。

A1、A2、A3、A4都是电子围栏探头的放置位置。 B1、B2为光电传感器和碰撞开关的安装位置。尽量将它们放置在边缘,以方便检测障碍物,减少检测盲区。其中,两个电子围栏探头A3、A4主要用于检测前端电子围栏区域。如果被发现,则执行后退然后转身的动作。答1、A2用于进入基站时进行寻线,因为进入基站的任务是先找到边界处的电子围栏线,然后切入电子围栏线,最后走进基站站通行猎。答1、A2还可以在自动割草中发挥作用,防止割草机走出边界,特别是在割草区域的角落,成为边界处理算法中的重要辅助信号。

2.4 其他部分

其他部分包括过流保护和欠压保护。过流保护主要保护割草机驱动电路不因堵转、卡刀等原因而损坏;欠压保护检测电池电压来决定是否返回基站充电,实现自动充电功能。

3、 软件系统设计

自动割草机器人的软件部分采用单片机C语言编程进行设计,根据实际控制要求实现自动割草机器人的功能。软件部分尝试使用查询而不是中断,这增加了软件的健壮性。割草路径规划是自动割草机器人的主要算法部分。

3.1 软件总体结构

主程序主要完成自动割草机器人的初始化和三种行走策略:普通行走任务;返回基站;并执行外出任务。在外部中断中,外部光电避障、碰撞开关避障和保护部分的信号是外部中断的主要来源,用于实时响应这些异常事件。软件流程图如图6所示。

3.2 割草路径规划

路径规划是指在有障碍物的环境中,按照一定的评价标准,寻找一条从起始状态到目标状态的无碰撞路径。该算法的路径规划采用基于知识的遗传算法,包含自然选择和进化的思想,具有很强的鲁棒性。机器人的整体运动规划一般称为路径规划。由于机器人整体被视为一个点或一个固定的几何体,自由度相对较少,因此路径规划问题相对简单。传统的机器人运动规划算法已经可以很好地解决路径规划问题。

自动割草机机器人路径规划的遍历策略是割草机设计中的重要环节,关系到割草机割草的效率。合理的遍历策略可以使自动割草机器人在最短的时间内遍历整个割草区域。常用的割草策略主要有两种方法:直线操作和边界跟踪操作。两种覆盖区域方法如图7、图8所示。

直线跑步时,转弯处难免会出现路径重叠的情况,从而增加了总跑步距离;当使用边界跟踪时,机器人需要不断调整方向,这很容易导致错误。对于以单片机为核心的自动割草机器人的控制器来说,自动割草机器人的运行轨迹需要尽可能简单、标准化。因此,采用直线跑法来穿越子区间。前方电子围栏传感器感应到边界后,割草机器人向后移动一小段距离,然后将一个轮子居中,另一个轮子向左(或向右)转动180,完成这一过程。转身,然后继续前进,下次遇到边界时向相反方向旋转180,这样就可以覆盖该区域。

3.3 割草边界区域的处理

当割草机器人在该区域的角落行走时最容易出现问题。不合理的行走策略可能会导致割草机器人走出边界。因此,有必要利用割草机器人现有的传感器来选择在角落区域的操作策略。

经过实验发现,出现跨境问题的情况主要有两种。

(1)割草机到达边界一角,如图9所示。此时割草机器人传感器A4(或A3)首先检测到边界L1的信息。按直线作业方式,应先后退,再左转(或右转)。一般情况下,到达这样的拐角时,应该先检测L1,然后后退一定距离,然后向右转180。在转弯过程中,由于L2的存在,A3会感知到拐角的另一个边界L2。如果没有特殊策略的话,它会实施先后退一定距离,然后向左转180的策略,这很容易。走出界限,或者让控制变得混乱。为了避免这种情况,需要对软件进行更改。也就是说,如果在转弯过程中其他传感器检测到边界,则意味着它已经到达另一个边界角点。最好的处理办法就是原路折返,回到原来的位置后再次左转180,从这个区域的顶部开始绕圈走到另一端。

(2)割草机遇到倾斜的边界,如图10。如果没有特殊策略,A4检测到边界后,会执行转向策略,这样前方就会有一大片区域(区域一)无法遍历。所以需要用右边的A2来解决这个问题。正常行走时,如果A2先检测到边界,则会执行先后退,再左转一定角度,最后前进的策略。自动割草机器人会沿着这个对角线边界不断调整角度,而不会遗漏这些区域。适用于边界不规则的草地。

4、 系统整体调试

割草机器人总体调试步骤:(1)单片机控制系统测试; (2)运动控制系统的调试; (3)各传感部分的调试; (4)结合运动控制系统和传感器进行整机调试。

首先,单独测试单片机的控制。测试通过后,对运动模块进行测试,获得割草机的运动参数。然后对各个传感模块进行测试,重点是电子围栏和光电避障的测试。确认各传感器模块工作正常后,即可开始割草机器人的整体测试以及割草路径的规划。最终,自动割草机器人将实现自动割草、自动充电、雨雪天气自动返回基站等功能。

自动割草机器人系统借鉴了国外割草机系统的特点,特别加强了安全性、可靠性的设计,实现了更好的控制。从获取外界信息的能力来看,多传感器系统保证了获取的外部信息的完整性和有效性,保证了自动割草机的正常运行和对突发情况的及时响应。系统性能方面,采用功耗合理、性能优越的单片机控制系统,兼顾性能和成本。在功能上,基本实现了割草机器人应有的所有功能,并增强了安全性。通过现场测试结果,割草机器人完全能够割草坡度不超过15的草,实现真正的无人值守自动割草。

以上知识分享希望能够帮助到大家!