一种在预设嵌入式系统中实现脚本操作的系统技术方案

技术编号:13506943 阅读:30 留言:0更新日期:2016-08-10 15:49
本发明专利技术公开了一种在预设嵌入式系统中实现脚本操作的系统,应用于智能机器人,所述系统包括:虚拟机,用以解释脚本并执行;线程池,用以存储与关联脚本任务的所述虚拟机的实例;管理单元,连接线程池和所述虚拟机,用以将所述虚拟机根据接收到的所述脚本任务实例化后存储入所述线程池,并根据预设策略对所述线程池中的线程进行相应的调度;全局表,连接所述线程池,用以存储因所述管理单元调度而打断的脚本任务对应的所述线程的识别信息;匹配单元,连接所述管理单元和所述全局表,用以本局脚本任务于所述全局表中查询是否存在匹配的记录,如存在时通知所述管理单元调度所述记录中相应的线程执行。采用全局表解决了机器人在交互中的上下文问题。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种在预设嵌入式系统中实现脚本操作的系统,应用于智能机器人,所述系统包括:虚拟机,用以解释脚本并执行;线程池,用以存储与关联脚本任务的所述虚拟机的实例;管理单元,连接线程池和所述虚拟机,用以将所述虚拟机根据接收到的所述脚本任务实例化后存储入所述线程池,并根据预设策略对所述线程池中的线程进行相应的调度;全局表,连接所述线程池,用以存储因所述管理单元调度而打断的脚本任务对应的所述线程的识别信息;匹配单元,连接所述管理单元和所述全局表,用以本局脚本任务于所述全局表中查询是否存在匹配的记录,如存在时通知所述管理单元调度所述记录中相应的线程执行。采用全局表解决了机器人在交互中的上下文问题。【专利说明】一种在预设嵌入式系统中实现脚本操作的系统
本专利技术涉及通信
,尤其涉及一种在预设嵌入式系统中实现脚本操作的系 统。
技术介绍
随着机器人的应用领域的扩大和电子技术的高速发展,机器人在人们生活中的应 用逐渐增多,传统的机器人普遍采用面向过程的编程思想进行编程。所谓面向过程指的是 一种以过程为中心的编程思想。面向过程就是分析出解决问题所需要的步骤,然后用函数 把这些步骤一步一步实现,使用的时候一个一个依次调用。目前应用程序已经从命令行界面发展到窗口界面。因为应用程序是基于面向过程 开发的,所以存在灵活性差以及不易维护等问题,就像传统的图形交互方式,窗口的前进和 后退是有限并且一定的。由于程序运行时存在上下文关联性(所谓上下文关联性指的是交 互时,用户的指令是存在上下文的),程序编写者需要编写大量的if…else…判断上下文 来改变程序流,且相同的交互方式可能在不同的上下文中对应不同的结果。如果采用传统 编程思想,这些上下文将引发大量的对象耦合,会毁灭掉面向对象程序设计的优势。而且 传统的嵌入式开发流程较长,程序编写完成后需要经过编译,部署,烧写等过程才能验证功 能,如果系统复杂,则这个过程将消耗大量的时间和金钱。 综上所述,传统可执行特定任务的可编程多功能专用机器人功能局限、灵活性差 且不易维护,已经无法满足人们日益增长的需求。
技术实现思路
针对传统的嵌入式开发流程存在的上述问题,现提供一种旨在实现可直调用功能 单元,灵活性强、独占性强且容易维护的智能机器人。 具体技术方案如下: -种在预设嵌入式系统中实现脚本操作的系统,应用于智能机器人,包括: 虚拟机,用以解释脚本并执行; 线程池,用以存储与关联脚本任务的所述虚拟机的实例; 管理单元,连接所述线程池和所述虚拟机,用以将所述虚拟机根据接收到的所述 脚本任务实例化后存储入所述线程池,并根据预设策略对所述线程池中的线程进行相应的 调度; 全局表,连接所述线程池,用以存储因所述管理单元调度而打断的脚本任务对应 的所述线程的识别信息; 匹配单元,连接所述管理单元和所述全局表,用以本局脚本任务于所述全局表中 查询是否存在匹配的记录,如存在时通知所述管理单元调度所述记录中相应的线程执行。 优选的,还包括: 执行单元,连接所述线程池,用以根据所述管理单元的调度执行所述线程池中相 应的所述线程。 优选的,还包括: 脚本运行单元,用以执行接收到的脚本任务; 接口单元,连接所述脚本运行单元和所述管理单元,用以将所述脚本任务发送至 所述管理单元。 优选的,所述脚本运行单元和所述接口单元由运行于JAVA虚拟机的JAVA原生接 口形成。 优选的,所述预设策略包括先进先出策略和先进后出策略。 优选的,所述全局表采用哈希表。 优选的,还包括通讯单元,连接所述执行单元,所述通讯单元读取所述执行单元执 行所述线程的任务信息和/或执行结果,并发送至一远程服务器。 上述技术方案的有益效果: 通过线程池可提高智能机器人在复杂环境下针对突发状况的完备性;采用全局表 解决了机器人在交互中的上下文问题,可根据用户的上下文轨迹执行相应的操作,采用管 理单元可以维护机器人的独占性硬件,从而保证脚本任务执行的正确性,且可直调用功能 单元,灵活性强且容易维护。【附图说明】 图1为本专利技术所述智能机器人的一种实施例的模块图。【具体实施方式】 下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于 本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其 他实施例,都属于本专利技术保护的范围。 需要说明的是,在不冲突的情况下,本专利技术中的实施例及实施例中的特征可以相 互组合。 下面结合附图和具体实施例对本专利技术作进一步说明,但不作为本专利技术的限定。 如图1所示,一种在预设嵌入式系统中实现脚本操作的系统,应用于智能机器人, 包括: 虚拟机7,用以解释脚本并执行; 线程池6,用以存储与关联脚本任务的虚拟机7的实例; 管理单元5,连接线程池6和虚拟机7,用以将虚拟机7根据接收到的脚本任务实 例化后存储入线程池6,并根据预设策略对线程池6中的线程进行相应的调度; 全局表3,连接线程池6,用以存储因管理单元5调度而打断的脚本任务对应的线 程的识别?目息; 匹配单元2,连接管理单元5和全局表3,用以本局脚本任务于全局表3中查询是 否存在匹配的记录,如存在时通知管理单元5调度记录中相应的线程执行。 管理单元5接收到一条脚本任务后,需将该条脚本任务实例化后存储入线程池6 中,根据预设策略对线程池6中的线程进行相应的调度,存在如下情况: 若当前脚本任务的优先级高于线程池6中其他任务的优先级时,则打断正在执行 的脚本任务对应的线程,将该线程的状态存入线程池6中,且将该线程的识别信息存入全 局表3中,同时管理单元5存储被打断的脚本任务,执行优先级高的线程; 在预设的时间间隔判断管理单元5是否接收到预设系统消息,预设系统消息为系 统预设的若干个具有优先级的系统消息,该系统消息的优先级高于正在执行线程的优先 级,当管理单元5接收到系统消息后,需打断正在执行的脚本任务对应的线程,将该线程的 状态存入线程池6中,且将线程的识别信息存入全局表3中,同时管理单元5存储被打断的 脚本任务,执行系统消息; 当被打断的脚本任务再次发送至管理单元5后,通过匹配单元2对在全局表3中 查询是否存在于本局脚本任务匹配的记录,如存在则通知管理单元5调度记录中相应的线 程执行,即恢复上次一被打断时的状态继续执行。 管理单元5可以用来维护智能机器人的硬件功能,因为在智能机器人中硬件具有 独占性的特点。例如机械机构,这类硬件不允许多个脚本任务同时调用。为了防止这种行 为的发生,管理单元5会对程序流的执行进行调度。采用管理单元5可以维护智能机器人 的独占性硬件,保证程序执行的正确性。 在本实施例中通过线程池6可提高智能机器人在复杂环境下针对突发状况的完 备性;采用全局表3解决了机器人在交互中的上下文问题,可根据用户的上下文轨迹执行 相应的操作,采用管理单元5可以维护机器人的独占性硬件,从而保证脚本任务执行的正 确性,且可直调用功能单元。 在优选的实施例中,还包括: 执行单元8,连接线程池6,用以根据管理单元5的调度执行线程池6中相应的线 程。 在本实施例中执行单元8可根据管理单元5的调度执行的相应的线程,以保证脚 本任务执本文档来自技高网
...

【技术保护点】
一种在预设嵌入式系统中实现脚本操作的系统,应用于智能机器人,其特征在于,包括:虚拟机,用以解释脚本并执行;线程池,用以存储与关联脚本任务的所述虚拟机的实例;管理单元,连接所述线程池和所述虚拟机,用以将所述虚拟机根据接收到的所述脚本任务实例化后存储入所述线程池,并根据预设策略对所述线程池中的线程进行相应的调度;全局表,连接所述线程池,用以存储因所述管理单元调度而打断的脚本任务对应的所述线程的识别信息;匹配单元,连接所述管理单元和所述全局表,用以本局脚本任务于所述全局表中查询是否存在匹配的记录,如存在时通知所述管理单元调度所述记录中相应的线程执行。

【技术特征摘要】

【专利技术属性】
技术研发人员:施家琪
申请(专利权)人:芋头科技杭州有限公司
类型:发明
国别省市:浙江;33

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

1