CN105183688B - 一种基于串口网络的io数字量监测端口扩展方法 - Google Patents
一种基于串口网络的io数字量监测端口扩展方法 Download PDFInfo
- Publication number
- CN105183688B CN105183688B CN201510544361.7A CN201510544361A CN105183688B CN 105183688 B CN105183688 B CN 105183688B CN 201510544361 A CN201510544361 A CN 201510544361A CN 105183688 B CN105183688 B CN 105183688B
- Authority
- CN
- China
- Prior art keywords
- monitoring
- fpga
- logic
- serial
- board
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Communication Control (AREA)
Abstract
一种基于串口网络的IO数字量监测端口扩展方法,包括,S1、将带FPGA监测逻辑的监测板卡挂接到由一块带微控制器的板卡控制的串口网络上;S2、由分布在监测板卡上的FPGA监测逻辑对I/O型数字量进行监测,并将FPGA监测逻辑对I/O型数字量的监测结果通过串口网络传给微控制器;S3、由微控制器完成对I/O型数字量监测结果信息的整理校正,提供监测报告。本发明所述方法将扩展的I/O型数字量端口在其他板卡上实现,通过串口总线将测试信息传回到微处理器板卡上,这样在微处理器板卡上无需实现监测I/O型数字量相关功能的电路,从而可以使微处理器板卡更好地完成其他功能。
Description
技术领域
本发明涉及工业控制系统的监测领域,特别是涉及一种基于串口网络的IO数字量监测端口扩展方法。
背景技术
IO(或写成I/O)型数字量是工业控制系统中常常监测的一类信号,其通常作为嵌入式系统中的开关信号,在系统的运行过程中控制系统进行从一个状态到另一个状态的转换。因此,对I/O型数字量进行实时监测可以有助于更好地了解系统的运行状态和运行进程,便于及时纠正系统运行偏差,调整系统运行节奏,提高系统运行效率。现有技术通常采用微控制器直接对I/O型数字量监测,但是,当需要监测的I/O型数字量规模超过微处理器I/O型数字量端口所能监测的最大位数时,就需要对微处理器的I/O型数字量端口进行扩展。直接的方法是在带有微处理器的板卡上面利用FPGA进行扩展,这样在使用上,微处理器就可以将扩展的I/O型数字量端口像自己原生的端口一样使用。但这样的I/O型数字量端口扩展方式会占用板卡的大量面积,同时监测板卡一般并不仅仅对I/O型数字量进行监控,各种模拟量、状态信息等等往往也都在监测之列,当因为扩展I/O型数字量端口而占据大量板卡面积时,难免影响其他监测功能的正常实现。
发明内容
本发明要解决的技术问题为:提供一种基于串口网络的IO型数字量监测端口扩展方法,解决现有技术中的扩展方法式会占用板卡的大量面积,同时难免影响其他监测功能的正常实现的问题。
本发明的技术方案为:
一种基于串口网络的I/O型数字量监测端口扩展方法,包括,S1、将带FPGA监测逻辑的监测板卡挂接到由一块带微控制器的板卡控制的串口网络上;S2、由分布在监测板卡上的FPGA监测逻辑对I/O型数字量进行监测,并将FPGA监测逻辑对I/O型数字量的监测结果通过串口网络传给微控制器;S3、由微控制器完成对I/O型数字量监测结果信息的整理校正,提供监测报告。
进一步地,带微控制器的板卡和带FPGA监测逻辑的监测板卡间的串口网络中的通信信号分为三类:串口通信控制信号、串口数据信号和时钟同步信号。
进一步地,包括,分别建立微控制器到各个带FPGA监测逻辑的监测板卡间的串口通信控制信号;微控制器通过循环置每个带FPGA监测逻辑的监测板卡的串口通信控制信号有效来控制带FPGA监测逻辑的监测板卡的串口数据发送;微控制器通过发送时钟同步信号来控制带FPGA监测逻辑的监测板卡的时间与微控制器时间同步。
进一步地,串口通信控制信号由一位I/O型控制信号构成,将各个带FPGA监测逻辑的监测板卡的一个I/O端口中的一位分别连接到微控制器的I/O型端口的不同位上,微控制器通过向带FPGA监测逻辑的监测板卡发送有效信号对应的电平信号来控制带FPGA监测逻辑的监测板卡的串口数据发送。
进一步地,微控制器通过向带FPGA监测逻辑的监测板卡发送有效信号对应的电平信号来控制带FPGA监测逻辑的监测板卡的串口数据发送,I/O型控制信号有两种状态,选择其中一种状态作为有效状态,另一种状态即为无效状态。
进一步地,微控制器通过循环置每个带FPGA监测逻辑的监测板卡的控制信号有效来控制带FPGA监测逻辑的监测板卡的串口数据发送,微控制器在开始状态置串口通信控制信号无效,在监测开始后,将循环置对各个带FPGA监测逻辑的监测板卡间的串口通信控制信号,带FPGA监测逻辑的监测板卡检测到串口通信控制信号有效后,则通过串口总线向微控制器发送一帧I/O监测结果数据。
进一步地,每次置一个带FPGA监测逻辑的监测板卡的串口通信控制信号有效,在完成本次串口帧接受后置所有串口通信控制信号无效,完成本次串口帧消息处理后置下一个带FPGA监测逻辑的监测板卡对应的串口通信控制信号有效。
进一步地,由分布在监测板卡上的FPGA监测逻辑对各自I/O型数字量进行监测,FPGA监测逻辑包括本地计时逻辑,即通过FPGA本身的晶振对本地时间进行计时,所记时间称为本地时间。
进一步地,由分布在监测板卡上的FPGA监测逻辑对各自I/O型数字量进行监测,当被监测的I/O型数字量发生变化时,FPGA生成一帧串口数据,串口帧数据中包括被监测I/O型数字量当前的状态以及I/O型数字量发生变化的时间,其中I/O型数字量发生变化的时间为当前FPGA监测逻辑的本地时间。
进一步地,时钟同步信号是由微处理器发出,所有带FPGA监测逻辑的监测板卡接
收的周期型脉冲信号,所述的周期型脉冲信号,该周期型脉冲信号的周期T应该满足其中MaxTimemonitoring为需要进行监测的最长
时间。
本发明与现有技术相比的优点在于:
本发明所述方法将扩展的I/O型数字量端口在其他板卡上实现,通过串口总线将测试信息传回到微处理器板卡上,这样在微处理器板卡上无需实现监测I/O型数字量相关功能的电路,从而可以使微处理器板卡更好地完成其他功能。除此之外,本发明所述的方法微处理器与I/O型数字量监控可以异步工作,即I/O型数字量的监控工作完全由带FPGA的板卡完成,微处理器仅需在监测完成后完成监测结果信息的处理工作即可,这样即可以在保证监测实时性的基础上,让微处理器摆脱实时查询或监测处理I/O型数字量变化等CPU依赖型工作,从而完成更多其他功能。为了保证多个板卡测试的I/O型数字量变化结果具有可比性,本发明所述方法通过由微处理器发送时钟同步脉冲的方式,使扩展I/O型数字量端口所需的带FPGA监测逻辑的板卡同步为微处理器所在板卡的时间,从而使所有带FPGA监测逻辑的板卡测得的I/O型数字量变化结果均具有同样地时间基准,克服了多板卡间时间同步的问题。
附图说明
图1为本发明实施例所使用的微控制器功能结构图;
图2为本发明实施例所使用的电路逻辑连接图;
图3为本发明微处理器中主循环处理逻辑流程图。
具体实施方式
本发明的一种基于串口网络的I/O型数字量监测端口扩展方法,将独立的带FPGA监测逻辑的监测板卡挂接到由一块带微控制器板卡控制的串口网络上,由分布在监测板卡上的FPGA监测逻辑对各自I/O型数字量进行监测,并将FPGA监测逻辑对I/O型数字量的监测结果通过串口网络传给微控制器,最终由微控制器完成对I/O型数字量监测结果信息的整理校正,提供监测报告。
带微控制器的板卡和带FPGA监测逻辑的监测板卡间的串口网络中的通信信号分为三类:串口通信控制信号、串口数据信号和时钟同步信号。将带FPGA监测逻辑的监测板卡和带微控制器的板卡同时挂接在一条共享的串口总线上,并且分别建立微控制器到各个带FPGA监测逻辑的监测板卡间的串口通信控制信号。微控制器通过循环置每个带FPGA监测逻辑的监测板卡的串口通信控制信号有效来控制带FPGA监测逻辑的监测板卡的串口数据发送。微控制器通过发送时钟同步信号来控制带FPGA监测逻辑的监测板卡的时间与微控制器时间同步。
所述的串口通信控制信号由一位I/O型控制信号构成,将各个带FPGA监测逻辑的监测板卡的一个I/O端口中的一位分别连接到微控制器的I/O型端口的不同位上,微控制器通过向带FPGA监测逻辑的监测板卡发送有效信号对应的电平信号来控制带FPGA监测逻辑的监测板卡的串口数据发送。
所述的微控制器通过向带FPGA监测逻辑的监测板卡发送有效信号对应的电平信号来控制带FPGA监测逻辑的监测板卡的串口数据发送,I/O型控制信号有两种状态,任意选择其中一种状态作为有效状态,另一种状态即为无效状态。
微控制器通过循环置每个带FPGA监测逻辑的监测板卡的控制信号有效来控制带FPGA监测逻辑的监测板卡的串口数据发送,微控制器在开始状态置串口通信控制信号无效,在监测开始后,将循环置对各个带FPGA监测逻辑的监测板卡间的串口通信控制信号,带FPGA监测逻辑的监测板卡检测到串口通信控制信号有效后,则通过串口总线向微控制器发送一帧I/O监测结果数据。
上述对各个带FPGA监测逻辑的监测板卡间的串口通信控制信号,每次置一个带FPGA监测逻辑的监测板卡的串口通信控制信号有效,在完成本次串口帧接受后置所有串口通信控制信号无效,完成本次串口帧消息处理后置下一个带FPGA监测逻辑的监测板卡对应的串口通信控制信号有效。
带FPGA监测逻辑的监测板卡检测到串口通信控制信号有效后,则通过串口总线向微控制器发送一帧I/O监测结果数据,带FPGA监测逻辑的监测板卡通过周期性检测被连接串口通信控制信号的I/O端口的相应位来识别当前是否串口通信控制信号已经有效。
所述的由分布在监测板卡上的FPGA监测逻辑对各自I/O型数字量进行监测,FPGA监测逻辑包括本地计时逻辑,即通过FPGA本身的晶振对本地时间进行计时,所记时间称为本地时间。
所述的由分布在监测板卡上的FPGA监测逻辑对各自I/O型数字量进行监测,当被监测的I/O型数字量发生变化时,FPGA生成一帧串口数据,串口帧数据中包括被监测I/O型数字量当前的状态以及I/O型数字量发生变化的时间,其中I/O型数字量发生变化的时间为当前FPGA监测逻辑的本地时间。
所述的通过FPGA本身的晶振对本地时间进行计时,所记时间称为本地时间,该本地时间由两个32位变量构成,分别记为TimeHigh和Timelow。其中,Timelow为根据FPGA本身的晶振维护的自累加计时变量,TimeHigh为时钟同步信号脉冲计数器。
所述的通过FPGA本身的晶振对本地时间进行计时,所记时间称为本地时间,本地时间的时间单位为微秒,且Timelow单位也为微秒。
带微控制器的板卡和带FPGA监测逻辑的监测板卡间的串口网络中的通信信号分为三类:串口通信控制信号、串口数据信号和时钟同步信号,所述的时钟同步信号,该时钟同步信号是由微处理器在启动微处理器本地计时时间时同步发出,所有带FPGA监测逻辑的监测板卡接收的周期型脉冲信号。
时钟同步信号是由微处理器发出,所有带FPGA监测逻辑的监测板卡接收的周期型脉冲信号,所述的周期型脉冲信号,该周期型脉冲信号的周期应该满足
其中MaxTimemonitoring为需要进行监测的
最长时间。
一种基于串口网络的I/O型数字量监测端口扩展方法,所述的FPGA本身的晶振对本地时间进行计时的方法为,在带FPGA监测逻辑的监测板卡在接收到时钟同步信号脉冲上沿后,对本地时间变量TimeHigh进行加一,且对Timelocal进行清零处理。
微控制器通过发送时钟同步信号来控制带FPGA监测逻辑的监测板卡的时间与微控制器时间同步,在收到带FPGA监测逻辑的监测板卡通过串口总线发送的I/O数字量变化消息后,对其中的时间信息解析方法为:Timeoutput=TimeHigh×T+Timelow,其中Timeoutput为本发明所述监测方法报告的I/O数字量变化时间。
由分布在监测板卡上的FPGA监测逻辑对各自I/O型数字量进行监测,所述的当被监测的I/O型数字量发生变化时,FPGA生成一帧串口数据:FPGA监测逻辑根据晶振时钟实现对被监测的I/O型数字量端口的周期性采样,并将采样结果与之前最近的采样结果进行异或操作,若异或结果不为零,则表示当前被监测的I/O型数字量发生了变化,FPGA监测逻辑在此时将根据当前的I/O型数字量及当前的本地时间构造一帧串口数据,并将该串口数据放于串口消息缓冲队列中,待监测到串口通信控制信号有效时,从串口消息缓冲队列中按照“先进先出”的规则取出一帧数据,进行发送;
由分布在监测板卡上的FPGA监测逻辑对各自I/O型数字量进行监测,所述的待监测到串口通信控制信号有效时,从串口消息缓冲队列中按照“先进先出”的规则取出一帧数据,进行发送,若监测到串口通信控制信号有效时,串口消息缓冲队列为空,则进行空帧应答,即回复标识当前无I/O型数字量变化信息的帧消息。
Claims (7)
1.一种基于串口网络的I/O型数字量监测端口扩展方法,其特征在于,包括,
S1、将带FPGA监测逻辑的监测板卡挂接到由一块带微控制器的板卡控制的串口网络上;
S2、由分布在监测板卡上的FPGA监测逻辑对I/O型数字量进行监测,并将FPGA监测逻辑对I/O型数字量的监测结果通过串口网络传给微控制器;具体为:由分布在监测板卡上的FPGA监测逻辑对各自I/O型数字量进行监测,当被监测的I/O型数字量发生变化时,FPGA生成一帧串口数据,串口帧数据中包括被监测I/O型数字量当前的状态以及I/O型数字量发生变化的时间,其中I/O型数字量发生变化的时间为当前FPGA监测逻辑的本地时间;
S3、由微控制器完成对I/O型数字量监测结果信息的整理校正,提供监测报告;
带微控制器的板卡和带FPGA监测逻辑的监测板卡间的串口网络中的通信信号分为三类:串口通信控制信号、串口数据信号和时钟同步信号;
微控制器通过循环置每个带FPGA监测逻辑的监测板卡的串口通信控制信号有效来控制带FPGA监测逻辑的监测板卡的串口数据发送;微控制器通过发送时钟同步信号来控制带FPGA监测逻辑的监测板卡的时间与微控制器时间同步。
2.根据权利要求1所述的基于串口网络的I/O型数字量监测端口扩展方法,其特征在于,串口通信控制信号由一位I/O型控制信号构成,将各个带FPGA监测逻辑的监测板卡的一个I/O端口中的一位分别连接到微控制器的I/O型端口的不同位上,微控制器通过向带FPGA监测逻辑的监测板卡发送有效信号对应的电平信号来控制带FPGA监测逻辑的监测板卡的串口数据发送。
3.根据权利要求1所述的基于串口网络的I/O型数字量监测端口扩展方法,其特征在于,微控制器通过向带FPGA监测逻辑的监测板卡发送有效信号对应的电平信号来控制带FPGA监测逻辑的监测板卡的串口数据发送,I/O型控制信号有两种状态,选择其中一种状态作为有效状态,另一种状态即为无效状态。
4.根据权利要求1所述的基于串口网络的I/O型数字量监测端口扩展方法,其特征在于,微控制器通过循环置每个带FPGA监测逻辑的监测板卡的控制信号有效来控制带FPGA监测逻辑的监测板卡的串口数据发送,微控制器在开始状态置串口通信控制信号无效,在监测开始后,将循环置对各个带FPGA监测逻辑的监测板卡间的串口通信控制信号,带FPGA监测逻辑的监测板卡检测到串口通信控制信号有效后,则通过串口总线向微控制器发送一帧I/O监测结果数据。
5.根据权利要求1所述的基于串口网络的I/O型数字量监测端口扩展方法,其特征在于,每次置一个带FPGA监测逻辑的监测板卡的串口通信控制信号有效,在完成本次串口帧接受后置所有串口通信控制信号无效,完成本次串口帧消息处理后置下一个带FPGA监测逻辑的监测板卡对应的串口通信控制信号有效。
6.根据权利要求1所述的基于串口网络的I/O型数字量监测端口扩展方法,其特征在于,由分布在监测板卡上的FPGA监测逻辑对各自I/O型数字量进行监测,FPGA监测逻辑包括本地计时逻辑,即通过FPGA本身的晶振对本地时间进行计时,所记时间称为本地时间。
7.根据权利要求1所述的基于串口网络的I/O型数字量监测端口扩展方法,其特征在于,时钟同步信号是由微处理器发出,所有带FPGA监测逻辑的监测板卡接收的周期型脉冲信号,该周期型脉冲信号的周期T应该满足其中MaxTimemonitoring为需要进行监测的最长时间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510544361.7A CN105183688B (zh) | 2015-08-28 | 2015-08-28 | 一种基于串口网络的io数字量监测端口扩展方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510544361.7A CN105183688B (zh) | 2015-08-28 | 2015-08-28 | 一种基于串口网络的io数字量监测端口扩展方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105183688A CN105183688A (zh) | 2015-12-23 |
CN105183688B true CN105183688B (zh) | 2018-10-09 |
Family
ID=54905778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510544361.7A Active CN105183688B (zh) | 2015-08-28 | 2015-08-28 | 一种基于串口网络的io数字量监测端口扩展方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105183688B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105956267B (zh) * | 2016-04-29 | 2019-04-09 | 北京航天自动控制研究所 | 一种基于设备建模语言的嵌入式仿真串口及建模方法 |
CN107102921B (zh) * | 2017-03-23 | 2020-05-12 | 北京航天自动控制研究所 | 一种面向带I/O型数字量异步端口SoC的数字量监测方法 |
CN111651951A (zh) * | 2020-06-04 | 2020-09-11 | 思尔芯(上海)信息科技有限公司 | 一种fpga端口扩展的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201465195U (zh) * | 2009-09-07 | 2010-05-12 | 哈尔滨工程大学科技园发展有限公司 | 基于can总线的数据采集系统 |
CN102521182A (zh) * | 2011-11-23 | 2012-06-27 | 华南师范大学 | 一种可扩展多通道并行实时数据采集装置和方法 |
CN103399837A (zh) * | 2013-08-13 | 2013-11-20 | 杭州威力克通信系统有限公司 | 应用于主从设备的通信装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101465195B (zh) * | 2007-12-19 | 2010-12-08 | 中国北车集团大同电力机车有限责任公司 | 动力分散、动力集中型变压器油箱的制造方法 |
-
2015
- 2015-08-28 CN CN201510544361.7A patent/CN105183688B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201465195U (zh) * | 2009-09-07 | 2010-05-12 | 哈尔滨工程大学科技园发展有限公司 | 基于can总线的数据采集系统 |
CN102521182A (zh) * | 2011-11-23 | 2012-06-27 | 华南师范大学 | 一种可扩展多通道并行实时数据采集装置和方法 |
CN103399837A (zh) * | 2013-08-13 | 2013-11-20 | 杭州威力克通信系统有限公司 | 应用于主从设备的通信装置 |
Non-Patent Citations (1)
Title |
---|
嵌入式数控系统中基于FPGA模块的接口扩展;邵明等;《机电技术》;20110630(第3期);第9-11页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105183688A (zh) | 2015-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102904766B (zh) | 串行通信波特率识别方法、装置及监控设备 | |
CN105183688B (zh) | 一种基于串口网络的io数字量监测端口扩展方法 | |
CN103645794B (zh) | 一种通过边沿检测电路实现睡眠模式唤醒的芯片及方法 | |
CN101359029B (zh) | 单总线直流接地故障在线自动监测装置 | |
CN101957615B (zh) | 服装生产线节奏控制系统 | |
CN103217937A (zh) | 一种配电站房监控系统 | |
CN107390090A (zh) | 一种线路故障检测方法及系统 | |
CN106959934A (zh) | 低电压差分信号接收接口及低电压差分信号接收方法 | |
CN107133041A (zh) | 数据通知方法及装置 | |
CN108810136A (zh) | 一种基于NB-IoT和LoRa的通信方法及通信设备 | |
CN101296070B (zh) | 一种多端口同步以太网设备的时钟同步方法及系统 | |
CN104869587B (zh) | 无线传感器网络时间同步误差测定方法 | |
CN104850417B (zh) | 一种信息处理的方法及电子设备 | |
CN102866873A (zh) | 一种带计算机的座位的状态检测方法 | |
CN204068425U (zh) | 变电站智能远动机 | |
CN110597749B (zh) | 串口切换方法及装置 | |
CN204859190U (zh) | 智能电网时间同步监测系统 | |
CN104656604B (zh) | 一种利用modbus通信协议实现人机交互的电网安全稳定控制装置及其方法 | |
CN205142532U (zh) | 一种采用无线通信对分散节点对时同步的系统 | |
CN103983864A (zh) | 用于图形卡测试的设备 | |
CN104865717A (zh) | Mipi模组点屏测试中自适应错误处理方法 | |
CN104637173A (zh) | 基于无线网络的水表管理系统 | |
CN216649322U (zh) | 基于zigbee的智能配电监测系统 | |
CN205899596U (zh) | 楼宇工作人员的管理系统 | |
CN205450869U (zh) | 一种多模组之间时钟同步电路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |