CN117200927A - 一种基于can网络的mcu时钟同步控制系统 - Google Patents
一种基于can网络的mcu时钟同步控制系统 Download PDFInfo
- Publication number
- CN117200927A CN117200927A CN202311103749.4A CN202311103749A CN117200927A CN 117200927 A CN117200927 A CN 117200927A CN 202311103749 A CN202311103749 A CN 202311103749A CN 117200927 A CN117200927 A CN 117200927A
- Authority
- CN
- China
- Prior art keywords
- node controller
- time
- master node
- slave node
- controllers
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 34
- 238000012937 correction Methods 0.000 claims description 6
- 230000005059 dormancy Effects 0.000 claims description 6
- 238000000034 method Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Synchronisation In Digital Transmission Systems (AREA)
- Electric Clocks (AREA)
Abstract
本发明公开了一种基于CAN网络的MCU时钟同步控制系统,属于时钟同步技术领域,包括主节点控制器和多个从节点控制器,主节点控制器通过CAN网络总线与多个从节点控制器通讯,用于主节点控制器上的时间同步状态机和多个从节点控制器同步状态;主节点控制器包括:报文帧,用于主节点控制器确认各个从节点控制器是否激活并进入准备同步状态;通过多个控制器间的CAN网络总线网络通讯,同步各节点的同步时间,不仅在同步点保持时间同步,同时通过精确的校准时钟,在同步点外让各个节点预测出精确的全局时间,消除由于软件和硬件偏差导致的多个控制器之间存在的时钟系统偏差,在多个控制器之间传递一些时间标签的信号时,能保证该信号的时间有效性。
Description
技术领域
本发明属于时钟同步技术领域,具体涉及一种基于CAN网络的MCU时钟同步控制系统。
背景技术
随着网络技术和控制技术的发展,传统工厂正在向智能化工厂方向转变,制造车间亦逐步向数字化车间发展,工业控制系统同样沿着仪表控制、模拟控制、计算机集中控制、计算机集散式控制、现场总线控制发展到网络化控制的新阶段。在各类网络化控制中,技术发展最为迅速、应用最为广泛的即以计算机网络通信领域中的以太网技术为基础,发展的工业以太网控制系统;工业以太网控制系统虽然具有高传输率、高可靠性、实时性、可扩展性、可维护性等优点,但面对工业控制系统网络中数据量日益庞大、数据信息更加多源、控制任务更为复杂的新态势,工业以太网控制系统中多控制器任务调度、信息实时交互和协同控制运行等新难题亦逐渐浮出水面。而解决上述问题的首要步骤同时亦是最为关键的步骤是如何实现网络控制系统内多控制器之间的高精度时钟同步;
在多控制器协同控制时,控制器之间由于软件和硬件偏差的导致各个控制器之间时钟存在系统偏差,这样在控制器之间传递一些时间标签的信号时,就不能保证该信号的时间有效性,如何校准时钟偏差,保证各个控制器间的时间同步,是多控制器协同控制需要解决的问题
发明内容
为了解决控制器之间由于软件和硬件偏差的导致各个控制器之间时钟存在系统偏差的问题,本发明的目的在于提供一种基于CAN网络的MCU时钟同步控制系统,以解决上述的问题。
为实现上述目的,本发明提供如下技术方案:一种基于CAN网络的MCU时钟同步控制系统,包括主节点控制器和多个从节点控制器,所述主节点控制器通过CAN网络总线与多个从节点控制器通讯,用于主节点控制器上的时间同步状态机和多个从节点控制器同步状态,完成时间同步校准;
其中,能够在多个控制器中选择一个控制器设置定义为主节点控制器,能够将除主节点控制器外的其他多个控制器均设置定义为从节点控制器;
所述主节点控制器包括:
报文帧,用于主节点控制器确认各个从节点控制器是否激活并进入准备同步状态;
主节点同步帧,用于主节点控制器和多个从节点控制器的时钟矫正;
主节点时间帧,用于广播系统时间和多个从节点控制器与主节点控制器之间的时钟偏差;
所述从节点控制器包括:
从节点时间帧,用于上传从节点控制器本地时钟计数给主节点控制器。
作为一种优选的实施方式,所述从节点控制器能够记录主节点控制器发送至从节点控制器的同步帧的计数值,且所述从节点控制器能够计算接收到的多个同步帧之间的时间间隔。
作为一种优选的实施方式,所述主节点控制器能够接收从节点控制器发送的时间间隔,并根据从节点控制器发出的时间间隔计算出从节点控制器需要修正的时间偏差。
作为一种优选的实施方式,所述从节点控制器还能够根据主节点控制器发送的时间帧计算出本地的时间。
作为一种优选的实施方式,所述主节点控制器上的时间同步状态机的具体工作步骤包括:
S101:系统初始化过程中,时间同步状态机进入初始化状态;
S102:完成初始化后,主节点控制器与多个从节点控制器握手,通过报文帧确认主节点控制器和多个从节点控制器是否激活并进入准备同步状态;
S103:确认主节点控制器和多个从节点控制器准备好后主节点首先进入同步状态,在同步状态完成时间同步校准。
作为一种优选的实施方式,在所述时间同步校准时:
当所述主节点控制器有休眠请求时可进入节点休眠状态;
当所述主节点控制器唤醒后可进入初始化状态。
作为一种优选的实施方式,所述主节点控制器和多个从节点控制器完成时间同步校准的主要步骤包括:
S201:主节点控制器发送第一次时间同步帧,所有从节点控制器接收到第一次时间同步帧后将第一次时间同步帧设置为中断后接收;
S202:所有从节点控制器在接收到中断后,读取当前高精计数器的数值;
S203:经过需要的时钟修正间隔时间后,主节点控制器发送第二次时间同步帧;
S204:所有从节点控制器接收到第二次时间同步帧后,在中断中记录下第二次时间同步帧的计数值,并计算出第二次时间同步帧与第一次时间同步帧之间的时钟间隔差值;
S205:从节点控制器发送其计算出的第二次时间同步帧与第一次时间同步帧之间的时间间隔到主节点控制器;
S206:主机点控制器接收到从节点控制器发出的第二次时间同步帧与第一次时间同步帧之间的时间间隔后,主节点控制器计算出从节点控制器需要修正的时间偏差;
S207:主节点控制器将计算出的从节点控制器需要修正的时间偏差和系统时间放在时间帧中广播给所有从节点控制器;
S208:从节点控制器接收到主节点控制器发送的时间帧后,能够计算从节点控制器本地的时间。
作为一种优选的实施方式,所述计算从节点控制器本地的时间时,需要根据从节点控制器接收到主节点时间帧、从节点控制器本地时钟、系统时间和时钟偏差计算出本地的时间。
与现有技术相比,本发明的有益效果是:
该一种基于CAN网络的MCU时钟同步控制系统通过多个控制器间的CAN网络总线网络通讯,同步各个节点的同步时间,不仅在同步点保持时间同步,同时通过精确的校准时钟,在同步点外让各个节点预测出精确的全局时间,消除由于软件和硬件偏差导致的多个控制器之间存在的时钟系统偏差,在多个控制器之间传递一些时间标签的信号时,能保证该信号的时间有效性。
附图说明
图1为本发明提出的一种基于CAN网络的MCU时钟同步控制系统的总体原理框图;
图2为本发明提出的一种基于CAN网络的MCU时钟同步控制系统中主节点控制器上的时间同步状态机的原理框图;
图3为本发明提出的一种基于CAN网络的MCU时钟同步控制系统中主节点控制器和从节点控制器发送报文帧的原理框图。
具体实施方式
下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述,给出了本发明的若干实施例,但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例,相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件,当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件,本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同,本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明,本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
实施例,请参阅图1-3,本发明提供一种基于CAN网络的MCU时钟同步控制系统,包括主节点控制器和多个从节点控制器,主节点控制器通过CAN网络总线与多个从节点控制器通讯,用于主节点控制器上的时间同步状态机和多个从节点控制器同步状态,完成时间同步校准;
其中,能够在多个控制器中选择一个控制器设置定义为主节点控制器,能够将除主节点控制器外的其他多个控制器均设置定义为从节点控制器;
主节点控制器包括:
报文帧,用于主节点控制器确认各个从节点控制器是否激活并进入准备同步状态;
主节点同步帧,用于主节点控制器和多个从节点控制器的时钟矫正;
主节点时间帧,用于广播系统时间和多个从节点控制器与主节点控制器之间的时钟偏差;
从节点控制器包括:
从节点时间帧,用于上传从节点控制器本地时钟计数给主节点控制器;
其中主节点和多个从节点分别为多个控制器,进行时间同步校准时,将随机一个控制器定义为主节点控制器,除主节点控制器外的其他多个控制器均设置定义为从节点控制器,使用CAN网络总线能够将主节点控制器和多个从节点控制器连接,进而使得主节点控制器和多个从节点控制器能够通过CAN网络总线通讯,便于主节点控制器和多个从节点控制器之间发送报文帧、主节点同步帧、主节点时间帧、和从节点时间帧;
从节点控制器能够记录主节点控制器发送至从节点控制器的同步帧的计数值,且从节点控制器能够计算接收到的多个同步帧之间的时间间隔,主节点控制器能够向从节点控制器发送同步帧,使得从节点控制器在接收到主节点发送的同步帧后,能够记录同步帧的计数值,并根据多个同步帧的计数值计算出多个同步帧之间的时间间隔,进而便于确认时钟系统的偏差值,便于后续对时钟系统偏差进行校准;
主节点控制器能够接收从节点控制器发送的时间间隔,并根据从节点控制器发出的时间间隔计算出从节点控制器需要修正的时间偏差,从节点控制器在计算出多个同步帧之间的时间间隔后,能够将多个同步帧之间的时间间隔发送至主节点控制器进行时间偏差的计算;
从节点控制器还能够根据主节点控制器发送的时间帧计算出本地的时间,主节点控制器根据从节点控制器发出的时间间隔计算出从节点控制器需要修正的时间偏差后,能够将需要修正的时间偏差通过时间帧发送至从节点控制器,多个从节点控制器能够根据接收到的需要修正的时间偏差进行时钟校准;
主节点控制器上的时间同步状态机的具体工作步骤包括:
S101:系统初始化过程中,时间同步状态机进入初始化状态;
S102:完成初始化后,主节点控制器与多个从节点控制器握手,通过报文帧确认主节点控制器和多个从节点控制器是否激活并进入准备同步状态,以便于后续对时间同步校准,避免部分从节点控制器未激活进入准备同步状态,进而避免部分从节点控制器未进行时间同步校准的情况发生,确保所有的从节点控制器均能够进行时间同步校准;
S103:确认主节点控制器和多个从节点控制器准备好后主节点首先进入同步状态,在同步状态完成时间同步校准,使得主节点控制器和多个从节点控制器能够达到时间同步校准,消除主节点控制器与从节点控制器之间时钟存在的系统偏差;
在时间同步校准时:
当主节点控制器有休眠请求时可进入节点休眠状态;
当主节点控制器唤醒后可进入初始化状态;
主节点控制器和多个从节点控制器完成时间同步校准的主要步骤包括:
S201:主节点控制器发送第一次时间同步帧,所有从节点控制器接收到第一次时间同步帧后将第一次时间同步帧设置为中断后接收;
S202:所有从节点控制器在接收到中断后,读取当前高精计数器的数值;
S203:经过需要的时钟修正间隔时间后,主节点控制器发送第二次时间同步帧;
S204:所有从节点控制器接收到第二次时间同步帧后,在中断中记录下第二次时间同步帧的计数值,并计算出第二次时间同步帧与第一次时间同步帧之间的时钟间隔差值;
S205:从节点控制器发送其计算出的第二次时间同步帧与第一次时间同步帧之间的时间间隔到主节点控制器;
S206:主机点控制器接收到从节点控制器发出的第二次时间同步帧与第一次时间同步帧之间的时间间隔后,主节点控制器计算出从节点控制器需要修正的时间偏差;
S207:主节点控制器将计算出的从节点控制器需要修正的时间偏差和系统时间放在时间帧中广播给所有从节点控制器;
S208:从节点控制器接收到主节点控制器发送的时间帧后,能够计算从节点控制器本地的时间;
计算从节点控制器本地的时间时,需要根据从节点控制器接收到主节点时间帧、从节点控制器本地时钟、系统时间和时钟偏差计算出本地的时间。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (8)
1.一种基于CAN网络的MCU时钟同步控制系统,其特征在于:包括主节点控制器和多个从节点控制器,所述主节点控制器通过CAN网络总线与多个从节点控制器通讯,用于主节点控制器上的时间同步状态机和多个从节点控制器同步状态,完成时间同步校准;
其中,能够在多个控制器中选择一个控制器设置定义为主节点控制器,能够将除主节点控制器外的其他多个控制器均设置定义为从节点控制器;
所述主节点控制器包括:
报文帧,用于主节点控制器确认各个从节点控制器是否激活并进入准备同步状态;
主节点同步帧,用于主节点控制器和多个从节点控制器的时钟矫正;
主节点时间帧,用于广播系统时间和多个从节点控制器与主节点控制器之间的时钟偏差;
所述从节点控制器包括:
从节点时间帧,用于上传从节点控制器本地时钟计数给主节点控制器。
2.根据权利要求1所述的一种基于CAN网络的MCU时钟同步控制系统,其特征在于:所述从节点控制器能够记录主节点控制器发送至从节点控制器的同步帧的计数值,且所述从节点控制器能够计算接收到的多个同步帧之间的时间间隔。
3.根据权利要求2所述的一种基于CAN网络的MCU时钟同步控制系统,其特征在于:所述主节点控制器能够接收从节点控制器发送的时间间隔,并根据从节点控制器发出的时间间隔计算出从节点控制器需要修正的时间偏差。
4.根据权利要求3所述的一种基于CAN网络的MCU时钟同步控制系统,其特征在于:所述从节点控制器还能够根据主节点控制器发送的时间帧计算出本地的时间。
5.根据权利要求1所述的一种基于CAN网络的MCU时钟同步控制系统,其特征在于:所述主节点控制器上的时间同步状态机的具体工作步骤包括:
S101:系统初始化过程中,时间同步状态机进入初始化状态;
S102:完成初始化后,主节点控制器与多个从节点控制器握手,通过报文帧确认主节点控制器和多个从节点控制器是否激活并进入准备同步状态;
S103:确认主节点控制器和多个从节点控制器准备好后主节点首先进入同步状态,在同步状态完成时间同步校准。
6.根据权利要求5所述的一种基于CAN网络的MCU时钟同步控制系统,其特征在于:在所述时间同步校准时:
当所述主节点控制器有休眠请求时可进入节点休眠状态;
当所述主节点控制器唤醒后可进入初始化状态。
7.根据权利要求1所述的一种基于CAN网络的MCU时钟同步控制系统,其特征在于:所述主节点控制器和多个从节点控制器完成时间同步校准的主要步骤包括:
S201:主节点控制器发送第一次时间同步帧,所有从节点控制器接收到第一次时间同步帧后将第一次时间同步帧设置为中断后接收;
S202:所有从节点控制器在接收到中断后,读取当前高精计数器的数值;
S203:经过需要的时钟修正间隔时间后,主节点控制器发送第二次时间同步帧;
S204:所有从节点控制器接收到第二次时间同步帧后,在中断中记录下第二次时间同步帧的计数值,并计算出第二次时间同步帧与第一次时间同步帧之间的时钟间隔差值;
S205:从节点控制器发送其计算出的第二次时间同步帧与第一次时间同步帧之间的时间间隔到主节点控制器;
S206:主机点控制器接收到从节点控制器发出的第二次时间同步帧与第一次时间同步帧之间的时间间隔后,主节点控制器计算出从节点控制器需要修正的时间偏差;
S207:主节点控制器将计算出的从节点控制器需要修正的时间偏差和系统时间放在时间帧中广播给所有从节点控制器;
S208:从节点控制器接收到主节点控制器发送的时间帧后,能够计算从节点控制器本地的时间。
8.根据权利要求7所述的一种基于CAN网络的MCU时钟同步控制系统,其特征在于:在步骤S207中,所述计算从节点控制器本地的时间时,需要根据从节点控制器接收到主节点时间帧、从节点控制器本地时钟、系统时间和时钟偏差计算出本地的时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311103749.4A CN117200927A (zh) | 2023-08-30 | 2023-08-30 | 一种基于can网络的mcu时钟同步控制系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311103749.4A CN117200927A (zh) | 2023-08-30 | 2023-08-30 | 一种基于can网络的mcu时钟同步控制系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117200927A true CN117200927A (zh) | 2023-12-08 |
Family
ID=88998997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311103749.4A Pending CN117200927A (zh) | 2023-08-30 | 2023-08-30 | 一种基于can网络的mcu时钟同步控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117200927A (zh) |
-
2023
- 2023-08-30 CN CN202311103749.4A patent/CN117200927A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7007106B1 (en) | Protocol and method for multi-chassis configurable time synchronization | |
US7457322B1 (en) | System and method for multi-chassis configurable time synchronization | |
US6535926B1 (en) | Time synchronization system for industrial control network using global reference pulses | |
US8321612B2 (en) | Method and device for synchronizing two bus systems by transmission of a time associated trigger signal from one system to another | |
US7146516B2 (en) | Time synchronization schemes wherein at least one data message associates a hardware pulse with a future time | |
JP6523497B1 (ja) | マスタ制御装置およびこれを用いた同期通信システム | |
CN110492965B (zh) | 一种主从系统内串行报文对时的方法和装置 | |
EP2222003B1 (en) | Field control system | |
US20210288736A1 (en) | Method, device, and computer program for improving synchronization of clocks in devices linked according to a daisy-chain topology | |
US20040258097A1 (en) | Method for synchronizing nodes of a communications system | |
US20220413474A1 (en) | Control system | |
CN102752065B (zh) | 一种时间同步方法及系统 | |
WO2021174784A1 (zh) | 一种应用于can总线多主设备通讯间时间同步的方法 | |
CN105763641A (zh) | 一种EtherCAT主站控制系统的快速时钟同步方法 | |
US7818457B1 (en) | Apparatus for multi-chassis configurable time synchronization | |
JP2006148907A (ja) | 周期的に作動するコミュニケーションシステムにおける時間同期化方法 | |
CN113711511B (zh) | 支持多时间同步协议的工业设备 | |
US9081371B2 (en) | Method for synchronizing an operating clock with a time clock of an automation network | |
EP4083726A1 (en) | Control system | |
CN111211855B (zh) | 一种分布式处理系统混合时钟同步方法 | |
CN117200927A (zh) | 一种基于can网络的mcu时钟同步控制系统 | |
EP3528067A1 (en) | Computing device and control system | |
CN113259037B (zh) | 基于传感器时间同步系统的时间同步方法、介质及装置 | |
CN112564841A (zh) | 通过同步时钟的方式控制不同通讯协议的设备的方法 | |
Luckinger et al. | AUTOSAR-compliant clock synchronization over CAN using software timestamping |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |