CN108327815B - 基于视觉控制的工厂无人运料搬运车 - Google Patents
基于视觉控制的工厂无人运料搬运车 Download PDFInfo
- Publication number
- CN108327815B CN108327815B CN201810125797.6A CN201810125797A CN108327815B CN 108327815 B CN108327815 B CN 108327815B CN 201810125797 A CN201810125797 A CN 201810125797A CN 108327815 B CN108327815 B CN 108327815B
- Authority
- CN
- China
- Prior art keywords
- vehicle
- module
- carrier
- raspberry
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D63/00—Motor vehicles or trailers not otherwise provided for
- B62D63/02—Motor vehicles
- B62D63/025—Modular vehicles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D63/00—Motor vehicles or trailers not otherwise provided for
- B62D63/02—Motor vehicles
- B62D63/04—Component parts or accessories
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Robotics (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于视觉控制的工厂无人运料搬运车,包括搬运车本体以及安装在搬运车上的机械爪,还包括:通过安装在架子上的摄像头;基于树莓派的数据处理模块,用于完成待搬运物体和搬运车的识别,找出它们对应的位置;将计算出来的搬运车的行进路线按顺序通过红外发射模块将信息编码后发射出去;安装在搬运车本体上的STM32解码模块,用于通过红外接收模块接收发射模块所发送的数据,解码成对应的执行动作信息后按照信息控制搬运车和机械爪的执行相应的动作。本发明无需设置引导线,节省了架设成本与维护成本。自由灵活,没有固定的线路,线路可以随时改变。可移植性强。
Description
技术领域
本发明涉及机械领域,具体涉及一种基于视觉控制的工厂无人运料搬运车。
背景技术
现代主流的自动分拣搬运系统的核心传送机制主要是多轴滑台和传送带,只适于分拣底部平坦且具有刚性的包装规整的物品,诸如包装不规整、袋装或表面凹凸不平的物品都并不适用,除此之外还有着投资高、占地面积大等缺点。这使得自动分拣搬送装置只常见于大型的核心物流中心,地方小型的物流分配中心并未普及这种设备。而我国是全球最大的物流中心,加快物流分拣效率势在必行。
为了能够使自动分拣系统普及到地方小型物流中心,加快地方小型物流中心的分拣效率,设计一种廉价且精度高的新型自动分拣搬运装置很有必要。
发明内容
为解决上述问题,本发明提供了一种基于视觉控制的工厂无人运料搬运车。
为实现上述目的,本发明采取的技术方案为:
基于视觉控制的工厂无人运料搬运车,包括搬运车本体以及安装在搬运车上的机械爪,还包括
图像采集模块,通过安装在架子上的摄像头进行图像数据的采集;
数据处理模块,通过树莓派进行图像的降噪、灰度化、Sobel边缘检测、打标签、RGB自动检测、二值化处理从而对待搬运物体和搬运车进行识别,找出它们对应的位置;将计算出来的搬运车的行进路线按顺序通过红外发射模块将信息编码后发射出去;
安装在搬运车本体上的STM32解码模块,用于通过红外接收模块接收红外发射模块所发送的数据,解码成对应的执行动作信息后按照信息控制搬运车和机械爪的执行相应的动作。
优选地,所述树莓派采用树莓派3代B+型,与摄像头连接一起放在架子上来处理图像;所述STM32解码模块采用STM32F103。
优选地,所述摄像头采用树莓派的原装摄像头,该摄像头通过FFC排线与树莓派上的CSI接口相连。
优选地,所述搬运车本体顶面为白色,其上黏贴有表示车头的红色标记条和表示车尾的蓝色标记条,且所述机械爪外涂抹有白色涂层。如果车有多台,车尾的标记可换为其他颜色。
优选地,所述红外发射模块采用ALIENTEK精英STM32开发板配套的遥控器,所述红外线接收模块采用IRM3638红外接收头。
优选地,所述搬运车本体内部安装MD9110A直流电机驱动板和两个直流电机。
优选地,使用边缘检测与打标签的方法自动检测目标及测量目标的RGB值,无需事先知道阈值;可适应不同光照场景下物体的自动检测。
本发明通过放置在厂房顶部带摄像头的树莓派主控板进行图像采集和图像处理,自动识别AGV小车的位置和在线路和送料点放置的颜色标识物,通过物联网技术接收主机指令后计算出小车与目标点的最优路线,引导小车行走、转向、减速、停站。使用了光电感应和超声装置实现中途蔽障功能。
本发明与传统方案相比具有以下优点:(1)无需设置引导线,节省了架设成本与维护成本。(2)自由灵活,没有固定的线路,线路可以随时改变。(3)可移植性强,当需更换产线或更换厂区的时候无需重新架设路线,只需放好颜色标识物即可。(4)无需事先知道阈值即可自动检测目标及测量目标的RGB值。可适应不同光照场景下物体的稳定识别。
附图说明
图1为本发明实施例的系统总体框图。
图2为L9110H管脚图。
图3为MD9110A驱动板构造图。
图4为目标定位流程图。
图5为标定黑色大区域流程。
图6为标定车方位流程。
图7为判断橙黄色和黑色流程。
图8为求转向角图例。
图9为任务一流程图。
图10为任务二流程图。
图11为任务三、四路线框图。
图12为红外解码流程图。
具体实施方式
为了使本发明的目的及优点更加清楚明白,以下结合实施例对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明实施例提供了一种基于视觉控制的工厂无人运料搬运车,包括搬运车本体以及安装在搬运车上的机械爪,还包括
图像采集模块,通过安装在架子上的摄像头进行图像数据的采集;
数据处理模块,通过树莓派进行图像的降噪、灰度化、二值化、RGB检测、Sobel边缘检测、打标签处理从而对待搬运物体和搬运车进行识别,找出它们对应的位置;将计算出来的搬运车的行进路线按顺序通过红外发射模块将信息编码后发射出去;
安装在搬运车上的STM32解码模块,用于通过红外接收模块接收红外发射模块所发送的数据,解码成对应的执行动作信息后按照信息控制搬运车和机械爪的执行相应的动作。
所述树莓派采用树莓派3代B+型,与摄像头连接一起放在架子上来处理图像;所述STM32解码模块采用STM32F103,本方案使用的是以STM32F103芯片为处理器的ALIENTEK精英开发板,安放在搬运车上主要用于解码红外接收模块接收到红外信号并控制车和机械爪执行相应动作。
树莓派为一款以水果名字命名的只有信用卡大小的单计算机板,内部主要搭载Linux系统,支持python、java等多种语言,主要编程语言为python。CPU是四核64位1.2GHz主频的ARM Cortex-A53,1GB(LPDDR2)的运行内存,板载4个USB2.0的接口、1个HDMI视频/音频连接器、1个RCA视频/音频连接器、1个CSI摄像机连接器和40个GPIO引脚。树莓派的官方软件源有大量适合系统的软件应用,下载配置合适的软件可以方便树莓派的编程使用,如VNC server可以通过局域网实现远程连接树莓派。
所述摄像头采用树莓派的原装摄像头带有OV5647感光芯片,拥有500万像素,默认的静态图片分辨率是2592*1944。该摄像头与树莓派的硬件连接非常简单,只需将FFC排线一端连接到摄像头,一端连接到树莓派上的CSI接口即可。CSI接口位于HDMI接口和RCA接口之间,在连接时要注意排线上的金属触点一面与接口上有金属触点的一面相接。
所述搬运车内部安装MD9110A直流电机驱动板和两个直流电机。MD9110A直流电机驱动板采用L9110H驱动芯片,芯片管脚图如图2。IA、IB为输入端,接输入信号;OA、OB为输出端,接直流电机的两端。当IA为高电平,IB为低电平时,OA输出高电平,OB输出低电平;当IA为低电平,IB为高电平时,OA输出低电平,OB输出低电平;当IA、IB同为高电平或同低电平时,OA、OB输出为低电平。对应关系如表1。
表1 L9110H输入输出端口对应关系
MD9110A直流电机驱动板接线图如图3所示,IN1、IN2分别接控制左边电机的L9110H芯片的IA和IB;IN3、IN4分别接控制右边电机的L9110H芯片的IA和IB。系统采取同侧前后轮同步驱动的方法控制车子的前进、后退、左转和右转。当车子前进时,左右两个电机同步正相转动,即IN1、IN3接高电平,IN2、IN4接低电平;当车子后退时,左右两个电机同步反相转动,即IN1、IN3接低电平,IN2、IN4接高电平;当车子左转时,左边电机反相转动,右边电机正相转动,即IN2、IN3接高电平,IN1、IN4接低电平;当车子右转时,左边电机正相转动,右边电机反相转动,即IN1、IN4接高电平,IN2、IN3接低电平。具体的对应关系如表2所示。
表2 MD9110A输入与电机状态对应表
所述机械爪采用夹钳式的机械爪,由金属制的两个“手指”和伺服马达构成,通过伺服马达转动的角度控制两个“手指”间的角度,从而实现机械爪的张开与闭合。伺服马达的控制一般需要周期20ms的PWM信号,通过0.5ms-2.5ms范围内的高电平控制其旋转角度。以180度的伺服马达为例,0.5ms对应-90度,1.0ms对应-45度,1.5ms对应0度,2.0ms对应45度,2.5ms对应90度。在实际使用中可根据机械爪需要张开多少角度来设置相应的PWM脉宽。
本发明使用的是ALIENTEK精英STM32开发板配套的遥控器作为红外发射模块,该遥控器使用的38KHz的NEC编码协议,本项目设计选取的6个按键均为低电平导通,分别代表了前进、后退、左转、右转、机械爪张开、机械爪闭合。红外线接收模块使用的是常用的IRM3638红外接收头。IRM3638接收频率:38KHz-56KHz,接收距离:L0°(0度角)=15m L45°(45度角)=8M,具有抗干扰能力强,能抵挡环境干扰光线。一个管脚接5V电源,一个管脚接地,一个管脚为输出,当接收到红外线信号时,输出管脚输出解调后的红外线编码信号。输出管脚接STM32的TIM4_CH4上,使信号在STM32中解码。
本具体实施的软件系统采用以下设计方案:
在硬件连接好摄像头后,需要在树莓派上设置方能使用,不同版本的树莓派Linux系统配置步骤可能稍有不同。在2017年4与10日发布的raspbian-jessie版本中,首先在Shell中输入sudo raspi-config进入raspi-config组件中,选择Interfacing Options后点击Camera,系统会弹出一个弹窗询问是否要允许使用摄像头,选择Yes重启后便可配置成功。
在配置成功后,在Shell中输入raspistill-w 150-h 100-e bmp-o vic.bmp-t200后按回车,在200ms后,便可得到一幅150*100的名为vic的24为BMP图片。在实际使用中,为了实现自动拍摄图像,会在Xojo工程中添加一个名为piccatch的方法,在方法中定义一个Shell,往在Shell中输入raspistill-w 150-h 100-e bmp-o vic.bmp-t 200命令。只要在程序中调用这个piccatch方法便可实现拍摄图像的功能。
本设计方案采取的是150*100的BMP图像。这种大小的BMP图像与常见的BMP图像的位图数据排列方式稍有不同,用Ultra Edit软件打开一幅150*100的图片,可以发现图片每行位图数据的末尾都有2Byte的00占位,这是因为BMP每行像素点必须为4的倍数。了解BMP图像的组成后,便可实现程序中对BMP图像的准确读入与输出存储。
本项目选择采用中值滤波处理的方式进行图像去噪处理。中值滤波的基本思路是将一个含有奇数点的滑动窗口扫描图片的每一点,把窗口内像素点按灰度大小进行排序,取该区域中灰度的中值作为当前像素点的灰度值。窗口大小一般为3*3或5*5,窗口越大滤波效果越好,但处理时间越长,实际使用中可根据需要选取合适的窗口。
由于需要识别不同颜色目标,必须要对图片的RGB进行保留,所以对24bi t的图像进行中值滤波可以先将其按R、G、B三个通道分割成3组8bi t的图片数据,分别对三个数据进行中值滤波,最后再将处理后的图片数据按照原来的顺序储存成24bit的图像。中值滤波处理也会消耗一定时间,在实际使用中可根据需要决定是否要进行中值滤波。
本项目采用Sobel算子进行边缘检测。Sobel算子根据像素点上下、左右邻点的灰度加权差在边缘处达到极值这一现象来检测边缘。Sobel边缘检测算法虽然对边缘定位的精度不是很高,但是其对噪声有平滑作用,能提供较为精准的边缘方向信息,而且算法简单处理速度快,是一种被广泛使用的边缘检测算法。
由Sobel提出的Sobel算子是一种结合局部平均和差分运算的边缘检测算法,Sobel具有水平和竖直两种算子,分别是:
一般采用Sobel卷积算子与图像数据进行卷积运算,该方法是以Sobel算子在f(x,y)为中心的邻近区域内计算水平和竖直方向的偏导数:
计算梯度的公式为:
卷积计算后将Sx和Sy带入式(4)中求得像素点的梯度值,在整幅图像的梯度值求出来后,将梯度值与合适的阈值相比较,判断得出边界点。
在进行边缘处理后得到的二值化图像,所得到的图像中目标物体的边缘已用白色标记,其他区域用黑色标记。为了给目标定位,首先要把指定的目标区域从整个图像区域中抽取出来,舍弃掉无用的图像信息。由于整个区域内的目标物体很多,所以要给每一个的目标打上特殊的记号,以此将不同目标物体区分开来。
为了实现上述功能,这里使用的是一种叫做打标签的方法,给每一个符合条件的连通区域打上唯一的标签。打标签处理的基本思想是遍历整幅二值化图像,判断指定灰度的像素点属于哪一个连通区域,给每一个不同的连通域进行编号,以此来辨别不同的连通域。
这里使用的打标签处理的方法是扩散式的,首先需要设置一个与原图像尺寸大小相同的标签矩阵图像,用来记录每一个符合条件的像素点的编号,以此来描述不同连通域的划分结果。完整的打标签处理步骤如下:
设标签数label=0,需要给灰度值为0的连通域打上标签。将二值图像按照从左至右,从上到下扫描像素点,寻找灰度值为0的像素点且没有打上编号的像素点。
若某像素点符合灰度值为0的像素点且没有打上编号条件,则暂停接下去的扫描,label=label+1,并且给此像素点打上编号label,即给标签矩阵中与此像素点有相同坐标的点设置其值为label并进入步骤(3)。
随后按照从左至右、从上至下;从右至左、从下至上;从左至右、从下至上;从右至左、从上至下这四个方向分别对图像做四次遍历,寻找编号为label的像素点,并以此像素点为九宫格的中心点,判断与它相连的8个像素点是否符合灰度值为0的像素点且没有打上编号这个条件,若符合条件则打上标签label。这么做的目的是先从图像中标记完编号为label的连通域。
进行完步骤(3)后,从原来暂停的坐标开始继续扫描剩下的像素点,若某像素点符合灰度值为0的像素点且没有打上编号的条件则进入步骤(2)……如此循环直至遍历完整幅图像。
以上便是打标签处理算法的完整步骤,步骤(3)之所以对图像做四次遍历,是为了保护边缘不平滑的区域的细节部分,这个步骤非常地耗时,所以对于待识别目标边缘平滑的情况可以根据需要选择遍历的次数与方向,以此来减少处理的时间。
在给整幅图像做完标签处理后,找出标签相同的连通域,记录下它们所占的像素数量和像素坐标,求出坐标平均值便是此连通域的中心点。流程图如4。
本课题目标识别的实现方案有两种:
可以直接根据RGB的值判断目标所在的位置。这种方法的特点是运算速度快,但判断目标的中心不够准确,只能判断目标的大致中心位置,而且受光照影响大,不同的光照下RGB的判断阈值变化大,环境稍有改变,需要不断调整阈值才能达到较好效果。
可以使用边缘检测加R、G、B三者间大小的关系判断目标所在位置。这种方法的特点是运算速度较慢,但判断目标的中心较(1)准确,而且受光照影响较(1)小,阈值设置范围较(1)宽。
在本课题中,根据两种方案的优缺点,不同的识别目标采用了不同的方案。
黑色大区域识别
黑色大区域所占的面积很大,只需要知道它的大致中心点即可,所以采用了直接RGB识别法。根据黑色的RGB都很小的特点选择合适的阈值,根据阈值分割出图像上黑色的像素点,之后进行打标签处理。根据黑色大区域面积大、占像素多的特点,找出所占像素点数量最多的标签及其坐标,求出它们的坐标平均值便是黑色大区域的大致中心点坐标。流程图如图5。
搬运车位置识别
搬运车上盖有一个贴有红色条和蓝色条的纸盒子,红色条代表头部,蓝色条代表尾部。由于在搬运过程中需要不断地识别判定车子所在位置才能更好地控制车子的行进,所以在这里处理速度是关键,选择直接RGB识别法。红色的RGB值特点是R的值很大,G和B的值都比较小;蓝色的RGB特点是B的值很大,R和G的值都比较小。整个区域内蓝色和红色的区域都理应只有一个,没有打标签必要。根据它们RGB的特点,选择合适的RGB阈值找出符合条件的像素点,再分别求坐标均值便可识别出它们的位置,用它们的坐标点表示车的位置,而车头的朝向则用两点表示的向量方向和X轴的夹角表示,流程框图如图6。
待搬运物体识别
待搬运物体的规格为4cm*4cm*4cm,所以在摄像头拍摄的照片中它们所占的像素点比较小,为了能够更加精确地确定出它们所在的位置坐标,这里选用边缘检测加阈值判断的方法来识别它们。根据边缘检测算法的根本是利用边缘处灰度值急剧变化的原理,所以在抽取时应选用在边缘处变化较大的颜色通道来进行边缘检测以达到更好地效果。根据白色的RGB值都很大,黑色R、G、B值都很小,橙黄色的R和G值很大,B值很小的特点,选用蓝色通道的值进行边缘检测便可以把橙黄色和黑色提取出来。为了区别橙黄色和黑色物体,采用阈值判断的方法:若某个标签的中心点像素的R和G值大于对应阈值且B的值小于指定阈值,则判断为橙黄色物体,若某个标签中心点像素的R、G、B值都小于指定阈值,则判定为黑色物体。具体的流程图如图7。
行走路线的计算
转角判断原理
在知道目标点坐标、红色点和蓝色点坐标后,要使车头转向目标必须要让车转过一定角度。为了实现这一步骤首先要判断车的转向和转角。
如图8所示,由图可知图上的坐标系与标准坐标系不太一样,y轴的正负方向与标准坐标系的正负方向相反,所以在此坐标系的逆时针转动(左转)对应标准坐标系的顺时针转动,在此坐标系的顺时针转动(右转)对应标准坐标系的逆时针转动。经测试发现车的转角在红色中心点附近。
设红色中心点坐标为(x_red,y_red),蓝色中心点坐标为(x_blue,y_blue),目标中心点坐标为(x_aim,y_aim)。
则向量l1=(x1,y1),其中
向量l2=(x2,y2),其中
两者的向量积为
判断了转向后需要判断转角,即为两向量间的夹角α(夹角为小于180°的角),根据向量点乘的原理可得
距离判断原理
为了判断车与目标的大致距离,需要知道红色条中心点与目标间的距离,设红色中心点坐标为(x_red,y_red),目标中心点的坐标为(x_aim,y_aim),由两点间距离公式得红色中心点与目标中心点距离L为
任务一路线
任务一是要将黑色立方体运送到黑色区域。首先要识别出黑色区域的中心点坐标,为了能够减少抓取单个立方体的时间,先令搬运车径直驶向黑色大区域将一些立方体推入黑色区域中。然后检测黑色立方体的位置,计算出黑色立方体与车的距离,按顺序由近及远抓取黑色立方体并运送至黑色区域。程序流程如图9,当红色条中心点与蓝色条中心点构成的向量和红色条中心点与目标构成的向量之间的夹角小于指定值时判断为已对准目标。即使极小的角度偏差,当距离远了之后,误差也会变大。在驶向黑色立方体时,为了减少车的转弯精度不准带来的不良影响,设置两次判断是否对准目标。首先使车转向目标方向,判断红色条中心点与目标的距离,让车行驶一半的距离,再判断一次车是否对准目标,对准目标后再行进至目标。
任务二路线
任务二是要将黑色立方体搬运至红色区域。为了减少边框外无用信息的输入,本方案并没有将红色区域拍摄进来,判断色红区域位置是通过寻找缺口位置并记下缺口中心坐标来实现的。任务二与任务一的大体步骤相似,行驶至对应目标是也是进行两次判断车是否对齐目标。
首先令车驶向缺口位置,之后拍照判断黑色立方体的位置并计算它们与车的距离,按由近及远的顺序抓取黑色立方体。待抓取完黑色立方体并后退原来一半距离的位置,之后令车尾部对齐坐标为(5,40)的位置,对齐后使车后退至坐标(5,40)的位置再令车头转向缺口中心点,对齐后行进至缺口中心点,张开机械爪将立方体放置红色区域并后退一段距离,继续寻找下一个立方体。具体的程序流程如图10。
任务三、任务四路线
任务三是将橙黄色立方体从黑色立方体间分拣出来并搬运到红色区域;任务四是将橙黄色乒乓球从黑色乒乓球中分拣出来并搬运至红色区域。如何将橙黄色物体和黑色物体区分开来已在前文叙述,在此不再赘述。
在识别出橙黄色物体和黑色物体位置后,需要把橙黄色物体从中抓取出来放至红色区域。为了不使车触碰到搬运目标外的其他待搬运目标而改变其他搬运目标的原始位置,这里采取的方案是计算橙黄色物体与车的距离,每次搬运离车最近的橙黄色物体。为了减少行走过程中黑色物体误入机械爪抓取区域内的几率,设置机械爪在行走过程中全程闭合,只有距橙黄色抓取目标两次最小行进距离处,才将机械爪张开以便抓取目标。抓取到目标后,使车尾部转向(5,40)与之对齐后,判断蓝色条中心点到(5,40)的距离并后退至此坐标。当车到达(5,40)后,判断车身向量和缺口中心点与红色条中心构成的向量的角度,并使车头转向直至对齐缺口中心点,而后车辆前进将物体送至缺口中心,张开机械爪将物体放置到红色区域,然后后退一段距离并闭合机械爪,此部分的程序流程如图11。
红外遥控
在计算好搬运装置的行走路线后,根据行走路线按顺序给STM32发送相应指令。红外发射模块这里使用的是遥控器,遥控器的数如为低电平有效,所以按照指令将遥控器的相应端口置零一段时间即可。
遥控器使用的是NEC编码协议,有下列特征:载波频率为38Khz;位时间为1.125ms或2.25ms;8位地址和8位指令长度;PWM脉冲位置调制;地址和命令2次传输(确保可靠性)。在NEC编码中,逻辑0由560us脉冲+560us低电平构成,逻辑1由560us脉冲+1680us低电平构成。NEC协议的编码数据格式由同步码(9ms低电平+4.5ms高电平)、地址码、地址反码、控制码和控制反码构成,除同步码外都是8位数据格式,地位在前,高位在后。每个指令占时100ms,如果一个按键按了之后未松开,则发送连发码(9ms低+2.5m高+0.56ms低+97.94ms高)。接收头在没有接收到信号时为低电平,接收到信号时为高电平,所以在接收端的输出:逻辑0由560us低电平+560us高电平构成,逻辑1由560us低电平+1680us高电平构成。了解了NEC编码协议后,根据NEC编码协议的特点,利用STM32的输入捕获功能捕获脉冲高电平的时间,根据其判断接收到的码和NEC编码库对比便可知道发送的什么指令。所谓的输入捕获的原理设置定时器为外部触发,当外部有上升沿时触发,定时器开启工作,当检测到下降沿是关闭定时器,记下这段时间便是高电平的时间。整个接收红外线解码的流程图如图12。
本具体实施代替人工搬运,降低劳动强度;可组合性强,料车加驱动控制单元即可轻易实现;柔性好,自动化程度高和智能化水平高,AGV的行驶路径可以根据仓储货位要求、生产工艺流程等改变而灵活改变,并且运行路径改变的费用与传统的输送带和刚性的传送线相比非常低廉。投资周期1~2个月,改造周期1日~1周,与物流线设备对比投资周期缩短一倍,改造周期缩短8倍以上。成本与物流线设备对比新建成本大幅度削减,运行成本为极小的用电量不存在物流线设备空运转浪费现象,生产布局变化时改造成本极低,只需改变轨道即,浪费为零。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (6)
1.基于视觉控制的工厂无人运料搬运车,包括搬运车本体以及安装在搬运车上的机械爪,其特征在于,还包括:
图像采集模块,通过安装在架子上的摄像头进行图像数据的采集;
数据处理模块,通过树莓派进行图像的降噪、灰度化、Sobel边缘检测、打标签、RGB自动检测、二值化处理从而对待搬运物体和搬运车进行识别,找出它们对应的位置;将计算出来的搬运车的行进路线按顺序通过红外发射模块将信息编码后发射出去;
选择采用中值滤波处理的方式进行图像降噪处理;中值滤波的基本思路是将一个含有奇数点的滑动窗口扫描图片的每一点,把窗口内像素点按灰度大小进行排序,取该区域中灰度的中值作为当前像素点的灰度值;
采用Sobel算子进行边缘检测;Sobel算子根据像素点上下、左右邻点的灰度加权差在边缘处达到极值这一现象来检测边缘,对噪声有平滑作用,能提供较为准确的边缘方向信息;
打标签处理的基本思想是遍历整幅二值化图像,判断指定灰度的像素点属于哪一个连通区域,给每一个不同的连通区域进行编号,以此来辨别不同的连通区域;
目标识别的实现方案有两种:直接根据RGB的值判断目标所在的位置、使用边缘检测加R、G、B三者间大小的关系判断目标所在位置;
根据两种方案的优缺点,对不同的识别目标采用了不同的方案:包括黑色大区域识别、搬运车位置识别、待搬运物体识别;
安装在搬运车本体上的STM32解码模块,用于通过红外接收模块接收红外发射模块所发送的数据,解码成对应的执行动作信息后按照信息控制搬运车和机械爪的执行相应的动作;
所述搬运车本体顶面为白色,其上黏贴有表示车头的红色标记条和表示车尾的蓝色标记条,且所述机械爪外涂抹有白色涂层。
2.如权利要求1所述的基于视觉控制的工厂无人运料搬运车,其特征在于,所述树莓派采用树莓派3代B+型,与摄像头连接一起放在架子或天花板上来处理图像;所述STM32解码模块采用STM32F103。
3.如权利要求1所述的基于视觉控制的工厂无人运料搬运车,其特征在于,所述摄像头采用树莓派的原装摄像头,该摄像头通过FFC排线与树莓派上的CSI接口相连。
4.如权利要求1所述的基于视觉控制的工厂无人运料搬运车,其特征在于,所述红外发射模块采用ALIENTEK精英STM32开发板配套的遥控器,所述红外线接收模块采用IRM3638红外接收头。
5.如权利要求1所述的基于视觉控制的工厂无人运料搬运车,其特征在于,所述搬运车本体内部安装MD9110A直流电机驱动板和两个直流电机。
6.如权利要求1所述的基于视觉控制的工厂无人运料搬运车,其特征在于,使用边缘检测与打标签的方法自动检测目标及测量目标的RGB值,无需事先知道阈值;可适应不同光照场景下物体的自动检测。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810125797.6A CN108327815B (zh) | 2018-02-08 | 2018-02-08 | 基于视觉控制的工厂无人运料搬运车 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810125797.6A CN108327815B (zh) | 2018-02-08 | 2018-02-08 | 基于视觉控制的工厂无人运料搬运车 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108327815A CN108327815A (zh) | 2018-07-27 |
CN108327815B true CN108327815B (zh) | 2020-06-12 |
Family
ID=62928537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810125797.6A Active CN108327815B (zh) | 2018-02-08 | 2018-02-08 | 基于视觉控制的工厂无人运料搬运车 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108327815B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108946167A (zh) * | 2018-08-15 | 2018-12-07 | 深圳市圆梦精密技术研究院 | 自动更换料架设备及自动更换料架的方法 |
CN109213156A (zh) * | 2018-08-27 | 2019-01-15 | 芜湖智久机器人有限公司 | 一种用于agv小车的全局引导系统及其方法 |
CN111861291B (zh) * | 2019-04-25 | 2024-05-17 | 北京京东振世信息技术有限公司 | 一种入库方法和入库系统 |
CN110759282A (zh) * | 2019-11-12 | 2020-02-07 | 齐齐哈尔大学 | 一种智能化起重装置 |
CN112001567B (zh) * | 2020-09-11 | 2023-11-10 | 中电九天智能科技有限公司 | 工厂的生产管理方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3307288B2 (ja) * | 1997-08-25 | 2002-07-24 | 株式会社デンソー | 移動ロボット |
JP6505442B2 (ja) * | 2015-01-14 | 2019-04-24 | サンナイス株式会社 | 無人車 |
CN205766102U (zh) * | 2016-05-30 | 2016-12-07 | 上海发那科机器人有限公司 | 具有区域移动能力的协作机器人 |
CN106044636B (zh) * | 2016-06-21 | 2018-08-31 | 烟台比尔电子科技有限公司 | 一种小型仓库智能装卸车 |
CN108147111A (zh) * | 2017-07-27 | 2018-06-12 | 大连大学 | 一种用于无人搬运车的机械手 |
-
2018
- 2018-02-08 CN CN201810125797.6A patent/CN108327815B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108327815A (zh) | 2018-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108327815B (zh) | 基于视觉控制的工厂无人运料搬运车 | |
US20190287265A1 (en) | System and method for visual identification, and system and method for classifying and sorting | |
CN109018810A (zh) | 对接货物容器的方法、装置、机器人和存储介质 | |
CN112149555B (zh) | 一种基于全局视觉的多仓储agv追踪方法 | |
CN101561680B (zh) | 一种自主车辆的嵌入式导引装置及其智能复合导引方法 | |
CN107065861A (zh) | 机器人集智能搬运、装卸于一体的方法和装置 | |
CN110347160A (zh) | 一种基于双摄像头扫码的自动引导车及其导航方法 | |
CN107066970B (zh) | 用于无轨导航agv的视觉定位方法以及装置和系统 | |
CN112605993B (zh) | 基于双目视觉引导的自动抓取档案机器人控制系统及方法 | |
CN112091925A (zh) | 一种基于机器视觉的物料搬运系统及搬运方法 | |
CN110716559A (zh) | 一种用于商场超市拣货机器人的综合控制方法 | |
CN111198496A (zh) | 一种目标跟随机器人及跟随方法 | |
CN114862301A (zh) | 基于二维码辅助定位的托盘叉车agv自动装载方法 | |
JPH11272328A (ja) | 色標識,移動ロボットおよび移動ロボットの誘導方法 | |
CN111167731B (zh) | 一种产品分拣方法、产品分拣系统和智能分拣机器人 | |
JP2006195685A (ja) | ロボットの走行軌道制御システム | |
US3632993A (en) | Color code system | |
US20200182623A1 (en) | Method, system and apparatus for dynamic target feature mapping | |
CN109032125B (zh) | 一种视觉agv的导航方法 | |
KR20180085324A (ko) | Rfid를 이용한 라인트레이서 운송로봇 | |
CN115170731A (zh) | 基于视觉slam与rfid构建集装箱堆场实时动态地图的方法及系统 | |
CN109947095A (zh) | 一种仓库搬运机器人 | |
Sun et al. | PanelPose: A 6D Pose Estimation of Highly-Variable Panel Object for Robotic Robust Cockpit Panel Inspection | |
CN116048088A (zh) | 一种基于mobilenet v2模型和灰度差比和的小车循迹方法 | |
JPS6198412A (ja) | 無人搬送車の誘導システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |