一种输入输出模块的分时扫描方法

文档序号:6320356阅读:131来源:国知局
专利名称:一种输入输出模块的分时扫描方法
技术领域
本发明属DCS (分散控制系统)技术领域,具体涉及一种应用于大型分散控制系统 中央处理器的输入输出模块分时扫描方法。
背景技术
现场控制系统、数据采集与通讯系统、设备监控系统和人机接口单元在各个行业 中得到了广泛的应用。在DCS (分散控制系统)的应用中,系统的中央处理器控制运算芯片往往会用到输 入输出模块,进行I/O数据处理。普通的应用中,系统在一个控制周期内只采集一次输入输 出数据,输入和输出扫描是放在一起的,这样就导致采集进来的输入信号经过运算后得到 的输出数据信号,要到下一个控制周期处理输入输出数据的时候才能输出,数据输出的一 个周期延时,降低了系统采集和处理的实时性。如SUPMAX800大型分散控制系统,中央处理器由两块处理芯片组成,一块是控制 运算芯片,另外一块是I/O处理芯片,这两块芯片之间是通过一块扩展的RAM进行数据交换 (见图1中央处理器结构)。控制运算芯片主要进行数据处理,I/O处理芯片只负责I/O数 据采集输出。两者之间的数据交互是通过扩展的RAM来进行的,输入数据反映到输出数据 要晚一个周期。输入输出模块同I/O进行交互的时候输出的是上个周期处理好的数据。一 个周期时间延时,在工程现场应用中,对输入一输出时间要求比较高的工况,比如火电应用 领域的DEH(数字液电控制)系统的OPC(超速控制)工况,要求从采集PI (转速脉冲输入) 信号,经运算到模拟量输出AO信号在在50ms内,并且越快速越好。控制运算周期经过两个 周期就无法满足这一要求。

发明内容
本发明要解决的技术问题是提供一种输入输出模块的分时扫描方法,避免周期 性输入输出扫描处理造成的实时信号处理时间上的延误,提高了系统采集和处理的实时 性。为达到上述目的,采用的技术方案是一种输入输出模块的分时扫描方法,包括控 制运算芯片、I/O处理芯片和扩展RAM接口,其特征在于1)控制运算芯片中每个周期运行一次的输入输出模块,分成两个模块,一个为输 入模块,另外一个是输出模块,进行分时扫描,控制运算芯片通过输入模块从扩展RAM中取 出输入数据,运行运算处理模块,再通过输出模块将输出数据放入扩展RAM中,保证了在一 个运算控制周期内完成一个从输入一处理一输出的完整过程;2) I/O处理芯片将输入输出模块分成一个输入模块和一个输出模块,输入模块用 于采集输入信号,输出模块用于输出信号;3)控制运算芯片和I/O处理芯片之间的交互实现分时扫描控制运算芯片和I/O 处理芯片之间硬件上用扩展RAM进行数据交互的,只有一侧芯片可以取到RAM的硬件信号量,在软件上使用了 RAM的硬件信号量来协调两侧芯片对扩展RAM的操作,控制运算芯片和 I/O处理芯片在数据处理时序交互使用了两个软件标志位来实现。所述控制运算芯片和I/O处理芯片之间的交互是指(1)1/0处理芯片处理输入模块,取到硬件信号量后,从软件标志位判断控制运算 芯片是否已处理好上个周期的一个运算控制周期,即是否已经将输出数据放入RAM,如果已 经放好,则处理输入信号,并且将取到的输入数据放入RAM中,置相应的软件标志位,释放 硬件信号量,完成I/O处理芯片的输入模块处理;(2)控制运算芯片处理输入模块,取到硬件信号量后,判断软件标志位I/O处理模 块是否将输入数据采集好并且放入RAM,如果已放好,则从RAM取输入数据,置软件标志位 取走数据,并且释放硬件信号量,完成控制运算芯片输入模块处理;(3) I/O处理芯片处理输出模块,在完成输入模块的处理后就开始继续输出模块的 处理,这是和控制运算芯片处理输入模块和处理运算模块同时进行的,这个模块从RAM中 取输出数据,然后进行输出信号处理,置软件标志位取走数据,完成I/O处理芯片的输出模 块处理;(4)控制运算芯片处理输出模块,控制运算芯片在处理运算模块处理后,得到了输 出的数据,在取到了硬件信号量后,芯片判断I/O处理芯片是否已经将输出数据取走并且 输出,如果是,则把刚算好的输出数据放入RAM中,置软件标志位放入数据,完成控制运算 芯片输出模块处理;在控制运算芯片处理完输出模块后,紧接步骤(1)和(3) I/O处理芯片的输入输出 模块处理,完成一个新的循环周期。本发明的积极效果是消除了控制运算芯片的输入输出模块中输入数据到输出数 据一个周期的延迟时间,使系统的输入输出处理速度显著提高,达到了特殊工况的时间性 能要求。


下面结合附图与具体实施方法对本发明作进一步描述。图1是中央处理器结构框图;图2是现有技术与本发明控制运算芯片流程示意图比较;图3是现有技术与本发明I/O处理芯片流程示意图比较;图4是控制运算芯片和I/O处理芯片数据处理流程和交互框图;图5是本发明性能测试实验最佳情况;图6是本发明性能测试实验最差情况。
具体实施例方式图1是中央处理器结构框图,图2是一个运算控制周期现有技术与本发明控制运 算芯片流程示意图比较,图3是一个扫描处理周期中现有技术与本发明I/O处理芯片流程 示意图比较,由图1 3可见,一种输入输出模块的分时扫描方法,其特征在于一种输入输 出模块的分时扫描方法,包括控制运算芯片、I/O处理芯片和扩展RAM接口,其特征在于1)控制运算芯片中每个周期运行一次的输入输出模块C0M7007,分成两个模块,一个为输入模块C0M7007READ,另外一个是输出模块C0M7007WRITE,进行分时扫描,控制运 算芯片通过输入模块从扩展RAM中取出输入数据,运行运算处理模块,再通过输出模块将 输出数据放入扩展RAM中,保证了在一个运算控制周期内完成一个从输入一处理一输出的 完整过程;2) I/O处理芯片将输入输出模块COMIO分成一个输入模块C0MI0READ和一个输出 模块C0MI0WRITE,输入模块用于采集输入信号,输出模块用于输出信号;3)控制运算芯片和I/O处理芯片之间的交互实现分时扫描控制运算芯片和I/O 处理芯片之间硬件上是用扩展RAM进行数据交互的,只有一侧芯片可以取到RAM的硬件信 号量,在软件上使用了 RAM的硬件信号量来协调两侧芯片对扩展RAM的操作,控制运算芯片 和I/O处理芯片在数据处理时序交互使用了两个软件标志位来实现。由图4可见所述控制运算芯片和I/O处理芯片之间的交互是指(1) I/O处理芯片处理输入模块,取到硬件信号量后,从软件标志位判断控制运算 芯片是否已处理好上个周期的一个运算控制周期,即是否已经将输出数据放入RAM,如果已 经放好,则处理输入信号,并且将取到的输入数据放入RAM中,置相应的软件标志位,释放 硬件信号量,完成I/O处理芯片的输入模块处理;(2)控制运算芯片处理输入模块,取到硬件信号量后,判断软件标志位I/O处理模 块是否将输入数据采集好并且放入RAM,如果已放好,则从RAM取输入数据,置软件标志位 取走数据,并且释放硬件信号量,完成控制运算芯片输入模块处理;(3) I/O处理芯片处理输出模块,在完成输入模块的处理后就开始继续输出模块的 处理,这是和控制运算芯片处理输入模块和处理运算模块同时进行的,这个模块从RAM中 取输出数据,然后进行输出信号处理,置软件标志位取走数据,完成I/O处理芯片的输出模 块处理;(4)控制运算芯片处理输出模块,控制运算芯片在处理运算模块处理后,得到了输 出的数据,在取到了硬件信号量后,芯片判断I/O处理芯片是否已经将输出数据取走并且 输出,如果是,则把刚算好的输出数据放入RAM中,置软件标志位放入数据,完成控制运算 芯片输出模块处理;经过以上四个步骤,就完成了一个周期的分时扫描处理,详细流程见图4。在控制 运算芯片处理完输出模块后,紧接步骤(1)和(3) I/O处理芯片的输入输出模块处理,完成 一个新的循环周期。实验验证对分时扫描输入输出模块的性能进行测试,同原来的模块性能做对比。实验中运 用了 DEH(数字液电控制)系统的OPC(超速控制)控制方案和逻辑来进行性能改进的验 证。实验系统中通过PI (转速脉冲)卡对信号进行采集,通过数据通讯传输到中央控制器, 然后中央控制器进行OPC (超速控制)的逻辑运算后,将需要控制的模拟量输出信号发送到 AO (模拟量输出)卡上。我们检测从PI转速脉冲信号发生从3000转速提高到3090转速的 变化后,到AO模拟量输出改变需要的时间,即为系统处理输入一运算一输出的整个时间。图5和图6分别表示出了本发明系统性能测试实验的理论最佳情况和最差情况。设中央处理器的运算控制周期为10ms,PI信号的采集需要IOms的时间,AO的 PWM(脉冲宽度调制)输出变化也需要IOms的周期。
图5所示为,如果当PI信号刚巧在IOms结束的时候被PI卡的数据采集芯片采 集,发送给I/O处理芯片,并且I/O处理芯片取到信号后刚巧控制运算芯片取数据,并处理 完发送给输出卡,则AO输出卡经过IOms的PWM(脉冲宽度调制)输出就可以完成整个数据 变化,这个时间为最佳时间20ms。图6可见,如果当PI信号刚巧在IOms结束的时候错过PI卡件的数据采集芯片的 一次扫描,则要晚2. 5ms被采集到,然后刚巧又错过I/O处理芯片的一次扫描,则又晚了一 个周期10ms,I/0处理芯片取数据刚好错过了控制运算芯片的数据交互,则又晚了 10ms,最 后到AO卡的PWM输出的整个时间为最差时间42. 5ms。实际得到的测试结果都是介于最佳情况和最差情况之间的数据。与理论值完全一 致。满足了 DEH(数字液电控制)控制中要求快速扫描信号并且输出控制信号的要求。由实验结果可知,分时扫描输入输出模块可以将以往输入输出模块中由输入数据 采集到输出信号输出的一个周期的延迟消除,大大的提高了系统的I/O处理性能。
权利要求
1.一种输入输出模块的分时扫描方法,包括控制运算芯片、I/O处理芯片和扩展RAM接 口,其特征在于1)控制运算芯片中每个周期运行一次的输入输出模块,分成两个模块,一个为输入模 块,另外一个是输出模块,进行分时扫描,控制运算芯片通过输入模块从扩展RAM中取出输 入数据,运行运算处理模块,再通过输出模块将输出数据放入扩展RAM中,保证了在一个运 算控制周期内完成一个从输入一处理一输出的完整过程;2)I/O处理芯片将输入输出模块分成一个输入模块和一个输出模块,输入模块用于采 集输入信号,输出模块用于输出信号;3)控制运算芯片和I/O处理芯片之间的交互实现分时扫描控制运算芯片和I/O处理 芯片之间硬件上是用扩展RAM进行数据交互的,只有一侧芯片可以取到RAM的硬件信号量, 在软件上使用了 RAM的硬件信号量来协调两侧芯片对扩展RAM的操作,控制运算芯片和I/ 0处理芯片在数据处理时序交互使用了两个软件标志位来实现。
2.根据权利要求1所述一种输入输出模块的分时扫描方法,其特征在于所述控制运 算芯片和I/O处理芯片之间的交互是指(1)I/O处理芯片处理输入模块,取到硬件信号量后,从软件标志位判断控制运算芯片 是否已处理好上个周期的一个运算控制周期,即是否已经将输出数据放入RAM,如果已经放 好,则处理输入信号,并且将取到的输入数据放入RAM中,置相应的软件标志位,释放硬件 信号量,完成I/O处理芯片的输入模块处理;(2)控制运算芯片处理输入模块,取到硬件信号量后,判断软件标志位I/O处理模块是 否将输入数据采集好并且放入RAM,如果已放好,则从RAM取输入数据,置软件标志位取走 数据,并且释放硬件信号量,完成控制运算芯片输入模块处理;(3)I/O处理芯片处理输出模块,在完成输入模块的处理后就开始继续输出模块的处 理,这是和控制运算芯片处理输入模块和处理运算模块同时进行的,这个模块从RAM中取 输出数据,然后进行输出信号处理,置软件标志位取走数据,完成I/O处理芯片的输出模块 处理;(4)控制运算芯片处理输出模块,控制运算芯片在处理运算模块处理后,得到了输出的 数据,在取到了硬件信号量后,芯片判断I/O处理芯片是否已经将输出数据取走并且输出, 如果是,则把刚算好的输出数据放入RAM中,置软件标志位放入数据,完成控制运算芯片输 出模块处理;在控制运算芯片处理完输出模块后,紧接步骤(1)和(3) I/O处理芯片的输入输出模块 处理,完成一个新的循环周期。
全文摘要
一种输入输出模块的分时扫描方法,包括控制运算芯片、I/O处理芯片和扩展RAM接口,其特征在于控制运算芯片中每个周期运行一次的输入输出模块,分成输入模块和输出模块;进行分时扫描,保证在一个运算周期内完成从输入→处理→输出整个过程;I/O处理芯片将输入输出模块分成输入模块和输出模块,输入模块用于采集输入信号,输出模块用于输出信号;通过控制运算芯片和I/O处理芯片之间的交互实现分时扫描。本发明的积极效果是消除了控制运算芯片中输入输出模块从输入数据反应到输出数据的一个周期的延迟时间,使系统的输入输出处理速度显著提高,提高了系统采集和处理的实时性。
文档编号G05B19/418GK102087520SQ20091020011
公开日2011年6月8日 申请日期2009年12月8日 优先权日2009年12月8日
发明者朱强 申请人:上海自动化仪表股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1