机器人系统的控制方法和装置的制作方法

文档序号:2356667阅读:316来源:国知局
专利名称:机器人系统的控制方法和装置的制作方法
技术领域
本发明涉及一种控制机器人系统的方法背景技术
工业机器人经常使用嵌入式控制器控制其移动和运动。传统的嵌入式机器人控制器一般采用简易引导加载程序的方法。
当简易引导加载程序的方法中的一些控制机器人的应用程序发生问题时,不容易仅通过重新启动有问题的应用程序的方式解决问题。因此,无论发生多少小的错误,都需要重新启动整个嵌入式控制器以重新启动引导加载程序,从而解决此类问题。
此外,在传统的引导加载程序系统中,在运行多个应用程序的环境中很难管理每个应用程序的进程。
因此,需要开发一种用于控制机器人系统的方法和装置,以有效地管理多个应用程序并快速对错误作出反应。发明内容
技术问题
本发明提供了一种使用运行时间系统 有效管理嵌入式机器人系统的方法及其装置。
技术方案
依照本发明的一个方面,提供了一种控制机器人系统的装置,其配置成可通过使用嵌入所述机器人系统的主控制器控制所述机器人系统。根据本发明的一个实施例,所述主控制器可包括运行时间单元;存储单元,其配置成存储用以执行运行时间的运行时间代码、运行时间符号表以及用于实现所述机器人系统指定功能的应用代码;操作单元,其配置成进行用以执行所述运行时间的操作并控制用以控制所述机器人系统的信号流;以及通信单元,其配置成与所述机器人系统的主机进行通信。所述运行时间单元可包括应用加载器模块,其配置成加载所述应用代码;以及应用程序接口模块,其配置成执行所加载的应用程序代码。
所述运行时间单元还可包括控制器形状管理模块,其配置成识别嵌入所述机器人系统的从控制器并动态管理所述机器人系统的系统信息配置。
所述运行时间单元还可包括数据记录器模块,其配置成根据运行时间的操作生成日志数据。
所述应用程序接口模块可通过使用所述机器人系统的操作系统的系统调用执行所述应用代码,且执行所述应用代码所引用的参数可利用控制机器人系统的所述装置的注册表进行转移。
依照本发明的另一个方面,提供了一种使用嵌入机器人系统的主控制器控制所述机器人系统的方法。根据本发明的一个实施例,所述方法可包括使用配置在所述机器人系统的引导加载程序对所述主控制器进行初始化;通过加载存储于所述主控制器存储空间中的运行时间执行代码来执行运行时间;并加载和执行存储于所述主控制器存储空间中的应
用程序。所述方法还可包括,在执行所述运行时间后,根据所述主控制器的操作生成日志数据。所述机器人系统还可包括从控制器,且所述方法还可包括,在执行所述运行时间后,动态管理所述从控制器以及系统信息的配置。在加载和执行所述应用程序的步骤中,可使用所述机器人系统的操作系统的系统调用,且用于执行所述应用程序的参数可使用所述主控制器的注册表进行转移。依照其他方面,将通过附图、权利要求书和详细说明使人们更好地理解本发明的特点和优势。有益效果根据本发明的一些实施例,可通过执行机器人系统控制中的所述运行时间提高应用程序的管理效率,从而实现所述机器人系统的功能。


图1示出了根据本发明一个实施例的使用运行时间(runtime)的机器人控制系统得以实现的环境。图2示出了本发明一个实施例的使用运行时间的机器人控制系统的配置。图3示出了本发明一个实施例所述的控制器运行时间的配置。图4为显示本发明一个实施例一种使用运行时间控制机器人系统的方法的流程图。图5示出了本发明一个实施例的控制器的运行时间加载操作。图6示出了本发明一个实施例的加载所述控制器应用程序的步骤。图7示出了本发明一个实施例的运行所述控制器应用程序的步骤。图8示出了本发明一个实施例的控制器应用主机接口。图9示出了本发明一个实施例的控制器运行时间中包括的应用加载器的操作。图10示出了本发明一个实施例的控制器运行时间单元的应用程序接口。
具体实施例方式下面结合一些实施例和附图对本发明的一种使用运行时间(runtime)控制机器人系统的方法及其装置作详细说明。然而,这绝不是将本发明限制于某些实施例,且应认识到本发明技术思路和范围所涵盖的所有改变、等价物和替代物都包括于本说明书中。在本发明的说明中,当认为相关已知技术的某些详细说明模糊了本发明的要点时,则可省略此类详细说明。此外,任何相同或相应的元件都将标以相同的附图标记,且不再提供有关其多余的说明。图1示出了本发明一个实施例使用运行时间的机器人控制系统得以实现的环境。参照图1,所述机器人系统100可包括主控制器110、运行时间单元120、第一从控制器130和第二从控制器140。所述主控制器110可与主机150通信以接收用户命令。
所述机器人系统100可包括多个操纵器,其可由所述主控制器110和/或所述从 控制器130、140所控制。
作为所述机器人系统100主要控制器的所述主控制器110可接收源自所述主机 150的所述用户命令,并管理/控制所述从控制器130和140和/或所述操纵器。本发明一 个实施例的主控制器不使用简易引导加载程序的方法,而是采用所述运行时间单元120以 改善所述机器人系统100的管理效率。
所述从控制器130和140可包括固件模块,其中用于控制每个从控制器操作所需 的功能均以固件形式而实现的。从控制器130和140可通过通信单元与主控制器110相连 并由所述主控制器110进行管理。
所述主机150为所述机器人系统100的用户为了控制所述机器人系统100所使用 的终端且可为除计算机之外的各种已知终端的任意一种。所述用户可通过所述主机150访 问所述主控制器110的所述运行时间单元120,从而控制所述机器人系统100。
图2显示了本发明的一个实施例所述的使用运行时间的机器人控制系统的配置。 参照图2,本发明的一个实施例所述的主控制器110可包括操作单元112、存储单元114、通 信单元118和运行时间单元120。
与所述主控制器110的中央处理单元(CPU)对应的所述操作单元112可控制所述 主控制器110内的信号流,并进行用于所述主控制器110所实现功能的物理操作。例如,本 发明一个实施例所述的操作单元112可通过控制所述运行时间单元120进行用于执行运行 时间的操作,并控制所述机器人系统控制装置中的信号流。
作为实现所述主控制器110功能所需数据的存储空间的所述存储单元114可对应 于主控制器中的存储器芯片。具体地,所述存储单元114可存储用以执行运行时间的运行 时间代码、运行时间符号表、用于实现所述机器人系统功能的应用代码、执行应用时所需数 据、以及执行所述应用的结果数据。例如,本发明一个实施例所述的主控制器110的所述存 储单元114可分为随机存储器(RAM) 115和非易失性存储器116。
所述随机存储器115可实现存储所述主控制器110的操作信息的功能。通常,所述 随机存储器115的响应速度比所述非易失性存储器116更快且可在断电时初始化其内容。 所述随机存储器115可根据操纵所述机器人系统100的状态存储各种数据。
即使在断电时仍可维持其内容的所述非易失性存储器116可实现为快闪存储器 等。所述非易失性存储器116可存储运行时间代码、运行时间符号表、用于实现所述机器人 系统功能的应用代码、以及执行应用所产生的应用数据。参照图4至7,下文将说明根据所 述机器人系统100操作步骤而存储于所述存储单元114的数据。
所述通信单元118可与所述机器人系统100的所述主机进行通信。即,所述通信 单元118可在所述主控制器110和所述主机150间进行信号的转移。此外,所述通信单元 118可在所述主控制器110和所述机器人系统100的其它组件(例如所述从控制器、操纵器 等)之间进行通信。可通过各种方式,如TCP(传输控制协议)套接字通信、UDP(用户数据 报协议)通信、TFTP (普通文件传输协议)通信等,实现用于控制所述机器人系统100的信 号的转移,且所述通信单元118可与实施此类通信方式的联网硬件相对应。
组成所述主控制器的其他所需硬件的配置为本发明相关领域内普通技术人员所 熟知,从而可省略其详细说明。参照其他图,下文将详细说明用以控制所述机器人系统100的所述主控制器Iio的操作以及所述运行时间单元120的配置。图3显示了本发明一个实施例所述的所述主控制器110的所述运行时间单元120的配置。参照图3,通过方块图说明可由本发明一个实施例所述的运行时间单元120所实现的功能。然而,所说明的功能仅是为了方便描述和理解,应认识到所述功能可进行不同地细分或与所述运行时间单元120的配置中的2个或更多的其他功能相组合。本发明一个实施例所述的运行时间单元120可包括一个或多个硬件设备驱动器模块310、硬件管理模块、存储器管理模块、通信协议模块、用户命令接口模块、模拟器接口模块、数据记录器模块320、控制器形状管理模块330、应用加载器模块340、应用程序接口模块350和操作系统内核360。所述控制器形状管理模块330可识别嵌入所述机器人系统的从控制器并动态管理系统信息的配置。所述操作系统内核360可根据组件的功能管理所述组件,如通用操作系统的内核
坐寸o所述硬件设备驱动器模块310可支持用于驱动所述主控制器110的硬件组件的驱动器。相应地,所述运行时间单元120的组件可通过所述硬件设备驱动器模块310利用硬件资源,且可通过硬件管理功能和存储器管理功能管理硬件使用的信息。所述数据记录器模块320可收集和记录用以操作控制所述机器人系统100和所述从控制器130和140的所述主控制器的日志数据。这种控制日志数据可发送至所述主机150。所述数据记录器模块320可通过例如TCP/IP (互联网协议)套接字通信等与所述主机交换信息。所述应用加载器模块340可提供符号表加载功能以及应用程序加载功能以实现所述机器人系统100的功能。在这里,所述应用加载器模块340可提供加载由所述应用程序接口模块350所执行的应用程序中的符号表数据值的功能,符号表的数据值所述用户专门准备。此外,通过应用程序加载器执行的应用程序可以通过运行时间的所述应用程序接口调用和使用所述运行时间的功能。下面将参照图9说明所述应用加载器模块340的详细操作。所述应用程序接口模块350可通过使用所述机器人系统100的操作系统的系统调用执行应用代码。此外,执行所述应用代码所引用的参数可使用控制所述机器人系统的装置的注册表进行转移。换句话说,所述应用程序接口模块350是支持API (应用程序界面)的模块,其中API使用所述机器人系统的操作系统提供的系统调用支持应用程序的执行。参照图10,下方将说明应用程序接口的调用和执行。所述用户命令接口模块可提供接收源于所述主机150的用户命令并以实现所述用户命令的结果响应所述主机150的功能。所述模拟器接口模块可提供与安装在所述主机150的机器人仿真软件的接口。本发明一个实施例的主控制器110的所述运行时间单元120中,通用异步接收器/发送器(UART)、以太网、IP (互联网协议)、ARP (地址解析协议)、TCP (传输控制协议)、UDP (用户数据报协议)、TFTP (普通文件传输协议)等可支持通信协议。图4为显示本发明一个实施例所述的一种控制机器人系统的方法的流程图。图5示出了本发明一个实施例所述的控制器的运行时间加载操作。图6示出了本发明一个实施例所述的加载所述控制器应用程序的步骤。图7示出了本发明一个实施例所述的运行所述 控制器应用程序的步骤。
在使用引导加载程序(S410)引导嵌入式控制器的步骤中,使用所述引导加载程 序初始化所述主控制器110。即,在这个步骤中,初始化所述主控制器110和/或所述从控 制器130以控制所述机器人系统100。通过这个初始化程序,运行时间可准备好加载所述主 控制器110。通过所述引导加载程序初始化所述机器人系统是本领域普通技术人员所熟知 的技术,因而在此不再赘述。
在加载运行时间的步骤中(S420),在通过所述引导加载程序对所述机器人系统 100的初始化完成后,则准备启动所述运行时间单元120。参照图5,可通过将运行时间代 码从所述主控制器Iio的非易失性存储器116加载到所述随机存储器115中来实现所述运 行时间的加载步骤。一旦通过所述引导加载程序初始化和引导所述主控制器110,所述引 导装载程序即可加载存储于所述非易失性存储器116和随机存储器115中的运行时间执行 代码。一旦通过所述引导装载程序从快闪存储器加载所述运行时间执行代码,所述引导装 载程序就移交所述控制器的控制权并执行所述运行时间。换句话说,在这个步骤中,通过加 载所述主控制器110的所述存储器中的所述运行时间执行代码来执行所述运行时间单元 120。一旦执行所述运行时间,则会根据编程在所述运行时间执行代码中的初始化信息生成 运行时间数据。
在加载应用程序的步骤(S430)中,使用所述运行时间单元120的所述应用加载器 模块340加载所述机器人系统的应用程序。即,在执行所述主控制器110的所述运行时间 单元120的同时,加载用于实现所述机器人系统功能的所述应用程序。参照图6,可通过加 载所述随机存储器115中的所述运行时间符号表和所述应用程序(应用代码1,应用代码 N)以进行加载所述应用程序的步骤。所述主机150的用户可通过所述运行时间单元120校 正所述运行时间符号表。
在执行所述应用程序的步骤(S440)中,使用所述运行时间单元120的所述应用 程序接口模块350执行所述应用程序。即,通过执行所述加载的应用程序实现所述机器人 系统100的功能。在这里,所述应用程序接口模块350使用所述机器人系统100的所述操 作系统的系统调用,且可使用所述主控制器110的注册表转移用以执行所述应用程序的参 数。一旦完成了所述应用代码的加载,所述运行时间单元120则动态生成进程并执行所述 应用代码。在这里,所述应用代码可根据所述初始化信息生成应用数据,如有必要,可参阅 所述运行时间符号表以校正所述应用数据。可通过所述操作系统以单独进程生成和管理每 一应用程序。同样地,所述主控制器110的所述运行时间单元120可同时加载并执行多个 应用程序。
图8显示了本发明一个实施例的控制器应用主机接口。
如上所述,所述主控制器110的所述运行时间单元120可通过应用-主机接口与 所述主机150交换信息。如图8所示,所述应用-主机接口可包括用户命令接口模块、模 拟器接口模块、所述控制器形状管理模块330、存储器文件系统模块和所述应用加载器模块 340。
所述用户命令接口模块可通过TCP套接字通信与所述主机交换数据。当所述用 户通过所述主机150的用户命令窗口输入机器人控制命令时,所述主控制器110的所述应用-主机接口的所述用户命令接口模块可接收并执行所述机器人控制命令并在所述用户命令窗口中回复执行结果。所述模拟器接口模块可通过TCP套接字通信与所述主机的机器人模拟器交换数据。所述存储器文件系统模块可通过TFTP通信连接至所述主机的TFTP控制台窗口。所述用户可通过TFTP命令从/向所述主机110下载或上传文件并更改和/或删除文件名。可通过数据记录器客户端监控上述用户命令接口模块、模拟器接口模块、控制器形状管理模块330、存储器文件系统模块、应用加载器模块340和应用程序接口模块350的操作。所述监控信息可通过UDP套接字通信发送至所述主机150的数据记录器服务器。图9示出了本发明一个实施例所述的控制器运行时间中包括的所述应用加载器的操作。如上所述,所述应用加载器模块340可提供所述应用程序加载功能和所述符号表加载功能。在这里,可通过用户命令或以文件形式配置所述运行时间符号表,从而可使其存储于所述快闪存储器中。此外,可由应用程序开发员将所述应用程序以ELF(可执行连接格式)文件形式存储于所述快闪存储器中。应用程序的所述ELF文件形式可包括所述程序的代码段、数据段和附加段。一旦执行所述应用加载器模块340,则可加载所述运行时间符号表。一旦加载所述运行时间符号,则可通过分析源自所述ELF文件的程序头提取每一程序段,且所提取的程序段可加载至所述随机存储器115。当完成了所述应用程序的加载时,所述应用加载器模块340可搜索已加载的运行时间符号表以找到与所述应用程序的符号数据相匹配的符号数据,并将所匹配的符号数据载入所述应用程序的数据区中。一旦加载所述应用程序和所述符号表,所述运行时间单元120即可调用所述操作系统的系统调用以生成新的应用进程并执行所述应用程序。在从所述操作系统给所述应用程序分配新的进程并执行所述应用程序之后,所述应用程序可生成并执行所述程序中单独的线程。图10示出了本发明一个实施例所述的控制器运行时间的所述应用程序接口。由所述主控制器110的运行时间单元120提供的所述应用程序接口模块350可包括运动AP1、POSIX AP1、通信AP1、控制器API和输入/输出API。可通过所述操作系统提供的系统调用来调用所述运行时间单元120的所述应用程序接口(API),从而执行用于实现所述机器人系统100功能的各种应用程序。根据API请求而转移的参数以及与所调用API相应的系统调用号可复制到所述主控制器110的所述系统注册表中。一旦通过调用所述应用程序中的API进行系统调用,则可能发生软件中断,从而使所述操作系统可接收和处理所述系统调用。—旦所述应用程序发生软件中断,所述操作系统的软件中断处理器中的系统调用处理器则按照在所述操作系统的系统调用表中注册的相关系统调用的处理器地址(API地址)调用并执行所请求的API。在这里,可通过接收存储于所述主控制器110中的所述系统注册表中的API请求参数对所请求的API进行处理。一旦通过所述软件中断和所述系统调用来调用和执行所述API,则可通过所述软件中断处理器将执行结果返回到所述应用程序。至此,为了方便说明和理解本发明,描述了本发明的某些实施例。但是,应认识到对于本发明相关领域内普通技术人员而言,本发明的改变可能并未背离本发明的基本特 征。因此,应将所披露的实施例理解成描述性观点而非限制性观点。应根据权利要求书而 非上述说明来定义本发明的范围,且所有在等效范围内的差异都应包括在本发明范围内。
权利要求
1.一种控制机器人系统的装置,其配置成利用嵌入所述机器人系统的主控制器控制所述机器人系统,其中所述主控制器包括 运行时间单元; 存储单元,其配置成存储用以执行运行时间的运行时间代码、运行时间符号表、及用于实现所述机器人系统指定功能的应用代码; 操作单元,其配置成进行用以执行所述运行时间的操作并控制用以控制所述机器人系统的信号流;以及 通信单元,其配置成与所述机器人系统的主机进行通信, 其中,所述运行时间单元包括 应用加载器模块,其配置成加载所述应用代码;以及 应用程序接口模块,其配置成执行加载的所述应用程序代码。
2.根据权利要求1所述的装置,其中,所述运行时间单元还包括控制器形状管理模块,其配置成识别嵌入所述机器人系统的从控制器并动态管理所述机器人系统的系统信息配置。
3.根据权利要求1所述的装置,其中,所述运行时间单元还可包括数据记录器模块,其配置成从所述运行时间的操作生成日志数据。
4.根据权利要求1所述的装置,其中,所述应用程序接口模块配置成使用所述机器人系统的操作系统的系统调用来执行所述应用代码,且执行所述应用代码所引用的参数是利用所述控制机器人系统的装置的注册表进行传送的。
5.一种使用嵌入机器人系统的主控制器控制所述机器人系统的方法,所述方法包括 使用配置在所述机器人系统的引导加载程序对所述主控制器进行初始化; 通过加载存储于所述主控制器的存储空间中的运行时间执行代码以执行运行时间;以及 加载和执行存储于所述主控制器的存储空间中的应用程序。
6.根据权利要求5所述的方法,所述方法还可包括,在执行所述运行时间后,从所述主控制器的操作生成日志数据。
7.根据权利要求5所述的方法,其中,所述机器人系统还包括从控制器,且 所述方法还包括,在执行所述运行时间后,动态管理所述从控制器以及系统信息的配置。
8.根据权利要求5所述的方法,其中,在加载和执行所述应用程序的步骤中,使用所述机器人系统的操作系统的系统调用,且用于执行所述应用程序的参数是利用所述主控制器的注册表进行传送的。
全文摘要
本发明公开了一种机器人系统控制方法及其装置。根据本发明的一个实施例的用以控制机器人系统的方法包括步骤使用配置在所述机器人系统的引导加载程序对所述主控制器进行初始化;通过加载存储于所述主控制器存储空间中的运行时间执行代码执行运行时间;并加载和执行存储于所述主控制器存储空间中的应用程序。本发明的实施例允许更有效地管理所述应用程序以实现所述机器人系统的功能。
文档编号B25J9/22GK103003033SQ201080065537
公开日2013年3月27日 申请日期2010年4月23日 优先权日2010年4月23日
发明者朴泰镇, 河映列, 朴相东, 尹晟珉, 金玟秀, 金在勋 申请人:三星重工业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1