基于Python的多轴线连杆转向系统数字化平台设计*

2022-08-30 09:42康绍鹏强红宾刘凯磊
制造技术与机床 2022年9期
关键词:孔位轴线连杆

陈 俊 兰 希 康绍鹏 强红宾 刘凯磊

(①江苏理工学院机械工程学院,江苏 常州 213001;②中国机械工程学会,北京 100048)

连杆式多轴线运载装备以其大载重、多模块化组合以及高速运输等特点在大型特种设备运输中有着广泛的应用。目前国外对连杆式轴线车的研究较为成熟,其设计软件方面也在不断完善,国内轴线车的研究起步较晚,相应的设计制造过程缺少重要的理论及软件支撑,并且针对连杆式轴线车复杂使用工况,其设计过程低效且繁杂,难以实现高效设计制造。

国内许多学者对数字化设计进行了研究并取得了一定成果,孙智慧等基于VB设计了一种可以快速生成涡轮式搅拌器三维模型并使其参数化的系统[1];许明辉等利用C#语言以及SolidWorks二次开发技术,建立了RV减速器参数优化设计的CAD系统平台[2];周璨等将基于智能制造的数字化方法引入到农机产品的设计上,并采用大数据云平台技术为数字化虚拟设计和虚拟制造提供了存储和计算平台[3];金辉等基于不规则三角网建模原理、三角形条带法建模原理以及CAD软件的二次开发,研发了海洋管道路由及结构数字化设计平台[4];易扬等基于数字孪生的复杂产品装配精度预测方法总体流程,以某型卫星结构部装为例搭建了复杂产品数字孪生装配软硬件系统平台[5]。

因此,提出多轴线连杆转向系统数字化设计平台研究,包含应用界面与平台架构开发、多软件协同、目标参数化设计、自动化装配和目标模型优化等,以满足40轴线以内的连杆转向系统数字化设计需求,提高设计精度和设计效率。

1 多轴线连杆转向系统

1.1 多轴线连杆转向系统的组成

以三轴线连杆转向系统为例,如图1a所示,车体共3个轴线,从左至右依次为第一轴线、第二轴线和第三轴线,每个轴线均有两个转向轮组,每个轮组均有4个轮胎。三轴线运输车转向通过铰接在端梁上的转向液压缸将转向力传递给蝴蝶板,通过蝴蝶板的转动,并经第一轴线横拉杆将转向力传递至与轮组相固定的第一轴线转向连接板,最终将转向力传递到车辆中的第一轴线位,第二轴线转向同理;第三轴线与第二轴线呈联动状态,当第二轴线转动时,第三轴线经第三轴线横拉杆带动第三轴线转向连接板,并最终实现车辆的转向。每个转向臂上有多个不同的转向连接孔,根据车辆轮轴离转向中心线距离,来选择不同的转向孔与横拉杆进行连接。连杆式转向机构的优点是结构简单、维修方便,缺点是转向角度受限制,需要不断计算转向角度的大小,来选择不同的连接孔位与横拉杆进行连接。三轴线连杆转向轴线车二维图及三维图如图1所示。

图1 三轴线连杆转向运输车示意图

1.2 运动学模型建立

三轴线连杆转向系统通过各点和各连杆间的位置关系,等效简化为如图2所示的连杆机构简图。

图2 连杆机构简图

将第一轴线的连杆机构拆分为如图3所示的四连杆机构,各杆件之间的连接均为圆柱形铰链,其中a、b、c均为各连杆长度,d为两铰链之间的直线距离,θ1为连杆a与X轴的夹角,θ2为连杆b与X轴的夹角,θ3为连杆c与X轴的夹角,φ1为AD与DE之间的夹角。以左侧交接点为坐标系原点,建立如式(1)所示矢量方程。

图3 第一轴线连杆机构简图

进而求解得

求得

最终求得转向臂转角为

且第一轴线外侧轮胎转角为

同理,可求得第二轴线转角与转向臂转角之间的关系,以及第三轴线与第二轴线转角之间的关系。

1.3 转向孔位优化模型建立

轴线车实际运转时,各轴线轮胎不能实现理论上的纯滚动,优化的主要目标是将转向连杆进行最优布置,减小轮胎滑动摩擦和转角误差。

连杆转向系统以各轴线轮胎的理论转角和实际转角的加权偏差绝对值均值为优化对象,求出最小值以实现转向连接板及蝴蝶板孔位布置的最优解。

任意轴线的目标函数式为:

式中:M为计算涉及轴线个数;fi(X) 为优化对象;λi为权函数,其中i=1, 2, ···, 2m-1,令λi=1;Δθi为第i个车轮的理论转角与实际转角的偏差量;ω(β1)为加权系数。

用整体坐标(xqi,yqi)和(xhi,yhi)分别表示第i根连杆的左端连接点和右端连接点的位置,整体坐标系如图4所示,连杆坐标布置如图5所示。

图4 轴线车整体坐标布置图

图5 连杆坐标布置图

坐标表达式为:

式中:φi为连杆与x轴的夹角;li为第i根连杆的长度。

为减少优化设计变量,并达到最终优化结果,设定连杆左端连接点的整体坐标及其与x轴夹角的局部坐标为优化设计变量,则有:

式中变化范围为:

2 数字化设计平台开发

数字化设计平台以Python汇编语言为支撑,提供平台框架整体以及图形用户界面,采用多软件接口互联技术,图形用户界面所收集得用户所输参数,可通过Python-MATLAB接口,将各项参数输入至优化程序文件并进行优化计算,得出最优模型配置参数,再由Python主体程序,经Python-SolidWorks接口,输入至SolidWorks三维模型中,进而实现零部件参数化设计、自动装配和目标模型优化等功能[6-9]。

2.1 平台架构设计

数字化设计平台可分为应用层、功能层、工具层以及数据层[10]。平台利用Python建立整体软件框架,在应用层上为用户提供各功能软件接口以及图形用户界面,解决不同计算软件数据孤立的问题。平台在功能层面可为用户提供数学模型计算和优化,进而对SolidWorks中三维模型进行参数化设计,对装配体模型进行自动化装配。平台整体围绕Python、SolidWorks以及MATLAB多软件协同展开,基于Python主体程序,经优化算法程序,进而修改并重建SolidWorks三维模型,输出各机构运动轨迹和误差。数字化设计平台框架如图6所示。

图6 数字化设计平台软件框架

2.2 多软件协同接口设计

数字化设计平台利用Python汇编语言编写主体程序,由于SolidWorks未提供专门用于Python的开发工具包,采用第三方库win32com操作com对象,以实现对SolidWorks的功能调用。

通过运行Python安装目录下子目录“Libsitepackageswin32comclient”的 makepy.py 程序,选择“Sldworks 2018 Type Library[1a.0]” 可 生 成 名 为“83A33D31-27C5-11CE-BFD4-00400513BB57x409x1 x0.py”的库文件,即可实现与SolidWorks 的应用程序接口 ( application program interface,API)的组件对象模型 ( component objectmodel,COM) 实现实时连接。

SolidWorks API的网络结构是多层次的自上而下的树型。对于类对象的调用也是通过自上而下,SolidWorks是根目录对象类,处于所有类对象的底层,是调用API宏文件的唯一入口[11-13]。即可通过Python与SolidWorks互联接口,实现对SolidWorks草图、零件及装配体等进行编辑修改等操作。

接口关键代码设计为:

数字化设计平台通过图形用户界面,收集用户所输入数据,需通过Python与MATLAB接口,实现数据传递,为实现调用MATLAB中库函数以及用户自定的.m函数文件,需给Python安装MATLAB的API程序,通过MATLAB提供的setup.py文件用于编译与安装MATLAB引擎。打开Window平台的cmd命令,将操作文件夹位置转移到MATLAB安装文件夹下的Python脚本文件位置,最后利用Python setup.py install命令安装 MATLAB 引擎。

待MATLAB引擎安装完毕后,需在Python中添加调用命令,关键代码设计为:

3 连杆转向系统数字化平台应用设计

3.1 程序开发流程

针对连杆式轴线车的多种使用工况,首先确定产品需求,明确设计思路及方案,对各连杆转向系统各机构模块建立模型库,分析各零部件之间的装配关系,在草图绘制及特征建立的过程中减少不必要的尺寸,再保存至程序所指向的目录。使用时由程序调用模型文件,通过图形界面获取用户所需轴线车连杆转向系统的各项参数,经优化算法对参数进行计算,得出最优转向连杆尺寸和布置方式,再由主体程序文件,将连杆尺寸和孔位布置传递至三维模型,对其进行参数化设计、自动装配以及目标模型优化,最后通过程序对模型的相关零部件进行重建和另存,得到用户所需连杆转向系统最优模型,同时可以生成各轴线机构运动轨迹、转向角度、铰接点约束力曲线和转角误差等。总体程序设计流程如图7所示。

图7 总体程序设计流程图

3.2 参数化设计与装配

连杆转向系统数字化设计平台对零部件设计、修改、优化和自动装配采用的主要方式为参数化设计,主要有两种方式:一种是通过SketchManager.InsertSketch(True)函数,直接进行草图绘制,再通过Featuremanager.FeatureExtrusion3()函数对草图进行建模操作;另一种是对零件的标注尺寸进行直接修改[14]。

针对轴线车连杆孔位配合多变的特性,相较于尺寸驱动法,第一种配置尺寸方法,将使内存占用量大大增多,且代码量较大,故采用第二种尺寸驱动法,建立连杆零部件模型库,将库文件保存在程序指向位置,待用户输入所需轴线车的相关参数,通过Python-MATLAB接口传输对应数据,经程序优化算法计算,得到所需转弯条件下最优连杆尺寸,通过选取连杆对应草图名称,将最优连杆尺寸传递至模型中,修改连杆草图尺寸,以实现连杆参数化设计。该方法以约束为前提,程序量少,特征约束由模型自动产生,修改过程中模型拓扑结构基本保持不变,避免了文件占用内存过大的弊端[15]。

关键程序设计有:

连杆转向系统机构尺寸修改完毕后,根据优化程序中的连杆尺寸配置,将系统装配体中连杆依次进行装配。由于在SolidWorks装配体中,需手动对多个零部件配合进行修改,不利于提高设计效率,故采用自动装配。装配体修改配合关系主要有两种方式:一种是通过ReplaceComponent2( )方法,一键替换所需零部件;另一种是通过AddMate3( ),对所选零部件特征进行配合[16-17]。

为了便于连杆转向系统自动装配的实现,在零部件设计阶段建立好装配所需的基准轴、基准面等特征,并且针对连杆、蝴蝶板及转向连接板孔位间配合,对装配体文件进行预处理,对连杆进行位置约束,使其存在一定的自由度,待配合孔位装配完全,使其完全约束。通过API文件下Extension下的SelectByID2函数,分别选择两个或多个基准特征,再调用addmate3配合函数[12-13],即可完成装配。

关键代码设计为:

3.3 图形用户界面设计

利用Python3.7作为汇编语言,采用sublime作为编译软件,实现对主体程序的快速修改,通过PysimpleGUI库实现对数字化设计平台图形用户界面的编辑修改,连杆转向系统数字化设计平台图形用户界面示意图如图8所示。

图8 连杆转向系统数字化设计平台图形用户界面示意图

部分图形界面代码设计为:

3.4 参数优化应用

以某公司三轴线连杆转向系统需求为输入,其中轴距L=1 500 mm,轮距B=1 775 mm,车速 60 km/h,整车尺寸8 m×2.5 m,转向连杆材料采用Q345钢,连杆铰接处采用润滑处理,摩擦系数取0.07,间隙配合选用H9/f9,各轴线内外侧转角误差小于2.5°。其中转向连接板以及蝴蝶板上的连杆孔位初始坐标如表1所示,可求得各轴线轮胎转角的理论值与实际值,利用转向孔位优化模型,可求得各孔位坐标变化和优化后角度变化,优化后坐标如表2所示,第一、二、三轴线转角变化如图9~11所示。

表1 转向连接板及蝴蝶板上的孔位初始数据

表2 转向连接板及蝴蝶板上的孔位优化后数据

由图9~11可知,各轴线轮胎的实际转角与理论转角存在较大误差。其中,第一轴线内外侧轮胎转角误差分别为26.81°和31.74°,经优化后内外侧转角误差控制在2.4°以内;第二轴线内外侧轮胎理论转角曲线相近,与实际转角误差分别为6.31°和12.38°,经优化后第二轴线外侧转角接近理论转角,内侧转角仍存在一定误差,约为2.3°;第三轴线内外侧理论转角与实际转角误差较小,分别约为1.81°和1.56°,经优化后内外侧转角误差控制在1.8°以内。各轴线内外侧转角优化效果明显,满足设计需求,设计效率提高约45%。

图9 第一轴线转角优化对比图

图10 第二轴线转角优化对比图

图11 第三轴线转角优化对比图

4 结语

(1)以Python为汇编语言,设计开发应用界面与平台架构,实现SolidWorks和MATLAB软件互联,开发了多轴线连杆转向系统数字化设计平台。

(2)提出了一种可实现多轴线连杆转向系统应用界面与平台架构开发、多软件协同、目标参数化设计、自动化装配、目标模型优化的数字化设计平台方法,设计效率提高约45%以上。

(3)基于数字化设计平台,利用连杆转向系统运动学模型和转向孔位优化模型,对转向机构各孔位进行参数化优化分析,将各轴线最大转角误差降低到2.4°以下。

猜你喜欢
孔位轴线连杆
孔洞缺陷位置对灰岩力学特性影响的数值模拟研究
基于图像处理技术的零件孔位尺寸快速测量方法
利用轴线交错修整砂轮凸度曲线的方法探讨
复杂建筑群项目的建筑轴线相关性分析
空铁联运+城市轴线,广州北“珠江新城”崛起!
大咖妙语论道!于轴线之上开启广州城央最宜居的大未来!
基于Kriging模型插值的孔位修正策略
连杆的设计及有限元分析
灌浆法处理公路高填方路基滑坡
470Q汽油机连杆设计