一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

轮询通信方法以及装置与流程

2021-10-19 22:17:00 来源:中国专利 TAG:通信 装置 方法


1.本发明涉及通信技术领域,具体涉及一种轮询通信方法以及装置。


背景技术:

2.在采用modbus通讯协议控制plc(programmable logic controller,可编程逻辑控制器)控制器进行轮询通信时,主要是先确定好plc控制器的被控设备,再根据每个被控设备的设备信息(包括设备类型以及每类设备的数量等)以及通信数据(包括通信数据的读写方式、数据地址和数据量等)确定好每个被控设备的通信任务,其中,每个被控设备均包括至少一个通信任务,最后根据确定好的通信任务编写轮询通信程序并将轮询通信程序作为plc控制器的源程序中的一部分程序,以便plc控制器能够通过运行这个轮询通信程序实现对每个被控设备的轮询通信。目前主要是采用常规的plc编程语言编写轮询通信程序,而基于常规的plc编程语言编写的轮询通信程序在执行每个通讯任务时都要先构建一个相应的通信函数的功能模块再利用这个功能模块执行通信任务,当通信任务数量较多时这种方法极大地降低轮询通信的效率。此外,当增加或减少被控设备时需要重新编写轮询通信程序,即重新编写plc控制器的源程序,显著增加了plc控制器通信的开发与维护成本。
3.相应地,本领域需要一种新的轮询通信方案来解决上述问题。


技术实现要素:

4.本发明旨在解决上述技术问题,即,解决如何提高轮询通信的通信效率以及通信任务扩展性的问题。
5.在第一方面,本发明提供一种轮询通信方法,应用于plc控制器,所述plc控制器与至少一个被控设备通信连接,所述方法包括:
6.通过所述plc控制器的人机交互接口接收通信任务列表,其中,所述通信任务列表是采用结构化文本语言并根据预设的所述被控设备的通信需求确定的至少一个通信任务构建的;
7.响应于接收到的轮询通信指令,根据所述通信任务列表中每个通信任务的轮询顺序,依次执行每个通信任务,以完成轮询通信。
8.在上述轮询通信方法的一个技术方案中,所述plc控制器包括通信接口,“根据所述通信任务列表中每个通信任务的轮询顺序依次执行每个通信任务”的步骤具体包括:
9.针对所述通信任务列表的每轮轮询通信,根据所述通信任务列表中每个通信任务的轮询顺序,依次通过所述通信接口获取每个通信任务的任务信息,根据所述任务信息执行相应的通信操作。
10.在上述轮询通信方法的一个技术方案中,所述方法还包括:
11.响应于在接收到所述轮询通信指令的之前、同时或之后接收到的通信任务列表更新指令,对所述通信任务列表中的通信任务进行更新。
12.在上述轮询通信方法的一个技术方案中,所述plc控制器包括通信接口,在“根据
所述通信任务列表中每个通信任务的轮询顺序依次执行每个通信任务”的步骤之前,所述方法还包括:
13.通过所述人机交互接口获取所述通信接口的配置信息;
14.根据所述配置信息对所述通信接口进行接口配置,以便在执行“根据所述通信任务列表中每个通信任务的轮询顺序依次执行每个通信任务”的步骤时能够通过接口配置完成的通信接口依次执行每个通信任务。
15.在上述轮询通信方法的一个技术方案中,所述任务信息包括被控设备的设备地址、数据读写方式、数据地址、数据数量以及数据缓存区地址。
16.第二方面,提供一种轮询通信装置,应用于plc控制器,所述plc控制器与至少一个被控设备通信连接,所述装置包括:
17.通信任务列表接收模块,其被配置成通过所述plc控制器的人机交互接口接收通信任务列表,其中,所述通信任务列表是采用结构化文本语言并根据预设的所述被控设备的通信需求确定的至少一个通信任务构建的;
18.轮询通信执行模块,其被配置成响应于接收到的轮询通信指令,根据所述通信任务列表中每个通信任务的轮询顺序依次执行每个通信任务,以完成轮询通信。
19.在上述轮询通信装置的一个技术方案中,所述plc控制器包括通信接口,所述轮询通信执行模块被进一步配置成执行下列操作:
20.针对所述通信任务列表的每轮轮询通信,根据所述通信任务列表中每个通信任务的轮询顺序,依次通过所述通信接口获取每个通信任务的任务信息,根据所述任务信息执行相应的通信操作。
21.在上述轮询通信装置的一个技术方案中,所述装置还包括:
22.通信任务列表更新模块,其被配置成响应于在接收到所述轮询通信指令的之前、同时或之后接收到的通信任务列表更新指令,对所述通信任务列表中的通信任务进行更新。
23.在上述轮询通信装置的一个技术方案中,所述plc控制器包括通信接口,所述装置还包括通信接口配置模块,所述通信接口配置模块被配置成执行下列操作:
24.通过所述人机交互接口获取所述通信接口的配置信息;
25.根据所述配置信息对所述通信接口进行接口配置,以便所述轮询通信执行模块能够通过接口配置完成的通信接口依次执行每个通信任务。
26.在上述轮询通信装置的一个技术方案中,所述任务信息包括被控设备的设备地址、数据读写方式、数据地址、数据数量以及数据缓存区地址。
27.本发明上述一个或多个技术方案,至少具有如下一种或多种有益效果:
28.在实施本发明的技术方案中,可以通过plc控制器的人机交互接口接收通信任务列表,其中,通信任务列表是采用结构化文本语言并根据预设的被控设备的通信需求确定的至少一个通信任务构建的;进而可以响应于接收到的轮询通信指令,根据通信任务列表中每个通信任务的轮询顺序依次执行每个通信任务,以完成轮询通信。由于通信任务列表与plc控制器的源程序相互独立,因而在需要更改通信任务列表时也无需去修改plc控制器的源程序,极大地提高了轮询通信任务的可扩展性。此外,通过查询通信任务列表的方式执行具体的通信任务,无需先构建一个相应的通信函数的功能模块再利用这个功能模块去执
行通信任务,克服了现有技术中通信任务数量较多时轮询通信效率较低的缺陷。
附图说明
29.参照附图,本发明的公开内容将变得更易理解。本领域技术人员容易理解的是:这些附图仅仅用于说明的目的,而并非意在对本发明的保护范围组成限制。其中:
30.图1是根据本发明的一个实施例的轮询通信方法的主要步骤流程示意图;
31.图2是根据本发明的另一个实施例的轮询通信方法的主要步骤流程示意图;
32.图3是根据本发明的一个实施例的轮询通信装置的主要结构框图示意图。
33.附图标记列表:
34.11:通信任务列表接收模块;12:轮询通信执行模块。
具体实施方式
35.下面参照附图来描述本发明的一些实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。
36.在本发明的描述中,“模块”、“处理器”可以包括硬件、软件或者两者的组合。一个模块可以包括硬件电路,各种合适的感应器,通信端口,存储器,也可以包括软件部分,比如程序代码,也可以是软件和硬件的组合。处理器可以是中央处理器、微处理器、数字信号处理器或者其他任何合适的处理器。处理器具有数据和/或信号处理功能。处理器可以以软件方式实现、硬件方式实现或者二者结合方式实现。非暂时性的计算机可读存储介质包括任何合适的可存储程序代码的介质,比如磁碟、硬盘、光碟、闪存、只读存储器、随机存取存储器等等。
37.参阅附图1,图1是根据本发明的一个实施例的轮询通信方法的主要步骤流程示意图,本实施例的轮询通信方法可以应用于plc控制器,其中,plc控制器可以与至少一个被控设备通信连接。如图1所示,本发明实施例中的轮询通信方法主要包括下列步骤s101

步骤s102。
38.步骤s101:通过plc控制器的人机交互接口接收通信任务列表。
39.在本实施例中人机交互接口指的是能够与plc控制器交互信息的接口。通过人机交互接口可以向plc控制器输入信息,也可以通过人机交互接口接收plc控制器输出的信息。
40.在本实施例中通信任务列表可以是采用结构化文本语言(structured text,st语言)并根据预设的被控设备的通信需求确定的至少一个通信任务构建的。其中,每个通信任务分别对应有相应的任务信息,任务信息包括但不限于被控设备的设备地址、数据读写方式、数据地址、数据数量以及发送/接收数据的数据缓存地址。设备地址可以是被控设备的通信地址。数据读写方式指的对通信数据进行处理的方式,其可以包括读取数据和写入数据两种方式,每个通信任务对应的数据读写方式可以是读取数据,也可以是写入数据。数据地址可以是需要从通信数据中读取的数据的地址,也可以是需要写入到通信数据中数据,在通信数据中的地址。数据数量可以是读取或写入数据的数据量。数据缓存区地址可以是用于缓存读取或写入数据的数据缓存区的地址。
41.步骤s102:响应于接收到的轮询通信指令,根据通信任务列表中每个通信任务的
轮询顺序依次执行每个通信任务,以完成轮询通信。
42.在本实施例中轮询通信指令可以是plc控制器启动后自动生成的,也可以通过人机交互接口接收到的。
43.在一个例子中,假设通信任务列表包括轮询顺序依次为由先至后的三个通信任务a、b和c,在接收到轮询通信指令后,可以依次执行通信任务a、b和c完成一轮轮询通信,并且在完成一轮轮询通信后可以立刻也可以间隔一定时间进入下一轮轮询通信,即再次依次执行通信任务a、b和c。如此循环地执行通信任务a、b和c,实现对通信任务列表中通信任务的轮询通信。
44.通过上述步骤s101至步骤s102可知,本实施例是通过构建通信任务列表并控制plc控制器循环地依次执行通信任务列表中的通信任务的方式,实现了plc控制器与被控设备之间的轮询通信。由于通信任务列表与plc控制器的源程序相互独立,因而在需要更改通信任务列表如增加或删减通信任务时也无需去修改plc控制器的源程序,极大地提高了轮询通信任务的可扩展性。此外,通过查询通信任务列表的方式执行具体的通信任务,也无需先构建一个相应的通信函数的功能模块再利用这个功能模块去执行通信任务,因而克服了现有技术中通信任务数量较多时轮询通信效率较低的缺陷。
45.下面对上述步骤s102作具体说明。
46.在根据本发明实施例的一个实施方式中,plc控制器可以包括通信接口,plc控制器可以通过通信接口与被控设备通信连接。其中,通信接口可以是基于modbus通讯协议的通信接口。在本实施方式中针对通信任务列表的每轮轮询通信,均可以按照下列步骤11至步骤12去执行通信任务列表中的通信任务:
47.步骤11:根据通信任务列表中每个通信任务的轮询顺序,依次通过通信接口获取每个通信任务的任务信息。
48.步骤12:根据任务信息执行相应的通信操作。
49.在一个例子中,假设某个通信任务的任务信息包括:设备地址为1,数据读写方式为读取数据,数据地址为40001,数据数量为5,数据缓存地址为db11,那么可以通过通信接口可以获取到上述任务信息,在获取到这些任务信息后,plc控制器就可以根据这些任务信息执行相应的通信操作,即读取设备地址为1的被控设备发送的通信数据(如空调运行数据)中数据地址为40001的通信数据(如空调运行数据中的温度数据,该温度数据的数据数量为5),同时利用数据缓存区地址为db11的数据缓存区缓存上述读取到的通信数据(如空调运行数据中的温度数据)。
50.根据本实施例的前述描述可知,本实施例在需要更改通信任务列表(如增加或减少与plc控制器通信的被控设备时需要增加或减少通信任务)时无需去修改plc控制器的源程序,因而本实施例无论是在plc控制器执行轮询通信之前,执行轮询通信的过程中,还是停止执行轮询通信后都可以去增加或删减通信任务列表中的通信任务,即对通信任务列表中的通信任务进行更新,并且即使在执行轮询通信的过程中更新通信任务,也不会影响plc控制器正常地执行通信任务列表中已经设置好的通信任务。具体而言,在根据本发明实施例的一个实施方式中,可以响应于在接收到轮询通信指令的之前、同时或之后接收到的通信任务列表更新指令,对通信任务列表中的通信任务进行更新(包括但不限于:增加新的通信任务、删减原有的通信任务)。如果在接收到轮询通信指令的之前或之后接收到了通信任
务列表更新指令,由于plc控制器并未开始进行轮询通信,自然也就不会影响plc控制器的轮询通信。如果在接收到轮询通信指令同时还接收到了通信任务列表更新指令,比如在通信任务列表中增加一个新的通信任务,plc控制器也可以正常地响应轮询通信指令,即根据通信任务列表中每个设置好的通信任务的轮询顺序依次执行每个通信任务,即使在首轮轮询通信中没有执行上述新增加的通信任务,也可以在下一轮轮询通信时正常地执行这个新增加的通信任务。
51.在根据本发明实施例的一个实施方式中,轮询通信方法除了可以包括上述步骤s101和步骤s102,在执行步骤s102之前还可以包括下列步骤s1020。
52.步骤s1020:通过人机交互接口获取通信接口的配置信息,根据配置信息对通信接口进行接口配置。
53.需要说明的是,在本实施例中无需在每次控制plc控制器执行轮询通信时均执行步骤s1020,本领域技术人员可以根据实际需求,如plc控制器第一次运行时或需求修改通信接口的配置信息时,再通过人机交互接口录入通信接口的配置信息,以便plc控制器能够通过人机交互接口获取通信接口的配置信息,根据配置信息对通信接口进行接口配置,进而在执行步骤s102时就可以通过接口配置完成的通信接口依次执行每个通信任务,完成轮询通信。
54.参阅附图2,图2是根据本发明的另一个实施例的轮询通信方法的主要步骤流程示意图,本实施例的轮询通信方法同样可以应用于plc控制器,其中,plc控制器包括人机交互接口和通信接口,plc控制器可以通过通信接口与至少一个被控设备通信连接。需要说明的是,人机交互接口和通信接口分别与图1所示方法实施例中的人机交互接口和通信接口类似,为了描述简洁,在此不再赘述。
55.如图2所示,在本实施例中可以通过人机交互接口获取通信接口的配置信息,进而对通信接口进行接口配置,完成通信接口的接口初始化。当接收到轮询通信指令以后,可以根据通信任务列表中每个通信任务的轮询顺序,通过通信接口获取每个通信任务的任务信息,进而根据任务信息执行相应的通信操作,在执行通信操作时可以从数据缓存区读写数据。若通信失败即没有完成通信操作,则进行报警,结束执行当前通信任务,并继续执行下一个通信任务;若通信成功即完成通信操作则继续执行下一个通信任务。
56.如图2所示,通信任务列表可以包括n个通信任务(任务1至任务n),以任务1为例,任务1的任务信息可以包括:设备地址为1,数据读写方式为读(读取数据),数据地址为40001,数据缓存区地址为db11。在本实施例中plc控制器可以在接收到轮询通信指令以后,不断循环地依次执行任务1至任务n,完成轮询通信。
57.需要指出的是,尽管上述实施例中将各个步骤按照特定的先后顺序进行了描述,但是本领域技术人员可以理解,为了实现本发明的效果,不同的步骤之间并非必须按照这样的顺序执行,其可以同时(并行)执行或以其他顺序执行,这些变化都在本发明的保护范围之内。
58.进一步,本发明还提供了一种轮询通信装置。
59.参阅附图3,图3是根据本发明的一个实施例的轮询通信装置的主要结构框图。如图3所示,本发明实施例中的轮询通信装置主要包括通信任务列表接收模块11和轮询通信执行模块12。在一些实施例中通信任务列表接收模块11可以被配置成通过plc控制器的人
机交互接口接收通信任务列表,其中,通信任务列表是采用结构化文本语言并根据预设的被控设备的通信需求确定的至少一个通信任务构建的;轮询通信执行模块12可以被配置成响应于接收到的轮询通信指令,根据通信任务列表中每个通信任务的轮询顺序依次执行每个通信任务,以完成轮询通信。其中,任务信息可以包括被控设备的设备地址、数据读写方式、数据地址、数据数量以及数据缓存区地址。一个实施方式中,具体实现功能的描述可以参见步骤s101

步骤s102所述。
60.在一个实施方式中,plc控制器可以包括通信接口,轮询通信执行模块12可以被进一步配置成执行下列操作:
61.针对通信任务列表的每轮轮询通信,根据通信任务列表中每个通信任务的轮询顺序,依次通过通信接口获取每个通信任务的任务信息,根据任务信息执行相应的通信操作。一个实施方式中,具体实现功能的描述可以参见步骤s102所述。
62.在一个实施方式中,轮询通信装置还可以包括通信任务列表更新模块,在本实施方式中通信任务列表更新模块可以被配置成响应于在接收到轮询通信指令的之前、同时或之后接收到的通信任务列表更新指令,对通信任务列表中的通信任务进行更新。一个实施方式中,具体实现功能的描述可以参见步骤s1020所述。
63.在一个实施方式中,plc控制器以包括通信接口,轮询通信装置还可以包括通信接口配置模块,在本实施方式中通信接口配置模块被配置成执行下列操作:
64.通过人机交互接口获取所述通信接口的配置信息;根据配置信息对通信接口进行接口配置,以便轮询通信执行模块12能够通过接口配置完成的通信接口依次执行每个通信任务。
65.上述轮询通信装置以用于执行图1

2所示的轮询通信方法实施例,两者的技术原理、所解决的技术问题及产生的技术效果相似,本技术领域技术人员可以清楚地了解到,为了描述的方便和简洁,轮询通信装置的具体工作过程及有关说明,可以参考轮询通信方法的实施例所描述的内容,此处不再赘述。
66.本领域技术人员能够理解的是,本发明实现上述一实施例的方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器、随机存取存储器、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
67.进一步,应该理解的是,由于各个模块的设定仅仅是为了说明本发明的装置的功能单元,这些模块对应的物理器件可以是处理器本身,或者处理器中软件的一部分,硬件的一部分,或者软件和硬件结合的一部分。因此,图中的各个模块的数量仅仅是示意性的。
68.本领域技术人员能够理解的是,可以对装置中的各个模块进行适应性地拆分或合并。对具体模块的这种拆分或合并并不会导致技术方案偏离本发明的原理,因此,拆分或合
并之后的技术方案都将落入本发明的保护范围内。
69.至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜