CN110096057A - 一种智能搬运小车控制*** - Google Patents
一种智能搬运小车控制*** Download PDFInfo
- Publication number
- CN110096057A CN110096057A CN201910286740.9A CN201910286740A CN110096057A CN 110096057 A CN110096057 A CN 110096057A CN 201910286740 A CN201910286740 A CN 201910286740A CN 110096057 A CN110096057 A CN 110096057A
- Authority
- CN
- China
- Prior art keywords
- master control
- control chip
- image
- angle
- axis
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 53
- 239000000463 material Substances 0.000 claims abstract description 44
- 230000008569 process Effects 0.000 claims abstract description 39
- 230000033001 locomotion Effects 0.000 claims abstract description 29
- 238000012545 processing Methods 0.000 claims abstract description 6
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims description 11
- 238000003708 edge detection Methods 0.000 claims description 11
- 230000001133 acceleration Effects 0.000 claims description 10
- 238000011897 real-time detection Methods 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000010276 construction Methods 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 3
- 238000001914 filtration Methods 0.000 claims description 3
- 230000007935 neutral effect Effects 0.000 claims description 3
- 230000000750 progressive effect Effects 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 claims description 2
- 230000011218 segmentation Effects 0.000 claims 1
- 230000000694 effects Effects 0.000 description 6
- 238000000605 extraction Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000011161 development Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 206010024642 Listless Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000739 chaotic effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000005195 poor health Effects 0.000 description 1
- 235000020004 porter Nutrition 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 102000012498 secondary active transmembrane transporter activity proteins Human genes 0.000 description 1
- 108040003878 secondary active transmembrane transporter activity proteins Proteins 0.000 description 1
- 230000000392 somatic effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0234—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0255—Control of position or course in two dimensions specially adapted to land vehicles using acoustic signals, e.g. ultra-sonic singals
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Electromagnetism (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种智能搬运小车控制***,包括供电模块、识别模块、六轴运动处理组件、云台、主控制芯片、超声波模块、PID控制电路、设在搬运小车手爪上的压力传感器、出发指令按键;所述识别模块与主控制芯片连接;所述六轴运动处理组件与主控制芯片连接;所述识别模块设置在云台上,所述主控制芯片与云台连接;所述超声波模块与主控制芯片连接;所述主控制芯片通过PID控制电路外接直流减速电机;所述压力传感器与主控制芯片连接;所述出发指令按键与主控制芯片连接;所述供电模块向主控制芯片、识别模块、超声波模块、压力传感器提供所需电压。本发明具有图像识别处理能力,能识别物料结构、二维码,同时能有效避免在搬运过程中物料的损坏。
Description
技术领域
本发明涉及智能机器人技术领域,更具体的,涉及一种智能搬运小车控制***。
背景技术
随着电商的迅猛发展(如淘宝、京东、拼多多等),快递成了现代生活不可缺少的一部分。在现代快递行业中,快递员需要将快递进行分拣及搬运,分拣工作通常是工作人员根据手机尾号进行快速分拣,而搬运工作是工作人员手工搬运或者借助一些简单的搬运工具。快递员经过长时间的工作会出现身体虚弱或者精神不佳等状况,若遇到重物快递或者易碎品快递,快递员很容易造成身体损伤、易碎品快递损坏或者分拣出错等情况。
而随着科技的发展,移动机器人日趋成熟,智能物料搬运小车作为移动机器人的一种,可以替代人们在恶劣的环境中搬运物料,避免危险,减少劳动力,有着广阔的发展前景。
目前,搬运小车大部分不具有图像识别功能,在搬运过程中容易产生错误搬运现象,而且现有技术中的搬运小车在搬运过程中无法避免易碎物料的损坏。
发明内容
本发明为了解决现有搬运小车不具有图像识别功能和无法避免搬运易碎物料造成损坏的问题,提供了一种智能搬运小车控制***,其具有图像识别能力,能对物料的结构、颜色、二维码进行有效的识别,且能有效避免物料的损坏。
为实现上述本发明目的,采用的技术方案如下:还包括用于识别物料结构、颜色和二维码的识别模块、用于实时检测搬运小车姿势的六轴运动处理组件、用于提高识别模块检测范围的云台、主控制芯片、用于测距和避障的超声波模块、用于控制驱动直流减速电机的PID控制电路、设置在搬运小车的手爪上的压力传感器、出发指令按键;
所述识别模块的输出端与主控制芯片的输入端电连接;
所述六轴运动处理组件的输出端与主控制芯片的输入端电连接,主控制芯片的输出端与六轴运动处理组件的输入端电连接,所述主控制芯片对小车的姿态进行监控与调整;
所述识别模块设置在云台上,所述主控制芯片的输出端与云台的输入端电连接;
所述超声波模块的输出端与主控制芯片的输入端电连接;所述主控制芯片的输出端通过PID控制电路外接直流减速电机;
所述压力传感器的输出端与主控制芯片的输入端电连接;
所述出发指令按键的输出端与主控制芯片的输入端电连接;
所述供电模块用于向主控制芯片、识别模块、超声波模块、压力传感器提供所需电压。
优选地,所述的识别模块为机器视觉模块openmv;所述机器视觉模块openmv包括OV7725摄像头芯片、摄像头,所述OV7725摄像头芯片与摄像头连接,所述摄像头通过内置在OV7725摄像头芯片内的机器视觉算法,实时对物料进行识别;所述的摄像头设有LED闪光灯,机器视觉模块openmv提供了高效的机器视觉算法,能精确对物料二维码的识别;
进一步地,所述对物料进行识别包括对物料二维码、物料形状、颜色、大小进行识别,根据对物料的识别能判断快递区是否有物料。
再进一步地,所述机器视觉算法对摄像头获取二维码的图像进行处理,具体如下:
S1:对图像进行二值化处理,公式如下:
其中,f(x,y)是点(x,y)处像素的灰度值;T为阈值;
S2:对得到的二值化的图像进行膨胀处理,具体如下:
式中:A代表原始图像;B代表结构元素,用于对A进行膨胀;Φ代表空集;
S3:对膨胀处理后的图像进行中值滤波进行降噪:
g(x,y)=median{f(x-k,y-l),(k、l∈W)}
其中,f(x,y)表示为原始图像,g(x,y)表示为处理后的图像,W为二维模板,k为在二维模板W内的x轴取值,l为在二维模板W内的y轴取值;
S4:对滤波后的图像进行边缘检测:
通过Sobel算子对图像进行边缘检测,计算图像的梯度;
先对梯度的向量公式进行定义,如下:
其中,Gx表示每个像素位置的偏x导数;Gy表示每个像素位置的偏y导数的值;
对图像梯度处理如下:
式中,为向量的模
Sobel算子水平方向模板:
-1 | 0 | 1 |
2 | 0 | 2 |
-1 | 0 | 1 |
Sobel算子垂直方向模板:
0 | 0 | 0 |
1 | 2 | -1 |
Sobel算子利用像素的四个方位上邻域的灰度值进行加权计算,依据其可在边缘点处达到极值,从而实现检测效果。这一方法不但具有良好的边缘检测效果,同时具有很好的平滑作用,可以为图像提供精确的边缘方向信息。
再进一步地,边缘检测后条码区域边界不是很完整,所以需要进一步修正边界,然后分割出一个较为完整的条码区域,所述条码分割方法如下:
D1:采用区域增长的方法对条码中的符号进行分割,按此修正条码边界;
D2:采用凸壳算法分割整个符号;
D3:重复N次以上步骤,得到一幅标准的图像,其中,N大于或等于3;
然后对图像进行解码,方法如下:
F1:对符号进行网格采样,对网格每一个交点上的图像像素取样,并根据阈值确定是深色块还是浅色块;
F2:构造一个位图,用二进制的“1”表示深色像素,“0”表示浅色像素,从而得到条码的原始二进制序列值;
F3:对得到条码的原始二进制序列值进行纠错和译码;
F4:根据条码的逻辑编码规则将原始二进制序列值转换成数据字。
优选地,所述六轴运动处理组件采用mpu6050,所述mpu-6050是整合性六轴运动处理组件,所述mpu6050包括加速度传感器、陀螺仪;所述mpu6050的角速度全格感测范围为±250、±500、±1000、±2000°/sec;所述mpu6050用于实时检测小车的姿态,在检测小车偏移角度过程中,采用滑动滤波来降低检测误差,所述的小车姿势包括俯仰角、偏航角、翻滚角。
进一步地,所述六轴运动处理组件检测小车的姿态,具体如下:
在确定小车偏移角度上,通过接收mpu6050的四元素(q0,q1,q2,q3)进行计算:
式中,a为一个常量,i、j、k分别表示x、y、z轴的单位向量;
欧拉角的方向余弦矩阵为:
其中,ψ为绕Z轴转动的角度,θ为绕X轴转动的角度,γ为绕Y轴转动的角度;
因为使用欧拉角微分方程使用大量的三角运算,这给CPU带来很大困难,多以用四元素法,计算量小,易于操作,比较适合于工程;
所以用欧拉角描述的方向余弦矩阵用四元素描述为:
所述六轴运动处理组件先把加速度传感器采集到的三维向量转化为单位向量,将陀螺仪采集到的数据gx、gy、gz,加速度传感器采集到的数据ax、ay、az输入六轴运动处理组件:
然后把四元素换算成方向余弦中的第三行的三个元素;将上一次的四元素的机体坐标参考系换算为中立的单位向量,具体如下:
vx=2(q1q3-q0q2)
vy=2(q0q1-q2q3)
式中,vx、vy、vz分别表示机体坐标x、y、z;
用一阶龙格库塔求解四元素微分方程:
q0=q0+(-q1·gx-q2·gy-q3·gz)·halfT
q1=q1+(q0·gx+q2·gz-q3·gy)·halfT
q2=q2+(q0·gy-q1·gz+q3·gx)·halfT
q3=q3+(q0·gz+q1·gy-q3·gx)·halfT
式中,T表示四元数更新周期;
最后根据四元素方向余弦阵和欧拉角的转换关系,把四元素转换成欧拉角:
式中,ψ为绕Z轴转动的角度,θ为绕X轴转动的角度,γ为绕Y轴转动的角度;
由此得出俯仰角、偏航角、翻滚角;
Pitch=asin(-2q1q3+2q0q2)·57.3
式中,pitch表示俯仰角;yaw表示偏航角,roll表示翻滚角。
优选地,所述云台为二自由度云台,所述云台包括两个舵机,其中一个舵机控制左右转动,另一个舵机控制上下转动,使识别模块的识别范围为左右180度、上下180度,提高检测范围。
优选地,所述压力传感器设置在搬运小车的手爪内,当手爪闭合时,主控制芯片检测压力传感器的值,若压力值超过某一数值,主控制芯片发出停止信号控制手爪停止闭合,从而做到能根据物料大小进行适应抓取物料,避免损坏物料。
进一步地,所述主控制芯片采用stm32f103zet6微处理芯片,所述stm32f103zet6微处理芯片通过串口与识别模块进行通讯并接收信息,通过I2C与六轴运动处理组件通讯接收小车偏移角度信息,通过PWM控制云台的转动及手爪的张合,通过PID控制电路控制直流减速电机的速度及前进位置,通过IO端口与超声波模块进行指令发送及接收距离。
本发明的有益效果如下:
1.本发明通过设置机器视觉模块openmv和机器视觉算法精确对物料结构、颜色和二维码进行有效的识别,进而判断物料区是否还有物料。
2.在手爪上,采用压力传感器,能精确检测抓取物料的力度,使物料完好无损;同时小车功耗低,能够在12V的电源供电基础上工作,能够实现快递分拣搬运节能化,自动化帮助快递工作人员的分拣搬运工作,减轻劳动者的劳动强度,提高工作效率。
附图说明
图1是本实施例智能搬运小车控制***结构图。
图2是本实施例基于LabVIEW对图像进行处理的过程原理图。
图3是本实施例相机标定的处理原理图。
图4是本实施例标定结果示意图。
图5是本实施例对应LabVIEW编程语言的程序框图。
图6是本实施例验证标定结果示意图。
图7是本实施例未进行色域提取前的图片。
图8是本实施例进行色域提取后的图片。
图9是本实施例在实际模拟环境中未进行色域提取前的图片。
图10是本实施例在实际模拟环境中进行色域提取前的图片。
具体实施方式
下面结合附图和具体实施方式对本发明做详细描述。
实施例1
如图1所示,一种智能搬运小车控制***,包括供电模块107,还包括用于识别物料结构、颜色和二维码的识别模块106、用于实时检测搬运小车姿势的六轴运动处理组件104、用于提高识别模块检测范围的云台102、主控制芯片101、用于测距和避障的超声波模块108、用于控制驱动直流减速电机的PID控制电路103、设置在搬运小车的手爪上的压力传感器109、出发指令按键105;
所述识别模块106的输出端与主控制芯片101的输入端电连接;
所述六轴运动处理组件104的输出端与主控制芯片101的输入端电连接,所述主控制芯片101的输出端与六轴运动处理组件104的输入端电连接,所述主控制芯片101对小车的姿态进行监控与调整;
所述识别模块106设置在云台102上,所述主控制芯片101的输出端与云台102的输入端电连接;
所述超声波模块108的输出端与主控制芯片101的输入端电连接;所述主控制芯片101的输出端通过PID控制电路103外接直流减速电机;
所述压力传感器109的输出端与主控制芯片101的输入端电连接;
所述出发指令按键105的输出端与主控制芯片101的输入端电连接,出发指令按键105用于传输出发信号给主控制芯片101;
所述供电模块107用于向主控制芯片101、识别模块106、超声波模块108、压力传感器109提供所需电压。
所述的识别模块106为机器视觉模块openmv;所述机器视觉模块openmv包括OV7725摄像头芯片、摄像头,所述OV7725摄像头芯片与摄像头连接,所述摄像头通过内置在OV7725摄像头芯片内的机器视觉算法,实时对物料进行识别;所述的摄像头设有LED闪光灯,所述OV7725摄像头芯片的IO端口与主控制芯片的IO端口电连接。
所述对物料进行识别包括对物料二维码、物料形状、颜色、大小进行识别。
所述机器视觉算法对摄像头获取二维码的图像进行处理,具体如下:
S1:对图像进行二值化处理,公式如下:
其中,f(x,y)是点(x,y)处像素的灰度值;T为阈值;
S2:对得到的二值化的图像进行膨胀处理,具体如下:
式中:A代表原始图像;B代表结构元素,用于对A进行膨胀;Φ代表空集;
S3:对膨胀处理后的图像进行中值滤波进行降噪:
g(x,y)=median{f(x-k,y-l),(k、l∈W)}
其中,f(x,y)表示为原始图像,g(x,y)表示为处理后的图像,W为二维模板,k为在二维模板W内的x轴取值,l为在二维模板W内的y轴取值;
S4:对滤波后的图像进行边缘检测:
通过Sobel算子对图像进行边缘检测,计算图像的梯度;
先对梯度的向量公式进行定义,如下:
其中,Gx表示每个像素位置的偏x导数;Gy表示每个像素位置的偏y导数的值;
对图像梯度处理如下:
式中,为向量的模
Sobel算子水平方向模板:
-1 | 0 | 1 |
2 | 0 | 2 |
-1 | 0 | 1 |
Sobel算子垂直方向模板:
0 | 0 | 0 |
1 | 2 | -1 |
Sobel算子利用像素的四个方位上邻域的灰度值进行加权计算,依据其可在边缘点处达到极值,从而实现检测效果。这一方法不但具有良好的边缘检测效果,同时具有很好的平滑作用,可以为图像提供精确的边缘方向信息。
本实施例在完成图像边缘检测后,需要对图像的二维码区域进一步修正边界,然后分割出完整的条码区域;所述条码分割方法如下:
D1:采用区域增长的方法对条码中的符号进行分割,按此修正条码边界;
D2:采用凸壳算法分割整个符号;
D3:重复N次以上步骤,得到一幅标准的图像,其中,N大于或等于3;
然后对图像进行解码,方法如下:
F1:对符号进行网格采样,对网格每一个交点上的图像像素取样,并根据阈值确定是深色块还是浅色块;
F2:构造一个位图,用二进制的“1”表示深色像素,“0”表示浅色像素,从而得到条码的原始二进制序列值;
F3:对得到条码的原始二进制序列值进行纠错和译码;
F4:根据条码的逻辑编码规则将原始二进制序列值转换成数据字。
本实施例所述六轴运动处理组件104采用mpu6050,所述mpu-6050是整合性六轴运动处理组件106,所述mpu6050包括加速度传感器、陀螺仪;所述mpu6050的角速度全格感测范围为±250、±500、±1000、±2000°/sec;所述mpu6050用于实时检测小车的姿态,所述的小车姿势包括俯仰角、偏航角、翻滚角;所述加速度传感器、陀螺仪分别与主控制芯片电连接。
本实施例所述云台102为二自由度云台,所述二自由度云台包括两个舵机,其中一个舵机控制左右转动,另一个舵机控制上下转动,使识别模块106的识别范围为左右180度、上下180度。
本实施例所述压力传感器109设置在搬运小车的手爪内,当手爪闭合时,主控制芯片101检测压力传感器109的值,若压力值超过某一数值,主控制芯片发出停止信号控制手爪停止闭合。
本实施例所述主控制芯片101采用stm32f103zet6微处理芯片,所述stm32f103zet6微处理芯片通过串口与识别模块106进行通讯并接收信息,通过I2C与六轴运动处理组件104通讯接收小车偏移角度信息,通过PWM控制云台102的转动及手爪的张合,通过PID控制电路103控制直流减速电机的速度及前进位置,通过IO端口与超声波模块108进行指令发送及接收距离。
本实施例工作原理如下:按下出发指令按键105,主控制芯片101接收到出发指令后,通过识别模块识别106判断物料区是否有物料,并识别物料二维码信息确定物料的位置信息,主控制芯片101通过超声波模块108进行测距和避障,并控制PID控制电路103驱动直流减速电机前进,同时通过六轴运动处理组件106实时检测小车的姿势,进行抓取物料,通过设置在搬运小车的手爪上的压力传感器109,检测手爪握住物料的压力,不能超过设定值,避免物料损坏。
本实施例所述六轴运动处理组件检测小车的姿态,具体如下:
在确定小车偏移角度上,通过接收mpu6050的四元素(q0,q1,q2,q3)进行计算:
式中,a为一个常量,i、j、k分别表示x、y、z轴的单位向量;
欧拉角的方向余弦矩阵为:
其中,ψ为绕Z轴转动的角度,θ为绕X轴转动的角度,γ为绕Y轴转动的角度;
因为使用欧拉角微分方程使用大量的三角运算,这给CPU带来很大困难,多以用四元素法,计算量小,易于操作,比较适合于工程。
所以用欧拉角描述的方向余弦矩阵用四元素描述为:
所述六轴运动处理组件先把加速度传感器采集到的三维向量转化为单位向量,将陀螺仪采集到的数据gx、gy、gz,加速度传感器采集到的数据ax、ay、az输入六轴运动处理组件:
然后把四元素换算成方向余弦中的第三行的三个元素;将上一次的四元素的机体坐标参考系换算为中立的单位向量,具体如下:
vx=2(q1q3-q0q2)
vy=2(q0q1-q2q3)
式中,vx、vy、vz分别表示机体坐标x、y、z;
用一阶龙格库塔求解四元素微分方程:
q0=q0+(-q1·gx-q2·gy-q3·gz)·halfT
q1=q1+(q0·gx+q2·gz-q3·gy)·halfT
q2=q2+(q0·gy-q1·gz+q3·gx)·halfT
q3=q3+(q0·gz+q1·gy-q3·gx)·halfT
式中,T表示四元数更新周期;
最后根据四元素方向余弦阵和欧拉角的转换关系,把四元素转换成欧拉角:
式中,ψ为绕Z轴转动的角度,θ为绕X轴转动的角度,γ为绕Y轴转动的角度;
由此得出俯仰角、偏航角、翻滚角;
Pitch=asin(-2q1q3+2q0q2)·57.3
式中,pitch表示俯仰角;yaw表示偏航角,roll表示翻滚角。
本实施例基于机器视觉模块openmv进行视觉开发,以摄像头为视觉镜头,用python语言高效地实现了核心机器视觉算法。
视觉预处理:在视觉处理方面:首先基于LabVIEW视觉助手辅助openmv,得出阈值;然后将图像预处理,进行坐标变换,设定世界坐标,同时矫正镜头畸变,得出色块识别的阈值,从而根据快递的颜色就能找到目标快递,如图2所示。
相机标定:通过调用NI Vision Assistant里的Image Calibration来对相机进行标定,将相机的像素坐标系转化为世界坐标系,如图3所示。
标定结果,如图4所示(标定板上每个方格的边长为3cm)。
对应LabVIEW编程语言的程序框图为,如图5所示。
标定完成后,采用Vision Assistant的Clamp(Rake)来进行卡尺长度测量来验证标定结果,如图6所示。
如图6所示,可知:长度结果为21.16cm。
此标定结果在误差允许范围内。
当相机标定完成后,就能根据物料在图片中的坐标从而得出在显示中的坐标。
阈值校验:通过调用NI Vision Assistant里的Threshold checking来对色块的阈值进行校验。如图7所示,未进行色域提取前的图片。通过阈值调整对比后得到LAB参数为:(44,58,60,82,46,69),将此参数带入色域提取,得色域提取后的图片,如图8所示。通过阈值校验,用于寻找快递的阈值是具体值。
视觉色块实现:
色块识别的主要函数即为以下函数“
image.find_blobs(thresholds[,invert=False[,roi[,x_stride=2[,y_stride=1[,area_threshold=10[,pixels_threshold=10[,merge=False[,margin=0[,threshold_cb=None[,merge_cb=None]]]]]]]]]])
此函数的主要功能就是查找图像中的所有blob(通过阈值测试的连接像素区域),并返回image.blob描述每个blob的对象列表。而参数thresholds在以上LabVIEW处理步骤得到。
在实际模拟环境中,实测阈值,得到如图9所示的结果(未进行色域提取前的图片)。如图10所示,为将参数带入色域提取,得色域提取后的图片。图10中,色块被完全识别,测试结果良好。从而帮助分拣搬运小车在混乱的环境中准确地识别到快递。
通过以上手段,能实现在视觉上准确识别物料的颜色、大小和形状,从而准确地扫描物料上的二维码信息,并根据颜色找到出发区或者快递放置区。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (10)
1.一种智能搬运小车控制***,包括供电模块,其特征在于:还包括用于识别物料结构、颜色和二维码的识别模块、用于实时检测搬运小车姿势的六轴运动处理组件、用于提高识别模块检测范围的云台、主控制芯片、用于测距和避障的超声波模块、用于控制驱动直流减速电机的PID控制电路、设置在搬运小车的手爪上的压力传感器、出发指令按键;
所述识别模块的输出端与主控制芯片的输入端电连接;
所述六轴运动处理组件的输出端与主控制芯片的输入端电连接,所述主控制芯片的输出端与六轴运动处理组件的输入端电连接,所述主控制芯片对小车的姿态进行监控与调整;
所述识别模块设置在云台上,所述主控制芯片的输出端与云台的输入端电连接;
所述超声波模块的输出端与主控制芯片的输入端电连接;所述主控制芯片的输出端通过PID控制电路外接直流减速电机;
所述压力传感器的输出端与主控制芯片的输入端电连接;
所述出发指令按键的输出端与主控制芯片的输入端电连接;
所述供电模块用于向主控制芯片、识别模块、超声波模块、压力传感器提供所需电压。
2.根据权利要求1所述的智能搬运小车控制***,其特征在于:所述的识别模块为机器视觉模块openmv;所述机器视觉模块openmv包括OV7725摄像头芯片、摄像头,所述OV7725摄像头芯片与摄像头连接,所述摄像头通过内置在OV7725摄像头芯片内的机器视觉算法,实时对物料进行识别;所述的摄像头设有LED闪光灯。
3.根据权利要求2所述的智能搬运小车控制***,其特征在于:所述对物料进行识别包括对物料二维码、物料形状、颜色、大小进行识别。
4.根据权利要求2所述的智能搬运小车控制***,其特征在于:所述机器视觉算法对摄像头获取二维码的图像进行处理,具体如下:
S1:对图像进行二值化处理,公式如下:
其中,f(x,y)是点(x,y)处像素的灰度值;T为阈值;
S2:对得到的二值化的图像进行膨胀处理,具体如下:
式中:A代表原始图像;B代表结构元素,用于对A进行膨胀;Φ代表空集;
S3:对膨胀处理后的图像进行中值滤波进行降噪:
g(x,y)=median{f(x-k,y-l),(k、l∈W)}
其中,f(x,y)表示为原始图像,g(x,y)表示为处理后的图像,W为二维模板,k为在二维模板W内的x轴取值,l为在二维模板W内的y轴取值;
S4:对滤波后的图像进行边缘检测:
通过Sobel算子对图像进行边缘检测,计算图像的梯度;
先对梯度的向量公式进行定义,如下:
其中,Gx表示每个像素位置的偏x导数;Gy表示每个像素位置的偏y导数的值;
对图像梯度处理如下:
式中,▽f为向量的模
5.根据权利要求4所述的智能搬运小车控制***,其特征在于:完成图像边缘检测后,需要对图像的二维码区域进一步修正边界,然后分割出完整的条码区域;所述条码分割方法如下:
D1:采用区域增长的方法对条码中的符号进行分割,按此修正条码边界;
D2:采用凸壳算法分割整个符号;
D3:重复N次以上步骤,得到一幅标准的图像,其中,N大于或等于3;
然后对图像进行解码,方法如下:
F1:对符号进行网格采样,对网格每一个交点上的图像像素取样,并根据阈值确定是深色块还是浅色块;
F2:构造一个位图,用二进制的“1”表示深色像素,“0”表示浅色像素,从而得到条码的原始二进制序列值;
F3:对得到条码的原始二进制序列值进行纠错和译码;
F4:根据条码的逻辑编码规则将原始二进制序列值转换成数据字。
6.根据权利要求1所述的智能搬运小车控制***,其特征在于:所述六轴运动处理组件采用mpu6050,所述mpu-6050是整合性六轴运动处理组件,所述mpu6050包括加速度传感器、陀螺仪;所述mpu6050的角速度全格感测范围为±250、±500、±1000、±2000°/sec;所述mpu6050用于实时检测小车的姿态,所述的小车姿势包括俯仰角、偏航角、翻滚角。
7.根据权利要求6所述的智能搬运小车控制***,其特征在于:所述六轴运动处理组件检测小车的姿态,具体如下:
在确定小车偏移角度上,通过接收mpu6050的四元素(q0,q1,q2,q3)进行计算:
式中,a为一个常量,i、j、k分别表示x、y、z轴的单位向量;
欧拉角的方向余弦矩阵为:
其中,ψ为绕Z轴转动的角度,θ为绕X轴转动的角度,γ为绕Y轴转动的角度;
采用欧拉角描述的方向余弦矩阵用四元素描述为:
所述六轴运动处理组件先把加速度传感器采集到的三维向量转化为单位向量,将陀螺仪采集到的数据gx、gy、gz,加速度传感器采集到的数据ax、ay、az输入六轴运动处理组件:
然后把四元素换算成方向余弦中的第三行的三个元素;将上一次的四元素的机体坐标参考系换算为中立的单位向量,具体如下:
vx=2(q1q3-q0q2)
vy=2(q0q1-q2q3)
式中,vx、vy、vz分别表示机体坐标x、y、z;
用一阶龙格库塔求解四元素微分方程:
q0=q0+(-q1·gx-q2·gy-q3·gz)·halfT
q1=q1+(q0·gx+q2·gz-q3·gy)·halfT
q2=q2+(q0·gy-q1·gz+q3·gx)·halfT
q3=q3+(q0·gz+q1·gy-q3·gx)·halfT
式中,T表示四元数更新周期;
最后根据四元素方向余弦阵和欧拉角的转换关系,把四元素转换成欧拉角:
式中,ψ为绕Z轴转动的角度,θ为绕X轴转动的角度,γ为绕Y轴转动的角度;
由此得出俯仰角、偏航角、翻滚角;
Pitch=asin(-2q1q3+2q0q2)·57.3
式中,pitch表示俯仰角;yaw表示偏航角,roll表示翻滚角。
8.根据权利要求1所述的智能搬运小车控制***,其特征在于:所述云台为二自由度云台,所述云台包括两个舵机,其中一个舵机控制左右转动,另一个舵机控制上下转动,设置识别模块的识别范围为左右180度、上下180度。
9.根据权利要求1所述的智能搬运小车控制***,其特征在于:所述压力传感器设置在搬运小车的手爪内,当手爪闭合时,主控制芯片检测压力传感器的值,若压力值超过某一数值,主控制芯片发出停止信号控制手爪停止闭合。
10.根据权利要求2~9任一项所述的智能搬运小车控制***,其特征在于:所述主控制芯片采用stm32f103zet6微处理芯片,所述stm32f103zet6微处理芯片通过串口与识别模块进行通讯并接收信息,通过I2C与六轴运动处理组件通讯接收小车偏移角度信息,通过PWM控制云台的转动及手爪的张合,通过PID控制电路控制直流减速电机的速度及前进位置,通过IO端口与超声波模块进行指令发送及接收距离。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910286740.9A CN110096057A (zh) | 2019-04-10 | 2019-04-10 | 一种智能搬运小车控制*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910286740.9A CN110096057A (zh) | 2019-04-10 | 2019-04-10 | 一种智能搬运小车控制*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110096057A true CN110096057A (zh) | 2019-08-06 |
Family
ID=67444629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910286740.9A Pending CN110096057A (zh) | 2019-04-10 | 2019-04-10 | 一种智能搬运小车控制*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110096057A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111452046A (zh) * | 2020-03-31 | 2020-07-28 | 佛山科学技术学院 | 基于虚拟现实的排爆机器人***、控制方法及存储介质 |
CN114185284A (zh) * | 2021-10-20 | 2022-03-15 | 福建江夏学院 | 基于stm32物联网侦察***及其控制方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080249663A1 (en) * | 2005-09-27 | 2008-10-09 | Honda Motor Co., Ltd. | Robot control information generator and robot |
CN205855355U (zh) * | 2016-08-16 | 2017-01-04 | 国网山东省电力公司滨州市滨城区供电公司 | 货物发放自动搬运器 |
CN106383514A (zh) * | 2015-07-29 | 2017-02-08 | 湖北汽车工业学院 | 一种远程遥控探测车 |
CN206178473U (zh) * | 2016-10-18 | 2017-05-17 | 张锦迪 | 一种智能物料搬运小车的控制*** |
CN108268825A (zh) * | 2016-12-31 | 2018-07-10 | 广州映博智能科技有限公司 | 基于移动云台的三维人脸跟踪及表情识别*** |
CN108297084A (zh) * | 2018-03-16 | 2018-07-20 | 五邑大学 | 一种基于图像识别的智能传送带式机械臂*** |
CN108834576A (zh) * | 2018-06-07 | 2018-11-20 | 华南农业大学 | 一种基于双目视觉的柑橘采摘机器人及其实现方法 |
CN208276902U (zh) * | 2018-06-11 | 2018-12-25 | 深圳华制智能制造技术有限公司 | 一种多传感器融合移动机器人 |
-
2019
- 2019-04-10 CN CN201910286740.9A patent/CN110096057A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080249663A1 (en) * | 2005-09-27 | 2008-10-09 | Honda Motor Co., Ltd. | Robot control information generator and robot |
CN106383514A (zh) * | 2015-07-29 | 2017-02-08 | 湖北汽车工业学院 | 一种远程遥控探测车 |
CN205855355U (zh) * | 2016-08-16 | 2017-01-04 | 国网山东省电力公司滨州市滨城区供电公司 | 货物发放自动搬运器 |
CN206178473U (zh) * | 2016-10-18 | 2017-05-17 | 张锦迪 | 一种智能物料搬运小车的控制*** |
CN108268825A (zh) * | 2016-12-31 | 2018-07-10 | 广州映博智能科技有限公司 | 基于移动云台的三维人脸跟踪及表情识别*** |
CN108297084A (zh) * | 2018-03-16 | 2018-07-20 | 五邑大学 | 一种基于图像识别的智能传送带式机械臂*** |
CN108834576A (zh) * | 2018-06-07 | 2018-11-20 | 华南农业大学 | 一种基于双目视觉的柑橘采摘机器人及其实现方法 |
CN208276902U (zh) * | 2018-06-11 | 2018-12-25 | 深圳华制智能制造技术有限公司 | 一种多传感器融合移动机器人 |
Non-Patent Citations (2)
Title |
---|
曹旭东: "基于ROS 与四元数互补滤波的IMU 姿态解算研究", 《工业控制计算机》 * |
谢俊鑫: "基于互联网及二维码识别技术的公路小型桥梁技术状况评定***研究", 《中国优秀博硕士学位论文全文数据库(硕士) 工程科技Ⅱ辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111452046A (zh) * | 2020-03-31 | 2020-07-28 | 佛山科学技术学院 | 基于虚拟现实的排爆机器人***、控制方法及存储介质 |
CN114185284A (zh) * | 2021-10-20 | 2022-03-15 | 福建江夏学院 | 基于stm32物联网侦察***及其控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10928204B2 (en) | Industrial vehicle with feature-based localization and navigation | |
CN106737665B (zh) | 基于双目视觉和sift特征匹配的机械臂控制***及实现方法 | |
CN111507976B (zh) | 基于多角度成像的缺陷检测方法及*** | |
Azad et al. | Stereo-based 6d object localization for grasping with humanoid robot systems | |
CN103747667B (zh) | 一种用于笔记本电池自动装盒的视觉检测和控制*** | |
CN108010074A (zh) | 一种基于机器视觉的工件检测方法及*** | |
CN115609591B (zh) | 一种基于2D Marker的视觉定位方法和***、复合机器人 | |
CN109506628A (zh) | 一种基于深度学习的卡车环境下目标物测距方法 | |
CN105631893A (zh) | 一种通过拍照检测电容安装正确与否的方法及装置 | |
CN110096057A (zh) | 一种智能搬运小车控制*** | |
CN110553650B (zh) | 一种基于小样本学习的移动机器人重定位方法 | |
CN114049624B (zh) | 一种基于机器视觉的船舶舱室智能检测方法及*** | |
CN111582123A (zh) | 一种基于信标识别与视觉slam的agv定位方法 | |
CN110866949A (zh) | 中心点定位方法、装置、电子设备和存储介质 | |
CN107300382A (zh) | 一种用于水下机器人的单目视觉定位方法 | |
US10960550B2 (en) | Identification code reading apparatus and machine learning device | |
CN112926503A (zh) | 一种基于矩形拟合的抓取数据集自动生成方法 | |
CN109460757A (zh) | ***位置识别方法及装置 | |
CN112215308A (zh) | 一种吊装物体单阶检测方法、装置、电子设备及存储介质 | |
Truong et al. | New lane detection algorithm for autonomous vehicles using computer vision | |
CN109079777B (zh) | 一种机械臂手眼协调作业*** | |
CN113269234A (zh) | 一种基于目标检测的连接件装配检测方法和*** | |
CN115984806B (zh) | 道路标线破损动态检测*** | |
Jiang et al. | Mobile robot gas source localization via top-down visual attention mechanism and shape analysis | |
CN115902977A (zh) | 基于视觉和gps的变电站机器人双重定位方法及*** |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190806 |