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

发布者:yunhui最新更新时间:2011-07-22 关键字:PLC调速器  测频单元  LPC2131  串行通信 手机看文章 扫描二维码
随时随地手机看文章

    在水轮机调速器中,机组频率的测量直接关系到调速器整机性能的优劣,而调速器的品质与性能直接影响到电能的品质和水电站的安全可靠运行, 故机组频率的测量是一个非常关键的技术[1]。目前,基于PLC调速器的测频方法主要有单片机测频和PLC本体高速计数模块测频2种方式。

基于ARM处理器的LPC2131可编程调速器频率测量总体框图


    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个捕获输入,用于在输入信号发生跳变时捕获定时器的瞬时值,并可选择使捕获事件产生中断。[page]

2.2 LPC2131微控制器定时器模块
  LPC2131微控制器定时器方框图如图2所示。定时器控制寄存器TCR用来使能或者复位计数器操作;预分频寄存器PR用来分频时钟计数频率;VPB时钟频率Fpclk为计数提供时钟频率;预分频计数器PC是当TCR使能后,在每个pclk周期加1,当其达到预分频寄存器PR中保存的值时,定时器计数器TC值加1,预分频计数器在下一个周期复位;当预分频计数器达到上限时,定时器计数器TC值加1,当达到计数上限0xFFFFFFFF后将翻转到0x00000000;捕获寄存器与1个对应的器件引脚相关联,当引脚发生特定事件时,可将定时器计数的值装入该寄存器;捕获控制寄存器CCR用于当捕获事件发生时,确定是否装入4个捕获寄存器中的1个,以及是否产生中断。

LPC2131微控制器定时器

    本文选用定时器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计算,将使调速器控制过程更加精确。在数据发送程序中,完成喂狗操作,防止程序“跑飞”,同时对机组频率和电网频率信号是否消失进行判断,增加控制过程可靠性。[page]

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配合使用中的不足,测频单元编程系统简单、频率信号响应速度快、数据传输方便、传输时间短,测频系统可靠性高、抗干扰能力强。对此调速器测频单元进行了测试,从运行情况,该测频单元具有很好的稳定性与准确性,非常适合于中小型调速器。

 

关键字:PLC调速器  测频单元  LPC2131  串行通信 引用地址:应用LPC2131开发PLC调速器测频单元

上一篇:基于FPGA的RS485接口误码测试仪的设计和实现
下一篇:基于E-Link数据传输器的应用技术探讨

推荐阅读最新更新时间:2024-03-30 22:16

RS485/RS232转换器实现PC机和单片机之间的串行通信
1、RS485串行通信接口电路的总体设计   在电参数仪的设计中,数据采集由单片机AT89C52负责,上位PC机主要负责通信(包括与单片机之间的串行通信和数据的远程通信),以及数据处理等工作。在工作中,单片机需要定时向上位PC机传送大批量的采样数据。通常,主控PC机和由单片机构成的现场数据采集系统相距较远,近则几十米,远则上百米,并且数据传输通道环境比较恶劣,经常有大容量的电器(如电动机,电焊机等)启动或切断。为了保证下位机的数据能高速及时、安全地传送至上位PC 机,单片机和PC机之间采用RS485协议的串行通信方式较为合理。   实际应用中,由于大多数普通PC机只有常用的RS232串行通信口,而不具备RS485通信接口。
[单片机]
RS485/RS232转换器实现PC机和单片机之间的<font color='red'>串行通信</font>
教你设计工业以太网监控系统电路
随着工业以太网的应用,大家对工业以太网也越来越了解。为进一步增进大家对工业以太网的认识,本文将基于两方面介绍工业以太网相关内容:1. 如何设计高性能嵌入式工业以太网监控系统电路,2. 嵌入式工业以太网应用介绍。如果你对工业以太网具有兴趣,不妨继续往下阅读哦。 一、工业以太网监控系统电路设计 现场智能监控装置是构建控制网络的基础和关键,采用高端嵌入式技术实现以太网现场智能装置开发是其重要发展趋势。本文提出基于嵌入式工业以太网技术的监控系统,详细阐述了嵌入式工业以太网监控装置的硬件和软件的设计过程,包括 32 位微处理器系统的实现、以太网接口单元模块的实现、uCLinux 嵌入式操作系统分析和移植,uCLinux 下驱动程序的分析
[嵌入式]
教你设计工业以太网监控系统电路
PLC串行通信在测控装置中的实现
HG-2003型温升测控装置是笔者与我国北京某科学研究联联合开发的一套专门用于高压晶闸管阀温升检测试验的测控装置。 考虑到PLC及其网络已被公认为现代测控装置开发的几大支柱之一,而且从近几年的统计数字来看,PLC产品在世界范围内的产量、销量高居各测控器件榜首,因此笔者决定本测控系统的核心器件采用可编程控制器(PLC),其基本功能可通过软件编程实现。 PLC的三大亮点是: (1)集电控、电传、电仪三电于一体; (2)网络的性能价格比高; (3)可靠性高。 这些亮点就使得整个测控设备结构简单、可靠性高,同时也为实现系统控制功能的二次开发奠定了良好的技术基础。本文主要讨论设备中所采用的西门子公司的S7-200型P
[嵌入式]
SPI接口基础上的各种串行通信工作方式配置及驱动编程
  引言   51系列单片机资源有限,当开发者面对比较复杂的控制任务时,51单片机就力不从心了。在这种情况下,用户可以选用比较高档的单片机机型,比如ARM系列32位单片机等来完成目标控制的任务。还有一种选择方案,就是采用51单片机多机系统方案,用分散控制的方法来实现最终的复杂目标控制任务。   在多机系统的实现过程中,首先要解决的就是多机之间的相互通信连接问题,以保证数据在单片机之间的高效、可靠的传递。MCU之间的通信功能是多机系统实现的基础,也是多机系统可靠运行的关键。   1 SPI接口的特点   SPI接口最大可以提供1 Mb的串行数据传输能力。理论上,比传统的串行通信接口RS232通信速率高得多,因此它非常
[单片机]
SPI接口基础上的各种<font color='red'>串行通信</font>工作方式配置及驱动编程
单片机串行通信波特率的自适应实现方法
  在串行异步通信中,目前实现波特率自动检测并适应的设计思想有多种,可是他们或者需要额外的硬件支持,或者实现时方法繁杂且软件开销大。文章介绍了一种简单可靠的用软件实现波特率自动适应的方法,并给出了仿真调试电路原理图,给出了同步程序的详细框图。该方法提高了波特率解调的便捷性和兼容性。 1 仿真电路   SST89C54/58单片机是MCS-51系列单片机的派生产品,他们在指令系统、硬件结构和片内资源上与标准8052单片机完全兼容。实际上 SST公司的SST89C54/58是一款使用非常方便51系列单片机,如不考虑其看门狗定时器和内部Flash程序存储器,可以将其看成是一个可在线编程的标准8052单片机。图1为实现串行通信仿真调试硬
[单片机]
单片机<font color='red'>串行通信</font>波特率的自适应实现方法
AVR单片机—(五)、ATMEGA16的USART与PC机串行通信—03
五、ATMEGA16的USART与PC机串行通信 五—(03)、PC机发送控制指令控制单片机工作~(这个控制还是比较简单的~~ ,不过个人认为还是有水平的~) 还是先上图片~~,然后程序,程序师模块化的,我尽量贴全点~~ 然后就是程序了 IAR5_2.c //------------------------------------------------------------------------------ //控制指令的定义(个人感觉这个才是真正应用呢~~给力~) //上位机界面中,用户需要输入控制下位机的指令 //由于传送的数据比较简单,因此控制指令也可定义的相对简单一些((*^__^*) 嘻嘻……,那本书上
[单片机]
AVR单片机—(五)、ATMEGA16的USART与PC机<font color='red'>串行通信</font>—03
AVR开发 Arduino方法(四) 串行通信子系统
  Arduino UNO R3主处理器ATMega328P的串行通信子系统可以用于与计算机、外设或其他微控制器进行通信,它支持3种串行通信方式:通用同步/异步收发器,串行外设接口和两线串行接口。 1. 通用同步/异步收发器   在串行通信中,波特率用来衡量传输速率的快慢,同步和异步的对象是波特率的时钟信号;同步通信的设备之间需要一条额外的时钟线,也因此同步方式可以提供更高的波特率;这里将以异步为例。   下面的示例可以使通过串口发送给Arduino的数据回显到串口监视器上: 1 // SerialEcho.ino 2 char data; 3 4 void setup() { 5 Serial.begin(9600
[单片机]
AVR开发 Arduino方法(四) <font color='red'>串行通信</font>子系统
计算机串行通信的环路实现方案
    对于用户要求接口具有远距离( 1km)高速度(最高19200bps)通信能力,及工业现场的强抗干扰能力和噪声抑制能力,对于普通的RS232接口,采用点对点单线共地连接(Singleended),电平驱动方式,最大通信距离为15.25m,显然不能满足要求。因此考虑20mA电流环路驱动方式。电流环路与电平方式相比具有以一优点:     电平方式 20mA电流环方式     信号易衰减 信号不易衰减     易受干扰 抗干扰能力强     远距离,离频率 适合远距离高     传输性能低下 速通信     在本设计中,选用Motorola公司的光电耦合器TIL117进行信号变换和光电隔离。这样
[工业控制]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved