分享

模块化设计

 昵称43393625 2017-05-22
广义的(系统级的)“模块化"是指解决一个复杂问题时“自顶向下”逐层把系统划分成若干个模块的过程,有多种属性,分别反映其内部特性。
模块化是一种将待处理的“复杂系统”分解为更好的可管理模块的方式。
模块化也用来分割,组织和打包软件。每个模块完成一个特定的子功能,所有的模块按某种方法组装起来,成为一个整体,完成整个系统所要求的功能。
   模块具有以下几种基本属性:接口功能逻辑状态。其中:功能、状态与接口反映模块的外部特性,逻辑反映它的内部特性。
  在系统的结构中,模块是可组合、分解和更换的单元。模块化是一种处理复杂系统分解成为更好的可管理模块的方式。它可以通过在不同组件设定不同的功能,把一个问题分解成多个小的独立、互相作用的组件,来处理复杂、大型的软件。
模块化设计分为两个不同层次:
第一个层次为系列模块化产品研制过程,需要根据市场调研结果对整个系列进行模块化设计,本质上是系列产品研制过程。
第二个层次为单个产品的模块化设计,需要根据用户的具体要求对模块进行选择和组合,并加以必要的设计计算和校核计算,本质上是选择及组合过程。
总的说来,模块化设计遵循一般技术系统的设计步骤,但比后者更复杂,花费更高,要每个零部件都能实现更多的部分功能。
块化设计的一般步骤:
1. 市场调查与分析
模块化设计成功的前提。必须注意市场对同类产品的需求量、市场对同类产品基型和各种变型的需求比例,分析来自用户的要求,分析模块化设计的可行性…等。
对市场需求量很少而又需要付出很大的设计与制造花费的产品,不应在模块化系统设计的总功能之中。
2. 进行产品功能分析,拟定产品系列型谱
合理确定模块化设计所覆盖的产品种类和规格。种类和规格过多,虽对市场应变能力强,有利于占领市场,但设计难度大,工作量大;反之,则对市场应变能力减弱。
3. 确定参数范围和主参数
产品参数有:尺寸参数、运动参数和动力参数(如:功率、转矩、电压…等),须合理确定,过高过宽造成浪费,过低过窄不能满足要求。
另外,参数数值大小和数值在参数范围内的分布也很重要。最大、最小值应依使用要求而定。主参数是表示产品主要性能及规格大小的参数,参数数值的分布一般用等比或等差数列。
4. 确定模块化设计类型,划分模块
只有少数方案用到的特殊功能,可由非模块实现(即可以不考虑进行模块化设计):若干部分功能相结合,可由一个模块实现(对于调整功能尤其如此)。
5. 模块结构设计,形成模块库
由于模块要具有多种可能的组合方式,因此设计时要考虑到一个模块的较多接合部位,应做到加工合理、装配合理;应尽量采用标准化的结构;尽量用多工位组合机床同时加工,否则模块的加工成本将非常可观;还应保证模块寿命相当,维修及更换方便。
6. 编写技术文件
由于模块化设计建立的模块常不直接与产品联系,因此必须注意其技术文件的编制,才能将不同功能的模块有机联系起来,指导制造、检查和使用。技术文件主要包括以下内容:
  1)编制模块组合与配置各产品的关系表。其中应包括全系列的模块种类及各产品使用的模块种类和数量。
  2)编制所有产品的模块组和模块目录表,标明各产品和模块组的组成。
  3)编制系列通用的制造与验收条件、合格证明书及装箱单。
  4)编制模块式的使用说明,以适应不同产品、不同模块的需要。
模块化设计的关键
1. 模块标准化
它是指模块结构标准化,尤其是模块接口标准化。模块化设计所依赖的是模块的组合,即联接或啮合,又称为接口。显然,为了保证不同功能模块的组合和相同功能模块的互换,模块应具有可组合性和可互换性两个特征,而这两个特征主要体现在接口上,必须提高其标准化、通用化、规格化的程度。例如,具有相同功能、不同性能的单元一定要具有相同的安装基面和相同的安装尺寸,才能保证模块的有效组合。在计算机行业中,由于采用了标准的总线结构,来自不同国家和地区厂家的模块均能组成计算机系统并协调工作,使这些厂家可以集中精力,大量生产某些特定的模块,并不断进行精心改进和研究,促使计算机技术达到空前的发展。相比之下,机械行业针对模块化设计所做的标准化工作就逊色一些。机械产品中模块化设计仅应用于为数不多的机床行业。
2. 模块的划分 
模块化设计的原则是力求以少数模块组成尽可能多的产品,并在满足要求的基础上使产品精度高、性能稳定、结构简单、成本低廉,且模块结构应尽量简单、规范,模块间的联系尽可能简单。因此,如何科学地、有节制地划分模块,是模块化设计中很具有艺术性的一项工作,既要照顾制造管理方便,具有较大的灵活性,避免组合时产生混乱,又要考虑到该模块系列将来的扩展和朝专用、变型产品的辐射。划分的好坏直接影响到模块系列设计的成功与否。总的说来,划分前必须对系统进行仔细的、系统的功能分析和结构分析,并要注意以下各点:
l)模块在整个系统中的作用及其更换的可能性和必要性。
  2)保持模块在功能及结构方面有一定的独立性和完整性。
  3)模块间的接合要素要便于联接与分离。
  4)模块的划分不能影响系统的主要功能。
**********************************************************************************************
模块机器人及其CAD设计<转>
(MODULAR ROBOTS AND COMPUTER-AIDED DESIGN)
本文旨在根据模块机器人概念化设计的特点,将基于事例推理应用到模块机器人的智能设计中.辅助设计系统的智能化在于面向对象的知识表示和基于知识和事例的推理机制引入.
1 引言
  模块化思想在柔性加工系统中得到日益广泛的重视.欧美有关研究机构从80年代末就开始对模块机器人的研究,早期主要侧重于模块本身的研制,而近期则偏重于模块机器人应用领域的开拓[1~5].
  模块机器人的研究可分为3个不同的领域,即模块机器人硬件的研究、控制的研究和根据不同应用的计算机辅助设计,迄今为止的大多数研究侧重于前两个领域的研究.目前,商业化的标准模块(模块关节和模块连杆)已经面市.模块机器人的出现无疑为柔性加工系统提供了更多的选择机会,但随之而来的问题是任务对象的千变万化、工作环境的不同,加之模块机器人的可随意组合——即模块机器人拓扑关系、模块关节及模块连杆的无穷组合,模块机器人设计成为具有挑战性课题摆在我们面前.
  机器人计算机辅助设计课题一直为人们所关注,B. O.Nnaji,在1986年出版了“机器人计算机辅助设计、选择与评价”的专著[6].他对可能组成机器人的4个关节的运动范围、速度进行分度编码,并对执行器,关节驱动单元、关节控制单元、设计参数等共89个参数进行了定性或定量地(16分度)规定.Nnaji还对如何根据设计要求确定相关代码给出了程序流程,这为机器人计算机辅助设计开创了先河.K-H Wurst在开发模块机器人的同时也给出了选择模块的一般原则[1].前者的研究主要针对一般机器人如何根据设计参数确定代码,从而确定满足设计要求的机器人拓扑关系和结构参数,这在设计新型机器人时有着一定的指导意义.
  作为模块机器人的概念化计算机设计,其指导思想与Nnaji的设计有以下不同之处,一是模块机器人的组成有一定的限制,即有限关节模块和无限连杆的可选择性;二是Nnaji的设计方案是针对机器人设计专业人员开发的,这需要设计人员具备有机构运动学、动力学、计算机控制以及对机器人的深入了解,而我们所开发的计算机辅助设计系统的用户对象是机器人用户,而非机器人专家.换言之,我们的系统是面向用户,而不是面向机器人的设计者.从用户使用角度来讲,他没有必要了解模块机器人的内部详细构造和运作,他只需要了解和描述该机器人所从事的任务和应该具备的性能,从这个意义上讲,该系统是以任务为驱动,或者说是面向任务的.由上述区别所产生的新的区别还在于,计算机辅助设计系统和数据结构不同.辅助设计系统必须有足够的智能,以进行自上而下的设计,这就要求该系统应具备足够深度的知识,以描述模块与模块机器人的功能、性能和结构(Function,Behavior andStructure,缩写为FBS),描述机器人应承担的任务和所处的环境,以及在任务-功能-结构的映射过程中的知识.这一设计智能化的要求对系统数据结构提出了更加苛刻的条件,一般关系数据库的数据结构已经不能满足其设计需要.关于以面向对象为特征的机器人知识建模可参见文献[7].
  2 模块机器人
  专用机器人的高效、精确和低应用成本已在规模化工业生产中得到充分体现,但面对未来多变化和小批量的柔性生产需求来讲,专用机器人的设计周期和制造成本都成为亟待解决的难题.模块化概念的引入到机器人设计为柔性加工系统注入了新的活力,选择适当的模块机器人拓扑关系和标准模块,迅速组成模块机器人是缩短机器人设计周期和降低制作成本的有效途径,模块化机器人将成为未来柔性加工系统中最重要的设备之一.
  2.1 标准模块
  顾名思义,模块机器人由模块——即由模块关节和模块连杆组成.模块一般应具有标准化的机械与电气接口用于模块间连接,具有一到三个自由度的模块关节由直流或交流电机驱动,并集成有减速机构和控制器.无自由度的模块连杆仅用于模块关节之间的连接.不同长度的模块连杆和不同方位的标准接口,使得模块关节之间的连接能满足对机器人不同运动学和动力学要求.图1给出了由Wurst开发的标准模块的示意.一自由度的关节模块可以是摇摆或平动,二自由度的关节可以是回转与摇摆、平动与回转和平动与摇摆.同一类型的关节可以有不同的驱动机构,以适应不同的运动与动力学要求,但可选择的余地是有限的.关节的长度可以根据实际要求制作.
模块化设计
(a) 摇摆关节   (b) 平动与摇摆关节  (c) 平动与回转
模块化设计
(d) 同摆动与摇摆关节 (e) 平动与回转关节 (g) 连杆
R-回转关节  S-摇摆关节  T-平动关节  L-连杆
图1 标准模块
2.2 模块机器人拓扑关系
  从理论上讲,使用同一类型的标准模块可以构成无数不同拓扑关系的机器人.但从实际应用角度出发,一个满足六自由度空间运动要求的串连机器人(图1的标准模块仅限于串连机器人),由不超过4个多自由度的关节模块和3个连杆模块组成.若考虑到终端执行器本身具有的三自由度,对操作器的自由度的要求还会降低.图2给出了由标准模块组成的几种常见串连机器人拓扑关系[1].图2(a)所示的六自由度模块机器人为最典型的工业机器人拓扑关系,它能满足大多数工业应用要求.这种类型的机器人的优点在于能在它的工作空间回避障碍,但对某些应用,它并不是最佳拓扑关系.对于执行器运动空间要求不大的机器人,如流水线上的装配机器人,图2(b)、(d)和(e)所示的机器人应用较多.其余所示机器人的应用则相对较少.
模块化设计
模块化设计
模块化设计
图2 模块机器人拓扑关系
3 模块机器人的计算机辅助设计
  模块机器人的计算机辅助设计,可以遵循Nnaji或其他专家提出的设计流程进行设计,但使用这些方法的前提是该用户必须是机器人领域的行家里手,用户必须精通机器人运动学、动力学、机器人控制,以及熟悉现有机器人产品的结构和性能.这正是大多数计算机辅助设计软件不能得到普及和应用的主要障碍,也与现代概念设计方法和面向用户和对象的软件设计思想格格不入.我们研究的目的在于,根据模块机器人设计的特点,提出面向用户、基于事例的方法和计算机辅助设计系统,使得模块机器人的计算机辅助设计不再为领域专家所专有.
  3.1 模块机器人设计的特征
  就模块机器人计算机辅助设计而言,最终用户的设计并非对所有机器人的关节和连杆进行结构设计,而是根据给定任务确定机器人最佳拓扑关系、关节和连杆参数,以确定选用标准的模块,组成满足任务要求的模块机器人,这是典型的机械系统概念化设计.面向用户的现代软件的设计指导思想确定了辅助设计软件的使用者是最终用户,而不是机器人或计算机领域的专家[8].事实上,用户根本不需要成为机器人设计的行家,也没有必要对机器人结构及其控制的细节作深入了解.用户惟一关心的,就是在辅助设计软件的应用界面上,正确地确定机器人欲完成的任务,描述其工作环境,输入模块机器人应该具备的功能和应达到的性能、以及某些限定性约束条件.作为计算机辅助设计系统推理的结论,机器人的结构,即拓扑关系和模块参数,成为满足新任务要求的新的技术方案.换言之,模块机器人概念化设计应是以任务为驱动、自上而下的设计过程.
  机器人所从事的任务决定了机器人应具备的功能和性能要求.在这里需要强调的是,机器人的拓扑关系决定了机器人功能,而关节特性和连杆长度及质量则会影响机器人的性能.换言之,在机器人拓扑关系确定的情况下,该机器人的功能就已经确定,而不同的关节和连杆参数仅会影响机器人的性能.这一假设使模块机器人的任务-功能-结构之间的双向映射成为可能.
  3.2 智能计算机辅助设计方案的选择
  现代计算机辅助设计的发展趋势向着软件智能化方向发展,以面向用户和面向对象为特征的智能化设计软件是以知识库为依托、计算机进行推理为主线索.
  一种基于事例的计算机推理(Case-BasedReasoning,缩写为CBR)过程应用于复杂系统的概念化设计,可以把寻求新的技术方案与已有的成功设计事例紧密地联系在一起[9].作为一种类似人类设计过程的方法,基于事例的设计有效地利用了已有的成功经验,大大缩短了寻求最终解决方案的时间.采用基于事例的设计思想的好处还在于简化了智能系统中的知识,过滤了许多低层的元知识,突出了与任务相关的上层知识,使得知识的表达、存储和索引更加简洁和清晰,解决了基于元规则推理时可能出现“组合爆炸”的潜在隐患.
  智能软件面向用户的特征,不仅在于界面友好的形式要求,更重要的是软件的使用者仅是该领域的一般工程技术人员,而非该领域的行家里手.以任务为驱动、自上而下的设计应成为智能设计的主线索,但所谓自上而下的设计并非设计系统的惟一策略.在任务-功能-结构的映射不能奏效时,基于元知识、自下而上的正向推理则有助于产生新的机器人结构,以满足新的功能要求和适应新的任务要求,这会增加系统知识和推理机制的复杂程度.自下而上的设计对最终用户是透明的,用户并不会被要求对机器人内部结构的细节加以了解.
  此外,因为模块机器人所从事的任务、所处的工作环境的不断变化,以及不断增长的模块机器人的组成,导致了系统知识的不断变更和膨胀.为了消除可能导致系统崩溃的数据混乱,面向对象的数据结构是解决这一潜在问题的唯一选择.研究模块机器人对象的功能、性能和结构之间的关系是模块机器人计算机辅助设计中最重要的环节.作为事例的数据抽象,对象类的成员数据和方法的可封装、继承和重载特性,使得用户可以有效地定义或开发各种复杂对象,这对于大型工程问题所涉及的知识、数据和方法的定义和应用是至关重要的.面向对象的设计思想用于智能CAD,导致了系统中知识的表示和组织不同于一般基于规则的推理机制中的知识表示.综上所述,根据模块机器人概念化设计的特征,选择以任务为驱动、面向对象和基于事例推理的计算机辅助设计系统,采用自上而下的推理策略是进行模块机器人概念化设计的最佳选择.
  4 模块机器人概念化设计CAD系统
  图3给出了模块机器人概念化设计的CAD系统示意图.图4给出了基于事例推理的CAD系统流程.领域专家作为系统的设计和维护者,将成功的模块机器人的事例(对象)按照功能与性能进行分层索引,该树状索引图直接用于支持推理的知识库.用户通过人机界面输入机器人即将从事的任务、工作环境和约束.任务编译器将输入映射为对机器人功能和性能的指标,作为推理机进行索引的标签.推理机首先根据功能要求在树状知识库中进行相关匹配候选.满足基本功能要求和部分满足性能要求的模块机器人将被作为候选者,而性能最接近的模块机器人将被选出.由于被选出的模块机器人在性能上未必能满足新的工作要求,适当的修改再所难免.由于决定模块机器人功能的机器人拓扑关系已经确定,所进行的适应性修改仅仅是选择适当的关节和连杆模块.改变模块参数后的前向计算容易确定新的机器人的性能,这实际上是一个优化过程,其优化的目标是使该机器人的功能和性能与完成新任务所需的功能和性能的差别最小.通过模拟得到用户确认的最优模块机器人结构将作为系统的输出,并增加到事例库中.
模块化设计
图3 基于事例推理的模块机器人辅助设计系统
模块化设计
图4 基于事例的推理
在匹配过程中如果没有适当的候选者产生,则系统首先要求用户修订对任务的说明,如放松约束或降低性能要求,以利于回调相关机器人.系统在不能回调相关模块机器人时,会向领域专家征询进一步的知识,以求解决新的任务.若在有限循环次数后仍不能回调相关事例,则系统调用综合过程,从模块库中综合新的机器人拓扑关系.
  系统任务描述界面如图5所示(略),用户可以从3个属性界面上对机器人作业基本任务、工作环境和约束进行描述.例如,一机器人在一平面空间进行弧焊任务,焊头Welder重为3.5kg,最大工作范围在平面500mm×450mm的范围内,焊头能在X平面内偏转,轨迹类型为连续,焊头Welder从给定点PStart,经轨迹Path_1,到结束点PEnd.对工作空间可以用图形方式加以直观定义和显示,对轨迹的描述可以是数组或图形方式.工作环境描述主要包括对系统坐标系统定位、相关设备、传感器等的定义.约束条件指的是对机器人作业时其他约束,诸如对执行器的最大速度、加速度、机器人定位精度、重复精度、制作成本、使用成本等因素的考虑.
  5 结束语
  本文旨在根据模块机器人概念化设计的特点,将基于事例推理应用到模块机器人的智能设计中.辅助设计系统的智能化在于面向对象的知识表示和基于知识和事例的推理机制引入.
注:本研究得到香港政府研究基金委员会1996~1999年度的资助(项目编号9040222).

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多