一种伺服器控制系统.pdf

上传人:e1 文档编号:6245591 上传时间:2019-05-25 格式:PDF 页数:19 大小:1.23MB
返回 下载 相关 举报
摘要
申请专利号:

CN201610514818.4

申请日:

2016.06.30

公开号:

CN105988404A

公开日:

2016.10.05

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G05B 19/042申请日:20160630|||公开

IPC分类号:

G05B19/042

主分类号:

G05B19/042

申请人:

深圳市优必选科技有限公司

发明人:

黄挺爽; 熊友军

地址:

518000 广东省深圳市南山区学苑大道1001号南山智园C1栋16、22楼

优先权:

专利代理机构:

深圳众鼎专利商标代理事务所(普通合伙) 44325

代理人:

吴立

PDF下载: PDF下载
内容摘要

为解决现有伺服器上输入端口和输出端口若接反时,将导致伺服器无法实现自动改ID,伺服器无法按照正确的设定逻辑动作的问题。本发明提供了一种伺服器控制系统,包括主控制器及若干伺服器;所述主控制器包括主控MCU和若干接口,至少在其中的一个接口上通过总线串接所述伺服器;所述伺服器包括舵机MCU、第一端口和第二端口;所述第一端口和所述第二端口之间通过总线连接;其中,所述第一端口和所述第二端口之间的总线上设有所述第一舵机开关和第二舵机开关;所述第一舵机开关与第一端口之间设有第一插入线连接至所述舵机MCU,所述第二舵机开关与第二开口之间设有第二插入线连接至所述舵机MCU。

权利要求书

1.一种伺服器控制系统,其特征在于,包括主控制器及若干伺服器;所
述主控制器包括主控MCU和若干接口,所述接口通过总线连接至所述主控
MCU;至少在其中的一个接口上通过总线串接所述伺服器;
所述伺服器包括舵机MCU、第一端口和第二端口;所述第一端口和所述
第二端口之间通过总线连接,所述总线同时连接到所述舵机MCU;
其中,所述第一端口和所述第二端口之间的总线上设有所述第一舵机开
关和第二舵机开关;所述第一舵机开关连接于所述第一端口和所述舵机MCU
之间,该第一舵机开关控制所述第一端口的通断;所述第二舵机开关连接于
所述第二端口和所述舵机MCU之间所述第二舵机开关临近所述第二端口,该
第二舵机开关控制所述第二端口的通断;
所述第一舵机开关与第一端口之间设有第一插入线连接至所述舵机MCU,
所述第二舵机开关与第二开口之间设有第二插入线连接至所述舵机MCU。
2.根据权利要求1所述的伺服器控制系统,其特征在于,所述主控制器
上设有1-6个接口。
3.根据权利要求2所述的伺服器控制系统,其特征在于,所述主控制器
上设有5个接口。
4.根据权利要求1所述的伺服器控制系统,其特征在于,所述每个接口
上均串接有伺服器。
5.根据权利要求1所述的伺服器控制系统,其特征在于,各主控制器上
的接口通过总线连接到主控MCU,所述各接口与主控MCU之间的总线上还
设有控制相应接口通断的主控开关,每个所述主控开关的控制端均电连接至
所述主控MCU。
6.根据权利要求1所述的伺服器控制系统,其特征在于,所述第一舵机
开关的控制端和第二舵机开关的控制端均连接至所述舵机MCU。
7.根据权利要求1所述的伺服器,其特征在于,所述伺服器内还设有存
储ID的存储器。
8.根据权利要求7所述的伺服器,其特征在于,所述存储器为EEPROM、
缓存器或者FLASH。
9.根据权利要求1所述的伺服器,其特征在于,所述总线为多重伺服马
达控制总线。

说明书

一种伺服器控制系统

技术领域

本发明涉及伺服器控制系统领域,尤其指伺服器和控制该伺服器的主控制
器。

背景技术

目前,机器人已越来越多的应用在日常生活和娱乐,其一般包括主控制器
和若干伺服器(或称伺服马达或舵机)。通过各伺服器来实现机器人各关节的
运动。现有一般通过一个主控制器控制若干伺服器。

各伺服马达通过总线串接或并联接在主控制器的若干接口上;主控制器通
过总线向伺服器发送控制讯号。各伺服马达和主控制器之间通过一组线(包括
电源线(VDD)、接地线(GND)和信号线)连接到主控制器上。在主控制器内
部、伺服器内部和主控制器和伺服器之间也连接有该信号线,以实现主控制器
和伺服器的通讯。

目前,作为较优的方式,该信号线为多重伺服马达控制总线(英文全称:
Multiple Servo Motor Control Bus,英文简写:MSMCB)。主控制器通过MSMCB
与伺服器通讯,主控制器下命令给伺服器,伺服器也可将讯号回传给主控制器,
主控制器可以得知伺服器的状态,包括位置,是否过电流等。

目前,通过该MSMCB,可以将多个伺服器接在主控制器的一个接口上,由
于各伺服器共享MSMCB,因此,每个伺服器需要设定ID(身份标识号或账号
或唯一编码的简写),才能在主控制器发送指令时用以分辨所要沟通的对象伺
服器。该伺服器中设有存储器(如EEPROM(英文全称:Electrically Erasable
Programmable Read-Only Memory,中文全称:电可擦可编程只读存储器))来
存储各伺服器的ID。

目前,现有伺服器上一般均设有2端口,其中一个端口为输入端口,另一
个端口为输出端口,各伺服器的输入端口通过总线接到主控制器上或者前一伺
服器的输出端上。如此,以实现将各伺服器串接在主控制器一个接口上的目的。
由于伺服器的个数为多个,因此,需要防止伺服器的ID出现重复的现象,此前
的方式是在组装前预先设置好各伺服器的ID,且将各伺服器按照正确的位置设
定,更换任意伺服器,或者使得任意伺服器的ID出现偏差,都将使得总个机器
人无法按照正确的设定逻辑动作。

为解决上述技术问题,已有方案对伺服器做了改进,在伺服器内部两端口
之间的MSMCB上增加了一开关。通过开关的通断控制,可以在开机时预设各
开关为断路,然后通过主控制器对接在其上的第一个伺服器设定其ID,完成第
一个伺服器的ID设定后,即将第一个伺服器内的开关导通,使该下一个串接的
伺服器(第二个伺服器)可以接受来自主控制器的讯号。然后完成第二个伺服
器的ID设定即开关导通,如此重复上述步骤,依序完成各伺服器的ID设定。
其可在开机时,自动完成各伺服器的ID设定,省去组装和维修时人为设定ID
的困扰。

然而,该种方式虽然可实现伺服器自动改ID,但伺服器组装时仍然比较麻
烦,其必须预先搞清楚伺服器上输入端口和输出端口,防止其接反。否则可能
会出现逻辑错误,导致伺服器无法实现自动改ID,其伺服器仍然无法按照正确
的设定逻辑动作。

发明内容

为解决现有伺服器上输入端口和输出端口若接反时,将导致伺服器无法实
现自动改ID,伺服器无法按照正确的设定逻辑动作的问题。本发明提供了一种
伺服器控制系统。

本发明提供了一种伺服器控制系统,包括主控制器及若干伺服器;所述主
控制器包括主控MCU和若干接口,所述接口通过总线连接至所述主控MCU;
至少在其中的一个接口上通过总线串接所述伺服器;

所述伺服器包括舵机MCU、第一端口和第二端口;所述第一端口和所述第
二端口之间通过总线连接,所述总线同时连接到所述舵机MCU;

其中,所述第一端口和所述第二端口之间的总线上设有所述第一舵机开关
和第二舵机开关;所述第一舵机开关连接于所述第一端口和所述舵机MCU之间,
该第一舵机开关控制所述第一端口的通断;所述第二舵机开关连接于所述第二
端口和所述舵机MCU之间,该第二舵机开关控制所述第二端口的通断;

所述第一舵机开关与第一端口之间设有第一插入线连接至所述舵机MCU,所述
第二舵机开关与第二开口之间设有第二插入线连接至所述舵机MCU。

进一步地,所述主控制器上设有1-6个接口。

进一步地,所述主控制器上设有5个接口。

进一步地,所述每个接口上均串接有伺服器。

进一步地,各主控制器上的接口通过总线连接到主控MCU,所述各接口与
主控MCU之间的总线上还设有控制相应接口通断的主控开关,每个所述主控开
关的控制端均电连接至所述主控MCU。在所述接口与主控MCU之间的总线上
设置主控开关,如此,其可以有选择地打开各主控开关,以接通或断开主控制
器与对应接口上的各伺服器通讯。可以有效避免主控制器广播设定ID时出现重
复ID的情况发生,使得自动设定ID以后的伺服器可以按照正确的设定逻辑动
作。

进一步地,所述第一舵机开关的控制端和第二舵机开关的控制端均连接至
所述舵机MCU。

进一步地,所述伺服器内还设有存储ID的存储器。

进一步地,所述存储器为EEPROM、缓存器或者FLASH。

进一步地,所述总线为多重伺服马达控制总线。

本发明提供的所述伺服器控制系统,其在伺服器内端口之间的总线上增加
了两个舵机开关,并在舵机开关与端口之间设置插入线连接到舵机MCU。如此,
在将伺服器连接到主控制器上形成伺服器控制系统时,无需考虑两个端口的输
入输出关系,可以随意组装;组装完成后,通过插入线来检测信号,以分别哪
个是输入端口、哪个是输出端口。根据需要,伺服器也可以通过对两个开关的
通断控制,其可以通过逐个将伺服器接入网络的方式,逐个将伺服器顺序设定
ID,以防止出现重复ID,如此,使得其组装更简单,省去组装和维修时人为设
定ID的困扰。伺服器不会出现由于装反而导致无法按照正确的设定逻辑动作的
情况。

附图说明

图1是本发明具体实施方式中第一实施例中提供的伺服器内部电路原理示
意图;

图2是本发明具体实施方式中第二实施例中提供的一种主控制器内部电路
原理示意图;

图3是本发明具体实施方式中第二实施例中提供的另一种主控制器内部电
路原理示意图;

图4是本发明具体实施方式中第三实施例中提供的伺服器控制系统原理示
意图;

图5是本发明具体实施方式中第四实施例中提供的伺服器ID设定流程图;

图6是本发明具体实施方式中第五实施例中提供的伺服器ID设定流程图;

图7是本发明具体实施方式中第六实施例中提供的步骤S201具体步骤流程
图;

图8是本发明具体实施方式中第七实施例中提供的伺服器ID设定流程图;

图9是本发明具体实施方式中提供的第八实施例中主控制器广播的流程图;

图10是本发明具体实施方式中提供的第八实施例伺服器内部的流程图。

其中,1、伺服器;2、主控制器;11、第一端口;12、第二端口;13、舵
机MCU;14、第一插入线;15、第二插入线;k1、第一舵机开关;k2、第二舵
机开关;20、主控MCU;21、第一接口;22、第二接口;23、第三接口;24、
第四接口;25、第五接口;2a、第一主控开关;2b、第二主控开关;2c、第三主
控开关;2d、第四主控开关;2e、第五主控开关;1a、第一伺服器;1b、第二伺
服器;1c、第三伺服器;1n、第n伺服器;L1、总线;

具体实施方式

为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以
下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述
的具体实施例仅仅用以解释本发明,并不用于限定本发明。

下面通过第一实施例对本发明公开的伺服器1进行具体解释说明。伺服器1
又称伺服马达或舵机;该伺服器1的具体机械结构为公众所知,其包括变速齿
轮组、马达、电位器、控制电路等,不再赘述。如图1所示,其伺服器1包括
MCU(中文名称:微控制单元;英文名称:Micro Controller Unit)和两个端口,
为区别后续主控制器2中的MCU,此处的MCU称为舵机MCU13。两端口之间
通过总线L1(各图1-图4中的总线以加粗线条显示)连接,并同时连接到舵机
MCU13。该总线L1为多重伺服马达控制总线(英文全称:Multiple Servo Motor
Control Bus,英文简写:MSMCB)。同时,端口之间除上述MSMCB外,还包
括两电源线(VDD)和接地线(GND)。上述MSMCB线可以根据I2C(英文
全称:Inter-Integrated Circuit)、UART(英文全称:Universal Asynchronous Receiver
and Transmitter,中文全称:通用异步收发器)或自定的序列总线通讯协议来传
递信号。该信号线可以是1条或以上,本例中为一条。

上述端口包括第一端口11和第二端口12,该第一端口11和第二端口12之
间没有输入端口和输出端口的限定,该第一端口11可以作为输入端口,则第二
端口12作为输出端口;反之,第一端口11也可以作为输出端口,则第二端口
12作为输入端口。

其中,在两端口的总线L1之间设有控制2个端口通断的2个舵机开关;上
述2个开关分别称为第一舵机开关k1和第二舵机开关k2;也即在所述两端口总
线L1之间临近第一端口11处设有第一舵机开关k1,即第一舵机开关k1连接于
所述第一端口11和舵机MCU13之间,该第一舵机开关k1控制所述第一端口
11的通断,所述两端口总线L1之间临近第二端口12处设有第二舵机开关k2,
即第二舵机开关k2连接于所述第二端口12和舵机MCU13之间,所述第二舵机
开关k2控制所述第二端口12的通断;所述2个舵机开关的控制端连接到所述
舵机MCU13,受所述舵机MCU13的控制。

如此,通过在第一端口11和第二端口12上外接总线L1,以实现伺服器1
与主控制器2,以及伺服器1与伺服器1的之间的电连接,最终实现主控制器2
通过总线L1控制各伺服器1的目的。

同时,在舵机开关与端口之间设置插入线连接到舵机MCU13。具体的,所
述第一舵机开关k1与第一端口11之间设有第一插入线14连接至所述舵机
MCU13,所述第二舵机开关k2与第二端口12之间设有第二插入线15连接至所
述舵机MCU13。如此,舵机MCU13通过所述第一插入线14检测第一端口11
的接入信号;通过所述第二插入线15检测第二端口12的接入信号;当第一舵
机开关k1和第二舵机开关k2断开时,通过第一插入线14和第二插入线15可
以检测哪边端口为输入端口,哪边端口为输出端口。

同时,该伺服器1内还设有存储舵机ID的存储器,所述存储器可以仅仅是
一个缓存器,也可以是一个EEPROM或者FLASH。

本例提供的伺服器1,其在端口之间的总线L1上增加了两个开关,并在开
关与端口之间设置插入线连接到舵机MCU13。如此,在将伺服器1进行组装时,
无需考虑两个端口的输入输出关系,可以随意组装;组装完成后,通过该插入
线来检测信号,以分别哪个是输入端口、哪个是输出端口。根据需要,伺服器1
也可以通过对两个开关的通断控制,其可以通过逐个将伺服器1接入网络的方
式,逐个将伺服器1顺序设定ID,以防止出现重复ID,如此,使得其组装更简
单,省去组装和维修时人为设定ID的困扰。伺服器不会出现由于装反而导致无
法按照正确的设定逻辑动作的情况。

下面通过第二实施例对本发明公开的主控制器2(简称主控)进行具体解释
说明。如图2、图3所示,该主控制器2包括主控MCU20和若干接口;该接口
的个数根据需要设置,优选1-6个接口,其可以仅只有一个接口,各伺服器1
均通过总线L1串接或者混接在该接口上;也可以包括1个以上的接口,每个接
口上根据需要通过总线L1串接若干伺服器1。比如,本例中,设有5个接口,
分别命名为第一接口21、第二接口22、第三接口23、第四接口24和第五接口
25;具体的,如图2所示,若干接口可以通过总线L1分别接至主控MCU20的
若干引脚,所述各引脚和对应接口之间设置一个主控开关。该种连接方案称为
并联式,该种方式可以同时向各接口广播相同的消息,也可以向各接口广播不
同的消息。如图3所示,也可以将各接口接至主控MCU20的同一引脚上,该引
脚与各接口之间的总线上分别接有一主控开关。该种方式称为串联式,该种方
式总是同时向各伺服器1广播相同的消息。

其中,每个接口的内部总线L1上设置主控开关,每个主控开关的控制端均
电连接至所述主控MCU20;所述主控MCU20控制各主控开关的通断,以控制
各接口上连接的各伺服器1与主控制器2通讯的通断;具体的,该第一接口21
的内部总线L1上设有第一主控开关2a;第二接口22的内部总线L1上设有第二
主控开关2b;第三接口23的内部总线L1上设有第三主控开关2c;第四接口24
的内部总线L1上设有第四主控开关2d;第五接口25的内部总线L1上设有第
五主控开关2e。各第一主控开关2a、第二主控开关2b、第三主控开关2c、第四
主控开关2d和第五主控开关2e的控制端均电连接至所述主控MCU20。

本例提供的主控制器2,其在每个接口的内部总线L1上设置主控开关,每
个主控开关的控制端均电连接至所述主控MCU20;所述主控MCU20控制各主
控开关的通断,以控制各接口上连接的各伺服器1与主控制器2通讯的通断。
如此,其可以有选择地打开各主控开关,以接通或断开主控制器2与对应接口
上的各伺服器1通讯。可以有效避免主控制器2广播设定ID时出现重复ID的
情况发生,使得自动设定ID以后的伺服器1可以按照正确的设定逻辑动作。

下面通过第三实施例对本发明公开的伺服器1控制系统进行具体解释说明。
如图4所示,所述伺服器控制系统包括主控制器2及若干伺服器1。其中,主控
制器2已在第二实施例中具体解释说明,伺服器1已在第一实施例中进行具体
解释说明。

其中,将所有的伺服器1分成若干串,分别串接到主控制器2的各接口上,
也即各接口上的伺服器1为串联的关系,而各接口之间的串联的伺服器串为并
联的关系。所有伺服器1具体分成几串,每串伺服器1具体设置几个并没有特
别限制,串联和并联混合的好处在于使布线更加简单而规律,并优化主控制器2
对各伺服器1的控制效率。比如,第一接口21上串接有2个伺服器1,第二接
口22上串接有2个伺服器1;第三接口23上串接有3个伺服器1。在该第四接
口24上串接有n个伺服器1,分别称为第一伺服器1a、第二伺服器1b、第三伺
服器1c和第n伺服器1n;第五接口25上串接有3个伺服器1;每个接口上串
接的伺服器1的个数根据其具体需要进行设定。

以第四接口24上串接n个伺服器为例,其具体连接方式如下:在主控制器
2的第四接口24通过总线L1与第一伺服器1a的任一端口(如第一端口11,该
第一端口11作为输入端口)串接,然后在另一端口(对应第二端口12,该第二
端口12作为输出端口)通过总线L1与第二伺服器1b的任一端口(如第一端口
11,该第一端口11作为输入端口)串接,如此,依次实现各伺服器1的串接。

串接以后,其输入端口和输出端口即依次设定。在此串接过程中,并无需
强制规定哪个端口为输入端口,哪个端口为输出端口。通过插入线即可判断哪
个为输入端口,哪个为输出端口。当其在对各伺服器1的ID进行设定时,当前
伺服器1内的舵机MCU13即可读取总线L1上的消息,并根据消息设定当前伺
服器1的ID(将设定的ID替换存储在存储器中的原有ID)。并在完成设定ID的
操作后,导通该当前伺服器1内的第一开关和第二开关,使下一伺服器1接入
总线L1中,此时,下一伺服器1进入可被设定ID的状态,此时,下一伺服器1
上即可通过插入线分别出输入端口和输出端口。如此循环,可依次设定各伺服
器1的ID。

其中,上述主控制器2和各伺服器1均可看做单独的节点,即各节点通过
串接的方式串联,主控制器2相当于主节点、其余伺服器1成为从节点。

以在该第四接口24上串接有n个伺服器1为例进行具体解释说明,为方便
描述起见,假设总是以各伺服器1的第一端口11为输入端口,以第二端口12
为输出端口(实际上并不限制)。伺服器1第一伺服器1a的第一端口11通过总
线L1连接到主控制器2的第四接口24;第一伺服器1a的第二端口12连接到第
二伺服器1b的第一端口11;第二伺服器1b的第二端口12连接到第三伺服器
1c的第一端口11……,以此类推;最终串联连接至第n伺服器1n。

当第四接口24内总线L1上的第四主控开关2d断开时,将使得串接在第四
接口24上的第一伺服器1a、第二伺服器1b、第三伺服器1c……第n伺服器1n
均处于与主控制器2断开通讯的状态,无法接收主控制器2广播的消息。当第
四主控开关2d导通时,才使得串接在第四接口24上各伺服器1可以与主控制
器2进行通讯,各伺服器1可以接收主控制器2广播的消息。然而,如果其中
的任意一个伺服器1中接在输入端口上的舵机开关断开时,将使得自身和后续
的伺服器1均与主控制器2断开通讯;如果任意一个伺服器1中接在输入端口
内总线L1上的舵机开关接通,而接在输出端口内总线L1上的舵机开关断开时,
将使得自身可与其前边的伺服器1导通;而后续的伺服器1都将处于与主控制
器2断开通讯的状态。

可以这么理解,假设某伺服器1为当前伺服器1,只有所有当前伺服器1之
前的伺服器1中的舵机开关均处于导通状态时,当前伺服器1才有可能通过控
制内部2个舵机开关的通断,将自身及后续伺服器1也接入网络中;或者将自
身接入到网络中,而将后续伺服器1断开。

比如,当当前伺服器1之前的伺服器1中的舵机开关均处于导通状态,而
当前伺服器1中的第一舵机开关k1和第二舵机开关k2均与处于断开状态时,
当前伺服器1与后续的伺服器1均无法接入当前伺服器1之前的总线L1中,即
当前伺服器1和后续的伺服器1均无法与主控制器2进行通讯。此时,其可以
通过检测第一插入线14和第二插入线15的信号来判断对应的第一端口11和第
二端口12中那个为输入端口,哪个为输出端口;当其需要将当前伺服器1也接
入网络时,当前伺服器1内的舵机MCU13向接在输入端口内总线L1上的舵机
开关发送命令,使其导通,如此,即可将当前伺服器1接入网络中。当其舵机
MCU13向接在输出端口内总线L1上的舵机开关也发送命令,使其导通,则将
使得后续伺服器1也具备接入网络的基础。如果当前伺服器1接在输出端口内
总线L1上的舵机开关断开,则无论后续伺服器1中的舵机开关如何动作,都将
无法接入到网络中。

本例提供的该伺服器控制系统,由于其改进了所述伺服器1,在伺服器1端
口之间的总线L1上增加了两个舵机开关,并在舵机开关与端口之间设置插入线
连接到舵机MCU13。如此,在将伺服器1连接到主控制器2上形成伺服器1控
制系统时,无需考虑两个端口的输入输出关系,可以随意组装;组装完成后,
通过插入线来检测信号,以分别哪个是输入端口、哪个是输出端口。根据需要,
伺服器1也可以通过对两个开关的通断控制,其可以通过逐个将伺服器1接入
网络的方式,逐个将伺服器1顺序设定ID,以防止出现重复ID,如此,使得其
组装更简单,省去组装和维修时人为设定ID的困扰。伺服器不会出现由于装反
而导致无法按照正确的设定逻辑动作的情况。

下面通过第四实施例对本发明公开的第三实施例中公开伺服器控制系统中
的伺服器ID设定方法进行具体解释说明。

依次择一接通主控制器上的接口,重复通过以下步骤对接在主控制器的接
口上的伺服器进行ID设定:如图5所示流程图,所述伺服器ID设定方法包括
如下步骤:

S101、伺服器断开步骤:使依次串接在主控制器2接口的各伺服器1预先
处于断开状态;如此,使得各伺服器1均处于断开网络的状态,在此状态下,
主控制器2广播的消息并不会往后传送。

S102、伺服器ID设定步骤:主控制器2广播,向主控制器当前接通接口的
总线L1发送将目标ID替换原有伺服器ID的消息;对应接口上各伺服器1内的
舵机MCU13总是检测伺服器1内的第一插入线14和第二插入线15;并在舵机
MCU13检测到第一插入线14或者第二插入线15中接收到信号时,判断接收到
信号的插入线处的端口为输入端口,没有接收到信号的插入线处的端口为输出
端口;然后使输入端口内总线L1上的舵机开关导通,将伺服器1接入网络,各
伺服器1接入网络时接收主控广播的消息,根据消息将目标ID替换原有伺服器
ID,完成该伺服器ID设定,并在设定伺服器ID后导通该伺服器1内两个舵机
开关;在完成该伺服器ID设定后导通该伺服器1内两个舵机开关的目的是使下
一伺服器1也可接收到主控制器2广播的消息。重复本步骤,直至完成所有伺
服器1的ID设定。修改后的各目标ID互不相同,以保证不会出现重名的ID。

S102步骤具体包括如下步骤:主控制器2广播,向总线L1发送将目标ID
替换原有伺服器ID的消息;按顺序使串接的各伺服器1重复以下步骤:通过检
测第一插入线14和第二插入线15的状态,判断伺服器1的输入端口和输出端
口,然后导通伺服器1中接在输入端口内总线L1上的舵机开关,使该伺服器1
接入网络中;然后伺服器1接收主控制器2广播的消息,将目标ID存储入存储
器中,替换原有ID;然后在完成设定ID后或者同时导通伺服器1中的两个舵机
开关。比如,第一个伺服器1修改以后的ID为1#;第二个伺服器1为2#,第
三个伺服器1为3#,以此类推,直至完成所有伺服器1的ID设定。

本例提供的ID设定方法,可通过主控制器2周期性的广播,将各预先处于
断开状态的伺服器1顺序接通,并按顺序将各伺服器1的ID改为目标ID。如此,
通过本例提供的ID设定方法,使得伺服器1无需再装配前预先手动设置好不重
复的ID,也无需考虑伺服器1与主控制器2连接成控制系统的过程中端口是否
接反的问题,其可通过预先设定的程序,在接好伺服器控制系统后,自动完成
伺服器1的ID设定。

在上述第四实施例中,需要较复杂的软件控制过程才能实现其方案,下面
通过具体的第五实施例对第四实施例进行进一步的改进,以使其伺服器ID设定
方法更为简单。

其中,同样的,主控制器2可以向各接口广播发送消息;同时,伺服器1
内舵机MCU13可控制第一舵机开关k1和第二舵机开关k2的通断;各伺服器1
可通过检测第一插入线14和第二插入线15,以判断输入端口和输出端口。当伺
服器1的ID为某预设断开ID时,舵机MCU13控制输入端口内总线L1上的舵
机开关导通,并使输出端口内总线L1上的舵机开关断开,将该伺服器1接通前
边的总线L1中,而将该伺服器1后续的伺服器1断开。当伺服器1的ID与预
设断开ID不同时,则舵机MCU13将控制两个舵机开关均导通;伺服器1可以
接收输入端口上发过来的消息,将消息中的ID数据取出,并将其替换存储器中
的原有ID。

依次择一接通主控制器上的接口,重复通过以下步骤对接在主控制器接通
接口上的伺服器进行ID设定:具体的,如图6所示流程图,所述伺服器ID设
定方法包括如下步骤:

S201、预设断开ID设定步骤:主控制器2广播,向总线L1上的所有伺服
器1发送将伺服器1的原始ID改为某预设断开ID的消息;各伺服器1根据接
收到的消息,将预设断开ID替换原始ID(即将预设断开ID存储入存储器中,
以替换存储器中原有的ID);以将所有伺服器1的ID都设定为某预设断开ID。
上述预设断开ID被用来作为伺服器1内第一舵机开关k1和第二舵机开关k2通
断的判断条件,当伺服器1内的ID为预设断开ID时,则使伺服器1内输入端
口内总线L1上的舵机开关接通,而使伺服器1内输出端口内总线L1上的舵机
开关断开。也即各伺服器1预先处于断开的状态。当伺服器1内的ID为不同于
预设断开ID的ID时,则使伺服器1内总线L1上的两个舵机开关导通。该预设
断开ID为人为设定的任意值,比如,本例中设为0xFF。

S202:目标ID替换预设断开ID步骤:主控制器2广播,向总线L1发送将
目标ID替换预设断开ID的消息;各伺服器1顺序接入网络,并在伺服器1接
入网络时将伺服器ID替换为目标ID,并在设定伺服器ID后导通伺服器1内所
有舵机开关;然后重复本步骤,直至所有伺服器1完成ID设定。该目标ID不
同于上述预设断开ID,且各伺服器1的目标ID互不相同。

其具体方式如下:先将所有伺服器1的ID都设定为预设断开ID,当伺服器
1内的ID为预设断开ID时,则使伺服器1内输入端口内总线L1上的舵机开关
接通,而使伺服器1内输出端口内总线L1上的舵机开关断开。然后主控制器2
广播,向总线L1发送包含将目标ID替换预设断开ID的消息,各伺服器1按顺
序逐个接收主控制器2广播的消息,逐一将各伺服器1的预设断开ID改为互不
相同的目标ID。由于目标ID不与预设断开ID相同,修改后的伺服器1中的舵
机开关导通;如此,紧接位于其后的伺服器1才能接收到来自主控制器2的消
息。换言之,任何一个伺服器1在其前一个伺服器1设定ID之前,该伺服器1
都无法连接到网络,其收不到主控制器2广播的消息。只有在前一个伺服器1
完成ID设定后,该伺服器1才能连接到网络。

具体的,最初状态下,只有第一个伺服器1的输入端口内总线L1上的舵机
开关导通,可将第一个伺服器1接到主控制器2上,可以接收到主控制器2广
播的消息,由于第一个伺服器1的输出端口内总线L1上的舵机开关断开,第二
个伺服器1及以后的各个伺服器1均处于断开的状态,此时第一个伺服器1根
据主控制器2广播的消息,将目标ID替换预设断开ID,完成第一个伺服器1
的ID设定,然后使第一个伺服器1内的两个舵机开关都导通。如此,使得第二
个伺服器1也可重复上述步骤完成ID设定并导通,如此,依次顺序完成所有伺
服器1的ID设定。

本例提供的上述ID设定方法,其无需复杂的步骤,仅通过简单的主控制器
2广播,各伺服器1根据接收到的消息,将预设断开ID逐一替换为互不相同的
目标ID,可以快速的逐一完成各伺服器1的ID设定,其方法简单快捷。

申请人在设置上述预设断开ID,并将各预设断开ID逐一替换为互不相同的
目标ID时,发现由于其核心逻辑为当其伺服器1内的ID为预设断开ID时,则
使伺服器1内输入端口内总线L1上的舵机开关接通,同时使伺服器1内输出端
口内总线L1上的舵机开关断开。当伺服器1内的ID为非预设断开ID时,使伺
服器1内总线L1上的两个舵机开关均导通。如此,可以使当前伺服器1完成ID
设定,并在ID设定后导通当前伺服器1,使下一个伺服器1可以接入网络中重
复上述过程,最终完成所有伺服器1的ID设定。然而,在将各伺服器1内最早
存储的原始ID修改为预设断开ID之前,如果若干伺服器1中的原始ID就是预
设断开ID,则在其原始ID为预设断开ID的伺服器1就将出现断开,导致后续
伺服器1中的ID无法被修改为预设断开ID,最终导致无法按照设定的逻辑完成
所有ID的设定。为此,作为改进,本例中采用以下第六实施例介绍的方案以防
止上述错误的发生。

下面通过第六实施例介绍一种进一步改进的预设断开ID设定方法,如图7
所示流程图,其具体包括如下步骤:

S2011、非预设断开ID设定步骤:主控制器2广播,向总线L1上的所有伺
服器1发送将伺服器1的原始ID设定为某非预设断开ID的消息;各伺服器1
根据接收到的消息,将非预设断开ID替换原始ID;且主控制器2回读总线L1
上是否存在预设断开ID,即查找是否存在预设断开ID的伺服器1,如果存在预
设断开ID,则主控制器2继续广播,直至所有伺服器1总线L1上的原始ID均
被设定为非预设断开ID;在此情形下,即使有部分伺服器1的原始ID为预设断
开ID(此时该原始ID为预设断开ID的伺服器1后续的伺服器1均处于断开状
态,无法接收主控制器2广播的消息),该预设断开ID也可被修改为非预设断
开ID,使得该伺服器1及后续的伺服器1均可接入网络,且后续的伺服器1将
原始ID全部改为非预设断开ID;该非预设断开ID可以人为设定的任意与预设
断开ID不相同的值。比如,本例中设定为0xFE。由于该非预设断开ID与预设
断开ID不相同,因此,各伺服器1内的舵机开关均将处于导通状态,也即将各
伺服器ID设定为非预设断开ID后,各伺服器1均导通接入网络中,各伺服器1
均可接收主控制器2广播的消息。

S2022、预设断开ID替换非预设断开ID步骤:主控制器2广播,向总线
L1上的所有伺服器1发送将所述非预设断开ID设定为预设断开ID的消息;各
伺服器1根据接收到的消息,将预设断开ID替换所述非预设断开ID。

采用本例提供的该预设断开ID设定方法,其在设定预设断开ID之前,先
将所有伺服器1的原始ID设置为某与预设断开ID不相同的非预设断开ID,再
将非预设断开ID全部替换为预设断开ID。即使原始ID为预设断开ID,也可以
使其被修改为某非预设断开ID,也即实现了将所有任意原始ID替换为预设断开
ID的目的。如此,有效的避免了上述实施例5中出现的问题(即指由于部分伺
服器1的原始ID为预设断开ID,导致原始ID为预设断开ID的伺服器1后续
的电机均无法被修改为预设断开ID,使得无法按照程序设定,将各伺服器1按
顺序逐个接通并一一设定ID的操作的问题)。在此基础上,就可将所有伺服器
的预设断开ID修改为互不相同的目标ID。最终实现了伺服器自动设定ID的目
的。该方法无需复杂的步骤,简单快捷。

在第五实施例、第六实施例的基础上,下面通过第七实施例介绍改进后的
伺服器ID设定方法。如图8所示流程图,该伺服器ID设定方法主要为第五实
施例中的步骤,且将第六实施例中的S2011和S2012步骤替换原S201步骤。

采用本例提供的伺服器ID设定方法,其可以将各伺服器1的任意原始ID
修改为非预设断开ID,然后将所有伺服器1的非预设断开ID修改为互不相同的
目标ID。最终实现了伺服器1自动设定ID的目的。该方法无需复杂的步骤,简
单快捷,且修改结果更准确可靠。

下面通过第八实施例进一步具体介绍进一步优化后的伺服器ID设定方法,
根据需要,依次择一接通主控制器2接口内的主控开关,然后重复通过下述步
骤对串接在接通的主控开关对应接口上的各伺服器1进行ID设定。此处所说的
“依次择一接通”请结合图2-图4进行理解,比如,当第一接口21内的第一主
控开关2a接通时,其余接口内的主控开关均断开;对接在第一接口21上的各
伺服器ID进行设定。同样的,当第二接口22内的第二主控开关2b接通时,其
余接口内的主控开关均断开;对接在第二接口22内的各伺服器ID进行设定。
当第三接口23上的第三主控开关2c接通时,其余接口内的主控开关均断开;
对接在第三接口23上的各伺服器ID进行设定。同样的,当第四接口24内的第
四主控开关2d接通时,其余接口内的主控开关均断开;对接在第四接口24上
的各伺服器ID进行设定。同样的,当第五接口25内的第五主控开关2e接通时,
其余接口内的主控开关均断开;对接在第五接口25上的各伺服器ID进行设定。
其中,依次并不指各接口只能按顺序接通,即并不一定要按照第一接口21、第
二接口22、第三接口23、第四接口24和第五接口25顺序接通,也可以按其他
不规则顺序进行接通,比如,按第一接口21、第三接口23、第四接口24、第二
接口22、第五接口25等的顺序也是可以的。如此,可以逐串完成所有主控制器
2接口上串接的伺服器设定ID;具体的串接在每个主控制器2接口上伺服器ID
设定方法包括在伺服器1中的步骤和在主控制器2中的步骤:

其中,所述主控制器2中的步骤如图9所示,具体如下:

步骤S301、主控制器2广播,向总线L1发送将所有伺服器1的原始ID设
定为某非预设断开ID的消息;具体的,该主控制器2广播消息,且回读总线L1
上是否存在预设断开ID,如存在预设断开ID,则继续重复广播,直至将所有伺
服器1原始ID设定为非预设断开ID时,才进入S302步骤,该非预设断开ID
可以为人为设定的任意值,比如0xFE。

步骤S302、主控制器2广播,向总线L1发送将所有伺服器1的非预设断开
ID设定为预设断开ID的消息;该预设断开ID可以为人为设定的任何值,且不
同于非预设断开ID,比如0xFF。

步骤S303、主控制器2广播,重复向总线L1发送将预设断开ID设定为互
不相同的目标ID的消息;本步骤中,主控制器2重复广播包含互不相同的目标
ID的消息,每广播一次就回读总线L1上的消息,判断是否已将总线L1上可接
收到广播的ID为预设断开ID的伺服器1完成目标ID的设定,如果已完成目标
ID的设定,则进入下一广播,向总线L1发送将预设断开ID设定为另一与上次
目标ID不相同的目标ID。以此类推。比如,主控制器2第一次广播将伺服器1
的预设断开ID(0xFF)替换为目标ID(0x01)的消息。总线L1上的第一个伺服
器1接收到该主控制器2广播的该消息后,即根据该消息将目标ID(0x01)替换
该伺服器1中原有的预设断开ID(0xFF),并向总线L1上返回结果。主控制
器2接收到该返回结果后,即进入下一轮广播,再次向总线L1发送将预设断开
ID设定为另一与上次目标ID(0x01)不相同的目标ID(比如0x02)。然后主控制
器2重复广播互不相同的目标ID,并接收总线L1上返回的结果。作为优选的方
式,目标ID总是按顺序递增或递减。比如目标ID从0x01、0x02、0x03……0x0n
依次递增。或者从0x0n……0x03、0x02、0x01依次递增。

所述伺服器1中的步骤如图10所示,具体如下:

S401、舵机MCU13读取存储在存储器中的舵机ID;

S402、判断舵机ID是否为预设断开ID,如果判断结果为否,进入步骤S403,
如果判断结果为是,则进入步骤S404;

S403、使第一舵机开关k1和第二舵机开关k2均接通,即使该伺服器1处
于接通状态;

S404、检测第一插入线14和第二插入线15;然后分别进入步骤S405和步
骤S406;

S405、判断第一插入线14是否检测到信号,如果判断结果为否,则进入步
骤S406,如果判断结果为是,则进入步骤S407;

S406、使第一舵机开关k1断开;

S407、使第一舵机开关k1接通;

S408、判断第二插入线15是否检测到信号,如果判断结果为是,则进入步
骤S409,如果判断结果为否,则进入步骤S410;

S409、使第二舵机开关k2接通;

S410、使第二舵机开关k2断开。

该步骤S403的含义为如果不为预设断开ID,则表示该伺服器1将被接通,
该伺服器1具备可以接收主控制器2广播的信息的基础(是否能接收到主控制
器2广播的消息,还取决于在该伺服器1之前是否存在ID为预设断开ID的伺
服器1,如果该伺服器1之前存在ID为预设断开ID的伺服器1,则该伺服器1
同样因为前面的伺服器1断开,使得其处于同样无法接收到主控制器2广播的
消息的状态),并可根据接收到的主控制器2广播的消息完成相应的动作。

步骤S404-S410的含义为,当该伺服器1内的ID为预设断开ID时,舵机
MCU13检测第一插入线14和第二插入线15中的信号,当其中的任一插入线检
测到信号时,则表示该检测到信号的插入线连接到的端口为输入端口;反之,
没有检测到信号的插入线连接到的端口为输出端口(由于各伺服器1通过串接
的方式接在主控制器2的接口上,因此,由于信号的单向流动,其结果只能是
一个插入线检测到信号时,另一插入线必然检测不到信号,因此可以以此判断
谁是输入端口和输出端口);然后,将输入端口内总线L1上的舵机开关接通,
而将输出端口内总线L1上的舵机开关断开;如此,即可使该伺服器1被连接到
前序的总线L1中,使其可以接收到主控制器2广播的消息,并根据该消息完成
相应的操作(比如将其修改为目标ID或者预设断开ID等)。且使输出端口上
的舵机开关断开,使得该伺服器1后续的伺服器1无法再接收到主控制器2广
播的消息。比如,当第一插入线14检测到信号时,表示对应的第一端口11为
输入端口,则接通该第一端口11内的第一舵机开关k1;如此,第二插入线15
中将检测不到信号,表示对应的第二端口12为输出端口,则断开第二端口12
内的第二舵机开关k2。

在本例提供的ID设定方法中,在主控制器2进行步骤S301时,接在主控
制器2对应接口上的伺服器1都会进入步骤S401-S403的判断过程,由于在此
过程中,大部分情况下,伺服器1中的原始ID都不是预设断开ID(如0xFF),
使得所有伺服器1中的舵机开关都将被接通,且使各伺服器1接收主控制器2
广播的消息,将伺服器1中的原始ID设定为非预设断开ID(如0xFE);即使
其中有部分伺服器1的原始ID为预设断开ID,其也可以经步骤S401、S402、
S404-S410修改为非预设断开ID,并使其在下一个循环内使该已经修改成非预
设断开ID的伺服器1导通,使后续的伺服器1也可以接收到主控制器2的广播,
再进入S401-S303的步骤,如此,使得所有伺服器1的原始ID最终都被修改为
非预设断开ID。

然后主控制器2进行步骤S302,此时,主控制器2广播,向总线L1发送将
所有伺服器1的非预设断开ID设定为预设断开ID的消息;此时,由于主控制
器2经过上述步骤S301及各伺服器1经过S401-S410步骤后,已将所有伺服器
1的ID修改为非预设断开ID,此时,总线L1上的各伺服器1接收到上述总线
L1上的将所有伺服器1的非预设断开ID设定为预设断开ID的消息,即执行将
预设断开ID替换原有非预设断开ID的操作;各伺服器1执行步骤S401-S403,
将所有伺服器1ID设定为预设断开ID。一旦各伺服器1完成设定预设断开ID
的操作;则在下一周期中,伺服器1重复执行S401、S402、S404-S410的步骤;
如此,将使得各伺服器1均保持其中的输入端口内总线L1上的舵机开关导通,
而使各伺服器1输出端口内总线L1上的舵机开关断开。如此,也就使得仅有串
接在主控制器2接口上的第一个伺服器1能接收到主控制器2广播的该消息,
第一个伺服器1以后的伺服器1均处于断开状态,无法接收到主控制器2广播
的消息,其结果使得最终所有伺服器1的ID都被修改为预设断开ID存储在存
储器中。

然后主控制器2进行步骤S303,此时,主控制器2广播,重复向总线L1
发送将预设断开ID设定为互不相同的目标ID的消息;当主控制器2在该阶段
初次广播将某目标ID(如0x01)替换预设断开ID时,仅有第一个伺服器1能
接收到广播,该第一个伺服器1接收到信号,执行步骤S401、S402、S404-S410;
如此,将第一个伺服器1接收到的目标ID(如0x01)替换原有预设断开ID;当
主控制器2回读到总线L1上返回的第一个伺服器1已完成ID设定的结果后,
主控制器2进入下一轮广播,向总线L1发送将不同于上次广播的目标ID(如
0x02)替换预设ID的消息,第一个伺服器1执行步骤S401-S403,但其不修改
其存储器内存储的ID(0x01),第二个伺服器1执行S401、S402、S404-S410,将
第二个伺服器1上输入端口内总线L1上的舵机开关导通,而使各伺服器1输出
端口内总线L1上的舵机开关断开。该第二个伺服器1接收到主控制器2广播的
消息,将目标ID(即0x02)替换预设断开ID。当主控制器2回读到总线L1上返
回的第二个伺服器1已完成ID设定的结果后,主控制器2进入下一轮广播,向
总线L1发送将不同于上述2次广播的目标ID(如0x03)替换预设ID的消息,
第一个、第二个伺服器1执行步骤S401-S403,但其不修改其存储器内存储的ID,
第三个伺服器1执行S401、S402、S404-S410,将第三个伺服器1上输入端口内
总线L1上的舵机开关导通,而使各伺服器1输出端口内总线L1上的舵机开关
断开。该第三个伺服器1接收到主控制器2广播的消息,将目标ID(即0x03)替
换预设断开ID。如此循环,主控制器2重复广播,各伺服器1依次完成各不相
同的目标ID替换预设断开ID的步骤,最终将所有目标ID替换预设断开ID。

如此,经过上述步骤,即完成了所有伺服器1设定ID的过程。

本例提供的伺服器ID设定方法,无需复杂的软件设置流程,仅需简单地经
过主控制器2广播消息,各伺服器1内部自行根据设定的程序及接收到的主控
制器2广播的消息,自动完成伺服器1的ID设定。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发
明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明
的保护范围之内。

一种伺服器控制系统.pdf_第1页
第1页 / 共19页
一种伺服器控制系统.pdf_第2页
第2页 / 共19页
一种伺服器控制系统.pdf_第3页
第3页 / 共19页
点击查看更多>>
资源描述

《一种伺服器控制系统.pdf》由会员分享,可在线阅读,更多相关《一种伺服器控制系统.pdf(19页珍藏版)》请在专利查询网上搜索。

为解决现有伺服器上输入端口和输出端口若接反时,将导致伺服器无法实现自动改ID,伺服器无法按照正确的设定逻辑动作的问题。本发明提供了一种伺服器控制系统,包括主控制器及若干伺服器;所述主控制器包括主控MCU和若干接口,至少在其中的一个接口上通过总线串接所述伺服器;所述伺服器包括舵机MCU、第一端口和第二端口;所述第一端口和所述第二端口之间通过总线连接;其中,所述第一端口和所述第二端口之间的总线上设有所。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 控制;调节


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1