8255A芯片引脚
在与单片机接口的方向,8255A提供如下信号,引脚如图3.3
U34343332313029282753698635267D0D1D2D3D4D5D6D7RDWRA0A1CSRESETVCCGNDPA0PA1PA2PA3PA4PA5PA6PA7PB0PB1PB2PB3PB4PB5PB6PB7PC0PC1PC2PC3PC4PC5PC6PC743214039383718192021222324251415161713121110 图3.3 8255A的引脚图
AD7 —AD0 三态双向数据线。
RD—读选通信号。
8255AWR—写选通信号。 CE—片选信号。
RESET—复位信号。复位后A、B、C口均置为输入方式。 A1-A0—地址线,用来选择8255A内部端口。 8255A与8051单片机的连接
根据需要对单片机8051芯片扩展了I/O口,扩展了两片8255A芯片,设计了8255A和8051的连接图,如图3.4
10 / 27
图3.4 8051和8255A的连接图
8051扩展8255A,两片8255A都工作在0方式。将A片PA口设置为输入口,PB口设置为输出口,CS由译码电路的Y6控制;将B片PA、PB口都设置为输出口,PC口低4位设置为输入口,CS由译码电路的Y7控制。
11 / 27
第4章 软件设计
4.1 保护算法
4.1.1 概述
微机保护及其控制装置根据模数转换提供的输入电气量的采样数据进行分析、运行和判断以实现各种继电保护及其控制功能的方法称为算法。目前,提出的算法有很多种,其核心问题归根结底不外乎是从已有的输入电气量的采样值中算出可表示被保护或控制对象运行特点的物理量。如电压、电流等。有了这些基本的电气量的计算值,就可以很容易地实现各种不同原理的保护及控制方法
算法是研究微机保护及控制装置的重点之一。分析和评价各种不同的算法优劣的标准是精度和速度。研究算法的实质是如何在速度和精度两方面进行权衡。另外,算法本身具有数字滤波功能,即是否能从带有其他频率成分的采样值中比较精确地将基波分量的幅值和相位估算出来,也是必须考虑的,特别是作为继电保护算法时,更需要考虑数字滤波功能好的算法。而在故障后的暂态过程中,保护安装中的电流和电压除了含有基波分量外,还含有高次谐波和衰减非周期分量,保护要从这样的电流,电压采样值中比较精确的估算出基波分量,必须选用数字滤波功能好的算法。
4.1.2 全波傅立叶算法
假定被采样的模拟信号是一个周期性时间函数,除基波外还含有不衰减的直流分量和各次谐波,根据傅立叶级数的概念,可以将其展开成无数次谐波的和。全波傅立叶算法,不仅能滤掉各种整次谐波和纯直流分量,而且对整次高频分量和按指数衰减的非周期分量中的低频分量有一定的抑制作用。正因为全波傅立叶算法具有良好的数字滤波特性,使得它成为应用广泛的继电保护及控制算法。
4.2 保护软件流程
保护的程序的主要包括三大模块:主程序、采样中断服务程序和事故处理程序。
12 / 27
4.2.1 主程序
主程序包括初始化、全面自检、开放和等待中断等功能。当装置上电或按复位按扭后,进入该程序模块的入口。首先进行必要的初始化(一),如堆栈寄存器赋值、控制口初始化(置ID、T0、T1的工作方式)、查询面板上开关的位置等。当面板上开关在调试位置则进入监控程序,否则进入运行程序。进入运行程序后,单片机将开始运行状态所需的各项准备工作即初始化(二),包括往I/O并行控制口写数,让所有的开关量处于正常状态;按照面板上的整定值或门槛值切换开关的位置,按套号将所需要的那一套整定值或门槛值放在预先规定好的RAM区。之后单片机依据程序对装置硬件的各部分进行全面自检。
在确认一切良好后才允许数据采集系统开始工作,将采集指针和软件定时器初始化,准备好定时对各模拟输入量进行采样和A/D转换。这一工作完成后,先将保护的启动元件动作标志置1,即PB6=0,PB7=1,闭锁采样中断服务程序中起动元件的计算。然后开放采样定时器中断并等待。
开放采样定时器中断后,若中断时刻到,则转入采样中断服务程序,执行完后返回至主程序的断点处,继续执行主程序。若中断时刻未到,主程序会继续往下执行而不断的进行专用自检项目。专用自检项目是依据不同的被保护元件或不同的保护原理自行设置。
该装置软件中含有三个故障处理程序。故障处理程序II的功能与故障处理程序III的功能类似,只是延时动作时间不同。
并且,由于各段动作后均具有记忆功能。因此,在断路器跳闸后,重新合闸前应先使单片机系统复位。
13 / 27
4.2.2采样中断服务程序
包括对模拟量的采样、A/D转换、采样值存储、起动元件的计算和是否有故障发生的判断等功能。图5-2给出了采样中断服务程序的框图。进入该程序模块后,首先发出采样/保持命令以保证各模拟量输入通道的同时采样;再对各通道保持信号依次进行A/D转换并将转换结果存储到预先划分好的RAM区域;然后进行起动元件的计算和判断。如果起动元件已经动作,说明这次中断服务程序的执行是由于事故处理程序被采样定时器中断时间到而打断引起的,则不用再进行起动元件的计算和判断,当判断出起动元件刚好动作时,则进行以下三项工作:1)将起动元件动作标志置1;2)向并行控制口写数,驱动起动继电器动作;3)修改返回地址为事故处理程序的入口地址,这样在采样中断服务程序的出口处程序将返回到事故处理程序,而不是返回到主程序的断点处。
入口 采样/保持、A/D转换及结果存储 Y PB6=0 PB7=1 ? N 起动元件计算 返回 起动元件动作? Y PB6=0,PB7=1,驱动起动继电器 N 修改返回地址为事故处理程序 入口地址 图4.2 采样中断服务程序框图
14 / 27