一种同步串行控制系统及方法

文档序号:1508359 发布日期:2020-02-07 浏览:14次 >En<

阅读说明:本技术 一种同步串行控制系统及方法 (Synchronous serial control system and method ) 是由 李齐 张伟 蒋宏业 雷卫芬 于 2019-09-27 设计创作,主要内容包括:本发明提供了一种同步串行控制系统,其特征在于,包括同步信号线、串行数据线、控制器和多个行为器;所述控制器包括帧计数器和同步模块;所述帧计数器的计数初始值为0;所述行为器包括周期计数器和运行模块;所述控制器通过所述串行数据线连接所述运行模块;所述控制器通过所述同步信号线连接所述周期计数器;所述周期计数器的计数初始值为0。一种同步串行控制方法,使用一种同步串行控制系统。本发明的有益效果是:在不用保持发送设备与接收设备之间时钟频率相同的前提下,实现设备与设备之间利用优化的串行总线进行同步通讯。(The invention provides a synchronous serial control system which is characterized by comprising a synchronous signal line, a serial data line, a controller and a plurality of actors; the controller comprises a frame counter and a synchronization module; the counting initial value of the frame counter is 0; the actor comprises a cycle counter and an operation module; the controller is connected with the operation module through the serial data line; the controller is connected with the cycle counter through the synchronous signal line; the count initial value of the cycle counter is 0. A synchronous serial control method uses a synchronous serial control system. The invention has the beneficial effects that: under the premise of not keeping the same clock frequency between the sending equipment and the receiving equipment, the synchronous communication between the equipment and the equipment is realized by using the optimized serial bus.)

一种同步串行控制系统及方法

技术领域

本发明涉及同步控制领域,特别涉及一种同步串行控制系统及方法。

背景技术

随着我国经济的发展,人民生活水平的提高,我国工业自动化蓬勃发展,基于多轴机器人的工业化自动化生产日益增加,然而随着对于生产精度的要求的日益增加,传统的多轴机器人控制系统越来越难以满足生产精度的需要。

传统的多轴机器人控制系统,采用串行或者并行通信方式对多轴机器人的各轴进行控制:串行通信,控制总机与电机之间按bit进行数据交流,将数据一bit一bit进行传输,每bit数据占据固定的时间长度,该种通信方式虽然节约了传输线,并且相对于并行通讯在多轴机器人的使用中易于维护,但是由于其传输速度较慢,各轴之间的信号难以同步;并行通讯,控制总机与电机之间按字节进行传输,传输速度快,但是由于其所使用的通信线较串行通信较多,从而导致其成本相对较高,并且在多轴机器人的使用中难以维护。

为了解决串行总线的同步问题,一般采用使用串行总线传输数据帧的方式进行传输,每一个数据帧包括同步字符、数据字符和校验字符,同步字符位于帧开头,用于确认数据字符的开始。数据字符在同步字符之后,个数没有限制,由所需传输的数据块长度来决定;校验字符有1到2个,用于接收端对接收到的字符序列进行正确性的校验,但是该种方式需要发送时钟和接收时钟保持严格的同步,而如果要实现时钟同步,必须要首先实现频率同步,而时钟信号在传递过程中由于相位误差,必然会导致频率误差,从而导致频率难以同步,进而导致始终无法同步。

故市场亟需一种可以在不需要保持发送设备与接收设备之间时钟频率相同的前提下,实现设备与设备之间同步通讯的同步串行通讯系统及方法。

发明内容

为了解决上述技术问题,本发明中披露了一种同步串行控制方法,本发明的技术方案是这样实施的:

一种同步串行控制系统,其特征在于,包括同步信号线、串行数据线、控制器和多个行为器;所述控制器包括帧计数器和同步模块;所述帧计数器的计数初始值为0;所述行为器包括周期计数器和运行模块;所述控制器通过所述串行数据线连接所述运行模块;所述控制器通过所述同步信号线连接所述周期计数器;所述周期计数器的计数初始值为0。

优选地,所述行为器选自电机、I/O设备、传感装置、显示设备中的一种或者多种。

优选地,所述行为器的数量是不小于两个的。

优选地,所述行为器还包括同步信号监测模块;所述同步信号监测模块连接所述运行模块和所述周期计数器。

一种同步串行控制方法,使用一种同步串行控制系统,包括:S1:所述控制器初始化所述帧计数器并向所述多个行为器发送初始化信号;S2:所述多个行为器接受所述初始化信号并初始化相应的所述周期计数器;S3:所述控制器通过所述串行数据线传输控制指令给所述多个行为器,所述控制器通过所述同步信号线传输同步信号给所述多个行为器;S4:所述行为器根据所述行为器的编号接受所述控制指令并存储至所述运行模块,所述周期计数器计数加一,并传输应答信号给所述控制器;S5:所述控制器接收到所述应答信号后帧计数器计数加一;S6:检查帧计数器,若所述帧计数器帧计数器计数值不小于多个行为器的数量,进入下一步;若所述帧计数器的计数值小于所述多个行为器的数量,回到S1;S7:所述控制器通过所述串行数据线向所述多个行为器的运行模块发送同步执行信号;S8:所述多个行为器执行所述控制指令并回到S1。

优选地,所述同步信号连续传输后呈方波状;所述一帧的同步信号为半个周期的方波信号。

优选地,所述控制指令包括帧计数;所述帧计数与所述帧计数器的计数相同。

优选地,还包括S4a:所述同步信号监测模块监测同步信号是否一致;S4a执行于S3之后,S5之前;S4a包括:S4a-1:所述同步信号监测模块比较所述周期计数器的数值和所述帧计数;S4a-2:若所述周期计数器的数值与所述帧计数一致,进入S4a-3-a;若所述帧计数器小于所述周期计数器,进入S4a-3-b;若所述周期计数器小于所述帧帧计数器,进入S4a-3-c;S4a-3-a:进入S4;S4a-3-b:所述行为器通过所述串行数据线向所述控制器请求重新发送数据,所述控制器重新发送控制指令给所述行为器,所述行为器接收到重新发送的控制指令后,所述周期计数器计数加一并传输所述应答信号给所述控制器并进入S5;S4a-3-c:所述周期计数器加一并传输应答信号给所述控制器后进入S5。

实施本发明的技术方案可解决现有技术中必需要保持发送设备与接收设备之间时钟频率相同的前提下才能实现同步通讯的技术问题;实施本发明的技术方案,可实现可以在不需要保持发送设备与接收设备之间时钟频率相同的前提下,实现设备与设备之间同步通讯的技术效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一种实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为一种同步串行控制系统的一种具体的实施例的结构图;

图2为一种同步串行控制方法的一种具体的实施例的流程图;

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在一种具体的实施例中,一种同步串行控制系统,其特征在于,包括同步信号线、串行数据线、控制器和多个行为器;所述控制器包括帧计数器和同步模块;所述帧计数器的计数初始值为0;所述行为器包括周期计数器和运行模块;所述控制器通过所述串行数据线连接所述运行模块;所述控制器通过所述同步信号线连接所述周期计数器;所述周期计数器的计数初始值为0。

在该种具体的实施例中,同步信号线用于发送控制器的同步信号,串行数据线用于发送控制器对各个行为器的控制指令,控制指令用于为行为器的行为提供行为依据,帧计数器用于对目前已经发送成功了多少帧的控制指令进行计数,每发送成功一帧的控制指令,对应一帧的同步信号,控制指令中含有本次控制指令的接受行为器的地址,行为器的地址指向哪个行为器,本次控制指令由哪个行为器执行,重复发送控制指令,直至所有的行为器都收到相应的控制指令,然后发送同步执行信号,命令所有的行为器执行该动作;行为器用于根据运行模块中的控制指令进行运行;其中的周期计数器用于根据同步信号对周期进行计数,运行模块用于存储控制指令,当控制器发送的执行指令传输到各个行为器后,行为器根据存储在运行模块中的控制指令进行运行,并依次将相应的控制指令与同步信号删除;通过上述模块之间的交互,可以在不需要保持发送设备与接收设备之间时钟频率相同的前提下,实现设备与设备之间同步通讯。

在一种优选的实施例中,所述行为器选自电机、I/O设备、传感装置、显示设备中的一种或者多种。

在该种优选的实施例中,行为器可为电机、I/O设备、传感装置或者显示设备,也可为其他类型需要进行同步运行的产品,其可适用于一切需要进行同步运行的设备。

在一种优选的实施例中,所述行为器的数量是不小于两个的。

在该种优选的实施例中,行为器的数量不小于两个,其行为器的数量可根据实际需要选用适合的行为器数量。

在一种优选的实施例中,所述行为器还包括同步信号监测模块;所述同步信号监测模块连接所述运行模块和所述周期计数器。

在该种优选的实施例中,同步信号监测模块用于监测是否出现了丢包现象,控制器每进行一次数据传输,同步信号监测模块对运行模块和周期计数器的内容进行检测一次,其根据周期计数器与运行模块的内容判断是否存在着丢包的现象,正常情况下,同步信号的数量与运行模块中的控制指令的帧计数应当是一对一的关系,若其中出现了同步信号或者是控制指令的帧计数不一的情况,说明在运行过程中出现了丢包的现象,在该种状况下,同步信号监测模块可以实现对于丢包的修正

在一种具体的实施例中,一种同步串行控制方法,使用一种同步串行控制系统,包括:S1:所述控制器初始化所述帧计数器并向所述多个行为器发送初始化信号;S2:所述多个行为器接受所述初始化信号并初始化相应的所述周期计数器;S3:所述控制器通过所述串行数据线传输控制指令给所述多个行为器,所述控制器通过所述同步信号线传输同步信号给所述多个行为器;S4:所述行为器根据所述行为器的编号接受所述控制指令并存储至所述运行模块,所述周期计数器计数加一,并传输应答信号给所述控制器;S5:所述控制器接收到所述应答信号后帧计数器计数加一;S6:检查帧计数器,若所述帧计数器帧计数器计数值不小于多个行为器的数量,进入下一步;若所述帧计数器的计数值小于所述多个行为器的数量,回到S1;S7:所述控制器通过所述串行数据线向所述多个行为器的运行模块发送同步执行信号;S8:所述多个行为器执行所述控制指令并回到S1。

在该种具体的实施例中,控制器读取帧计数器的计数并将计数融入控制指令中,控制器通过同步信号线给周期计数器传输同步信号,通过串行数据线给行为器传输控制指令,控制器根据控制指令中的指令地址判断该控制指令是否属于自己,如控制指令中的地址指向0号行为器,则0号控制器则在未来执行该信号,若地址指向1号行为器,则1号行为器将在未来执行该信号,以此类推,直到所有行为器都存储了相应的控制指令;当行为器接收到相应的控制指令后,向控制器发出应答信号,告知控制器已经收到了控制信号,控制器根据该应答信号将帧计数器的数值加一;当所有的行为器都收到了相应的控制指令后,此时控制器所发送的控制指令所携带的指令被标记为为执行信号,所有的控制器都应当根据执行中的内容进行运行,当控制指令为执行命令时,即命令所有的行为器运行存储在运行模块中的控制指令,行为器根据存储在运行模块中的控制指令行为,并将存储在运行模块中和周期计数器的信号依次清空;在完成前述步骤后,回到S1,重复进行;通过上述步骤,实现了在串行条件下对于行为器的同步控制,可以在不需要保持发送设备与接收设备之间时钟频率相同的前提下,实现设备与设备之间同步通讯。

在一种优选的实施例中,所述同步信号连续传输后呈方波状;所述一帧的同步信号为半个周期的方波信号。

在该种优选的实施例中,同步信号为数字信号,高电平为1,低电平为0,同步信号连续传输后在统计上呈方波状;传统上一次信号传输需要一个方波周期才能完成,一次传输一个数据帧,而若将信号传输改为一个方波周期内传输两次,即在半个方波周期内传输一次,从而提高了信号的传输速率,极大的提高了设备的运行效率。

在一种优选的实施例中,所述控制指令包括帧计数;所述帧计数与所述帧计数器的计数相同。

在该种优选的实施例中,控制指令中包括帧计数,帧计数的数值与帧计数器的数值相同,在运行过程中,可能会存在着同步信号与控制指令同时丢失的现象,一旦发生这种现象,可通过帧计数获知是否出现该种现象,当出现该种现象时,帧计数会出现数字不连续的现象,当同步信号监测模块发现出现该种现象时,使用一帧空的控制指令与一帧空的同步信号对出现丢包现象的控制指令和同步信号进行补位,并向控制器发送重新发送信号的请求。

在一种优选的实施例中,还包括S4a:所述同步信号监测模块监测同步信号是否一致;S4a执行于S3之后,S5之前;S4a包括:S4a-1:所述同步信号监测模块比较所述周期计数器的数值和所述帧计数;S4a-2:若所述周期计数器的数值与所述帧计数一致,进入S4a-3-a;若所述帧计数器小于所述周期计数器,进入S4a-3-b;若所述周期计数器小于所述帧帧计数器,进入S4a-3-c;S4a-3-a:进入S4;S4a-3-b:所述行为器通过所述串行数据线向所述控制器请求重新发送数据,所述控制器重新发送控制指令给所述行为器,所述行为器接收到重新发送的控制指令后,所述周期计数器计数加一并传输所述应答信号给所述控制器并进入S5;S4a-3-c:所述周期计数器加一并传输应答信号给所述控制器后进入S5。

在该种优选的实施例中,S4a用于检测是否存在丢包的现象,在运行过程中,丢包既可能是同步信号出现丢包,也可能是控制指令出现丢包;当同步信号出现丢包的时候,周期计数器的数值小于帧计数器,故需要对周期计数器进行补位,将其数值加一;若帧计数器的数值小于周期计数器,说明控制指令丢失,这时需要向控制器请求重新发送控制指令,以填补空缺。

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

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:时间同步方法及装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!