2026/4/6 7:13:25
网站建设
项目流程
建设网站的规划书,现在的网站做多大尺寸的,著名品牌营销策划公司,wordpress底部信息后台修改摘 要
为了解决当今快递行业在快递过程中出现的快递错分#xff0c;误分及丢件等问题#xff0c;本着提高快递分拣正确率、取货效率#xff0c;改善快递行业的形式的要求#xff0c;本项目设计了一款将视觉识别技术与取货系统相结合的基于STM32的驿站取货小车。
本设计采…摘 要为了解决当今快递行业在快递过程中出现的快递错分误分及丢件等问题本着提高快递分拣正确率、取货效率改善快递行业的形式的要求本项目设计了一款将视觉识别技术与取货系统相结合的基于STM32的驿站取货小车。本设计采用的是STM32F103C8T6单片机作为主控模块视觉识别系统采用带FIFO的OV7670作为信号输入实现数字识别的功能。显示系统部分采用的是ILI9341显示屏具有显示及触摸功能提高取货准确率。循迹部分采用的是黑色胶带对光的反射作用会对光敏电阻的阻值产生影响继而实现本设计的循迹功能确保小车不会脱轨电机驱动部分采用强磁直流减速电机为本设计提供驱动力。另外本设计通过控制电机正反转实现设计的自由变换方向和启动停止。通过视觉识别功能可以达到准确识别取货码确定位置实现取货的要求。经过试验本系统设计满足在功能上的要求最终检验了各项设计应用的可能。通过完成本设计系统的功能设计、硬件电路设计、软件程序编写、系统实验以及参数对比的工作实现了准确循迹及视觉识别的功能使本设计可以按照目标要求到达货件放置位置进行准确的取货。最终实验结果表明基于STM32的驿站取货小车系统设计取货准确率更高速度更快。关键词视觉识别 AD采样 STM32 驿站取货1 控制系统设计1.1系统方案本设计对于实现自动取货的目的提出如下两套设计方案。方案一采用FPGA为主要芯片加入图像采集单元由驱动板连接主控芯片实现驱动通过灰度处理提高对比度准确识别。以磁条引导方式为驱动方式为小车铺设路线。其中传感器用到了摄像头模块超声波传感器磁力传感器。此方案的缺点是FPGA芯片的编写可能会存在大量漏洞需要通过多次查找漏洞达到实现个别功能的目的。方案二采用STM32F103C8T6作为主控芯片控制以OV7670作为信号输入摄像头其驱动方式为PWM驱动技术。取货小车要求在短时间内准确快速的找到目标货物。加入按键输入取货码利用光的反射造成AD采样值不同驱动电机正反转。取货过程中运用视觉识别技术在一定数字范围内识别目标数字通过灰度处理提高对比度准确识别。本设计结合了实际分析通过参考各种相关文献进而确立设计结构方案使快件进入配送站后该取货小车通过数字识别系统识别快件的电子标签完成取件。经过对比基于对器件的成本与实物的难度的考虑方案一编程复杂耗时长。而方案二成本低难度适中因此选择方案二。1.2 系统工作原理1.2.1 系统的工作原理⑴ 循迹原理该原理利用了光的反射相同光照强度的光照射在颜色不同的物体上其反射之后的光亮是不同的对于光敏电阻阻值的影响也是不同的而且反射值可以通过AD采样值进行检测。光线反射到光敏电阻上可以通过检测光敏电阻的阻值来判断小车是否在黑色区域内。离黑色区域越近光吸收的越多反射的越少光敏电阻阻值越大分压也就越大反之离黑色区域越远分压越小电压大小控制电机进而控制小车方向。⑵ 数字识别原理① 图片预处理。此步骤分为识别图像灰度化以及二值化。② 图像分割。首先对原始图像的字符进行上下切割个左右切割。基本原理是从图像第一列开始从左往右扫描当遇到像素值为0时记录该列号s Col继续扫描遇到整列像素值为255时记录列号e cols col与e Col之间为字符所在区间。复制二值图该区域这样完成了左右分割之后再依照这种方式进行上下分割。③ 识别。利用代码将原始图像进行上下左右切割使其具有与模板的数字图像同样的大小之后将切割后的图片的对应坐标像素点与其余的模板的像素点相减像素点一般挑选十个求出所有像素点之差的绝对值之和。④ 最后切割后的图片与哪个模板之差的绝对值最小则可以确定这两个数字最为匹配即可得到该数字值。1.2.2 系统的结构系统结构框图如图1.1所示图1.1 系统框图2 硬件电路设计2.1主控模块的选择2.1.1 单片机及其选型介绍单片机选型应尽可能要符合成本、性能、控制精度、工作电压、功耗等要求在此基础上确定系统所需要的功能如计时器/定时器、串行数据接口、PWM调制、AD转换等然后可以根据芯片厂商列出的芯片清单进行单片机选型个别的功能可以通过单片机扩展芯片来实现。此外应核算系统所使用的I/O口数量程序存储空间、内存大小以确定合适的芯片选择满足要求的芯片并尽量减少外部扩展的数据或程序存储芯片并且留有部分余量。考虑到上诉因素选择了STM32系列芯片。STM32f103的芯片内核为ARM32位Cortex-M3 CPU最高工作频率为72MHz1.25DMIPS/MHz。芯片上集成32-512KB的Flash存储器和6-64KB的SRAM存储器。3种低功耗模式为休眠停止待机模式以及为RTC和备份寄存器供电的VBAT[2]。STM32F103xx微控制器带有一个嵌入式的ARM核所以可以兼容所有的ARM工具和软件。除了模拟输入所有的I/O口都可以接受5V以内的输入。芯片引脚图如图2.1所示图2.1 STM32F103C8T6单片机引脚图2.1.2 复位电路的介绍STM32的复位电路支持三种复位形式分别为系统复位、上电复位和备份区域复位。当系统上电、掉电以及系统从待机模式返回时发生电源复位。电源复位一种是在软件复位的时候设定备份区域控制寄存器中的对应位产生的另一种是当电源和电池都掉电又重新上电时产生的。当系统上电瞬间电容充电导致NRST在上电瞬间被拉为低电平信号这个信号持续1100us的时间。时间计算公式t 1.1RC 1.110000Ω0.0000001F 0.0011s 1100us 而这个时间对于STM32的NRST所需要的低电平信号时长已经足够[7]。综上所述复位电路设计满足单片机复位要求。复位电路原理图如图2.2所示。图2.2 复位电路原理图3 软件设计系统的软件设计通过keiluVision5软件实现在使用该软件的过程中可以使用C语言或者汇编语言进行编程编译后生成以.hex为后缀名的程序文件。在程序编写完成并检查完语法错误之后可以生成编译调试器以方便观看程序运行过程中对单片机内部各个存储器的改变更好的理解程序的运行与发现错误。3.1系统主程序设计主程序循环模块中的程序执行优先级应是最低的。主程序的设计首先应包含单片机初始化以及开机过程中所必要的实施模块这些模块大部分只在单片机开机复位结束之后执行一次。其次单片机应该具有循环执行的模块这些模块即是在单片机运行过程中保持单片机一直运行的模块。在程序设计中最重要的操作是确定程序流程框图。如图3.1主程序流程框图所示主程序部分包括系统的初始化、等待取货码、循迹、识别、完成取货、最后返回。如图可知这个循环处理模块分别包含等待取货码、循迹、识别、完成取货四个部分。图3.1 主程序流程图 图3.2 数字识别子程序设计4仿真与调试4.1 实物展示系统主要有六个部分组成电源模块、ov7670模块、电机驱动模块、显示模块、按键模块以及主控模块这六个模块组成在系统的搭建上采用模块分别进行的方式在万用板上搭建电路。分模块进行的好处就是系统走线比较清晰适合在万用板上进行电路的搭建。四节干电池放在电池盒内与此同时引出两根导线与电路板相接为整个系统提供电流系统控制主要模块展示如图4.1所示图4.1 系统设计实物展示循迹模块展示图如图4.2所示图4.2 循迹模块展示图4.2 实验效果4.2.1 循迹过程用黑胶带模拟取货路径依次为1-1-1、1-1-2、1-1-3、1-2-1、1-2-2、1-2-3、2-1-1、2-1-2、2-1-3、2-2-1、2-2-2、2-2-3在岔路口由于黑胶带反射光亮不同AD采样值发生变化当采样值大时说明小车位于黑胶带之上当采样值小时说明小车位于岔口空白处会有大约50ms短暂的停顿之后按照按键输入的取货码由单片机控制在指定取货位停留5秒。之后单片机控制电机反转原路返回。循迹路线模拟图如图4.2所示图4.3 循迹路线图文章底部可以获取博主的联系方式获取源码、查看详细的视频演示或者了解其他版本的信息。所有项目都经过了严格的测试和完善。对于本系统我们提供全方位的支持包括修改时间和标题以及完整的安装、部署、运行和调试服务确保系统能在你的电脑上顺利运行。