技术领域
[0001] 本
发明涉及机器人控制技术领域,尤其涉及一种机器人的控制系统。
背景技术
[0002] 由于机器人的运动控制系统涵盖多种领域的专业知识,例如伺服驱动、电
力电子、
传感器技术、机械设计、自动控制、信息技术等领域;因此目前需要一种能综合处理各领域的专业知识的
机器人控制系统。
[0003]
现有技术中的机器人控制系统包括下述两类控制系统:
[0004] 第一类控制系统,基于PLC(Programmable Logic Controller,可编程逻辑
控制器),PLC的体系结构封闭,具有功能性强和编程简单的优点,然而各厂家之间
硬件体系不兼容,从而导致编程指令各不相同,进而增加通用化的难度。
[0005] 第二类控制系统,基于PC(personal computer,个人计算机),即将PC机作为硬件平台,并采用运动控制卡来控制机器人各个轴的运动,可以实现对机器人进行复杂的控制功能,并且上、下位关系清楚,然而由于上述控制系统具有强大通讯和
数据处理能力,仅仅只对机器人进行控制而导致功能冗余且成本较高。
[0006] 因此目前急需一种灵活性高,功能丰富和成本低廉的机器人控制系统。
发明内容
[0007] 针对现有技术中存在的上述问题,现提供一种旨在实现成本低和兼容性好的机器人的控制系统。
[0008] 具体技术方案如下:
[0009] 一种机器人的控制系统,其中,控制系统连接外接的机器人,控制系统包括:
[0010]
数字量输入模
块,获取机器人的第一状态信息;
[0011] 模拟量输入模块,获取机器人的第二状态信息;
[0012]
主控制器模块,分别与数字量输入模块和模拟量输入模块,用于根据第一状态信息和第二状态信息输出控制命令;
[0013] 数字量输出模块,与主控制器模块连接,用于将控制命令输出给机器人,以控制机器人的运动状态。
[0014] 优选的,控制系统,其中,还包括:
[0015] 电源模块,分别与主控制器模块、数字量输入模块、模拟量输入模块和数字量输出模块连接,用于提供工作
电压。
[0016] 优选的,控制系统,其中,数字量输入模块包括:
[0017] 数字量输入单元,用于接收机器人上的每个
开关的开断信息;
[0018] 数字量输入处理单元,与数字量输入单元连接,用于对开断信息进行处理,以得到第一状态信息;
[0019] 第一输出单元,与数字量输入处理单元连接,将第一状态信息发送给主控制器模块。
[0020] 优选的,控制系统,其中,机器人设置有多个传感器;
[0021] 模拟量输入模块包括:
[0022] 模拟量输入单元,用于接收每个传感器的传感器信息;
[0023] 模拟量输入处理单元,与模拟量输入单元连接,根据每个传感器信息得到对应的传感器状态,所有传感器状态组合成第二状态信息;
[0024] 第二输出单元,与模拟量输入处理单元连接,将第二状态信息发送给主控制器模块。
[0025] 优选的,控制系统,其中,传感器信息为电压
信号或
电流信号。
[0026] 优选的,控制系统,其中,数字量输出模块包括:
[0027] 第一输入单元,与主控制器模块连接,用于接收控制命令;
[0028] 数字量输出处理单元,与第一输入单元连接,用于根据控制命令查找机器人的控制
位置;
[0029] 数字量输出单元,与数字量输出处理单元连接,用于将控制命令输出给控制位置。
[0030] 优选的,控制系统,其中,主控制器模块采用CPU控
制芯片。
[0031] 优选的,控制系统,其中,数字量输入模块、模拟量输入模块、数字量输出模块均通过一通讯模块与主控制器模块连接。
[0032] 优选的,控制系统,其中,通讯模块采用CAN总线控制器,CAN总线形成在
底板插槽。
[0033] 优选的,控制系统,其中,包括一
软件模块,
软件模块包括:
[0034] 硬件驱动层,用于根据每个硬件模块形成对应的硬件驱动,每个硬件驱动设置有对应的
接口,并将所有接口整合到第一接口中;
[0035] 功能模块层,与硬件驱动层连接,定义复数个需要硬件驱动完成的独立功能单元,每个独立功能单元通过第一接口调用一个或多个硬件驱动来完成对应的功能,每个独立功能单元设置有对应的接口,并将所有接口整合到第二接口中;
[0036] 业务模块层,与功能模块层连接,定义复数个需要独立功能单元完成的业务单元,每个业务单元通过第二接口调用一个或多个独立功能单元来完成对应的业务,每个业务单元设置有对应的接口,并将所有接口整合到第三接口中;
[0037] 应用模块层,与业务模块层连接,通过第三接口调用一个或多个业务单元。
[0038] 上述技术方案具有如下优点或有益效果:通过数字量输入模块、模拟量输入模块、数字量输出模块和主控制器模块执行对应的功能,并且数字量输入模块、模拟量输入模块和数字量输出模块之间互不干扰,以提高控制系统的兼容性,进而降低成本。
附图说明
[0039] 参考所附附图,以更加充分的描述本发明的
实施例。然而,所附附图仅用于说明和阐述,并不构成对本发明范围的限制。
[0040] 图1为本发明机器人的控制系统的实施例的模块示意图;
[0041] 图2为本发明机器人的控制系统的实施例的结构示意图;
[0042] 图3为本发明机器人的控制系统的实施例的数字量输入模块的结构示意图;
[0043] 图4为本发明机器人的控制系统的实施例的模拟量输入模块的结构示意图;
[0044] 图5为本发明机器人的控制系统的实施例的数字量输出模块的结构示意图;
[0045] 图6为本发明机器人的控制系统的实施例的底板插槽的总线排列图;
[0046] 图7为本发明机器人的控制系统的实施例的软件模块的模块示意图。
具体实施方式
[0047] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048] 需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0049] 下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
[0050] 本发明包括一种机器人的控制系统,如图1所示,控制系统连接外接的机器人,控制系统包括:
[0051] 数字量输入模块,获取机器人的第一状态信息;
[0052] 模拟量输入模块,获取机器人的第二状态信息;
[0053] 主控制器模块,分别与数字量输入模块和模拟量输入模块,用于根据第一状态信息和第二状态信息输出控制命令;
[0054] 数字量输出模块,与主控制器模块连接,用于将控制命令输出给机器人,以控制机器人的运动状态。
[0055] 在上述实施例中,主控制器模块的输入端分别连接数字量输入模块和模拟量输入模块,主控制器模块的输出端连接数字量输出模块,即主控制器模块为主模块,数字量输入模块、模拟量输入模块和数字量输出模块为相互独立的子模块,每个子模块实现独立的功,并且每一个子模块均连接主模块,以构建主从分布式硬件模块设计架构,从而实现主控制器模块可以接收每个子模块输出的数据,并对每个子模块的数据进行综合处理以得到控制命令,进而实现调度处理,主控制器模块通过数字量输出模块输出对应的控制命令来控制机器人进行相应的操作,从而实现了控制与运算的分离和支持多模块功能扩展。
[0056] 其中,每个子模块之间独立运行、互不干扰。
[0057] 进一步地,在上述实施例中,主控制器模块还连接上位机,可以通过上位机向主控
制模块发送操作指令,主控制器模块可以根据上述操作指令并根据第一状态信息和第二状态信息产生对应的控制命令。
[0058] 进一步地,作为优选的实施方式,主控制器模块包括:CPU主控制器处理单元、SD存储卡、USB接口、RT时钟、第一CAN总线接口、第二CAN总线接口、
磁性随机
存储器、静态随机存储器、WIFI单元、RS232/485接口、工业以太网接口、JTAG调试口、SRAM程序运行区和MRAM数据掉电保护区。
[0059] 其中,第一CAN总线作为通讯模块的外扩总线,SRAM程序运行区和MRAM数据掉电保护区的存储大小均为512KB。
[0060] 进一步地,在上述实施例中,如图1所示,还包括:
[0061] 电源模块,分别与主控制器模块、数字量输入模块、模拟量输入模块和数字量输出模块连接,用于提供工作电压。
[0062] 进一步地,作为优选的实施方式,电源模块包括24V、12V、5V的工作电源,其中工作电压为直流工作电压,可以为整个控制系统提供
能源。
[0063] 进一步地,在上述实施例中,如图3所示,数字量输入模块包括:
[0064] 数字量输入单元,用于接收机器人上的每个开关的开断信息;
[0065] 数字量输入处理单元,与数字量输入单元连接,用于对开断信息进行处理,以得到第一状态信息;
[0066] 第一输出单元,与数字量输入处理单元连接,将第一状态信息发送给主控制器模块。
[0067] 数字量输入处理单元包括复数个输出接口,第一输出单元包括复数个
导轨端子,其中每个输出接口与每个导轨端子一一对应,即输出接口的数量和导轨端子的数量一致;
[0068] 其中,输出接口从上至下依次包括12V的电源总线接口、5V的电源总线接口、0V的电源总线接口、CANH总线接口(CAN+)、CANL总线接口(CAN-)和SHIELD总线接口,上述每个输出接口通过对应的导轨端子连接到通讯模块的对应位置上。
[0069] 进一步地,作为优选的实施方式,数字量输入模块可以为16通道的数字量输入模块,即数字量输入单元包括16通道的数字量通道,用于接收16通道的开断信息,其中该开断信息为数字量信息。
[0070] 进一步地,在上述实施例中,机器人设置有多个传感器;
[0071] 如图4所示,模拟量输入模块包括:
[0072] 模拟量输入单元,用于接收每个传感器的传感器信息;
[0073] 模拟量输入处理单元,与模拟量输入单元连接,根据每个传感器信息得到对应的传感器状态,所有传感器状态组合成第二状态信息;
[0074] 第二输出单元,与模拟量输入处理单元连接,将第二状态信息发送给主控制器模块。
[0075] 模拟量输入处理单元包括复数个输出接口,第二输出单元包括复数个导轨端子,其中每个输出接口与每个导轨端子一一对应,即输出接口的数量和导轨端子的数量一致;
[0076] 其中,模拟量输入处理单元的输出接口的排列顺序与数字量输入处理单元的输出接口的排列顺序一致。
[0077] 进一步地,作为优选的实施方式,模拟量输入单元可以为8通道的模拟量输入单元,即模拟量输入单元包括8通道的模拟量通道,用于接收8通道的传感器信息,其中该传感器信息为模拟量信息。
[0078] 进一步地,在上述实施例中,模拟量输入模块支持电压输入和电流输入,因此传感器信息可以为电压信号或电流信号;
[0079] 电压信号的输入范围可以为0-10V;
[0080] 电流信号的输入范围可以为0-10mA。
[0081] 例如,当模拟量输入单元接收到
角度传感器的传感器信息时,此时的传感器信息可以为0-10V的电压信号,模拟量输入处理单元将电压信号转化为对应于角度传感器的角度数据。
[0082] 例如,当模拟量输入单元接收到速度传感器的传感器信息时,此时的传感器信息可以为0-10mA的电流信号,模拟量输入处理单元将电流信号转化为对应于速度传感器的速度数据。
[0083] 其中,传感器信息、角度数据和速度数据均为模拟量信息。
[0084] 进一步地,在上述实施例中,如图5所示,数字量输出模块包括:
[0085] 第一输入单元,与主控制器模块连接,用于接收控制命令;
[0086] 数字量输出处理单元,与第一输入单元连接,用于根据控制命令查找机器人的控制位置;
[0087] 数字量输出单元,与数字量输出处理单元连接,用于将控制命令输出给控制位置。
[0088] 数字量输出处理单元包括复数个输入接口,第一输入单元包括复数个导轨端子,其中每个输入接口与每个导轨端子一一对应,即输入接口的数量和导轨端子的数量一致;
[0089] 其中,数字量输出处理单元的输入接口的排列顺序与数字量输入处理单元的输出接口的排列顺序一致。
[0090] 进一步地,作为优选的实施方式,控制命令为数字量信息;
[0091] 例如,可以通过该控制命令切换控制位置的开断状态来控制机器人。
[0092] 进一步地,在上述实施例中,主控制器模块采用CPU控制芯片,从而提高应用领域的广泛性和功能的丰富性,并且降低开发成本。
[0093] 进一步地,在上述实施例中,数字量输入模块、模拟量输入模块、数字量输出模块均通过一通讯模块与主控制器模块连接,通讯模块采用CAN总线控制器,CAN总线形成在底板插槽。
[0094] 进一步地,在上述实施例中,如图6所示,其
中底板插槽依次包括:SHIELD总线、5V的电源总线、CANL总线、CANH总线、12V的电源总线、0V的电源总线和24V的电源总线。
[0095] 进一步地,作为优选的实施方式,如图2所示,电源模块、主控制器模块、数字量输入模块、数字量输出模块和模拟量输入模块从左到右依次设置,并且数字量输入模块、数字量输出模块和模拟量输入模块均通过通讯模块与主控制器模块连接,主控制器模块、数字量输入模块、数字量输出模块和模拟量输入模块均通过通讯模块与电源模块连接。
[0096] 进一步地,底板插槽的每两根相邻的总线之间的间距一致,并且底板插槽支持多种工业通信总线,便于数据的实时交互以及子模块的扩展应用。
[0097] 进一步地,作为优选的实施方式,机器人可以为多轴机器人、足式机器人等,本实施方式中机器人可以为精密程度较高的康复机器人,针对康复机器人的每个关键位置(例如康复机器人的各个关节)可以对应设置有力量传感器、
位置传感器、速度传感器和角度传感器。并通过上述主控制器模块、数字量输入模块、模拟量输入模块和数字量输出模块组成康复机器人的控制系统,其中,数字量输入模块接收并处理康复机器人的每一个开关设备的开断信息以得到第一状态信息,模拟量输入模块接收设置在康复机器人上的每个传感器的传感器信息(传感器信息包括力量传感器的力量传感信息、位置传感器的位置传感信息、速度传感器的速度传感信息、角度传感器的角度传感信息),并对每个传感器信息进行融合处理得到第二状态信息,主控制器模块根据第一状态信息和第二状态信息进行处理得到控制命令,随后将控制命令通过数字量输出模块输出给康复机器人,使得康复机器人根据上述控制命令执行对应的操作。
[0098] 其中,控制系统可以包括显示模块,上述显示模块分别与数字量输入模块和模拟量输入模块连接,用于显示第一状态信息和第二状态。
[0099] 上述显示模块也可以和主控制器模块连接,用于显示处理过程。
[0100] 进一步地,在上述实施例中,如图7所示,包括一软件模块,软件模块包括:
[0101] 硬件驱动层,用于根据每个硬件模块形成对应的硬件驱动,每个硬件驱动设置有对应的接口,并将所有接口整合到第一接口中;
[0102] 功能模块层,与硬件驱动层连接,定义复数个需要硬件驱动完成的独立功能单元,每个独立功能单元通过第一接口调用一个或多个硬件驱动来完成对应的功能,每个独立功能单元设置有对应的接口,并将所有接口整合到第二接口中;
[0103] 业务模块层,与功能模块层连接,定义复数个需要独立功能单元完成的业务单元,每个业务单元通过第二接口调用一个或多个独立功能单元来完成对应的业务,每个业务单元设置有对应的接口,并将所有接口整合到第三接口中;
[0104] 应用模块层,与业务模块层连接,通过第三接口调用一个或多个业务单元,以实现对业务模块层中的每个业务单元进行整合调用,以实现对应的整体功能。
[0105] 其中,第一接口、第二接口和第三接口均可以为API(Application Programming Interface,
应用程序编程接口)接口,如果增加硬件模块,就可以直接在硬件驱动层封装对应的硬件驱动,以在功能模块层针对上述硬件驱动定义对应的独立功能单元,并在业务模块层中执行需要独立功能单元完成的业务单元,随后可以直接在应用模块层通过第三接口调用上述业务单元,从而实现在增加硬件模块的过程中,不需要设置新的控制系统,以提高兼容性。
[0106] 在上述实施例中,软件模块采用分层模式架构设计,并且在软件编程开发上,采用通用的C语言编程,便于开发者进行软件开发和功能测试;
[0107] 其中,上述软件模块根据机器人的第一状态信息和第二状态信息通过第三接口进行调度处理,来执行实现对应的整体功能;
[0108] 其中,软件模块采用基于嵌入式平台
操作系统模式,即根据不同的整体功能需求建立不同的任务,根据机器人的第一状态信息和第二状态信息通过第三接口进行调度处理,以实现任务的调度和运转。
[0109] 在上述实施方式中,软件开发采用分层模式架构设计,用来构造可以分解为子任务组的程序,每个子任务都处于一个特定的抽象级别,每层都为下一层提供更高的层次服务。从而使整体软件架构清晰,鲁棒性更好,软件更新维护更方便。
[0110] 以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明
说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。