用于快速完成定制业务的可移植软件平台、方法和机器人技术

技术编号:16427579 阅读:41 留言:0更新日期:2017-10-21 22:00
本发明专利技术实施例公开了一种用于快速完成定制业务的可移植软件平台、方法和机器人,其中,可移植软件平台包括:加载器,用于解析具有统一接口的插件的配置信息,根据解析结果实例化所述插件,其中,所述具有统一接口的插件包括模块、回调、驱动、模块链和业务状态机;业务运行与控制器组件,用于运行实例化的业务状态机,控制业务状态机中的业务流程,并通过所述统一接口调用所述业务流程中引用的多个服务;服务集成与控制器组件,用于通过调用所述模块、回调、驱动和模块链,实现运行并控制所述多个服务。本发明专利技术实施例可简单快速地迭代开发产品,从而能够快速应对市场需求,降低开发和维护成本。

Portable software platform, method and robot for rapid completion of customized business

The embodiment of the invention discloses a method for portable software platform, and robot, which quickly complete the customized service, portable software platform includes: Loader configuration information for the analysis with a unified interface plug-in, according to the results of analysis of the instantiation of plug-ins, which has the unified interface plug-in module including, callback, drive, chain module and business state machine; operation and controller assembly for business state machine operation instantiation, control the business state machine in the business process, multiple services and through the unified interface referring to the business process; service integration and controller components, used by calling the the callback module, drive module, and the implementation of chain operation and control of the plurality of services. The embodiment of the invention can simply and rapidly iterate the product development, thereby rapidly responding to the market demand and reducing the development and maintenance costs.

【技术实现步骤摘要】
用于快速完成定制业务的可移植软件平台、方法和机器人
本专利技术实施例涉及计算机技术,尤其涉及一种用于快速完成定制业务的可移植软件平台、方法和机器人。
技术介绍
随着社会的不断发展和进步,智能设备特别是机器人层出不穷并将无处不在。机器人市场前景好、需求量大,国家政策鼓励服务机器人产业发展,但面临业务领域或行业众多、场景多(例如移动的,静止的;家用的,公用的;高端的,低廉的等)以及软硬件组件供应商众多且接口不一等现状。而当前的机器人系统提供的业务功能通常与操作系统及硬件、智能服务紧密耦合,这使得相关功能调用显式且分散,要迁移到其他的操作系统、或更改硬件供应商、或使用新的服务、或适应业务功能的变化和/或扩展、或迁移到不同行业,都可能会有较多的修改,从而需要投入较多人力和较长时间的开发和测试才能上线,从而导致开发成本高、维护成本高、市场反应慢等挑战。
技术实现思路
本专利技术实施例提供一种用于快速完成定制业务的可移植软件平台、方法和机器人,以实现将机器人系统提供的业务功能与操作系统及硬件、智能服务解耦,降低开发和维护成本。第一方面,本专利技术实施例提供了一种用于快速完成定制业务的可移植软件平台,包括:加载器,用于解析具有统一接口的插件的配置信息,根据解析结果实例化所述插件,其中,所述具有统一接口的插件包括模块、回调、驱动、模块链和业务状态机;业务运行与控制器组件,用于运行实例化的业务状态机,控制业务状态机中的业务流程,并通过所述统一接口调用所述业务流程中相应模块的功能,其中,业务流程中包含多个服务;服务集成与控制器组件,用于运行并控制所述多个服务,以便隐式而集中地调用所述模块的功能。第二方面,本专利技术实施例还提供了一种用于快速完成定制业务的方法,该方法包括:接收服务开发者通过所述可移植软件平台开发并发布的服务;接收业务开发者开发并发布的业务状态机,所述业务状态机中引用了所述服务;所述可移植软件平台运行后,加载并运行所述业务状态机,以便平台消费者通过所述可移植软件平台的API与平台进行通信并获取服务。第三方面,本专利技术实施例还提供了一种机器人,具有如上所述的用于快速完成定制业务的可移植软件平台。本专利技术实施例通过加载器、业务运行与控制器组件、服务集成与控制器组件来构建可移植软件平台,这使得业务开发者和服务开发者的分工与接口明确,服务开发者只需专注于其要提供的功能及实现的算法和逻辑,无需关心具体业务,业务开发者则无需关注各服务的内部细节,只需根据业务流程和业务功能的实际需要,引用相关服务,编写业务状态机,即可简单快速地迭代开发产品,从而能够快速应对市场需求,降低开发和维护成本。附图说明图1是本专利技术实施例一中的用于快速完成定制业务的可移植软件平台的结构示意图;图2是本专利技术实施例一中的用于快速完成定制业务的可移植软件平台中加载器的结构示意图;图3是本专利技术实施例二中的用于快速完成定制业务的方法的流程图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一中的用于快速完成定制业务的可移植软件平台的结构示意图,如图1所示,本专利技术实施例的可移植软件平台10包括加载器101、业务运行与控制器组件102和服务集成与控制器组件103,其中,加载器101,用于解析具有统一接口的插件的配置信息,根据解析结果实例化所述插件,其中,所述插件包括模块、回调、驱动、模块链和业务状态机。具体的,如图2所示,加载器101包括:配置解析器组件1011,用于解析模块、回调、驱动、模块链、业务状态机的相关配置并验证;插件加载器组件1012,用于根据所述配置解析器的解析结果,实例化分别具有统一接口的模块、回调、驱动的相关插件;服务集成和业务加载器组件1013,用于根据所述配置解析器的解析结果,实例化分别具有统一接口的模块链和业务状态机。其中,所述模块是对与所述多个服务对应的硬件或软件组件的抽象;所述回调用于实现所述模块中的各种数据处理;所述驱动用于包装供应商的产品特性及与操作系统相关的成分,用于管理底层驱动封装实例,或对多个服务的统一控制;所述模块链用于管理相互之间有数据传输处理逻辑关系的模块,描述并固化模块间的数据和控制的传递及调用顺序,将所述模块按照链表的形式串接起来;所述业务状态机用于描述业务、业务状态及业务状态之间的切换条件,并引用相关的多个服务。所述统一接口对应于模块、回调、驱动和模块链分别为模块接口、回调接口、驱动接口和模块链接口,这些接口是预先定义的,通过预先定义的接口将所述多个服务分别包装实现为对应的模块、模块链、回调和驱动,同时也会生成相应的配置信息,此外,预先通过设计器设计出业务状态机,并导出业务状态机配置信息。可移植软件平台通过加载并解析这些配置信息,根据解析结果创建所述模块、回调、驱动和模块链以及业务状态机的实例,运行所述实例以便实现相应的软件服务。业务运行与控制器组件102,用于运行实例化的业务状态机,控制业务状态机中的业务流程,并通过所述统一接口调用所述业务流程中引用的多个服务。如前所述,业务状态机是预先利用设计器根据具体的业务流程设计的,业务具有一定的业务流程或业务状态,实现相应的业务要引用多个相关软\硬件服务,实例化的业务状态机表示某一个具体的业务,通过业务运行与控制器组件102运行该实例化的业务状态机,实现对其中业务流程的控制,并通过所述统一接口调用所述业务流程中引用的多个服务,从而实现具体的服务和业务。服务集成与控制器组件103,用于通过调用所述模块、回调、驱动和模块链,实现运行并控制所述多个服务。具体的,由于模块是对与所述多个服务对应的硬件或软件组件的抽象,模块链是将模块按照链表的形式串接起来,而且其中,回调用于实现所述模块中的各种数据处理,驱动用于管理底层驱动封装实例,或对多个服务的统一控制。因此,实现某一服务或多个服务,是通过调用所述模块、回调、驱动和模块链来实现运行与控制的。优选的,可移植软件平台还包括操作系统和硬件抽象层组件,用于屏蔽操作系统和硬件的差异,以提供软件平台的可移植性。具体的,操作系统和硬件抽象层组件通过标准C++及boost等开源库实现操作系统和硬件抽象,提供高性能的、支持Linux/Windows/Android等主流操作系统平台。在一种具体的实施方式中,可移植软件平台自底向上划分为操作系统和硬件抽象层、框架层和平台API(ApplicationProgrammingInterface,应用程序编程接口)层,而公共帮助层为前述各层提供服务,此外,还提供平台SDK(SoftwareDevelopmentKit,软件开发工具包)服务于开发者。其中,操作系统和硬件抽象层屏蔽操作系统和硬件的差异;框架层包含加载器组件、业务运行与控制器组件、服务集成与控制器组件,加载配置、运行与控制业务状态机和服务;平台API是外部(平台消费者)与平台通信并获取服务的接口;平台SDK提供模块、回调、驱动等接口文档,模块、回调、驱动、模块链、业务状态机配置文件模板,平台插件开发示例等,服务开发者据此可以开发服务。本专利技术实施例通过加载器、业务本文档来自技高网...
用于快速完成定制业务的可移植软件平台、方法和机器人

【技术保护点】
一种用于快速完成定制业务的可移植软件平台,其特征在于,包括:加载器,用于解析具有统一接口的插件的配置信息,根据解析结果实例化所述插件,其中,所述插件包括模块、回调、驱动、模块链和业务状态机;业务运行与控制器组件,用于运行实例化的业务状态机,控制业务状态机中的业务流程,并通过所述统一接口调用所述业务流程中引用的多个服务;服务集成与控制器组件,用于通过调用所述模块、回调、驱动和模块链,实现运行并控制所述多个服务。

【技术特征摘要】
1.一种用于快速完成定制业务的可移植软件平台,其特征在于,包括:加载器,用于解析具有统一接口的插件的配置信息,根据解析结果实例化所述插件,其中,所述插件包括模块、回调、驱动、模块链和业务状态机;业务运行与控制器组件,用于运行实例化的业务状态机,控制业务状态机中的业务流程,并通过所述统一接口调用所述业务流程中引用的多个服务;服务集成与控制器组件,用于通过调用所述模块、回调、驱动和模块链,实现运行并控制所述多个服务。2.根据权利要求1所述的可移植软件平台,其特征在于,所述加载器包括:配置解析器组件,用于解析模块、回调、驱动、模块链、业务状态机的相关配置并验证;插件加载器组件,用于根据所述配置解析器的解析结果,实例化分别具有统一接口的模块、回调、驱动的相关插件;服务集成和业务加载器组件,用于根据所述配置解析器的解析结果,实例化分别具有统一接口的模块链和业务状态机。3.根据权利要求1所述的可移植软件平台,其特征在于,所述模块是对与所述多个服务对应的硬件或软件组件的抽象;所述回调用于实现所述模块中的各种数据处理;所述驱...

【专利技术属性】
技术研发人员:王明高张晓李月祥史文华许揽月董洪乾金成哲
申请(专利权)人:上海棠棣信息科技股份有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1