基于NX与MatlabSimulink的协同仿真与应用

2020-05-01 13:37

基于NX与Matlab/Simulink的协同仿真与应用

1引言

传统的机电产品设计中,机械结构设计和控制系统设计是各自独立的,分别采用功能不同的软件进行设计、调试和试验,最后通过物理样机,进行机械结构和控制系统的联合调试,如果发现问题,需要

[1]

各自分别修改,然后再进行物理样机的制造和调试,这需要较长的开发周期。

NX是当今世界最先进的CAD/CAM/CAE三维集成化软件之一,为用户提供了一整套集成的、全面的产品开发解决方案,用于产品设计、分析和制造,广泛应用于航空航天、汽车、通用机械和电子等工业领域。Simulink是MATLAB中的一种可视化仿真工具,它提供了一个动态系统建模、仿真和综合分析的集成环境,被广泛应用于控制理论和数字信号处理的复杂仿真和设计,是常用的控制系统设计软件之一。

利用NX与Simulink的协同仿真,可以将机械结构与控制系统设计仿真软件有机结合起来,然后对系统进行协同分析,直到获得满意的设计效果,这大大的提高了设计效率,缩短了开发周期,降低了开发产品的成本,获得了优化的系统整体性能。

本文介绍了NX8.0与Matlab/Simulink(2010A)协同仿真的方法,通过该方法,可充分发挥软件各自的特长,为复杂机电产品设计仿真提供一集成化平台。

2 NX与Simulink协同仿真流程

NX与Matlab/Simulink实现协同仿真的流程如下: 1)在NX中完成机械结构的设计。

2)在NX用户默认设置中指定可执行文件matlab.exe的位置(文件?用户默认设置?运动分析?分析),并设置采样时间为0.001。 基金项目:国家自然科学基金资助项目(50905100) 3)设置协同仿真环境。产品的机械结构设计完成后,进入NX的运动仿真模块,指定动力学分析,高级解算方案选择协同仿真。

4)设置控制/动态解决方案。解算方案类型选择常规驱动,分析类型选择控制/动力学。 5)根据具体情况创建运动副、连杆、标记点(Marker)、传感器等,传感器必须依靠标记点才能把信息通过工厂输出传递给控制系统。

6)创建工厂输入。工厂输入是Simulink控制系统输出到NX机械机构信息的容器,Simulink中的控制系统把生成的输出信号保存在工厂输入中,工厂输入可以是力、扭矩等。

7)通过函数管理器把工厂输入作为运动幅的驱动,也可作为力或扭矩添加到系统中,控制系统是通过包含工厂输入的运动函数来驱动机械结构的。

8)创建工厂输出。工厂输出是包含机械结构的状态信息的容器,通过函数管理器可以把位移、速度、加速度、传感器、表达式等信息输出到Simulink中的控制系统。并把工厂输出添加到解算方案中,否则无法进行下一步。

9)求解解算方案。在求解对话框中协同仿真的主机程序要选择Simulink,此时在仿真文件*.sim目录下会生成两个m文件,_Plant.m与_PlantIO.m。

10)在Simulink中创建控制系统模型(*.mdl文件),该文件表示了控制系统的行为,模型中留下空白区域,以便在控制系统集成的时候这里放置代表机械结构的NX工厂块(NXMotion Plant Block)。 11)在Matlab中,设置当前目录为_Plant.m与_PlantIO.m所在目录,运行_Plant.m得到如图1中所示的NXMotion Plant Block,把它拖到上一步创建控制系统模型中,并用信号线与其上下游方框图连接,最终如图1所示。设置NXMotion Plant Block中的NX Motion Plant的NXMotion_step为1000。

12)运行Simulink控制系统仿真。设置仿真时间,运行协同仿真,在此过程中NX与Simulink会发生多次信息交互。

2

13)结果可视化输出。在NX中显示模型动画,观察集成系统的行为,在NX中或者Excel中绘制各种信息的分析图表。

图1 Simulink中Delta机器人运动学控制模型

3 NX与Simulink信息传递

上面第12)步时运行协同仿真,实现NX与Simulink的信息传递。在进行协同仿真之前,需要在NX中设置模型的工厂输入和工厂输出,工厂输出是NX中机械结构信息的输出,工厂输入是Simulink中的控制信息输入到机械结构中,其信息传递如图2所示,通过定义工厂输入和工厂输出,实现NX与控制程序之间的闭环控制,即从NX输出信号进入控制程序的同时,控制系统也输出信号到NX中。以上行为是通过NXMotion Plant Block框图来实现的,其内部

结构如图3所示,其含义如下: 工厂输入 NX/Motion Simulink 1)Pin_a1、Pin_a2、Pin_a3是在NX/Motion环境中定义

的工厂输入,把Simulink中的控制信息输入到NX中,用以

图2 NX与Simulink信息传递 控制机械结构运动。

2)MUX:把多个输入信号转换为矢量信号。

3)NXMotion_inputs:把数据信息从NX中的RecurDyn传输给Matlab。 4)Dynamic Model:设置采样时间/等待时间信息。

5)NXMotion_outputs:把数据信息从Matlab传输给NX中的RecurDyn求解器。 6)Demux:解析输出的向量信号。

[2]

7)最右边的一列是工厂输出,在NX/Motion中定义的控制系统要输出给机械结构的信息容器。

3

图3 NXMotion Plant Block

图4 Delta机器人及输送带模型

4 Delta机器人运动学协同仿真

Delta机器人是一种具有3个平动自由度的高速并联机器人,它是由三组完全相同摆动杆机构连接定平台(上正三角形)和动平台(下正三角形)的空间机构,每组摆动杆机构均由驱动杆和从动杆(四个球铰与杆件组成的平行四边形)组成,驱动杆与定平台之间通过转动副连接,从动杆与动平台通过转动副连接。由于结构

动平台运动轨迹

比较复杂,其位置分析也复杂。Delta机器人及工件输送工件运动轨迹 带模型如图4所示。

在NX中设计完成机械结构,进入NX/Motion环境

图5 沿工件运动方向动平台与工件运动轨迹 中,动、定平台中心与移动工件中心分别设置三个标记

点(Marker),然后设置动平台、工件分别相对于定平台在XYZ三个方向的相对距离传感器,通过工厂输出,把相对距离传输给Simulink中的控制程序。设置驱动电机转角的三个工厂输入,并通函数管理器添加到转动副的驱动中。

根据动平台的位置,用解析法从运动学方程出发,经过一系列消元运算,反解电机转角,把反解过程集成到Simulink框图中,并完成控制模型;通过设置工厂输入与工厂输出,把控制系统的反馈经工厂输入利用函数管理器施加到电机转角控制上,这样就构成了一个闭环系统。系统在运行时,工件会沿着自己的轨迹向前运动,此时传感器把工件和动平台的状态通过工厂输出传递给控制系统,控制系统计算后把位置反解得到的电机转角通过通常输入给NX中旋转副的驱动,每0.001秒钟采样一次。经过仿真,如图5所示,动平台大约在0.9秒的时候开始和工件运动同步。

5 结论

从Delta机器人运动学协同仿真结果可以看出,动平台会准确的定位到移动工件的位置,并保持同步,从而证明了NX与Matlab/Simulink协同仿真的正确性。在Simulink或者NX中可做分析各种情况的图表动画等,使系统分析更加共和。以此为平台,可进行更复杂的机电产品协同仿真,例如协同仿真时考虑电机特性、柔性体等。


基于NX与MatlabSimulink的协同仿真与应用.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:海淀区九年级第二学期期末练习答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: