CN117200927A - 一种基于can网络的mcu时钟同步控制系统 - Google Patents

一种基于can网络的mcu时钟同步控制系统 Download PDF

Info

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
Application number
CN202311103749.4A
Other languages
English (en)
Inventor
金燕娜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Industrial Park Tuomeichen Intelligent Technology Co ltd
Original Assignee
Suzhou Industrial Park Tuomeichen Intelligent Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Industrial Park Tuomeichen Intelligent Technology Co ltd filed Critical Suzhou Industrial Park Tuomeichen Intelligent Technology Co ltd
Priority to CN202311103749.4A priority Critical patent/CN117200927A/zh
Publication of CN117200927A publication Critical patent/CN117200927A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Synchronisation In Digital Transmission Systems (AREA)
  • Electric Clocks (AREA)

Abstract

本发明公开了一种基于CAN网络的MCU时钟同步控制系统,属于时钟同步技术领域,包括主节点控制器和多个从节点控制器,主节点控制器通过CAN网络总线与多个从节点控制器通讯,用于主节点控制器上的时间同步状态机和多个从节点控制器同步状态;主节点控制器包括:报文帧,用于主节点控制器确认各个从节点控制器是否激活并进入准备同步状态;通过多个控制器间的CAN网络总线网络通讯,同步各节点的同步时间,不仅在同步点保持时间同步,同时通过精确的校准时钟,在同步点外让各个节点预测出精确的全局时间,消除由于软件和硬件偏差导致的多个控制器之间存在的时钟系统偏差,在多个控制器之间传递一些时间标签的信号时,能保证该信号的时间有效性。

Description

一种基于CAN网络的MCU时钟同步控制系统
技术领域
本发明属于时钟同步技术领域,具体涉及一种基于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中,所述计算从节点控制器本地的时间时,需要根据从节点控制器接收到主节点时间帧、从节点控制器本地时钟、系统时间和时钟偏差计算出本地的时间。
CN202311103749.4A 2023-08-30 2023-08-30 一种基于can网络的mcu时钟同步控制系统 Pending CN117200927A (zh)

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)

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