基于AT89C52的CAN总线无功补偿控制设计

发布者:HarmoniousSoul最新更新时间:2012-11-20 来源: 微计算机信息 关键字:AT89C52  CAN总线  无功补偿控制 手机看文章 扫描二维码
随时随地手机看文章

引言

根据资料统计,输电线路、高压配电网、低压用户三个部分的线损中,低压用户线损最大,因此,降损节能应主要围绕低压380V用户进行。长期以来,我国低压配电网网架薄弱,自然功率因数低,而且结构复杂,降低了电网的经济效益。目前,电力部门一般采用就地无功补偿的方法解决这一问题。目前市场上所投入使用的低压无功补偿装置有很多种,但大部分补偿单元基本上都是由主控制器的CPU直接驱动的,系统有多少组电容器,就会从CPU引出相应路数的线,从无功补偿器引出的线路很多,同时传输距离也很有限。这给安装、检修、维护和扩展带来了极大的不方便。     

CAN(Controller Area Network)总线属于现场总线的范畴,它是德国Bosch公司从20世纪80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议。CAN总线标准支持全双工通信,传输介质采用双绞线和光纤,传输速率可达1Mbps,节点数可达110个。其最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码。其容错能力和抗干扰能力强,传输安全性高、通讯速率快、传输距离可达10KM、同时还具有良好的抗电磁干扰能力,因而在实际应用中具有极高的应用价值。我们将CAN总线技术应用低压无功补偿装置上,可以取得较好的无功补偿效果。

2    系统硬件设计

 2.1 系统硬件总体结构设计

系统硬件总体结构设计原理框图如图1所示。控制系统由数据采集单元、中心微处理控制器、CAN总线通信和驱动执行单元、输入键盘、显示单元等部分组成。

图1  硬件总体结构框图

控制器的工作原理是:从控制现场传感器CT、PT送来的电流、电压信号,经过二次变换,转换成0~2V,0~5A信号。这些信号再经过处理,使输入的电压、电流信号满足数据采集测量芯片SA9904B的输入要求。SA9904B把测得的三相电力参数相关值如电压、有功能量、无功能量、频率等存在其内部暂存器里。微处理控制器采用的是AT89C52型单片机,通过SPI接口访问SA9904B内部的24位暂存器,把暂存器的数据根据相应的公式计算就可以得到各相有功功率和无功功率,以及各分相有效电压和频率。根据预设的控制策略就可以决定要动作的开关模块,然后主控制器把要动作的智能投切模块以及要进行的投切动作以帧的形式送到CAN总线上,相应的智能开关模块控制电容器的投切。

2.2  CAN总线节点的硬件设计

节点是组成CAN总线网络的基本单位,在本系统中,主控制器和智能投切模块都可以看作是CAN总线的一个节点,每一个总线节点都由微处理器、CAN控制器、CAN驱动器组成,各节点之间通过总线连接起来。接线示意图如图2:


图2  CAN节点硬件结构图

CAN通信接口采用PHILIPS公司生产的SJA1000通信控制器和82C250总线驱动器。82C250是CAN控制器和物理总线间的接口,速率高,并且有过热保护,它可以提供对总线的差动发送和接受功能。[page]

2.3通信电路设计

CAN智能节点结构由3部分组成:微控制器、CAN控制器、CAN收发器。CAN收发器负责建立CAN控制器和物理总线之间的连接,控制逻辑电平信号从CAN控制器到达物理总线的物理层,反之亦然。CAN控制器和收发器分别采用的是PHILIPS公司的SJA1000和PCA82C250。微控制器负责从CAN控制器接受数据,然后进行数据处理,将处理结果通过CAN控制器和CAN收发器发送给网络中其他的节点。为了增强CAN总线节点的抗干扰能力,SJA1000的TX0和RX0并不是直接与82C250的TXD和RXD相连,而是通过高速光耦6N137后与82C250相连,从而实现了总线上各个CAN节点间的电气隔离。

2.4 安全保护电路设计

单片机微处理器CPU在运行过程中,很可能因受到外界干扰而出现程序“跑飞”或死机。当CPU在扫描工作时间超过正常周期时,需要监视控制定时器发出强行复位信号,将CPU重新拉回初始状态,使系统恢复正常。本设计中采用美国XICOR公司的新型产品X5045可编程看门狗,当系统出现故障时,只要其计时的扫描周期达到编程设定的超时极限,或者当电源电压降到最低转换点以下时,芯片RESET引脚就会立即输出高电平复位信号,从而避免了因系统故障、电源通断、瞬时电压不稳等因素系统安全性能的影响。

2.5 人机接口设计

本装置通过4个按键组合可用来设定控制参数,如电压上下限,功率因数上下限,电流互感器变比等,还可用来选择手动运行方式还是自动运行方式。液晶显示器选用RT12864,可显示4排汉字,小巧精致、美观。液晶显示模块在工作时显示三相实时功率因数,通过按键翻阅还可以显示三相实时电压,有功功率,无功功率等参数。

3  软件设计

    采用模块化的软件设计,将软件分成若干相对的独立的功能模块,并为各模块安排适当的入口和出口参数,使得模块之间的相互连接,组合灵活方便。智能传感器的的软件由数据采集模块、输出控制模块、CAN总线通信模块等组成,各模块在监控系统的程序调度下协调工作。CAN总线通信模块由3部分组成:初始化程序、发送数据程序和接受终端程序3部分组成。由于系统中任意时刻均可主动与其他节点通信,所以,各节点的通信程序相同。基于AT89C52和SJA1000的CAN接口模块通过CAN总线建立通信。SJA1000的应用程序可以被分为初始化程序、报文发送程序和报文接收程序。

3.1  CAN控制器SJA1000初始化设计

节点的初始化主要是指系统上电后对微处理器AT89C52和CAN控制器SJA1000进行的初始化,以确定工作主频、波特率和输出特性等。对AT89C52的初始化可结合其监控任务进行,主要是对中断允许与屏蔽、中断优先级、定时器的使用与设置等,由于SJA1000内部无微处理器,故其初始化仍要通过AT89C52对其进行编程实现。初始化程序流程如图3所示。

图3 初始化程序流程图

SJA1000的初始化应在复位模式下进行,所以在SJA1000初始化程序中首先要将工作方式置为复位模式,之后要设置验收滤波方式、验收屏蔽寄存器(AMR)和验收代码寄存器(ACR)、波特率参数和中断允许寄存器(IER)等。CAN协议物理层中的同步跳转宽度和通信波特率的大小由定时寄存器BTR0、BTR1的内容决定。需要指出的是:对于一个系统中的所有节点,这两个寄存器的内容必须相同,否则将无法进行通信。初始化设置完成后,将复位请求位置“0”,SJA1000就可以进入工作状态,执行正常的通信任务。

3.2  CAN总线发送和接受数据程序设计

对SJA1000进行初始化建立CAN总线通信后,模块就可以通过CAN总线发送和接收CAN数据包。消息的发送由CAN控制器SJA1000根据CAN规则自动完成,主控制器必须把要发送的信息送到SJA1000的发送缓冲器中,并设置“发送请求标识位”于命令寄存器中。模块向总线上发送数据包是主动的,如果一次发送不成功,可以再次发送。

CAN控制器SJA1000根据规则自动接收消息,接收到的消息放入接收缓冲器,此时接收缓冲器状态标识RBS置为1,此时表示接收缓冲器中有接收到的消息。主控制器必须将消息保存到程序设置的消息缓冲器中,同时释放接收缓冲器并对消息内容做出反应。接收过程可以通过SJA1000的中断请求或查询SJA1000的标志位来进行。

4 结束语

本文介绍的通信设计方法应用于电网在线无功补偿控制系统中,其采用的短帧结构,数据传输速度快,受干扰概率低;不同的检测设备节点同时传输数据时,优先级高的节点先传输;采用多主式的数据传输方式,网络上任何一个节点出错都不会影响其它节点的正常运行的特性,从总体设计上可以看出,基于CAN总线无功补偿装置突出的优点是使整个系统减少了引出线,使设备简洁,易于扩展,同时也便于安装、检修和维护。

本文德主要创新点:将CAN现场总线技术用于低压电网无功动态补偿,使用标准协议的通讯方式扩展了系统的通讯结构。采用先进的总线技术使系统结构简洁,效率高,网络上任何一个节点出错都不会影响,大大提高了系统的可靠性和适应能力。

关键字:AT89C52  CAN总线  无功补偿控制 引用地址:基于AT89C52的CAN总线无功补偿控制设计

上一篇:采用AT89C2051的6位电子钟
下一篇:基于AT89S52的机载电气盒测试仪的设计

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

CAN总线的通信错误及其处理
  在CAN总线中存在5种错误类型,它们互相并不排斥,下面简单介绍一下它们的区别、产生的原因及处理方法。 位错误:向总线送出一位的某个节点同时也在监视总线,当监视到总线位的电平与送出的电平不同时9则在该位时刻检测到一个位错误。但是在仲裁区的填充位流期间或应答间隙送出隐性位而检测到显性位时,不认为是错误位。送出认可错误标注的发送器,在检测到显性位时也不认为是错误位。 填充错误:在使用位填充方法进行编码的报文中,出现了第6个连续相同的位电平时,将检 测出一个填充错误。 CRC错误:CRC序列是由发送器CRC计算的结果组成的。接收器以与发送器相同的方法计算CRC。如果计算的结果与接收到的CRC序列不同,则检测出一个CRC错误
[嵌入式]
一种基于CAN总线的客房通信控制器的设计
1 引言    随着计算机技术、通信技术、信息技术和控制技术的飞速发展,人们对智能建筑的功能、环境和管理水平提出了更高的要求。宾馆、酒店的客房控制和管理作为智能建筑楼宇自控系统中的一个重要组成部分,其发展方向是更加安全、舒适、高效、便利和节能。宾馆、酒店的客房控制和管理具有分散控制和集中管理的特点,整个系统涉及对象繁多,且分布在不同位置,控制要求也各不相同。如果采用传统的一对一接线,则建筑物内的布线复杂、维修困难,系统成本高、可靠性低、可扩展性差。因此,现代智能建筑楼宇自控系统广泛采用了现场总线技术。   本文结合宾馆、酒店的客房控制和管理实例,介绍了基于CAN总线的客房通信控制器的设计。 2系统结构    客房控制和
[安防电子]
一种基于<font color='red'>CAN总线</font>的客房通信控制器的设计
汽车数字化技术CAN总线数据应用是落脚点
在现代汽车技术发展中,已经有95%以上的汽车采用了CAN总线协议,部分娱乐系统采用了以太网,结合4G/5G的商业化应用,已经将原有封闭式的内部数据闭环的汽车连接到互联网,我们的用户不但可以远程解锁他们的爱车,还可以实现对汽车的远程控制,即便无钥匙的情况下,家人依然可以使用汽车。汽车作为移动交通工具,在新一轮的技术下,已经变得像遥控电视机一样简单。 特斯拉采用了RFID、NFC、蓝牙、远程等多种控制方式,成为用户“骄傲”的噱头,为此,大量用户痴迷于特斯拉的高科技,从特斯拉独到的创新与应用来说,实实在在抓住了用户的心理,从第一款大屏,到第一个用RFID开门解锁,这些技术都让人眼前一亮。 一、技术背景 在当今的中高档汽车中都
[汽车电子]
汽车数字化技术<font color='red'>CAN总线</font>数据应用是落脚点
基于AT89C52的汽车防护系统集成设计与应用
0 引言     在国际金融危机的背景下,尤其在竞争异常激烈的汽车工业领域,提高我国汽车电子产品的技术和降低产品的价格,对降低整车成本显得十分重要。汽车防护系统的集成化是一股势不可挡的趋势。采用系统性能可靠、成本较低、软件设计灵活简单、硬件接口功能丰富、扩展性好、通用性强的AT89C52单片机开发了键盘、液晶显示器、多路震动的采集等,将汽车倒车安全距离提醒、汽车无线遥控防盗报警、汽车电源锁加密、汽车行车监视后方车辆距离等诸多汽车防护系统结合在一起,对驾驶环境实施全面监控,集中比较、分析多方面的数据,这样集成的主、被动系统能实现更强的安全性能,最大程度地保护车辆、乘员乃至行人的安全,其价值远远超过了各自独立、互不相干的防护系统。
[嵌入式]
CAN总线在组合机床电控系统通信中的应用
    一、引言   现代组合机床装备了大量的电子设备来满足加工精度、加工速度等要求,如果采用常规的点到点方式,直接把12V/24V电源连到负载设备上(如电机、液压泵等),用开关使电路闭合,势必造成导线数量不断增加,而有限的布线空间则在相对减少。此外,这些电控单元还要进行复杂的控制决策运算,包括从周边设备收集信息,发出控制命令,再根据反馈的信息做下一步的决策等。这一过程需要不同的电控单元之间进行通信,彼此影响。这些是不能通过简单的连接所能实现的。   有多种信息传输手段可以实现不同的电控单元之间的通信,如常用的RS-232、RS-485和CAN。RS-232虽然应用广泛,但是传输速率较低,传输距离较短,抗干扰能力较差,而且
[嵌入式]
基于DSP 技术和CAN总线的多节点远程数据传输系统
1 引言   控制局域网CAN属于现场总线范围,是德国Bosch 公司从20 世纪80 年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维,通信速度可达1 M bit/ s. CAN 协议的最大特点是废除了传统的站地址编码,而对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制,数据块的标识码可由11 位或29 位二进制数组成,因此可以定义211或229个不同的数据块,这种按数据块编码的方式,还可使不同的节点同时接收到相同的数据,这一点在分布式控制系统中非常有用。 2 系统设计   在很多野外或测量环境比较差
[嵌入式]
STM32的can总线实验心得
(一) 工业现场总线 CAN 的基本介绍以及 STM32 的 CAN 模块简介 首先通读手册中关于CAN的文档,必须精读。 STM32F10xxx 参考手册Rev7V3.pdf http://www.mystm32.com/bbs/redirect.php?tid=255&goto=lastpost#lastpost 需要精读的部分为 RCC 和 CAN 两个章节。 为什么需要精读 RCC 呢?因为我们将学习 CAN 的波特率的设置,将要使用到 RCC 部分的设置,因此推荐大家先复习下这部分中的几个时钟。 关于 STM32 的 can 总线简单介绍 bxCAN 是基本扩展 CAN (Basic Extended CAN) 的缩写
[单片机]
STM32的<font color='red'>can总线</font>实验心得
温度控制系统的信号采样放大及A/D转换电路设计
一.简介   本温度控制和显示系统是一个闭环反馈控制系统,它用温度传感器将检测到的温度信号经放大,A/D转换后送入计算机中,与设定值进行比较,得到偏差。对此偏差按PID算法进行修正,返回对应工况下的可控硅导通时间,调节电热丝的有效加热功率,从而实现对铁块的温度控制。   系统采用AT89C52芯片为CPU,外扩了8K的数据存储器6264。AT89C52是美国ATMEL公司生产的低电压,高性能的CMOS 8位单片机,片内含8K的可反复擦写的只读程序存储器(PEROM)和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度,非易失性存储技术生产,与标准的MCS-51指令系统及8052产品引脚兼容,片内
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved