新闻中心

EEPW首页>嵌入式系统>设计应用> SCADA系统中交流采样器设计

SCADA系统中交流采样器设计

作者: 时间:2009-10-28 来源:网络 收藏
1.5总线接口电路

本文引用地址://m.amcfsurvey.com/article/152307.htm

LP2407A集成了控制器,扩展一片收发器就构成了CAN接口电路。收发器选用Philips公司的P82C250,具体电路如图5。

P82C250是5V电源供电,与LF2407A连接要加电平转移电路。R301、D301完成3.3V电平向5V电平转移;R302、R303完成5V电平向3.3V电平转移。

其他如串口扩展电路、SRAM扩展电路、液晶扩展电路等为通用电路.在此不做阐述。

2软件

2.1嵌入式软件思想

借鉴Windows编程中基于消息驱动的思想,在嵌入式软件中引入基于消息的处理方泫。嵌入式的消息可以分为:键盘输入命令、接口电路产生的状态信息(如报警、越限等)以及上位机命令。消息的接收采用中断方式,确保消息可靠及时的接收;时间要求非常苛刻的消息,如电机保护,在中断直接处理;其他消息在主程序中对消息进行解析执行。程序设计思想可以用图6表示。

通过CAN总线接收上位机的命令(接收消息)。CAN接收方式采用中断方式.当上位机下达命令时,该装置通过中断及时接收.实时任务直接在中断程序中完成,满足系统的实时性要求;非实时任务则将该命令存入消息(或命令)缓冲区,等待在主函数中查询处理。

2.2程序整体框图

整个程序由主函数、功能函数、CAN通信中断函数、DSP的定时器T1的周期中断(中断)函数构成。

DSP的CAN控制器接收中断采用DSP的内核中断1;定时器T1的周期中断采用DSP的内核中断2,用来定期触发MAXl25进行A/D转换。关于LF2407A的中断编程可参见文献[1~2]。

主函数main()的流程如图7所示。

主函数先初始化系统,启动实时,实时一直运行并始终保持有多个周期的波形数据,供故障录波后观察故障点前后几个周期的波形,以便分析故障原因。然后进入消息处理的循环程序。从流程图可以看到,程序先检查消息(或命令)缓冲区,若有消息/命令,则调用相应功能函数执行命令,判断是否到计算周期以确定是否调用计算函数,然后回到消息处理入口;若没有消息等待处理,则判断100ms计算周期是否到(计算周期可以调整)。若到,则计算一遍电参数,判断是否有越限情况。若有越限则通知上位机,然后返回到消息处理入口,重复开始消息(或命令)的解析执行。消息接收程序以中断方式在后台运行。

2.3功能函数设计

功能函数由主函数main()调用,下面介绍几种主要的功能函数。限于篇幅,函数没有展开,只列出函数名。

计算电参数的函数:void Calc();

向上位机传送电参数值的函数:unsigned int Send_AcqData();

执行参数设定命令的函数:unsigned int Set_Parameter();

向上位机传送报警数据的函数:unsigned Int Send_AlarmnData();

向上位机传送录波数据的函数:unsigned Int Send_WaveRecordData();

采样系统已运行在铁路水电远动系统的FTU(Field Terminal Unit)中,与上位机通信的应用层协议采用DeviceNet协议。实际证明该系统功能正常、性能稳定。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭