干货|多自由度机器人 3D 打印技术
机器人学的迅速发展打破了传统3D打印机的局限性,使3D打印技术能够更灵活地应用在各行各业,因此该问题成为了机器人学和先进制造学科交叉的一项研究热点。多自由度的打印模式允许更灵活的打印轨迹设计和更丰富的机构设计,可以用更优的方案解决传统3D打印技术支撑过多、模式单一、速度慢等问题。
多自由度打印中的机器人学问题,主要是逆运动学求解与运动规划问题。
逆运动学
对于一个构型确定的机器人,逆运动学(Inverse Kinematic, IK)指的是给定机器人末端的位置和姿态,反求出机器人各关节的位置或者角度。高效的逆运动学求解在机器人学中是一个比较成熟的问题,主要有解析法和数值法两类解法。
运动规划
运动规划(Motion Planning)指的是在根据给定的三维数字模型计算出打印路径后,如何规划机器人手臂的运动来高效无碰撞并且以平滑的运动遍历打印路径、从而完成增材制造的过程。为了适用于高自由度的机器人(例如多自由度机器人手臂),现代路径规划的一个重要发展是提出基于采样的路径规划算法,具体包括概率路径图法(ProbabilisticRoadMap,PRM)和快速扩展随机树法(Rapidly-ExploringRandomTrees,RRT)。
目前,多自由度打印中的机器人学趋势中有如下几个大的技术方向。
由于传统3D打印垂直逐层打印的特点,需要额外打印许多支撑结构,但支撑材料并非是一定需要的,由于其主要功能为抵消重力对悬空材料的影响,通过多自由度3D打印技术在打印过程中改变打印方向,能够实现部分模型的无支撑打印。
充分利用三个自由度
最近Ezair等人提出可以根据模型的几何形状,生成更加符合其几何结构特点的空间曲线轨迹,该算法的本质是生成覆盖几何实体的曲线完全覆盖,同时算法需要能够满足3D打印过程中的约束,如喷头与已有模型的碰撞、支撑材料的生成问题等。
该算法能够处理基于三元体(TrivariateVolumes)表示和基于任意边界表示(B-rep)的任意几何模型的曲线打印路径覆盖问题,并且算法在传统三自由度笛卡尔3D打印机上得到了验证。根据模型几何特征进行切片是一种更加自然的切片方式,使用某个方向生成符合模型几何特征的打印路径进行打印,不仅能够提升打印模型的结构强度,还可以提升打印细节的质量。
内容来源:《Volumetric covering print-paths for additivemanufacturing of 3D models.Computer-Aided Design》
基于体分割的无支撑打印
Wu等人提出了RoboFDM打印系统以实现无支撑熔融沉积式3D打印。该系统的硬件部分由一台六自由度UR机器人手臂和固定在悬臂梁的挤出机构成,机器人手臂的末端安装水平的打印平台供挤出的材料粘附,挤出机与机器人手臂的相对位置通过在欧氏空间采样机器人手臂有效工作范围来确定。
使用六自由度机器人手臂沿着空间平面层打印无支撑兔子模型
在算法部分,作者提出了由粗到细的二阶段分割及相应的规划算法,从而实现无支撑打印。该算法首先通过提取3D模型的骨架对其进行粗分割,将复杂的三维模型用平面分割成几何结构简单、具有可行打印顺序的子模型集合,再使用含约束的细分割方法对子模型集合中所有不满足无支撑打印条件的模型进行平面分割,最终生成可行的无支撑打印顺序用以打印。使用六自由度机器人手臂进行无支撑打印的方法大幅减少了材料浪费,提升了打印质量,加快了打印过程和后处理的速度。
内容来源:《RoboFDM: A robotic system for support-free fabrication using FDM》
基于层分割的无支撑打印
Dai等人[31]近期提出了基于曲线轨迹的多自由度机器人手臂无支撑打印系统,该系统提出了对一般模型生成无支撑切片并进一步生成供机器人手臂打印的路径算法。对于输入三维模型,系统首先将其分解成一系列有顺序、可制造的曲面层,这些曲面层需要满足均无碰撞和自支撑约束条件。由于在空间中搜索一系列满足约束的曲面层切片是一个连续搜索问题,利用现有搜索技术难以高效求解,因此作者通过对输入三维模型进行体素化,将打印空间轨迹近似为打印一系列体素块,同时将曲面层需要满足的约束对应转化为体素需要满足的约束,使三维空间中的连续搜索问题离散化。
使用六自由度机器人手臂沿着空间曲面层打印无支撑兔子模型
作者通过在体素空间中定义“打印稳定邻域”(AM-Stable-Neighbors, ASN)对无支撑约束进行建模,通过计算已打印模型和工作平台的并集的凸包对无碰撞约束进行建模。作者提出了基于贪心策略的搜索算法,并在此基础上增加了阴影体素和逆剥离启发策略,大幅提升了算法搜索结果的质量。完成搜索后,作者使用对偶轮廓化方法将体素层转化为曲面层,最终在每个曲面层上生成连续费马螺旋轨迹供机器人手臂打印。
内容来源:《Support-Free Volume Printing by Multi-Axis Motion. ACM Transactions on Graphics》
传统的打印方式多为“层积式”,即在Z轴方向上的下层打印完成后再打印上层。这种方法能够保证打印系统在开环控制下的稳定性,且路径规划很直观、简单,避免了打印机和已打印模型的碰撞问题。
但这种打印方式会生成许多冗余轨迹,冗余轨迹通常被称作旅行轨迹(travelling trajectory),指的是打印机从一个打印路径行走到另一个打印路径的过程中的轨迹,过多的冗余轨迹将会大幅降低整个实体模型的打印速度。
快速打印
Samuel等人提出提出了基于依赖图(DependencyGraph)的搜索算法,核心思想是当模型特征在空间中相互之间的距离较远时,允许打印机在z方向上进行运动和打印,且机器运动轨迹与已打印模型是无碰撞的。它在无碰撞的前提下最小化旅行轨迹,进一步生成一个充分利用3D打印机三个自由度的打印和运动路径。
作者在他们提出的基于贪心算法的基础上,提出了基于局部搜索的路径规划算法,该方法首先提取模型上的轮廓,同时在这些轮廓上定义其开、闭属性用以描述打印机在此轮廓上运动的起点、终点是否一致。由于这些轮廓打印的先后顺序对能否无碰撞的打印是互相影响的,且打印机从开轮廓的起点运动到终点后是不允许逆向返回起点的,因此作者通过在轮廓生成的依赖图上应用局部搜索算法,从而高效生成一个较优的无碰撞路径。
内容来源《Beyond layers: A 3D-aware toolpath algorithm for fused filament fabrication》
线框打印
Wu等人的算法首先以碰撞条件作为约束进行搜索。算法首先从最后要打印的边开始“剥”模型,构造一个存在无碰撞打印方向的边的集合。接着算法将对这些约束编码成碰撞弧,从而构造一个有向图,其中每个节点都表示一条边,且每一个碰撞弧都表示边的打印先后约束。
随后,算法通过局部移除冗余碰撞弧以减少约束集的数量,提高了边排序数量的灵活性。最后,算法通过每次增加一部分边的迭代来对边进行排序。为了保证打印轮廓足够平滑,作者还在边上定义了一个损失函数,最小化新轮廓的损失问题等价于寻找一个曲面切分对偶图的最小割问题。保证每一个需要打的边必须与之前已经打印好的边连接,不在悬空的位置进行打印;在打印边时,打印机的机械部分不能与在该时刻之前打印的边的集合发生任何碰撞。
内容来源:《Printing arbitrary meshes with a 5DOF wireframeprinter》
大部分设计迭代仅会改变模型的小部分,而主体部分或者占比较多的部分一般不需要进行大的改动。因此,如何在已打印好的主体模型上进一步的打印更多几何特征是包裹打印领域研究的一个重要问题。同时,电子、光学元器件等其它有用的功能性模块与3D打印结合越来越紧密,通过多自由度机器人能够沿着多个方向,对这些功能性模块进行空间包裹式的打印。
(a)传统的计算机数字控制机床减材制造技术
(b) Zhao 等人提出的计算机数字控制机床增材制造技术
Zhao等人使用基于微机电系统(MEMS)的3D激光扫描系统设计了自动修复、修改打印物体系统;该系统使用了提出的计算机数控机床累积制造作为系统的打印部分,使用德州仪器公司的双轴模拟指向镜装置 TALP1000B 快速反射点激光,使用 CCD 摄像头接受激光进行扫描。集成在系统内的3D激光扫描系统通过代数点集曲面(AlgebraicPoint Set Surface, SPSS)拟合和层式深度法线图片(Layered Depth Normal Image, LDNI)表示的方法,将扫描的点云模型转换成三角网格模型,根据用户的需求自动规划出用于计算机数控机床累积制造修复、修改打印模型的路径。作者通过修复损坏了一个齿的齿轮对提出的计算机数控机床累积制造系统进行了验证,同时作者还在塑料茶壶的曲线表面上打印英文字母验证了该机构对塑料物体的修改能力。
内容来源:《An integrated CNC accumulation system for automatic building-around-inserts》
目前解决大尺寸3D打印的方案有两个方向,在图形学领域的解决方案是,将三维模型分割成一系列满足打印机打印尺寸的模型部件,进行打印后再组装;机器人学领域的方法是,通过使用自由度更高的机器人系统进行一体化打印,避免多次打印再组装带来的精度问题,同时也能够大幅提高打印尺寸。
使用数字几何处理将模型分割打印再组装的方法具 有诸多不足,如图中所示具有较明显的缝隙
Wu、Yi等人提出通过使用德尔塔构型实现大尺寸规模物体的四自由度DLP 3D打印。该系统中,3D打印机通过Arduino芯片控制打印机,通过UART串口与PC连接,通过每一层的水平移动拼接打印一个大模型。在计算几何中,用最少数量的正方形覆盖一个任意多边形是NP-Hard问题。
增加了一个额外旋转自由度的 Delta DLP 打印机
研究人员提出了两种近似优化算法。
第一种方法离散采样多边形刚体旋转所有可能的旋转角度,再使用径向基函数拟合成一个角度的连续函数从而近似求解最优值,该算法时间复杂度为O(n³log n);
第二种方法使用多边形中轴进行过分割再合并,算法时间复杂度为O(n²log²n)。从而在算法层面,将大体积三维模型的二维切片分解为块数最小的、大小满足可投影要求的多边形集合。
由于德尔塔机器人具有较好的扩展性能,例如ABBIRB360-6、1600FlexPicker的最大可达范围约为1.6米,所以这类方法为扩展大部分传统3D打印机来打印大尺寸模型提供了一个良好的解决方案。
内容来源:《Delta DLP 3D printing with large size》