当前位置: 首页 > >

一种新的基于Adams与C_C_语言的模块化协同仿真模式

发布时间:

F eb 2011 V ol 29 N o 1 , .

航 天 控 制 A erospace Contro l

63

一种新的基于 Adam s与 C / C+ + 语言的 模块化协同仿真模式
黄铁球
1





2

滕宝毅

2

1 北京交通大学, 北京 100044 . 2 北京控制工程研究所, 北京 100190 . 摘 要 基于多体动力学软件 Adam s和 C /C + + 语言, 提出一种新的模块化协

同仿真模式。该模式中协同仿真过程的主控权交由用户程序, Ada s动力学仿 m 真流程与 C /C+ + 语言的控制仿真流程均作为独立的过程供用户程序调用, 实 现用户主控的模块化协同仿真, 为控制系统的验证、 改进与优化奠定基础。该方 法在月球车的导航控制系统设计中起到重要作用。 关键词 月球车; 导航控制; 多体动力学; 协同仿真 中图分类号: V476 3 V448 15 3 . ; . 文献标识码: A 文章编号: 1006 3242( 2011) 01 0063 04
+

A New M ode of Co Simulation Based on Adam s and C / C+ + Language
HUANG T ieqiu
1

XING Yan

2

TENG Baoy i

2

1 B eijing Jiaotong Un iv ersity, Be ijing 100044 Ch in a . , 2 B eijing Institu te of Contro l Eng in eering Be ijing 100190 Ch in a . , , Abstract Based on the A dam s sof t are and C /C + + language, a new co sim ulation m ode is proposed. w In this m ode, the Adam s dynam ic sim u lation p rocess and C /C+ + control si ulation process are handled m by user program, the co sim ulation bet een dyna ics and control is achieved in them odular way. A n im w m portant role in the navig ation control sy stem design of lunar car is p layed by using this co sim ula tion m ode. K ey w ord s Lunar car; N aviga tion control; M ulti body dynam ics Co sim u lation ; 多学科协同仿真越来越成为工业领域高度复杂 产品一体化设计的重要支撑手段。多体动力学与其 代表性软件往往又是机、 液、 电、 控等多个学科协同 仿真的核心*台, 通过机械系统的动力学模型, 可以 有效地将液压传动、 控制系统、 流场作用等模型有效 结合起来, 各学科也皆可借用成熟的商业软件建立 各自的学科模型, 通过专门的接口程序来进行连接 形成多学*徊嫒诤系姆抡*台。 多学科仿真中, 结合非常紧密且最为常见的是 动力学与控制两个学科的协同仿真。在月球车的导 航控制系统设计过程中, 引入准确的动力学仿真模 型作为受控对象是非常必要的。但由于月球车模型 的复杂性, 难以准确推导其动力学方程, 并作为受控 对象。采用多体动力学及其代表性商业软件进行这 类复杂系统的动力学建模将使动力学问题变得容易 解决。可是导航控制模型往往是采用 C或 C + + 语
琰 ( 1974- ) , 女, 山东

收稿日期: 2010 03 01 作者简介: 黄铁球 ( 1971- ), 男, 湖南人, 讲师, 研究方向为多体动力学及多学科协同仿真; 刑

人, 高级工程师, 研究方向为航天器 制导导航与控制; 滕宝毅 ( 1976- ) , 男, 辽 宁人, 工程师, 研 究方向 为控制理 论与 控制工程。

64









2011年

言编制而成, 且独立封装, 难以拆分, 模块化程度很 高
[ 1]

解器下进行解算。所有控制模型的参数和动力学模 型的参数在该协同仿真模式下地位完全一致, 可在 Adam s建模环境下将这些参数统一进行参数化, 从 而充分利用 Adam s的实验设计和优化能力, 对该动 力学与控制协同仿真模型进行协同仿真和优化, 实 现动力学与控制间的协同设计。但由于提供的控制 器和滤 波 元 件 较 少, 目 前 仅 在 小 范 围 内 得 到 应 用
[ 5- 6]

, 如何能使以 Adam s为基础的动力学模型与以

C 或 C + + 为基础的控制系统模型实现模块化协同 仿真, 是亟待解决的问题。 本文基于多体动力学软件 Adam s所建立的动 力学模型, 研究一种新的协同仿真模式, 该模式可以 将动力学和控制程序仿真过程的控制权交予用户程 序, Ada s动力学模型与 C /C + + 等的控制模型变 m 成供用户程序调用的独立子模块。在用户程序中添 加数据接口程序, 实现动力学与控制的数据通信和协 同仿真, 完成对控制程序的验证、 改进与优化。该方 法在月球车的导航控制系统设计中起到重要作用。



( 3)动力学模型输 出方式: A dam s可对其 建立 的动力学模型进行线性化, 得到模型的状态方程如 下: x = Ax + Bu y = Cx + D u ( 1)

1 动力学与控制协同仿真的主要方式
基于 Adam s软件所建立的动力学模型, 与控制 系统之间的协同仿真主要有如下几个模式: ( 1) 与外部控制软件间的联合仿真: 以 S i ulin k m 为代表的控制系统建模仿真软件在控制系统的设计 中应用非常广泛
[ 2- 4]

式中, x是系统的状态变量, u 是系统的输入变量, y 是 系统的输出变量, A, B, C, D 分别为适当维系统矩阵。 将系统矩阵输出, 便可作为控制系统的受控对 象。该方法的优点是动力学模型完全以数学方程形 式给出, 可以嵌入到任何控制系统模型中; 缺点是该 动力学模型是线性化后的模型, 精确度降低。 上述 3种方法虽然已经得到许多实际应用, 但 是均无法在动力学模型精度有保证的同时, 解决与 C /C + + 语言等为代表的控制模型之间的模块化协 同仿真, 并将协同仿真的主控权交予用户程序, 均不 能满足月球车导航与动力学一体化设计过程中需要 的协同仿真。

。其核心思想是 利用 A dam s/

Con tro l模块在 Ada s动 力学模型和 S i ulin k控制 m m 系统模型之间建立双向数据传递管道, 将数据管道 运行的方式以 Si u link可识别的 S - Function的形 m 式嵌入 到 S i ulink 仿 真框 图 中, 实 现 Si ulink 与 m m Adam s之间 的数据通信。该仿真 模式的 主要优点 是: 1)动力学系统的建模和控制系统的建模与仿真 完全独立, 均可利用最为成熟的商业软件进行建模 与仿真, 建模的便利性和 求解的精确性 均有保障; 2) 接口方式成熟, 无需二次开发, 容易操作; 3) 可利 用网络协同仿真, Adam s与 S i ulin k可分别在不同 m 机器上求解运算, 计算效率可得到保障。其缺点是 仿真过程的主控权在 Si u link单方, 对动力学模型 m 的求解过程进行调控不可行。 ( 2) Adam s内 部模块间的联 合仿真: 在 Adam s 建模环境 下提供了 一个控制 工具箱 ( C ontro l T oo l k it), 它为使用者提供基本的线性控制和滤波元件, 可以帮助使用者快速建立 P I 控制或其他连续线性 D 控制模型。其基本元件有增益、 低通滤波器、 二阶滤 波器、 超前 - 滞后 滤波器、 ID 控制器等, 可在 Ad P am s建模环境下快速实施控制系统的建模。该控制 模型与 Adam s动力学模型无缝集成, 且将在同一求

2 一种新的 A dam s 与 C /C + + 的模 块化协同仿真模式
通过 对 Ada s软件深 入研究, 在 Adam s求解 m 器求解过程的控制子程序 基础上, 经过二 次开发, 可以有效实现 Adam s动力学模型与 C 或 C + + 语 言描述的控制系统模型间的模块化协同仿真。 2 1 Adam s求解 器求解过 程的控制 子程序 CON . SUB CONS 子程序可在用户自编程序中调用 Ad UB am s的仿真求解器对所需模型进行仿真。通过二次 开发程序的编制, 可以实现: 在仿真的过程中, 随时 暂停, 进行求解类型的更换, 如从动力学仿真转换到 线性仿真、 静*衡仿真等; 或者使用求解器命令来修 改模型, 如改变物体的质量、 转动惯量, 关节失效、 激

第 29卷

第 1期

黄铁球等: 一种新的基于 A dam s与 C /C+ + 语言的模块化协同仿真模式

65

活, 力的修改等; 或者 中间阶段输出各 种所需结果 等。 CONSUB对求解过程和模型修改均有很大的控 制权, 其功能非常灵活, 通过二次开发 程序进行调 用, 往往能收到意想不到的效果。 2 2 模块化协同仿真实现 . 以月球车导航控制与动力学联合仿真为例, 简 述 A dam s动力学模型与 C 语言控制模型之间的模 块化仿真过程。 动力学模型: 由于月球车整车动力学模型包含 车体动力学模型、 轮壤接触动力学模型、 复杂的控制 力矩模型等, 非常复杂, 采用商业动力学软件建模是 最为精准、 快速、 现实的一种手段。本研究采用 Ad am s建模器, 可以建立含有各种零部件、 关节、 驱动 等在内的月球车动力学模型, 并通过 Adam s力子程 序, 集成轮 - 壤接触动力 学模型和控制 力矩模型。 这些子程序所描述的 力学模型和 Adam s建立的动 力学模型一起, 构成复杂而详细的 Ada s整车动力 m 学模型。 导航控制系统模型: 导航控制系统模型以后是 要在月球车上装机工作的, 因此这种嵌入式软件往 往是采用 C 或 C+ + 语言来实现, 而不是采用商业 软件来建模。另外, C 或 C + + 所建立的导航控制 模型要求模块化设计, 在导航控制模型需要的时刻, 与 A dam s整车动力学模型之间进行数据通信, 将导 航控制命令传递给整车动力学模型, 并将整车动力 学模型的状态 ( 位置、 速度、 加速度等信息 ) 传递给 导航控制模型。 模块化协同仿真: 如图 1所示, 左端为 Ada s动 m 力学模型, 右端是以 C /C+ + 为代表的导航控制系统 模型, 中间为数据传递的接口程序。整个仿真过程的 控制与程序调用均通过 CONSUB 子程序来实现。在 CONS UB子程序中通过调用 Adam s的 U t ility Subrou t in es可获得 Ada s仿真过程中动力学模型的运动状 m 态, 如位置、 速度、 加速度等信息, 通过接口程序传递 到导航 控制模 型中 去, 导 航模型 的控 制指 令通 过 CONS UB子程序输入到 Ada s模型中去。整个协同 m 仿真的过程由 CONSUB子程序来进行协调和控制。 程序的 调用过 程如 图 2 所示。通过 CONSUB 子程序, 实现对 Adam s动力学仿真过程的控制, 并 对 C 或 C + + 编制的导航程序进行模块化调用, 在 Adam s和导航模块分别计算的时间间隔点上通过数 基于多体动力学软件 Ada s 研究一种新的协 m, 同仿真模式, 该模式可以将动力学模型和控制模型 仿真过程的控制权交予用户的程序, A dam s动力学
图 2 仿真流程 图 1 模块化协同仿真框图

据交换接口程序进行数据交换, 完成模块化动力学 与控制的协同仿真。

3 结论

66







制 1143 .

2011年

模型仿真与 C /C+ + 等的控制模型仿真作为独立的 模块供用户程序调用。在用户程序中实现模块化的 动力学与控制协同仿真, 完成对控制模块的验证、 改 进与优化。该方法在月球车的控制系统设计中起到 重要作用。 参
[ 1] [ 4] [ 5] [ 3]

王晓东. 基于 A da s与 S i u link的协同 仿真技 术及应 m m 用 [ J]. 计算机仿真, 2007, 24( 4) : 271 274. 宋明. 汽车制动防 抱死系统 的 A da s/ Si ulink 联合仿 m m 真 [ J]. 计算机仿真, 2004, 21( 10): 163 166. 陈黎卿. 基于 A da s的主动悬架控制研究 [ J]. 沈阳工 m 业大学学报, 2007, 29( 1): 9 13.






[ 6]

M akarand D, M ichae lT, Charles P, et a . A Co Si ula l m tion Env ironm ent for V irtua l Proto typ ing o f G round V ehi c les [ C ]. T he A SM E In ternational D esign Eng ineering T echnical Conferences and Computers and In fo r ation in m Eng ineer ing Conference L as V egas NV, U n ited States, , , Sep 4 7 2007 , .

徐亚伟, 陈 建新. 松软 土壤 环境 下月 球车 动力 学与 控 制的 仿 真 工具 [ J]. 空 间 控 制 技 术 与 应 用, 2008 34 , ( 6): 52 57 . 沈 俊, 宋健. 基于 A da s和 S i ulink 联合仿 真的 ABS m m 控制算法研究 [ J] . 系统仿真学报, 2007, 19( 5) : 1141

[ 2]

( 上接第 62页 ) 滤波算法进行研究, 考虑到传统常偏扩维算法计算 量大, 且 可能 出 现数 值 病 态的 问 题, 提 出 了 两级 UKF滤波算法分别对状态和偏差进行估计, 并利用 估计偏差对状态进行更新。通过数学仿真结果可以 看出, 利用本文所述的滤波算法可较精确估计和校 准常值偏差, 提高导航精度。该算法所需的内存不 超过 1MB, 一般星上计算机分配给导航算法的资源 为 2 MB, 由此可见该算法在目前月球卫星星载计算 机上是可实现的。 参
[ 1] [ 9] [ 8] [ 7]

m ators[ J].

IEEE T ransactions on A uto a tic Contro , m l

2000, 45( 11): 2182 2188. S inha R L , M aha lanab is A K. M ode ling Erro r Compen sation in N onlinea r Esti ation P rob lem [ J ]. m I EEE

T ransactions on syste s, M an and Cybernetics 1973, m , SM C 18: 632 638 . She reve R L, H edr ick W R. Sepa ra ting B ias and State Esti a tes in R ecurs ive Second O rder F ilter [ J] . m I EEE

T ransactions on A utom atic Contro , 1974, 19: 585 590 l . H sieh C S. G enera l Tw o Stage Ex tended K al an F ilters m [ J]. IEEE T ransactions on Au tom atic Contro , 2003, l 48( 2): 289 293. [ 10] Q iu H Z Zhang H Y, Sun X F So lution o f Tw o S tage , . K a l an F ilte r[ J]. m [ 11] I EE P ro ceeding Contro l T heory A p p.l , 2005, 152( 2): 152 156. H sieh C S. A U n ified Ex tens ion of the R obustTw o S tage K a l an F ilte r and Its A pplication to Functiona l F iltering m [ C ]. Am er ican Contro l Con ference , June 2009. [ 12] K i K H, L ee J G, Park C G. A daptive Two Stage Ex m tended K a l an F ilter fo r a Fault T o lerant I S GPS m N Loose ly Coupled Syste [ J]. m 137 . [ 13] Ju lier S J T he Sca led U nscented T ransfor ation [ C ]. . m T he Am er ican Contro l Con ference , 2000. [ 14] A nderson B D O, M oo re J B. 最佳滤波 [ M ]. 卢伯 英, 译. 北京: 国防工业出版社, 1983 . A nchorage , AK, IEEE T ransac tions on St L ou is U SA, . ,







C ru ickshank D R, Born G H. A N ew C lass of A daptive Ex tended K a l an F ilter[ C] . T he 6 AA S /A I m AA Space flight M echan ics Conference A ustin, TX, F eb 12 15 , . , 1996 . 李季陆, 陈 义庆, 孙承启. 一种 卫星自 主导航 系统 的 导航精度分析 [ C ]. 全 国第八 届空 间及 运动 体控 制 技术学术年会论文, 黄 山, 1998 . 董云峰, 章仁 为. 利用星敏感器的卫星自主导航 [ J] . 宇航学报, 1995, 16( 4): 36 41. F r iedland B. T reatm ent o f B ias in R ecurs ive F ilte ring [ J]. IEEE T ransactions on A utom atic Contro, 1969, 14 l ( 4): 359 367.
th

[ 2]

[ 3] [ 4]

A erospace and E lectronic Syste s 2009 45 ( 1) : 125 m, ,

[ 5]

H sien C H, Chen F C. G ene ra l Two Stage K a l an F il m te rs [ J ]. IEEE T ransactions on A utoma tic Contro,l 2000 45( 4) : 819 824. ,

[ 6]

Chen F C , H sieh C H. O pti alM u ltistage K a l an Esti m m




友情链接: