工业应用中的产品包装自动化
1. 引言
在制鞋行业中,机器人应用的实例并不多见(Pedrocchi 等, 2015,Hinojo‐Perez 等, 2016,Dura‐Gil 等, 2016, Jatta 等, 2004,Dulio 和 Boer, 2004)。接下来,将回顾一些利用机器人系统提高制鞋行业生产率的研究项目。
欧洲鞋业项目开发了一种创新的机器人单元(Nemec 和 Zlajpah 2008),能够使用力控制头执行制鞋中的精加工工序,如清洁或抛光。智能鞋项目(2013)的目标是缩短传统手工产品(如鞋类)的中小企业的上市时间。智能鞋类项目(2013)实现了针对鞋类和鞋垫的自适应生产流程,并开发了机器人演示系统和三维设计工具。其他研究人员在 Vilaca 和 Fonseca(2007)中提出了一种用于优化鞋底卤化和铅粗加工工艺的软件应用。定制鞋项目(2008)开发了用于定制流程的先进工具(魔镜),而合脚定制项目(2009)旨在满足消费者导向产品定制日益增长的需求,特别是运动鞋领域。机器人制鞋项目(2012)开发了针对非刚性物体的操作、编程工具以及基于传感器的控制方法,以应对自动化制鞋工艺的复杂性。最后,Montiel(2007)所描述的工作使用面向对象的CAD系统来设计鞋跟和鞋垫。
运动规划对于将机器人系统用于实际应用至关重要。它包括找到一条从当前构型到目标构型的路径,同时满足关节极限和与环境中障碍物的避障等约束条件(Mei 和 Lee 2016年)。在非结构化环境中使用机器人时的一个重要问题是,机器人系统必须对动态变化做出反应,即所规划的必须使用来自传感器的数据在线修改轨迹。例如,在人–机器人交互应用中(Tsarouchi, Makris, and Chryssolouris 2016)(Tsarouchi et al. 即将出版),需要避免机器人与人类操作员之间发生碰撞(Mohammed, Schmidt, and Wang 即将出版)。为此,使用了多种类型的传感器:视觉系统、力/扭矩传感器等。例如,可以使用视觉系统来视觉检测环境中的障碍物,并通过视觉伺服技术引导机器人到达目标构型(Vahrenkamp et al. 2008)。特别是,在本研究中使用了一台深度相机(微软Kinect相机,KinectSpecs 2016)生成机器人工作空间的点云,以计算出一条避开检测到的障碍物的轨迹。
本文的结构如下。下一节介绍了使用机器人系统解决的工业应用,而第3节提出了本文所采用的硬件和软件架构以应对该问题。接着,第4节阐述了机器人控制系统,以正确执行当前的工业任务。所提出的方法在第5节中应用于两个实际的机器人平台,以验证其可行性和有效性。最后给出了一些结论。
2. 工业应用
本文提出的产品包装方法可用于多种工业应用。然而,为了说明该方法的主要特点,本研究聚焦于一个具体的应用场景,即鞋类包装。
制鞋业的生产链运行是所有行业中较短的,例如在中小型企业的平均订单规模仅为八双鞋子。
因此,如今自动化对于确保在这个不断增长的市场中的竞争力变得更加必要。引入智能机器人技术有助于克服相关生产流程自动化中的复杂性。主要面临的困难如下:
(1) 由于每季开发超过200种不同型号,且每个型号具有不同的尺寸、皮革质量和颜色,导致产品型号数量众多。
(2) 制造过程复杂:针对每个型号,必须开发和制造鞋楦(用于制鞋的模具);生成部件清单(鞋底、鞋跟、鞋垫、鞋带、内部件等);裁剪内层和外层部件;并将内层与外层部件缝合,然后在鞋楦上进行装配。
(3) 装配过程非常繁琐(约25道不同工序),尤其是装配操作尤为复杂,因为天然皮革存在不均匀性和弹性差异,且部件本身并非刚性结构,这使得使用机器人操作器变得更加困难,如 Bonert, Shu 和 Benhabib(2000)所述。
(4) 在质量控制和包装作业方面需要大量专业人员:每双鞋都需要进行清洁、最终检验、装入鞋盒,并堆叠准备装运。
图1 以图形方式表示了第4项所涉及的任务。该阶段是劳动力影响较大的工序之一。‘将鞋子放入盒子’在 图1 中显示的模块是 ‘包装流程’的一部分,位于‘后整理阶段’。具体工序如下:工人取来鞋子,进行目视检查,若一切正常且未发现缺陷,则继续进行包装流程,即将每只鞋子装入一个塑料袋,最后将一双鞋放入盒子中。该过程通常需要人类操作员约 20–25秒。
3. 系统架构
3.1. 硬件
本节介绍机器人平台中使用的硬件部件及其用途。图2显示了主要的系统组件及其之间使用的通信接口。
3.1.1. 臂
本研究使用了两个机器人平台来测试算法。这两个平台均基于Schunk模块,配备了七个关节模块,分为四种不同尺寸(PRL120、PRL100、PRL080和PRL060),峰值输出扭矩范围从10 Nm到372 Nm。机器人采用校园局域网(CAN)总线连接各模块与中央计算机。
3.1.2. 机器人手
本项目测试中使用了四种不同的抓取装置:来自意大利技术研究院的iCub手(在DFKI实验室使用)、来自Prensilia公司的IH2 Azzurra手(在UMH实验室使用)、费斯托工业夹爪(HGP‐25‐A‐B 费斯托平行夹爪)以及斯康克工业夹爪(伺服电动两指平行夹爪PG 70型)。
3.1.3. 3D传感器
Kinect相机(KinectSpecs 2016年)因其高性能和低成本而被采用。该设备包含一个分辨率为 1280 × 960的RGB相机、一个红外发射器和一个红外深度传感器。该3D相机的最小测量距离约为一米。
3.1.4. 控制PC
用于测试的计算机具有以下特性:Intel Core i7 2600k,4核, 3.40GHz,6MB缓存,Turbo Boost 2.0,16GB内存,NVIDIA GeForce210 8GB,2TB硬盘ST1000DL002‐9TT153ATA。
3.2. 软件
本研究中的实验采用了基于Ubuntu的机器人操作系统 (ROS)平台。ROS提供了库和工具,帮助软件开发者创建机器人应用以及操作系统服务:如硬件抽象、低级设备控制等。
为了通过PCAN‐USB接口与CAN模块(Schunk模块和机器人手)进行通信,使用了ROS包libpcan、LibPCan(2016年)。
使用的其他ROS包包括schunk_powercube_chain、RosPCANdrivers(2016年)和schunk_hardware_config。
机器人描述采用URDF(统一机器人描述格式,URDF 2016年),这是一种用于表示机器人模型的 XML格式。
4. 机器人控制
4.1. 运动规划
如引言部分所述,运动规划旨在找到一条从当前位姿(位置和姿态)到目标位姿的路径,同时满足关节极限和与环境中障碍物避障等约束条件。为此,在非结构化环境中操作时需要借助感知技术来避免碰撞。例如,使用前文提到的 Kinect相机,可以获得点云,即一组表示被检测物体表面的三维点。随后,使用点云库(PCL 2016)对点云进行处理(如分割、滤波、模型拟合、表面重建等)。此外,ROS arm_navigation stack(ArmNav2016)允许通过一组堆栈生成机器人操作应用。例如,collision_environment堆栈包含用于创建环境表示以进行碰撞检测的工具(Hornung等, 2013年),参见图3)。
此外,约束感知的逆向运动学求解器(arm_navigation stack, Arm NavigationROS堆栈, 网站2016年)通过将ROS碰撞工具与Orocos KDL(2012年)的正向和逆向运动学求解器结合,为任意串联机器人提供约束感知的运动学支持。
运动规划算法的代码库可在OMPL(开放运动规划库)(Sucan, Moll, and Kavraki 2012年)中获取:PRM、 RRT、ESTS、SBL、KPIECE、BKPIECE、LBKPIECE、 LazyRRT、RRTConnect等。因此,可以根据当前任务选择最适合的规划算法,并设定其参数值。然而,这些算法可能生成非平滑轨迹,因此在发送到控制器之前需要进行平滑处理。
4.2. 力控制
对于环境中移动速度非常快或被视觉系统视场遮挡的物体,它们与机器人之间的碰撞并不总是能够避免。因此,出于安全原因,需要采用碰撞检测算法来保护人类操作员、机器人等。例如,在使用第3.1节中描述的机器人系统时,可以通过安装在机器人末端执行器处的力/扭矩传感器提供的信息来实现这一点。因此,当碰撞算法检测到碰撞时,机器人将停止当前任务并切换到力控制模式。此时,人类操作员可以通过拉动末端执行器来移动机器人,以便操作员使系统脱离碰撞状态或检查所携带的物品。
4.3. 目标检测
RoboEarth(Waibel等,2011)的ROS堆栈被用于物体检测。该工具可利用Kinect相机的数据构建物体模型,并能在场景中查找已预先存储模型的物体。在建模阶段,将物体放置在两张印有增强现实标记的纸张上。通过跟踪这些标记来重建相机相对于标记的位姿。当相机围绕物体移动或反之亦然时,计算相机的位姿,并使用OpenCV实现提取加速稳健特征(SURF)(Bay, Tuytelaars和Van Gool,2006)。
随后,利用Kinect传感器的深度信息确定三维位置。物体的局部点云和SURF特征会在多个帧中被存储,这些即为用于物体检测的参考姿态。因此,从相机图像中提取SURF特征,并与已学习物体每个参考姿态中存储的特征描述符进行依次匹配。该过程的计算成本可能相当高,具体取决于物体数量和参考姿态的数量。通常,三维目标检测需要更多的参考姿态以实现稳定的检测。
此外,本研究采用几何模型驱动方法将物体(鞋子、盒子等)的三维形状模型拟合到场景中,并对其进行跟踪(Teuliere, Marchand, 和 Eck2010)。这些方法在已知模型拟合起始位置的先验信息的前提下,能够可靠地计算物体位姿信息。
4.4. 抓取
本小节概述了一种利用物体表示来规划抓取的算法。该算法基于Simox工具箱(Simox 2016年)中实现的抓取假设生成。此处提出的算法已扩展,以应对物体上受限的接触区域。
该算法的输入包括机械手的运动学模型、待抓取物体的三维网格以及抓取定义。抓取定义包含手的预形态和接近向量。
在物体上随机采样一个接近点x,并在此处估算与表面垂直的法向量nx 。然后,使用预形态的接近向量将预形态与该法向量对齐。空间中的位置被选择为:当手处于张开状态(预形态)时,与物体无初始碰撞。为此,从靠近物体的位置开始,沿接近向量的负方向移动机械手,并进行碰撞检测。当某一位置不再发生初始碰撞时,以恒定速度闭合机械手,直到所有手指均与物体接触。如果接触点超过两个,则检查所有接触点是否均位于有效抓取区域内。若是,则根据接触点数量计算抓取质量,并验证该抓取是否满足力闭合性质。
5. 实验结果
本节展示了在两个不同平台上的两个实验,以验证轨迹规划算法在避障方面的有效性以及使用力控制的运动算法的有效性。
5.1. 轨迹规划与避障
运动规划算法生成的轨迹(见第4.1节)应避免机器人(或其携带的物体)与机器人环境中的物体发生碰撞。在本实验中,物体通过Kinect相机进行检测,并获得了相应的点云。
图5 显示了机器人将一根铝棒从刚性结构的一侧移动到另一侧的过程序列,该刚性结构标有黑黄条纹。运动规划考虑了被携带物体的起始位姿和目标位姿、其形状以及环境,以正确地避免碰撞。
5.2. 使用力控制的机器人运动
图6 展示了一个实验,该实验旨在展示第3.2节中描述的碰撞检测和力控制功能。机械臂将被抓取的鞋从一个盒子移动到位于另一张桌子上的另一个盒子。在某一时刻,操作员推动机器人末端执行器,机器人系统利用力传感器提供的信息检测到‘碰撞’,并使机器人控制切换到力控制模式。此时,人类操作员可以自由移动机器人末端执行器。一旦不再施加外部力,机器人将继续沿之前规划的轨迹运动。然而,如果该轨迹发生了大幅偏离,则可认为任务失败,并可进行重新规划,例如通过视觉系统获取新的轨迹。
5.3. 物体识别与抓取
抓取物体的步骤如下:首先,必须成功检测到物体;其次,需要计算合适的抓取位置;最后,执行抓取动作。根据 Moulianitis、Dentsoras和Aspragathos(1999年)的研究,抓取非刚性物体主要有三种技术:
- 机械表面,其中材料被夹持在夹持器手指之间以产生高摩擦力的夹持。
- 侵入式,即将针插入材料的表面或内部。
- 表面吸附,包括使用粘合剂或真空。
物体所在的表面被视为规划算法的障碍物。给定鞋子的特定期望抓取区域,运动规划器需要找到一条最优轨迹,使机械臂从当前位置移动到相对于鞋子的固定距离,并根据检测到的鞋部位姿调整接近方向向量。随后的鞋子抓取将“盲抓”完成,机器人将沿接近向量方向朝鞋子移动并闭合手指。手部指尖和掌部的触觉信息将提供必要的接触信息以完成抓取动作(如果机械手具备此功能)。在这种情况下,与平行夹持器相比,使用多指手在闭合抓取时具有更高的鲁棒性,因为机械手会将其手指包裹在鞋子周围,并确定抓取点位置。
图7 显示了一个场景,其中可以看到一只鞋子和一个塑料杯(左侧),以及两个纸张上的牛奶包装(右侧),如第4.3节所述。这种基于RoboEarth的物体检测用于定位将要被操作的物体。
图8显示了一个实验,其中牛奶包装被检测到并将被拾取。在该图中,真实图像和仿真图像被融合,以检查它们在任务执行过程中是否匹配。
为了检验RoboEarth的性能,实施了一项受Rigual等人(2012年)启发的实验。将四双鞋子的型号信息录入系统数据库,然后在图7所示场景中进行识别。测试中选择了具有不同特征的多种鞋子型号。结果如表1所示。对于鞋号1,在60厘米距离处的检测率约为90%,但在更远距离时有所下降。而对于鞋号2,由于物体上的装饰孔(脚趾孔和侧面孔),检测率有所降低。
RoboEarth 检测在光滑表面上无法正常工作。鞋号3是漆皮款式,光线反射影响了识别效果,但最差的情况出现在鞋号4上。鞋号4更像一个线框结构而非物体,因此无法通过 RoboEarth 识别,更不用说机器人抓取了。
由于鞋盒(类似于牛奶包装)具有规则形状,因此可以轻松定位。从这个意义上说,精度并不重要。将一双鞋放入鞋盒中,因为此任务的容差为几厘米。此外,精度还取决于机器人速度。机器人速度会对所携带的物体产生不希望的惯性效应,在许多情况下,机械手必须更紧闭合以避免掉落或打滑。由于物体本身的限制或机械手自身的限制,并不总是能够通过机械手产生更大的力。在本研究中,已执行缓慢移动,目前尚未获得生产效率信息。无论如何,加快机器人运动速度仍是后续工作。
关于抓取可靠性,表1 的最后一行显示了系统成功抓取鞋子的次数(共十次)。对于情况1和情况3,大约90%的抓取是成功的。对于鞋号2(柔软鞋面),成功率下降到80%,但最差的情况是鞋号4,出现了较差结果。在这种情况下,几乎无法拾起鞋子。另一个重要问题是重量。它为机器人的运动设定了速度限制。鞋子越重,机器人移动应越慢。
关于抓取其他物体,表2 显示了系统成功抓取牛奶包装的次数(共十次)。在所有情况下,有9到10次(共十次)成功抓取了包装。物体检测也比鞋子的情况稳定得多。对于更远距离,正确检测在90%到100%之间。
图9 展示了定位鞋子、进行运动规划、到达并最终抓取它的工艺过程。利用先前定义的检测方法,Kinect相机用于检测鞋子并识别其位姿。
值得注意的是,在本研究中,初始抓取测试是在两个研究实验室(UHM和DFKI)使用工业平行夹持器进行的(参见图5 和6)。然而,由于某些鞋子区域必须避免(例如不能接触,参见 图4),使用多指手可以在更大的搜索空间中找到一种能够稳健抓取鞋子并同时避免触碰某些鞋面区域的手部配置。因此,在一个研究实验室中使用了iCub手(Davis, Tsagarakis, 和 Caldwell 2008年),而在另一个研究实验室中则使用了IH2 Azzurra手(IH2Azzurra 2012年)进行高级抓取测试。
6. 机器人应用的工作空间布局
本研究开发的用于产品包装的机器人系统已在上一节的实验室条件下进行了测试。为了将该系统转移到工业厂房,需要对机器人中的所有元件进行相应调整。
工作区必须经过合理设计和布局,共同构成柔性制造单元(FMC)。
图10展示了将机器人集成到生产线中的FMC示例。请注意,图中显示了一个工业机器人(而非实验室测试中使用的自行开发的机器人)以及安全护栏,以满足安全规范的要求。
柔性制造单元已在现代工厂中得到广泛应用(Tubaileh, Hammad, 和 Kafafi2007年)。为了高效利用处理材料,柔性制造单元必须考虑工艺的特殊特性。当在工厂布局中引入柔性制造单元时,其位置应根据可达性和可移动性准则来确定。通过最小化机器人关节完成一系列移动所需的循环时间,可以获得最优的柔性制造单元布局,这一点可参见 Fenton、Poon 和 Davies(1992年)以及 Tubaileh、Hammad 和 Kafafi(2007年)的研究。
缩短柔性制造单元的循环时间可提高生产率。许多研究工作都集中在优化移动时间上。Fenton、Poon和Davies (1992年),Dissanayake和Gal(1994年)以及Mata和 Tubaileh(1998年)提出了在两个位置之间实现最小移动时间和最小关节位移的研究成果。一旦在生产线末端确定了柔性制造单元的位置,就需要进行柔性制造单元集成。在这方面,需要考虑以下事项:
- 安装 :机器人和摄像头必须固定,并测量其相对于传送带的相对坐标。完成此任务后,机器人便在其环境中正确 定位。在此步骤中,紧急停止装置、速度限制、过扭矩检测器、安全按钮(包括死人开关、密码、防护栏和自动诊断功能都必须包含在柔性制造单元中。
- 同步 :每个事件都由一个同步信号触发。该柔性制造单元中的同步信号主要来自两个传感器:Kinect相机和力/ 扭矩传感器。此外,配备有一个或多个机器人设备的工厂通常具备工业网络,柔性制造单元需连接至该网络,以发送和接收详细的生产参数。
- 用户界面 :用户界面是使工厂操作员能够与柔性制造单元进行交互的设备。该界面必须适应工业领域、具体应用,甚至工人的知识水平和术语习惯。此项任务包括操作员培训。
- 安全规范 :尽管在安装过程中已考虑到安全措施,但仍需特别注意相关规范。本工作中必须满足ISO EN 953 (2009年)、ISO 10218‐1(2011年)和ISO 15066( 2016年)的要求。
- 优化 :当设备在工厂安装完成并完成上述项目后,机器人仍然移动缓慢。机器人安装中最困难的任务是提高其速度,使柔性制造单元的生产效率尽可能高。这通常涉及多次将较慢的硬件(通常称为瓶颈)替换为更快的硬件。这是一个耗时较长的迭代任务,可作为持续改进任务的一部分。在此工作中,这是所有任务中最艰巨的一项。
7. 结论
本文开发了一种用于工业应用中产品包装自动化的机器人系统。特别是,所提出的系统专为制鞋行业而设计。然而,其他具有类似包装工艺的产品也可从该解决方案中受益。本工作的重点之一是为机器人系统选择和测试核心算法:物体检测、物体抓取、轨迹规划等。在这方面,针对所有这些算法获得的实验结果表现出良好的成功率,使我们相信所提出的方法在不久的将来可用于工业应用。
751

被折叠的 条评论
为什么被折叠?



