软件《多移动机器人通用控制平台1.0》(简称TeamLab1.0)是用于多移动机器人控制的一个任务规划与实施平台,主要解决机器人的传感、通信、控制、规划和协作等关键问题,可以完成多移动机器人的编队、合作导航、定位、踢足球等多种复杂任务,其中涉及技术领域较多,如多机器人学、任务规划、多智能体系统、分布式感知、人机交互、网络通讯等。 

 


•  功能

(1) 团队任务规划

    在系统设计上,本软件采用了有限状态机(简称 FSA)和组 态的理论,将机器人团队的任务设置转换成状态和触发的连接,以及状态与触发的参数组态。

•  有限状态机:FSA是来自于离散事件建模理论中的一种系统表达方法。它用状态和激励(也称触发)来描述系统的演变。 有限状态机 模型假设所考虑的任务能被描述为一个顺序步骤的序列。一个有限状态机将被设计来完成每一步,伴随着感知线索引发步骤间的转变。当然,每一步可能由同样顺序执行的子步骤或子任务组成。用这种方法,一个任务可能按分解分析的要求被描述得尽可能详细。图 1 所示为一个简单的 FSA 设计图,其中“任务开始”、“前进到”、“团队扩散”、“任务结束”都是状态,“直接触发”、“已到达”、“扩散完成”都是触发(激励)事件。通过对“状态-触发”对的设计可以实现整个任务的完整描述。

•  组态:来自于集散型工业系统的一种控制方法。其含义是使用软件工具对计算机及软件的各种资源进行配置,包括进行对象的定义、制作和编辑,并设定其状态属性参数,达到使计算机或软件按照预先设置,自动执行特定任务,满足使用者要求的目的。图 2 所示为一个简单的组态表示。对于状态“前进到”,我们使用组态的方法对其进行设置,设定其目标坐标、队形、编队和角色等参数,使得状态可以实现完整的一个小任务。

 

 

图1 FSA图


(2)  团队通讯

    在网络通讯上,本软件采用基于进程间通讯的方式与机器人服务器进行连接。进程间通讯是用来保证多个进程间的协调运行和资源共享的方法,在设计上我们使用 SOCKET 通信来实现,在设计中将进程分成主进程和辅助进程。两个进程间的通信机制由两部分组成:主进程内部的请求机制(客户端)和辅助进程内部的服务机制(服务器端)。每个服务器端拥有特定的端口号,客户端通过不同的端口号向不同的服务器发出请求,并根据端口号确定接收到的数据包属于哪个进程。

    机器人服务器与各个机器人通过无线局域网连接,实现对各个机器人的直接任务下达与数据收集。无线局域网指以无线信道作传输媒介的计算机局域网。它采用射频工作方式传输和接收数据,是在有线局域网的基础上通过无线集线器、无线接入节点、无线网桥、无线网卡等设备使无线通信得以实现。

 

图2 组态示意图

•  技术特色

    在程序设计上,本软件采用面向对象和图形化的方法,使用了大量的可视化控件,为用户提供了一个简洁易用的开发设计环境。

  • 易用性:本软件所实现的功能都可由用户使用鼠标操作来完成,同时提供一些键盘功能键与快捷键方便用户的使用。所有操作都不需要用户进行代码编写(获得作者许可的对软件的二次开发除外)。
  • 图形化:本软件使用了大量的可视化控件,同时为了实现有限状态机的方法还自主开发了大量的实用控件。
  • 重用性:对于机器人任务,可以保存、重用,并且可以将任务合并、修正。
  • 可扩展性:在软件中,为用户保留了状态和触发的扩展,用户可以根据自己的使用需要自行设计添加新的状态和触发,只要满足约定的控件要求和设计正确的通讯报文,用户自定义的控件使用起来与系统控件同样简单方便。
  • •  软件使用环境

        本软件在使用时对硬件、软件、网络和机器人有如下要求:

    1. PC台式机或者笔记本电脑,150MHz或者更高主频,32MB或者更大内存,8M或者更多硬盘剩余空间,彩色图形显示卡,键盘鼠标。
    2. Windows98/NT/2000/XP 中文操作系统。
    3. 移动机器人,辅助传感器可以包含声纳、摄像头、激光等。
    4. 通讯网络,基于WLAN和TCP/IP网络协议的网络,具有相关网络设备(如网卡、集线器、网线、无线网桥、无线网卡等)。

    •  人机界面

    图3 人机界面

    软件著作权登记号:2003SR11013