本发明涉及机器人领域,特别是涉及一种设备标识的设置方法、主控电路及机器人。
背景技术:
目前,机器人已越来越多的应用在日常生活和娱乐,其一般包括主控电路和若干设备,通过主控电路控制各设备来实现机器人各关节的运动。若干设备指舵机(或称伺服器)、传感器等。
通常主控电路通过设备标识(即ID)分辨各个设备,以此向不同设备发送各个指令,若出现设备标识重复,将影响机器人的正常工作。目前,现有的技术主要是在设备使用之前先单个设置ID,在使用的过程中,若发现有ID重号的情况,则需要将ID重复的设备手动拆卸下来,单个修改ID后,再重新安装使用,过程繁琐,十分耗时,并且容易出错。
技术实现要素:
本发明主要解决的技术问题是提供一种设备标识的设置方法、主控电路及机器人,能够解决现有技术需要将设备手动拆卸下来再修改设备标识的问题。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种设备标识的设置方法,包括:主控电路向与其耦接的第一设备发送第一标识以在所述第一设备上设置所述第一标识,所述主控电路还向与其耦接的第二设备发送第二标识以在所述第二设备上设置所述第二标识;其中,当所述第一设备与所述第二设备种类相同时,所述第一标识与所述第二标识不同,当所述第一设备与所述第二设备种类不同时,所述第一标识与所述第二标识相同或不相同。
其中,所述主控电路向所述第一设备、所述第二设备发送所述第一标识、所述第二标识之前,包括:读取所述第一设备、所述第二设备的种类信息;依据所述种类信息获得所述第一设备、所述第二设备的种类。
其中,所述种类信息是机器人设备的角度值。
其中,所述主控电路、所述第一设备以及所述第二设备依次耦接;所述主控电路还向与其耦接的第二设备发送第二标识以在所述第二设备上设置所述第二标识包括:所述主控电路向所述第一设备发送第二标识,使所述第一设备将所述第二标识传输至与所述第一设备级联的第二设备,以在所述第二设备上设置所述第二标识。
其中,所述主控电路向所述第一设备、所述第二设备发送所述第一标识、所述第二标识包括:所述主控电路将所述第一设备、所述第二设备上的通路关闭;所述主控电路向所述第一设备发送所述第一标识,并打开所述第一设备的通路;所述主控电路通过所述第一设备向所述第二设备发送所述第二标识。
其中,所述主控电路将所述第一设备、所述第二设备上的通路关闭之前,包括:所述主控电路将所述第一设备、所述第二设备上的通路打开。
其中,所述主控电路将所述第一设备、所述第二设备上的通路打开包括:所述主控电路广播将所有设备通路打开的第一指令,所述第一指令区别于所述第一标识、所述第二标识;判断所述第一设备、所述第二设备的通路是否均已打开,若存在未打开的情况,返回所述主控电路广播将所有设备通路打开的第一指令的步骤。
其中,所述主控电路将所述第一设备、所述第二设备上的通路关闭包括:所述主控电路广播将所有设备通路关闭的第二指令,所述第二指令区别于所述第一标识、所述第二标识;判断所述第一设备的通路是否已关闭,若未关闭,返回所述主控电路广播将所有设备通路关闭的第二指令的步骤。
其中,所述主控电路外接设备的耦接点至少为二,所述主控电路向所述第一设备、所述第二设备发送所述第一标识、所述第二标识之前,包括:所述主控电路关闭对应所述第一设备的耦接点之外的剩余所有所述耦接点;所述主控电路向所述第一设备、所述第二设备发送所述第一标识、所述第二标识之后,包括:所述主控电路关闭对应所述第一设备的耦接点,并打开剩余所有所述耦接点的其中一个。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种主控电路,包括:控制器、存储器和通信接口;所述存储器和所述通信接口分别耦接所述控制器,所述存储器保存第一标识、第二标识,所述通信接口用于连接至少第一设备、第二设备;
其中,所述控制器通过所述通信接口向所述第一设备发送第一标识以在所述第一设备上设置所述第一标识,所述控制器还通过所述通信接口向所述第二设备发送第二标识以在所述第二设备上设置所述第二标识;当所述第一设备与所述第二设备种类相同时,所述第一标识与所述第二标识不同,当所述第一设备与所述第二设备种类不同时,所述第一标识与所述第二标识相同或不相同。
为解决上述技术问题,本发明采用的又一个技术方案是:提供一种机器人,包括如上所述的主控电路。
本发明的有益效果是:区别于现有技术的情况,本发明主控电路向与其耦接的第一设备、第二设备分别发送第一标识、第二标识,以在所述第一设备、第二设备上分别设置所述第一标识、第二标识,并且当所述第一设备与所述第二设备种类相同时,所述第一标识与所述第二标识不同,当所述第一设备与所述第二设备种类不同时,所述第一标识与所述第二标识相同或不相同。通过上述方式,本发明能够通过主控电路自动设置与其耦接的各个设备的标识,并且使得同类设备的标识不重复,从而无需手动拆卸设备即可实现自动修改设备标识的目的。
附图说明
图1是本发明设备标识的设置方法第一实施方式的流程图;
图2是本发明设备标识的设置方法第二实施方式的流程图;
图3是本发明设备标识的设置方法第三实施方式的流程图;
图4是本发明主控电路第一实施方式的电路原理图;
图5是耦接于主控电路的第一设备/第二设备一实施方式的部分内部电路原理图;
图6是本发明主控电路第二实施方式的电路原理图;
图7是本发明机器人一实施方式的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1是本发明设备标识的设置方法第一实施方式的流程图。如图1所示,本发明设备标识的设置方法包括:
步骤S101:主控电路向与其耦接的第一设备发送第一标识以在第一设备上设置第一标识;
步骤S102:主控电路还向与其耦接的第二设备发送第二标识以在第二设备上设置第二标识;
其中,步骤S101和步骤S102不分先后。当第一设备与第二设备种类相同时,第一标识与第二标识不同,当第一设备与第二设备种类不同时,第一标识与第二标识相同或不相同。
具体地,设备标识是区分设备身份的信息,通常是设备ID,当然也可以是其他能够区分设备身份的信息;主控电路通过设备标识向指定设备发送指令,可以控制指定设备运作或者与指定设备通信。主控电路耦接的第一设备和第二设备可以是伺服器,也可以是红外传感器、超声传感器等各种传感器。
在一个应用例中,主控电路上设置有至少一个通信接口,第一设备通过第一通信接口与主控电路连接,第二设备通过第二通信接口与主控电路连接,主控电路分别通过第一、第二通信接口向第一设备、第二设备分别发送第一标识、第二标识,并且当第一设备与第二设备种类相同(例如第一设备、第二设备均为伺服器)时,第一标识与第二标识不同,例如分别为0x01、0x02,当第一设备与第二设备种类不同(例如第一设备为红外传感器、第二设备为伺服器)时,第一标识与第二标识可以相同,例如均为0x01。当然,在其他应用例中,当第一设备与第二设备种类不同时,第一标识与第二标识也可以不同,例如分别为0x01、0x02;第一设备与第二设备也可以级联并耦接于主控电路的一个通信接口,此时主控电路通过第一设备向第二设备发送第二标识,或者主控电路通过第二设备向第一设备发送第一标识。
其中,步骤S101之前,包括:
步骤S1001:读取第一设备、第二设备的种类信息;
具体地,在一个应用例中,种类信息是机器人设备的角度值,用于区分不同种类的设备。其中,若机器人设备是伺服器,可以通过实时读取伺服器输出轴输出的角度值获取种类信息,该角度值在0至360度范围内,由伺服器内部的角度传感器记录;若机器人设备是除伺服器之外的各种传感器,角度值预先设置于传感器中,传感器接收到主控电路的种类信息读取命令时,即返回其预先设置的角度值。因此,种类相同的设备角度值相同或者角度值处于同一范围,例如均为500度或者均不大于360度;而种类不同的设备角度值不同或者角度值处于不同范围,例如第一设备角度值为500度,第二设备角度值为300度。当然,在其他应用例中,种类信息也可以是其他能够区分设备种类的信息。
步骤S1002:依据种类信息获得第一设备、第二设备的种类。
在上述应用例中,主控电路预先保存有机器人设备各个角度值或角度值范围对应的设备种类,例如角度值不大于360度的设备种类为伺服器,角度值为500度的设备种类为红外传感器,角度值为600度的设备种类为超声传感器,当主控电路读取的第一设备的角度值为500度时,判断出第一设备种类为红外传感器,读取的第二设备的角度值为300度(即不大于360度)时,判断出第二设备种类为伺服器。在其他应用例中,机器人设备各个角度值或角度值范围对应的设备种类可以根据实际设备种类设置其他对应关系,此处不做具体限定。
本实施方式中,主控电路只耦接第一设备、第二设备,而在其他实施方式中,主控电路至少有两个通信接口,每个通信接口可以依次耦接多个设备。
上述实施方式中,主控电路通过读取设备的种类信息,依据种类信息获得设备种类,并向同一种类的设备发送不同的设备标识,以在同一种类的设备上设置不同的设备标识,向不同种类的设备发送相同或者不同的设备标识,使得主控电路能够通过设备标识区分同一种类的不同设备或者不同种类的不同设备,从而可以与指定设备进行通信,实现自动设置设备标识的目的,同时当不同种类的设备设置相同的设备标识时,还可以实现设备标识的复用。
请参阅图2,图2是本发明设备标识的设置方法第二实施方式的流程图。如图2所示,本发明设备标识的设置方法第二实施方式中,主控电路、第一设备以及第二设备依次耦接,该方法包括:
步骤S200:主控电路将第一设备、第二设备上的通路打开。
具体地,在一个应用例中,所有与主控电路耦接的设备均预先设置有一关闭通路的标识0xFF,若设备标识设置为关闭通路的标识0xFF,在设置的一刻,该设备自身可以与其耦接的主控电路或者前一设备通信,但随后该设备输出的通路即会断开,使得与其耦接的下一设备无法与该设备通信,也无法通过该设备与主控电路通信。若第一设备、第二设备的设备标识设置为与0xFF不同的任一设备标识,则第一设备、第二设备上的通路即为打开状态,主控电路可以与第一设备、第二设备通信。当然,在其他应用例中,关闭通路的标识可以设置为其他标识。
其中,步骤S200进一步包括:
步骤S2001:主控电路广播将所有设备通路打开的第一指令,第一指令区别于第一标识、第二标识;
在上述应用例中,主控电路广播将所有设备通路打开的第一指令,即将所有设备的设备标识设置为0xFE的指令,其中,第一指令区别于第一标识、第二标识,即第一指令设置的所有设备的设备标识与第一标识、第二标识不同,例如第一指令设置的所有设备的设备标识为0xFE,第一标识、第二标识分别为0x01、0x02,此时所有设备通路打开,主控电路可以与所有设备进行通信。当然,在其他应用例中,第一指令也可以将所有设备的设备标识设置为其他标识。
步骤S2002:判断第一设备、第二设备的通路是否均已打开,若存在未打开的情况,返回步骤S2001。
具体地,主控电路发送读取设备标识为0xFF的设备的角度值的指令,并判断是否有设备返回角度值,若有设备返回角度值,则第一设备、第二设备的通路存在未打开的情况,返回步骤S2001继续广播将所有设备通路打开的第一指令,直至没有设备返回角度值,则表明所有设备的设备标识均设置为0xFE。
步骤S201:主控电路将第一设备、第二设备上的通路关闭;
具体地,主控电路将第一设备、第二设备的设备标识设置为0xFF,此时第一设备、第二设备上的通路关闭。
其中,步骤S201进一步包括:
步骤S2011:主控电路广播将所有设备通路关闭的第二指令,第二指令区别于第一标识、第二标识;
具体地,主控电路广播将所有设备通路关闭的第二指令,即将所有设备标识为0xFE的设备的设备标识设置为0xFF的指令,其中,第二指令区别于第一标识、第二标识,即第二指令设置的所有设备的设备标识与第一标识、第二标识不同,例如第二指令设置的所有设备的设备标识为0xFF,第一标识、第二标识分别为0x01、0x02,此时设备标识为0xFF的设备通路关闭,即其输出的通路为断开状态,与其耦接的下一设备无法与其通信,例如第一设备的设备标识为0xFF,则与其耦接的第二设备无法与其通信,也无法通过其与主控电路通信。
步骤S2012:判断第一设备的通路是否已关闭,若未关闭,返回步骤S2011。
具体地,主控电路发送读取设备标识为0xFE的设备的角度值的指令,并判断是否有设备返回角度值,若有设备返回角度值,则第一设备的通路存在未关闭的情况,返回步骤S2011继续广播将所有设备通路关闭的第二指令,直至没有设备返回角度值。
步骤S202:主控电路向第一设备发送第一标识,并打开第一设备的通路;
具体地,主控电路向第一设备发送将通路关闭的设备的设备标识修改为第一标识(如0x01)的指令,即将第一设备的设备标识从0xFF修改为第一标识(如0x01),此时第一设备的设备标识不是0xFF,则第一设备的输出通路打开。
其中,步骤S202之后,进一步包括:
步骤S2021:判断第二设备的通路是否已关闭;
步骤S2022:若未关闭,则主控电路广播将所有设备通路关闭的第二指令;
步骤S2021和步骤S2022具体过程可参考步骤S2012,此处不再重复。通过上述步骤S2021和S2022,可以避免由于第一设备的通路关闭后,第二设备没有接收到主控电路广播的第二指令,从而也避免后续第二设备接收不到针对通路关闭的设备修改设备标识的指令导致设备标识设置失败。
步骤S203:主控电路通过第一设备向第二设备发送第二标识。
具体地,主控电路向第一设备发送将通路关闭的设备的设备标识修改为第二标识(如0x02)的指令,使第一设备将第二标识传输至与第一设备级联的第二设备,以使得第二设备的设备标识从0xFF修改为第二标识(如0x02)。同样的,当第一设备与第二设备种类相同时,第一标识与第二标识不同,当第一设备与第二设备种类不同时,第一标识与第二标识相同或不相同。
上述实施方式中,主控电路先将级联的第一设备、第二设备的通路打开,即使得第一设备、第二设备的设备标识不是关闭通路的标识0xFF,可以避免由于第一设备的通路关闭导致第二设备接收不到主控电路发送的指令,进而避免后续第二设备接收不到针对通路关闭的设备修改设备标识的指令导致设备标识设置失败。
上述实施方式中,主控电路耦接级联的第一设备、第二设备,而在其他实施方式中,主控电路也可以耦接三个以上的设备。
本实施方式的执行在步骤S1001之前,本实施方式可以与本发明设备标识的设置方法第一实施方式相结合。
请参阅图3,图3是本发明设备标识的设置方法第三实施方式的流程图。如图3所示,本发明设备标识的设置方法第三实施方式是在本发明设备标识的设置方法第二实施方式的基础上,将主控电路外接设备的耦接点设置为至少二个,因此重复部分不再赘述,主要不同在于:
步骤S202之前,包括:
步骤S301:主控电路关闭对应第一设备的耦接点之外的剩余所有耦接点;
具体地,主控电路可以通过其内部的控制器或者开关电路等打开/关闭外接设备的任一/多个耦接点,此处主控电路只打开对应第一设备的耦接点,以使主控电路设置第一设备以及级联于第一设备的其他设备的设备标识。
步骤S203之后,包括:
步骤S302:主控电路关闭对应第一设备的耦接点,并打开剩余所有耦接点的其中一个。
具体地,当主控电路成功设置完成第一设备以及级联于第一设备的其他设备的设备标识后,主控电路关闭对应第一设备的耦接点,选择剩余的耦接点中的一个打开,进而使得主控电路能够设置打开的耦接点外接设备的设备标识,直至成功设置完成该耦接点外接的所有设备的设备标识。若主控电路外接设备的耦接点为三个或者三个以上,则重复上述步骤,直至成功设置完成主控电路外接的所有设备的设备标识。
例如,主控电路外接设备的耦接点分别为20、21、22,其中对应第一设备的耦接点为20,主控电路向该耦接点20发送读取设备标识为0xFF(即关闭通路的标识)的设备的角度值,若没有设备回复角度值,则表明该耦接点20外接的所有设备的设备标识均已设置成功,主控电路关闭耦接点20,打开耦接点21,继续设置外接设备的设备标识,直至耦接点21外接的所有设备的设备标识均设置完成,则关闭耦接点21,打开耦接点22,继续设置外接设备的设备标识。
本实施方式可以与本发明设备标识的设置方法第一、第二实施方式相结合。
请参阅图4,图4是本发明主控电路第一实施方式的结构示意图。如图4所示,本发明主控电路40包括:控制器401、存储器402和通信接口403;
存储器402和通信接口403分别耦接控制器401,存储器402保存第一标识、第二标识,通信接口403用于连接至少第一设备、第二设备;
其中,控制器401通过通信接口403向第一设备发送第一标识以在第一设备上设置第一标识,控制器401还通过通信接口403向第二设备发送第二标识以在第二设备上设置第二标识;当第一设备与第二设备种类相同时,第一标识与第二标识不同,当第一设备与第二设备种类不同时,第一标识与第二标识相同或不相同。
具体地,在一个应用例中,存储器402保存第一标识、第二标识以及机器人设备的角度值与设备种类的对应关系;通信接口403通过总线与第一设备的输入端连接,第一设备的输出端通过总线与第二设备的输入端连接。
上述应用例中,控制器401先通过通信接口403广播将所有设备通路打开的第一指令,即将所有设备的设备标识设置为0xFE的指令,避免由于设备初始标识为0xFF(即关闭通路标识)而影响后续设备标识的设置步骤,此时第一设备、第二设备的设备标识均为0xFE;然后控制器401通过通信接口403广播将所有设备通路关闭的第二指令,即将所有设备标识为0xFE的设备的设备标识设置为0xFF的指令,以便后续对设备标识进行逐一设置,此时第一设备的设备标识均为0xFF,第一设备的输出通路关闭,第二设备无法与第一设备通信;之后控制器401通过通信接口403读取设备标识为0xFF的设备的角度值,即读取到第一设备的角度值,根据角度值判断设备的种类,并向第一设备发送将设备标识从0xFF修改为第一标识(如0x01)的指令,修改完成后第一设备的设备标识为第一标识,此时第一设备的输出通路打开,第二设备能够与第一设备通信;然后控制器401判断第二设备的设备标识是否为0xFE,若是,则控制器401广播将所有设备通路关闭的第二指令,直至第二设备的设备标识修改为0xFF,从而避免第二设备耦接的下一设备接收到控制器401发送的设备标识修改指令;控制器401通过通信接口403读取设备标识为0xFF的设备的角度值,即读取到第二设备的角度值,根据角度值判断设备的种类,并且当第一设备与第二设备种类相同时,向第二设备发送将设备标识从0xFF修改为第二标识(如0x02)的指令,其中第二标识与第一标识不同。
结合图5所示,第一设备/第二设备50内部设置有控制芯片501、开关芯片502和两个通信接口503、504。
控制芯片501至少设置有电源引脚VDD、接地引脚GND、信号输出引脚1WIRE、第一使能引脚EN-SW1和第二使能引脚EN-SW2;开关芯片502设置有第一信号输入引脚NO1、第一使能引脚IN1、第一输出引脚COM1、第二信号输入引脚NO2、第二使能引脚IN2、第二输出引脚COM2、电源引脚VCC以及接地引脚GND。
其中,控制芯片501的信号输出引脚1WIRE耦接开关芯片502的第一信号输入引脚NO1和第二信号输入引脚NO2,控制芯片501的第一使能引脚EN-SW1耦接开关芯片502的第一使能引脚IN1,控制芯片501的第二使能引脚EN-SW2耦接开关芯片502的第二使能引脚IN2,开关芯片502的第一输出引脚COM1耦接通信接口503,开关芯片502的第二输出引脚COM2耦接通信接口504。
控制芯片501能够通过开关芯片502在设备通电后分别检测与接口耦接的第一输出引脚COM1、第二输出引脚COM2的电平状态,从而判断通信接口503和504哪个为输入端,若COM1引脚为高电平,则通信接口503为输入端,通信接口504为输出端;若COM2引脚为高电平,则反之。
控制芯片501通过控制第一使能引脚EN-SW1和第二使能引脚EN-SW2从而分别控制开关芯片502的第一使能引脚IN1和第二使能引脚IN2,进而分别控制开关芯片502第一信号输入引脚NO1、第一输出引脚COM1和第二信号输入引脚NO2、第二输出引脚COM2的通断。
具体地,在一个应用例中,通信接口503是输入端,通信接口504为输出端,当第一设备/第二设备50接收到主控电路40广播的将所有设备通路关闭的第二指令时,控制芯片501只使能EN_SW1引脚,即连接COM1和NO1、断开COM2和NO2,此时第一设备/第二设备50的输出端504关闭,从而避免输出端504耦接的设备接收到指令,然后接收到主控电路40发送的第一标识/第二标识并将第一设备/第二设备50的设备标识设置为第一标识/第二标识后,再使能EN_SW2引脚,即连接COM2和NO2,此时第一设备/第二设备50的输出通路打开,与第一设备/第二设备50设备耦接的下一设备可以与第一设备/第二设备50通信。
上述实施方式中,主控电路通过控制外接设备通路的通断,逐一读取设备的种类信息,并依据种类信息获得设备种类,向同一种类的设备发送不同的设备标识,以在同一种类的设备上设置不同的设备标识,向不同种类的设备发送相同或者不同的设备标识,使得主控电路能够通过设备标识区分同一种类的不同设备或者不同种类的不同设备,从而可以与指定设备进行通信,实现自动设置设备标识的目的,同时当不同种类的设备设置相同的设备标识时,还可以实现设备标识的复用。
另外,上述实施方式中,主控电路只有一个通信接口,而在其他实施方式中,主控电路至少包括两个通信接口。
具体请参阅图6,图6是本发明主控电路第二实施方式的结构示意图。图6与图4结构类似,此处不再赘述,不同之处在于主控电路60包括三个通信接口603、604和605,第一设备50a耦接于第一通信接口603,第二设备50b级联于第一设备50a。
控制器601关闭对应第一设备50a的第一通信接口603之外的剩余所有通信接口,即只打开第一通信接口603,关闭第二通信接口604和第三通信接口605。控制器601继续设置第一设备50a、第二设备50b的设备标识,具体设置过程参考本发明主控电路第一实施方式,此处不再重复。主控电路60成功设置完成第一设备50a、第二设备50b的设备标识后,控制器601关闭对应第一设备50a的第一通信接口603,并打开剩余所有通信接口的其中一个(如第二通信接口604),继续设置外接设备的设备标识。
在上述实施方式中,主控电路有三个通信接口,而在其他实施方式中,主控电路还可以包括三个以上的通信接口,具体结构与上述方式类似,此处不再重复。
上述实施方式中,主控电路通过控制器使得每次只有一个通信接口打开,从而逐一设置每个通信接口外接设备的设备标识,避免多接口打开导致不同接口的同一种类的设备接收到相同的设备标识设置指令,从而避免设备标识重复。
请参阅图7,图7是本发明机器人一实施方式的结构示意图。如图7所示,本发明机器人70包括:主控电路701。其中,主控电路701可以采用本发明主控电路第一或者第二实施方式的结构,此处不再重复。
上述实施方式中,机器人通过主控电路向与其耦接的第一设备、第二设备分别发送第一标识、第二标识,以在第一设备、第二设备上分别设置第一标识、第二标识,并且当第一设备与第二设备种类相同时,第一标识与第二标识不同,当第一设备与第二设备种类不同时,第一标识与所述第二标识相同或不相同,从而自动设置与其耦接的各个设备的标识,并且使得同类设备的标识不重复,无需手动拆卸设备即可实现自动修改设备标识的目的。
以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。