首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
MCU 单片机技术
»
ARM
» 基于单片机C8051F060的智能功率柜的设计应用
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
基于单片机C8051F060的智能功率柜的设计应用
发短消息
加为好友
520503
当前离线
UID
872339
帖子
13270
精华
0
积分
6635
阅读权限
90
在线时间
361 小时
注册时间
2012-3-2
最后登录
2016-3-10
论坛元老
UID
872339
1
#
打印
字体大小:
t
T
520503
发表于 2013-8-10 01:01
|
只看该作者
基于单片机C8051F060的智能功率柜的设计应用
单片机
,
智能
,
国产
,
技术
,
检测
关键字:
单片机
智能功率柜
CAN总线
1 引言
目前,国产的励磁功率柜普遍存在检测功能不全、信息传送技术、控制和检测技术落后等问题。为了解决这一问题,本文给出了通过采用高集成度
单片机
C8051F060实现的智能励磁功率柜与CAN总线的通信方法,该方案具有完备的检测、控制和通信功能。
2 C8051F060单片机的特点
C8051FXX系列单片机是美国CYGNAL公司推出的一种与51系列单片机内核兼容的单片机。仅就笔者对C8051F060的使用实践介绍一下其新特点:
(1)内核采用流水线结构,速度可达25MIPS(25MHz晶振),比普通的51单片机快10倍;其指令与标准系列51单片机兼容,因而掌握开发过程非常容易;该芯片的JTAG调试方式支持在系统、全速、非插入调试和编程,且不占用片内资源。
(2)片上集成有64kB FLASH、4352B内部RAM(256+4kB,可外扩至64kB)、59个I/O口、 2通道16位1MSPS的可编程增益ADC、8通道10位200kSPS可编程增益ADC、2路12位DAC、3路模拟比较器、内部电压基准以及片内电源监视、降压检测和看门狗等功能。由于C8051F060的高集成度,因而无需外扩ROM、RAM、AD、DA、wATCHDOG、可编程I/O口和EEPROM(用片内FLASH实现),从而大大简化了硬件电路,并为构成以C8051F060为核心的单片机系统创造了条件,同时也提高了系统的可靠性。
(3)片内集成有2个UART、1个SM(兼容I2C)和1个SPI。最为便利的是,C8051F060集成了CAN总线控制器,这使得CAN总线具有开发费用低廉、抗干扰性强、可适用于工业现场应用等特点,并可广泛应用于干扰环境非常严重的各种工业现场测控领域。C8051F060只需加上CAN总线收发电路就可挂接到CAN通信网络上,因而大大简化了通信系统的设计,减少了通信节点受干扰的概率。
(4)可编程的16位计数器阵列PCA有6个捕捉/比较模块和5个通用16位计数器/定时器,这一为要求定时器/计数器具有较多的测控节点提供了方便。
(5)C8051F060能满足绝大多数工业测控节点的要求,能够形成以C8051F060为核心的单片机系统,如果配以外围测量单元,还可形成完整的测控节点。
3 智能励磁功率柜的系统结构
智能功率柜
系统原理框图如图1所示。功率柜中最关键的部件是三相全控桥,控制此桥的核心参数为触发角度,该参数可由CAN总线通过调节器送出,同时送达本地柜应发的电流值。经检测得到的输出电流与调节器的应发给定电流进行比较并完成PI运算,即可产生新的微调触发角度。该触发角度经PCA形成触发脉冲继而驱动三相全控桥,从而实现柜间均流。与此同时,通过信号检测模块还可将柜内温度、晶闸管通断状态、输出电流值送入微控制器,以对各参数进行计算分析,并将其与设定的阈值进行比较,最后实时显示测量结果,同时报警。
3.1 基于PCA模块实现的数字移相触发
三相晶闸管全控桥的工作原理及六个晶闸管的触发脉冲相序关系如图2所示。
该PCA中包含6个基于同一16位计数器,并可作为时基的捕捉/比较模块,每个模块可构成正沿捕捉、负沿捕捉、正负沿捕捉、软件定时器、高速输出、脉冲宽度调制器等6种方式。本设计中采用的是高速输出模式,当PCA计数器与模块的16位捕捉/比较寄存器相匹配时,相应模块的CEX引脚的逻辑电平将发生变化,并引起相应中断。
触发信号从同步信号过零点开始计时,调节器则经CAN网将触发角的电角度值α、同步信号周期值TSYN和脉冲宽度w发送给各功率柜。同步信号采样电路见图3,当同步信号过零产生中断时,PCA计数器开始计数,并根据α、w、TSYN及PCA计数频率计算出α的对应值Tα1~Tα6和脉冲后沿的对应值Tw1~Tw6,然后将Tα1~Tα6写入6个模块的16位捕捉/比较寄存器中。当捕捉寄存器的值与PCA计数器的值相符时,CEX引脚将变为高电平,以使相应模块产生中断,同时在中断子程序中,相应的TwN被写入16位捕捉/比较寄存器。当其与PCA计数器值相符时,CEX引脚变为低电平,其中一路触发单脉冲。用门电路便可将6路单脉冲合为6路双窄脉冲。下式为Tα和Tw计算方法:
TαN=TSYNα+90N-1 /360TCLk
TwN=TSYNα+w+90N-1 /360TCLk
式中,N可取12...6, TCLk为PCA计数器的计数周期。
3.2 通过片内FLASH在线修改参数
C8051F060中FLASH的0X0000~0X007F地址范围既可用于片内64kB FLASH,也可用于附加的128B的扇区,这可通过设置PSCTL寄存器的SFLE位来实现。由于片内FLASH必须先擦除再写入,而且应当以512B为一扇区进行,故附加的128B的扇区更适合用作非易失性数据的存储。在功率柜中,通常需要在线修改的参数为PI调节器的P和I,下面以kEIL C语句为例给出在线修改参数的程序:
wRRE FLASH
UNSIGNED INT XDATA *PwRITE
UNSIGNED INT CODE *PREAD
UNSIGNED CHAR I
UNSIGNED CHAR I1
wDTCN=0XDE //禁止看门狗
wDTCN=0XAD
FLSCL|=0X09 //25MHz时钟的擦写频率
PSCTL|=0X02 //允许FLASH扇区擦除
PSCTL|=0X05 //允许FLASH扇区写
PwRITE=0X0000 0X0000指向128B扇区
*PwRITE=0 //擦除FLASH
PSCTL&=~0X02 //禁止擦除FLASH
FORI=0I<2I++ //将P和I参数写入
*PwRITE++=PI_I
PSCTL&=~0X01 //禁止写FLASH
PREAD=0X0000 //读入当前值
FORI1=0I1<2I1++
PI_I1=*PREAD++
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议