APP下载

基于高性能单片机的智能物流小车研究与设计

2020-05-03林豪王新雨徐玥

河南科技 2020年5期
关键词:机械手单片机

林豪 王新雨 徐玥

摘 要:本项目是基于恩智浦K66单片机和OpenMV可编程摄像头,采用C语言和Python语言编程的一款智能物流小车。其间根据小车作业需求,对小车的机械结构和硬件电路进行了设计。首先利用OpenMV摄像头模块识别不同颜色物体,再通过单片机控制机械手抓取物体,最后通过摄像头图像识别使小车按照黑色引导线循迹行驶到指定位置完成作业。本文可以给学习自动化控制、人工智能、电子设计知识以及参加相关竞赛的学生提供参考。

关键词:智能物流;单片机;OpenMV;循迹小车;机械手

中图分类号:G64文献标识码:A文章编号:1003-5168(2020)05-0024-05

Abstract: This project is an intelligent logistics trolley based on NXP K66 microcontroller and OpenMV programmable camera, programmed in C and Python. In the meantime, the mechanical structure and hardware circuit of the trolley were designed according to the needs of the trolley operation. First, the OpenMV camera module was used to identify objects of different colors, and then the microcontroller was used to control the robot to grasp the objects, finally, the camera image recognition was used to make the car follow the black guide line to the specified position to complete the operation. This paper could provide a reference for students learning automation control, artificial intelligence, electronic design knowledge and participating in related competitions.

Keywords: intelligent logistics;MCU;OpenMV;tracking trolley;manipulator

近年来,随着互联网技术的迅速发展与应用,物流行业飞速发展,传统的管理模式已不能满足物流行业需求,物流行业正在向智能化发展。智能物流机器人作为物流行业智能化发展的产物,其研究设计知识主要包括机械设计、硬件电路设计、软件设计[1-3]。对于智能物流机器人的研究,不仅有利于培养高智能人才,更有利于推动现代智能化的发展。本文主要介绍基于高性能单片机的智能物流小车的研究与设计,给学习自动化控制、人工智能、电子设计知识以及参加相关竞赛的学生提供参考。

1 主要研究内容

本项目研究设计一种能够智能识别不同颜色小物体并能自主搬运与循迹的智能物流小车。该物流小车具有小型化、智能化的特点,主要通过摄像头对不同颜色物体识别,并通过机械臂抓取所要运送的物体,通过摄像头图像识别自主循迹运送小物体到指定位置。

本项目主要研究内容如下:一是智能物流小车的机械结构研究与设计,本项目主要對智能物流小车的车模片采用的是LM2937-3.3芯片,两种芯片均为线性稳压芯片,电路简单,稳定性好。

4.3 驱动电路模块

驱动电路的基本原理是H桥驱动原理。硬件电路采用了集成半桥芯片BTN7971B来构成H桥驱动器,经实践,由集成半桥芯片构成的驱动电路模块比较稳定、耐用,电路结构简单,使得电路板布局更加灵活方便,所占空间小。驱动电路模块原理如图6所示。

4.4 调试电路模块

在整个电路系统中,为了方便调试,硬件电路上还增加了液晶屏、独立按键、蓝牙等模块。液晶屏和独立按键使得对小车参数的显示和修改更为方便。蓝牙模块可以使小车连接计算机,将参数通过上位机实时显示,从而监测小车的情况。

5 软件设计

5.1 系统控制总体设计

整个系统分为两部分,即小车的运动控制和机械手的舵机控制。小车的运动控制又分为速度控制和方向控制,速度控制和方向控制并不是相互独立的模块,而是相互协作的,只有速度控制和方向控制同时调整才能使小车达到最佳状态。通过摄像头识别黑色引导线,利用PID算法控制小车的速度和方向,使小车能够按照规定路线行驶。小车机械手的舵机控制通过摄像头对物体进行颜色识别,如果正确,摄像头发出信号给单片机,单片机发出控制信号给舵机,从而控制机械手对物体进行抓取。

5.2 图像处理

图像处理模块的感光芯片为OV7725,图像格式设置为RGB565格式的彩色图像,图像大小设置为320×240,在图像处理任务中,核心是基于Lab色彩空间的色块查找。

OpenMV的可编程视觉模块采用NXP i.MX RT1062,600MHz Cortex-M7作为主控芯片,600MHz的主频使得其即使在分辨率为320×240的彩色图像上进行色块识别仍具有较高的速度。该视觉模块集成了MicroPython运行环境,使用开发效率高的Python编程,同时兼容OpenMV IDE的调试,因此调试工作高效、直观。

5.3 线路循迹识别

线路循迹主要采用直线检测的方法对黑色引导线进行识别,具体流程如图7所示。对于曲线线路,可以采用最小二值化先将曲线转化为直线,利用相同的方法可以完成曲线线路循迹识别。

5.4 PID控制算法

PID控制算法是工程实际中应用最广泛的自动控制器,它具有原理简单、稳定性好、控制参数相互独立、参数调整方便等特点。对于小车的速度控制和方向控制,分别采用PI速度控制和PD方向控制。单位反馈的PID控制原理框图如图8所示。

PID控制算法分为位置式和增量式,笔者选用了增量式PID算法,这种算法用来控制电机比较方便。如果对控制有更高的要求或者干扰因素较多,可以运用PID衍生算法,如遇限削弱积分法、积分分离法、有效偏差法、微分先行PID算法等。

5.4.1 PI速度控制。在速度控制中,微分作用不大,所以这里简化使用PI控制。通过编码器实现速度闭环控制,反馈电机实际速度给单片机,接着单片机通过PI算法消除误差,最终使得速度达到期望值。

5.4.2 PD方向控制。方向控制中使用PD控制。根据OpenMV模块返回给单片机的偏角数值,单片机根据PD算法消除误差,使得小车按规定路线行驶。

5.4.3 PID参数整定。运用PID控制的核心是调整KP、KI、KD三个参数。通过对设定的参数进行波形分析,根据积累的经验对小车运动状态分析,从而对参数进行整定。

6 结论

该项目是基于恩智浦K66单片机和OpenMV彩色摄像头,采用C语言和Python语言编程的一款智能物流小车。本研究根据小车作业需求,对小车的机械结构和硬件电路进行了设计。首先利用OpenMV摄像头模块识别不同颜色物体,再通过单片机控制机械手抓取物体,最后通过摄像头图像识别使小车按照黑色引导线循迹行驶到指定位置完成作业。本文可以给学习相关知识和参加相关竞赛的在校大学生一些参考。当然,本项目还有许多需要改进的地方。对于识别物体,由于识别物体只能是单一颜色的物体,不够全面,这里可以增加通过OpenMV识别二维码或者条形码来识别不同物体,也可以通过神经网络算法训练来对物体进行准确的识别。另外,小车只能按照黑色引导线循迹行驶,功能较为简单,扩充功能可以增加一些模块,使得小车能够按照给定路径行驶。

参考文献:

[1]郑登华,贺一烜,柏孟杰,等.基于三自由度的智能物流小车[J].科技传播,2019(18):131-132.

[2]袁瑞豪,王一豪,孙振涵.基于K66单片机的恩智浦智能小车制作[J].无线互联科技,2019(11):122-124.

[3]张志胜.基于视觉导航的自主移动机器人的设计与研究[D].哈尔滨:哈尔滨工业大学,2008.

[4]庄琼云.基于OpenMV的智能寻迹小车设计与实现[J].黎明职业大学学报,2018(4):80-84.

[5]李梅,金力.《智能车PID算法的设计》实验综述[J].电脑知识与技术,2013(16):3826-3829.

[6]于丰华,雷宇桥,胡玉杰,等.基于OV7620循迹的智能車算法研究[J].微型机与应用,2013(17):69-71.

猜你喜欢

机械手单片机
吸盘机械手的仿生控制
基于机器视觉的开关操纵机械手研究
单片机在智能控制中的应用
拆弹帮手
基于单片机控制机械的压铸机械手优化设计
C8051F020与80C51单片机的异同点
工业机械手的设计
单片机I/O口模拟串行通讯的C51实现方法
单片机调试方法的探讨
用PIC单片机制作的时间继电器