CN117896204B - 基于can的微波电源通信方法、装置、电子设备及存储介质 - Google Patents

基于can的微波电源通信方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117896204B
CN117896204B CN202410292382.3A CN202410292382A CN117896204B CN 117896204 B CN117896204 B CN 117896204B CN 202410292382 A CN202410292382 A CN 202410292382A CN 117896204 B CN117896204 B CN 117896204B
Authority
CN
China
Prior art keywords
interval
data frame
timer
data
microwave power
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.)
Active
Application number
CN202410292382.3A
Other languages
English (en)
Other versions
CN117896204A (zh
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.)
Ji Hua Laboratory
Original Assignee
Ji Hua Laboratory
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 Ji Hua Laboratory filed Critical Ji Hua Laboratory
Priority to CN202410292382.3A priority Critical patent/CN117896204B/zh
Publication of CN117896204A publication Critical patent/CN117896204A/zh
Application granted granted Critical
Publication of CN117896204B publication Critical patent/CN117896204B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)
  • Transmitters (AREA)

Abstract

本申请提供了一种基于CAN的微波电源通信方法、装置、电子设备及存储介质,涉及工业控制技术领域,其技术方案要点是:主控制器与子控制器通过一根CAN通信总线连接,方法步骤包括:获取主控制器与子控制器的通信功能类型,包括信息查询和参数设置;根据通信功能类型选择对应的数据帧发送至子控制器,数据帧的类型包括第一数据帧和第二数据帧;根据第一数据帧或第二数据帧使子控制器对应执行信息查询或参数设置,并在执行信息查询后向主控制器发送第三数据帧。本申请提供的一种基于CAN的微波电源通信方法、装置、电子设备及存储介质具有提高微波电源系统的便捷性,实现微波电源系统庞杂的数据处理以提高通信效率和通信质量的优点。

Description

基于CAN的微波电源通信方法、装置、电子设备及存储介质
技术领域
本申请涉及工业控制技术领域,具体而言,涉及一种基于CAN的微波电源通信方法、装置、电子设备及存储介质。
背景技术
目前,微波电源由AC\DC转换模块、高压直流模块以及磁控管等部分共同组成。针对微波电源,其正常工作需要这些模块之间相关配合,即,模块之间联合控制,然而,由于微波电源涉及的模块众多,存在极其庞大且复杂的数据处理,如各种电子元器件的电压值、电流值,各类警告信息,各种校准系数,各种参数传递等,因此,对于微波电源来说,其通信过程非常复杂,而目前现有的微波电源各模块通信方式操作繁琐以及拓展性不好。
针对上述问题,本申请提出了一种新的技术方案。
发明内容
本申请的目的在于提供一种基于CAN的微波电源通信方法、装置、电子设备及存储介质,具有提高微波电源系统的便捷性,实现微波电源系统庞杂的数据处理以提高通信效率和通信质量的优点。
第一方面,本申请提供了一种基于CAN的微波电源通信方法,用于实现微波电源系统的通信,技术方案如下:
所述微波电源系统包括主控制器和设置在微波电源的子控制器,所述主控制器与所述子控制器通过一根CAN通信总线连接,该方法的步骤包括:
获取所述主控制器与所述子控制器的通信功能类型,所述通信功能类型包括信息查询和参数设置;
根据所述通信功能类型选择对应的数据帧发送至所述子控制器,所述数据帧的类型包括第一数据帧和第二数据帧;
根据所述第一数据帧或所述第二数据帧使所述子控制器对应执行信息查询或参数设置,并在执行信息查询后向所述主控制器发送第三数据帧;
所述第一数据帧、所述第二数据帧以及所述第三数据帧均基于CAN协议,包括帧ID和数据段,所述帧ID包括有协议号、组号、目标地址以及源地址,所述第一数据帧的数据段包括有功能码位、起始寄存器地址位以及寄存器数量位,所述第二数据帧的数据段包括功能码位,寄存器地址位以及写入数据位,所述第三数据帧的数据段包括功能码位、当前寄存器地址位以及读出数据位。
通过使用一根CAN通信总线建立微波电源主控制器和子控制器之间的通信,从而提高微波电源系统的便携性,在此基础上,对主控制器和子控制器之间的通信功能类型进行划分,然后根据不同的功能类型选择对应的数据帧,其中,数据帧一共包括有第一数据帧、第二数据帧以及第三数据帧,第一数据帧、第二数据帧以及第三数据帧均基于CAN协议的格式进行定制,三者均包括有帧ID和数据段,与常规的CAN协议格式不同的是,在本申请的方案中,帧ID由协议号、组号、目标地址以及源地址四部分组成,第一数据帧、第二数据帧以及第三数据帧的数据段的格式根据其通信功能类型进行设置,即,在本申请的方案中,基于CAN协议构建出一种新的通信协议,在该通信协议下,设计出了多种数据帧以携带不同类型的数据,使得不同通信功能类型所对应的不同类型的数据可以被准确快速的进行识别、传递和处理,同时,由于帧ID和数据段的具体结构设置,使得每个部分能够包含特定类型的信息,这种结构化的设计有助于对不同数据进行辨识和处理,因此,本申请的方案可以满足和实现微波电源系统中庞杂的数据传输和处理,具有提高微波电源系统的便捷性,实现微波电源系统庞杂的数据处理以提高通信效率和通信质量的优点。
进一步地,在本申请中,所述获取所述主控制器与所述子控制器的通信功能类型的步骤包括:
获取所述主控制器与所述子控制器进行通信时触发的定时器类型;
根据触发的所述定时器类型得到所述主控制器与所述子控制器的通信功能类型;
所述定时器的类型包括第一定时器和第二定时器,所述第一定时器用于信息查询,所述第二定时器用于参数设置,还包括:
根据指定的时间触发间隔分别触发所述第一定时器和所述第二定时器。
进一步地,在本申请中,还包括:
获取所述微波电源的工作状态;
根据所述工作状态调整所述第一定时器和所述第二定时器的时间触发间隔。
进一步地,在本申请中,所述微波电源的工作状态包括自检状态、预热状态、待机状态、运行状态以及故障状态;
所述根据所述工作状态调整所述第一定时器和所述第二定时器的时间触发间隔的步骤包括:
当所述微波电源的工作状态为自检状态时,调整所述第一定时器的时间触发间隔为第一间隔,调整所述第二定时器的时间触发间隔为第二间隔;
当所述微波电源的工作状态为预热状态时,调整所述第一定时器的时间触发间隔为第三间隔,调整所述第二定时器的时间触发间隔为第四间隔;
当所述微波电源的工作状态为待机状态和运行状态时,调整所述第一定时器的时间触发间隔为第五间隔,调整所述第二定时器的时间触发间隔为第六间隔;
当所述微波电源的工作状态为故障状态时,调整所述第一定时器的时间触发间隔为第七间隔,调整所述第二定时器的时间触发间隔为第八间隔;
所述第一间隔和所述第七间隔均小于所述第三间隔和所述第五间隔;
所述第四间隔和所述第六间隔均小于所述第二间隔和所述第八间隔;
所述第一间隔小于所述第二间隔;
所述第三间隔大于所述第四间隔;
所述第五间隔大于所述第六间隔;
所述第七间隔小于所述第八间隔。
进一步地,在本申请中,根据指定的时间触发间隔触发所述第一定时器的步骤之后还包括:
创建接收处理线程;
根据所述接收处理线程接收和处理所述子控制器向所述主控制器发送的所述第三数据帧,得到解析结果;
根据所述解析结果更新变量。
进一步地,在本申请中,所述根据所述接收处理线程接收和处理所述子控制器向所述主控制器发送的所述第三数据帧,得到解析结果的步骤包括:
接收所述第三数据帧;
设置过滤表参数用于筛选出帧ID符合要求的所述第三数据帧;
根据所述第三数据帧中的帧ID的源地址选择对应的解析函数解析数据段中读出数据位的信息得到解析结果;
还包括:
获取符合要求的所述第三数据帧对应的通信资源;
根据所述通信资源阻塞或唤醒所述接收处理线程。
进一步地,在本申请中,所述根据所述第一数据帧或所述第二数据帧使所述子控制器对应执行信息查询或参数设置,并在执行信息查询后向所述主控制器发送第三数据帧的步骤包括:
根据所述第一数据帧使所述子控制器对应执行信息查询,向所述主控制器发送所述第三数据帧;
根据所述第二数据帧使所述子控制器对应执行参数设置;
所述向所述主控制器发送所述第三数据帧的步骤包括:
根据所述第一数据帧的帧ID设置所述第三数据帧的帧ID;
根据所述第一数据帧中起始寄存器地址位以及寄存器数量位计算读取范围;
根据所述读取范围遍历对应寄存器的信息并判断当前变量对应的寄存器地址是否超出所述读取范围;
在当前变量对应的寄存器地址没有超出所述读取范围时,将所述第三数据帧中的读出数据位设置为所述读取范围内的当前变量值;
向所述主控制器发送设置完成的所述第三数据帧
第二方面,本申请还提出了一种基于CAN的微波电源通信装置,用于实现微波电源系统的通信,所述微波电源系统包括主控制器和设置在微波电源的子控制器,所述主控制器与所述子控制器通过一根CAN通信总线连接,该装置包括:
第一模块,用于获取所述主控制器与所述子控制器的通信功能类型,所述通信功能类型包括信息查询和参数设置;
第二模块,用于根据所述通信功能类型选择对应的数据帧发送至所述子控制器,所述数据帧的类型包括第一数据帧和第二数据帧;
第三模块,用于根据所述第一数据帧或所述第二数据帧使所述子控制器对应执行信息查询或参数设置,并在执行信息查询后向所述主控制器发送第三数据帧;
所述第一数据帧、所述第二数据帧以及所述第三数据帧均基于CAN协议,包括帧ID和数据段,所述帧ID包括有协议号、组号、目标地址以及源地址,所述第一数据帧的数据段包括有功能码位、起始寄存器地址位以及寄存器数量位,所述第二数据帧的数据段包括功能码位,寄存器地址位以及写入数据位,所述第三数据帧的数据段包括功能码位、当前寄存器地址位以及读出数据位。
第三方面,本申请还提出了一种电子设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行上述方法中的步骤。
第四方面,本申请还提出了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,运行上述方法中的步骤。
由上可知,本申请提供的一种基于CAN的微波电源通信方法、装置、电子设备及存储介质,通过使用一根CAN通信总线建立微波电源主控制器和子控制器之间的通信,从而提高微波电源系统的便携性,在此基础上,对主控制器和子控制器之间的通信功能类型进行划分,然后根据不同的功能类型选择对应的数据帧,其中,数据帧一共包括有第一数据帧、第二数据帧以及第三数据帧,第一数据帧、第二数据帧以及第三数据帧均基于CAN协议的格式进行定制,三者均包括有帧ID和数据段,与常规的CAN协议格式不同的是,在本申请的方案中,帧ID由协议号、组号、目标地址以及源地址四部分组成,第一数据帧、第二数据帧以及第三数据帧的数据段的格式根据其通信功能类型进行设置,即,在本申请的方案中,基于CAN协议构建出一种新的通信协议,在该通信协议下,设计出了多种数据帧以携带不同类型的数据,使得不同通信功能类型所对应的不同类型的数据可以被准确快速的进行识别、传递和处理,同时,由于帧ID和数据段的具体结构设置,使得每个部分能够包含特定类型的信息,这种结构化的设计有助于对不同数据进行辨识和处理,因此,本申请的方案可以满足和实现微波电源系统中庞杂的数据传输和处理,具有提高微波电源系统的便捷性,实现微波电源系统庞杂的数据处理以提高通信效率和通信质量的优点。
附图说明
图1为本申请提供的一种基于CAN的微波电源通信方法流程图。
图2为本申请提供的一种基于CAN的微波电源通信装置示意图。
图3为本申请提供的一种电子设备示意图。
图4为本申请提供的主控制器和子控制器之间的通信示意图。
图5为本申请提供的主控制器向子控制器发送第一数据帧和第二数据帧的流程图。
图6为本申请提供的微波电源的工作状态示意图。
图7为本申请提供的主控制器接收第三数据帧的流程图。
图8为本申请提供的子控制器接收第一数据帧和第二数据帧的流程图。
图中:210、第一模块;220、第二模块;230、第三模块;310、处理器;320、存储器。
具体实施方式
下面将结合本申请中附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
通常,微波电源系统存在非常庞杂的数据通信和处理,而在一般的常规技术中,采用的是RS485协议来进行通信,例如申请号为201821554393 .0的中国实用新型专利,其公开了一种工业微波电源,其具体公开了中继模块通过RS485协议与N个微波电源进行通信而使得中继模块可以对N个微波电源进行管理控制,然而,这种方式属于串行通信协议,在面临微波电源这种具有庞杂数据通信的情况下,其通信效果并不理想。在其它一些改进技术中,如申请号为202310174112 .8的中国发明专利,其公开了一种微波系统的控制装置以及控制方法,其具体公开了通讯单元可以包括CAN子单元和串口子单元,通过CAN协议和串口协议等多种通讯协议进行数据传输。其中,CAN协议是一种基于总线控制的通讯协议,采用分布式控制的方式,允许多个设备同时通信,然而,上述现有技术仅仅只是记载了可以通过CAN协议来实现数据传输,却未公开具体如何通过CAN协议进行数据通信。
对此,请参照图1,本申请首先提出了一种基于CAN的微波电源通信方法,用于实现微波电源系统的通信,技术方案如下:
微波电源系统包括主控制器和设置在微波电源的子控制器,主控制器与子控制器通过一根CAN通信总线连接,该方法的步骤包括:
S110、获取主控制器与子控制器的通信功能类型,通信功能类型包括信息查询和参数设置;
S120、根据通信功能类型选择对应的数据帧发送至子控制器,数据帧的类型包括第一数据帧和第二数据帧;
S130、根据第一数据帧或第二数据帧使子控制器对应执行信息查询或参数设置,并在执行信息查询后向主控制器发送第三数据帧;
第一数据帧、第二数据帧以及第三数据帧均基于CAN协议,包括帧ID和数据段,帧ID包括有协议号、组号、目标地址以及源地址,第一数据帧的数据段包括有功能码位、起始寄存器地址位以及寄存器数量位,第二数据帧的数据段包括功能码位,寄存器地址位以及写入数据位,第三数据帧的数据段包括功能码位、当前寄存器地址位以及读出数据位。
其中,组号的设置可以帮助区分不同类的设备,将同一类的设备归到一组,进行相同的操作完成通信,无需清楚是哪台设备,简化通信过程,很好的发挥了通过一根CAN通信总线进行一对多的通信作用。
具体地,在一些实施例中,整个微波电源系统由1个AC/DC转换模块,4个高压直流模块以及磁控管模块组成,可以将4个高压直流模块进行归类,用同一个组号,在实际通信中,识别到整个组号,就发布对应的信息,或者就统一的组号广播信息,只有组号匹配的模块会响应,不需要清楚到底是哪一个高压直流模块。这个组号的方式在后续的拓展升级中可以起到非常好的作用,在一些超大型微波电源系统中,可能包含多个高压直流模块以及多个磁控管模块,可以进行分组进行通信。
其中,主控制器具体可以是CPU、MCU或其它处理器。
其中,子控制是微波电源中各个功能模块上的控制器,功能模块具体可以包括AC\DC转换模块、高压直流模块、磁控管模块、灯丝模块等,根据具体的功能设计,还可以包括其它的模块。
其中,帧ID采用29位帧格式进行定义,将29位划分成了四个部分,分别是协议号、组号、目标地址以及源地址,利用这四部分信息可以准确定义数据的来源和去向。
在一些具体实施方式中,帧ID的划分如下所示,具体为:
28~20 19~16 15~8 7~0
PRONTO(9bit) GROUP(4bit) DSTADDR(8bit) SRCADDR(8bit)
通过上表可知,将29位的帧ID划分成了四个部分,搭建了帧ID的基本框架,分别是协议号(PRONTO)、组号(GROUP)、目标地址(DSTADDR)以及源地址(SRCADDR),利用这四部分信息可以准确定位数据的来源和去向。
在一些具体实施方式中,协议号(PRONTO)、组号(GROUP)、目标地址(DSTADDR)以及源地址(SRCADDR)的具体说明如下:
名称 说明
PRONTO 固定PRONTO=0x01A
GROUP 组内广播时区分组号,单组默认0
DSTADDR&SRCADDR 上位机地址固定为:0xF0;主控制器地址固定为:0xE0;AC\DC转换模块地址范围:0x00~0x0E;高压直流模块地址范围:0x10~0x1E;磁控管模块地址范围:0x20~0x2E;广播地址:0xFF;AC\DC转换模块组内广播地址:0x0F高压直流模块组内广播地址:0x1F磁控管模块组内广播地址:0x2F
其中,上表对微波电源系统具体需求定义了各个部分的取值,用户在使用过程中完全也可以根据自己的需求去自定义取值。
本申请通过一根CAN通信总线便可以建立主控制器和子控制器的通信,在实际使用过程中的调试阶段,可以将CAN调试盒子连接到该CAN通信总线便可以知悉微波电源系统内部所有通信数据,如果用户需要使用上位机通信,则用户可以使用上位机设备直接连接该CAN通信总线建立通信。
其中,当主控制器与子控制器的通信功能类型为信息查询时,第一数据帧的数据段如下所示:
其中,当主控制器与子控制器的通信功能类型为参数设置时,第二数据帧的数据段如下所示:
其中,当子控制器向主控制器发送第三数据帧时,第三数据帧的数据段如下所示:
在本申请的方案中,第一数据帧、第二数据帧以及第三数据帧的数据段长度具体可以是8个字节,在数据段中可以设置保留位,用于后续的功能拓展。
此外,在一些具体实施方式中,本申请涉及的微波电源的寄存器功能表具体如下所示:
本方案针对微波电源系统这种多设备联控的情况,从成本控制、维护性等方面考虑,对整个联控系统建立主从关系,使用主控制器从顶层角度实时完成各个子控制器联控,子控制器则代表各个功能模块上的控制器。
主控制器可以周期性的主动发送第一数据帧和第二数据帧来进行信息查询或者设置参数,而子控制器被动接收主控制器发送的第一数据帧和第二数据帧,并发送第三数据帧给主控制器或者执行设置给定参数,示意图如图4所示。
通过使用一根CAN通信总线建立微波电源主控制器和子控制器之间的通信,从而提高微波电源系统的便携性,在此基础上,对主控制器和子控制器之间的通信功能类型进行划分,然后根据不同的功能类型选择对应的数据帧,其中,数据帧一共包括有第一数据帧、第二数据帧以及第三数据帧,第一数据帧、第二数据帧以及第三数据帧均基于CAN协议的格式进行定制,三者均包括有帧ID和数据段,与常规的CAN协议格式不同的是,在本申请的方案中,帧ID由协议号、组号、目标地址以及源地址四部分组成,第一数据帧、第二数据帧以及第三数据帧的数据段的格式根据其通信功能类型进行设置,即,在本申请的方案中,基于CAN协议构建出一种新的通信协议,在该通信协议下,设计出了多种数据帧以携带不同类型的数据,使得不同通信功能类型所对应的不同类型的数据可以被准确快速的进行识别、传递和处理,同时,由于帧ID和数据段的具体结构设置,使得每个部分能够包含特定类型的信息,这种结构化的设计有助于对不同数据进行辨识和处理,因此,本申请的方案可以满足和实现微波电源系统中庞杂的数据传输和处理,具有提高微波电源系统的便捷性,实现微波电源系统庞杂的数据处理以提高通信效率和通信质量的优点。
进一步地,在其中一些实施例中,获取主控制器与子控制器的通信功能类型的步骤包括:
获取主控制器与子控制器进行通信时触发的定时器类型;
根据触发的定时器类型得到主控制器与子控制器的通信功能类型;
定时器的类型包括第一定时器和第二定时器,第一定时器用于信息查询,第二定时器用于参数设置,还包括:
根据指定的时间触发间隔分别触发第一定时器和第二定时器。
在本申请的方案中,根据主控制器与子控制器的通信功能类型来选择发送对应的数据帧,其中,为了保证数据的实时性和可靠性,可以通过定时器来发送数据,具体地,定时器可以设置有两种类型,分别为第一定时器和第二定时器,这样就可以通过发送的定时器的类型来获取主控制器与子控制器的通信功能类型。
其中,第一定时器和第二定时器按照指定的时间触发间隔来分别进行周期性的定时触发,这样可以提高系统的响应性。
例如,在一些具体地实施方式中,第一定时器为can_read,其时间触发间隔为459ms,第二定时器为can_ref,其时间触发间隔为207ms。
此外,在另外一些实施例中,定时器还包括有第三定时器,第三定时器用于专门发送开关数据,具体地,第三定时器为can_onoff,同样按照指定的时间触发间隔进行触发,其时间触发间隔具体可以设置为507ms。
其中,开关数据具体是指控制开关状态的数据,具体地,开关数据的数据帧类型可以采用与第二数据帧相同的格式。
在本申请的方案中,主控制器周期性的主动发送第一数据帧和第二数据帧,其中,第一数据帧对应的是请求数据,用于获取微波电源中各个功能模块的状态信息,第二数据帧对应的是参数设置数据,用于控制微波电源中各个功能模块的状态信息,此外,第二数据帧还可以对应开关数据,开关数据用于控制微波电源中各个功能模块的开关状态。主控制器可以针对三类数据分别创建对应的定时器,根据数据紧急程度、修改频率以及实际需求对三类数据对应的定时器的时间触发间隔进行区分设置。其中参数设置数据的时间触发间隔最短,因为参数设置数据涉及到用户给定参数,相对于其他类别数据,参数设置数据被修改的频率更高,因此需要将参数设置数据对应的定时器时间触发间隔调小以提高系统的响应性。
三类数据对应的定时器绑定的发送函数可以都为can_regs_send函数,can_regs_send函数识别当前发送的是哪一类的数据,可以对帧ID以及数据段各个部分修改,最后调用can_send函数向子控制器发送第一数据帧和第二数据帧。
在一些具体实施方式中,主控制器向子控制器发送数据的具体过程如图5所示:
设置帧ID中的协议号、源地址、以及组号;
判断通信功能类型是否为信息查询,即,判断数据类型是否为请求数据;
如果是,则依次设置第一数据帧中的功能码、数据段中的起始寄存器地址、帧ID中的目标地址(AC/DC转换模块广播地址)、数据段中的寄存器数量(AC/DC转换模块寄存器个数);
然后调用can -send()函数向子控制器发送第一数据帧;
然后重新设置帧ID中目标地址(高压直流模块广播地址)、数据段中的寄存器数量(高压直流模块寄存器数量);
然后调用can_send()函数向子控制器发送第一数据帧;
然后重新设置帧ID中目标地址(磁控管模块广播地址)、数据段中的寄存器数量(磁控管模块寄存器数量);
然后调用can_send()函数向子控制器发送第一数据帧,直至结束;
如果判断通信功能类型为参数设置,此时,设置帧ID 中的功能码,然后进一步判断属于参数设置数据或是开关数据;
当数据为开关数据时,设置帧ID中的目标地址(高压直流模块广播地址)、设置数据段中的寄存器地址(高压直流模块驱动开关地址)、设置数据段中的写入数据位为用户设置的开关参数(高压直流模块);
然后调用can_send()函数向子控制器发送第二数据帧;
重新设置帧ID中目标地址(磁控管模块广播地址)、数据段中的寄存器地址(灯丝使能)、数据段中的写入数据位为用户设置的开关参数(灯丝使能);
然后调用can_send()函数向子控制器发送第二数据帧,然后结束;
当数据为参数设置数据时,设置功能码、设置帧ID中的目标地址(高压直流模块广播地址)、设置数据段中的寄存器地址(高压直流模块输出功率)、设置数据段中写入数据位为用户设置的参数(高压直流模块功率);
然后调用can_send()函数向子控制器发送第二数据帧;
重新设置帧ID中目标地址(磁控管模块广播地址)、数据段中的寄存器地址(灯丝电压)、数据段中的写入数据位为用户设置的参数(灯丝电压参数);
然后调用can_send()函数向子控制器发送第二数据帧;
重新设置数据段中的寄存器地址(灯丝电流)、数据段中的写入数据位为用户设置的参数(灯丝电流参数);
然后调用can_send()函数向子控制器发送第二数据帧;
重新设置数据段中的寄存器地址(磁场电压)、数据段中的写入数据位为用户设置的参数(磁场电压参数);
然后调用can_send()函数向子控制器发送第二数据帧,直至结束。
进一步地,在其中一些实施例中,还包括:
获取微波电源的工作状态;
根据工作状态调整第一定时器和第二定时器的时间触发间隔。
在上述的一些实施例中,本申请提出了通过第一定时器和第二定时器周期性的发送数据,这样,针对不同的通信功能类型,可以按照事先设定的时间触发间隔来进行触发,以满足某些高响应性的功能要求。
然而,如果按照事先设定的时间触发间隔来触发第一定时器和第二定时器,一方面,如果间隔设置过小,容易占用过多的通信资源,同时导致耗能高,另一方面,如果间隔设置过大,会导致系统的响应不及时,因此,这种方式缺乏灵活性。
对此,本申请进一步提出了根据微波电源的工作状态来调整第一定时器和第二定时器的时间触发间隔,具体地,微波电源的工作状态包括自检状态、预热状态、待机状态、运行状态以及故障状态;
根据工作状态调整第一定时器和第二定时器的时间触发间隔的步骤包括:
当微波电源的工作状态为自检状态时,调整第一定时器的时间触发间隔为第一间隔,调整第二定时器的时间触发间隔为第二间隔;
当微波电源的工作状态为预热状态时,调整第一定时器的时间触发间隔为第三间隔,调整第二定时器的时间触发间隔为第四间隔;
当微波电源的工作状态为待机状态和运行状态时,调整第一定时器的时间触发间隔为第五间隔,调整第二定时器的时间触发间隔为第六间隔;
当微波电源的工作状态为故障状态时,调整第一定时器的时间触发间隔为第七间隔,调整第二定时器的时间触发间隔为第八间隔;
第一间隔和第七间隔均小于第三间隔和第五间隔;
第四间隔和第六间隔均小于第二间隔和第八间隔;
第一间隔小于第二间隔;
第三间隔大于第四间隔;
第五间隔大于第六间隔;
第七间隔小于第八间隔。
微波电源在具体的使用场景下,其一共存在五种工作状态,五种工作状态的转换如图6所示,通常,在系统启动后,首先会进入自检状态,自检状态的时间一般为8秒,在这个过程中,主控制器和子控制器会进行初始化,等待初始化完成后,二者便会建立通信,如果没有检测出故障,则会进入预热状态,在预热状态下,通常会让灯丝加热60秒,其中,会以阶梯式设置灯丝电压,在预热完成后,就会进入待机状态,该状态表明功率输出的条件已经准备完成,等待具体的功率输出,在用户设置给定微波功率后,则会让使能输出切换到运行状态,启动功率控制模块,调节功率到达用户给定功率,设置关闭输出则会切换到待机状态,在具体使用过程中,如果检测出故障,则会进入故障状态,当故障解决后,为了安全和稳定,会重新进入自检状态,然后重复上述过程。
在本申请的一些实施例中,主控制器会周期性的触发第一定时器和第二定时器,由于微波电源在具体使用过程中存在上述工作状态,因此,可以根据不同工作状态来动态调整第一定时器和第二定时器的时间触发间隔。
具体地,在微波电源初始上电后,系统会默认进入自检状态,在这个状态下,主控制器需要快速获取各个功能模块的所有信息,在自检状态下,基本不需要去设置参数,因此,可以将第一间隔设置得较小,将第二间隔设置得较大,当进入预热状态时,主控制器需要设置磁控管模块中灯丝的电压、电流以及磁场电压等参数,因此,在预热状态下,可以将第一间隔大幅降低得到第四间隔,而主控制器此时已经获取了所有功能模块的信息,后续会有少量数据变化,因此,可以使用间隔较长的第三间隔,在进入待机状态和运行状态后,主控制器需要设置用户给定的参数,因此,第六间隔进一步降低,第五间隔则进一步提高,当检测出故障时,子控制器内部会触发保护程序,会自动关闭高压启动以及设置的相关参数,不需要主控制器去进行而外设置,而是需要主控制器尽可能块地获取故障类型以及故障是否已经消除,因此,此时得到大幅降低的第七间隔以及大幅升高的第八间隔。
综上,本申请根据微波电源的具体使用场景,提出了根据微波电源的工作状态来动态调整第一定时器和第二定时器的时间触发间隔,避免了通信资源的浪费,有效降低了能耗,同时保证通信的实时性和质量。
此外,在一些具体实施方式中,还设置有第三定时器用来发送开关数据,主控制器周期性的主动发送数据,数据分为三类,分别是开关数据、参数设置数据以及请求数据,其中开关数据和参数设置数据用于设置参数,控制设备的运行,其中的请求数据用于请求设备上报自己的运行状态。主控制器针对三类数据分别创建对应的定时器,根据数据紧急程度、修改频率以及实际需求对三类数据对应的定时器的时间触发间隔进行区分设置。
由于微波电源系统在各个工作状态,对这些数据的紧急程度、修改频率以及需求不同,因此主控制器会根据实际的工作状态去动态的调整三类数据的时间触发间隔,以便系统能够更快、更灵敏的传输数据,在一些具体实施方式中,三类定时器的时间触发间隔如下所示:
进一步地,在其中一些实施例中,根据指定的时间触发间隔触发第一定时器的步骤之后还包括:
创建接收处理线程;
根据接收处理线程接收和处理子控制器向主控制器发送的第三数据帧,得到解析结果;
根据解析结果更新变量。
在本申请的方案中,通过定时器管理来发送数据,通过线程管理来接收和处理数据,这种分离管理的方式可以提高整个通信过程的稳定性,确保数据的及时传输和处理,同时降低通信过程中出现的冲突和延迟。
通过定时器管理可以周期性的发送数据,确保数据按照预定的时间触发间隔进行发送,保证系统的可靠性,同时,还可以减少数据发送时的总线冲突和负载,使数据可以有序发送,数据的有序发送能够有效避免混乱,确保数据在总线上的有效传输。
通过线程管理来对数据进行接收和处理,可以事先即时响应,确保主控制器能够快速接收重要的数据,并且,可以使接收和处理数据的过程与其他任务并行进行,能够有效提高整体的效率和性能。
具体地,根据接收处理线程接收和处理子控制器向主控制器发送的第三数据帧,得到解析结果的步骤包括:
接收第三数据帧;
设置过滤表参数用于筛选出帧ID符合要求的第三数据帧;
根据第三数据帧中的帧ID的源地址选择对应的解析函数解析数据段中读出数据位的信息得到解析结果;
还包括:
获取符合要求的第三数据帧对应的通信资源;
根据通信资源阻塞或唤醒接收处理线程。
在本申请的方案中,主控制器的通信涉及线程管理和定时器管理,线程管理用于实现数据的接收和处理,定时器管理用于实现数据的发送,当主控制器通过第一定时器向子控制器发送第一数据帧使子控制器对应执行信息查询后,子控制器在执行信息查询后,便会向主控制器发送第三数据帧,因此,当主控制器发送第一数据帧以后便会创建接收处理线程,然后根据接收处理线程接收和处理子控制器发送的第三数据帧,通过接收处理线程接收第三数据帧以后,首先是设置过滤表参数来筛选出帧ID符合要求的第三数据帧,具体地,可以通过帧ID中的协议号、组号、目标地址以及源地址进行筛选,值得注意的是,在本申请的方案中,主控制器和子控制器可以通过多种不同的通信协议进行通信,因此,在本申请所提出的数据帧的帧ID中,设置有协议号,通过协议号筛选符合要求的第三数据帧,将不符合要求的第三数据帧排除,被排除的数据则不会进入MCU内,可以节省MCU的内部资源。
在筛选出符合要求的第三数据帧后,根据帧ID的源地址选择对应的解析函数解析数据段中读出数据位的信息得到解析结果,即,每个功能模块对应的数据都可以有对应的解析函数,有利于后续的拓展,同时,通过源地址来选择对应解析函数,可以提高解析效率,使主控制器可以明确地知道数据的来源,避免混淆和错误解析,由于每个功能模块都可以设置对应的解析函数,因此可以更好地满足不同的功能需求。
此外,在本申请的方案中,还会根据通信资源来阻塞或唤醒接收处理线程,通信资源是指已经接收的符合要求的但是还没有被解析处理的第三数据帧的量,在接收到一个符合要求的第三数据帧后,通信资源+1,当解析处理一个第三数据帧以后,通信资源-1,当解析处理完所有的第三数据帧以后,通信资源=0,此时,不再需要解析处理第三数据帧,因此,当通信资源为0时,可以阻塞接收处理线程,从而让出MCU的使用权,直到下次接收到中断信号,可以再次唤醒接收处理线程。
在一些具体实施方式中,流程如图7所示:
首先是设置CAN通信过滤表参数;
然后调用rt_device_control()函数完成CAN通信过滤表;
然后调用rt_sem_init()函数初始化CAN通信接收信号量;
然后调用rt_device_set_rx_indicate函数()设置CAN通信接收回调函数;
然后调用rt_sem_take()函数获取接收信号量,CAN通信资源减一,或调用rt_sem_release()函数释放接收信号量,CAN通信资源加一,当CAN通信资源为0时,则阻塞接收处理线程,当CAN通信资源大于0时,则唤醒接收处理线程;
然后调用rt_device_read()函数读取一帧第三数据帧;
第三数据帧的数据段中还可以设置有错误码位,在此判断错误码是否为0x00,如果否,则调用rt_sem_take()函数获取接收信号量,CAN通信资源减一,如果是则根据第三数据帧的帧ID中源地址判断第三数据帧的归属;
根据第三数据帧的归属切换到对应的解析函数进行解析得到解析结果;
然后根据第三数据帧中的当前寄存器地址以及读出数据更新变量,在更新变量后,则意味着该第三数据帧已经被处理完成,此时,调用rt_sem_take()函数获取接收信号量,CAN通信资源减一,直至CAN通信资源为0,最后阻塞接收处理线程。
进一步地,在其中一些实施例中,根据第一数据帧或第二数据帧使子控制器对应执行信息查询或参数设置,并在执行信息查询后向主控制器发送第三数据帧的步骤包括:
根据第一数据帧使子控制器对应执行信息查询,向主控制器发送第三数据帧;
根据第二数据帧使子控制器对应执行参数设置;
向主控制器发送第三数据帧的步骤包括:
根据第一数据帧的帧ID设置第三数据帧的帧ID;
根据第一数据帧中起始寄存器地址位以及寄存器数量位计算读取范围;
根据读取范围遍历对应寄存器的信息并判断当前变量对应的寄存器地址是否超出读取范围;
在当前变量对应的寄存器地址没有超出读取范围时,将第三数据帧中的读出数据位设置为读取范围内的当前变量值;
向主控制器发送设置完成的第三数据帧。
子控制器与主控制器一样都通过创建接收处理线程来实现第一数据帧和第二数据帧的接收以及后续处理,子控制器同样也根据通信资源来阻塞或唤醒接收处理线程,两者不同的地方在于获取到数据后的解析处理,判断是否应答,其余地方一致,因此在此只对数据解析部分做详细说明,具体过程如图8所示:
子控制器在接收到主控制器发送的数据帧后,判断数据段中的错误码是否为0x00,如果是,则判断功能码,通过功能码判断数据类型是参数数据或是请求数据,其中,第一数据帧和第二数据帧中也可以设置有错误码;
当数据是参数数据时,则根据数据段中的寄存器地址解析得到对应变量,然后修改对应变量的值;
当数据是请求数据时,则设置第三数据帧的帧ID中的目标地址为第一数据帧的帧ID的源地址,并且设置帧ID中对应的协议号、组号,然后将帧ID中的源地址设置成当前模块对应的地址;
然后获取第一数据帧中的起始寄存器地址和寄存器数量,并计算读取范围;
然后遍历读取范围内所有寄存器;
判断当前变量对应的寄存器地址是否超出范围,如果是,则设置第三数据帧中的寄存器地址为当前寄存器地址;
然后设置第三数据帧中的读出数据为当前变量的值;
最后调用can_send()向主控制器发送第三数据帧。
综上,本申请仅仅需要使用一根CAN通信总线便可以建立微波电源系统内的通信,在调试阶段,将CAN调试盒子连接到该CAN通信总线便可以知悉微波电源系统内部所有通信数据,若用户需要使用上位机通信,则用户使用上位机设备也可直接连接该CAN通信总线建立通信。
由于微波电源系统模块众多,其中各种数据极其庞大,例如各电压电流值,各种告警信息,各种校准系数,各种参数传递等,利用本申请的方案能够满足上述数据的高效率且高质量传递。
本方案制定的协议和联控方式支持拓展微波系统内部自身模块,如增加高压直流模块以增大整个系统微波功率输出,本方案也支持拓展多套微波电源系统,如从一套微波电源系统拓展到两套微波电源系统。
本方案提出的协议同样适用于其他多模块联控的工作控制系统,本方案制定的通信协议开放,允许用户基于已有框架根据自己需求自定义帧ID和数据段。
第二方面,参照图2,本申请还提出了一种基于CAN的微波电源通信装置,用于实现微波电源系统的通信,微波电源系统包括主控制器和设置在微波电源的子控制器,主控制器与子控制器通过一根CAN通信总线连接,该装置包括:
第一模块210,用于获取主控制器与子控制器的通信功能类型,通信功能类型包括信息查询和参数设置;
第二模块220,用于根据通信功能类型选择对应的数据帧发送至子控制器,数据帧的类型包括第一数据帧和第二数据帧;
第三模块230,用于根据第一数据帧或第二数据帧使子控制器对应执行信息查询或参数设置,并在执行信息查询后向主控制器发送第三数据帧;
第一数据帧、第二数据帧以及第三数据帧均基于CAN协议,包括帧ID和数据段,帧ID包括有协议号、组号、目标地址以及源地址,第一数据帧的数据段包括有功能码位、起始寄存器地址位以及寄存器数量位,第二数据帧的数据段包括功能码位,寄存器地址位以及写入数据位,第三数据帧的数据段包括功能码位、当前寄存器地址位以及读出数据位。
通过使用一根CAN通信总线建立微波电源主控制器和子控制器之间的通信,从而提高微波电源系统的便携性,在此基础上,对主控制器和子控制器之间的通信功能类型进行划分,然后根据不同的功能类型选择对应的数据帧,其中,数据帧一共包括有第一数据帧、第二数据帧以及第三数据帧,第一数据帧、第二数据帧以及第三数据帧均基于CAN协议的格式进行定制,三者均包括有帧ID和数据段,与常规的CAN协议格式不同的是,在本申请的方案中,帧ID由协议号、组号、目标地址以及源地址四部分组成,第一数据帧、第二数据帧以及第三数据帧的数据段的格式根据其通信功能类型进行设置,即,在本申请的方案中,基于CAN协议构建出一种新的通信协议,在该通信协议下,设计出了多种数据帧以携带不同类型的数据,使得不同通信功能类型所对应的不同类型的数据可以被准确快速的进行识别、传递和处理,同时,由于帧ID和数据段的具体结构设置,使得每个部分能够包含特定类型的信息,这种结构化的设计有助于对不同数据进行辨识和处理,因此,本申请的方案可以满足和实现微波电源系统中庞杂的数据传输和处理,具有提高微波电源系统的便捷性,实现微波电源系统庞杂的数据处理以提高通信效率和通信质量的优点。
此外,在一些优选的实施例中,本申请提出的一种基于CAN的微波电源通信装置可以执行上述方法中任意一项的步骤。
第三方面,参照图3,本申请还提供一种电子设备,包括处理器310以及存储器320,存储器320存储有计算机可读取指令,当计算机可读取指令由处理器执行时,运行上述方法中的步骤。
通过上述技术方案,处理器310和存储器320通过通信总线和/或其他形式的连接机构(未标出)互连并相互通讯,存储器320存储有处理器310可执行的计算机可读取指令,当电子设备运行时,处理器310执行该计算机可读取指令,以执行时执行上述实施例的任一可选的实现方式中的方法,以实现以下功能:获取主控制器与子控制器的通信功能类型,通信功能类型包括信息查询和参数设置;根据通信功能类型选择对应的数据帧发送至子控制器,数据帧的类型包括第一数据帧和第二数据帧;根据第一数据帧或第二数据帧使子控制器对应执行信息查询或参数设置,并在执行信息查询后向主控制器发送第三数据帧;第一数据帧、第二数据帧以及第三数据帧均基于CAN协议,包括帧ID和数据段,帧ID包括有协议号、组号、目标地址以及源地址,第一数据帧的数据段包括有功能码位、起始寄存器地址位以及寄存器数量位,第二数据帧的数据段包括功能码位,寄存器地址位以及写入数据位,第三数据帧的数据段包括功能码位、当前寄存器地址位以及读出数据位。
第四方面,本申请还提供一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时,运行上述方法中的步骤。
通过上述技术方案,计算机程序被处理器执行时,执行上述实施例的任一可选的实现方式中的方法,以实现以下功能:获取主控制器与子控制器的通信功能类型,通信功能类型包括信息查询和参数设置;根据通信功能类型选择对应的数据帧发送至子控制器,数据帧的类型包括第一数据帧和第二数据帧;根据第一数据帧或第二数据帧使子控制器对应执行信息查询或参数设置,并在执行信息查询后向主控制器发送第三数据帧;第一数据帧、第二数据帧以及第三数据帧均基于CAN协议,包括帧ID和数据段,帧ID包括有协议号、组号、目标地址以及源地址,第一数据帧的数据段包括有功能码位、起始寄存器地址位以及寄存器数量位,第二数据帧的数据段包括功能码位,寄存器地址位以及写入数据位,第三数据帧的数据段包括功能码位、当前寄存器地址位以及读出数据位。
其中,计算机可读存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory, 简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory, 简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory, 简称EPROM),可编程只读存储器(Programmable Red-Only Memory, 简称PROM),只读存储器(Read-Only Memory, 简称ROM),磁存储器,快闪存储器,磁盘或光盘。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其他的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其他的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (7)

1.一种基于CAN的微波电源通信方法,用于实现微波电源系统的通信,其特征在于,所述微波电源系统包括主控制器和设置在微波电源的子控制器,所述主控制器与所述子控制器通过一根CAN通信总线连接,该方法的步骤包括:
获取所述主控制器与所述子控制器的通信功能类型,所述通信功能类型包括信息查询和参数设置;
根据所述通信功能类型选择对应的数据帧发送至所述子控制器,所述数据帧的类型包括第一数据帧和第二数据帧;
根据所述第一数据帧或所述第二数据帧使所述子控制器对应执行信息查询或参数设置,并在执行信息查询后向所述主控制器发送第三数据帧;
所述第一数据帧、所述第二数据帧以及所述第三数据帧均基于CAN协议,包括帧ID和数据段,所述帧ID包括有协议号、组号、目标地址以及源地址,所述第一数据帧的数据段包括有功能码位、起始寄存器地址位以及寄存器数量位,所述第二数据帧的数据段包括功能码位,寄存器地址位以及写入数据位,所述第三数据帧的数据段包括功能码位、当前寄存器地址位以及读出数据位;
所述获取所述主控制器与所述子控制器的通信功能类型的步骤包括:
获取所述主控制器与所述子控制器进行通信时触发的定时器类型;
根据触发的所述定时器类型得到所述主控制器与所述子控制器的通信功能类型;
所述定时器的类型包括第一定时器和第二定时器,所述第一定时器用于信息查询,所述第二定时器用于参数设置,还包括:
根据指定的时间触发间隔分别触发所述第一定时器和所述第二定时器;
还包括:
获取所述微波电源的工作状态;
根据所述工作状态调整所述第一定时器和所述第二定时器的时间触发间隔;
所述微波电源的工作状态包括自检状态、预热状态、待机状态、运行状态以及故障状态;
所述根据所述工作状态调整所述第一定时器和所述第二定时器的时间触发间隔的步骤包括:
当所述微波电源的工作状态为自检状态时,调整所述第一定时器的时间触发间隔为第一间隔,调整所述第二定时器的时间触发间隔为第二间隔;
当所述微波电源的工作状态为预热状态时,调整所述第一定时器的时间触发间隔为第三间隔,调整所述第二定时器的时间触发间隔为第四间隔;
当所述微波电源的工作状态为待机状态和运行状态时,调整所述第一定时器的时间触发间隔为第五间隔,调整所述第二定时器的时间触发间隔为第六间隔;
当所述微波电源的工作状态为故障状态时,调整所述第一定时器的时间触发间隔为第七间隔,调整所述第二定时器的时间触发间隔为第八间隔;
所述第一间隔和所述第七间隔均小于所述第三间隔和所述第五间隔;
所述第四间隔和所述第六间隔均小于所述第二间隔和所述第八间隔;
所述第一间隔小于所述第二间隔;
所述第三间隔大于所述第四间隔;
所述第五间隔大于所述第六间隔;
所述第七间隔小于所述第八间隔。
2.根据权利要求1所述的一种基于CAN的微波电源通信方法,其特征在于,根据指定的时间触发间隔触发所述第一定时器的步骤之后还包括:
创建接收处理线程;
根据所述接收处理线程接收和处理所述子控制器向所述主控制器发送的所述第三数据帧,得到解析结果;
根据所述解析结果更新变量。
3.根据权利要求2所述的一种基于CAN的微波电源通信方法,其特征在于,所述根据所述接收处理线程接收和处理所述子控制器向所述主控制器发送的所述第三数据帧,得到解析结果的步骤包括:
接收所述第三数据帧;
设置过滤表参数用于筛选出帧ID符合要求的所述第三数据帧;
根据所述第三数据帧中的帧ID的源地址选择对应的解析函数解析数据段中读出数据位的信息得到解析结果;
还包括:
获取符合要求的所述第三数据帧对应的通信资源;
根据所述通信资源阻塞或唤醒所述接收处理线程。
4.根据权利要求1所述的一种基于CAN的微波电源通信方法,其特征在于,所述根据所述第一数据帧或所述第二数据帧使所述子控制器对应执行信息查询或参数设置,并在执行信息查询后向所述主控制器发送第三数据帧的步骤包括:
根据所述第一数据帧使所述子控制器对应执行信息查询,向所述主控制器发送所述第三数据帧;
根据所述第二数据帧使所述子控制器对应执行参数设置;
所述向所述主控制器发送所述第三数据帧的步骤包括:
根据所述第一数据帧的帧ID设置所述第三数据帧的帧ID;
根据所述第一数据帧中起始寄存器地址位以及寄存器数量位计算读取范围;
根据所述读取范围遍历对应寄存器的信息并判断当前变量对应的寄存器地址是否超出所述读取范围;
在当前变量对应的寄存器地址没有超出所述读取范围时,将所述第三数据帧中的读出数据位设置为所述读取范围内的当前变量值;
向所述主控制器发送设置完成的所述第三数据帧。
5.一种基于CAN的微波电源通信装置,用于实现微波电源系统的通信,其特征在于,所述微波电源系统包括主控制器和设置在微波电源的子控制器,所述主控制器与所述子控制器通过一根CAN通信总线连接,该装置包括:
第一模块,用于获取所述主控制器与所述子控制器的通信功能类型,所述通信功能类型包括信息查询和参数设置;
第二模块,用于根据所述通信功能类型选择对应的数据帧发送至所述子控制器,所述数据帧的类型包括第一数据帧和第二数据帧;
第三模块,用于根据所述第一数据帧或所述第二数据帧使所述子控制器对应执行信息查询或参数设置,并在执行信息查询后向所述主控制器发送第三数据帧;
所述第一数据帧、所述第二数据帧以及所述第三数据帧均基于CAN协议,包括帧ID和数据段,所述帧ID包括有协议号、组号、目标地址以及源地址,所述第一数据帧的数据段包括有功能码位、起始寄存器地址位以及寄存器数量位,所述第二数据帧的数据段包括功能码位,寄存器地址位以及写入数据位,所述第三数据帧的数据段包括功能码位、当前寄存器地址位以及读出数据位;
所述获取所述主控制器与所述子控制器的通信功能类型的步骤包括:
获取所述主控制器与所述子控制器进行通信时触发的定时器类型;
根据触发的所述定时器类型得到所述主控制器与所述子控制器的通信功能类型;
所述定时器的类型包括第一定时器和第二定时器,所述第一定时器用于信息查询,所述第二定时器用于参数设置,还包括:
根据指定的时间触发间隔分别触发所述第一定时器和所述第二定时器;
还包括:
获取所述微波电源的工作状态;
根据所述工作状态调整所述第一定时器和所述第二定时器的时间触发间隔;
所述微波电源的工作状态包括自检状态、预热状态、待机状态、运行状态以及故障状态;
所述根据所述工作状态调整所述第一定时器和所述第二定时器的时间触发间隔的步骤包括:
当所述微波电源的工作状态为自检状态时,调整所述第一定时器的时间触发间隔为第一间隔,调整所述第二定时器的时间触发间隔为第二间隔;
当所述微波电源的工作状态为预热状态时,调整所述第一定时器的时间触发间隔为第三间隔,调整所述第二定时器的时间触发间隔为第四间隔;
当所述微波电源的工作状态为待机状态和运行状态时,调整所述第一定时器的时间触发间隔为第五间隔,调整所述第二定时器的时间触发间隔为第六间隔;
当所述微波电源的工作状态为故障状态时,调整所述第一定时器的时间触发间隔为第七间隔,调整所述第二定时器的时间触发间隔为第八间隔;
所述第一间隔和所述第七间隔均小于所述第三间隔和所述第五间隔;
所述第四间隔和所述第六间隔均小于所述第二间隔和所述第八间隔;
所述第一间隔小于所述第二间隔;
所述第三间隔大于所述第四间隔;
所述第五间隔大于所述第六间隔;
所述第七间隔小于所述第八间隔。
6.一种电子设备,其特征在于,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如权利要求1-4任一项所述方法中的步骤。
7.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,运行如权利要求1-4任一项所述方法中的步骤。
CN202410292382.3A 2024-03-14 2024-03-14 基于can的微波电源通信方法、装置、电子设备及存储介质 Active CN117896204B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410292382.3A CN117896204B (zh) 2024-03-14 2024-03-14 基于can的微波电源通信方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410292382.3A CN117896204B (zh) 2024-03-14 2024-03-14 基于can的微波电源通信方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN117896204A CN117896204A (zh) 2024-04-16
CN117896204B true CN117896204B (zh) 2024-05-28

Family

ID=90647543

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410292382.3A Active CN117896204B (zh) 2024-03-14 2024-03-14 基于can的微波电源通信方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117896204B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107124421A (zh) * 2017-05-11 2017-09-01 珠海格力电器股份有限公司 基于多协议的通信方法、多协议网关设备及可存储介质
CN108737259A (zh) * 2018-05-08 2018-11-02 平安证券股份有限公司 网关设备、数据传输方法及存储介质
CN111445477A (zh) * 2020-02-28 2020-07-24 季华实验室 一种基于区域自动分割与选择的分析方法、装置及服务器
CN116149228A (zh) * 2023-02-27 2023-05-23 季华实验室 一种微波系统的控制装置以及控制方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8797146B2 (en) * 2010-04-27 2014-08-05 Apple Inc. Autonomous battery-free microwave frequency communication system
WO2022027480A1 (zh) * 2020-08-06 2022-02-10 华为数字能源技术有限公司 数据采集方法、装置、Modbus系统及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107124421A (zh) * 2017-05-11 2017-09-01 珠海格力电器股份有限公司 基于多协议的通信方法、多协议网关设备及可存储介质
CN108737259A (zh) * 2018-05-08 2018-11-02 平安证券股份有限公司 网关设备、数据传输方法及存储介质
CN111445477A (zh) * 2020-02-28 2020-07-24 季华实验室 一种基于区域自动分割与选择的分析方法、装置及服务器
CN116149228A (zh) * 2023-02-27 2023-05-23 季华实验室 一种微波系统的控制装置以及控制方法

Also Published As

Publication number Publication date
CN117896204A (zh) 2024-04-16

Similar Documents

Publication Publication Date Title
RU2716560C2 (ru) Базовая радиостанция и система связи, содержащая базовую радиостанцию
WO2016165242A1 (zh) 系统内节点数的调整方法和装置
CN108563493A (zh) 一种事件驱动方法、装置、设备及可读存储介质
CN103530193A (zh) 用于调节应用进程的方法和设备
CN113037889A (zh) 一种储能电池管理系统从机地址分配方法
CN112565035B (zh) 数据传输方法、装置及存储介质
CN112327732A (zh) 智慧建筑内微边缘服务控制方法、系统和电子设备
CN106658686A (zh) 一种数据转发方法,及接入设备
CN110501979A (zh) 一种集群控制方法、系统及终端设备
CN117896204B (zh) 基于can的微波电源通信方法、装置、电子设备及存储介质
CN105045224B (zh) 数据传输的方法和装置
WO2019015051A1 (zh) 一种工作模式的切换方法及装置
CN113535232B (zh) 暖通云边协同系统
CN103744365A (zh) 用于客房控制终端与上位机通讯的桥接模块及其方法
CN106708701A (zh) 一种基于arinc659总线的中央维护装置与方法
CN104579428A (zh) 一种plc设备自动配对方法
CN109873741A (zh) 一种单线共享总线协议的系统和工作方法
CN111736551B (zh) 一种集中控制装置、电器系统及其集中控制方法
CN106708702A (zh) 一种基于arinc659总线的中央维护装置与方法
CN117750242B (zh) 一种低功耗数字楼宇对讲系统及其控制方法
CN109835493B (zh) 综合模块化航空电子系统中的机载电源模块
CN108446131B (zh) 一种atm机固件升级方法、装置、设备及存储介质
CN117155466B (zh) 一种光纤通信设备的控制方法、系统、介质及设备
JP3722198B2 (ja) ノード
CN103926005A (zh) 一种基于无线传感网络的温度检测系统

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
GR01 Patent grant
GR01 Patent grant