基于C8051F020的配电变压器监测终端设计
发布时间:2008/6/3 0:00:00 访问次数:811
关键词:c8051f020;配电变压器监测终端
引言
配电变压器是将电能直接分配给低压用户的电力设备,其运行数据是整个配电网基础数据的重要组成部分。本文设计了一种集多功能电表、无功投切控制器、采集器等功能于一体的新型配电变压器监测终端。
硬件设计
根据配电变压器终端产品所需实现的功能要求,以单片机c8051f020为核心的硬件结构如图1所示。
c8051f020简介
由于配电变压器监测终端需实现的功能较多,经反复比较,cpu选用c8051f020芯片。该芯片内置有64k flash、4k ram、1个smbus/i2c、1个spi、2个uart、5个定时器、64个通用i/o口、12位的adc通道、电压基准(内部、外部)、温度传感器等。并具有以下特点:高速的50mips与8051 全兼容的微控制器内核。flash 存储器可实现在线编程和用于非易失性数据存储(e2prom 的作用),工作电压典型值为3v( 2.7v~3.3v),全部i/o、rst、jtag 引脚均允许5v电压输入,工业级温度范围(-45 ~ +85)。片内jtag 仿真电路提供全速非插入式(不使用在片资源)的电路内仿真支持断点、单步观察点、运行和停止等调试命令,支持存储器和寄存器校验和修改。
监控电路
选用max706作为微处理器监控器,主要实现上电复位、监控程序运行和掉电检测功能。电路如图2所示。
max706可独立监视跟踪定时器输出。在1.6s内,如果cpu的p2.3脚电平不翻转,则/wdo脚输出低电平,通过/mr手动复位输入端使/rst脚产生复位信号,以防止由于干扰使cpu死机。设跳线器的目的是为了避免在下载程序和调试时max706产生复位信号。
vpp为电源的掉电检测信号,当电平降至5.5v以下时,/pfo输出低电平,使cpu进入中断程序进行掉电处理。cpu的p1.5脚被配置成外部中断输入,低电平触发。
日历时钟和存储电路
日历时钟芯片采用rtc4553,该芯片采用内置晶振和独特的数据方法,大大提高了时钟精度和可靠性。rtc4553配有串行外设通信接口,另有30×4bit sram,有2000~2099的百年日历,电池耗电2ma,时钟误差<3 min/年且无需调整,电路如图3所示。
数据存储芯片选用24lc256,32k字节,cpu通过i2c总线对其进行读写操作。主要存储终端运行参数、电量数据、每日电能参数的最大和最小值、各事件发生的时间及当时的电参数,电压合格率和可靠率数据。
负荷曲线的数据量较大,选用4m字节容量的flash芯片at45db321b。
在图3中,rtc4553和at45db321b都通过串行外设通信接口(spi)和cpu交换数据,电量采集模块和usb接口模块也是采用这种方式。由于c8051f020提供的串行外设接口可工作在主或从模式,并允许将多个器件连接到一个主器件,所以这些器件和cpu之间采用spi总线相连,cpu工作在主模式,其它器件工作在从模式。
c8051f020的spi操作很简单,只要向spi数据寄存器(spi0dat)写入待发送字节,就启动了一次数据传输,同时在时钟线上按设定频率提供时钟信号,在数据线上移出数据。
按键和显示电路
采用omj中文模块点阵式液晶显示器(带背光,80×160),整屏可显示5×10个汉字,可以实现汉字、ascii码、点阵图形和变化曲线同屏显示。模块的初始化工作在上电时完成,同时保留了一根复位线供用户使用。硬件接口采用req/busy握手协议,简单可靠。显示菜单与普通微机上的菜单结构保持一致,以适应操作人员的习惯。通常每屏液晶显示表示一个菜单。
设六个操作按键:上、右、下、左、取消和确认。通过按键和液晶显示器配合可实现装置自检、数据显示和参数设置等功能。
电量采集模块
该模块主要由四块cs5460芯片和日立单片机构成,通过spi接口每秒钟向主cpu提供电压、电流、频率、功率因数、有功功率、无功功率等实时数据。
通信部分
c8051f020有两个全双工串口:uart0和uart1,通过和rs-485总线收发器max3085e相配合构成两个485通信口。
485收发器max3085e芯片具有出现故障时自动退出的特点。
在本设计中,由于cpu是3.3v供电,而一些外设,如显示模块、e2prom芯片等是5v供电的,所以cpu的输出脚应加上拉电阻,并配置成开漏输出。因为cpu的i/o脚是耐5v的,所以5v输入信号可以直接和cpu的输入脚相连。
软件设计
配电变压器监测终端的整套系统软件采用c51编写,编译器采用keil c51,调试器采用cygnal 公司的集成开发环境。
配电变压器监测终端软件系统的主程序如图4所示。程序采用了模块化的结构,除主程序框图中所列出的程序模块外,还有定时器0中断子程序模块、外部中断0子程序模块(掉电处理)、i2c中断子程序模块,串口0和1中断子程序模块以及pca中断子程序模块。
主程序框图中的主循环体大体采用了输入→处理→输出的结构,这有点类似于plc的工作过程。
定时器0的中断程序主要为软件计数器的计数提供时钟信号,设定为10ms中断一次。由于主循环体中各模块程序运行的
关键词:c8051f020;配电变压器监测终端
引言
配电变压器是将电能直接分配给低压用户的电力设备,其运行数据是整个配电网基础数据的重要组成部分。本文设计了一种集多功能电表、无功投切控制器、采集器等功能于一体的新型配电变压器监测终端。
硬件设计
根据配电变压器终端产品所需实现的功能要求,以单片机c8051f020为核心的硬件结构如图1所示。
c8051f020简介
由于配电变压器监测终端需实现的功能较多,经反复比较,cpu选用c8051f020芯片。该芯片内置有64k flash、4k ram、1个smbus/i2c、1个spi、2个uart、5个定时器、64个通用i/o口、12位的adc通道、电压基准(内部、外部)、温度传感器等。并具有以下特点:高速的50mips与8051 全兼容的微控制器内核。flash 存储器可实现在线编程和用于非易失性数据存储(e2prom 的作用),工作电压典型值为3v( 2.7v~3.3v),全部i/o、rst、jtag 引脚均允许5v电压输入,工业级温度范围(-45 ~ +85)。片内jtag 仿真电路提供全速非插入式(不使用在片资源)的电路内仿真支持断点、单步观察点、运行和停止等调试命令,支持存储器和寄存器校验和修改。
监控电路
选用max706作为微处理器监控器,主要实现上电复位、监控程序运行和掉电检测功能。电路如图2所示。
max706可独立监视跟踪定时器输出。在1.6s内,如果cpu的p2.3脚电平不翻转,则/wdo脚输出低电平,通过/mr手动复位输入端使/rst脚产生复位信号,以防止由于干扰使cpu死机。设跳线器的目的是为了避免在下载程序和调试时max706产生复位信号。
vpp为电源的掉电检测信号,当电平降至5.5v以下时,/pfo输出低电平,使cpu进入中断程序进行掉电处理。cpu的p1.5脚被配置成外部中断输入,低电平触发。
日历时钟和存储电路
日历时钟芯片采用rtc4553,该芯片采用内置晶振和独特的数据方法,大大提高了时钟精度和可靠性。rtc4553配有串行外设通信接口,另有30×4bit sram,有2000~2099的百年日历,电池耗电2ma,时钟误差<3 min/年且无需调整,电路如图3所示。
数据存储芯片选用24lc256,32k字节,cpu通过i2c总线对其进行读写操作。主要存储终端运行参数、电量数据、每日电能参数的最大和最小值、各事件发生的时间及当时的电参数,电压合格率和可靠率数据。
负荷曲线的数据量较大,选用4m字节容量的flash芯片at45db321b。
在图3中,rtc4553和at45db321b都通过串行外设通信接口(spi)和cpu交换数据,电量采集模块和usb接口模块也是采用这种方式。由于c8051f020提供的串行外设接口可工作在主或从模式,并允许将多个器件连接到一个主器件,所以这些器件和cpu之间采用spi总线相连,cpu工作在主模式,其它器件工作在从模式。
c8051f020的spi操作很简单,只要向spi数据寄存器(spi0dat)写入待发送字节,就启动了一次数据传输,同时在时钟线上按设定频率提供时钟信号,在数据线上移出数据。
按键和显示电路
采用omj中文模块点阵式液晶显示器(带背光,80×160),整屏可显示5×10个汉字,可以实现汉字、ascii码、点阵图形和变化曲线同屏显示。模块的初始化工作在上电时完成,同时保留了一根复位线供用户使用。硬件接口采用req/busy握手协议,简单可靠。显示菜单与普通微机上的菜单结构保持一致,以适应操作人员的习惯。通常每屏液晶显示表示一个菜单。
设六个操作按键:上、右、下、左、取消和确认。通过按键和液晶显示器配合可实现装置自检、数据显示和参数设置等功能。
电量采集模块
该模块主要由四块cs5460芯片和日立单片机构成,通过spi接口每秒钟向主cpu提供电压、电流、频率、功率因数、有功功率、无功功率等实时数据。
通信部分
c8051f020有两个全双工串口:uart0和uart1,通过和rs-485总线收发器max3085e相配合构成两个485通信口。
485收发器max3085e芯片具有出现故障时自动退出的特点。
在本设计中,由于cpu是3.3v供电,而一些外设,如显示模块、e2prom芯片等是5v供电的,所以cpu的输出脚应加上拉电阻,并配置成开漏输出。因为cpu的i/o脚是耐5v的,所以5v输入信号可以直接和cpu的输入脚相连。
软件设计
配电变压器监测终端的整套系统软件采用c51编写,编译器采用keil c51,调试器采用cygnal 公司的集成开发环境。
配电变压器监测终端软件系统的主程序如图4所示。程序采用了模块化的结构,除主程序框图中所列出的程序模块外,还有定时器0中断子程序模块、外部中断0子程序模块(掉电处理)、i2c中断子程序模块,串口0和1中断子程序模块以及pca中断子程序模块。
主程序框图中的主循环体大体采用了输入→处理→输出的结构,这有点类似于plc的工作过程。
定时器0的中断程序主要为软件计数器的计数提供时钟信号,设定为10ms中断一次。由于主循环体中各模块程序运行的
上一篇:使用VCO实现变容二极管直接调频