毕业设计| 单片机自动分拣小车(上货/卸货/WIFI识别)
时间:2022-09-11 01:30:00
大家好!虽然今天分享的内容并不难,但作为基础的毕业项目还是有一些参考意义的。
自动分拣车总体方案
分拣汽车的任务是:汽车到货物点并放置货物后,扫描代码识别和服务器判断,向汽车发送指令信息,汽车收到指令后将货物分类到指定位置。
汽车的整体功能结构
本设计所需的模块包括:跟踪避障模块、定位卸载模块、无线交互模块。
主控单片机:采用STC的STC89C52RC,8051内核为8051内核Flash E2PROM存储器,为CMOS产品,大型芯片内存储空间为8KB。单片机内部RAM随机读写存储器大小为512B。选用工业级双列直插封装型号的单片机。
除此之外,STC89C52单片机具有以下标准功能:4个外部中断,看门狗定时器,MAX810复位电路,16 3个定时器,全双工串行口,7向量4级中断结构。可降至0Hz 可选择节电模式的静态逻辑操作支持两种软件。空闲时CPU 停止工作,允许串口,RAM、中断、定时器/计数器继续工作。冻结振荡器,RAM内容保存,所有工作停止,直到下一个硬件复位或中断。
与市场上51系列单片机相比,综合成本较低STM32.开发的简单应用价格更低。与其他八位单片机相比,51系列有乘法和除法指令,RAM该区间有一个双功能地址区间,从硬件到软件都有一个完整的位置处理器。因此,它仍然在市场上占有很大的份额。
寻找避障硬件设计
为了实现汽车基础的跟踪避障功能,需要使用驱动系统来提供汽车驾驶的动力,以及跟踪避障系统来判断汽车执行的驾驶指令。
驱动系统硬件设计:根据本设计理念,单片机根据检测到的数据进行判断,然后执行相应的功能,实现自动分拣汽车的智能控制。在此过程中,动力系统为汽车提供动力,以实现汽车在各种功能中的移动。
选择动力系统:
方案一:V-M直流调速系统。V-M双闭环直流调速系统是工业生产中使用最广泛的传动装置之一,常用于机床、冶金等机械领域。它具有调速范围广、稳定性好、响应快、抗干扰能力强等优点,是直流调速系统中最成熟的。缺点是只能单向导通,操作要求严格,可能会干扰其他电子设备。
方案二:PWM直流调速系统。PWMDC电机广泛应用于单片机或其他微处理器。它是一种利用数字输出控制模拟电路的技术,节约能源,成本低。模拟信号采用数字控制,降低成本和功耗。
分析V-M系统和PWM系统,对比两者,PWM具有以下优点:
(1) PWM系统功耗低,在同一电流下,发热损耗比V-M系统低。
(2) PWM系统开关频率高,响应快,调速范围高[12]。
(3) PWM系统控制方便,设计简单,适用于单片机小板的搭配。
(4) 可设计成可逆型PWM系统,实现电机反转,汽车倒退。
综上所述,采用可逆PWM直流调速系统。安装简单,控制方便。并使用市场上常见的L298N驱动芯片驱动电机工作。
直流电机没有正负极,但为了便于设计,我们模拟电机的一端为正,另一端为负极。该设计将芯片的5、6、7、10、11、12连接到51单片机P1.1、P1.0、P1.2、P1.4、P1.3、P1.5接口。芯片2、3输出口接左电机正负极,13、14接右电机正负极。电机需要4节1.5V5号电池驱动,外接电池盒放置电池。
当单片机P1.左电机输出电路开关打开0信号为1,P1.输出信号1,P1.2信号“0”,OUT1口输出一个VCC高电平,OUT2输出低电平0V,左电机正转。P1.3信号“1”,P1.4信号“0”,P1.5信号1,右电机反转。这样,汽车就会向前移动。在程序中,可以定义为:
1)左电机正转:{ P1_0 = 1 ; P1_1 = 1 ; P1_2 = 0 }
2)左电机停机:{ P1_0 = 0 ; P1_1 = 0 ; P1_2 = 0 }
3)左电机反转:{ P1_0 = 1 ; P1_1 = 0 ; P1_2 = 1 }
4)执行右电机正转:{ P1_3 = 1 ; P1_4 = 1 ; P1_5 = 0 }
5)右电机停机:{ P1_3 = 0 ; P1_4 = 0 ; P1_5 = 0 }
6)右电机反转:{ P1_3 = 1 ; P1_4 = 0 ; P1_5 = 1 }
循环系统的硬件设计:本设计中使用的红外循环模块是TCRT红外反射传感器5000。该传感器的工作原理是依靠红外发射二极管不断发射红外线,并通过物体反射回接收管。接收到的信号由比较器电路处理,输出数字信号。用户可以通过旋钮调整检测的灵敏度,用于检测是否在布置在浅色地的黑线上行驶,然后通过程序判断调整电子旋转以保持跟踪。
上图为TCRT红外对接管用于发射和接收红外信号的5000红外反射传感器原理图。通常电源接通时,电源指示灯有电流通过,指示灯亮。图中10K芯片上的可调电阻是用来改变电阻值并调整感应灵敏度的可调旋钮。LM3939是比较器,当正端电压大于负端时,输出高电平,开关指示灯不亮。正端电压小于负端电压时,输出低电平0,开关指示灯形电流流通,灯亮。实际上,当红外线被黑线吸收时,接口管没有接收到足够的红外线,接收管没有接收时,比较器的正端电压必须大于负端电压,输出高电平。当传感器在白色地面上时,红外接收管接收到红外线,接收器形成通路,比较器的正端电压为0。负端连接滑动变阻器,其电压必须大于0,因此比较器输出0,开关指示灯亮。左循迹传感器输出连接单片机,根据其检测到黑线输出1,未检测到黑线输出0的特点P3.6接口,右循迹传感器输出连接P3.代码中可以设计7个接口:
判断两侧未检测到黑线:{P3_6 == 0 ; P3_7 == 0 } 执行 前行
判断左侧检测到黑线:{P3_6 == 1 ; P3_7 == 0 } 执行 左转
判断右侧检测到黑线:{P3_6 == 0 ; P3_7 == 1 } 执行 右转
4)判断两侧检测到黑线:{P3_6 == 1 ; P3_7 == 1 } 执行 停车
避障系统与循环系统采用的模块原理相同,也采用相同的红外发射和红外接收方法。当发射管发射的红外线遇到障碍物时,反射的红外线被接收管连接。比较器输出低电平0;当未遇到障碍物时,接收管未高电平1。该模块的检测距离约为2~30cm,检测角度为35度,检测距离可通过调整旋钮滑动变阻器来调整。
本设计仅用于检测障碍物。虽然市场上有更好的超声波传感器等模块,但红外检测障碍物就足够了,因为汽车模拟环境在仓库等工作环境中工作,甚至在无人仓库中工作。此外,自动避障驾驶的使用很容易导致仓库工作中小型汽车组的意外错误。一辆汽车的避障可能会成功,其他人必须重新规划路线,增加管理系统的负担。因此,为了方便总控系统的线路计算,本设计仅在检测障碍物后执行停车指令,使用红外检测模块就足够了。
左避障传感器的输出P3.四、右避障输出端接P3.在程序中可以这样设置:
(1)判断左侧遇到障碍:{ P3_4 == 0 ; P3_5 == 1 } 执行 停车
(2)判断右方遇到障碍:{ P3_4 == 1 ; P3_5 == 0 } 执行 停车
(3)判断双方都遇到障碍:{ P3_4 == 0 ; P3_5 == 0 } 执行 停车
定位卸货硬件设计
定位卸货系统由定位系统和舵机卸货系统组成。定位系统用于判断汽车是否行驶到指定的卸货点,舵机卸货系统用于卸货。
定位系统的硬件设计:采用光敏电阻传感器和定位系统LED发光二极管采用定位点识别系统,设计采用4个LED发光二极管和光敏电阻传感器的实际使用方法如图4-1所示,在路线中设置四个点,在每个点的适当位置放置一个点LED发光二极管安装在汽车侧面。模拟仓库中的四个定位点,A区、B区、C区。当汽车到达第一点时,光敏电阻传感器感应到光线达到标准,输出低电平。然后判断wifi信号是否存入变量中,如果wifi如果变量为0,汽车将停止。等上货后,wifi变量不等于0,光敏信号为0,然后汽车跟踪前进。当光敏电阻传感器感应不到标准强度光时,输出信号为1这样的循环,直到汽车到达wifi信息对应的定位点后,停车卸货。
卸料系统的硬件设计:
采用SG90 9g该型号的舵机用于卸载。当卸载条件满足时,舵机程序驱动舵机旋转90度,将放置在称重模块上的货物推下。动作完成后,卸载功能完成,舵机复位,变量为零,程序开始循环变量判断,汽车继续绕回初始点停车。下图显示了汽车第二层的舵机安装计划wifi将模块放在第二层,避免其它干扰。
驱动舵机的旋转需要通过信号线给舵机一个周期性的直流偏置电压。舵机将根据输入电压和基准电压进行比较,以获得输出电压差,并根据正负电压差确定旋转方向。此外,旋转角度根据输入方波的周期来判断。参数t采用定时器0计数,单片机晶振计时为每次0.1ms,参数T的数量决定了参数T的周期,如下表所示。
设计中舵机旋转90度需要输入1个周期.5ms转动完成后,将方波输入0.5ms方波,电机开始逆转复位。
无线传输和称重系统硬件设计
无线传输系统意味着无线连接,客户机与服务机进行信息交换,并对传输的数据进行处理。本系统分为WIFI无线模块、红外遥控模块、称重模块。
WIFI传输功能的设计:采用ESP8266WIFI模块。该设计使用android手机app扫描货物上的条形码或者二维码,识别出数字后,根据选择的区间范围发送给esp8266模块数据,单片机获取传来的wifi数据,并称重上传数据,然后判断在哪个LED定位点停车卸货。此系统需要用到ESP8266模块、手机APP、打印好的条形码/二维码来构成WIFI无线传输系统。
红外遥控功能的设计:意为人工处理临时问题时的手动控制方式,在单片机初始化后,或者中断期间通过按钮切换自动和手动模式,设计采用的是IR1838型号的红外接收管。红外遥控通过遥控器发射的红外信号,让小车实现遥控停车、直行、转弯、倒退四个简单动作,使用通用的21键红外遥控器来进行遥控操作。
称重传感器功能的设计:称重传感器选择的是桥式压力应变传感器和型号为hx711的24位A/D转换器芯片。hx711模块专用于高精度电子秤,其集成了所需的外围电路,抗干扰能力强,能直接连接单片机使用。当单片机判断获得的wifi数据符合后,执行称重功能,获得24位AD信号后,通过公式计算重量。再将条码数据和计算结果发送到手机端,手机程序根据获得的数据在列表框中加入数值显示。随后小车开始行驶,开始下一流程。下图为称重模块的功能结构图:
程序设计与调试
主函数的设计:
【下方分享一些学习教程,大家感兴趣的可以看一下】:
【网盘免费资料包,请放心领取!】:
嵌入式物联网 22个STM32项目、大赛作品,【华清远见发放资料包】http://makerschool.mikecrm.com/f4wjYBB