DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 165|回复: 0
打印 上一主题 下一主题

应用LPC2131开发PLC调速器测频单元

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-18 00:47:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
摘?? 要: 针对PLC调速器频率测量部分存在的不足,开发出一种基于LPC2131微控制器的频率测量单元。利用其捕获功能模块对整形后频率信号捕获、计算得到信号周期计数值,再将该周期计数值通过UART通信口发送至PLC,在PLC中完成信号频率值计算。测试结果表明,由于采用信号上升沿及下降沿同时捕获以及高速串行通信,不但提高了频率信号的响应速度,而且很好地解决了并行通信存在的数据传输不同步的问题。关键词: PLC调速器; 测频单元; LPC2131; 串行通信??? 在水轮机调速器中,机组频率的测量直接关系到调速器整机性能的优劣,而调速器的品质与性能直接影响到电能的品质和水电站的安全可靠运行, 故机组频率的测量是一个非常关键的技术[1]。目前,基于PLC调速器的测频方法主要有单片机测频和PLC本体高速计数模块测频2种方式[2]。PLC

?? ?取自发电机端电压互感器和电网电压互感器的测频输入信号,经削波、滤波处理后,变成幅度基本不变的稳定波形,再经施密特电路放大整形,得到正负幅值基本相等、占空比约为50%的方波[4];然后,通过光电耦合器将输出的机组频率和电网频率方波信号隔离后分别送入LPC2131微控制器CAP1.3功能捕获引脚P0.18和CAP1.2功能捕获引脚P0.19。CAP1.3和CAP1.2捕获功能设置为上升沿与下降沿同时捕获,即这2个功能引脚上的值由0到1跳变和由1到0跳变都会将当时计数器值输入相应的捕获寄存器中,同时产生中断。对任一路管脚捕获,取出2个相间隔的捕获寄存器值相减,令其差值为N,在计数器频率(时钟频率,令其为Fpclk)已知情况下,可得出2个相间隔捕获点对应时间值,即频率信号周期值:???

  根据频率与周期公式f=1/T可求出信号的频率值。对得到的机组频率和电网频率计数器差值采用去极大极小值进行简单的判断滤波后,采用自由口通信协议通过串口UART0将其发送至PLC,在PLC控制器内完成机组和电网频率值计算。2 测频硬件与软件2.1 LPC2131微控制器  LPC2131是PHILIPS公司基于ARM7TDMI-S核、单电源供电及LQFP64封装的微控制器,是基于一个支持实时仿真和跟踪的16/32位ARM7TDMI-S型CPU的微控制器。LPC2131拥有2个符合’550工业标准的异步串行口UART0和UART1,具有以下特性:16字节收发FIFO;寄存器位置符合16C550工业标准;收发器触发点可为1、4、8和14字节;内置波特率发生器;包含使能软件流控制器。LPC2131还带有2个32位可编程定时/计数器,均具有4路捕获和4路比较匹配与输出电路。定时器对外设时钟(pclk)周期进行计数,可选择产生中断或根据4个匹配寄存器的设定,在达到指定的定时值设定时执行其他动作。它的4个捕获输入,用于在输入信号发生跳变时捕获定时器的瞬时值,并可选择使捕获事件产生中断[5]。
                          
                       
                          
                                2.2 LPC2131微控制器定时器模块  LPC2131微控制器定时器方框图如图2所示。定时器控制寄存器TCR用来使能或者复位计数器操作;预分频寄存器PR用来分频时钟计数频率;VPB时钟频率Fpclk为计数提供时钟频率;预分频计数器PC是当TCR使能后,在每个pclk周期加1,当其达到预分频寄存器PR中保存的值时,定时器计数器TC值加1,预分频计数器在下一个周期复位;当预分频计数器达到上限时,定时器计数器TC值加1,当达到计数上限0xFFFFFFFF后将翻转到0x00000000;捕获寄存器与1个对应的器件引脚相关联,当引脚发生特定事件时,可将定时器计数的值装入该寄存器;捕获控制寄存器CCR用于当捕获事件发生时,确定是否装入4个捕获寄存器中的1个,以及是否产生中断。

??? 本文选用定时器1作为两路脉冲输入捕获计数器,利用它的两路脉冲捕获功能CAP1.2和CAP1.3捕获经整形后机组频率和电网频率的上升沿和下降沿信号,以CAP1.2为例,如图3所示。通过CAP1.2捕获功能,可以将每次上升沿和下降沿到来时对应的计数器值装载到T1CR2寄存器中,将连续3次捕获时计数器值依次保存到CAPJ 0、CAPJ 1和CAPJ 2 3个定义存储单元中,储存单元对应值为CAPJ 0、CAPJ 1和CAPJ 2,每完成1次T1CR2装载即可求得1次相邻上升沿或下降沿计数器差值TJ=CAPJ 0-CAPJ 2。本文设定计数时钟不分频,根据测周法原理,机组频率值Fg为:???



式中, Fpclk为VPB时钟频率,在不分频情况下为11.059 2 MHz。设机组频率为Fg=50 Hz,则周期Tg=0.02 s,测得的周期数Ng=0.02×11 059 200=221 184,测频系统的理论分辨率为0.002 6 Hz,由此可见,此方法具有很高的分辨率。2.3 测频软件流程  系统软件由1个主程序和2个中断子程序组成,如图4所示。CAPJ0、CAPJ1和CAPJ2依次保存连续3个机组频率信号捕获对应的寄存器值T1CR2,CAPX0、CAPX1和CAPX2依次保存连续3个电网频率信号捕获时对应寄存器值T1CR3,TJ和TX分别表示机组频率和电网频率在1个周期内计数器计数差值。

  在系统软件中,主程序完成各种设定功能初始化。捕获中断子程序完成对整形后的机组频率和电网频率信号捕获,计算出信号在1个周期内对应的计数器计数值,并对其进行简单判断和滤波处理。在信号捕获中采用同时捕获上升沿和下降沿,计算计数器差值时上升沿和下降沿分开计算的方法,使得每半个周期就可获得1次频率值,相对1个周期或几个周期才能求得1次频率值的计算策略,它能够更快反映机组频率的波动情况,提高了调速器频率响应性,缩短了调速器不运转的时间。  在数据发送程序中,将1个周期内计数器差值通过UART0口采用串口通信方式发送到PLC控制器中,在PLC中完成信号频率值计算。此处采用发送频率信号计数器差值而不是计算后频率值或周期值,一方面是整数比小数传送方便,通信更加简单;另一方面是频率值或周期值具有多位小数,传送时将丢失精度,不能保证频率值的原始性。频率值在PLC中计算完成后直接使用进行调速器控制PID计算,将使调速器控制过程更加精确。在数据发送程序中,完成喂狗操作,防止程序“跑飞”,同时对机组频率和电网频率信号是否消失进行判断,增加控制过程可靠性。
                          
                       
                          
                                2.4 容错处理  在频率测量中由于干扰影响,将造成频率测量值误差,如何滤除误差保证控制的准确性在频率测量过程中也是一个重要环节。本文采用的是去极大极小值滤波法,即对连续三个频率值,取中间值为正确值,去掉最大和最小值,大于100 Hz的频率值作为错误值直接舍去,小于1 Hz的频率值作为频率信号消失处理。容错处理流程图如5所示,此处只以机组频率为例进行分析,电网频率与此相同。

3 与PLC通信  与PLC传递数据通信中,使用定时器0进行20 ms定时发送,PLC通过接收模块接收数据。如图2所示,匹配控制寄存器MCR用于设定当发生匹配控制寄存器值与定时器计数值匹配时所执行的操作(产生中断、复位定时器计数器或停止定时器);匹配控制寄存器值连续与定时器计数值相比较,当两值相等时自动触发相应动作;使用定时器0通过匹配控制器,就可完成20 ms的定时中断。在与PLC的通信中,采用自由口通信协议的串行口通信[6],改变了以往并口I/O传送模式,简化了通信的复杂度,提高了准确率。  在频率测量中,储存器可存储最大计数器值为0xFFFFFFFF,在理论上可测得的频率最小值为0.002 7 Hz,根据实际情况设定频率的测量范围为1"100 Hz,对应的周期计数值范围为0xABC000~0x1B000,如果周期计数值大于0xABC000,即频率小于1 Hz时作为频率信号消失处理;如果周期计数值小于0x1B000,即频率大于100 Hz时作为频率信号干扰处理。在与PLC通信中,PLC接收模块为字节接收,故每次最多传送1个字节,对周期计数值完成一次传送需要用3个字节分开发送;为了保证传送准确性,需要在每1次传送的信息上增加起始字符和结束字符进行信息接收启动和信息接收结束判断,起始字符和结束字符为规定的某个唯一的标志字符,此处选用0x53和0x4F。为避免传送周期计数值某个字节与开始或结束判断字符相同导致传送错误,每次传送的数据只能占用4位即1个字节的后4位,这样才能保证其值始终不大于0x0F。根据上面分析,则每传送1个周期计数值就需要分6次按6个字节传送,机组周期计数值、电网周期计数值和开始、结束字符完成1次传送总共需要14个字节。传送波特率设定为115 200 b/s,则每完成1次传送需要的时间t=14×8÷115 200=0.972 ms。由此可知数据传输延迟时间极短,完全可以弥补外设测量模块与内部测量模块对数据采集及时性的差异,达到测量的数据即为通信方式测量频率,基本不影响PLC控制操作,同时其传递准确性得到充分保障。  LPC2131微控制器拥有16 B的FIFO(保持寄存器),在发送过程中,只需将所要发送字节保存到FIFO中即可,发送模块自动完成发送操作,使得数据的发送和接收变得简单,与51系列单片机相比也是一个很大的改进。4 性能分析  该测频装置的主要技术指标为:(1)理论上可测量最低频率Fmin=0.002 7 Hz(规定为1 Hz);(2)最高可测量频率规定为Fmax=100 Hz;(3)测量分辨率为0.002 26 Hz;(4)得到频率值的时间为 0.5T(信号周期); (5)信号传输时间为0.97 ms;(6)信号整形电路最低动作电压0.2 V,最高允许输入电压150 V。???? 基于ARM处理器的LPC2131可编程调速器测频单元弥补了51系列单片机作为测频单元与PLC配合使用中的不足,测频单元编程系统简单、频率信号响应速度快、数据传输方便、传输时间短,测频系统可靠性高、抗干扰能力强。对此调速器测频单元进行了测试,从运行情况,该测频单元具有很好的稳定性与准确性,非常适合于中小型调速器。
                          
                       
                          
                               
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-9-27 22:49 , 耗时 0.094139 秒, 19 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表