田淮锐
田建艳
王素钢
王晓波
(太原理工大学电气与动力工程学院,山西 太原 030024)
酒醅出缸是清香型白酒地缸发酵生产的重要环节,大多企业采用人工作业,劳动强度大,自动化程度低,容易散发酒气。目前白酒生产的其他环节已有较多自动化方法与设备[1-2],但已有的酒醅出缸装置[3-5],或由于作业方式易损坏地缸;或需事先埋于缸内,影响发酵;或不适用于传统车间改造;各自存在局限性。地缸中酒醅分布不确定,地缸开口小、强度低等因素制约着酒醅出缸自动化。课题组[6]自主研发了一款专用的酒醅取料复合机器人,在保留地缸发酵传统工艺前提下,机器代人实现自动酒醅出缸,为此,亟需设计一种适用于该机器人的自动酒醅出缸策略,其合理性直接影响机器人应用可行性。
目前,很多学者对自动取料进行了研究。Clarke等[7]根据挖斗挖取颗粒材料时拾音器收集的碰撞音频估计取料量。Takahashi等[8]基于CNN预测RGB-D图中各区域抓取量及其不确定性,选择最优取料点。Schenck等[9]在托盘内颗粒物初始状态已知情况下,根据机械臂铲斗铲取倾倒动作参数,基于CNN预测颗粒物状态。曹小华等[10]采用三维感知技术重建货船料堆,选择最大抓取量取料点进行取料作业。赵建平等[11]设计的智能调料机,内置各菜品调料量,实现了烹饪时调料自动精确出料。蔡威[12]获取垃圾堆表面高度后,根据不同投料口选择取料区域,并以该区域内垃圾堆最高点进行抓取作业。钟星等[13]使用三次多项式和积分法,在起始点和挖取深度已知条件下,实现了不同挖取量的挖取作业轨迹规划。陆成浩[14]对船舱散货物料三维重建,采用分层原则逐层取料,且每层以效率最高点进行抓取作业。酒醅取料复合机器人对缸壁区域取料时,要确保不会损坏地缸,并以相对最大挖取量进行取料作业。
试验拟对酒醅取料复合机器人自动酒醅出缸策略进行研究,首先提出一种基于安全作业距离的取料点规划方法,根据地缸内酒醅表面点云构建取料平面,设计预设取料点;然后评估各预设取料点挖取量,选定最优取料点,引导机器人自动化、智能化取料。
酒醅取料复合机器人由AGV、六自由度机械臂和取料装置组成,如图1所示。六自由度机械臂装载于AGV前上方,机械臂末端装载有取料装置和深度相机。
1. AGV底盘 2. AGV差分式驱动结构 3. 控制柜 4. 六自由度机械臂 5. 深度相机 6. 取料装置
取料装置由挖斗、伺服电动缸和连杆组成,连杆安装于机械臂末端,并通过铰链结构连接伺服电动缸和挖斗。通过机械臂第6关节旋转角度,控制挖斗取料方向。
地缸开口小、深度深,发酵时埋于地下[15-16]。为便于酒醅表面数据采集,同时不干扰机械臂取料,选用Intel RealSense D455采集地缸中酒醅表面数据,安装于机械臂末端法兰处,设定RGB图和深度图采集像素为1 280×720。
为采集缸口内全貌图像,机械臂控制相机移动至地缸口中心正上方ch处,镜头正对缸口平面,设置此位姿为地缸图像采集位姿。综合考虑酒醅取料复合机器人机械臂作业空间与采集图像中酒醅区域所占比重,设置ch为1 256 mm。
地缸口边缘处灰度图信息会发生跃变,通过边缘检测可对其定位。因此,采用加权平均法[17]对图2(a)地缸RGB图灰度化,并采用双边滤波[18]保边降噪后,进行Canny边缘检测[19],结果如图2(b)所示。
图2 地缸图像Canny边缘检测结果
地缸图像采集位姿下,地缸口内边缘在获取的图像中应为圆形。遍历轮廓并进行椭圆拟合,对各拟合椭圆构建几何约束,如式(1)所示,提取地缸口内边缘近似拟合圆,结果如图3所示。
(1)
图3 地缸口内边缘近似拟合圆
式中:
et、em——各拟合椭圆长轴长度和短轴长度,像素;
Rmax、Rmin——地缸口内边缘近似拟合圆的高低约束阈值(与相机高度有关),像素;
rmax——拟合椭圆的长短轴比的约束阈值(与地缸实际形状有关);
K——拟合椭圆的长短轴比。
实地采集多幅地缸图像,试验确定Rmin=368像素、Rmax=384像素、rmax=1.08。
由图3可知,Canny边缘检测和几何约束可以剔除无用轮廓和噪声的干扰,提取出地缸口内边缘。
地缸深度图中可能出现深度值为0的空洞,影响后续酒醅挖取量评估。空洞点的邻域信息可以反映空洞处深度信息,同时研究对象为缸口内区域,因此,在缸口内点云重建前,对图像中缸口内空洞进行填充,如式(2)所示。
p(u,v)=MAX[N4(p)]。
(2)
根据地缸口内边缘近似拟合圆提取结果,制作掩膜分割地缸RGB图和深度图,提取缸口内图像,并进行点云重建,结果如图4所示。
图4 缸口内点云
缸口内点云包括缸壁点云与酒醅点云,缸壁点云会干扰预设取料点挖取量评估。因此,需分割提取酒醅点云,构建酒醅取料平面,为设计预设取料点奠定基础。
酒醅与地缸壁颜色相近,传统图像分割方法难以分割出酒醅图像,重建酒醅点云。基于点云技术进行缸壁点云与酒醅点云分割试验,分别采用欧式聚类分割、区域生长分割等方法进行试验分析,试验发现:① 酒醅表面分布不规则、不确定;② 地缸形状不规则;③ 酒醅与缸壁无明显分界,缸口内点云具有连通性;④ 缸口内点云较密集。因此,常用的点云分割方法难以实现缸壁点云与酒醅点云分割。
点云求异分割算法基于KD-Tree近邻搜索算法,以两组点云中各点间距离作为判断准则。地缸埋于地下,其状态不发生变化。因此,可采用点云求异分割算法求解空缸点云与取料前缸口内点云差异,提取酒醅点云。具体步骤为:
步骤1:采集空缸时地缸RGB图和深度图,建立地缸空缸点云模型。
步骤2:以空缸点云为目标点云,将取料前缸口内点云作为输入点云,采用KD-Tree近邻搜索算法,以地缸空缸点云中pi点为目标点,找到缸口内点云中距离pi点最近的点,求解两点间距离。
步骤3:若两点间距离近似为0,认为这两点为对应重合点,即缸壁点云,剔除缸口内点云中对应点,最终得到酒醅点云。
以多缸酒醅出缸作业中各次取料前缸口内点云为试验对象,进行点云求异分割试验,部分结果如图5所示。
图5 点云求异分割试验
由图5可知,点云求异分割可以实现缸壁点云与酒醅点云分割。但是由于以下原因:① 同批次制作的不同地缸可能有差异;② 缸壁上可能有少许黏着酒醅;③ 机械臂控制精度不足导致相机各次地缸图像采集位姿可能有差异,点云求异分割算法提取的酒醅点云中可能含有一些离群干扰点。
由于离群干扰点的深度值均小于酒醅主体点云深度值,可通过直方图统计滤除离群干扰点对后续工作的影响。利用直方图统计图5各酒醅点云中深度数据,以毫米为单位,组距为10 mm,结果如图6所示,离群点深度数据区间位于直方图左侧区域。
图6 直方图统计结果
直方图频数最大值fmax所在组别的界限,代表了当前时刻酒醅主要深度数据区间,离群点在酒醅点云中所占比重很小,其所在直方图组别的频数较小。因此,保留频数大于1/a直方图频数最大值的组别内深度数据,作为酒醅主体点云数据。结合图6分析不同a下离群干扰点影响的去除结果,选择a=4。
根据当前时刻酒醅主体点云深度数据,以其平均值估计此时酒醅料位深度df,如式(3)所示,以此深度构建取料平面,df为取料平面和相机平面间距离。
(3)
(4)
式中:
A——满足条件的直方图组别k的集合;
nh——直方图组数;
fk——直方图中第k组的频数;
bki——直方图中第k组的第i个深度数据,mm。
为便于规划,并确保作业时缸壁与挖斗间留有安全裕度,将地缸内部构造视为圆台,以缸口内边缘所围平面为圆台上底面,以缸底为圆台下底面,地缸及构造圆台纵截面如图7所示。
黑色实线为构造圆台纵截面简图
酒醅与缸壁间粘连性不强,构造圆台与缸壁间存在较少酒醅时,会自然向下滑落,地缸圆台构造不影响出缸作业。由式(5)计算当前取料平面半径rf。
(5)
式中:
rm——缸口半径,mm;
rb——缸底半径,mm;
dp——地缸深度,mm;
ch——相机平面和缸口平面间距离,mm。
酒醅余料较少时,若以当前料位深度构建取料平面,挖斗作业中可能与缸底发生碰撞,如图8所示。
图8 挖斗与缸底碰撞
根据酒醅料位深度df,估计料位高度hf,如式(6)所示。当hf低于阈值th时,将其判定为尾料,机器人酒醅出缸进入尾料处理阶段,以th对应酒醅料位深度构建取料平面,并且此阶段中取料平面不再发生变化。若hf小于阈值te,则认为尾料处理阶段结束。
hf=dp-df+ch。
(6)
以挖斗作业不与缸底碰撞为原则,并留有一定安全裕度ms,确定尾料处理阶段开始对应的阈值th。根据挖斗翻转取料动作,若设置取料深度为dg,如图9所示,依据斗长lb设置th=lb-hg+ms。
图9 取料深度
lb. 斗长 db. 斗深 wb. 斗宽 bl. 斗背长
构建酒醅取料平面后,由第2节地缸口内边缘提取结果,求解相机坐标系下地缸口圆心坐标(xr,yr,zr),确定取料平面中心坐标(xf,yf,zf)。
机器人作业要求实现对缸壁区域酒醅取料,同时不损坏地缸。因此,需要求解取料安全作业距离,并设计预设取料点。
酒醅取料复合机器人取料装置挖斗如图10所示。
机器人自动取放料过程:首先取料装置到达取料点上方中间路径点,随后挖斗竖直插入酒醅,翻转进行取料;然后竖直提出取料装置至中间路径点,控制其移动到运料小车上方翻转放料。
挖斗后背为平面型,若挖斗取料方向如图11(a)中箭头所示,斗背与缸壁间会有较大空隙,缸壁区域会残留较多酒醅,难以向下滑落,后续还需进行处理。挖斗前沿为弧形,可贴合缸壁,实现对缸壁区域取料。因此,设置挖斗翻转取料方向为由取料平面中心朝向缸壁,如图11(b)中箭头所示。
机械臂作业规划需要满足不同深度缸壁区域酒醅取料的可达性[20]需求。若预设取料点离缸壁太近,挖斗翻转会与缸壁发生碰撞,如图12所示,为此需要规划机械臂酒醅取料安全作业距离。
图12 取料装置与地缸壁碰撞
挖斗翻转中前沿动作轨迹恰好不与缸壁交汇,可在挖斗不碰撞缸壁的同时,实现对缸壁区域酒醅安全取料。已将地缸内部视为圆台,取料安全作业距离规划条件为:挖斗翻转中,图10中斗长lb标注直线与地缸圆台母线垂直时,挖斗不与缸壁碰撞。因此,以斗长lb为基准,求解取料安全作业距离es,如式(7)所示,即预设取料点相对于取料平面中心的距离,以取料方向为正方向,确定预设取料点位置。
(7)
地缸横截面为圆形,预设取料点位于取料平面中以平面中心为圆心,以|es|为半径的圆上。在不影响作业效率前提下,分析以挖斗开口面覆盖取料平面所需的正投影次数,合理设置预设取料点数目。
通过取料平面中心坐标(xf,yf,zf)和取料安全作业距离es,以预设取料点取料方向为正方向,确定各预设取料点的(xg,yg)坐标。
若取料深度太大,挖料过多,后续动作容易撒料。因此,需要根据不同需求,合理设计取料深度。取料深度可转化为预设取料点距离取料平面的高度hg,若设置取料深度为dg,则hg=bl-dg,如图9所示,从而确定各预设取料点的zg坐标。最终得到相机坐标系,即取料前酒醅点云坐标系Oc下,预设取料点的三维坐标(xg,yg,zg),记为cP(xg,yg,zg)。
取料装置的取料轨迹是固定的,每次作业,取料装置的理想取料空间相同,如图13中黑色虚线阴影区域所示。
图13 理想取料空间
在预设取料点取料时,取料装置相应理想取料空间内酒醅量越多,机器人在该点的挖取量越多。因此,测算预设取料点理想取料空间内酒醅体积,作为预设取料点cP(xg,yg,zg)的挖取量评估指标。根据前期研究的像素面元体素法,在cP(xg,yg,zg)相应理想取料空间内,以酒醅点云各点划分面元,作为各酒醅体素底面,再依据挖斗翻转取料前沿动作轨迹和取料前酒醅点云,求解各酒醅体素的高,构建酒醅体素,依次计算各酒醅体素体积,理想取料空间内酒醅体积即为各酒醅体素体积的组合。
评估预设取料点挖取量的关键是求解挖斗翻转取料前沿动作轨迹函数。因此,基于cP(xg,yg,zg)建立理想取料空间坐标系Op,如图14所示,在该坐标系中求解挖斗翻转取料前沿动作轨迹函数。
图14 理想取料空间坐标系
为评估cP(xg,yg,zg)挖取量,还需要将酒醅点云和挖斗翻转取料动作中的物理量统一到同一坐标系,为此需要求解取料前酒醅点云坐标系Oc和理想取料空间坐标系Op间的变换关系。Oc和Op间的变换是刚体变换,变换关系为:
(8)
式中:
[xpi,ypi,zpi]T——转换到理想取料空间坐标系Op中的酒醅点云数据;
[xci,yci,zci]T——原始酒醅点云数据。
挖斗翻转取料动作可以视为一个面作用于酒醅的过程,即挖斗翻转取料作用面。挖斗绕连接点做旋转运动,挖斗翻转取料作用面可以视为挖斗在挖斗开口面上的正投影,如图15中黑色虚线阴影所示。
图15 挖斗翻转取料作用面
挖斗翻转取料前沿动作轨迹为翻转取料作用面前沿曲线上各点动作轨迹的组合。挖斗翻转至水平过程中,挖斗翻转取料作用面前沿曲线上各点动作轨迹均为圆的一部分,各点与翻转轴线的垂直距离为各点动作轨迹半径。
为求解挖斗翻转取料作用面前沿曲线上各点动作轨迹半径,如图15所示,在挖斗翻转取料作用面上建立挖斗翻转取料作用面前沿曲线坐标系。根据挖斗尺寸参数,设置xp轴方向上正负坐标极限距离均为wb/2。
挖斗前沿曲线如图16中黑色加粗曲线所示,长度为lc,为半径为rc的圆的一部分。由正投影法可知,挖斗前沿曲线所在圆形在开口面上的正投影为椭圆。根据挖斗尺寸参数计算挖斗背与开口面的夹角φ,挖斗前沿曲线所在圆形在开口面上的正投影椭圆长半轴为rc,短半轴为圆半径的正投影长度rccosφ。正投影椭圆圆心在挖斗翻转取料作用面前沿曲线坐标系rp轴上,其到坐标系原点的距离为lb-rccosφ。挖斗翻转取料作用面前沿曲线为挖斗前沿曲线在开口面上的正投影,其函数表达式如式(9)所示。
(9)
图16 挖斗前沿曲线
将理想取料空间坐标系中酒醅点云各点坐标xp代入式(9),计算挖斗翻转取料作用面前沿曲线上各点动作轨迹半径。在坐标系Op中,挖斗翻转取料作用面前沿曲线上各点动作轨迹组合如式(10)所示,即为挖斗前沿动作轨迹。酒醅点云各点与挖斗前沿动作轨迹上各点在z轴方向上具有一一对应关系,对应点的(xp,yp)坐标相同。分析挖斗翻转取料作用面参数,设置yp轴方向上正坐标极限距离为挖斗翻转取料作用面前沿曲线上各点动作轨迹半径rpj,负坐标极限距离均为斗深db。
(10)
式中:
[xpj,ypj,zpj]T——酒醅点云在cP(xg,yg,zg)理想取料空间内各点。
通过式(11)约束条件提取得到[xpj,ypj,zpj]T。
(11)
根据式(8)、式(10)和式(11)结果求解cP(xg,yg,zg)理想取料空间内各酒醅体素的高度hpj,如式(12)所示。
(12)
若hpj<0,代表挖斗无法对面元j处取料,则舍弃。以各个酒醅体素为独立计算单元,求解cP(xg,yg,zg)理想取料空间内酒醅体积Vg,作为该预设取料点挖取量评估指标,如式(13)所示。
(13)
式中:
m——cP(xg,yg,zg)理想取料空间内酒醅体素个数;
spj——酒醅体素底面积,mm2;
dj——面元j处相机采集的深度数据,mm。
分别求解各预设取料点cP(xgi,ygi,zgi)挖取量评估指标Vgi,对比择优,如式(14)所示,选择最优取料点,记为cP(xg0,yg0,zg0),取料方向为取料平面中心与该点连线上指向缸壁方向。
(14)
式中:
ng——预设取料点个数。
虚拟调试技术可以对设计思路全面仿真,降低研发风险[21]。在山西某清香型酒厂酒醅发酵车间与发酵地缸的1∶1测绘模型上,基于NX MCD搭建酒醅取料复合机器人虚拟调试平台,如图17所示。
图17 酒醅取料复合机器人虚拟调试平台
对酒醅取料复合机器人3D模型进行功能属性定义,并创建酒醅取料复合机器人出醅作业仿真序列,最大程度模拟地缸出醅现场机器人作业环境。同时,对挖斗尺寸参数进行分析测量,如表1所示。
表1 挖斗尺寸参数
以缸底极限位置为分析对象,由挖斗翻转取料轨迹可知,此时预设取料点距离缸底高度为334.30 mm,求解预设取料点坐标,并在虚拟调试平台中进行机器人取料仿真试验。由仿真试验可知,以缸底极限位置为分析对象,取料装置竖直插入以及挖斗翻转过程中,不会与地缸碰撞。因此,取料装置竖直插入地缸过程中,不会与地缸碰撞,不需考虑约束条件。
为验证基于安全作业距离的取料点规划方法的有效性,基于酒醅取料复合机器人虚拟调试平台,在地缸不同深度处,构建取料平面,对基于安全作业距离的取料点规划方法进行大量仿真测试,部分测试结果如表2所示。
表2 基于安全作业距离的取料点规划方法测试结果
由表2可知,基于安全作业距离的取料点规划方法可以确保取料装置在不同深度取料平面,成功对缸壁区域取料的同时,不与缸壁碰撞,并留有一定安全裕度。
地缸缸口内直径为700 mm,缸底内直径为500 mm,dp为1 135 mm。对地缸各深度横截面与挖斗开口面进行计算与试验发现,当设计4个预设取料点时,可实现取料平面的全覆盖作业;若设计5个预设取料点则会有较大重合区域,不符合工程实际。因此,在各酒醅取料平面上均设计4个预设取料点。
研究初期将地缸口圆心酒醅表面深度视为当前料位深度,构建取料平面,设计预设取料点,机器人对各预设取料点依次取料。缸口圆心对应料位一般为酒醅分布最低点,以该深度定义取料平面进行取料,缸壁区域酒醅滑落严重,挖斗翻转与竖直提升阻力增大,可能出现报警现象。因此,自动酒醅出缸策略基于酒醅点云密集的深度区间构建取料平面。同时,随着酒醅料位变低,取料平面上各预设取料点取料区域会有重合,且料位越低重合区域越大,对所有预设取料点依次取料可能出现某次作业取料量较少的现象。
为验证自动酒醅出缸策略的有效性,在完成虚拟调试的基础上,于山西某清香型酒厂发酵车间进行大量现场试验。由于篇幅所限,仅给出三缸酒醅出缸试验结果,如表3~表5所示。试验中,设置dg为252 mm、ms为10 mm、th为343.64 mm、te为110 mm。为进行对比试验,表5中机器人作业未采用自动酒醅出缸策略,对所有预设取料点依次取料。现场采用电子台秤对实际挖取质量M称重记录。为提高试验对比结果可靠性,三缸醅料均为新填充酒醅发酵原料,地缸中上下层酒醅密度有些微差异。
表3 采用自动酒醅出缸策略的地缸1取料试验
表4 采用自动酒醅出缸策略的地缸2取料试验
表5 未采用自动酒醅出缸策略的地缸3取料试验
分析表3~表5可知,在总出醅量近似的情况下,酒醅取料复合机器人采用提出的自动酒醅出缸策略进行酒醅出缸,所需的取料次数明显少于未采用时的取料次数,有效提高了酒醅出缸效率,减少了酒气挥发。自动酒醅出缸策略可有效指导酒醅取料复合机器人自动酒醅出缸作业,能够满足地缸固态发酵车间酒醅出缸环节作业需求。
(1) 针对地缸发酵酒醅出缸环节机器人出缸策略进行研究,提出了一种基于机器视觉的自动酒醅出缸策略,并在山西某清香型酒厂酒醅发酵车间进行试验,结果表明:自动酒醅出缸策略有效减少了机器人酒醅出缸作业的取料次数,提高了酒醅出缸效率,实现了地缸出醅作业的自动化、智能化。
(2) 所提出的自动酒醅出缸策略亦可推广应用于其他形状的挖斗或抓斗进行取料作业,首先分析目标料堆及作业环境各种属性,分割提取目标料堆点云;其次根据料堆分布及取料装置作业区域合理预设取料点,并根据作业要求设计取料深度;最后确定取料装置理想取料空间,构建取料装置相应的取料动作轨迹函数,测算预设取料点取料量评估指标,从而选择最优取料点。