当前位置:   article > 正文

基于stm32单片机的智能遥控循迹避障灭火小车

基于stm32单片机的智能遥控循迹避障灭火小车

        本智能灭火小车以意法半导体公司生产的STM32F103C8T6单片机作为主控系统。采用TB6612作为电机驱动,用蓝牙控制行动,同时使用3颗红外传感器侦测火源,并及时反馈信号,通过一系列算法使小车居正面对火源,同时使用2个电机驱动2个风扇,以及通过水泵输出水源灭火,以此达到双保险并且高效快速灭火的目的。该小车硬件部分主要包括STM32F103C8T6单片机,TB6612电机驱动电路,蓝牙模块,水泵,红外模块等等。本设计主要运用STM32F103C8T6单片机为核心,通过蓝牙模块实现控制小车灭火以及其他功能。

1 系统方案

本系统主要由主控模块、电机模块、电机驱动模块、灭火组件、控制模块等、侦测火源模块几主要部分组成,下面分别论证这几个模块的选择与论证。

1.1主控的论证与选择

方案一:采用51单片机作为系统的主控核心,此单片机结构较为简单,易于编写程序,价格便宜。但可实现功能少,很多外设资源需要外部拓展,I/O口较少,时钟精度低,运行速度慢。

方案二:采用STM32F103C8T6单片机,此单片机外设资源丰富,时钟频率高,能够挂载数个传感器,可以灵活准确的输出PWM控制电机的转速和行走的路程,且价格合适。

总结:再多任务多情况下,我们根据任务开发需求及难度,决定最终选用方案二。

1.2电机的论证与选择

方案一:采用舵机的缺点是不利于调节速度,动力小。。

方案二:采用步进电机的优点是价格便宜,缺点是动态性能很差,加速度小,而且有震动。。

方案三:采用减速电机,具有永磁式和反应式的优点,动力大,加速快。

总结:综合三种方案,最终选择方案三。

   

1.3电机驱动的论证与选择

方案一:采用L298N集成芯片,该集成电路带散热器和光电耦合器,可以保护单片机不受电机的影响,最大程度的保护单片机。但是经过我们连线调试之后,发现该种芯片一个致命的缺点,在PWM输入达到KHZ级别的时候,输出端波形严重畸变甚至直接输出高电平,导致电路不能运行在所给的频率下,经分析可能是光耦本身截止频率就在KHZ级别,一端输出大电压之后,带宽降低,不能满足要求。

方案二:采用TB6612模块:TB6612能够提供高达1.2A的驱动电流,适用于大多数小型直流电机的驱动需求。TB6612在待机模式下的静态电流非常低,可以帮助节省能源并延长电池寿命。TB6612内置了过热保护和过流保护功能,可以有效地保护电机和驱动器免受损坏。使用方便,适合小车开发。

总结:选择方案二

1.4灭火组件的论证与选择

    方案一:采用电机驱动双风扇来达到吹灭火源的目的,根据实测,风扇对蜡烛,火柴等火源的灭火效果显著,但由于风扇转速所限制,对于25cm外的火源很难灭掉,除此以外,风扇对纸张类,塑料类等燃烧速度快的火源无法及时灭掉,反而往往会助长火势或者在物体燃烧完前都没吹灭。

    方案二:采用水泵输出存储于水箱的水来使火源灭掉,根据测试,此方案对纸张,塑料,落叶等着火物灭火效果最为显著,效率最快,且方便添加水源。但此种方式对于竖立状态的火源处理效果不行,如蜡烛,火柴等。

    方案三:通过喷口喷出粉尘来覆盖火源,原理同粉尘灭火器一样实现灭火的目的。经过测试,粉尘对部分着火物有效,但由于存储粉尘问题以及喷出距离问题导致只能对距离很近且火苗很小的着火物有效。

    总结:结合方案一和方案二的方法,同时实现风扇与水流的输出,对大部分火源都有效。

1.5控制模块的论证与选择

   方案一:采用蓝牙模块实现控制小车前进后退转向,遥控小车抵达火源位置,实现灭火。

    方案二:采用循迹模块实现小车的移动,此方案局限性较大,只能对侦测的道路上的火源做出反应

    总结:主要由蓝牙控制小车移动灭火,但也保留循迹模块,以应对处于同一前进线上的火源。

1.6侦测火源模块的论证与选择

    方案一:使用红外传感器实现小车移动到具体位置后智能识别火源具体方位,本方案所需部件便宜且易于使用,经过测试,此模块对于1m左右的火源都能有效检测到,识别能力强,但由于是红外探测,所以对黑色物体容易误判。

    方案二:使用热敏探测器实现小车检测火源,经过测试,此部件不易误判可能遮挡的物体,对火焰的反应灵敏,但是经过使用发现此部件必须里

离火焰很近时才有反应。

    总结:二种方案各有优缺,但热敏探测器在使用过程中容易被烧坏,所以最终我们选择使用方案一中的红外传感器。

2理论分析与计算

2.1  驱动小车行进的分析

2.1.1行进策略

  1. 直线行进:在开阔且无障碍物的环境中,灭火小车可以采用直线行进的方式,以最快的速度接近火源。

曲线行进:在需要绕过障碍物或遵循特定路径的情况下,灭火小车可以采用曲线行进的方式。这要求小车具备精确的转向控制和速度调节能力。

  1. 自适应行进:根据环境变化和实时信息,灭火小车可以动态调整行进策略,以确保高效、安全地完成灭火任务。

2.1.2路径规划

  1. 全局路径规划:在灭火任务开始前,通过地图信息或预先设定的路线,为灭火小车规划一条从起点到火源的全局路径。
  2. 局部路径规划:在行进过程中,灭火小车需要根据实时环境信息(如障碍物位置、火势变化等)进行局部路径规划,以确保安全到达火源并顺利执行灭火操作。

2.1.3速度控制

  1. 加速与减速:根据路径的曲率、障碍物的距离以及火势的紧急程度,灭火小车需要适时加速或减速,以保持稳定的行进状态并避免碰撞。
  2. 匀速行进:在稳定且无障碍物的路段,灭火小车可以保持匀速行进,以节省能源并提高行进效率。

2.1.4障碍应对

  1. 障碍物识别:通过传感器(如红外传感器、超声波传感器等)检测并识别行进路径上的障碍物。
  2. 避障策略:根据障碍物的类型和位置,灭火小车可以选择绕行、停车等待或采取其他避障策略。这要求小车具备灵活的转向和速度调节能力,以确保安全避障并继续执行灭火任务。

2.2  小车识别火源的分析

1.识别技术是关键。小车需要配备能够检测火源的传感器,这些设备应当具有高灵敏度,能够准确捕捉到火源产生的热量、烟雾或火光。例如,红外传感器可以检测火源产生的热量,而可见光摄像头则可以捕捉火光。

2.环境因素也会影响小车的火源识别能力。例如,光线条件、烟雾密度、火源大小等因素都可能对识别结果产生影响。因此,小车需要具备较强的环境适应能力,能够在不同条件下准确识别火源。

3.实时性和准确性是火源识别的重要指标。小车需要在第一时间发现火源,并准确报告其位置和大小。这要求小车具备高效的数据处理能力和快速的反应速度,以便及时采取相应的灭火措施

2.3  小车灭火方案的分析

    1.小车应配备高效的灭火设备,如干粉灭火器或水流灭火器等,以适应不同类型的火源。在选择灭火技术时,应考虑火源的特性、灭火效率以及使用安全性等因素,以提高灭火速度和效果。

2.为确保及时发现火源并采取相应的灭火措施,小车应配备火源探测与报警系统,如此次使用的蜂鸣器,通过检测到火源而发出警报以提醒使用者,若火源确定已被灭掉,则蜂鸣器也应该停止鸣叫。

    3. 在操作程序方面,小车应制定详细的灭火操作流程。当发现火源时,操作人员应迅速启动小车并抵达目的地。同时,根据火源情况选择合适的灭火设备进行灭火。如果是自动灭火系统,应确保其能够自动启动并有效灭火。在整个灭火过程中,操作人员应保持冷静,严格按照操作程序进行,确保灭火行动的安全和有效。

3电路与程序设计

3.1电路的设计

3.1.1单片机原理框图

    1.CPU(中央处理器):CPU是STM32单片机的核心,负责执行程序指令和处理数据。它具备强大的数据处理能力和高效的指令执行速度,是实现各种功能的关键部件。

2.存储器:STM32单片机配备了多种存储器,包括Flash存储器、RAM和EEPROM等。Flash存储器用于存储程序代码,RAM用于存储程序运行时产生的临时数据,而EEPROM则用于存储需要长期保存的配置信息。

3.外设接口:STM32单片机拥有丰富的外设接口,如GPIO(通用输入输出端口)、USART(串行通信接口)、I2C、SPI等。这些外设接口使得STM32能够与其他设备或传感器进行通信,实现各种功能。

4.时钟管理器:时钟管理器负责为单片机的各个部件提供稳定的时钟信号,确保它们能够按照预定的时序进行工作。STM32单片机的时钟系统非常灵活,可以根据需要配置不同的时钟源和时钟分频系数。

5.中断控制器:中断控制器负责管理单片机的中断事件,如外部中断、定时器中断等。当发生中断事件时,中断控制器会暂停当前程序的执行,转而执行相应的中断服务程序,从而实现对外部事件的快速响应。

6.电源管理单元:电源管理单元负责控制单片机的电源供应和功耗管理。它可以根据需要调整单片机的工作电压和电流,以实现节能和延长设备使用寿命的目的。

3.1.2 电机驱动图

3.1.3 蜂鸣器电路图

    当小车左右两个红外传感器检测到火源时响起第一种警报,随后小车回正,中央的红外传感器正对火源,响起第二种警报,小车自动实现灭火后,中央红外再次检测是否有火焰存在,直到确定无火焰后蜂鸣器停止鸣叫。

3.1.4 红外传感器

3.1.5 循迹与蓝牙模块原理图

通过蓝牙遥控小车前往火源点,同时也保留小车通过循迹模式前进寻找火源。

3.2程序的设计

3.2.1程序功能描述

由蓝牙模块先接收小车启动的信号,随后遥控小车前往火源处,小车的3颗红外传感器经过位置判断后使小车正对火焰,蜂鸣器同时鸣叫,水泵及风扇开始执行灭火命令,直到红外传感器无法探测到火焰后,停止灭火指令,蜂鸣器停止鸣叫。

3.2.2主程序设计思路

3.2.3检测火焰程序设计思路

3.2.4测试结果

表3-2-4 基本要求测试数据

序号

用具

是否完成

时间

1

风扇

15s

2

  14s°

3

风扇,粉尘

25s

4

粉尘

30s

5

水,粉尘

5s

6

风扇,水

4s

 

3.2.5测试分析与结论

根据上述测试数据,该系统基本上能够达到性能指标,由此可以得出以下结论:

1、单一灭火方式不是很理想,时间过长。

2、多种方式配合需要时间短,合理的组合很重要。

3、好的硬件电路与模块是成功的奠基石。

综上所述,本设计基本达到设计要求。

4.总结

本次练习中我们遇到的最大的困难是选用灭火方式与部分模块的问题,包括合适的选型,先后换了三种型号的检测器以及寻找能够快速灭掉火焰的组合,很多时间在组建和检修硬件部分,导致浪费了很多调试程序的时间,东奔西跑地寻找合适的材料也浪费了很多时间。在断断续续的将硬件做好之后,调试软件时我们却在调整小车寻找火焰的方向时遇到了很大的挑战,我们在这个程序思路上下了很多功夫,最终整合了最适合的方法,但由于时间实在太有限,我们没有机会将所有部分都完美的移植在新的程序思路上。遗憾是有的,但是收获也是巨大的,体验到了很多东西,团队的力量,沟通的重要性,最重要的是遇到困难能够不被得失的情绪所干扰,而是一心一意去解决问题,这是我们以后对待任何困难的一种成功的心态。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/658522
推荐阅读
相关标签
  

闽ICP备14008679号