第9章ADAMS用户子程序

合集下载

第9章ADAMS用户子程序

第9章ADAMS用户子程序

第9章ADAMS用户子程序本章对ADAMS用户子程序做了简要介绍,着重介绍了CONSUB、GFOSUB和REQSUB 的利用方式,和在用户子程序中两个最经常使用的功能子程序SYSARY和SYSFNC的利用情形。

通过本章的学习,读者将具有大体的开发用户子程序的能力。

ADAMS用户子程序简介一样情形下,ADAMS的大部份功能能够通过函数表达式完成,函数表达式很容易操作,因为没必要编译或连接程序,而且ADAMS/Solver还会实时地提供函数表达式。

但函数表达式提供的只是有限的编程结构,因此有些复杂的情形,专门是涉及到一些逻辑表达,用函数表达式那么很难表达出来。

因此在需要采纳一些ADAMS没有提供的特殊函数时,能够采纳用户子程序。

用户子程序更具有通用性,能够利用编程语言来概念模型元素或特定的输出。

用户能够将函数表达式写成子程序的形式并将其与ADAMS/View连接,它具有函数表达式所没有的通用性和灵活性。

子程序利用通用程序设计语言(FORTRAN或C)的功能来概念ADAMS/View不能提供的函数,并使之依照需要而量身设计。

通过连接用户子程序,可不能失去ADAMS/View的任何功效,也可不能降低仿真速度。

当显现以下情形时,通常会利用到用户子程序:(1)数学函数很难表达。

(2)需要概念多用户利用的函数。

(3)GSE和UCON声明时,需要用户子程序。

(4)需要操纵复杂仿真运行时,和需要作决策逻辑时。

利用用户子程序时要警惕,因为不正确的用户子程序会很难调试。

用户子程序的种类依照用户子程序的功能,能够将它们分为三类:(1)Driver Subroutine——驱动子程序(2)Evaluation Subroutines——计算子程序(3)Restart subroutines——重启子程序1.驱动子程序(Driver Subroutine)驱动子程序(Driver Subroutine)--CONSUB--用来驱动ADAMS/Solver。

ADAMS软件操作基础精讲

ADAMS软件操作基础精讲
产生新数据库 打开一个保存的数据库 保存当前数据库
默认条件下,所有文件均存放在C盘的根目录下
后退一步操作 取消操作 : Cancel按钮 , Esc键
2024/10/28
21
3.9 信息管理及帮助信息
ADAMS/View以5种方式提供各种报告信息
ADAMS/View窗口底部的状态条 警告窗口 命令信息窗口 数据库信息窗口 ADAMS/View的log文件
正侧投影图和透视图 --- Depth按钮
移动和旋转视图
动态移动视图 动态旋转视图 增量移动视图
设置视图中心
缩放视图
移动和旋 转命令
2024/10/28
移动 旋转
15
3.6 显示方式设置
设置构件和模型的显示方式: View--- Model, Part Only
设置背景颜色: Setting --- View Background Color
9
第三章 知识要点和练习(续)
3-7 ADAMS/View命名层次和规则 3-8 数据库及其操作 3-9 ADAMS/View提供几种报告信息的方式? 3-10 简述ADAMS分析技巧 3-11 ADAMS建模主要包括哪些内容
2024/10/28
10
虚拟样机技术及其应用--3
第三章 ADAMS软件操作基础
Model_1 构件
JOINT_1运动副
. MODEL. PART_1. PT1
\ MODEL\ PART_1\ PT1
数据库(/或.)
视图 机构
图标 XY图 用户界面
运动副 构件 运动 力 分析 曲线 菜单 对话框 标记 几何形状 结果数据
2024/10/28
结果数据分量

ADAMS用户子程序在软着陆动力学仿真中的应用

ADAMS用户子程序在软着陆动力学仿真中的应用

b c u e o n q e me h ia rp ry o lmi u h n y o n i a tatn ain o u a a d r By la ig te e a s ft u i u c a c lp o e t fau n m o e c mb i mp c te u t fl n rl e . o dn h he n o n
Ap l a i n o pi t fADA S Us r—W rte u r u ie t c o M e — itn S b o t o n
S m u a in o o — a d n na c i l t fS f -ln i g Dy mis o t
Ja gW a sn Hu n e W a gHato i nog n a gW i n i a
实现月 球 的软着 陆 , 目前 主要考 虑 类 似 于 “ 波 罗 ” 月舱 的一 种 支腿 式 着 陆 器 , 图 1a所 示 _ 。 由 阿 登 如 () 1 J
于月球 重力 场不 同于 地球 , 着陆 试验 时需 要模 拟月 球 重力 场 , 模 拟重 力 场本 身 又是 一 个难 题 ; 而 此外 着 陆 器
s b ui e o e mo e fAp lo f ls ae ln — mo u e,smuain o h y tm s e l e T e rs lsc mp e u r t n t d lo ol ul c u a o n h l r dl i l t fte s se Wa ra i d. h e ut o a d o z r
wi ee a td t o fr e h d l g a d a p iain o s r—wrt n s b u i eo t rlv aa c n i d te mo e i n p l t fu e h n m n c o it u r tn fADAMS. e o Ke o d ADAMS Usr— wrte u rut e Ho e c m S f — a d n y a c S a e rf yW rs e — i n sbo i t n nyo b o —ln i gd n mis t p c cat

ADAMS用户子程序

ADAMS用户子程序

ADAMS 用户子程序摘要针对小球振动的简单模型,利用ADAMS 用户子程序,说明子程序的编写和使用,验证三种模型结果的正确性.1引言一般情况下,ADAMS 的大部分功能通过函数表达式完成,函数表达式很容易操作,因为不必编译或连接程序,而且ADAMS/Solve 还会实时地提供函数表达式.但函数表达式提供的只是有限的编程结构,因此有些复杂的情况,特别是涉及一些逻辑表达,用函数表达式则很难表达出来.因此在需要采用一些ADAMS 没有提供的特殊函数时,采用用户子程序。

用户子程序更具有通用性,利用编程语言来定义模型元素或者特定的输出。

用户将函数表达式写成子程序的形式并将其与ADAMS/View 连接,它具有函数表达式所没有的通用性和灵活性.子程序利用通用程序设计语言(FORTRAN 或C)的功能来定义ADAMS/View 不能提供的函数,并使之按照需要而量身设计。

通过连接用户子程序,不会失去ADAMS/View 的任何功效,也不会降低仿真速度。

2计算模型质量为kg 5的小球在弹簧力和重力作用下做振动,弹簧的刚度为m /N 200,阻尼为)s /m /(N 1。

在ADAMS 中建立弹簧从简单到复杂可以有三种方法:1)直接建立模型;2)使用Sforce ,在Sforce 中写弹簧力的方程;3)使用用户子程序.2。

1模型1新建一个质量为kg 5的小球,创立一个弹簧,在重力的作用下振动,如图1所示。

图1 模型1示意图图2 弹簧设置2.2模型2根据弹簧力的表达式来定义Sforce,因为VY速度为负,因此,表达式可以表示为:200*DY(MARKER_3,PART_2.cm)-1*VY(PART_2.cm)。

2。

3模型3使用子程序表达弹簧力,输入参数为2,3,200,1。

前两个参数表示弹簧的两个MARKER点ID,第三个参数为弹簧刚度,第四个参数为弹簧阻尼。

图3 用户子程序设置ADAMS用户子程序如下:#include "slv_c_utils.h”adams_c_Sfosub Sfosub;void Sfosub(const struct sAdamsSforce*sforce, double time, int dflag,int iflag,double*value){double dy,vy;double k,c;int ipar[2];int errflg;ipar[0]=sforce-〉PAR[0];ipar[1]=sforce—>PAR[1];k=sforce-〉PAR[2];c=sforce->PAR[3];c_sysfnc(”DY",ipar,2,&dy,&errflg);c_sysfnc(”VY”,ipar,2,&vy,&errflg);*value=-(k*dy+c*vy);}3计算结果通过仿真计算,可以得到计算结果如下。

ADAMS二次开发及实例

ADAMS二次开发及实例

第11章 ADAMS二次开发及实例ADAMS具有很强的二次开发功能,包括ADAMS/View界面的用户化设计,利用cmd语言实现自动建模和仿真控制,通过编制用户子程序满足用户的某些特定需求,甚至可以拓展ADAMS的功能。

本章主要介绍如何定制用户化界面、宏命令的用法和条件循环命令的用法,以及综合以上功能的应用实例。

由于用户子程序的主要内容已在第9章进行了详细介绍,因此本章只对所涉及到的用户子程序编译联接操作过程进行简单介绍。

11.1 定制用户界面ADAMS/View的界面对象都是以层次结构存储在模型数据库中,类似于零件模型的层次结构。

所有定制的界面对象都存储在名为GUI的数据库中,该数据库可以很方便地管理所有的标准界面对象。

如图11-1所示。

页脚内容1图11-1 界面对象的层次结构最上层的界面对象是窗口和对话框。

如果主要建模窗口起名为main的话,其数据库全名应为.gui.main。

尽管窗口和对话框看起来很相似,但它们却是很不相同的。

窗口通常是在用户工作的时候在屏幕上停留一段时间,而对话框通常是在用户输入数据或是进行访问控制时才会出现。

窗口有工具条和菜单栏,窗口和对话框也包含其他的界面对象如按钮,标签等等。

大多数用户化操作涉及到创建对话框或者修改标准对话框。

但若不用创建一个完整的用户化界面时,则通常只用修改菜单条和工具栏。

ADAMS所包含界面对象属性如表11-1所示。

表11-1 ADAMS所包含界面对象属性页脚内容2页脚内容3在大多数情况下,用户定制界面是指制作用户自己的菜单和对话框。

通常可使用菜单编辑器和对话框编辑器来定制界面,通过它们可以很快地访问并改变大多数界面对象和功能。

下面就这两方面的内容作简单介绍。

页脚内容411.1.1 定制菜单1。

菜单编辑器通过以下菜单路径可以调出菜单编辑器窗口:Main menu==》Tools==》Menu==》Modify……菜单编辑器窗口如图11-2所示:图11-2 菜单编辑窗口在菜单编辑器窗口中显示的是ADAMS菜单文件,菜单文件是按照一定的语法书写的解释性程序文件,在默认情况下,菜单编辑器窗口里显示的是描述ADAMS标准菜单的菜单文件,通过按照一定的语法规则修改该菜单文件,就可以得到用户化的菜单。

ADAMS简单教程下

ADAMS简单教程下

13-1 六杆机构
Ixx=0 Iyy=0 Izz=0
⒋ Body特性修改
4.2 滑块2(part_6) 质量、转动惯量修改
在Part_6(Link)上右击鼠标 Mass=1.0E-11=0kg
13-1 六杆机构
Ixx=0 Iyy=0 Izz=0
⒋ Body特性修改 4.3 摇杆3(part_4) 质量、转动惯量修改
13-2 凸轮机构
4. 用升程表创建凸轮轮廓曲线 4.2 创建从动件件尖底与基圆的交点
在ADAMS/View零件库 中选择球体(Sphere) 在点(0,60,0)处创建第 二个球体(Sphere)
13-2 凸轮机构
4. 用升程表创建凸轮轮廓曲线 4.3 创建旋转副
在ADAMS/View约束库 中选择旋转副(Joint: Revolute)
13-1 六杆机构
⒊创建机构的各个部件 3.7 创建机架6
在ADAMS/View零 件库中选择box图 标 Box: on ground Length=?mm Width=?mm Depth=?mm
演示1
13-1 六杆机构
⒋ Body特性修改 4.1 曲柄1(Part_3)质量、转动惯量修改
在Part_2上右击鼠标 Mass=1.0E-11=0kg
13-2 凸轮机构
3. 设置工作环境 设定ADAMS工作环境,网格设置
13-2 凸轮机构
4. 用升程表创建凸轮轮廓曲线 4.1 创建盘装凸轮回转中心
在ADAMS/View零件库 中选择球体(Sphere) 在原点(0,0,0) (选择坐标原点,将为 下面利用升程表创建凸 轮轨迹带来方便)处创 建一个球形观察点
11. 模型仿真 11.1 简单仿真和动画回放

《ADAMS全面教程》课件

《ADAMS全面教程》课件

动力学基础
牛顿第二定律
Adams中通过给定初始条件和外力, 利用牛顿第二定律计算系统的运动状 态。
刚体动力学
弹性动力学
考虑弹性元件的变形和应力,以及弹 性元件对系统运动的影响。
考虑刚体的平动和转动,以及刚体间 的相对运动。
控制系统基础
控制策略
介绍常见的控制策略,如PID控制、模糊控制等 。
控制系统建模
03
Adams高级功能
优化设计
总结词
Adams优化设计功能可以帮助用户找到满足设计目标的最佳 参数组合。
详细描述
Adams优化设计功能基于多目标遗传算法,能够自动搜索和 迭代,找到满足多个设计目标的最佳参数组合。用户可以设 置不同的设计变量、约束和目标函数,以实现高效的优化设 计。
多体动力学
总结词
Adams多体动力学功能可以模拟复杂机械系统的运动和动力学行为。
详细描述
Adams多体动力学功能基于多体动力学理论,能够模拟复杂机械系统的运动和 动力学行为,包括刚体和柔性体的运动、碰撞、接触等。用户可以建立复杂机 械系统的模型,并进行运动学和动力学仿真分析。
控制系统设计
总结词
Adams控制系统设计功能可以帮助用户设计和分析控制系统。
05
Adams常见问题解答
软件安装与配置
总结词
软件安装与配置是使用Adams软件的第一 步,也是确保软件正常运行的关键。
详细描述
在进行Adams软件安装之前,需要先确认 计算机系统是否满足软件的系统要求。安装 过程中,需要选择正确的安装路径并按照提 示完成安装。安装完成后,需要进行软件配 置,包括设置工作目录、选择求解器和许可 证配置等。
基于多体动力学理论,通 过建立系统动力学模型, 模拟和分析复杂机械系统 的动态行为。

ADAMS用户子程序在堤坝抢险打桩六足机器人仿真中的应用

ADAMS用户子程序在堤坝抢险打桩六足机器人仿真中的应用
MOTION_2_fix='MOTION/2,FUNCTION ='//trim(anl_1)
CALL MODIFY(MOTION_2_fix,st)
MOTION_3_fix='MOTION/3,FUNCTION ='//trim(anl_2)
CALL MODIFY(MOTION_3_fix,st)
2.1 两个重要参数的实时获得
仿真的目的是要六足机器人在踩到阶梯障碍时能改变运动规划,使机器人继续平稳前行。在腿1踩到障碍时,通过力传感器检测到障碍,这时腿1的驱动关节必须停止,由摆动相转为支撑相,腿2开始运动。因此,需要实时测得踩到障碍时的关节角度值,并赋给腿1的关节驱动,作为下次关节转动的起始值。我们利用功能子程序解决了这个问题,代码如下:
2.2 堤坝抢险打桩六足机器人仿真分析
本文作为对六足机器人非平坦路面行走的初步探讨,将以重心固定的三步一动的步态进行越障仿真分析。所谓三步一动就是:首先腿1、腿2、腿3依次迈步,接着6只足着地同时支撑机体前移,然后腿4、腿5、腿6依次迈步,最后6只足支撑机体再前移,一个步态周期完成。之所以选择此种步态,是因为此种步态无需为稳定性考虑,任意时刻都至少有5条腿处于支撑相,确保整个机体任何时刻都处于静态稳定状态,但行走效率较低。
[5] Niku.机器人学导论-分析、系统及应用[M].孙富春,朱纪洪,刘国栋,等译.北京∶电子工业出版社,2004:74-78.
[6] 毛宗源.机器人的智能控制方法[M].北京∶国防工业出版社,2002∶4.
[7] Bares J E,Whittaker W I.Configuration of autonomous walkers for extreme terrain [J].The Ineternational Journal of Robotics Research,1993,12(6):535-559.
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第9章ADAMS用户子程序本章对ADAMS用户子程序做了简要介绍,着重介绍了CONSUB、GFOSUB和REQSUB 的使用方法,以及在用户子程序中两个最常用的功能子程序SYSARY和SYSFNC的使用情况。

通过本章的学习,读者将具备基本的开发用户子程序的能力。

9.1 ADAMS用户子程序简介一般情况下,ADAMS的大部分功能可以通过函数表达式完成,函数表达式很容易操作,因为不必编译或连接程序,而且ADAMS/Solver还会实时地提供函数表达式。

但函数表达式提供的只是有限的编程结构,因此有些复杂的情况,特别是涉及到一些逻辑表达,用函数表达式则很难表达出来。

因此在需要采用一些ADAMS没有提供的特殊函数时,可以采用用户子程序。

用户子程序更具有通用性,可以利用编程语言来定义模型元素或者特定的输出。

用户可以将函数表达式写成子程序的形式并将其与ADAMS/View连接,它具有函数表达式所没有的通用性和灵活性。

子程序利用通用程序设计语言(FORTRAN或C)的功能来定义ADAMS/View不能提供的函数,并使之按照需要而量身设计。

通过连接用户子程序,不会失去ADAMS/View的任何功效,也不会降低仿真速度。

当出现下列情况时,通常会使用到用户子程序:(1)数学函数很难表达。

(2)需要定义多用户使用的函数。

(3)GSE和UCON声明时,需要用户子程序。

(4)需要控制复杂仿真运行时,以及需要作决策逻辑时。

使用用户子程序时要小心,因为不正确的用户子程序会很难调试。

9.1.1用户子程序的种类根据用户子程序的功能,可以将它们分为三类:(1)Driver Subroutine——驱动子程序(2)Evaluation Subroutines——计算子程序(3)Restart subroutines——重启子程序1.驱动子程序(Driver Subroutine)驱动子程序(Driver Subroutine)--CONSUB--用来驱动ADAMS/Solver。

这样ADAMS/Solver在仿真时可更进一步地完成对模型的分析和修改的自动化工作。

CONSUB发出request(请求),regulate(调整),和vary simulations(改变仿真)的命令,并通过作出的交互式命令来修改数据,或者进行不同的分析。

大多数运行ADAMS/Solver的情况都是交互式,或者是以批处理的形式,一次只涉及到单个的分析。

使用CONSUB,可以完成对数据的动态分析,改变前提条件,并重复动态分析。

2.计算子程序(Evaluation Subroutines)计算子程序(Evaluation Subroutines)为用户自定义。

ADAMS/Solver可写子程序来对某些非标准的或复杂的计算式计算其数值。

计算子程序(Evaluation Subroutine)的程序名和功能如表9-1所示。

3.重启子程序(Restart Subroutines)重启子程序(Restart subroutines)由一对子程序组成,SA VESUB和RELSUB。

它们可以保存和重新加载子程序运行过程中的某些状态变量,这些状态变量是那些相关的用户子程序在重新启动或进行某些变量初始化时所必须的数据。

如果在用户子程序之间相互调用时,需要使用它们在子程序内部保存数据。

如果没有使用RELSUB和SA VSUB,在保存仿真文件时,内部数据就会丢失。

虽然SA VE命令可将模型和仿真数据保存到文件中去,而且可以通过使用RELOAD命令重新调入保存文件,并可以从该保存点重新启动仿真。

但SA VE和RELOAD不可能对用户子程序的内部数据进行特殊操作,在RELOAD命令之后,ADAMS/Solver会从仿真流程中断点继续调用用户子程序,但用户子程序中某些感兴趣的内部变量却没有得到保存。

例如,假设SFOSUB子程序中力的系数是一个内部状态变量,如果打算将第一次调用SFOSUB子程序时所计算的力的系数保存以作今后使用,若用“SA VE”和“RELOAD”时会产生数据丢失。

可用SA VSUB将计算出来的系数保存在文件中并用RELSUB重新调入它们,或者力仅仅用RELSUB来重新计算系数。

重启子程序(Restart Subroutine)的程序名和功能如表9-2所示。

9.1.2 子程序的使用相对于ADAMS/View来讲,用户定义子程序有两个任务:输入和输出。

输入就是在相应的命令或状态,或在表明当前系统状态的计算结果中,提供给ADAMS/View的相关信息。

输出就是从ADAMS/View中获得的相关信息。

1. 声明浮点变量为了保证数值在子程序之间或者ADAMS/Solver和子程序之间能够正确地传递,需要声明浮点变量,就像在ADAMS/Solver中作的声明一样。

在UNIX和Windows机器上,ADAMS/Solver使用双精度浮点变量。

因为未声明的浮点变量通常都是单精度的(如REAL),所以应当明确声明所有的浮点变量都是双精度的。

2. 参数的使用ADAMS/View会从FUNCTION=USER()的表达式中提供给用户子程序参数值。

例如,如果你使用FUNTION=(4.0,5.0,6.0),ADAMS/View通过一个包含4.0,5.0,6.0的PAR 数组参数,以及通过一个值为3的NPAR参数传递这些数值。

通过使用这些功能使得用户子程序更加灵活。

例如,如果计算需要marker101和marker102的距离,可以将这些标志符直接写进用户子程序。

3. 避免不连续在运行表达式中,当使用子程序来定义运动,传感器,力,或者模型中的状态平衡方程时,应当保证这些函数是连续的。

不连续的函数很难处理,因为大多数数学理论都是假定系统方程是连续的。

如果违反了该规则,ADAMS/Solver就会得出出人意料的结果。

当使用IF声明,将分段函数连接起来时,常常会产生不连续函数。

为了保证函数是连续的,在使用该类型的函数时,一定要小心。

4. 创建用户子程序为了创建自己的用户子程序,ADAMS提供了子程序模板并将它们放在安装目录install_dir/adams/solver/usersubs中。

子程序不能以C语言为模板。

如果需要一个C语言的子程序,必须通过修改FORTRAN 文件来创建它,或者使用FORTRAN模板作为向导,创建自己的C语言格式子程序。

创建用户子程序的步骤:(1) 决定需要创建什么样的用户子程序。

例如,如果有GFORCE的声明,可以创建GFOSUB的用户子程序。

(2) 决定要计算什么,需要什么输入参数。

(3) 将合适的用户子程序模板从安装目录拷贝到当前目录。

模板目录中包含了要使用的所有子程序模板。

(4) 使用文字编辑器来察看用户子程序模板。

(5) 按需要修改用户子程序。

从用户子程序中调用功能子程序,或者其他FORTRAN或C语言子程序。

(6) 保存用户子程序。

因为可能对不同的模型会使用相同的子程序,所以最好给文件起一个容易区分的名字。

5. 调用用户子程序可以通过使用声明或者命令来调用用户子程序。

通过使用前面定义的用户子程序的名字来让ADAMS/Solver知道调用哪一个子程序。

也可以使用子程序来定义一些模型元素。

能调用用户子程序的声明或命令如表9-3所示。

SFOSUB SFORCETIRSUB TIREUCOSUB UCONV ARSUB V ARIABLEVFOSUB VFORCEVTOSUB VTORQUE可以从用户子程序中调用功能子程序。

这些子程序的功能就像是在用户的数据和用户使用的用户子程序的接口一样。

例如,在driver user——written subroutine(驱动用户子程序)中,可以使用control,access功能子程序。

从evaluation user——written subroutines(计算用户子程序)中,也可以调用access,function,以及某些情况下setup 函数。

换句话说,可以从上面任何一个用户子程序中调用access和function函数,但用户只能从driver subroutine中调用control函数,从某个evaluation subroutines中调用setup函数。

6. 编译,连接和运行库在写完定制的子程序后,必须要将它们编译并连接到ADAMS以创建到ADAMS/Solver 的用户库文件中去。

然后,可以连同该库与ADAMS/Solver一同运行。

必须有一个FORTRAN编译器,因为ADAMS本身不提供编译器,由用户子程序生成动态连接库的详细过程参见12.4.5节后半部分的介绍。

9.2 常用ADAMS用户子程序简介9.2.1 使用GFOSUB用户子程序实例为了使读者对用户子程序有一个直观印象,本节首先给出声明和调用GFOSUB子程序的例子,通过与GFORCE函数表达式的对比,说明使用用户子程序的必要性。

有关GFOSUB 用户子程序的更详细内容,将在9.2.2小节进行介绍。

另外,在12.4.4节的结尾部分提供了GFOSUB用户子程序的具体工程应用实例。

现假定有如下一个GFORCE函数表达式的声明,其函数表达式定义了小球和斜面之间的某种相互作用力关系(此处相互作用力不一定有确切的物理含义,仅为了说明GFORCE 的定义过程),包括力矢量和力矩矢量。

如下图所示,为了在GFORCE中描述这种相互作用力关系,在小球球心上定义了标架Mark_I(ID为2001),在斜面上定义了标架Mark_R(ID 为2003),同时为了确定小球对斜面的反作用力点的位置,生成与标架Mark_I时刻重叠的Mark_I:ID=2001Mark_J:ID=2002Part_I:小球Mark_R:ID=2003Part_J:斜面图9-1 小球与斜面的坐标定义及相对关系标架Mark_J(ID为2002),Mark_J隶属于斜面。

于是可以使用GFORCE函数表达式的声明,如下面所示(该GFORCE自身的ID为100):GFORCE/,100 I=2001, JFLOAT=2002, RM=2003,FX = -10.0 * VX(2001,2003,2003)FY = -10.0 * VY(2001,2003,2003)FZ = -10.0 * VZ(2001,2003,2003)TX = -100.0 * WX(2001,2003,2003)TY = -100.0 * WY(2001,2003,2003)TZ = -100.0 * WZ(2001,2003,2003)如果力和力矩的表达比较冗长,则可以使用GFOSUB用户子程序来代替GFORCE声明。

以及,用下面语句调用已创建好的GFOSUB子程序,并向其传递参数。

相关文档
最新文档