面向混凝土3d打印的空间路径拟合方法及系统
技术领域
1.本发明涉及混凝土3d打印的路径数据处理方法,具体涉及一种面向混凝土3d打印的空间路径拟合方法及系统。
背景技术:2.3d打印技术作为最核心的数字建造技术,广泛应用于航天、医疗等领域,目前已逐步趋向于成熟,但在土木工程智能建造领域,3d打印技术仍处于起步阶段。目前混凝土3d打印基本采用三自由度方式进行运动,多数应用桁架式打印机在二维平面堆积成型,该方法基于平面分层进而在二维平面进行路径规划,无法实现打印头位姿的实时控制。在当前技术中,缺少混凝土多自由度打印的控制方法,尤其对于空间曲面的分层和空间内非平面的路径生成尚无方法,不能实现任意复杂的混凝土结构多自由度灵活打印。
3.此外,虽然在航天、医疗领域已实现多自由度3d打印,各类切片软件包含丰富的路径规划算法。然而目前市场尚未缺少专门针对混凝土3d打印的空间路径规划方法,无法根据混凝土打印模型的特点进行空间路径拟合,进而实现模型分层方向和打印头路径走向的最优化。
技术实现要素:4.本发明的目的是提供一种面向混凝土3d打印的空间路径拟合方法及系统,以至少解决混凝土3d打印中模型分层方向和打印头路径走向的最优化问题。
5.为了达到上述目的,本发明所采用的技术方案为:面向混凝土3d打印的空间路径拟合方法,所述方法包括:建立打印模型, 以打印机器人底座为原点建立世界坐标系;对打印模型进行切片分层,得到多层切片模型,获得各层切片模型的模型路径点序;提取各层切片模型的法向量z,基于模型路径点序构建相邻两点的点间矢量,求解法向量z和点间矢量所构建平面的法向量y;以模型路径点序为原点,构建包含法向量y和点间矢量的基平面p;根据机器人工具端坐标确定欧拉旋转矩阵t,通过欧拉旋转矩阵t对基平面p进行坐标变换,得到机器人工具端坐标系下的空间路径点序;基于空间路径点序的坐标信息控制打印头姿态。
6.进一步地,对打印模型进行切片分层,得到多层切片模型,获得各层切片模型的模型路径点序包括:选择切片模型的基准线;将基准线以固定长度进行等分,分别在等分点处建立切片平面;基于切片平面对打印模型进行切分,得到打印模型的空间路径;提取空间路径的关键点序,获得各层切片模型的模型路径点序p1,p2,
…
,pn,n≥3。
7.进一步地,提取各层切片模型的法向量z,基于模型路径点序构建相邻两点的点间矢量,求解法向量z和点间矢量所构建平面的法向量y;以模型路径点序为原点,构建包含法向量y和点间矢量的基平面p包括:提取各层切片模型的法向量z;基于各层切片模型的模型路径点序,求解相邻两点p
n-1 (x
n-1
,y
n-1
,z
n-1
) 和p
n (xn,yn,zn) 的点间矢量p
n-1
pn;求解法向量z和点间矢量p
n-1
pn所构建平面的法向量y;以模型路径点序为原点,构建包含法向量y和点间矢量p
n-1
pn的基平面p。
8.进一步地,根据机器人工具端坐标确定欧拉旋转矩阵t,通过欧拉旋转矩阵t对基平面p进行坐标变换,得到机器人工具端坐标系下的空间路径点序包括:建立机器人工具端坐标系,设定(x,y,z,a,b,c)为机器人工具端坐标,得到欧拉旋转矩阵t,建立方程1:对欧拉旋转矩阵t 进行齐次转换,得到矩阵t’,其中α、β、γ为旋转角度;对基平面p进行齐次矩阵化,得到矩阵m,矩阵m和矩阵t’相乘得到旋转矩阵r,通过方程判断旋转矩阵r是否成立:成立则建立方程2;不成立则建立方程3;解算方程求得a,b,c ;根据打印需求判断是否启用轨道外部轴e1,当不启用轨道外部轴e1时,则按照(x,y,z,a,b,c)的格式存入机器人工具端坐标系下的空间路径点序中;当启用轨道外部轴e1时,调用在世界坐标系下模型路径点序的y值,作为轨道外部轴e1的位置状态。
9.进一步地,基于空间路径点序的坐标信息控制打印头姿态包括:将空间路径点序编译为g代码,读取g代码,根据g代码的坐标信息,控制机器人打
印头姿态。
10.面向混凝土3d打印的空间路径拟合系统,所述系统用于完成上述的方法,包括:模型建立模块,用于建立打印模型, 以打印机器人底座为原点建立世界坐标系;切片分层模块,用于对打印模型进行切片分层,得到多层切片模型,获得各层切片模型的模型路径点序;基平面构建模块,用于提取各层切片模型的法向量z,基于模型路径点序构建相邻两点的点间矢量,求解法向量z和点间矢量所构建平面的法向量y;以模型路径点序为原点,构建包含法向量y和点间矢量的基平面p;坐标变换模块,用于根据机器人工具端坐标确定欧拉旋转矩阵t,通过欧拉旋转矩阵t对基平面p进行坐标变换,得到机器人工具端坐标系下的空间路径点序;姿态控制模块,用于基于空间路径点序的坐标信息控制打印头姿态。
11.与现有技术相比,本发明的有益效果如下:1、本发明实现了混凝土多自由度3d打印,根据混凝土模型的特点进行空间分层,提升打印任意复杂混凝土结构的能力,满足混凝土多自由度3d打印的灵活要求。
12.2、该发明的方法不受机器人型号限制,空间路径拟合可根据机器人实际参数进行调整,优化模型分层方向和打印头路径走向,具有良好的适用性。
附图说明
13.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他实施例的附图。
14.图1是本发明一个实施例的方法流程图。
15.图2是本发明一个实施例的系统结构图。
16.图3是本发明一个实施例中箱型拱桥的拱圈模型图。
17.图4是本发明一个实施例中箱型拱桥的拱圈模型切片示意图。
具体实施方式
18.为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳实施方式。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本发明的公开内容理解的更加透彻全面。
19.应注意到,相似的标号和字母表示类似项,因此,一旦某一项在一个实施例中被定义,则在随后的实施例中不需要对其进行进一步定义和解释。此外,术语“包括”等以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。
20.另外,本发明实施例中涉及的步骤“s1”、“s2”等仅为了方便技术方案的描述,便于理解实施例的具体步骤和内容,不应被理解为对步骤顺序的限制,任何仅对步骤顺序的变
化都应在本发明的保护范围之内。
21.实施例1:本实施例采用的打印机器人具有kuka六自由度机械臂,外加轨道外部轴e1,共七个自由度,作为混凝土多自由度3d打印的运动机构。打印机器人具有底座,底座上设置机械臂,机械臂的机器人工具端设置打印头,打印机器人具有控制模块。基于该类型的打印机器人,本实施例提供了一种面向混凝土3d打印的空间路径拟合方法,步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行。
22.如图1,该方法包括:s1:建立打印模型, 以打印机器人底座为原点建立世界坐标系。
23.可通过计算机辅助设计软件建立混凝土打印模型,如autodeskinventor、solidworks、catia、pro/e、autocad、ug nx、solidedge、rhino。
24.s2:利用rhino的gh电池对对打印模型进行切片分层,得到多层切片模型,获得各层切片模型的模型路径点序。切片模型是通过rhino的gh电池进行参数化编程,然后根据打印模型结构特点切出的合理分层。具体为:选择切片模型的基准线;将基准线以固定长度进行等分,分别在等分点处建立切片平面;基于切片平面对打印模型进行切分,得到打印模型的空间路径;提取空间路径的关键点序,获得各层切片模型的模型路径点序p1,p2,
…
,pn,n≥3。
25.s3:提取各层切片模型的法向量z,基于模型路径点序构建相邻两点的点间矢量,求解法向量z和点间矢量所构建平面的法向量y;以模型路径点序为原点,即将点序的各个点都分别作为原点,构建包含法向量y和点间矢量的基平面p。具体为:提取各层切片模型的法向量z;基于各层切片模型的模型路径点序,求解相邻两点p
n-1 (x
n-1
,y
n-1
,z
n-1
) 和p
n (xn,yn,zn) 的点间矢量p
n-1
pn;求解法向量z和点间矢量p
n-1
pn所构建平面的法向量y;以模型路径点序为原点,构建包含法向量y和点间矢量p
n-1
pn的基平面p。
26.s4:根据机器人工具端坐标确定欧拉旋转矩阵t,通过欧拉旋转矩阵t对基平面p进行坐标变换,得到机器人工具端坐标系下的空间路径点序。具体为:建立机器人工具端坐标系,设定(x,y,z,a,b,c)为机器人工具端坐标,其中,x,y,z为机器人工具端坐标系的线坐标,a,b,c为机器人工具端坐标系的绕各轴的旋转坐标,a绕z轴旋转、b绕y轴旋转、c绕x轴旋转,得到欧拉旋转矩阵t,建立方程1:对欧拉旋转矩阵t 进行齐次转换,得到矩阵t’,其中α、β、γ为旋转角度;对基平面p进行齐次矩阵化,得到矩阵m,矩阵m和矩阵t’相乘得到旋转矩阵r,通过方程
判断旋转矩阵r是否成立,其中sy代表计算变量名:成立则建立方程2;不成立则建立方程3;解算方程求得a,b,c;根据打印需求判断是否启用轨道外部轴e1,当不启用轨道外部轴e1时,则按照(x,y,z,a,b,c)的格式存入机器人工具端坐标系下的空间路径点序中;当启用轨道外部轴e1时,调用在世界坐标系下模型路径点序的y值,作为轨道外部轴e1的位置状态。
27.s5:基于空间路径点序的坐标信息控制打印头姿态;将空间路径点序编译为g代码,读取g代码,根据g代码的坐标信息,控制机器人打印头姿态。
28.实施例2:本实施例涉及了一种面向混凝土3d打印的空间路径拟合系统,用于完成实施例1所述的方法,如图2,系统包括:模型建立模块,用于建立打印模型, 以打印机器人底座为原点建立世界坐标系,用于实现实施例1中的步骤s1。
29.切片分层模块,用于对打印模型进行切片分层,得到多层切片模型,获得各层切片模型的模型路径点序,用于实现实施例1中的步骤s2。
30.基平面构建模块,用于提取各层切片模型的法向量z,基于模型路径点序构建相邻两点的点间矢量,求解法向量z和点间矢量所构建平面的法向量y;以模型路径点序为原点,构建包含法向量y和点间矢量的基平面p,用于实现实施例1中的步骤s3。
31.坐标变换模块,用于根据机器人工具端坐标确定欧拉旋转矩阵t,通过欧拉旋转矩阵t对基平面p进行坐标变换,得到机器人工具端坐标系下的空间路径点序,用于实现实施例1中的步骤s4。
32.姿态控制模块,用于基于空间路径点序的坐标信息控制打印头姿态,用于实现实施例1中的步骤s5。
33.本领域技术人员可以理解,本发明实施例的全部或部分功能可以通过硬件的方式实现,也可以通过计算机程序的方式实现。当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读
存储器、随机存储器、磁盘、光盘、硬盘等,通过计算机执行该程序以实现上述功能。例如,将程序存储在设备的存储器中,当通过处理器执行存储器中程序,即可实现上述全部或部分功能。另外,当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序也可以存储在服务器、另一计算机、磁盘、光盘、闪存盘或移动硬盘等存储介质中,通过下载或复制保存到本地设备的存储器中,或对本地设备的系统进行版本更新,当通过处理器执行存储器中的程序时,即可实现上述实施方式中全部或部分功能。
34.实施例3:本实施例以箱型拱桥的拱圈模型为例,通过实施例1的方法对模型打印进行路径拟合。
35.参照图3和图4,具体过程为:建立打印模型:通过rhino建立箱型拱桥的拱圈模型, 如图3所示,以机器人底座为原点建立世界坐标系;初始化各项打印参数,如打印层高h、打印头宽度r。利用rhino的gh电池对打印模型进行切片分层,分层方式如图4所示,分层具体规则如下:(1)以最小尺寸的箱体包裹拱圈模型,选择切片分层基准线;如图4,拱圈左右高度不一样,通过构建一个最小尺寸的箱体将拱圈模型包裹,方便划分切片平面,确定层高后,将箱体四个竖边等分,连接等分点后构成切片平面。
36.(2)将基准线以固定长度h(打印层高度)进行等分,分别在等分点处建立切片平面;(3)以切片平面为基础对打印模型进行切分,得到打印模型的空间路径;(4)提取空间路径的关键点序,获得分层后的模型路径点序p1,p2,
…
,pn,n≥3,如30
×
50个点。
37.提取各层切片模型的法向量z;基于各层切片模型的模型路径点序,求解相邻两点p
n-1 (x
n-1
,y
n-1
,z
n-1
) 和p
n (xn,yn,zn) 的点间矢量p
n-1
pn;求解法向量z和点间矢量p
n-1
pn所构建平面的法向量y;以模型路径点序为原点,构建包含法向量y和点间矢量p
n-1
pn的基平面p。基平面p的构建方式是通过rhino script函数createplane进行构建的,需要提供的参数为模型路径点序、法向量y、点间矢量p
n-1
pn。
38.参照kuka六自由度机械臂的工具端方向建立机器人工具端坐标系, 采用的kuka六自由度机械臂使用z-y-x转动的欧拉角坐标系描述方法,设定(x,y,z,a,b,c)为机器人工具端坐标,得到欧拉旋转矩阵t,建立方程1:对欧拉旋转矩阵t 进行齐次转换,得到矩阵t’,其中α、β、γ为旋转角度;对基平面p进行齐次矩阵化,得到矩阵m,矩阵m和矩阵t’相乘得到3
×
3的旋转矩阵r,通过方程
判断旋转矩阵r是否成立:成立则建立方程2;不成立则建立方程3;解算方程求得a,b,c 。
39.方程2和方程3的建立是依据python语言编译的,其中math.atan2是tan的反三角函数,返回给定的 x 及 y 坐标值的反正切值。
40.根据打印需求判断是否启用轨道外部轴e1,当不启用轨道外部轴e1时,则按照(x,y,z,a,b,c)的格式存入机器人工具端坐标系下的空间路径点序中;当启用轨道外部轴e1时,调用在世界坐标系下模型路径点序的y值,作为轨道外部轴e1的位置状态。
41.(5)将空间路径点序编译为g代码,编译格式为:gpoint[%s,%s]={x %s,y %s,z %s,a %s,b %s,c %s,e1 %s,e2 0,e3 0,e4 0}控制模块循环读取g代码,将坐标信息转换为机器人打印头姿态。
[0042]
本发明适用于混凝土多轴3d打印机的具有普适性的路径规划,以满足混凝土多自由度3d打印的灵活要求,将3d打印技术在智能建造领域的应用发挥到极致。
[0043]
以上应用了具体个例对本发明进行阐述,只是用于帮助理解本发明,并不用以限制本发明。对于本发明所属技术领域的技术人员,依据本发明的思想,还可以做出若干简单推演、变形或替换。