• 3.01 MB
  • 2022-04-22 13:49:25 发布

GBT16656.105-2010工业自动化系统与集成产品数据表达与交换集成应用资源运动学.pdf

  • 133页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'ICS25.040.40L67囝亘中华人民共和国国家标准GB/T16656.105—2010/ISO10303-105:1996代替GB/T16656.1051999工业自动化系统与集成产品数据表达与交换第105部分:集成应用资源:运动学Industrialautomationsystemsandintegration--Productdatarepresentationandexchange--Part105:Integratedapplicationresource:Kinematics,n10—12-01发布(ISO10303—105:1996,IDT)2011-05-01实施丰瞀鹊鬻瓣警糌瞥霎发布中国国家标准化管理委员会仅19 GB/T16656.105—2010/ISO10303-105:1996目次前言·-·⋯⋯············---···-----····⋯···········-⋯⋯·····-··‘‘‘‘‘‘‘‘‘‘‘‘‘‘⋯···············。’’‘‘’。‘⋯‘引言⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·⋯-⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯-1范围⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯---⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·2规范性引用文件⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯3术语和定义⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯3.1在GB/T16656.1中定义的术语⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯3.2在GB/T16656.42中定义的术语⋯⋯⋯⋯⋯⋯-⋯--⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯-⋯⋯-3.3在ISO8855中定义的术语⋯⋯⋯-⋯⋯⋯⋯⋯⋯⋯⋯⋯-⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯3.4其他术语和定义⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯-⋯⋯⋯⋯⋯⋯4符号和缩略语⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯---⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯4.1数学符号⋯⋯⋯---⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯4.2用来表示矩阵的图形约定⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯-··--一4.3缩略语⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯5运动结构⋯⋯⋯⋯⋯·-⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯-’’’’’⋯⋯。’5.1引言⋯⋯··⋯⋯⋯⋯⋯⋯⋯----⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·⋯⋯⋯⋯⋯⋯’’⋯⋯⋯5.2基本概念与假设⋯⋯⋯⋯⋯⋯⋯⋯---⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯5.3运动结构模式(kinematic_structure—schema)类型定义⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一5.4运动结构模式(kinematic—structure—schema)实体定义⋯⋯⋯⋯⋯⋯------⋯⋯⋯⋯⋯’5.5运动结构模式(kinematic—structure—schema)函数定义⋯⋯⋯⋯⋯⋯⋯⋯⋯’’⋯⋯6运动学的运动表达⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·6.1引言⋯⋯⋯⋯⋯⋯⋯⋯⋯-⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯‘6.2基本概念和假设⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯’6.3运动学的运动表示模式(kinematic_motionrepresentation_schema)类型定义:运动参数测量6.4运动学的运动表示模式(kinematic—motion~representation_schema)实体定义⋯⋯⋯⋯·6.5运动学的运动表示模式(kinematic—motion~representation—schema)函数定义⋯⋯⋯⋯·7运动分析控制和结果⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯--⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯‘7.1引言⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯-----⋯⋯⋯⋯‘7.2基本概念和假设⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯--⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯‘7.3运动分析控制和结果模式(kinematic—analysis—control—and—result—schema)类型定义·7.4运动分析控制和结果模式(kinematic—analysis—control—and—result—schema)实体定义·附录A(规范性附录)实体短名⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯-附录B(规范性附录)信息对象注册⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯··附录C(资料性附录)EXPRESS列表⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·⋯⋯⋯⋯⋯’附录D(资料性附录)EXPRESSG图⋯---⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯----⋯⋯⋯⋯⋯⋯··附录E(资料性附录)附加信息⋯⋯⋯⋯⋯⋯⋯··---⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯附录F(资料性附录)用SU参数来代替DH一参数⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯··ⅢⅥ●,,●:::o0o0o0m∞跎跎眈鹊踮盯∞叭叭虬蛇盯∞叭睨¨¨● CB/T16656.105—2010/]SO10303—105:1996附录NA(资料性附录)附录NB(资料性附录)参考文献⋯⋯⋯⋯⋯⋯索引⋯⋯⋯⋯⋯⋯⋯⋯IsO10303各部分的目录本部分英文黑体词的含义114118122123 GB/T16656.105—2010/ISO10303—105:1996刖置16656(1SO10303)《工业自动化系统与集成产品数据表达与交换》是由多个部分组成的标准,各部分单独出版。GB/T16656的所属各部分又组成多个子系列,即:——第1至第19部分规定了描述方法;——第20至第29部分规定了实现方法;——第30至第39部分规定了一致性测试方法与框架;——第40至第59部分规定了集成通用资源;——第100至第199部分规定了集成应用资源;——第200至第299部分规定了应用协议;——第300至第399部分规定了抽象测试套件;——第400至第499部分规定了应用模块;——第500至第599部分规定了应用解释构造;——第1000至第1999部分规定了应用模块。16656((工业自动化系统与集成产品数据表达与交换》现已发布和即将发布的包括以下部分:第1部分:概述与基本原理;——第11部分:描述方法:EXPRESS语言参考手册;——第21部分:实现方法:交换文件结构的纯正文编码;——第28部分:实现方法:EXPRESS模式与数据的XMI。表达;——第31部分:一致性测试方法论与框架:基本概念;——第32部分:一致性测试方法论与框架:对测试实验室与客户的要求;——第34部分:一致性测试方法论与框架:应用协议实现的抽象测试方法;——第41部分:集成通用资源:产品描述与支持原理;——第42部分:集成通用资源:几何与拓扑表达;——第43部分:集成通用资源:表达结构;——第44部分:集成通用资源:产品结构配置;——第45部分:集成通用资源:材料;——第46部分:集成通用资源:可视化显示;——第47部分:集成通用资源:形状变化公差;——第49部分:集成通用资源:工艺过程结构和特性;——第51部分:集成通用资源:数学表达;——第54部分:集成通用资源:分类和集合论;——第55部分:集成通用资源:过程与混合表达;——第56部分:集成通用资源:状态;——第lol部分:集成应用资源:绘图;——第105部分:集成应用资源:运动学;——第201部分:应用协议:显式绘图;——第202部分:应用协议:相关绘图;——第203部分:应用协议:配置控制设计;硼 GB/T16656.105—2010/ISO10303—105:1996——第238部分:应用协议:计算机数控装置的应用解释模型;——第501部分:应用解释构造:基于边的线框;——第502部分:应用解释构造:基于壳的线框;——第503部分:应用解释构造:几何有界的二维线框;——第504部分:应用解释构造:绘图注释;一一第505部分:应用解释构造:图纸结构与管理;——第506部分:应用解释构造:制图元素;——第507部分:应用解释构造:几何有界曲面;——第508部分:应用解释构造:非流形曲面;——第509部分:应用解释构造:流形曲面;第613部分:应用解释构造:基本边界表达;——第520部分:应用解释构造:相关绘图元素;——第1001部分:应用模块:外观赋值;——第1002部分:应用模块:颜色;——第1003部分:应用模块:曲线外观;——第1004部分:应用模块:基本几何形状;——第1005部分:应用模块:基本拓扑;——第1006部分:应用模块:基础表达;——第1007部分:应用模块:通用曲面外观;——第1008部分:应用模块:层赋值;——第1009部分:应用模块:形状外观和层。本部分为GB/T16656的第105部分。本部分是根据国际标准ISO10303—105:1996{工业自动化系统与集成产品数据表达与交换第】05部分:集成应用资源:运动学》及其技术勘误Is()10303—105:1996/Cor.2:2000和ISO10303105:1996/Cor.1:2000(英文版)采用等同翻译法制定的。本部分在技术上与ISO10303105:1996等同,并纳入了其技术勘误1和2的内容,同时在勘误的页边空白处以垂直双线标出。本部分结构上与ISO10303105:1996等同,在编写格式上符合GB/T1.1—2000的基本规定。本部分与1SO10303—105:1996相比,做了以下编辑性修改:——删除了Is()10303105的前言,按照我国国家标准编写规定重新起草了前言。——将“ISO10303105:1996”或“本国际标准”改为本部分或6B/T16656~2010的本部分”。——将ISO10303—105:1996第2章“规范性引用文件”中的引导语改为GB/T1.1--2000中的6.2.3规定的引导语。——删除了第2章“规范性引用文件”中的一个引用标准ISO1030321:1994《工业自动化系统与集成产品数据表达与交换第21部分:实现方法:交换文件结构的纯正文编码》,因为本部分正文中未见引用。——将GB/T16656第105部分中出现的已转化为我国国家标准的国际标准改为相应的国家标准,未转化的国际标准保留。——为了让标准使用者了解ISO10303的总体结构,将lsO网站上给出的ISO10303各部分的目录收入了本部分的附录NA。——为了使读者便于理解本部分黑体词的含义,增加了附录NB。——删除了ISO10303105的资料性附录G文献目录,并按照我国国家标准编写要求增设了参考文献。.Ⅳ GB/T16656.105—2010/lso10303-|05:1996本部分代替GB/T16656.105--19994工业自动化系统与集成产品数据表达与交换第105部分:集成应用资源:运动学》。本部分与GB/T16656.1051999相比,除了对一些翻译不当、措辞不准、漏字之处进行了修改与补充外,主要变化包括修正EXPRESS描述中的错误,修正非形式限制和形式限制中的错误,在附录中将计算机可识EXPRESS的引用方式替换为URL引用,并替换文档和模式的对象标识符,主要涉及以下章条:——第5章运动结构——5.4.4kinematic—ground—representation——5.4.6mechanism—base_placement——5.4.12kinematic—link—representation——5.4.15kinematic—frame—based—transformation——5.4.16kinematic—frame—background—representation—association——5.4.17SU—parameters——5.4.37universal—pair——5.4.68rack—and—pinion—pair—value——5.4.73kinematic—loop——5.5.1ypr—index——5.5.3suitably—based—mechanism——5.5.6frame—associated—to_background——5.5.8convert—plane—angle_for—pair—from—radian——5.5.11connected—in—simple_loop——7.4.3founded—kinematic—path——7.4.4motion—linkrelationship——7.4.8kinematic—analysis—result——附录B对本部分的对象标识符、模式标识符等进行了替换——附录CEXPRESS列表引用方式更改——附录D图n2和图D.3进行了更改本部分的附录A、附录B为规范性附录;附录C、附录D、附录E、附录F、附录NA和附录NB为资料性附录。本部分由中国机械工业联合会提出。本部分由全国自动化系统与集成标准化技术委员会(SAC/TC159)归VI。本部分主要起草单位:北京机械工业自动化研究所、北京航空航天大学。本部分主要起草人:高雪芹、宁涛。本部分所代替标准的历次版本发布情况:——GB/T16656.105——1999。V GB/T16656.105—2010/ISO10303-105:1996引言16656是计算机可编译的产品数据表达与交换的系列标准。目的是提供一种与任何特定系统无关的中性机制以描述整个产品生命周期的产品数据,该描述的特性不但使它适用于中性文件的交换,而且适用于作为实现、共享产品数据库及归档的基础。16656的系列中的每一项标准都构成它的一个部分并单独出版。这些部分可分为以下几类:描述方法、集成资源、应用解释构造、应用协议、抽象测试组、实现方法和一致性测试。GB/T16656对每一类作了描述。本部分是集成资源的组成部分。本部分有以下几个主要部分:——运动结构;——运动学的运动表达;——运动分析控制和结果。本部分描述了机械产品运动特性的信息模型,该信息模型用于CAD系统和运动分析系统之间的信息交换,也用于不同运动分析系统之问的信息交换。运动信息在GB/T16656本部分中可用于:——部件的细节形状尚未确定的早期设计阶段。在这一阶段进行运动描述的目的是通过建立机械产品的一个概念模型来理解它的运动特性。——部件的细节形状已经确定的细节设计阶段。在这一阶段进行运动描述的目的是用机械产品部件的最终形状来证实机械产品的运动特性,例如,干涉检测。本部分的运动结构由沿曲面、曲线或在一点运动的运动副连接起来的刚体组成。运动结构模式用构件、副和关节来定义刚体的运动结构。构件是运动物体的刚体部分,副表示这些刚体之间运动约束的几何特性,而关节表示这些约束的拓扑特性。一个运动结构可以通过这样的图来表示:图中顶点代表构件,边代表关节。运动学的运动表达模式通过参数化轨迹的定义来说明一个机械结构的运动。运动分析控制和结果模式说明了运动结构的构型以及构型之问的插补。该模式为运动分析描述预定轨迹以及从该运动分析中得出的轨迹。图1表示了这三个模式和在一个模式中定义并被其他模式引用的类型和实体。ⅥErotation——about——directionkmematic_pathmotionparametermeasurekmemaucjomtkinematic——link——representationmechanismpairvaluerigid_plaeement图116656.105:运动学中三个模式之间的关系 GB/T16656.105—2010/1SO10303—105:1996工业自动化系统与集成产品数据表达与交换第105部分:集成应用资源:运动学1范围本部分规定了一个机械产品运动特性表示的资源结构。下述内容属于GB/T16656的第105部分的范畴:——刚体(即构件)之间运动关系的定义;——运动结构的拓扑表示;——用一系列离散的位置和方向来表示的运动的定义;—运动分析的输入及结果的表示。下述内容超出了本部分的范畴:——运动结构的公差和间隙的描述;——以连续时间为变量的运动参数的描述;——有可变运动约束的间歇关节的表示;——动态机械装配的表示;——力、质量、摩擦的表示。2规范性引用文件下列文件中的条款通过GB/T16656的本部分的引用而成为本部分的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本部分,然而,鼓励根据本部分达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本部分。16262.1信息技术抽象语法记法一(ASN.1)第1部分:基本记法规范(GB/T16262.12006,ISO/IEC8824—1:2002,IDT)16656.1工业自动化系统与集成产品数据表达与交换第1部分:概述与基本原理(GB/T16656.12008,1SO10303l:1994,MOD)16656.1l工业自动化系统与集成产品数据表达与交换第11部分:描述方法:EXPRESS语言参考手册(GB/T16656.112010,ISO1030311:2004,IDT)16656.41工业自动化系统与集成产品数据表达与交换第41部分:集成通用资源:产品描述与支持原理(GB/T16656.41--2010,ISO1030341:2005,IDT)16656.422010工业自动化系统与集成产品数据表达与交换第42部分:集成通用资源:几何与拓扑表达(ISO10303—42:2003,IDT)16656.43工业自动化系统与集成产品数据表达与交换第43部分:集成通用资源:表达结构(GB/T16656.432008,ISO1030343:2000,1DT)ISO8855:1991道路车辆汽车动态和抓地能力词汇(Roadvehicles--Vehicledynamicsandroadholdingability一-Vocabulary)3术语和定义3.1在GB/T16656.1中定义的术语16656.1中定义的下列术语适用于GB/T16656的本部分。 GB/T16656.105—2010/iso10303—105:1996——应用资源applicationresource;——数据data;——通用资源genericresource;——信息information;——集成资源integratedresource;——产品product。3.2在GB/T16656.42中定义的术语16656.42中定义的下列术语适用于GB/T16656的本部分:——几何坐标系geometriccoordinatesystem;——几何被创建geometricallyfounded;——图graph。3.3在ISO8855中定义的术语ISO8855:1991中定义的下列术语适用于GB/T16656的本部分:——俯仰角度pitch;——侧倾角度roll;——偏转角度yaw。3.4其他术语和定义下列术语和定义适用GB/T16656的本部分。3.4.1机架base一个固定于机座或沿确定路径移动的构件。3.4.2运动坐标系frame用来表示运动的坐标系。3.4.3机座ground机械产品在世界坐标系中固定不动的部分。3.4.4关节joint拓扑概念中表示两个构件之间的有序连接或运动约束。3.4.5运动学kinematics对由关节和构件(包括数量、位置和关节的方向)组成的可运动机械结构的描述。3.4.6运动链kinematicchain一系列由关节连接起来的运动构件。3.4.7构件link运动学中的刚体,它的运动受到一个或多个关节的约束。3.4.8构件坐标系linkframe构件的本地坐标,隐含定义为构件的几何相对环境,根据几何相对环境可以定义构件的所有几何定义。2 GB/T16656.105—2010/ISO10303-105:19963.4.9环loop机械结构的一部分,其关节和构件共同组成封闭的运动链。3.4.10机构mechanism一种运动受到关节约束的机械产品。3.4.11运动motion刚体位置和方向的改变。3.4.12副pair从几何属性角度看,两个构件之间的有序连接或运动约束。3.4.13副约束pairactuation由应用将一个运动副的参数值赋与一个运动副。3.4.14定位placement一个坐标系的位置和方向。3.4.15坐标变换transform表示在一个独立参考坐标系的定位。3.4.16SU一参数SU—parameters表示两个坐标系的定位关系的参数。3.4.17世界坐标系worldcoordinatesystem一个初始坐标系,在它之上定义了其他所有的坐标系。4符号和缩略语下列符号和缩略语适用于GB/T16656的本部分。4.1数学符号16656本部分使用的数学符号见表1。4.2用来表示矩阵的图形约定在数学公式中,坐标变换(三个位置值和三个向量值)用黑体大写字母表示。4.3缩略语S1ISheth一1Iickerypr三个旋转角度,分别是:偏转角度(yaw),俯仰角度(pitch),侧倾角度(roll)表1数学符号符号定义标量n向量j坐标轴 GB/T16656.105—2010/ISO10303-105:1996表1(续)符号定义沿坐标轴方向的单位向量F矩阵FF叫矩阵F的逆×向量积标量积,(“)参数曲线,,(“)I⋯.2,(‰),(“)在以P表示的点的值df(“),(“)对于“的导数r(",")参数曲面,f(u,口)】⋯。一~,(“,u)在以P表示的点的值a,(“,口),(”)对于“的偏微分z∈(口,6)z是在口(不包含)和6(包含)之间的元素——sign(x)返回自变量z的正符号的函数绝对值,或是量值或是行列式R“m维实空间5运动结构下面的EXPRESS声明了kinematic_structureschema,并标出了必要的外部引用。EXPRESS描述:*1』scHEMAki“。。8七ic一8t‘“。t“re一8。hem8;REFERENCEFROMgeometry—schema(axis2一placement一3d,cartesiantransformationoperator一3dcurve,direction,geometric—representationcontext,geometric—representation_item,normalise,point,point—oncurve,point—onsDrface,surface,rectangular—trimmedsurface,trimmed_curve);4 REFERENCEFROMmeasure_schema(conversion_based_unit,global——unit——assigned——contextlengthmeasure,plane—angle—measure,si—prefix,si—unit,si—unit—name,unit);FROMproduct—property_definitionschema(characterized_definition,property_definition);GB/T16656.105—2010/mo10303-105:1996FROMproduct—propertyrepresentationschema(property_definitionrepresentation);FROMrepresentation_schema(functionally_defined_transformation,item—definedtransformation,representation,representationcontext,representation_item,representation_relationship,representation—relationship—with-一transformation)FROMsupport..resource——schema(bag—to—set,label);(*注1:上面所引用的模式(schema)可以在GB/T16656的以下部分中找到:geometry_schemaGB/T16656.42measureschemaGB/T16656.41productproperty_definitionsehemaGB/T16656.41productproperty—.representation_schemaGB/T16656.41representationschemaGB/T16656.43supportresource——schemaGB/T1665641注2:用EXPRESSG表示的这个模式的图示化描述见附录D。5.1引言kinematic—structure—schema描述了定义机械产品运动能力的运动信息。在GB/T16656的本部分中定义的运动包括在笛卡尔坐标系中的自由无约束运动和受到副和关节约束的运动。在GB/T16656的本部分中包括了下面这些类型的副:o GB/T16656.105—2010/ISO10303—105:19961)旋转副(revolutepair);2)移动副(prismaticpair);3)螺旋副(screwpair);4)圆柱副(cylindricalpair);5)球面副(sphericalpair);6)万向副(universalpalr);7)平面副(planarpair);8)齿轮副(gearpair);10)无约束副(unconstrainedpair);11)全约束副(fullyconstrainedpair);12)点面副(pointonsurfacepair);13)滑动曲面副(slidingsurfacepalr);14)滚动曲面副(rollingsurfacepair);15)点平面曲线副(pointonplanarcurvepair)16)滑动曲线副(slidingcurvepair);17)滚动曲线副(rollingcurvepair)。9)齿条齿轮副(rackandpinionpair);副1~副11称为低副,其余称为高副。注:副1~副11不需要明确的几何信息来描述其运动特性。副12~副17需要引用一个曲面或曲线,进行运动学定义。曲面副和曲线副又可分为两大类:滑动类和滚动类。滚动副在两个曲面或曲线之间的相对运动中不能有相互滑动。示例l:两个曲面或曲线之间的摩擦阻力足够大时,可能使它们之间的相对运动被限制为滚动。对于滑动副来说,不存在这样的限制。滑动高副可以用几个低副表示。如果一个副可以被表示成为低副,那它就应该被表示成低副,而不表示成高副。5.2基本概念与假设5.2.1运动模型结构用运动学的方法来表示的机械产品可能有任意的拓扑结构。这些拓扑结构并不局限于简单的链(也就是没有分枝的运动开链)或树形结构,还可能包括环或网络结构。注:每一种运动结构都可用它的构件和关节来表示。关节限制了两个称为构件的刚体之间的运动。构件和关节足以用来表示运动结构的拓扑特性,但是对于计算,还必须引入基于图论的结构的其他层次。在5470中给出了运动结构的图形表达的相关信息。示例2:简单链是一种适合工业机器人或起重机的运动结构,树形结构用来表示多臂操纵器。示例3:网络结构出现在工业产品中.一个例子就是用作汽车前窗刮水器的机构。在GB/T16656的本部分中,运动结构用图来表示,其中顶点代表构件,边代表关节。当用运动学的方法来表示刚体时,其运动特性通过构件来表示,其几何特性通过相关的形状来表示。所有的与运动构件相关的坐标系都建立在构件坐标系上,它们是相关构件表示的几何环境。在GB/T16656的本部分中,这些坐标系被称为运动坐标系(frame)。为r表示一个机构的运动特征,构件的形状用其所有的副坐标系在构件坐标系中的相对位置和相对方向来表示。5.2.2定位对于两个运动构件之间相对运动的约束,在拓扑描述中采用关节来表示。从几何角度来说,这种约束通过相应的运动副来描述。定位(placement)描述了一个坐标系对于另一个坐标系的相对位置和方向。定位可以用不同的方法来表示。在GB/T16656的本部分中使用了八种不同的方法:——r1gidhomogenousmatrix(刚体齐次矩阵);——axi“一placement一3d(三维空间轴2方位);一transform(坐标变换)(见6.4.2);——su—parameters(SU一参数);——poim—on—curve(曲线上的点);——p。im—on—surface(曲面上的点);——apairtypewithitsinitialstate(有initial—state的副类型);6 GB/T16656.105—2010/iso10303—105:1996一~cartesian—transformation—operator一3d(3维笛卡尔变换运算符)。刚体齐次矩阵仅作为数学公式中的符号束使川。它定义了一个坐标系在另一个坐标系中的相对位置和方向。矩阵定义如下:3×3(旋转矩阵)0这里用符号‘P,表示坐标系i在坐标系女中的位置矩阵,其中:^一引用参考坐标系的标识,在这个坐标系中定义了坐标系i的位置;i一坐标系的标识,它的位置根据坐标系自来确定;如,8y,8z——平移向量的分量。。P,代表相对于世界坐标系的定位。坐标变换包括三个旋转和三个移动分量。坐标变换是唯·适合于通过权值函数进行插入和近似的定位表示方法。其他表示方法在模式中进行定义。5.2.3正旋转方向的含义对于在kinematic—structure—schema中定义的所有旋转,正的旋转角度意味着沿着旋转轴的相反方向看过去,旋转是逆时针的。5.2.4形状表示运动结构中的单个部件在不同细节层次上的表示经常同形状表示相联系。在GB/T16656本部分中,有三种不同的形状表示:——运动结构中不动部件的形状表示,称为机座形状(groundshape);——运动结构中构件的形状表示,称为构件形状(1inkshape);——运动副的形状表示,称为副形状(pairshape)。geometricrepresentation—items用来描述机鹰形状,它们或是在运动结构的kinematicground—representation的items组中(在这种情况下,kinematic~ground—representation必须同时是shape—representation),或者是通过任何方法与运动结构的kinematicground—represenlation相联系的shape—representation的items组中。GB/T16656本部分不对机座形状的表示方法进行任何明确的约束。geometric—representation—items描述构件形状,它们不能在相应的kinematic—link—representation的items组中;它们应该在shape—representation的items组中,而且这个shaperepresentation通过kinematic~link—representation—association与kinematiclink—representation相联系。任意数最的shape—representation都可以通过这种方法与指定的kinematic—link—representation建立联系。只有kinematic—fame—background类型的geometricrepresentation—items,如point,curve或surface才被允许用来表示副的形状。它们应该属于kinematic—fame—background的items组。并且,kinematic~fame—background通过kinematic—fame~backgroundrepresentation—association与副中的一个kinematic_link—representations建立联系。kinematic~fame—background—representation中的items组可能包含多个项。一般情况下,任意数量的kinematicj。aRlebackground—representations都可以与kinematiclink—repesentation建立联系,也可和在items组中的任意一个坐标系建立联系。对于需要明确指出几何特征才能确定其运动特性的高剐来说.每一个被引用的curve或surface,都需要引用至少一个kinematic—frame—background-representation来加以说明。5.2.5单位一致尽管~个运动结构可以存在多个representations以及与之相对应的representationcontexts,但在此运动结构中必须保持单位的一致。为了保持单位的一致,必须进一步要求通过representation一潮叫叫_=_O GB/T16656.105—2010/ISO10303—105:1996context的子类global—unit—assigned—context把运动结构中所要使用的单位综合分配给相应representations中的项(见GB/T16656.41)。类型相同的measure—values的单位在所有运动结构的representation中要保持一致。示例4:kinematkLpair中副的定位在两个不同的kinematic_linkrepresentations中同时创立。要在这两个kinematic—link—representations中保持单位的一致,它们必须通过global—unit—assigned—contexts来共享单位。5.3运动结构模式(kinematic_structure_schema)类型定义5.3..rigid—placementrigid—placement类型是对axis2一placement或SU—parameters定位方法的一种引用。EXPRESS描述:-yt)TYPErigid_placement=SELECT(axis2一placement一3d,au_parameters);END_TYPE;(*5.3.2rotational_rangemeasurerotational—range—measure类型是对plane—angle—measure或unlimited—range计量方法的一种引用。EXPRESS描述:*)TYPErotational—range—measure2SELECTEND(*5.3(plane—angle_measureunlimited-range);TYPE;3translationalrange_measuretranslational—range—measure类型是对length—measure或unlimited—range计量方法的一种引用。EXPRESS描述:*)TYPEtranslational—range—measure;SELECT(1ength_measure,tmlimited-range);END_TYPE;(*5.3.4unlimited_rangeunlimited—range类型是一种将极大值赋给运动副边界值的方法。EXPRESS描述:*、TYPEunlimitecLrange=ENUMERATIONOF(unlimited);END—TYPE;f*8 枚举类型定义GB/T16656.105—2010/Iso10303—105:1996unlimited:意味着边界值是无限的。5.3.5spatial_rotationspatial—rotation类型能够将3D空问中的任意旋转定义为yprtion。EXPRESS描述:*1TYPEspatial—rotation=SELECT(ypr_rotation,rotation_about—direction);END_TYPE;(*5.3.6ypr_enumerationypr—enumeration用来表达绕笛卡尔坐标空间尺3原点旋转的角度。yaw表示以z轴为轴线旋转,将初始坐标系(z。,y。,z。)转为过渡坐标系(z7,y’,z’)的旋转角度。pitch表示以,’轴为轴线,将过渡坐标系(z7,y’,z’)旋转为另一个过渡坐标系(z”,y”,z”)的旋转角度。roll表示以z”轴为轴线,将(z”,,,z”)旋转到目标坐标系(z,y,z)的旋转角度。注:若需要更详细地了解yaw,pitch,和roll,参见ISO8855:1991(2.2)。EXPRESS描述:-F,)TYPEypr—enumeration=ENUMERATIONOF(yaw,pitch,roll);END_TYPE(*枚举类型定义:yaw:绕g轴旋转角度;pitch:绕y’轴旋转角度;roll:绕z“轴旋转角度。5.3.7ypr_rotationypr_rotation类型定义了旋转角度序列。yaw最先,pitch次之,roll晟后。就是说,先旋转yaw,再旋转pitch,roll的旋转必须是ypr—rotation中的最后一个操作。注:附录E给出了一个EXPRESS函数,它根据输入的ypr—rotation,返回旋转矩阵。它把旋转变换表示为旋转矩阵,而不是旋转角度的一个序列。EXPRESS描述:*)TYPEypr—rotation=ARRAY[ypr—index(yaw):ypr_index(roll)]OFplane_angle_measure;END_TYPE;(*非形式限制:anglebound(角度区间):yaw,pitch,roll的角度值所在区问必须与下列区间等价(角度用弧度9 GB/T16656.105~2010/ISO10303—105:1996表示):yawangle∈(",Ⅱ]pitchangleC-[一Ⅱ/2,”/2];rollangle∈(Ⅱ,Ⅱ)。rectangularpitchangle(正交转角):如果pitch的绝对值与Ⅱ/2等价,那么roll的值应为零。5.3.8kinematic_frame_backgroundkinematic—frame—background用来引用一个点(point),一条曲线(curve)或一个曲面(surface)。EXPRESS描述:*)TYPEkinematic—frame—background=SELECT(point,curve,surface);END_TYPE;(*5.4运动结构模式(kinematic_structure_schema)实体定义5.4.1rotation_about_directionrotation—about—direction定义了在笛卡尔坐标空间斟的一个旋转。旋转轴通过相应坐标系的原点,它的方向由direction—of_axis给出。旋转的角度由rotation—angle给出,它可以是任何有限值,也就是说弧度的绝对值并不限制小于”。一个正的rotation—angle的含意是沿着由direction—of—axis指出的旋转轴的逆向看过去,旋转为逆时针。EXPRESS描述:*)ENTITYrotation~about—direction;direction_of—axis:direction;rotation_angle:plane—angle_measure;WHEREWRI:SIZEOF(direction_of—axisdirection_ratios)=3;END_ENTITY;(*属性定义:direction—of—axis:旋转轴的三维方向;rotation—angle:绕旋转轴旋转的角度。形式限制:WRl:direction—of—axis应该是一个三维方向。5.4.2kinematic_property_definitionkinematic—property—definition定义了一个产品的运动特性。EXPRESS描述:*)ENTITYkinematic—property_definitionSUBTYPEOF(property_definition);ground_definition:characterized_definition;END_ENTITY;10 属性定义GB/T16656.105—2010/lso10303-105:1996ground—definition:与kinematic—ground—representation相关联的characterized—object、characterized—product—definition或shape—definition。该kinematic—ground—representation与kinematicproperty—definition相关联。注:如果grounddefinition不需要与某个产品定义相联系,它可以是一个characterizedobject。5.4.3kinematic_property_representation_relationkinematic—property_representation—relation是将kinematic—ground—representation与kinematic—property—definition联系起来的property—definition—representation。EXPRESS描述:*)ENTITYkinematic——property_representation——relationSUBTYPEOF(property_definition—representatlon);UNIQUEURI:SELF\property_definition_representationdefinition;WHEREWRI:’KINEMATIC_STRUCTURE—SCHEMAKINEMATIc_PROPERTY—DEFTNITION’INTYPEOF(SELF\propertydefinition_representationdefinition);WR2:’EINEMATICSTRUCTURE—SCHEMAKINEMATICGROUNDREPRESENTATION’INTYPEOF(SELF\property_definition_representationused_representation):END—ENTITY;(*形式限制:URl:kinematicproperty—definition最多只能通过一个kinematic—property—representation—relation与kinematic—ground—represention相连。WRl:kinematicproperty—representation—relation的definition必须是kinematic——property——definition。WR2:kinematic—property—representation—relation的used—representation应该是一个kinematic—ground—representation。5.4.4kinematicground_representationkinematic—ground—representation定义了世界坐标系。注:shaperepresentation可以和kinematicgroundrepresentation同时给出,用来确定kinematic—groundrepresentalion中那些固定不动部件的形状。EXPRESS描述:*)ENTITYkinematic—ground—repre8entationSUBTYPEOF(representation);INVERSEproperty:kinematic—propertyrepresentation_relationFORused—representati。nWHEREWRI:’GEOMETRY—SCHEMAGEOMETRIc_REPRESENTATION_CONTEXT’INTYPEOF(sELT\representa七ioncontext—of—items);END—ENTITY; GB/T16656.105—2010/[so10303—105:1996【*属性定义:SEI。F\representation.items:用context—of—items描述的一组相互关联的representationitem。ground—context:世界坐标系的标识,所有在kinematic—property—definition中的定位都直接或间接地由它来确定。property:联系kinematic—ground—representation和kinematic—property—definition的kinematic—property—representation—relation。形式限制:WRl:kinematic—ground—representation中context—of—items表示的相关环境必须是geometric—representation—context。非形式限制:ground—definition:kinematic—ground—representation应该与property\propertysentation.definition\一kinematic—property—definition.ground—definition相联系。5.4.5meeh{lnismmechanism确定了在关节的约束下,构件之间相对运动的能力。它是将一个构件固定于机座或其他mechanism上的运动结构。整个mechanism可能受控于其机架(base)上的刚体运动。注:一个机构可能在不同的时候有不同的机架。在空间应用中,类似蠕虫的机构用一端抓住一个空间结构,另一端向前移动,用端点受动器抓住新的机架从而来固定自身,然后把原先的机架松开。EXPRESS描述:*)ENTITYmechanism;structuredefinitionbasecontaining_propertyWHEREWRI:SIZEOF(QUERY(joint<*structuredefinition.JointsI(base:=:Joint.first—link)OR(base:=:joint.second_link))))0;END—ENTITY;(*属性定义:structuredefinition:mechanism的拓扑结构。base:mechanism的初始构件。containing_property:mechanism所属的kinematic~propertydefinition。形式限制:WRl:在structure—definition.】oints的关节(joint)中,至少有一个关节,它的第一个或第二个构件是机架。这样就保证了在运动结构中必然包含机架。5.4.6mechanismbaseplacementmechanism—base—placement定义了一个机构中机架(base)的构件坐标系在世界坐标系中的定位,或是在其他机构构件的局部坐标系中的定位。注1:如果这个定位是定义在其他机构构件之上的,那么称这个机构(机架)是安装于其他机构之上的。如果定位是相对于世界坐标系的,mechanism—base—placement在kinematic—ground—representation的context二ofitem中描述base的构件坐标系。若定位是定义在其他构件局部坐标系12ot-昌n;出距kn吐∞b睥廿m∞』J丑f坨_u”扯北扯锄nHnH GB/T16656.105—2010/ISO10303—105:1996之上的,那么,mechanism—base—placement在联系其他kinematic—link—representation的link—frame中描述base的构件坐标系。EXPRESS描述:*)ENTITYmechimismbase—placementSUBTYPEOF(representationrelationship—withtransformation);base_of—mechanism:mechanism;SELF\representation_relationship—witlLtransformation.transformation_operator:cartesian—transformation_operator一3d;DERIVESELF\representation_relationshiprep——2:kinematic—link—representatiOn:=representationof一1ink(base—of—mechanismbase)UNIQUEURI:base—of—mechanism;WHEREWRI:(,KINEMATIC—STRUCTURE_SCHF。MA.KINEMATIc_GROUND_REPRESENTATION’INTYPEOF(SELF\representation_relationshiprep—1))OR(’KINEMATIC—STRUCTURE—SCHEMA.KINEMATIC—LINK—REPRESENTATION’INTYPEOF(SELF\representation_relationshiprep_1));WE2:suitably_based—mechanism(SELF,base—of—mechanism);WR3:SELF\representation_relationship_with_transformation.tremsformation_operatorINSELF\representationrelationshiprep一1items;END_ENTITY;f*属性定义:base—offmechanism:mechanism,该机构的base位置用mechanism—base—placement来表示。SEI。F\representation—relationship—with—transformation.transformation—operator:相关环境rep一1与rep一2之间的坐标变换。注2:用作transformation_operator的cartesian—transformation—operator3d的合法值需定义在使用这个实体的应用协议之中。SELF\.representation_relationship.rep一2:与base—of—mechanism中的base相关联的kinematic—link—representation。它是通过函数representation_of-link从base_of—mechanism.base派生出来的。形式限制:URI:mechanism作为base—m—mechanism最多只能在一个mechanism—base—placement中使用。WRl:mechanism—base—placement的rep-1应该是kinematic—ground—representation或kinematic—link—fepresentation。WR2:mechanism—base—placement或是根据与containing—property相连的kinematic—ground—representation来确定base—of_mechanism中base的定位,或是根据属于另一个mechanism的kinematic_link—representation来确定base的定位。这另一个mechanism应该在containing_property中的mechanisms组中。在这个情况下,base—of_mechanism中base的定位是直接13 GB/T16656.105—2010/ISO10303-105:1996或间接的由kinematic—ground—representation确定的。如果定位是间接确定的,该mechanism不应该参与它自己的base定位的确定。这些条件是由suitably—base~mechanism函数来检测的。WR3:在mechanism—base—placement中作为transformation—operator使用的cartesian—transformation—operator一3d应该在rep-1的items组中。5.4.7initialstateinitial—state指定了mechanism的副参数的初始值。注:一些类型的运动结构,比如四杆机构,如果除了有形状参数(如杆长)外,还提供了配置结构信息,那么就只能以唯一结构进行组装。在这种情况下,initialstate提供了足够的副参数信息.从而使得构型具有唯一性。EXPRESS描述:*)ENTITYinitialstate;appJ_1es—to—mecnanls“:mechanism;pair—values:SET[I:?]0Fpair—valueW}ⅢREWRI:SIZEOF(QUERY(joint(*applies—to—mechanismstructure—definitionjointsSIZEOF(QUERY(init—val(+pairvaluesinit—val.applies—to—pair.joint:=:Joint))()1))=0;END—ENTITY;f*属性定义:applies—to—mechanism:应用initial—state的mechanism。pairvalues:mechanism中每一对副的副参数。形式限制:WRl:initial—state从它的pair_values组中提供给它所应用的mechanism中每一个kinematic—pair恰好一个pair_value。5.4.8kinematic_structurekinematic—structure描述了运动结构的拓扑特性。一个kinematic—structure的拓扑性质是通过kinemati叫oint来表示的。kinematic—joint的作用是建立起kinematiclink的运动副之间的关联。注:任何一个运动结构都可以用构件和关节来表示。关节限制了称为构件的两个刚体之间的运动。关节和构件足以用来表示一个运动结构的拓扑特性,但是,为了计算,还需要引入其他一些建立在图论基础上的结构层次。关于运动结构的图形表示,见5470。EXPRESS描述:*)ENTITYkinematic—structureJoints:SET[1:?JoFkinematic—joint;END—ENTITY;(*属性定义:joints:一组kinematic—joint,它们组成了一个mechanism的kinematic—structure。5.4.9kinematicjointkinematic—joint描述了两个且仅两个构件之间次序连接的拓扑特性。一个连接一般都有一个拓扑方向。这个方向定义为从第一个构件指向第二个构件。对于一个和kinematic—joint相对应的14 GB/T16656.105—2010/ISO10303-105:1996kinematic—pair,第一个pair—placement—in—first—link_context应该是kinematicjoint中first—link的ki—nematic—link—representation中的一个项。依此类推,pair—placement—in—second—link—context是kinematic_ioint中second_link的kinematic—link—representation中的一个项。注1:拥有关节作为它的joint属性的kinematicpair定义了相对运动的约束类型。在拓扑的图形表示中,kinematic_ioint代表连接两个顶点的有向边。除了在rackand—pinionpair、pointonsurfacepair、point—on—planar—curvepair中,kinematicjoint的方向都是任意的。注2:如果first—link和second_link的次序互换,那么副的值和副的范围值都要使用相反的符号,另外在simple—pair—range的子类中那些给出下限的属性值应与给出相应上限的属性值互换。EXPRESS描述:*)ENTITYkinematic—joint;first—link:kinematic—link;second_link:kinematic—link;INVERSEstructure:kinematic—structureFORJoints;WHEREWRI:first—link:():second_link;END_ENTITY;(*属性定义:first—link:进入关节的构件。second—link:离开关节的构件。structure:kinematic—structure,它的joint组中包含kinematic_joint。形式限制:WRl:first—link和second—link不可以是同一个构件。5.4.10kinematic_linkkinematic—link表示mechanism刚体部分的拓扑特性。ExPRESs描述:*)ENTITYkinematic—link;WHEREWRI:sIzEOF(uSEDIN(SELF,’KINEMATICSTRUCTURE—SCHEMA.KINEMATIc-JOINT.FIRST—LINK’)+USEDIN(SELF,’KINEMATIC—STRUCTURE—SCHEMA.KINEMATIC—JOINTSECONDLINK’))>0WR2:unique—iink_usage(SELF);END—ENTITY;(*形式限制:WRl:kinematic—link至少是一个kinematic_joint的first—link或second—link。WR2:kinematic—link作为一个mechanism的组成部分,在该机构的运动结构中必须且只能出现一次。15 GB/T16656.105—2010/ISO10303—105:19965.4.11kinematic_link_representation_relationkinematic_link—representation~relation将kinematic—link的几何特性与拓扑特性联系起来。EXPRESS描述:*)ENTITYkinematic—link—representation_relation;topological—aspects:kinematic—link;geometric—aspects:kinematic—link_representation;UNIQUEURI:topologicalaspects;END—ENTITY;(*属性定义:topological—aspects:几何特性用kinematic—link—representation表示的kinematic_link。geometric—aspects:一个机械产品刚体部分的相关环境的表示,以及它的kinematic—link的坐标系统的表示。形式限制:URl:一个kinematic—link最多只能通过一个kinematic_link_representation—relation与kinematiclink—representation相连。5.4.12kinematic_link_representationkinematic—link—representation描述了kinematic—link的几何特性。link—frame的属性由相关环境来表示。EXPRESS描述:*)ENTITYkinematic—liD/(representationSUBTYPEOF(repre8entati。n);sELF\representationcontext—of—items:geometric—representation_context;DERIVE1inkframegeometric—representation_context=SELF\representation.contextofitems1NVERSElink—representation—relation:kinematic—link—representation_relationFORgeometric—aspectsWHEREwRl:SIZEOF(QUERY(item(*SELF\representation.itemsNOT(rKINEMATIC—STRUCTURE—SCHEMARIGID_PLACEMENT"INTYPEOF(item))0R(,GEOMETRY—SCHEMACARTESIAN_TRANSFORMATION_OPERATOR_3D’INTYPEOF(item)>)))=0:END—ENTITY;(*】6 属性定义GB/T16656.105—2010/ISO10303—10511996SEI。F\representatlon.items:一组在link—frame中描述的representation—items。它至少包含一个副坐标系,该坐标系在kinematic—pair中作为pair—placement—in—first—link—context或pair—placement—in_second—link—context使用。它可以包含任意数量的catesian—transformation—operator一3ds,它们作为mechanism—base—placement的transformation_operator使用。另外,它还可以包含属于构件的附加坐标系。注:kinematic—link—representation中的item组不包含定义构件形状的geometric—representationitemsSEI。F\。印resentatlon.context—of—items:geometric—representationcontext(几何表示相关环境),它提供items的相关环境。link—frame:与kinematic—link相连的构件坐标系。link—representation—relation:将kinematiclink—representation和kinematic—link联系起来的kinematic—link—representat;onrelation。形式限制:WR]:kinematic—link—representation的items组中所有元素或是rigid—placement类型或是cartesian—transformation—operator一3d类型。5.4..3kinematic_link—representation_associationkinematic_link-representation—association是将kinematic—link—representation与repesentation联系起来的representation—relationship。注:kinematiclink—representation_association是通过将shape—representation与和它对应的kinematic—link—representation联系起来的方法来定义构件形状的。EXPRESS描述:*、ENTITYkinematic——link——representation_associationSUBTYPEOF(representation_relationshlp);SELF\representationrelationshiprep—l:kinematic—iink_representation;WHEREWRI:SELF\representation—relationshiprep一2context—of—items:=:SEl2\representation_relationshiprep_l\representationcontext——of——itemsWR2:SIZEOF([’KINEMATICSTRUCTURE—SCHEMAKINEMATIC_GROUND—REPRESENTATION’,’KINEMATIC—STRUCTURE—SCHEMA.EINEMATIC—LINK—REPRESENTATION’]*TYPEOF(SEl2\representation—relationshiprep一2))=0;END-ENTITY;(*属性定义:SELF\representation_relationship.rep_l:与rep一2相连的kinematic_link—representation。形式限制:WRI:rep一2的context—of—items必须和与rep一2相连的kinematic—link—representation的link—frame相同。WR2:不论是kinematic—ground-representation还是kinematic—link—representation都不能通过这个实体与kinematic—link—representation建立联系。5.4..4kinematic_frame—background_representationkinematic_frame—background—representation描述了与kinematic—pair相关的形状特性。EXPRESS描述:17 GB/T16656.105—2010/ISO10303-105:1996*)ENTITYkinematic——frame——background——representationSUBTYPEOF(representation)sELF\representationitemsSELF\representationcontext——ofwJ皿RE:SET[I:?]oFklnematic—frame—background;items:geometric—representation_contextWRI:sELF\representationcontext—of—items\geometric—representation_context.coordinate—space—dimension23;END_ENTITY;(*.属性定义:SELF\representation_items:一组kinematic—frame—background的实例,它们定义了与kinematicpair相关的形状。SEI。F\representatlon.context—of_items:建立items的相关环境。形式限制:WRl:kinematic—frame_background—representation的context—oLitems应是三维的。5.4.15kinematic_framebased_transformationkinematic_frame_based—transformation是使用rigid—placement作为变换函数的functionally—defined——transformation。EXPRESS描述:*1ENTITYkinematic.—frame——based——transformationSUBTYPEOF(geometric—representation_item,functionally_defined_transformation);transformator:rigidplacement;W皿REWAI:SELF\geometric—representation—itemdim=3;END—ENTITY;(*属性定义:transformer—frame:kinematic—frame_based-transformation中的变换函数rigid—placement。形式限制:WRI:维数应该等于3。非形式限制:一个kinematic—frame—based—transformation实例等价于一个不带比例放缩和镜像的cartesian—transformation—operator一3d实例,定义见GB/T16656.422010的4.4.21。如果kinematic—frame—based—transformation.transformer—frame是指axis2一placement一3d的一个实例,按下面所示得到相应的cartesian—transformation—operator3d:cartesian—transformation—operator一3d的属性local—origin和u应该分别等于axis2一placement一3d的属性location和P。cartesian—transformation—operator一3d的属性scale应该等于1.0。如果kinematic—frame—based—transformation.transformer—frame是指su~parameters的一个实例,使用5.4.17su—parameters给定的等式计算等价的axis2一placement一3d。18 GB/T16656.105—2010/ISO10303-105:19965.4.16kinematic—frame_background_representation_associationkinematic—frame—background—representation—association是以kinematic—frame—based—transformation作为transformation—operator的一个representation—relationship—with—transformation。这个操作符的transformer—frame建立在kinematic—link—representation中,在那里它作为rep-l使用;变换后的结果是被rep一2引用的kinematic—frame_background—representation。EXPRESS描述:*)ENTITYkinematic——frame.。background_representation_associationSUBTYPEOF(representation—relationship_with_transformation};SELF\representation—relationship_with-transformationtransformation_operator:kinematicframe_based_transformation;WHEREWRI:’KINEMkTIC—STRUCTURE—SCHEMAKINEMATIC_LINK_REPREEENTATION’INTYPEOF(SELF\representation_relationship.rep_1);WR2:’KINEMATIc_STRUCTURE—SCHEMA.KINEMATIC—FRAME—BACKGROUND_REPRESENTATION’INTYPEOF(SELF\representation_relationshiprep一2);WR3:sELF\representation—relationship_with—transformationtransformation_operator\kinematic—frame_basedtransformationtransformatorINSELF\representation—relationship.rep一1.items;END_ENTITY;(*属性定义:SELF\representation——relationship——with——transformation.transformationframe—background_representation—association的变换操作符。形式限制:WRl:在kinematic_frame_background—representation—association中描述的第一个representation必须是kinematic—link—representation。WR2:在kinematic—frame—background—representation—association中描述的第二个representation必须是kinematic—frame_background-representation。WR3:在kinematic—frame—background~representation的transformation—operator中作为transformer—frame使用的rigid—placement应该在kinematic—link—representation中的items组中作为rep一1使用。5.4.17su_parametersSU—parameters是除了axis2一placement~3d以外的另一种定义副在构件上定位的方法。要描述运动特性,只需要知道从构件坐标系到所有副的坐标系的转化,就足以将构件的特性全部表达出来,并不需要构件的全部形状≠这个形状信息是通过一组称为Sheth—Uicker-Parameters的特性参数来获得的,简写为“SU—parameters”(SU一参数)。注1:见图2。图中是一个有两个副的kinematiclink,构件坐标系和其中一个副的坐标系重合,这个图可以解释为将构件一头的坐标系转化为在另一头的坐标系。坐标系的定义使用下面这些符号:19 GB/T16656.105—2010/ISO10303-105:1996z;,y;,£;——构件坐标系的坐标轴;i;——构件坐标系的原点;zt,Y*,zt——构件上运动副坐标系的坐标轴;孔——副坐标系原点;引人了下列辅助向量:“——轴。:慨之间的公垂线上的单位向量,由z:指向z+,公垂线由t。表示5:公垂线t。与2:的交点;5;公垂线t。与z;的交点。:平行于J‘90。图2SU一参数定义下面这些参数在SU—parameters中使用:a^——z:到z^的绝对距离,at—l瓦sll;%——从#:正向到z。正向的角度,根据“来确定正负;sina女一(i:×瓦)·t女,COSa&=覃:·玩;bt——i*和n在z。上投影的距离,由下式给出:b女一(巩5女)·玩;段——从瓦正向到z。正向的角度,根据z;来确定正负;sin/?k=(/-女×矗)·瓦,cos口k—t}·氟;“——s;和o:在z;上投影的距离,由下式给出;“一(i:一01)·导:;y。——z:正向到^正向的角度,根据z;来确定正负,sin7^=(21×氏)·科,COS以一面·t^;注2:如需详细地了解SkethUicker参数,见参考文献[1]。注3:在工业机器人技术中,DenavitHartenberg参数(DH—parameters)被广泛使用。见参考文献[2]。对于有环的运动结构,分别表达构件的各坐标轴相对于副的当前状态的相对位置是十分重要的。与DH一参数相反,SU一参数能分清每个坐标轴。注4:附录F说明了如何将DH参数转化为SU一参数。注5:拥有如上定义的一个SU参数的su—parameter实例与拥有下面属性值的axis2placement3d的实例是等价的。 SEI。F\placement.10cationrefdirectionGB/T16656.105—2010/ISO10303-105:1996cartesian—point([(d^cosYk+b女sin以sinak),(n}sinY^一b&cOSY&sina女),(C^+b女COSff})j);direction([(sinnsina女),(一cOSY女sina女),COSa女])direction([(cos)*^eosp女一sin)*女COSa女sinpk),(sin)*kcospk+cosncosa女sinfl女),(sina女slr涡)])。EXPRESS描述:*)ENTITYsu_parametersSUBTYPEOF(geometric—representation_item);a:length-measure;alpha:plane—angle—measure;b:length_measure;beta:plane—angle—measure;C:length_measure;gamma:plane—angle—measure;WHEREWRI:SELF\geometric—representation_itemdim23END—ENTITY;(*属性定义:a:SU参数a^;alpha:SU一参数%}b:SU参数b。;beta:SU一参数像;C:SU参数“;gamma:SU参数n。5.4.18kinematic_pairkinematic—pair定义了在关节处相交的两个相邻构件的运动约束。EXPRESS描述:*、ENTITYkinematic—pairSUBTYPEOF(itemdefined_transformation);joint:kinematic—joint;ⅡERIVEpair——placement——in_first——1ink——context:rigid_placement:=SELF\item_defined_transformationpairplacement—in_second一1irlk—context:rigid—placement:=SELF\item_defined_transformationUNiQvEtransform——item——1transformitem22】 GB/T16656.105—2010/ISO10303-105:1996URI:joint;WHEREWRI:coordinated_pair_link~representation(Jointfirst一1ink,pair—placement—infirst—linkcontext);WR2:coordinated-pair—linkrepresentation(jointsecond_/ink,pair_placement—in_secondiinkcontext);END—ENTITY;(*属性定义:ioint:运动受到kinematicpair约束的关节。pair_placement—in—first—link~context:副坐标系在第一个构件的相关环境(也就是构件坐标系)中的定位。pair—placement—in—second—link—context:副坐标系在第二个构件的相关环境(也就是如构件坐标系)中的定位。形式限制:URl:每个kinematic—pair必须应用于不同的关节。WRl:必须有一个kinematic—link—representation与joint.first—link相连,而且它必须在items组中包含pair—placement—in—first—link—context。这个条件是通过coordinated—pair—link—representation函数来检测的。WR2:必须有一个与joint.second—link相连的kinematic—link—representation,而且必须在其items组中包含pair—placement—in—second—link—context。这个条件是通过coordinated—pair—link—representation函数来检测的。注1:第二个构件相对于第一个构件的相对定位,以如下三个坐标系为基础定义:其中一个坐标系,与第一个构件固接,而且设置在第一个构件的相关环境中(也就是构件的坐标系)。另一个坐标系,与第二个构件固接,而且设置在第二个构件的相关环境中(也就是构件的坐标系)。一接触坐标系,定义了两个构件之间的点和面的接触。这个接触坐标系可以与其中的一个构件有物理连接,也可以没有物理连接。副的类型和副参数一起定义了接触坐标系相对于第一个副坐标系和第二个坐副标系的定位。于是,两个副坐标系相对于对方的定位也被间接地定义了。见围3。注2:对机构进行运动分析的目的是确定机构中所有构件上的构件坐标系,使它们和实际的副参数保持一致。一致性条件如下:设一个副连接了两个构件,并且:J代表该副的第一个构件;☆代表该副的第二个构件;P代表从第一个构件的角度看到的副;q代表从第二个构件的角度看到的副;r代表公共接触点(可能与两个构件都有物理连接,也可能没有这种连接);oLF,,。1LFe代表在这些构件上的坐标系和刚体齐次矩阵(相对于世界坐标系);,PF。,‘PF。是副p分别相对于该副的第一构件和第二个构件的定位。于是oPF。一oLF,’PF。是第一个副坐标系相对于世界坐标系定位的刚体齐次矩阵。一PF,是接触坐标系相对于第一个副坐标系的定位。这个定位是由副的类型和副的实际参数决定的。。PF,是接触坐标系相对于第二个副坐标系的定位。这个定位是由副的类型和副的实际参数决定的。一致性要求:。LF,ipFp9PF。一。LF女6PFq”PF。22 GB/T16656.105—2010/mo10303-105:1996或者,可由以下公式获得第二个构件的相对于世界一坚标系的定位:‘ljb一1|l,F,’rF。5PFpPF■‘Pb?,1注3:对于低副,接触坐标系和第二个副坐标系应被认为是相同的。所以,对于低副,刚体齐次矩阵。PF.是一个单位矩阵。5.4.19pair_actuatorpair_actuator标识了被驱动的kinematic—pair。一个由pairactuator标识的kinematic—pair的所有自由度视为被驱动。注l:对于逆运动学分析,被驱动的副用来获得预定的路径或位置。对于正运动学分析,仅规定被驱动的副的运动副值。注2:GB/T16656的本部分不支持只对副中的单个自由度驱动。需要建立运动系统的模型,以使一个运动副或者被完全驱动,或者完全没有被驱动。对于混和的情况,例如,一个圆柱副.可以分别用一个旋转副和一个移动副来表示。接触坐标系统图3两个相连构件上副坐标系的定位关系EXPRESS描述:*、ENTITYpair—actuator;actuated—pair:kinematic—pair;name:lable;UNIQUEURI:actuated_pair;END—ENTITY;(*属性定义:actuated—pair:一个被动的运动副。name:一个或一组被pair—actuator引用的单词。形式定义:URl:每一个pair—actuator可以应用于不同的actuated—pair。5.4.20pair_valuepair_value说明了组成kinematic—pair的两个构件的构型。EXPRESS描述:*)ENTITYpairvalue; GB/T16656.105—2010/ISO10303-105:1996applies—to_pair:kinematic—pair;END—ENTITY;(*属性定义:applies—to—pair:应用pair—value的kinematic—pair。5.4.21simple—pair_rangesimple—pair—range定义了副连接的两个构件的构型的允许范围。注:每~个副的参数范围的定义只允许是“下限上限”形式的简单范围定义。EXPRESS描述:*).ENTITYsimple—pair—range;applies—to—pair:kinematicpair;END—ENTITY;(*属性定义:applies—tO—pairl应用这个范围值的副。5.4.22revolute_pairrevolute—pair将两个相邻构件之间的运动限定为绕公共轴的旋转。为了测量旋转的角度,在每个构件上都定义了一个坐标系,使原点重合,z轴重合且正向相同。第二个构件相对于第一个构件的转动用一个角度来确定,这个角度是将第一个副的坐标系沿正向绕公共z轴旋转,使它的z轴与第二个副坐标系的32轴重合所需转过的角度。注:见图4。EXPREsS描述:*)ENTITYrevolute—pairSUBTYPEOF(kinematic~pair);END_ENTITY;(”实际旋转图4一个代表旋转副的关节5.4.23revolute_pair_valuerevolute—pair—value定义了revolute—pair副参数的值。EXPREss描述:24 GB/T16656.105—2010/1SO10303-105:1996*1ENTITYrevolute——pair——valueSUBTYPEOF(pair—value);SELF\pair—valueapplies—to—pair:revolute—pair;actual—rotation:plane_angle_measure;END—ENTITY;(*属性定义:SEI。F\pair—value.applies—to—pair:应用revolute—pair—value的revolute—pair。actual—rotation:副参数的值。5.4.24revolute_pair_rangerevotute—pair—range定义了revo[ute—pair参数的上下限。EXPRESS描述:*)ENTITYrevolute——pair.—rangeSUBTYPEOF(simple—pair—range);SELF\simple_pair_range.applies—to_pair:revolute—pair;lower—limit—actual—rotation:rotational—range—measure;upper—limitactual—rotation;rotational—range_measure;WHERENRI:((’KINEMATIC_STRUCTURE—SCHEMA.UNLIMITED_RANGE’INTYPEOF(10wer~limit—actual—rotation))OR(’EINEMATIC_STRUCTURE—SCHEMA.UNLIMITEDRANGE’INTYPEOF(upper_limit—actual—rotation)))XOR(10wer—limit—actual—rotation0.0;END_ENTITY;(*属性定义:input—skew—angle:一个可选属性,如果存在,定义了两根旋转轴之间夹角相对于直角的偏移量。skew—angle:两根旋转轴之间夹角相对于直角的偏移量。如果input—skew_angle存在,skew—angle就是input—skew—angle;否则它是零。形式定义:WRl:skew—angle的绝对值应该是锐角。5.4.38universal——pair_valueuniversal—pair—value定义了universal—pair副的参数集。EXPRESS描述:*)ENTITYuniversal——pair——valueSUBTYPEOF(pair—value);SELF\pair_value.applies—to—pair:universal—pair;first—rotation_angle:plane—angle_measure;34 GB/T16656.105—2010/ISO10303-105:1996second_rotation_Emgle:plane—angle—measureEND—ENTITY;(*属性定义:SEI。F\pair—value.applies—to—pair:universaLpair_value应用的universal—pair。first—rotation_angle:绕第一个轴的旋转角度。second—rotation_angle:绕第二个轴的旋转角度。5.4.39universal——pair_rangeuniversal—pair—range定义了universal—pair副参数的上下限。EXPRESS描述:*1ENTITYuniversal——pair——rangeSUBTYPEOF(simple—pair_range);SELF\simple—pair—range.applies—to—pair:universal—pair;lower—limit—first—rotatlon:rotational—range_measure;upper—limit—first—rotation:rotational—range—measure;lower_limit—second_rotation:rotational—range—measure;upper—limit—second_rotation:rotational—range_measure;WHEREWRI:((’KINEMATIC-STRUCTURE—SCHEMA.UNLIMITED_RANGE’INTYPEOF(10wer—limit—first—rotation))OR(’KINEMATIc_STRUCTURE—SCHEMAUNLIMITED—RANGE’INTYPEOF(upper—limit—first—rotation)))XOR(10wer—limit—first—rotation0WR2:SIZEOF(QUERy(relationl<。USEDIN(SELF,’KINEMATIC—STRUCTURE—SCHEMAJOINTLOGICALRELATIONSHIP.LOOP’)SIZEOF(QUERY(relation_2(’(USEDIN(SELF.’KIMEMATIC_STRUCTURE—SCHEMA.JOINT_LOGICAL—RELATIONSIPLOOP’)一relation_1)JNOT(connecte4-in_simple—loop(relationl,relation_Z)))))0))=0;END_ENTITY;f*属性定义:network:包含环的网状结构。形式限制:WRl:一个环至少包含一个关节的逻辑联系(joint—logical—relationship),也就是它至少包含两个关节。WR2:kinematic—loop中的每一个oriented—joint应该和运动环中其他所有的oriented一}oint相连,这种联系或者直接通过一个单独的joint—logical—relationship实体来建立,或是间接地通过许多joint—logical—relationship实体建立,以保证kinematic—loop恰好包含一个环。5.4.74joint_logical_relationshipjoint—logical—relationship用来联系环中的两个orientedjoint。注:只有运动结构是用有向图来表示的,这个实体才在运动模型的实例中出现。EXPRESS描述:*1ENTITYjoint—logical—relationship;loop:kinematic—loop;previous—joint—logical—structure:oriented_joint:next—joint—logical—structure:oriented-joint:UNIQUEURI:loop,previous—joint—logical—structure;UR2:loop,next—joint—logical—structure;WHEREWRI:previous~joint—logical—structure.exit—link:=:next—Joint-logical—structure.advent_link;END_ENTITY;(*属性定义:、7loop:由previous_joint—logical—logical—structure和next—joint—logical—structure组成的kinematic—loop。previousjoint—logical—structure:环中两个相邻orientedjoint中的第一个oriented_joint。nextjoint—logical—structure:环中N4"N邻orientedjoint中的第二个oriented_joint。形式限制:URl:orientedjoint在kinematic—loop中作为previousioint—logical—structure只能使用一次。64 GB/T16656.105—2010/ISO10303-105:1996UR2:oriented~joint在kinematic_loop中作为next—joint—logical—structure只能使用一次。WRl:前一个oriented_joint的输出构件应该是下一个orientedjoint的输入构件。5.4.75oriented-iointorientedUoint指示穿越一个连接的方向。注:只有运动结构是用有向图表示时,这个实体才在运动模型的实例中出现。EXPRESS描述:*1ENTITYorented—joint;Joint:kinematic—Joint;orientation:BOOLEAN;I)ERrVEadventjill}【:kinematicjink:=assign_directed—link(Joint,orientaion);exit—link:kinematic—link:=assign_directecLlink(joint,NOT(orien七ation));END_ENTITY;(*属性定义:joint:有方向(orentation)指示的joint。orlentation:表示穿越连接的方向。如果orientation为TRUE,则从第一个构件进人关节,再从第二个构件离开。如果orientation为FAI。SE,则穿越的方向相反。advent—link:进入关节的构件。由orientation决定它是第一个构件还是第二个构件。orientation的值由确定构件方向的(assigned_directed_link)函数确定。exIt—link:退出关节的构件。由orientation决定它是第一个构件还是第二个构件orientation的值由函数assigned—directed—link给出。5.4.76oriented-joint——in_treeoriented_joint—in—tree用来标识包含oriented—joint的kinematic—tree—structrue。注:只有当运动结构用有向图来表示时,这个实体在运动模型的实例中出现。EXPRESS描述:*)ENTITYoriented_joint—in_treeSUBTYPEOF(orientetjoint);parent—structure:kinematic—tree_structure;END_ENTITY;f*属性定义:parentstructure:具有要素oriented_ioint的kinematic—tree—structrue。5.4.77advent_oriented-jointadvent—oriented_joint用来指出oriented—joint究竟是从一个子结构中退出来,删AT--个子结构。advent—oriented—joint区分出哪些oriented—joint在kinematic—substructure中,哪些oriented—joint用来连接子结构。注:只有当运动结构用有向图表示时,这个实体才在运动模型的实例中出现。EXPRESS描述:65 GB/T16656.105—2010/ISO10303—105:1996*、ENTITYadvent—oriented_jointSUBTYPEOF(oriented—joint);END—ENTITY;(*5.5运动结构模式(kinematic_structure_schema)函数定义5.5.1ypr_indexypr_index函数建立了一个用于线性变换的旋转角度序列。如果旋转角是yaw类型,函数返回1。如是旋转角是pitch类型,函数返回2。如是旋转角是roll类型,函数返回3。函数的类型为INTEGER。EXPRESS描述:*)FUNCTIONypr—index(ypr:ypr_enumeration):INTEGER;CASEyprOFyaw:RETURN(i);pitch:RETURN(2);roll:RETURN(3);END-CASE;RETURN(?);END—FUNCTION;(*参数定义:ypr:由ypr—enumeraUon指定的旋转轴。5.5.2representation_ofl【inkrepresentation—of_link这个函数返回通过kinematic—link—representation—relation与link建立联系的kinematic_link—representation。如果没有这种联系,则返回不确定值(?)。EXPRESS描述:*、FUNCTIONrepresentation_of—link(1ink:kinematic—link):kinematic—link_representation;LOCALlink_rep_rel:BAGOFkinmatic—link_representation_relation;END—LOCAL;linkrep—tel:=USEDIN(1ink,’KINEMATIC—STRUCTURE—SCHEMA.’十’KINEMTIC—LINK-REPRESENTATION一血LATION.’+’TOPOLOGICAL—ASPECTS’);IF(SIZEOF(1inkrep—tel)=0)THENRETURN(?);ELSERETURN(1ink——rep,—rel[1].geometric——aspects)END—IF;END—FUNCTION;(*66 GB/T16656.105--2010/[5010303—105:1996参数定义:link:需要返回kinmatic_link_representation的kinmatic—link。5.5.3suitably—based_mechanismsuitably_basedmechanism函数用来检测mechanism的base是否与kinmatic—ground—represen—tation的相关环境有联系,其中kinmatic—ground—representation与mechanism的containing—property有联系。如果由mbp标识的mechanism—base_placement将mech的base与相应的相关环境通过非循环的方式直接或间接联系起来,那么这个函数返回TRUE。否则返回FAI。sE。函数的类型为BOOLEAN.EXPRESS描述x-)FUNCTIONsuitably_based_mechanism(mbp:mechanism_base—placement;mech:mechanism):BOOLEAN;LOCALkprop:kinematic—propertydefinition;kgrep:kinematic—ground_representation;klrep:kinematic—linkrepresentation;klnk:kinematic—link;kjnts:BAGOFkinematic—joint;nrⅡechs:BAGOFmechanism;nmbDs:BAGOFmechanism_base—placement;ENDLOCAL:kprop:。mechcontaining—propertyIF("KINEMATIC_STRUCTURE—SCHEMAKINEMATIC_GROUND_REPRESENTATION’INTYPEOF(mbp\representation_relationshiprpe一1))THENkgrep:=mbp\representation_relationshiprpe一1;IF(kgrepproperty\propertydefinition_representationdefinition:=:kprop)THENRETURN(TRUE);ELSERETURN(FALSE);END_IF;ELSEklrep:=mbp\representation—relationship.rep_l;klnk:=klreplink_representation—relation.topological—axpects;kjnts:=USEDIN(klnk,’KINEMATIc.STRUCTURE—SCHEMAKINEMATIc-JOINT.FIRST-LINK’)+USEDIN(kink,’KINEMATICSTRUCTURE—SCHEMA.KINEMATIC-JOINTSECOND_LINE’);nmechs:=usEDIN(kjntsLlj.structure,’KINEMATIc_STRUCTURESCHEMAMECHANISMSTRUCTURE—DEFINITION’)67 GB/T16656.105—2010/[SO10303-105:1996IF(nmechs[1]:=:mech)THENRETURN(FALSE);ELSEIF(nmechs[1].containing—property:<>:kprop)THENRETURE(FALSE);ELSEnmbps:=USECIN(nmechs[1],‘NINEMATIC_STRUCTUHE_SCHEMA.’+‘MECHANISM_BASE_PLACEMENTBASE—OF—MECHANISM’)IF(SIZEOF(nmbps)=0)THENRETURN(FALSE);ELSERETURN(suitably_basedmechanism(nmbps[1],mech));ENDIF;END-IF;ENDIF;END—IF;END—FUNCTION;(*属性定义:mbp:定义mech的base定位的mechanism—base_placement。mech:即mechanism,其base放置于mbp上。5.5.4uniquejink—usageunique_link_usage这个函数检测link是否只属于~个mechanism。如果所有使用link作为它们的first—link或second—link的kinematic—joint在同一kinematic—structure的joints中,且这个kinematic—structure只作为一个mechanism的structure_definition,那么函数返回TRUE。反之,返回FAI,SE。函数的类型为BOOLEAN。EXPRESS描述:*)FUNCTIONunique—iink_usage(iink:kinematic—link):BOOLEAN;LOCALmechs:SETOFmechanism;Joints:SETOFkinematic—joints;struct:kinematic—structure;END—LOCAL;68Joints:=bagto_set(USEDIN(1ink,’kINEMATIC—STRUCTURE_SCHEMA.KINEMATIC—JOINTFIRST—LINK’)+USEDIN(1ink,’KINEMATIC_STRUCTURE_SCHEMA.KINEMATIcJOINT.SECOND_LINK’))struct:=Joints[1]structure;REPEATIt=2TOSIZEOF(joints) IF(joints[i]structure:<):struct)THENRETURN(FALSE);END-IF;END_REHEAT;GB/T16656.105—2010/[so10303—105:1996mechs:=bag—to—set(USEDIN(struct,’KINEMATIC_STRUCTURE_SCHEMA.MECHANISMSTRUCTURE—DEFINITION’))IF(SIzEOF(mechs)(>i)THENRETURN(FALSE):END_IF;RETURN(TRUE)END—FUNCTION;(*参数定义:link:被函数检测的kinematic—link。5.5.5coordinated_pair_link—representationcoordinated—pair—link—representation函数用来检测kinematic_pair的定义是否与由link标识的特定kinematic—link的现有kinematic_link_representation保持一致。如果link与kinematic—link—repre—sentatien相关联,且pair—placement在kinematic—link—reoresentation的item组中,该函数返回TRUE。反之返回FALSE。函数的类型为BOOI,EAN。EXPREsS描述:*)FUNCTIONcoordinatecLpair_link_representation(1ink:kinematic—link;pair_placement:tigid—placement):BOOLEAN;LOCALlink_reD:kinematic—link—representation;ENDLOCAL;link—rep:=representation_of—link(1ink)IF(1ink—rep=?)THENRETURN(FALSE);ELSEIFNOT(pair—piacementINlink_rep\representaitonitems)THENRETURN(FALSE);ELSERETURN(TRUE);END_IF;END-IF;ENDFUNCTION;69 GB/T16656.105—2010nso10303-105:1996参数定义link:kinematic—link,它的表示与使用pair_placement的副定义相一致。pair—placement:在kinematic—pair中作为pair—placement—in—first—link—context一或pair—placement—in—second—linkcontext使用的rigid—placement.5.5.6frame_associated_to_backgroundframe—associated—to—background函数检测由background标识的kinematic—frame—background是否在kinematic_frame—background—representation的items组中。frame—associated—to—background也检测kinematic—frame_background—representation是否与kinematiclinkrepresentaition有联系,其中这个kinrmatic—link-representation在items组含有用frame标识的rigid—placement.这个关系是用ki—nematic—frame—background—representaion—association来表达的,它的transformation—operator用frame作为transformer_frame.如果frame和background符合这些条件,函数返回TRUE。否则返回FALSE。函数的类型为BOOLEAN。EXPRESS描述:*)FUNCTIONframe——associated——to——background(frame:rigid_placement;background:kinematic—frame_background):BOOLEAN;LOCALrep—bag:BAGOFkinematic—frame_background—representatio“;trf—bag:BAGOFkinematic—frame—based—transformation;trm_bag:BAGOFkinematic—frame—based—transformation;ass—bag:BAGOFkinematic—frame—background_representation_association;rep:kinematic_frame_background-representation;ass:kinematic—frame—backgroun吐representationassociation;END—LOCAL;repbag:=QUERY(bg(*USEDIN(background,’KINEMATIC—STRUCTURE~SCHEMA’+’REPRESENTATION.ITEMS’)1’KINEMATIC—STRUCTURE~SCHEMA’+’KINEMATIc—FRAME—BACKGROUH—REPRESENTATION’INTYPEOF(bg)):IFSIZEOF(rep_bag)=0THENRETURN(FALSE);END—IF;trf—bag:=USEDIN(frame,’KINEMATIcSTRUCTURE—SCHEMA.’+’KINEMATIC—FRAME—BASED_TRANSFORMATION.’+’TRANSFORMATOR’);IFSIZEOF(trf—bag)=0THENRETURN(FALSE);70 ENDIFREPEATi:=iTOHIINDEX(rep—bag)rep:=rep—bag[i];GB/T16656.105—2010/ISO10303—105:1996ass—bag:;QuERY(kfbra<*USEDINrep,’KINEMATICSTRUCTURESCHEMA’+’REPRESENTATl0N_RELATIONSHIPREe_2’)’KINEMATItSTRUCTURE—SCHEMA’+’KINEMATIC-FRAME-BACKGROUND-REPRESENTAION—ASSOCIATION’INTYTEOF(kfbra));工FSIZEOF(ass—bag)>0THENREPEATJ:=1TOHINDEX(ass_bag);ass:。aSSbag[j]trm_bag:=QUERY(trm<:*trf—bag(trm:=:ass\representation—relationshlp_withtransfomationtransformation_operator));IFSIZEOF(trm_bag))0THENRETURN(TRUE);IF:REPEATIF:REPEAT:RETURN(FALSE)FUNCTl0N参数定义:frame:是rigid—placement,函数检测它在kinematic—link—representation(它的items组包含flame)和kinematic_frame—background—representation(它的items组中包含background)的关系中作为transformer_frame的作用。background:是kinematic—frame—background,函数检测它是否在kinematic—frame—background—representation的items组中,其中kinematic—framebackground—representation与frame(作为transformer_frame)的kinematic—link—representation相关联。5.5.7planeangle_for_pair_in_radianplane—angle—for—pair_in—radian函数将指定的angle转换成以弧度为单位的等价的plane—angle—measure。转换因子根据global—unit—assigned—context的unit组中的plane—angle—unit推出,其中7] GB/716656.105—2010/ISO10303-105:1996global—unit—assigned—context是pair的joint的first—link中的context—of_items。函数类型为plane—angle—measure。如果找到了合适的单位,该函数返回转换后的plane—angle—measure;否则返回不确定值(?)。EXPRESS描述:*)FUNCTIONplane——angle+.for——pair——in_radian(pair:kinematic—pair;angle:plane—angle—measure):plane—angle—measure;LOCA【lconverted—angle:plane—angle_measure:=angle;link_rep:kinematic—link—representation:=representa七ion—of—link(pair.Jointfirst—link);link_entxt:representation—context;pa_units:SETOFunit:2LJ;pau:unit;ENDLOCAL:link_cntxt:=link—rep\representationcontext—of—itemsIFNOT(’MEASURE—SCHEMAGLOBAL_UNIT_ASSIGNED_CONTEXT’INTYPEOF(1ink—cntxt))THENRETURN(?);ENDIF;72pa_units:=QUERY(unit<*link—cntxt\global—unit—assigned-context.units’MEASURE_SCHEMA.PLANE_ANGLE_UNIT’INTYPEOF(unit)):IFSIZEOF(pa—units)<)1THENRETURN(?);END-IF;pau:=pa—units[1]IF(NOT(’MEASURE_SCHEMA.SI—UNIT’INTYPEOF(pau))ANDNOT(’MEASURE_SCHEMA.CONVERSION-BASED_UNIT’INTYPEOF(pau)))THENRETURN(?);END_IF;REPEATWHILE(‘MEASURE—SCHEMACONVERSION—BASED_UNIT’INTYPEOF(pau));converted-angle:2converted—angle*pau\conversion_based——unitconversionfactor.value—component;pau:=pau\conversion_based—unit.conversion_factofr.unit—componentIF((NOT(’MEASURE_SCHEMA.SI—UNIT’INTYPEOF(pau))AND GB/T16656.105—2010flsoi0303-105:1996NOT(’MEASURE—SCHEMACONVERSION—BASED_UNIT’INTYPEOF(pau)))OR(NOT(’MEASURE—SCHEMA.PLANE—ANGLE_UNIT’INTYPEOF(pau))))THENRETUaN(?);END—IF;ENDREPEAT:IF(pau\si—unitname()si—unit~nD2TIe.radian)THENRETURN(?);END_IF;CASEpau\si——unit.prefixOFsi—prefixexa:RETURN(I.E18+converted—angle)Sl—prefix.peta:RETURN(1.E15*converted—angle)Sl。一prefixtera:RETURN(1.E12*converted-angle)sl’一prefixgiga:RETURN(1E9*converted—angle);Sl~prefix.mega:RETURN(1E6*convertedangle):si—prefix.kilo:RETURN(1.E3*convertedangle):si—prefixhecto:RETURN(1.E2+convertedangle);Sl’一prefix.deca:RETURN(1E1*convertedangle);s1。一prefix.deci:RETURN(i.E-1*converted_angle);sl。一prefixcenti:RETURN(1.E_2+convertecLangle);Sl’一prefix.milli:RETURN(1E-3*converted_angle);sl‘一prefixmicro:RETURN(i.E-6*converted_angle);si—prefixnano:RETURN(i.B9*converted—angle);si—prefix.pieo:RETURN(1.E-12*converted_angle)si—prefix.femto:RETURN(1.E-15*converted_angle)s1。一prefix.atto:RETURN(i.E-18*converted—angle)OTHERWISE:RETURN(converted_angle);ENDCASE:ENDFUNCTION参数定义:pair:kinematic—pair,用它的pairplacement_in_first—link_context的相关环境来计算转换因子。angle:转化成用弧度表示的角。5.5.8convert_planeanglefor_pairfromjadianconvert—plane—angle—for—pair—from—radian函数将由angle—expr定义的单位是弧度的角度表达式转换到一个等价的plane—angle_measure,它的单位由相应的相关环境给出。转换因子根据global~unit—assigned—context的unit组中的plane—angle—unit推出,其中global—unit—assigned—context是pair的joint的first—link中的context—oLitems。函数的类型是plane—angle—measure。如果找到了合适的单位,该函数返回转换后的plane_anglemeasure;反之,返回不确定值(?)。EXPRESS描述:*173 GB/T16656.105—2010/ISO10303-105:1996FUNCTIONconvert—..plane..angle..for_pair..from——radian(pair:kinematic一.pair;angle—expr:REAL):plane—angle_measure;74IJocAL1inkrep1inkcntxtconyfactorresultEND_LOCAL;kinematic—linkrepresentation=representation_of.一link(pairjointfirst—link)representationcontext;SETOFunit:=[];unit2REAL:=1.0;plane_angle_measure;linkcntxt:=link_rep\representationcontext—of—itemsIFNOT(’MEASURE—SCHEMACLOBAL—UNIT—ASSIGNED-CONTEXT’INTYPEOF(1ink_cntxt))THENRETURN(?)END_IFpa—units:=QUERY(unit<*link_cntxt\global—unit—assignecLcontextunits’MEASU][{E~SCHEMA.PLANE—ANGLE—UNIT’INTYPEOF(unit));IFSIZEOF(paunits)(>1THENRETURN(?);ENDIF:pau:=pa_units[1]IF(NOT(’MEASURE_SCHEMASI—UNIT’INTYPEOF(pau))ANDNOT(’MEASURE—SCHEMACONVERSION—BASED_UNIT’INTYPEOF(pau:}))THENRETURN(?);ENDIF:REPEATWHILE(‘MEASURE—SCHEMA.CONVERSIOnBASED-UNIT’INTYPEOF(pau))conv_factor:=cony—factor*pau\conversion_basecLunitconversionfactor.value—component;pau:=pau\conversion_based—unit.conversion_factorunit—componentIF((NOT(’MEASURE_SCHEMA.SI—UNIT’INTYPEOF(pau))ANDNOT(,MEASURE—SCHEMA.CONVERSION—BASED_UNIT’INTYPEOF(pau)))OR(NOT(,MEASURE—SCHEMA.PLANE_ANGLE_UNIT’INTYPEOF(pau))))THENRETURN(7);EN]D-IF; ENDREPEATIF(pau\si—unit“ame<)si一““itnam8-‘8dian)THENRETURN(?);END—IF;GB/T16656.105—2010/mo10303-105:1996CASEpau\si——unitprefixOFsi—prefixexa:cony—factor:21.E18*conv_factor;Sl。一prefixpeta:cony~factor:21.E15*cony—factor;Sl’一prefix.tera:conv—factor:21E12。conv_factor;Sl—prefixgiga:conv_factor:21E9*cony—factor;sl—prefixmega:cony_factor:21.E6。cony—factor;Si—prefixkilo:cony_factor:2lE3*conv—factor;Sl’一prefix.hecto:cony_factor:2lE2*cony—factor;Sl—prefixdeca:conv_factor:2lE1*cony—factor;Sl—prefix.deci:cony—factor:21.E一1*cony—factor;st。一prefixcenti:conv—factor:=1E一2*cony_factor;sl’一prefixmilli:conv—factor:=1.E3+conv_factor;Sl—prefixmicro:conv_factor:21E一6*conv_factor;stprefix.nano:contfa=ctor:2iE一9*con旺£actor;si—prefix.pico:cony_factor:=1.E12*cony_factorS1一prefixfemto:conv_factor:2lE一15+conv_factorSl。一prefix.atto:conv—factor:=1.E一18*conyfactorCASE:result:=angle—expr/conv—factorRETURN(result);END-FUNCTION;(*参数定义:pair:kinematic—pair,用它的pair—pacement_in—first—link—context的相关环境来计算转换因子。angle—expr:以弧度为单位的角度表达式,它将被转化为pair的相关环境所要求单位的角度。5.5.9convert_spatial_to_ypr_rotationconvert—spatial—to—ypr—rotation函数将给定的rotation(ypr—rotation或rotation—about—direction)转化为等价的ypr_rotation表达方法。ypr~rotation的yaw、pitch和roll角度的单位从global—unit—assigned—conteXt的units组中的pane—an91e—unit中推出,其中global—unit—assgned—context是指定pair的ioint的first—link中的context—of—items。这个推导过程是通过调用plane—angle—for—pair—in—radian函数来实现的。如果rotation已经是ypr—rotation类型,那么它就被立即返回。否则,convert—spatial—to—ypr—rota—tion或者返回一个等价于rotation—about—direction(作为参数rotation)的ypr—rotation,或由于找不到单位,而返回不确定值(?)。函数类型为ypr—rotation。EXPRESS描述:*)75 GB/T16656.105—2010nso10303-105:1996FUNCTIONconvertspatial—to—ypr—rotation(pair:kinematic—pair;rotation:spatial—rotation):ypr_rotation;LOCALcony_angle:ya,Pa,ra:ucr:dx,dy々dz:S—a,C—a:rotmat!s_y,c—yENDLOCAL:direction;plane——angle——measureREAL;AERAY[I:3]OF-...rotationangleinapplication--—-specificunits··--rotationangleinradians一一yaw,pitch,androllangle..—.unitconversionfactor—componentsofdirectionvectorNSineandcosineofrotationangleARRAY[I:3]OFREAL;--rotationmatrixREAL;--Ifrotationisalreadyaypr—rotation,returnitimmediatelyIrKINEMATIC—STRUCTURE_SCHEMA.YPR-ROTATION’INTYPEOF(rotation)THENRETURN(rotation);END—IF;rotationisarotationaboutdirectionaxis:=normalize(rotation\rotation_about—direction.direction_of—axis)angle:=rotation\rotation_about—directionrotation_angle;--azerorotationisconvertedtriviallyIF(angle=00)THENRETURN([o0,0.0,0.o]);END_IF;dx:=axisdirection_ratios[1Jdy:=axis.direction_ratios[2]dz:=axis.direction_ratios[3]--provideanglemeasuredinradianconv_angle:=plane—angle_for—pair_in—radian(pair,angle)IF(cony_angle=7)THENRETURN(?);76 ENDIFucf:=angle/conv_angles_a:=SIN(conv—angle);e_a:=COS(cony_angle);--axisparalleleithertox—axisortoz—axis?IF(dy=0.O)AND(dx*dz=0.0)THENREPEATWHILE(cony—angle(=一PI);conv_anqle:=con_angle+2.0*PI;END—REPEAT;REPEATWHILE(cony—angle>P1);cony_angle:=con_angle一2.0*PI;END_REPEAT;ya:=ucf*cony_angle;IF(cony—angle()PI)THENra:2一ya;ELSEra:2ya;END—IF}GB/T16656.105—2010/ISO10303-105:1996IF(dx<>00)THEN—axisparalleltox-axis—usex-axisasrollaxisIF(凼【)0.0)THENRETURN([oo,00,ya]);ELSERETURN([o.0,0.0,ra]);END_IF;ELSE—axisparalleltoz-axis—usez-axisasrollaxisIF(dz>0.O)THENRETURN([ya,0.0,0.03);ELSERETURN(Ira,0.0,0.03);END-IF;END_IF;一axisparalleltoyaxisIF((dy()0.0.)AND(dx=IF(c—a>=0.0)THENya:=0.0;一useY——axisaspitchaxis0.O)AND(dz=0.0))THEN77 GB/T76656.05--2010/ISO10303—105:199678re:=0.0;ELSEya:=ucf*PIra:2ya;ENDIF:pa:2ucf*ATAN(Sa,ABS(c—a))IF(dy(0.0)THENpa:。一pa:EN吐IF;RETURN([ya,pa,ra])ENDIF:。-—-axisnotparalleltoanyaxisofcoordinatesystem一-computerotationmatrixcml:=10一c_a;rotmat:=EEdx*dx*cml+Ca.dx*dy*cml—dz*sTa.dx*dz*cml+dy。s—a][dx*dy*cml+dz*s_a,dy+dy+cml+c_a.dy“dz*cml—dx*s—a][dx*dz*cml—dy”s_a.dy。dz*cml+dx*s_a.dz*dz*cml+c—a]];--rotmat[1][3]equalsSIN(pitch_angle)IF(ABS(rotmat[1][3])=1o)THEN—jpa=PI/2BEGINIF(rotmat[1][3]=1o)THENpa:=0.5*PI:ELSEpa:=一05*PI:ENDIF.一Inthiscase,onlythesumordifferenceofrollandyawangles--isrelevantandcanbeevaluatedfromthematrix—AccordingtoIP’rectangularpitchangle’forypr—rotation,--therollangleissettozero. ra:=00;ya:=ATAN(rotmat[2][1],rotmat[2][2])GB/T16656.105—2010/IS010303-105:1996resultofATANisintherange[一PI/2,PI/2]HereallfourquadrantsareneededIF(rotmat[2][2](0.o)THENIFya(=00THENya:=ya+PI;ELSEya:=ya—PI;END_IF;END;ELSE--COS(pitch_angle)notequaltozeroBEGINya:=ATAN(一rotmat[1][2],r。tmat[1][1])IF(rotmat[1][1]<0.o)THENIF(ya(=0.0)THENya:=ya+PI;ELSEya:=ya—PI;END-IF;END_IF;=ATAN(一rotmat[2][3],rotmat[3][3])IF(rotmat[3】[3](0.o)THENIF(ra(=00)THENra:=ra+PI;ELSEra:=ra—PI;END_IF;END—IF;Sy:;SINC—y:=COSS—r:=SINc:=_rCOSya);ra);IF((ABS(s_y)>ABS(c—y))AND79 GB/T16656.105—2010/IS010303-105:1996(ABS(s_y))ABS(s—r))AND(ABS(s_y))ABS(c—r)))THENcml:=一rotmat[1][2]/s—y;ELSEIF((ABS(c—Y))ABS(s_r))AND(ABS(c—y)>ABS(c—r)))THENcml:=rotmat[1][1]/c—y;ELSEIF(ABS(s—r))ABS(c—r))THENcml:=一rotmat[2][3]/S—r;ELSEcml:=rotmat[3][3]/c—r;END—IF;END.IF;pa:=ATAN(rotmat[1][3],cml)END:ENDIFya:2pa:2ra:=ucfRETURN([ya,pa,ra])END-FUNCTION;(*参数定义:pair:kinematic—pair,根据plane—angle_unit来计算它的pair—placement—in_first—link—context的相关环境。rotation:用函数进行转化的spatial—rotation。5.5.10assign_directedjinkassign—directed—link函数检测kinematic—joint的orientation。如果orientation为TRUE,函数返回joint.first—link,否则返回joint.second_link。函数的类型为kinematic_link。EXPRESS描述:*)FUNCTIONassign_directed—link(joint:kinematic—joint;orientation:BOOLEAN):kinematic—link;IF(orientation)THENRETURN(joint.first—link);ELSERETURN(joint.second_link);END—IF;80*霉l墨_n GB/T16656.105—2010/iso10303-105:1996END_FUNCTION;(*参数定义:joint:kinematic_joint,根据它来确定kinematic—link。orientation:指示穿过连接方向的布尔值。5.5.11connected—insimple_loopconnected—in—simple—loop函数检验两个给定的joint—logical—relationship是否涉及同一个环,以及与它们相关的oriented—joint的orientation是否一致。如果relation-1和relation一2符合这些条件,函数返回TRUE,否则返回FAI。SE。函数的类型为BOOI。EAN。EXPRESS描述:*)FUNCTIONconnected—in_simple_loop(relation_l:joint—logical—relationship;relation_2:joint—logical—relationship):BOOLEAN;LOCALnext—jlr—in_loop—set:SET11:?]OFjoint—logical—relationship;END—LOCAL;IF((relation_1.100p:<):relation_2.100p)OR(relation_l:=:relation_Z))THENRETURN(FALSE);ELSEIF(relation一2.next-joint—logical—structure:=:relation2.previous——joint——logical。.structure)THENRETURN(TRUE);ELSEnext—jlr~in_loopset:=0UERy(relation(*bag_toset(USEDIN(relation一1.next—joint—logical—structure,’KINEMATIC—STRUCTURESCHEMA.JOINT_LOGICAILRELATIONSHIP.’+’PREVIOUS-JOINT—LOGICAL_STRUCTURE’))relation.100p:=:re/atlon_1.100p);IF(SIZEOF(next—Jir—in_loop—set)()1)THENRETURN(FALSE);ELSERETURN(connected_in_simple_loop(next_jlr_inloop_set[1],relation_2));ENDIF;END_IF;END_FUNCTION;(*参数定义:relation-1:joint—logical—structure—relationship,它被检测是否与relation2相连。 GB/T16656.105—2010nso10303-105:1996relation一2:第二个joint—logical—structurerelationship,它被检测是否与relation_l相连。*)ENDSCHEMA:——endkinematicstructureschema(*6运动学的运动表达下面的EXPRESS声明是kinematic—motion—representation—schema的开始,并且在其中对必要的外部引用作了说明。EXPRESS描述:*)SCHEMAkinematic—motion_representation—schema;REFERENCEFROMgeometryschema(cartesian_point,curve):REFERENCEFROMmeasure—schema(1engtkmeasure,measure—with—unit,parameter—value,plane—angle—measure);REFERENCEFROMrepresentation_schema(functionally_defined—transformationrepresentation_item);REFERENCEFROMkinematic——structure——schema(rotation_about—direction,spatial—rotation,ypr—rotatlon);f+注1:上面引用的模式可以在GB/T16656的以下部分找到:kinematic_structure_schemal6656本部分的第5章geometry_schema16656.42measure—schema1665641representatlon—schema16656.43注2:这个schema的图形表达见附录1),其图形表达使用了EXPRESSG符号。6.1引言kinematic—motion—representation—schema的目标是描述运动。它对组成运动模型的运动的不同路径进行了明确的说明。6.2基本概念和假设在GB/T16656的本部分,用参数t来表示所定义的运动。t是运动进行过程中的非递减参数。由于运动模型中的所有运动的实际状态都由这个作为kinematic—control和kinematic—result属性的唯一82 GB/T16656.105—2010/ISO10303—105:1996参数t来控制,因此可能要求一些运动保持同步。6.3运动学的运动表示模式(kinematic—motion—representation—schema)类型定义:运动参数测量(motion_parameter_measure)motion—parameter—measure是一种用来区分一个运动过程中的不同姿态的方法。运动参数可以被定义为有单位,也可以是无单位的。EXPRESS描述:*、TYPEmotion_parameter—measure=SELECT(parameter—value,measure—with_unit);END—TYPE;(*6.4运动学的运动表示模式(kinematic_motion—representation_schema)实体定义6.4.1translationtranslation定义了一个笛卡尔坐标空间R3中的位移。EXPRESS描述:*)ENTITYtranslation;。:length_measure;y:length_measure;Z:length_measure;END_ENTITY;(*属性定义:z:z方向的位移。Y:Y方向的位移。z:z方向的位移。6.4.2transformtrans{orm定义了一个坐标系沿一条包括旋转和translation的路径的线性变换。首先进行旋转,然后再平移。EXPRESS描述:*)ENTITYtransformSUBTYPEOF(functionally_defined_transformation);rotation_component:spatial—rotation;translation—component:translation;END—ENTITY;(*属性定义:rotation—component:trans{orm的旋转部分。translation—component:trans{orm的平移部分。6.4.3path_nodepath—node描述了路径定义中的一个组成部分。它由一个线性变换和与它相关的运动参数组成。83 GB/T16656.105—2010/[so10303-105:1996EXPRESS描述:*1ENTITYpath-node;control—transform:transform;t—parameter:motion_parameter—measure;END_ENTITY;f*属性定义:control—transformation:一个线性变换,它定义了一条路径上的一个局部坐标系。t_parameter:与控制变换相对应的一条路径的参数t。6.4.4kinematic_pathkinematic—path描述运动的一条路径或路径的一部分。EXPRESS描述:*)ENTITYkinematic—pathSUPERTYPEOF(ONEOF(path_element,composite_path))SUBTYPEOF(representation_item);END—ENTITY;(*6.4.5path_element_connectionpath—element—connection是两个相邻path-element的连接。前一个path—element结束时的参数t的值与下一个path—element开始时的t值相同。EXPRESS描述:*、ENTITYpath_element—connection;previous—element:path_element;next—element:path-element}WHEREWRI:previous—element.node_to=next—element.node_from;WR2:compare—unit—components(previous—element.node—to.t_parameter,next—element.node_fromt_paraemter);END_ENTITY;(*属性定义:previous—element:两个path—element序列的第一个元素。second—element:两个path—element序列的第二个元素。形式限制:WRl:前一个path—element终点处的path—node应该与后一个path—element起始处的path—node相同。WR2:两个path—element的参数值的unit—component应该相同。6.4.6composite_pathcomposite—path是将path—element头尾相接而组成的。composite—path有自己的t参数范围;要对path—element重新进行参数化,使它们各自的t参数范围长度之和与composite—path的t参数范围84 GB/T16656.105—20IO/ISO10303—105:1996长度相同,且它们各自的参数范围长度之间的比值保持不变。EXPRESS描述:*)EhⅡITYcomposite_pathSUBTYPEOF(kinematic—path);elements:SET[I:?]OFpath_element—connection;t—start:motion_parameter—measure;t—end:motion_parameter_measure;WHEREWRI:increasing—measure_value(t—start,t—end);WR2:compare—unit—components(t—start,t—end);WR3:connected_in_simple—path(elements);ENDENTITY;(*属性定义:elements:path—element—connection,定义了path—element以及它们的顺序和连接性。t—start:composite—path起始处的参数值。t—end:composite—path终止处的参数值。形式限制:WRl:所有的参数只能增加。WR2:composite_path起始和终止处的参数值的unit_component必须相同。WR3:不论是直接通过一个单独的path—element—connection还是间接通过一系列的path—element—connection,composite—path中的每一个path—element必须与composite—path中的所有其他的path—element相连通,这样就使得path—element形成了一条没有缺口或分枝的单一连续开链。这一点通过connected_in—simple—path函数来检测。6.4.7path_elementpath—element是一种kinematic—path,它用来描述点到点、线状、圆或是一般曲线类型的运动。EXPRESS描述:*、ENTITYpath_elementSUPERTYPEOF(ONEOF(point—to_point—path,circular—path,linear_path,curve—basedpath));SUBTYPEOF(kinematic—path);node—from:path-node;node—to:path-node;WHEREWRI:compare_unit—components(node—from.t—parameter,node_tot~parameter);WR2:increasing_measure_value(node_from.t_parameter,node_to.t_parameter);END_ENTITY;85 GB/T16656.105—20lO/iSO10303—105:1996f*属性定义:node—from:path—element开始处的坐标系。node—to:path—element终止处的坐标系。形式限制:WRl:两个path—node的参数值的unit—component应该相同。WR2:从path—element的开始到终止点,参数t应该是增加的。6.4.8point_topoint_pathpoint—to—point—path定义了被穿过的坐标系。它不规定插补。注:插补留给使用这些数据的软件。EXPRESS描述:*)ENTITYpoint——to_point——pathSUBTYPEOF(pathelement);END_ENTITY;(*6.4.9circularpathcircul”一path描述了一个完整的kinematic—path中的一段,使得对kinematic—link的坐标系原点的运动中的平移部分进行插补后,会产生一个圆。定向插补与平移插补是同步进行的。EXPRESS描述;*)ENTITYcircular_pathSUBTYPEOF(pathelement);viapoint:cartesian_point;WHEREWRI:SELF\path_elementnode—tocontrol—transform.tramslation—component<)SELF\path_element.node—from.control—transformtranslation_component;WR2:non—coincident—coordinates(via_point,SELF\path_element.node—from.control—transform.translation_component)ANDnon_coincident—coordinates(viapoint,SELF\pathelementnode—tocontrol—transformtranslation_component);END—ENTITY;(*属性定义:via—point:circular_path通过的一个中问点。形式限制:WRI:circular—path的终止点不能和它的起始点重合。WR2:circulaT—path的via—point既不能和它的起始点重合,也不能和它的终止点重合。6.4.10linearpathlinear_path是一个连接有界线性路径元素的圆弧,它是在path—element的起始点和终止点用path—node的两个transform来定义的。在path—node中给出的运动参数值之间的transform是通过对[inear_path的node—from和node—to中指定的transform之间进行线性插补得到。86 GB/T16656.105—2010/ISO10303-105:1996EXPRESS描述:*)ENTITYlinear—pathSUBTYPEOF(path_element);END—ENTITY;(*6.4.11curve_based_pathcurve—based—path描述了一个完整的kinematic—path中的一段,使得当对kinematic—link的坐标系原点的运动中的平移部分进行插补后,会产生一条曲线。定向插补与平移插补是同步进行的。EXPRESS描述:*)ENTITYcurve—basedpathSUBTYPEOF(path_element);path_curve—curve;WHEREWRI:SELF\path_一element.nodetocontrol—transformtranslationcomponent()SELF\pathelement.node—fromcontrol—transformtranslation_component;END_ENTITY;(*属性定义:path—curve:这条曲线定义了由curve—based一.path连接起来的path—nodes之间的平移插补。形式限制:WRl:curvebase4一path的终止点不应该与它的起始点重合。非形式限制:startpointoncurve:curve—based—dI)ath的起始点应该处于被引用为path—curve的曲线上。end【,ointonCUrye:curve_based一_path的终止点应该处于被引用为path—curve的曲线上。6.5运动学的运动表示模式(kinematic_motionrepresentation_sehema)函数定义6.5.1connecteOin_simpJe_pathconn“."ted-in一!dmpme_一path函数检测composite—path是否简单地连接。如果connections(连接)用这样的方式连接路径的所有path—dement,使得它们形成一个没有缺口也没有分枝的连续开链(也就是非环),那么函数返回TRUE,否则,返回FAI,sE。该函数的类型是BOOLEAN。EXPRESS描述:*)FUNCTIONconnectedin+simple一.path(connections:SETOFpathelement—connection):BOOLEAN;LOCALconnection_set:SET[o:?]oFpath_elemen<一connection;nec0:INTEGER;pec0:INTEGER;necbranch:INTEGER;pecbranch:INTEGER;ENDLOCAL; GB/T16656.105—2010/ISO10303—105:1996IFSIZEOF(connections))1THENconnection_set:=QUERY(pecl(*connectionsSIZEOF(QUEEY(pec2(*connections—peclpecl.next—element:=:pec2previous—element))=0)nec0:=SIZEOF(connection_set);connection_set:=QUERY(pecl(*connections【SIZEOF(QUERY(pec2(*connections—pecl}pec2next—element:=:pecl.previous—element))=0)pecO:=SIZEOF(connection_set);connection_set:=QUERY(pecl(*connectionsSIZEOF(QUERY(pec2‘*connections—peclpeclnext—element:=:pec2.previous—element)))1)necbranch:=SIZEOF(connection_set);connection_set:;QUERY(pecl(*connections}SIZEOF(QUERY(pec2(*connections—peclpec2.next—element:=:pecl.previous—element))>1)pecbranch:=SIZEOF(conneetion—set);IF((nec0(>1)OR(pecO()1)0R(necbranch)0)OR(pecbranch)0))THENRETURN(EALSE);ELSERETURN(TRUE);ENDIF;ELSERETURN(TRUE);END—IF;END-FUNCTION;(*参数定义:connections:一组要检测的path—clement—connection。6.5.2compare_unit_componentscompare_unit—components函数检查motion—parameter~measure类型的两个给定路径参数的单位。如果单位相同,函数返回TRUE。如果单位不同,返回FALSE。函数的类型为BOOLEAN。EXPRESS描述:*)FUNCTIONcompare_unit—components(parml:motionparameter_measure;parm2:motionparameter—measure):BOOLEAN;IF((’MEASURE_SCHEMA.PARAMETER_VALUE’INTYPEOF(parml))AND(’MEASURE—SCHEMA.PARAMETE耻VALUE’INTYPEOF(parm2)))THENRETURN(TRUE);88 GB/T16656.105—2010/[so10303-105:1996ELSEIF((’MEASURE—SCHEMA.MEASURE—WITH_UNIT’INTYPEOF(parml))AND(’MEASURE—SCHEMA.MEASURE—WITH—UNIT’INTYPEOF(parm2)))TURNIF(parml.unit_component=parm2.unit_component)THENRETURN(TRUE);ELSERETURN(FALSE);END—IF;ELSERETURN(FALSE);END—IF;EⅢ)_FUNCTION;(*参数定义:parml:第一个路径参数,检查此路径参数的单位是否与第二个路径参数相同。parm2:第二个路径参数,检查此路径参数的单位是否与第一个路径参数相同。6.5.3increasing_measurevalueincreasing_measure_value函数比较motion_parameter_measure类型的两个给定路径参数值。如果第一个参数值小于第二个参数值,函数返回TRUE,如果第二个参数值小于或等于第一个参数值,函数返回FALSE。函数的类型是BOOI,EAN。该函数假设两个参数要么都是parameter—value,要么有相同的单位。EXPRESS描述:*、FUNCTIONincreasing_measure_value(parml:motion_parameter—measure;parm2:motion_parameter—measure):BOOLEAN;IF(’MEASURE_SCHEMA.PARAMETER_VALUE’INTYPEOF(parml))TURNIF(parml(parm2)THENRETUN(TRUE);ELSERETURN(FALSE);ENDIF;ELSEIF(‘MEASURE_SCURMAMEASURE—WITH_UNIT’INTYPE0F(parml))TURNIF(parmlvalue—compoDentundefined)))>0))))=0);END—ENTITY;(*95 GB/T16656.105—2010/ISO10303-105:1996属性定义:analysed—mechanism:与分析结果相对应的mechanism。contained—kinematic—results:一组运动,称为结果。形式限制:WRl:如果在类型为resulting—path的contained—kinematic—results的集合中没有kinematic—resuhs,那么interpolated—configuration—sequence实例中的所有configuration—interpolation实例的interpolation属性都是undefined类型,其中interpolated—configuration—sequence在contained—kinematic—result集合中。7.4.9kinematicanalysis_consistencykinematic—analysis—consistency将运动分析的结果与输入联系起来。它认为结果(result)是通过将控制(contr01)作为输人来分析得到的。EXPRESS描述:*)ENTITYkinematic——analysis——consistency;control:kinematic—control;result:kinematic—analysis—result;WHEREWRI:contr01.controlled_mechanism:=:result.analysed—mechanism;END_ENTITY;f*属性定义:control:kinematic—control,作为分析的输入。result:kinematic—analysis—result,包含了分析的结果。形式限制:WRl:输入和输出数据应该与同一个mechanism相关。7.4.10resulting_pathresulting—path可以从正向分析中获得,它描述了建立在kinematic—link上的控制坐标系的连续刚体运动。所有属于这条prescribed—path的tramsform都是相对于这个控制坐标系的,这些由几何方法建立的运动就是通过这个坐标系定义的。EXPRESS描述:*)ENTITYresulting—pathSUBTYPEOF(motion_link—relationship);controlling—joints:SET[I:?]orkinematic—joint;END_ENTITY;(*属性定义:controlling_Joints:kinematic_joints,用它来获得运动的最终路径结果。非形式限制:controlling_pairrequirement:所有用来得出resulting—path的副都必须给出。*)ENDSCHEMA;一一endkinematic—analysis—control—andresult—schema(*96 GB/T16656.105—2010/ISO10303-105:1996附录A(规范性附录)实体短名表A.1提供了在GB/T16656本部分中使用的实体名短名。使用短名的要求见GB/T16656的实现方法。表A.1实体短名实体名短名ADVENT—ORIENTEI)jOINTADORJNCIRCUI,ARPATHCRCPTHCOMPOSITE—PATHCMPPTHCONFIGURATlON—DEFINITl0NCNFDFNCONFIGURATION—INTERPOLATIONCNFlNTCURVEBASEI)-PATHCRBSPTCYLINDRICAL—PAIRCYLPRCYLINDRICAL—PAIR—RANGECYPRRNCYLINDRICAI。一PAIILVAI。UECYPRVLFOUNDED-KINEMATlCPATHFNKNPTFULI。1LCONSTRAINEDPAIRFLCNPRGEAR—PAIRGRPRGEAR-PAIR_RANGEGRPRRNGEAR-PAIR—VAI。UEGRPRVLINITIALSTATEINTSTTINTERPOEATE阻CONFIGURATl0N—SEQUENCEINCNSQJOINT—LoGICAL—RELATIoNSHIPJNLGRLKINEMATIc_ANALYSIS—CONSISTENCYKNANCNKINEMATlc_ANALYSIS-RESULTKNANRSKINEMATICCONTROLKNMCNTKINEMATIC_FRAME—BACKGROUNDREPRESENTATIONKFBRKINEMATIc_FRAME—BACKGROUND-REPRESENTATION—ASSOCIATIONKFBRAKINEMATlC—FRAME—BASED—TRANSFORMATIoNKFBTKINEMATICGROUNDiREPRESENTATIONKNGRRPKINEMATIc_JOINTKNMJNTKINEMATICj。INKKNMLNKKINEMATIC——I。1NK.。REPRESENTATIONKNLNRPKINEMATIC—L1NK—REPRESENTATION—ASSOCIATIONKLRAKINEMATIC-LINK—REPRESENTATION—RELATIONKI,RR GB/T16656.105—2010/ISO10303-10511996表A.1(续)实体名短名KINEMATIC—LOOPKNMI.PKINEMATlC—NETWORK—STRUCTUREKNNTSTK1NEMATltPAIRKNMPRK1NEMATI(’lPATHKNMPTHKINEMATIC—PROPERTY—DEFlNITIONKRPRKINEMATIC~PROPERTY_REPRESENTATIONRELATl0NKRPRKINEMATIC—STRUCTUREKNMSTRK1NEMATlC_SUBSTRUCTUREKNMSBSKINEMATIC—TREE_STRUCTUREKNTRSTLINEAR—PATHLNRPTHMECHANISMMCHNSMMECHANISM—BASE-PLACEMENTMCBSPLMOTION—I。INK—RELATIONSHIPMTLNRLoRlENTED~JOINToRNJNTORlENTEDj0INT—IN—TREEO儿TPAIRACTUATORPRACTPAlR—VAI,UEPRVLPATH—E1。EMENTPTHELMPATH—ELEMENT—CoNNECTIONPTEI。CNPATHNoDEPTHNDPLANAR—CURVEJPAIRPI,CRPRPLANARCURVEPAIR—RANGEPCPRPLANAILCURVE—PAIR—RANGEPCPRPI。ANAR—PAIRPLNPRPI.ANAR—PAlR_RANGEPLPRRNPI,ANAR—PAIR—VALUEPLPRVLPOINTL()N—PI,ANAR—CURVE.PAIRPOPCPPOINT—.ON——PLANAR——CURVE——PAIR.—RANGEPoPCPRPOINtoN—PLANARCURVEPAIRVAI.UEPoPCPVPOINT一0N—SURFACE_PAIRPoSPPOINToN—SURFACE—PAIR—RANGEPOSPRPOINT-ON—SURFACE—PAIR—VAI。UEPOSPVPOINTTo-POINT—PATHPTPPPRESCRIBED二PATHPRSPTHPRISMATIC_PAIRPRSPR 表A.1(续)GB/"r16656.105—2010/Iso10303—105:1996实体名短名PRISMATlCPAIRRANGEPRPRRNPRISMATlC_PAlRVAi。UEPRPRVLRACKANI)_PINl0N—PAIRRAPPRACKAND-PINION—PAIR—RANGERAPPRRACK—ANI)_PINl0N—PAIR—VALUERAPPVRESUI。T1NG—PATHRSI。PTHREVOI,UTEPAIRRVI,PRREV()IJUTE—PAIR—RANGERVPRRNREV()I。UTEPAlR—VAI。UERVPRVI。ROI。I|ING—CURVE—PAIRRI。CRPRROLLING—CURVE—PAIR—VALUERCPVROI,LING—SURFACEPAIRRI.SRPRROI。I。ING_SURFACEPAIR—VALUERSPVROTATIoN—ABOUTDIRECTl0NRTABDRSCREW—PAlRVAI。UESCPRVI。SCREW—PAIRSCRPRSCREW—PA琅:一RANGESCPRRNSIMPLEPAIR—RANGESMPRRNSI。IDING—CURVE_PAIRSI。CRPRSLIDING——CURVE——PAIR——VALUESCPVSLIDING—SURFACE_PAIRSLSRPRSLlDINGSURFACE-PAIRVAl。UESSPVSPHERICALPAIRSPHPRSPHERICAILPAIR—RANGESPPRRNSPHERlCAI。PAtR—VALUESPPRVLSURFACE—PAlRSRFPRSURFACE—PAIR—RANGESRPRRNSUPARAMETERSSPRMTRANSF()RMTRNSFRTRANSLATl0NTRNSLTUNCoNSTRAINED二PAIRUNCPRUNCONSTRAINEDPAIR—VAL"UEUNPRVUNlVERSAI,—.PAIRUNVPRUNIVERSAI。-PAlR—RANGEUNPRRNUNIVERSAI。一PAIR-VAI。UENPRVI. GB/T16656.105—2010/ISO10303-105:1996附录B(规范性附录)信息对象注册B.1文件标识为了给在开放系统中的信息对象提供独一无二的标识,对象标识符{isostandard10303part(105)version(3)}被分配给GB/T16656的本部分。这个值的含义在GB/T16262.1中定义,在GB/T16656.1中描述。B.2模式标识B.2.1kinematic_structure_schema标识为了给在开放系统中的kinematic—structure_schema提供独一无二的标识,对象标识符{isostandard10303part(105)version(3)object(1)kinematic—structure—schema(1))被分配给kine《marie_structure_schema模式(见第5章)。这个值的含义在GB/T16262.1中定义,在GB,T16656.1中』描述。B.2.2kinematicmotionrepresentationschema标识为了给在开放系统中的kinematic—motion—representation—schema提供独一无二的标识,对象标识符{isostandard10303part(105)version(1)(objeet1)kinematic_motion—representation—schema(2))被分配给kinematic—motion—representation—schema模式(见第6章)。这个值的含义在GB/T16262.1中定义,在GB/T16656.1中描述。B.2一kinematic_analysis—control—and_result_schema标识为了给在开放系统中的kinematic—motion—representation—schema提供独一无二的标识,对象标识符0{isostandard10303part(105)version(3)object(1)0kinematic—analysis—control—and-result_schema(3))被分配给kinematic—analysis—control—and—result—schema模式(见第7章)。这个值的含义在16262.1中定义,在GB/T16656.1中描述。100 GB/T16656.105—2010/ISO10303—105:1996附录C(资料性附录)EXPRESS列表附录C提供了GB/T16656本部分规定的EXPRESS实体的名称及相应的缩写名称列表。本附录同样提供了一个GB/T16656本部分规定的完整的EXPRESS模式列表,不包括注释或说明文本。本附录采用计算机可编译的形式,并可在以下UR[。获取:Shortnames:http://www.reel.nist.gov/div826/subject/apde/snr/EXPRESS:http://WWW.mel.nist.gov/step/parts/partl05/is/tc2/若无法连接到这些网站,请联系ISO中央秘书处或直接通过电子邮件与1SOTC184/SC4秘书处联系,邮箱为:sc4see@cme.nist.gov。注:以上网址中以计算机可翻译的形式提供的信息是资料性的。GB/T16656本部分中的信息是规范性的。101 GB/T16656.105—2010/ISO10303-105:1996附录D(资料性附录)EXPRESS-G图图n1~图n9与附录c中的EXPRESS列表相对应。图中使用了ExPREss语言的EXPRESS_G图形符号。GB/T16656.11的附录D对EXPREsS-G进行了定义。注:在图D.5和图D.6中,kinematic_pair_value和simplepair_range的所有子类实际上都重新定义了它们继承的属性applies_to—pair。为了能清晰地表达,这些重新声明关系在图中被省略了。102 GB/T16656.105—2010/Iso10303—105:1996103一一喜陬0■盎匝喂v巾搬碘匝窖旧恹眦州一日昌。号s_岂暑兰js-皇日昌喾互v佰郴霉擘芋需喜}一.o匝 GB/T16656.105—2010/ISO10303—105:1996图D.2运动结构模式(kinematic_structure_schema)主要方面的图形符号(见图D.1,图D.3~图D.7)104图D.3运动结构模式(kinematic_structure_schema)主要方面的图形符号(见图D.1,图D.2,图D.4~图D.7) GB/T16656.105—2010/ISO10303-105:1996图D.4运动结构模式(kinematic_structureschema)主要方面的图形符号(见图D.1~图D.3,图D.5~图D.7)105 GB/T16656.105—2010/ISO10303—105:1996106^一(I圃00.o匝.寸.凸匝0一.白匝武v咿宓羁f匣霜阻恹眯州^∞g∞;鞋.£暑90s-岩目目∞ul粤佰辎霉蟠臀喜}岬盎圃 ^卜.盆匝0∞.白圃.一.o匝匡v咿啦嫠匝譬旧恹盹州一目g。暑,£;芑j皇,兰目g。口王v悄掣霉姆臀暮}∞.白圃 GB/T16656.105—2010/1so10303—105:1996108图D.7运动结构模式(kinematicstructure_schema)主要方面的图形符号(见图D.1~图D.6) GB/T16656.105—2010/1so10303-105:1996图D.8运动学的运动表示模式(kinematic_motion_representation_schema)主要方面的图形符号109 GB/T16656.105—2010/ISO10303—105:1996110,∞_目。皇u∞=j∞o■口目目『|o‘_=ou咿建釜匣盆旧恹哺州∞IsjBuI兰∞目∞口童一情鼙眯姆冥嘉张颦求需喜}西.盎匦 GB/T16656.105—20IO/ISO10303—105:1996附录E(资料性附录)附加信息本附录提供了一些附加信息来理解ypr—rotation的语义(见5.3.7)。yprrotation定义了绕偏转轴、俯仰轴和侧倾轴的三个旋转角度序列。在GB/T16656的本部分中,这个旋转角度序列主要应用于坐标系;例如在spherical—pair—value的情况下,它将在spherical_pair的第二个构件上的副坐标系的坐标轴方向与在第一个构件上的副坐标系的坐标轴方向联系起来。它可被应用于R3中的任何向量值。E.1ypr_rotation的矩阵表示设V为应用yprrotation的3D向量,设面为同一个向量,但它是相对于非旋转坐标系(也就是性坐标系)测量的。于是从;到五的坐标变换写成矩阵符号如下:(先进行最右面的变换)。由于偏转、俯仰和侧倾旋转分别是绕临时坐标系的z,y,z轴的旋转,很容易f。0888i““O]l01Jk—E㈣『1oT。H—10cOSY—singl10singcosy其中7是侧倾角。于是整个ypr_rotation的旋转矩阵变为:cosacosflsinacosflL”;I(sinacosY+cosasinflsinY)(cosacosYsinasinflsing)l(sinasinYcosasinflcosY)(cosasin7+sinasinflcos7)E.2EXPRESS函数compute_rotation_matrix—from—vpr_rotationsinfl1cosflsin7C08风os7J函数compute—rotation_matrix_from—ypr_rotation计算与ypr—rotation相应的旋转矩阵,其中ypr—rotation由根豁E1给出的偏转角,俯仰角,和侧倾角来确定。函数返回一个ARRAYSl:3]OFARRAY[1:3]OFREAI。。注1:这个函数作为一个例子提供给那些需要把旋转表示成为矩阵形式而不是ypr角度的应用程序。它应适用于USES(使用)或REFERENCES(引用)kinematicstructu冲一schema的模式。注2:术语“旋转矩阵”并不只在科学界使用。conlpute_rotation_matrix[rom~ypr_rotati。n的结果只对E1中的符号有效。 GB/T16656.105—2010/Bo10303—105:1996EXPRESS描述:FUNCTIONcompute——rotation——matrix——from_ypr——rotation(yaw:REAL;pitch:REAL;roll:REAL;factor:REAL):ARRAY[I:3]OFARRAY[1:3]OFREAL;LOCALy,P,r:REAL;result:ARRAY[I:3]OFARRAY[I:3]OFREAL;END—LOCAL;y:=factor”yaw;P:=factor。pitchr:=factor*roll;result:=[[cos(y)*COS(p),一SIN(y)*COS(p),SIN(p)],[SIN(y)*COS(r)+COS(y)*SIN(p)*SIN(r)·COS(y)*COS(r)一SIN(Y)*SIN(p)*SIN(r)一COS(P)*SIN(r)j,[SIN(y)*SIN(r)一cos(y)*SIN(p)*COS(r)·cos(y)*SIN(r)+SIN(y)*SIN(p)*COS(r)COS(p)*coS(r)]];RETURN(result);ENDFUNCTION:参数定义yaw:需计算的ypr—rotation的偏转角。注3:对于一个在实体e中的ypr—rotation类型的一个ypr属性,实际的yaw参数可以是e.ypr[yorindex(yprenumeration.yaw)]或是eypr[1]。pitch:需计算的ypr—rotation的俯仰角。注4:对于一个在宴体e中的yprrotation类型的numerationpitch)]或是e.ypr[2]。roll:需计算的ypr_rotation的侧倾角。注5:对于一个在实体e中的yprrotation类型的meration.roll)]或是e.ypr[3]。个ypr属性,实际的pitch参数可以是eypr[yor_index(ypre一个ypr属性,实际的roll参数可以是eypr[yprindex(ypr_enufactar:将偏转角、俯仰角和侧倾角转换为以弧度为平面角度单位的等效角度的转换因子。注6:GB/T16656.11要求SIN和COS函数的参数用弧度来表示。112 GB/T16656.105—2010/lSO10303-105:1996附录F(资料性附录)用SU一参数来代替DH一参数本附录提供的是附加信息。DH标示法的原则是将一个构件(记为k)上的目标坐标系与运动链中的前一个构件(记为k一1)上的副坐标系联系起来,其中该运动链属于将构件k与构件k1连接起来的副。目标坐标系可以是构件k上的另一个副的副坐标系,也可以是构件k上的任意其他坐标系,例如,工具中心点坐标系。四个DH一参数n。”、at“、Ok“和SkDH定义了从构件k一1上的相关副坐标系到构件k上的目标坐标系的坐标变换,它包括运动副中由两个构件共享的运动。DH一标示法的详细内容参见参考文献E23。DH参数一般仅限于在与它们的前任通过旋转副或是移动副连接起来的构件上使用。也可以想象它在圆柱副和螺旋副中使用。当使用SU一参数时,共享副的副坐标系之间的联系与运动构件的描述是分开的。副通过包含副参数的坐标变换来表示,这些副参数对于每一种副类型都是特定的,而与运动相关的构件数据则用任意选择的、固定的构件坐标系到同一构件上的多个副坐标系之间的恒定坐标转换来表示。见5.4.17。一个用DH一标示法来描述的副和构件可以很方便地用sU标示法来重新定义。得出的坐标系定义可能不能充分利用SU一标示法灵活性的优势,但它却是一个合法的定义。下面的篇章将指导如何进行这种重定义。按照DH标示法隐含的常用做法,将DH标示法的目标坐标系选为构件k的坐标系。与相关的构件k-1上的坐标系相匹配的构件k上的坐标系的SU参数可以这样得到:将没有副参数的DH一参数的转换矩阵求逆。角度用弧度来表示。在有些情况下,给出的值必须转换到角度,以符合应用程序的实际使用。旋转副:对于通过旋转副与前·个构件k一1连接的构件k,副的坐标转换与El中的偏转旋转相对应,将n替换成为日。“。正如在5.4.17中的定义,构件k上的旋转副的副坐标系的SU一参数由下列设置给出:ak—nkDH、乜k—akDH、bk一一札o“、卢k一Ⅱ、Ck一0、yk一Ⅱ。移动副:对于通过移动副与前一个构件k_1连接的构件k,副的坐标转换是沿z轴的纯平移转换,用5t”作为副参数。构件k上的移动副的副坐标系的SU一参数由下列设置给出:a。一nt“,钒一钆⋯,bk一0,风一"乱“,ck一0,7k一Ⅱ。圆柱副和螺旋副:对于通过圆柱副或螺旋副与前一个构件k一1连接的构件k,副的坐标转换由沿z轴的平移转换(副参数s。“)和偏转旋转变换(副参数巩“)组成。在圆柱副的情况下,副参数s。“和乱⋯是相互独立的,而在螺旋副中,它们中的一个函数依赖于另一个(见5.4.29)。构件k上的圆柱副或螺旋副的副坐标系的SU一参数由下列设置给出:nk—ak⋯,吼一钒“,bk一0,风一”,c。=0,7k一Ⅱ。在此作以下假设:如果两个参数札”和乱”都等于零,那么圆柱副或螺旋副上的两个副坐标系重合。 GB/T16656.105—2010/iso10303-105:1996附录NA(资料性附录)ISO10303各部分的目录ISO10303是一个由不同部分组成的标准,各部分单独出版。IsO10303将各部分分为8个系列:描述方法、集成资源、应用解释构造、应用协议、抽象测试套件、实现方法、一致性测试和应用模型。ISO103031对这些系列进行了描述。ISO10303的总标题为《工业自动化系统与集成产品数据表达与交换》,它包括以下部分:——第1部分:概述与基本原理;——第11部分:描述方法:EXPRESS语言参考手册;——第12部分:描述方法:EXPRESS—I语言参考手册;一一第14部分:描述方法:EXPRESS—X语言参考手册;——第21部分:实现方法:交换文件结构的纯正文编码;——第22部分:实现方法:标准数据访问接口规范;——第23部分:实现方法:c++语言联编的标准数据访问接口;——第24部分:实现方法:c语言联编的标准数据访问接口;——第25部分:实现方法:FORTRAN语言联编的标准数据访问接口;——第26部分:实现方法:接口定义语言联编的标准数据访问接口;——第27部分:实现方法:JAvA编程语言联编的标准数据访问接口Internet/Intranet扩展;——第28部分:实现方法:ExPRESs驱动数据的XMI。表达;——第29部分:实现方法:简化JAvA编程语言联编的标准数据访问接口Internet/Intranet扩展;——第31部分:一致性测试方法论与框架:基本概念;——第32部分:一致性测试方法论与框架:测试实验室与顾客的要求;一一第34部分:一致性测试方法论与框架:应用协议实现的抽象测试方法;——第35部分:一致性测试方法论与框架:SDAI实现韵抽象测试方法;——第41部分:集成通用资源:产品描述与支持原理;——第42部分:集成通用资源:几何与拓扑表达;——第43部分:集成通用资源:表达结构;——第44部分:集成通用资源:产品结构配置;——第45部分:集成通用资源:材料;⋯第46部分:集成通用资源:可视化显示;——第47部分:集成通用资源:形状变化公差;——第49部分:集成通用资源:工艺过程结构与特性;——一第50部分:集成通用资源:数学构造;——第101部分:集成应用资源:绘图;——第104部分:集成应用资源:有限元分析;——第105部分:集成应用资源:运动学;——第106部分:集成应用资源:建筑结构核心模型;——第107部分:集成应用资源:工程分析核心参考模型;——第108部分:集成应用资源:显式几何产品模型参数和约束;一一第201部分:应用协议:显式绘图;——第202部分:应用协议:相关绘图;114 GB/T16656.加5—2010/ISO10303-105:1996——第203部分:应用协议:配置控制设计;——第204部分:应用协议:使用边界表达的机械设计;——第205部分:应用协议:使用曲面表达的机械设计;——第207部分:应用协议:钣金模具的规划与设计;——第208部分:应用协议:生命周期管理更改过程;——第209部分:应用协议:复合材料和金属结构分析以及相关的设计;——第210部分:应用协议:印刷电路部件产品的设计数据;——第212部分:应用协议:电子技术设计和安装;——第213部分:应用协议:加工零件的数控工艺规程;——第214部分:应用协议:自动化机械设计过程的核心数据;——第215部分:应用协议:船舶布置;——第216部分:应用协议:船舶模型;——第217部分:应用协议:船舶管道系统;——第218部分:应用协议:船舶结构;——第220部分:应用协议:分层电子产品的工艺计划、制造和装配;——第221部分:应用协议:加工厂的功能数据及其模式表达;——第223部分:应用协议:铸造件设计制造产品信息交换;——第224部分:应用协议:采用加工特征定义机械产品的加工规划;——第225部分:应用协议:用显式形状表达的建筑元素;——第226部分:应用协议:船舶机械系统;——第227部分:应用协议:工厂空间配置;——第230部分:应用协议:建筑结构框架:钢结构;——第231部分:应用协议:工艺工程数据:关键设备的工艺设计和工艺规范——一第232部分:应用协议:技术数据封装核心信息与交换;——第233部分:应用协议:系统工程数据的表达;——第234部分:应用协议:船舶操作日志、记录和报文;——第235部分:应用协议:产品设计和检验的材料信息;——第236部分:应用协议:家具产品数据和投影数据;——第301部分:抽象测试套件:显式绘图;——第302部分:抽象测试套件:相关绘图;——第303部分:抽象测试套件:配置控制设计;——第304部分:抽象测试套件:使用边界表达的机械设计;——第305部分:抽象测试套件:使用曲面表达的机械设计;——第307部分:抽象测试套件:钣金模具的规划与设计;——第308部分:抽象测试套件:生命周期管理一更改过程;——第309部分:抽象测试套件:复合材料和金属结构分析以及相关设计;——第310部分:抽象测试套件:印刷电路部件产品的设计数据;——第312部分:抽象测试套件:电子技术设计和安装;——第313部分:抽象测试套件:加工零件的数控工艺计划;——第314部分:抽象测试套件:自动化机械设计过程的核心数据;——第315部分:抽象测试套件:船舶布置;——第316部分:抽象测试套件:船舶模型;——第317部分:抽象测试套件:船舶管道系统; GB/T16656.105—2010/ISO10303—105:1996——第318部分:抽象测试套件:船舶结构;——第321部分:抽象测试套件:加工厂的功能数据及其模式表达;——第322部分:抽象测试套件:复合结构的产品数据交换;——第323部分:抽象测试套件:铸造件设计制造产品信息交换;——第324部分:抽象测试套件:采用加工特征定义机械产品的加工规划;——第325部分:抽象测试套件:用显式形状表达的建筑元素;——第326部分:抽象测试套件:船舶机械系统;——第327部分:抽象测试套件:工厂空间配置;——第329部分:抽象测试套件:锻造件设计制造产品信息交换;——第330部分:抽象测试套件:建筑结构框架:钢结构;——第331部分:抽象测试套件:工艺工程数据:关键设备的工艺设计和工艺规范——第332部分:抽象测试套件:技术数据封装核心信息与交换;——第333部分:抽象测试套件:系统工程数据的表达;一一第334部分:抽象测试套件:船舶操作日志、记录和报文;一一第335部分:抽象测试套件:产品设计和检验的材料信息;——第336部分:抽象测试套件:家具产品数据和投影数据;——第501部分:应用解释构造:基于边的线框;——第502部分:应用解释构造:基于壳的线框;——第503部分:应用解释构造:几何边界的二维线框;——第504部分:应用解释构造:绘图标注;—第505部分:应用解释构造:图纸结构与管理;——第506部分:应用解释构造:绘图元素;——第507部分:应用解释构造:几何边界曲面;——第508部分:应用解释构造:非流形曲面;~一第509部分:应用解释构造:流形曲面;——第510部分:应用解释构造:几何有界的线框}一一第511部分:应用解释构造:拓扑边界的曲面;——第512部分:应用解释构造:小平面边界表达;——第513部分:应用解释构造:基本边界表达;——第514部分:应用解释构造:高级边界表达;——第515部分:应用懈释构造:构造实体几何;——第517部分:应用解释构造:机械设计几何表达;——第518部分:应用解释构造:机械设计渲染表达;——第519部分:应用解释构造:几何拓扑;——第520部分:应用解释构造:相关绘图元素;——第1001部分:应用模块:表象分配;——第1002部分:应用模块:颜色;——第1003部分:应用模块:曲线表象;——第1004部分:应用模块:基本形状;——第1005部分:应用模块:基本拓扑形状;——第1006部分:应用模块:基础表达;——第1007部分:应用模块:一般表面表象;——第1008部分:应用模块:层分配;116 GB/T16656.105—2010/ISO10303—105:1996第1009部分:应用模块:形状表象和层。ISO10303各部分的编号反映了它的结构:第11至第14部分规定了描述方法;~第21至第29部分规定了实现方法;一一第3l至第35部分规定了一致性测试方法与框架一第41至第50部分规定了集成通用资源;~第101至第108部分规定了集成应用资源;第201至第236部分规定了应用协议;第301至第336部分规定了抽象测试套件;一第501至第520部分规定了应用解释构造;第1001至第1009部分规定了应用模块。IsO10303标准各部分的完整清单可以从因特网得到http://www.nist.gov/sc4/editing/step/titles/。 GB/T16656.105—2010/ISO10303-105:1996附录NB(资料性附录)本部分英文黑体词的含义advent—orientedjoint关节进入方向assign—directed_link分配指定构件circularpath环形路径compare——unit——components比较单位composite—path组合路径configuration—definition构型定义configuration—interpolation插补构型connectedinsimpleloop简单环形连接connectedinsimplepath简单路径连接convert_plane_angleforpairfromradian弧度到角度的转换convertspatial——to_ypr—.rotation空间旋转转化为ypr旋转coordinated——pairlink——representation副构件表示一致性curve_based—path曲线路径cylindricalpair圆柱副cylindricalpairrange圆柱副范围cylindrical—pairvalue圆柱副值DHparameterDH参数founded—.kinematic—.path建立运动路径frame_associated—to_background坐标系与背景相关性fullyconstrainedpair全约束副gearpaw齿轮副gear——palr——range齿轮副范围gearpalrvalue齿轮副值increasing—nleasure_va[Lle增量比较初始状态interpolatedconfigurationsequence插补构型序列interpolation—type插补类型Joint—logical—relationship关节的逻辑联系kinematicanalysiscontrolandresultschema运动分析控制和结果模式kinematicanalysiscontrolandresultschemaentitydefinitions运动分析控制和结果模式实体定义kinematicanalysiscontrolandresultschematypedefinitions运动分析控制和结果模式类型定义kinematicmotionrepresentationschema运动学的运动表示模式kinematicmotionrepresentationschemaentitydefinitions运动学的运动表示模式实体定义118 表(续)GB/T16656.105—2010/[SO10303-105:1996kinemaucmotionrepresentationschemafunctiondefinitions运动学的运动表示模式函数定义kinematicmotionrepresentationschematypedefinition运动学的运动表示模式类型定义kinematicstructureschema运动结构模式kinematicstructureschemaentitydefintions运动结构模式实体定义kinematicstructureschemafunctiondefinitions运动结构模式函数定义kinematicstructureschematypedefinitions运动结构模式类型定义kinematic—analysisconsistency运动分析一致性kinematic—.analysis_definition运动分析定义kinematieanalysisresult运动分析结果kinematiccontrol运动控制kinematic_frame_background运动坐标系背景kinematic_frame_background—representation运动坐标系背景表示kinematic_frame_backgroundrepresentation_association运动坐标系背景表示联系kinematic_frame_base九transformation基于运动坐标系的变换kinematic_ground-representatlon运动连地点表示kinematic-Ioint运动关节kinematic—link运动构件kinematic—link_representation运动构件表示kinematic_link_representation_association运动构件表示的联系‘kinematic_link—representation—re|arian运动构件不同表示法之间的关系kinematic_loop运动环kinematic—network_structure运动网络结构kinematic—palr运动副kinematic_path运动路径kinematicproperty_definition运动特性定义kinematic_property_representation_relation运动属性表示关系kinematicresult运动结果kinematic—structure运动结构kinematicsubstructure运动子结构kinematic—treestructure运动树结构linear_path线状路径机构mechanism——base—.placement机构机架定位motion_link-relationship运动构件关系motion_parameter_measure运动参数测量non_coincident_coordinates非重合坐标119 GB/T16656.105—2010/ISO10303-105:1996表(续)orlented_JoInt有向关节oriented_ioint_in—tree树中的有向关节palr_actuator副约束副值path—element路径元索path_element—connection路径元索连接path—node路径结点Planar-cilrvepalr平面曲线副planarcurve_pair_range平面曲线副范围planarpair平面副planarpair_range平面副范围planar_pair—value平面副值planeangle—for_pairin_radian副的角度到弧度的转换pointonplanar_curve—pair点平面曲线副pointon_planar_curve_pair_range点平面曲线副范围pomt_on_planar_curve_pair_value点平面曲线副值point—on_surface_pair点曲面副point—on_surfacepairrange点曲面副范围point—on_surface_pairvalue点曲面副值point——to——point_path点到点路径prescribed_path预定路径pnsmatm_palr移动副prismatic—pairrange移动副范围prismaticpairvalue移动副值raek——and—.pinion—.pair齿轮齿条副rack—.and—.pinion_pairrange齿轮齿条副范围rack-and-pinion_pairvalue齿轮齿条副值representation—of_link构件表示resulting_path导出路径旋转副revolute—pairrange旋转副范围revolute—pair_value旋转副值rigid—placement刚体定位rolling_curvepair滚动曲线副rolling_curve_pairvalue滚动曲线副值rolling_surface_pair滚动曲面副120 表(续)GB/T16656.105—2010/ISO10303·10511996rolling——surface——pair——value滚动曲面副值rotation——about——direction绕轴旋转rotationalrangemeasure旋转范围计量serew_palr螺旋副screwpairrange螺旋副范围螺旋副值Slmple—paIr_range简单副范围sliding_curvepair滑动曲线副sliding_curve—pair_value滑动曲线副值sliding_surface—pair滑动曲面副sliding_surface—pair_value滑动曲面副值spatial—rotation空间旋转spherical—pair球面副spherical—pair_range球面副范围spherical—pair_value球面副值su—paral33etersSU一参数suitably_based_mechanism有合适机架的机构surface_pair曲面副surfacepair_range曲面副范围坐标变换平移translationalrange_measure平移范围计量unconstrained—pair无约束副unconstrained—pair_value无约束副值unique—link_usage构件使用唯一性umversaLpalr万向副universal—pair_range万向副范围universal—pair_value万向副值unlimited-range无限范围ypr_enumerationypr枚举ypr_mdexypr序列ypr_rotanonypr旋转121 GB/T16656.105—2010/lso10303-105:1996参考文献[1]sHETHU.N.&UICKERJ.J.,Agenetalizedsymbolicnotationformechanisms,JournalofEngineeringforIndustry,Trans.A$me.Feb.1971.2DENAVITJ.&HARTENBERGR.S.,Akinematicnotationforlowerairmechanismsbasedonmatrices,JournalofAppliedMechanics,V01.22,Trans.ASME,V01.77,SeriesE,1955.[3]HARTESFIELDN.b-RINGELG.,PearlsinGraphTheory:aComprehensiveIntroduction,AcademiePress,Ine.,SanDiego,1990.122 索GB/T16656.105—2010/]SO10303-105:1996···5.4.77⋯5.5.10·····6.4.9⋯··6.5.2····-6.4.6-····7.4.5⋯一7.4.1⋯5.5.10⋯··6.5.1·⋯·5.5.8⋯··5.5.9⋯..5.5.5⋯6.4.11⋯5.4.31···5.4.32⋯5.4.33··-··7.4.3⋯“5.5.6--·5.4.45···5.4.64···5.4.65-··5.4.66⋯..6.5.3·····5.4.7·····7.4.6⋯“7.3.1⋯5.4.74-·-··7.4.9-·-··⋯7.4·⋯⋯·7.3⋯··7.3.2·····7.4.8·····7.4.2·⋯-5.3.8⋯·5.4.14⋯·5.4.16⋯·5.4.15·····5.4.4·····5.4.9123 GB/T16656,105—2010/ISO10303-105:1996kinematiclinkkinematic_link_representation’。’’’‘’’’’’’’‘‘’‘’‘‘’‘‘’’’’‘’’’’’’’‘。‘‘‘‘’’’’’’kinematic_link_representation_association’+++’’++’’’’’’’’’’’’’。’’’’’’’’’’kinematic_link_representation_relation‘‘‘‘‘‘‘‘’‘‘’’’‘’’‘‘‘‘‘‘‘‘‘‘‘’‘’‘‘‘‘kinematic_loop’’‘’’‘’’‘。’’’‘’’‘’’‘’’’’’’‘’’’’。‘’’’‘‘’‘’’’’’’’。’。‘‘‘‘‘‘’‘’‘’’。’’kinematic_motion_representation_schema’’’’’’’’’’’’’’’‘‘’’’’’’。’’‘。。‘‘‘‘kinematic_motion_representation_schemaentitydefinitions‘‘‘‘‘‘‘‘‘‘‘‘kinematic_motion_representation_schemafunctiondefinitions·········kinematic_motion—representation_schematypedefinition‘‘‘‘‘·‘‘‘·‘·‘‘‘kinematic_network_structure······-···········································kinematic_pair‘‘‘‘’‘‘’‘‘‘‘’‘‘‘‘‘‘‘’‘‘’‘‘‘‘‘‘‘‘‘‘’‘‘‘‘‘‘‘‘‘+++’’’+++’+’‘’‘‘‘‘‘‘‘+‘‘kinematic_path‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘。。‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘’’‘‘‘‘‘‘‘‘‘‘‘‘‘’‘’‘‘‘’’‘’’‘kinematic_property_definition········‘‘。‘’‘‘’。’‘‘’。’’’’’’’。’’。’’‘。。‘‘‘‘‘‘’’’’kinematic_property—representationrelation‘‘‘’’‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘kinematic_result········································-·····-············----kinematic_structure··················--·-··········-·-·························kinematic_structure_schema·······················-··--··--·--·-··········-··-kinematic_structure_schemaentitydefiniations···-··-·····-··········-·--kinematic_structure_schemafunctiondefinitions························kinematic_structure_schematypedefinitions········-·····················kinematic_substructure················‘‘‘‘‘‘‘‘‘‘‘·····························kinematic_tree_structure·········-···········································linear_path····‘·························⋯‘‘。‘‘’‘’’’‘’’‘‘‘‘’‘‘‘‘‘’’‘’‘‘’’。。。。‘’‘mechanism··-··-··-··-一·-·--------------·----·--··································mechanismbase_placement‘‘‘‘‘‘‘‘‘‘‘‘’‘+‘+++’+++’‘+’‘’。+‘’⋯‘‘’‘‘’‘‘’。’。’。’motion—link_relationship···--·--·--··-。。。’。。‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘motion_parameter_measure···········’’’。’’。+。。。‘’’‘’’‘’’。’‘‘’’’。’’。’。‘。。‘‘‘‘noncoincident_coordinates············‘······································oriented_joint·················-·····-··-·‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘·‘‘‘·‘···‘···········orientedjoint—in_tree⋯⋯⋯⋯⋯⋯⋯⋯’’‘‘。‘。。‘‘‘‘。‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘⋯⋯‘pairactuator’’‘‘’‘‘’‘’’‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘’’‘‘’‘’’+’’+‘‘+‘‘+‘‘+’‘‘’’+‘‘‘’’’’’’’’‘’’pairvalue‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘·‘‘‘‘‘‘‘····⋯’。‘‘‘‘‘’’’’‘’’’’’’’’’’’。’’。。。‘’’‘’‘‘‘‘path_element’。‘。’‘‘‘‘‘‘’‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘。‘‘‘‘‘‘‘‘’‘‘‘‘‘‘‘‘‘‘‘‘‘’‘’’’’’’‘’‘‘’’+’‘+path_element_connection··············‘。。‘‘‘‘‘‘’‘‘’’‘。’。‘‘‘‘‘‘‘‘’‘’‘‘‘‘‘‘‘‘‘‘‘path_node‘‘’’’’‘’’’‘’‘‘’‘‘’‘‘’‘’’‘‘’‘‘‘。。‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘planar_curve_pair‘‘+‘‘+‘++’‘+’’’’’’’’’’’。’’。’’’。。‘‘‘’‘‘’’’。’‘‘’’‘‘‘’‘‘‘‘‘‘‘‘‘‘planarcurvepairrange++’++’++’‘‘‘⋯‘‘+‘‘‘+‘。’‘’’’’’’’’’。’’’’’’’’’’’。。。‘。planar_pair’’‘’’’’’’。。‘。。‘’’‘‘‘‘‘‘’‘‘‘。。‘‘。‘。‘‘‘‘‘‘‘’‘‘‘’’‘‘‘‘‘‘‘‘‘‘‘‘‘‘’’’’‘‘‘’+planar_pair_range’’‘’’’’’’’’’’’’’’’’’’‘‘’‘’’‘’’’’。。。‘。‘‘‘‘‘‘‘’‘‘‘‘‘’‘‘‘‘‘‘‘‘‘‘’‘planar_pair_value·····················-’‘。。‘‘‘‘‘‘’‘’。’’。‘‘‘‘‘。‘。‘‘‘‘‘‘‘‘‘‘‘‘‘‘plane_angle_for_pair_in_radian--···‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘’‘。‘‘‘‘‘。‘‘‘··‘·‘·‘‘·····point_on_planarcurve_pair‘‘‘‘‘‘‘‘‘‘‘‘‘’’‘‘’‘’‘‘‘+‘++++’‘‘’+‘’‘‘‘。。‘。’‘‘。’’。’point_on_planar_curve_pair_range‘‘‘‘‘’‘‘‘’’‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘1245.4.10⋯⋯5.4.12⋯⋯5.4.13⋯⋯5.4.11--·-一5.4.73··········6.4⋯⋯⋯·6.5⋯⋯⋯·6.3⋯⋯5.4.71⋯⋯5.4.18·······6.4.4·--·---5.4.2·····“5.4.3⋯⋯·7.3.3·······5.4.8·······-·-5.4⋯⋯····5.5⋯⋯⋯-5.3······5.4.70······5.4.72⋯⋯6.4.10·····..5.4.5···-···5.4.6·······7.4.4⋯⋯⋯·6.3⋯·⋯6.5.4······5.4.75······5.4.76⋯⋯5.4.19···--·5.4.20-·······6.4.7········6.4.5········6.4.3⋯⋯5.4.58······5.4.59······5.4.40······”5.4.2⋯⋯5.4.41⋯⋯··5.5.7·····--·5.4.5······5.4.57 GB/T16656.105—2010/ISO10303-105:1996pointon_planarcurve_pair_value·‘‘‘·······--··-‘·············t·····‘‘················-‘············---·-··5.4.56point_onsurfacepair·················-·-··················-··············-·-··································5.4.46point_on_surface_pair_range··············--···················--······⋯····---··················-··-·········5.4.48point_on_surface_pairvalue·························-·-············-······-···························-········5.4.47point—to_point_path·····-·-·-·····‘········--··················-·-·············--············一·········-·········一6.4.8prescribed_path⋯‘⋯⋯一:⋯·---·‘‘‘⋯⋯⋯·⋯⋯·⋯⋯⋯·⋯--··⋯⋯⋯·····-·····⋯⋯⋯···⋯···⋯⋯7.4.7prismatic_pair·····························-············r····-··--··················································5.4.25prismatic_pair_range‘‘‘·········⋯··‘‘··········---··‘’‘‘‘··············。‘‘‘‘‘············-·‘‘‘‘‘‘‘‘············5.4.27prismatic_pair_value‘‘‘‘‘‘‘‘‘-····‘’。‘‘‘‘‘‘‘·⋯·····一。‘‘‘‘‘‘‘···········’’‘。‘‘‘‘··········,·’。’’‘‘‘‘‘‘‘·········5.4.26rack_and_pinionpair·························-······⋯·········--··························⋯··················5.4.67rack_and-pinion_pair_range····-‘‘‘‘‘⋯⋯⋯··--·⋯”⋯⋯····--·⋯⋯⋯⋯⋯····⋯‘‘‘‘⋯⋯⋯····⋯5.4.69rack_and—pinionpair_value························-····-·-··················--················-·············“5.4.68representation_oLlink⋯⋯····⋯⋯⋯⋯········⋯⋯⋯⋯⋯⋯-⋯⋯⋯⋯⋯⋯⋯⋯··⋯⋯⋯⋯-··⋯5.5.2resulting-path⋯···⋯⋯--·⋯⋯⋯⋯···⋯⋯⋯⋯-·····⋯⋯··⋯⋯一···⋯⋯⋯⋯⋯⋯⋯-··⋯·-·⋯⋯7.4.10revolute_pair·⋯·······-·-·-······⋯··········---···············-·······⋯··-·························-·········5.4.22revolute_pair_range--··················---·············-·····················-···············-·····················5.4.24revolute_pair_value········-·······⋯····---·····················-·-·····⋯···-·--·--················--···-······5.4.23rigid_placement--·⋯⋯⋯⋯-⋯⋯⋯⋯⋯⋯⋯-·⋯⋯⋯⋯⋯⋯⋯·⋯⋯⋯⋯--⋯⋯·⋯⋯⋯····-⋯⋯5.3.1rolling_curve_pair··-··-·-·········-··--········⋯···-·-·-·············--······················---···············5.4.62rolling_curve_pair_value··--··-····‘············⋯⋯⋯⋯·····-·-·····⋯·····--·---·················-··-··-···5.4.63rolling_stwfacepair·········--···‘‘‘‘·········-······‘···············-···‘‘···⋯····----·······················5.4.53rolling_surface_pair_value⋯⋯⋯。⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯··-一。⋯⋯⋯⋯⋯⋯5.4.54rotation_about_direction·⋯⋯⋯⋯⋯··⋯⋯⋯⋯⋯⋯·⋯-·⋯⋯⋯⋯⋯⋯⋯⋯·⋯⋯⋯·-⋯⋯⋯⋯5.4.1rotational—range_measure‘‘‘·······’’。。‘‘‘‘··⋯······‘。’‘。‘‘‘‘···········’’⋯·⋯········---‘‘。‘‘:‘‘‘··········一5.3.2screwpair··-·················-·-·····················-··············-··---··············------············-·--·-一5.4.28screw-pair_range·⋯----···········⋯········-·············:························--·············---············5.4.30SCreW—pair_value‘················-··‘‘·········-·-······‘‘···········-·---··‘··············----·····t,·······-··-一5.4.29simple_pair_range⋯⋯⋯⋯⋯·-‘‘‘‘⋯⋯⋯····⋯⋯⋯‘⋯⋯⋯·--·。⋯⋯⋯⋯⋯···‘‘‘‘‘⋯⋯⋯⋯-一5.4.21sliding_curve_pair··-··--·······················-·····t⋯·-·-·--····························⋯·········---······5.4.60sliding_cuwe_pair_value·-······-··‘···········-·-·-·⋯···············---·-‘·················-‘············---···5.4.61sliding_surface_pair‘‘‘‘‘‘········’‘’。‘‘‘‘‘‘‘‘‘·······’‘‘‘。‘‘‘‘‘‘‘·······-。’。。。’。。‘‘‘‘‘‘‘····。’。’。’’‘‘‘’‘‘‘······5.4.51sliding_surface_pair_value········‘‘‘。‘···········--··。‘。‘‘‘‘‘···········-‘‘‘‘‘‘‘‘‘··········‘‘‘‘‘‘‘‘‘‘‘‘········5.4.52spatialJ"otation⋯⋯·-·--·····················--······⋯·····--···············{·····-······························5.3.5spherical_pair··-·‘·········-·-·-····‘‘‘‘················‘‘‘‘···········-····‘‘‘·‘‘·‘···········‘‘‘‘‘t··············5.4.34spherical_pair._range·····-····⋯·····················‘‘···········---····‘·‘·········-··--···‘‘·‘············-一5.4.36spherical_pair_value········---·-·‘‘·‘‘···············‘‘‘‘‘‘‘···········-·‘‘‘‘‘‘··········-·-·‘。‘‘‘·‘‘···········5.4.35su_parameters⋯⋯⋯⋯⋯⋯⋯--·--⋯⋯⋯⋯⋯{-⋯⋯⋯⋯⋯⋯--···⋯⋯⋯⋯⋯⋯⋯⋯···⋯⋯⋯5.4.17suitably—based_mechanism···⋯⋯⋯⋯·-·--⋯·⋯,⋯⋯··⋯--⋯·⋯⋯⋯··-⋯⋯⋯⋯⋯⋯··-⋯⋯--.5.5.3surface_pair············--······-·⋯···········:····-··‘········-········-‘‘‘···············-一‘‘‘················5.4.49surface_pair_range·················‘‘‘‘‘·‘···········-·‘‘‘‘················‘‘‘‘‘············-··。‘‘‘‘‘·············5.4.50transform······⋯··············--················---························-··············-··-·····················6.4.2translation⋯⋯⋯⋯⋯--··⋯⋯···⋯··⋯⋯⋯⋯⋯⋯···--··⋯⋯⋯⋯···-·--·--··⋯⋯⋯··--·-··⋯-··⋯6.4.1translational_range_measure··············-·-·-···⋯········-·······-·‘‘················-·‘····················5.3.3125 GB/T16656.105—2010/iso10303-105:1996unconstrained_pair‘‘‘‘‘‘unconstrained_pairvalueunique_link—usage’’’’’’’’5.4.435.4.445.5.4universal_pair++’++‘++’‘‘‘‘‘‘‘‘‘‘’‘’‘。‘‘‘‘‘’‘‘’‘‘’’’‘’‘。‘‘’。’‘’‘‘‘‘++‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘。‘‘‘‘。‘。。‘。。‘‘‘。’。。’。‘’’‘‘‘’‘‘。5.4.37universal_pairrange⋯·········⋯⋯⋯⋯⋯⋯⋯⋯‘‘‘‘。‘⋯⋯-··⋯⋯⋯···⋯·⋯⋯⋯⋯⋯⋯⋯⋯一5.4.39universal_pair_value····················-···········-·-·--·············································-···--·---5.4.38unlimited_range·················-··························‘···‘·‘‘··-··········-···-··-·····························5.3.4ypr_enumeration·········‘····‘‘‘‘‘‘‘‘‘‘’‘‘。’‘’‘。‘‘’’’。。‘‘‘‘‘‘。‘‘···············‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘。。。‘’’‘‘‘’‘‘’’’。‘’。5.3.6ypr_index--·⋯⋯-·-⋯---·--··-⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·-·-··⋯⋯⋯······⋯⋯⋯⋯⋯⋯5.5.1ypr_rotation·················‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘。‘‘。。。‘。’‘‘‘。’’’’。’‘·····················‘····‘·‘‘‘‘‘‘‘‘’‘‘‘。‘。‘。。‘。。‘5.3.7126'

您可能关注的文档