发明内容
本发明目的在于提供一种基于现场总线的分布式机器人控制系统,利用模块化的结构并借助现场总线组成分布式的机器人控制系统,以解决现有机器人控制系统存在的结构相对封闭、复杂等缺陷。
本发明是通过以下技术方案实现的:
基于现场总线的分布式机器人控制系统,包括主控制器、伺服驱动控制器、输入输出模块、安全模块、示教器,主控制和伺服驱动控制器之间通过现场总线1连接,伺服驱动控制器和输入输出模块之间通过现场总线2连接,输入输出模块和安全模块之间通过现场总线3连接,示教器和主控制之间通过现场总线4连接。
进一步,所述主控制器的主要功能是根据用户输入的动作指令生成机器人各个轴对应电机运动所需的位置、速度和力矩参考值,根据机器人各个轴对应电机的实际位置和速度动态生成机器人末端在特定坐标系下的位置和速度信息,根据用户输入的指令生成数字或模拟信号量的输出参考值。
进一步,所述伺服驱动控制器的主要功能是根据主控制器计算的位置、速度和力矩参考值控制其所连接的机器人各个轴对应电机以特定的力矩和速度到达指定位置,同时将伺服驱动控制器和电机的状态以及其对应电机的实际位置、速度和力矩反馈给主控制器。
进一步,所述输入输出模块的主要功能是根据主控制器计算的数字或模拟信号量的输出参考值控制对应的数字或模拟信号量达到期望的设定值,同时将各个通道的实际信号输入值反馈给主控制器。
进一步,所述安全模块的主要功能是提供安全的输入通道来检测机器人系统安全相关的信号量:急停输入、电机刹车状态、伺服驱动控制器的使能状态、机器人各个轴对应电机的实际位置和速度信息,提供安全的输出通道来控制电机的刹车、伺服驱动控制使能以及伺服驱动控制母线电压的通断,提供可定制的安全逻辑,该安全逻辑根据输入的安全信号量来控制安全输出信号从而使整个机器人控制系统满足机器安全的相关标准。
进一步,所述示教器是一种人机交换接口,其提供接口供用户进行动作、数字或模拟输入、输出以及两者的混合编程,提供接口供用户在手动安全模式下慢速移动机器人,通过接口供用户通过示教方式获取机器人当前位置信息并生成期望的路径,提供接口供用户获取并监测机器人控制系统及其各个子模块的详细状态和报警信息。
进一步,所述现场总线1、现场总线2、现场总线3、现场总线4均采用相同机制,其连接介质为以太网线,参照ISO标准通信模型,其物理层、链入层、网络层和传输层采用CAN协议或EtherCAT等现场总线协议定义的标准,会话层及其之上采用CANOPEN协议定义的标准。
进一步,该控制系统的主控制器包括路径规划模块、通信模块1、通信模块2、指令队列、参考值缓存区一和反馈值缓存区一,路径规划模块以特定周期从指令队列中提取指令,从参考值缓存区一提取当前机器人各个轴对应电机的实际位置、速度和力矩信息,根据动作指令实时生成机器人各个轴对应电机的位置、速度和力矩参考值并存入参考值缓存区一,根据输入输出指令实时生成各个数字或模拟信号量对应的输出值并存入参考值缓存区一,实时生成用户所关注的机器人末端在特定坐标系下的位置速度信息并存入反馈值缓存区一中,通信模块1以特定周期从参考值缓存区一中提取参考值发送给伺服驱动控制器和输入输出模块同时收取伺服驱动控制器和输入输出模块的反馈值并存入反馈值缓存区一,通信模块2以特定周期接收示教器发送过来的指令并从反馈值缓存区一中提取反馈值发送给示教器。
进一步,该控制系统的伺服驱动控制器包括参考值缓存区二、位置速度力矩控制模块、反馈值缓存区二和通信模块,位置速度力矩控制模块以特定周期从参考值缓存区二中提取其对应电机的位置、速度和力矩参考值,从反馈值缓存区二中提取其对应电机的实际位置、速度和力矩反馈值,并应用PID(比例、积分和微分)控制算法控制其对应电机以参考的速度和力矩到达参考的位置,通信模块以特定周期接收主控制器发送过来的位置、速度和力矩参考值并存入参考值缓存区二,以特定周期从反馈值缓存区二中提取实际的电机位置、速度和力矩反馈值并发送给主控制器。
进一步,该控制系统的安全模块包括安全输入单元、安全输出单元和安全逻辑单元,安全逻辑单元以特定周期从安全输入单元获取机器人系统安全相关的输入信号量:如急停输入、电机刹车状态、伺服驱动控制器的使能状态、机器人各个轴对应电机的实际位置和速度信息,并按用户定制的安全逻辑将机器人系统安全相关的输出信号量:电机的刹车、伺服驱动控制使能以及伺服驱动控制母线电压的通断输出到安全输出单元。
本发明的工作原理为:用户通过示教器生成程序,该程序包括期望的路径及其对应的输入输出,用户通过示教器控制整个控制系统进入运行状态。当整个控制系统进入运行状态时,各个模块动作如下:
(1)示教器以特定周期解析用户程序并提取其中的动作或输入、输出指令并通过现场总线4将指令实时发送给主控制器;
(2)主控制器以特定周期解析接收的动作或输入、输出指令,实时生成机器人各个轴对应电机的位置、速度和力矩参考值以及各个数字或模拟信号量对应的输出值,实时接收伺服驱动控制器、输入输出模块的反馈值和状态信息,实时生成并发送给示教器用户所关注的机器人末端在特定坐标系下的位置速度信息及整个系统的状态和报警信息;
(3)伺服驱动控制器以特定周期解析接收其连接的机器人各个轴对应电机的位置、速度和力矩参考值,实时控制电机以期望的速度和力矩到达指定位置,实时采集并发送给主控制器其连接的机器人各个轴对应电机的位置、速度和力矩;
(4)输入输出模块以特定周期解析接收的各个信号对应输出值并输出到该输入输出模块对应的通道,实时采集并发送给主控制器各个输入信号量的输入值;
(5)安全模块以特定周期监测其安全输入信号量并按预先设定好的安全逻辑实时控制其安全输出信号量;
(6)现场总线1、现场总线2、现场总线3、现场总线4分别为上述模块提供实时通信保障,其中基于CAN的现场总线可以提供最高1M的带宽,基于EtherCAT的现场总线可以提供最高1000M的带宽,总线吞吐量约为带宽的20%。
有益效果:本发明机器人控制系统基于开放的现场总线协议,分布式的功能模块,使得整个系统具有开放、结构简单等特点,基于该架构,用户可以围绕主控制器并根据自身需求选择基于CAN或EtherCAT等总线的伺服驱动器,输入输出模块以及安全模块,从而充分掌握裁剪成本和性能自由。
实施例:
如图1所示,机器人控制系统包括主控制器、伺服驱动控制器、输入输出模块、安全模块和示教器,主控制和伺服驱动控制器之间通过现场总线1连接,伺服驱动控制器和输入输出模块之间通过现场总线2连接,输入输出模块和安全模块之间通过现场总线3连接,示教器和主控制之间通过现场总线4连接。
如图2所示,该控制系统的主控制器包括路径规划模块、通信模块1、通信模块2、指令队列、参考值缓存区一和反馈值缓存区一,路径规划模块以特定周期从指令队列中提取指令,从参考值缓存区一提取当前机器人各个轴对应电机的实际位置、速度和力矩信息,根据动作指令实时生成机器人各个轴对应电机的位置、速度和力矩参考值并存入参考值缓存区一,根据输入输出指令实时生成各个数字或模拟信号量对应的输出值并存入参考值缓存区一,实时生成用户所关注的机器人末端在特定坐标系下的位置速度信息并存入反馈值缓存区一中,通信模块1以特定周期从参考值缓存区一中提取参考值发送给伺服驱动控制器和输入输出模块同时收取伺服驱动控制器和输入输出模块的反馈值并存入反馈值缓存区一,通信模块2以特定周期接收示教器发送过来的指令并从反馈值缓存区一中提取反馈值发送给示教器。
如图3所示,该控制系统的伺服驱动控制器包括参考值缓存区二、位置速度力矩控制模块、反馈值缓存区二和通信模块,位置速度力矩控制模块以特定周期从参考值缓存区二中提取其对应电机的位置、速度和力矩参考值,从反馈值缓存区二中提取其对应电机的实际位置、速度和力矩反馈值,并应用PID(比例、积分和微分)控制算法控制其对应电机以参考的速度和力矩到达参考的位置,通信模块以特定周期接收主控制器发送过来的位置、速度和力矩参考值并存入参考值缓存区二,以特定周期从反馈值缓存区二中提取实际的电机位置、速度和力矩反馈值并发送给主控制器。
如图4所示,该控制系统的安全模块包括安全输入单元、安全输出单元和安全逻辑单元,安全逻辑单元以特定周期从安全输入单元获取机器人系统安全相关的输入信号量:如急停输入、电机刹车状态、伺服驱动控制器的使能状态、机器人各个轴对应电机的实际位置和速度信息,并按用户定制的安全逻辑将机器人系统安全相关的输出信号量:电机的刹车、伺服驱动控制使能以及伺服驱动控制母线电压的通断输出到安全输出单元。
如图5所示,该控制系统的现场总线1、现场总线2、现场总线3、现场总线4、主控制器的通信模块1、主控制器的通信模块2和伺服驱动控制器的通信模块的物理层、数据链入层、网络层、传输层均采用CAN协议或EtherCAT现场总线协议定义的标准,会话层、表示层、应用层均采用CANOPEN协议标准,其中OSI模型,即开放式通信系统互联参考模型(OpenSystemInterconnectionReferenceModel),是国际标准化组织提出的一个试图使各种计算机在世界范围内互连为网络的标准框架,简称OSI。
基于现场总线的实时性和开放性、职责分明的功能模块,用户可以根据自身需求搭建分布式的控制系统,本实施例中显示了一个完整的机器人控制系统,针对某些特殊应用场合,用户还可以选择性的将安全模块、示教器、输入输出模块从控制系统中剥离,从而组成低成本的最小机器人控制系统。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。