基于单片机控制的智能灭火小车模型设计

发表时间:2021/2/26   来源:《科学与技术》2020年第29期   作者: 王煊, 肖程文, 黄仕灿, 朱俊懿, 瞿俊杰, 罗浩*
[导读] 工厂由于电路老化或操作不规范,时常导致火灾发生,造成极大损失。

        王煊, 肖程文, 黄仕灿, 朱俊懿, 瞿俊杰, 罗浩*
        武汉商学院 机电工程学院,湖北 武汉 430056

        摘 要:工厂由于电路老化或操作不规范,时常导致火灾发生,造成极大损失。本文以此为背景,设计了一款智能灭火小车。采用单片机STC89C52RC控制,电机驱动芯片L2930驱动。采用红外传感器和火焰传感器收集环境参数,实现智能灭火小车的循迹、避障、障碍物跟随和火焰识别。程序设计方面,以C语言在Keil开发环境下进行控制程序编写。硬件设计方面,使用立创EDA进行元器件的选型,电路图设计,PCB图设计和BOM表生成。最终实验测试表明:本设计的智能灭火小车能自动避障,并能够快速、精确的行驶到火源点,打开灭火风扇将其扑灭。
关键词:单片机;避障;循迹;灭火;模型车
        1 智能灭火小车的硬件设计
        1.1核心控制模块
        单片机作为小车的控制中心,本文选取的是STC89C52RC单片机,作为整个小车的大脑,负责程序的控制,使智能灭火小车能够正常行驶并且符合当时提出的要求。本系统设计的控制芯片最小系统电路如图1-1所示:
        1.2电机驱动模块
        对于能够使小车动起来的“双脚”,采取的是L293D的控制芯片和脉宽调制(PWM)技术进行控制[1],其工作原理是通过单片机控制输入端的高/低电平,然后控制直流电机的转动方向,进而控制单片机对于驱动电机的输入的脉冲信号的空占比,之后不停地改变对电机的供电,最后控制智能灭火小车的速度。本系统设计的电机驱动电路图如图1-2所示:
                       
                 图1-1 系统最小系统电路图               图1-2 电机驱动电路图
        1.3灭火传感器模块
        智能灭火小车使用火焰传感器来寻找是否有高于周围的异常红外光源,从而判断出是否有火焰产生,例如,红外线传感器会把所检测的光信号转变为电信号传输给单片机进行处理[2],处理完成后,判断是否要触发灭火风扇,从而实现对于火焰的检测判断和扑灭。本文设计火焰传感器电路图如图1-3所示:
        1.4 行走方向判定模块
        行走方向判定主要是通过主板上左右两个光敏传感器感应是否有光信号产生,当右边光敏传感器检测到光信号而左边无,小车则控制电机驱动从而右转弯,当两个光敏传感器同时检测到光信号时,小车则控制电机驱动从而前进,当把光信号移动到左边时,左边光敏传感器检测到光信号而右边无,小车则控制电机驱动从而左转弯[4]。本系统设计的行走方向判定电路图如图1-4所示:
                  
                图1-3 火焰传感器电路图                     图1-4 行走方向判定电路图
        2 智能灭火小车的软件设计
        智能灭火小车的主程序如下:

void main()                              
{
  bit RunFlag=0;                    
  RunShow=0;                          
  ControlCar(8);                         
  while(1)                              
  {
   Start:
   bizhangLED = 0;
   if( LeftIR == 0 && RightIR == 1 )  
   {
      ControlCar(3);            
      delay_nms (3);             
         goto NextRun;
   }
     if( LeftIR == 1 && RightIR == 0 )
   {
      ControlCar(4);                 
      delay_nms (3);   
         goto NextRun;
   }
   if( LeftIR == 0 && RightIR == 0 )
   {
      ControlCar(1);              
      delay_nms (3);
         goto NextRun;
   }
   if( LeftIR == 1 && RightIR == 1 )  
   {
      ControlCar(8);             
      delay_nms (10);
         goto NextRun;
   }
      goto Start;
      NextRun:
      ControlCar(1);
  }
}
        
        3 智能灭火小车的整体实验
        3.1智能灭火小车的循迹灭火实验
        首先采用黑色胶条贴出环形跑道(注意胶带的宽度不应超过灭火车两个循迹的红外接收管之间的距离),然后在轨迹旁放置火源,接下来调节循迹和火焰传感器模块的灵敏度,最后让小车启动,如图3-1所示:
        在实验过程中,需仔细观察小车能否沿轨迹行驶,能否顺利灭火。为保证实验的准确性,应该进行多几次实验,保证实验数据的准确性。试验数据见表3-1所示:
基金名称:武汉商学院2018年度大学生创新创业训练项目。编号:201811654037

        参考文献:
[1]张景元.基于单片机的多用途定时器的设计与实现[J].电子工程师,2000, (8):22 -31.
[2]沈兰荪.高速数据采集系统的原理与应用[M].北京:人民邮电出版社,1995.5 -6.
[3]俞凡.基于单片机的厂区智能循迹灭火车模型的设计和实现[D].合肥:安徽农业大学,2016.
[4]项贤军,周荣晶,王才峰.基于STM32的智能探测小车控制系统设计[J].电子测量技术,2016,39(4):86-89.
[5]余炽业,宋跃,需瑞庭.基于STC12C5A60S2的智能循迹小车[J].实验室研究与探索,2014,33 (11):46-49,121.
[6]杨越,张文亮等.双H桥型直流电网潮流控制器的控制策略[J].电网技术,2015,39(9): 2505-2508.
投稿 打印文章 转寄朋友 留言编辑 收藏文章
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: