您的位置:电子发烧友网 > 电子技术应用 > 电源管理 > 开关电源 >
基于CAN的电源控制系统设计(2)
2012年05月16日 09:55 来源:互联网 作者:秩名 我要评论(0)
4 通信协议及软件实现
在系统中,上位机给下位机发送运行定值以及起停信号,并且会定时查询各单机的运行状况以对其状态进行相应的调整。
具体通信过程分为2类:
(1)上位机向下位机传送操作命令及定值,上位机发送的是数据帧。
上位机发送完数据帧后,若下位机收到该数据帧则向上位机发送确认帧,该数据帧发送结束。若发送失败,上位机在等待一段时间后未接收到确认帧,则自动重发该数据帧。
(2)上位机对下位机的运行状态及各种记录定值进行查询,上位机发送的是远程帧。
远程帧中只包含有数据类型而没有数据内容,下位机接到远程帧后,根据上位机要求的数据类型向上位机传送数据。同时等待上位机的确认帧。若未接收到确认帧则定时重发。
在该系统中,以标准帧进行通信,即采用11位的标识符。其各位的定义如下:
ID0~ID4:节点标识,5位的节点标识可使网络能容纳32个节点。
ID5~ID7:数据类型,需要传送的数据种类比较多,上传的数据帧规定了7种类型(包括确认帧),与此对应下传的远程帧有6种类型,而下传的数据帧则有6种类型。需要至少3位标识符来确定数据类型。
ID8~ID10:帧计数,数据量最大的数据类型包含有17字的数据,而每帧最多能传4字,故该类型数据至少需要5帧才能传完。需对数据帧进行计数以对传送数据具体类型进行确定,故至少需要3位标识符来进行确定帧计数。
由于LF2407有专门的CAN模块中断,且在CAN控制模块中设计了专门的CAN中断标志及屏蔽寄存器,可以十分方便地采用中断的方式来启动CAN控制器进行数据的接收与发送。
在进行CAN控制器的设置时,需要先对改变数据请求位CCR进行使能,并在改变后进行复原。值得注意的是,TMS320LF2407中有很多寄存器位是需要通过写“1”来实现清“0”的,还有些位是只能读不能用程序直接改写的,例如:对邮箱中断(包括接收和发送)的标志位MIFn(0~5),在进入中断响应后应将其清除,但该位是只读位,用户程序只有写1到TCR寄存器的TAn位(对发送邮箱)和写1到RCR寄存器的RMPn位(对接受邮箱)才可达到清位目的。
5 实现的功能
通过该通信系统实现的功能包括:定值传送(从上位机传到下位机的数据帧):
(1)对时:具体到时分秒的数据。
(2)运行定值的传输:包括闪络参数(闪络系数KSP,给定火花率SPARK_NUM)、充电参数(给定峰值Up,上升率RISE-NUM,充电时限Ton-max)、放电参数(平均电压Vg,平均电流Ig,放电时间极限Toff-max)。
(3)保护定值:包括开路参数(电压,电流,延时)、短路参数(电压,电流,延时)、欠压电压、延时、过载电流、偏励磁、IGBT温度、油温等。
(4)通道参数:包括一次电流、输出电压电流、IGBT温度、油温、输入电流(三相)、直流电压。
运行定值查询(上位机发出远程帧):包括系统状态、故障记录、运行定值、保护定值、通道系数等。
6 结 语
本系统已经过调试,在我们初制成的单对单系统(上位机带1台控制系统)中,能抗除强干扰,在较大传输数据量的情况下正常工作。
标签: