查字典论文网 >> 开放式机器人智体

开放式机器人智体

小编:

摘要:针对机器人功能的更新、修改、升级、维护等工作,普遍只能采用离线、静态方式进行的问题,将“软件人”引入机器人平台中,搭建了以宿主“软件人”为管理中心的机器人系统架构,并重点对宿主“软件人”进行了研究。首先,构造了宿主“软件人”的体系结构;然后,提出了宿主“软件人”知识行为一体化描述模型,并对其知识模型进行了基于数据结构的构造和实现,对其主要服务类行为给出了相应的设计规范及算法的参考实现;最后,句子不通顺,前面说平台,后面是系统,将平台和系统合一吗请核实描述,此句中的机器人平台改为机器人系统。将引入宿主“软件人”的机器人系统与网络平台中的“软件人”系统进行合一,经测试,机器人功能的在线、动态更替取得成功,什么意义,且此句过于抒情,摘要应简洁明了将”引入宿主‘软件人’的意义得以实现“这句去掉。同时也验证了对宿主“软件人”设计、实现方法的正确性和可行性。

关键词:机器人;宿主“软件人”; 知行模型;“软件人”系统;合一系统

中图分类号: TP181 文献标志码:A

英文摘要

Abstract:To solve the problems of updating, modifying, upgrading and maintaining the function of robot by offline and static method, SoftMan was introduced for robot platform, and the architecture of robot system, whose managing center is host SoftMan, was built. The host SoftMan was mainly researched. Firstly, the architecture of host SoftMan was constructed. Then the descriptive unification model of knowledge and behavior of host SoftMan was put forward, the knowledge model was constructed and implemented based on data structure, and the design specifications and reference realization of the algorithm were given for its main service behaviors. Finally, the robot system was unified with the SoftMan system. Through the test, the function of robot was successfully replaced online and dynamically, implementing the meaning of the introduction of host SoftMan and verifying the correctness and feasibility of the method of designing and implementing the host SoftMan.

英文关键词

Key words:robot; host SoftMan; model of knowledge and behavior; SoftMan system; syncretic system

0 引言

“软件人”知识模型(SoftMan KnowLedgebase Model,SMKM)定义为一个三元组[14]:

SMKM=〈Data, Type, Relation〉。

1)Data为“软件人”知识的数据部分,表述为一个三元组:Data=〈DataType, DataContent, DataLen〉其中: DataType表示数据类型,DataContent表示数据内容,DataLen表示数据长度。

2)Type为本“软件人”知识节点的逻辑类型,即资源类型知识节点或属性类型知识节点。

3)Relation用于描述本知识节点与其子节点之间的模糊关联,表示为:

Relation=∪〈SubSKMi, tValuei, fValuei〉;0≤i≤n其中:tvaluei表示第i个子知识节点相对于本节点的隶属度, fvaluei表示第i个子知识节点相对于本节点的假隶属度[14]。

“软件人”知识模型SMKM主要是由以下4个数据结构来构造和实现的。

1)枚举类型SMKMType表示“软件人”知识Data部分的DataType,其成员包括:无数据类型smkm_no_type, 整数类型smkm_int_type, 浮点类型smkm_float_type,字符串类型smkm_str_type, 结构体类型smkm_struct_type, 链表类型smkm_list_type。

2)枚举类型SMKMLogicType表示“软件人”知识Type部分的逻辑类型,其成员包括:资源类型smkm_logic_res_type, 属性类型smkm_logic_attr_type。

3)结构体smkmTerm表示“软件人”知识的基本构造元素,其成员包括:smkmType表示“软件人”知识Data部分的DataType,*p表示“软件人”知识Data部分的DataContent,len表示“软件人”知识Data部分的DataLen,logicType标明“软件人”知识的逻辑类型Type,wMs和wUnMs表示本知识节点与其父节点的模糊关联 。

4)结构体smkmStructType为软件人”知识基本构造元素提供了一种灵活的组装方式。

根据以上对“软件人”知识模型与其数据结构的定义与说明,对图3左边宿主“软件人”的知识库Knowledge Base部分进行实现,其实现示意图如图4所示。行为集Behaviors的实现逻辑与此类似,不再详细赘述。

图4顶层方框表示要描述的是知识Data部分的DataType为结构体类型smkm_struct_type的知识节点“HostSoftMan”。第二层左分支方框描述的是“软件人”名称,名称的数据类型为字符串类型smkm_str_type;LogicType=smkm_logic_res_type表明该“软件人”知识的逻辑类型为资源类型;*p表示名称的数据内容为“HostSoftMan”;len=11表明名称的数据长度为11个字符;wMs=1、wUnMs是否应为wUnMs,图中表述为wUnMs将wUnM改为wUnMs=0表明与其父节点隶属度为1、假隶属度为0。第二层右分支方框枚举了图3宿主“软件人”知识库Knowledge Base的下层组成要素名称及个数。由*p可看出组成知识库要素的数据名称分别为Node Data、Message Buffer、Host Abstract 和InitROT, 枚举类型SMKMType的数据类型为字符串类型smkm_str_type;len=4表明组成要素数据个数为4;wMs=1、wUnMs=0表明与其父节点隶属度为1、假隶属度为0。对图4中第三层与第四层的理解可分别参照对顶层和第二层的解释,不再赘述。

服务类行为集SrvBehs是与宿主“软件人”的职能所对应的,因篇幅有限,本节选取其服务类行为集SrvBehs中典型的信道建立行为CreateChannelBeh和节点容错行为FaultToleranceBeh进行相关设计规范及算法的参考实现。

1) 信道建立行为CreateChannelBeh。

“软件人”之间通过消息传递进行交互[21],因此,在机器人平台中担当守护、信息处理角色的宿主“软件人”需先创建通信信道。在嵌入式Linux系统中,支持多种进程间通信(InterProcess Communication,IPC),常用的IPC方式有:共享内存、信号量、管道、消息队列、socket等。本文选取socket作为进程间通信的方式,建立机器人平台上的通信信道。信道建立后,宿主“软件人”可为机器人端提供消息守护功能。节点内部的附体“软件人”能通过信道与宿主“软件人”进行通信,同时,“软件人”平台上的消息节点也能通过连接该信道与机器人平台上的“软件人”进行通信。宿主“软件人”消息守护流程如图5所示。

2) 节点容错行为FaultToleranceBeh。

容错机制是系统可靠性的一种保证。宿主“软件人”作为机器人系统的守卫者和管理者,关键是要保障机器人节点的正常运行。因此,需讨论宿主“软件人”为使系统可靠运行而提供的容错行为。对于宿主“软件人”的容错行为,首先需要能为异常结束的附体“软件人”提供重新启动的功能。宿主“软件人”处理附体“软件人”进程退出信号过程如图6所示。

在宿主“软件人”监听到附体“软件人”退出时,通过查看“软件人”状态来判断是否有异常。若已申请退出,则宿主“软件人”释放维护的相关信息;否则认为该“软件人”进程为异常退出,重新启动附体“软件人”。当宿主“软件人”接收到操作系统内核传来的信号时,附体“软件人”进程已经结束,且尚未处理的输入消息也将丢失。若采用直接重新启动从初始化状态开始工作,虽然避免了附体“软件人”异常退出,但并未能保证其对外服务的连续性。因此,为了避免附体“软件人”服务的中断,宿主“软件人”采取了检查点容错机制。即宿主“软件人”定期的保存运行期附体“软件人”的相关信息(检查点),当附体“软件人”因意外终止而重启时,利用保存的信息初始化附体“软件人”,使得“软件人”能从检查点继续执行,以此保持“软件人”对外服务的持续性。

热点推荐

上一篇:基于ViBe的室外动态背景闪烁像素噪声消除方法

下一篇:如何对幼儿进行德育教育论文 幼儿园关于德育教育之类的论文