采用ATmega128的无线数据采集设计

分享到:

电力日益市场化的环境下,电力公司必须提高服务质量以保持竞争力。当前我国的一些地区,配网自动化程度低,人员工作效率低。根据这种需求,设计了无线数传系统.整个无线数据通信系统是基于RS-485串口通信的一点对多点网络结构。数传电台每站点设一部,分别连接主站的数据采集工作站和分站的RTU/FTU等,进行轮询通信。各分站作业数据上报以及数采工作站的控制指令下行传输都通过无线方式完成。

1 设计思想

数据采集单元采用先进的ATmega128嵌入式单片机作为核心部件,利用RS-485通信接口与控制系统通信。测量站主要是将捕捉的现场信号经转换器ADC采样、量化、编码后,变成数字信号传给微处理器,接收遥控指令并发送数据;主控站的主要工作是发送遥控指令、接收数据信息、进行数据处理和数据管理。整个系统结构简单,可靠性高。见图1。

1.1   高速的模数转换芯片TLC5510

该系统的A/D转换采用TLC5510模数转换芯片。TLC5510模数转换芯片是TI公司的8位A/D转换器,是一款高速、低功耗且内部带有采样保持电路。它的数据采集时序是当CLK为高电平时转换数据,当CLK为低电平时输出有效数据。当要从A/D中读取数据时,只要 保持低电平即可,当 为高电平时D1-D8为高阻态.见图2.

1.2  数据采集系统的接口电路设计与流程

FIFO芯片SN74ACT7808是2048字节×9位可以实现先进先出异步读写操作的双端口存储器.读写操作会自动访问存储器中连续的存储单元。从FIFO中读出的数据顺序与写入的顺序相同,地址的顺序在内部已经预先定义好了。对FIFO的读写操作只由读写信号控制,不需要另外的地址信息。这使得FIFO的控制电路变得十分简单:读数据时只要OE保持为高电平同时使UNCK产生一个上升沿;写数据只要LDCK产生一个上升沿即可.
由于是高速数据采集,单片机相对A/D来说速度远远不够,所以需要设计一个电路让数据采集与存储自动完成,见图2。单片机的PB0引脚通过与门与外部CLK时钟相连,这样单片机就可以控制A/D的采样。当PB0为高电平时进行采样,当PB0引脚为低电平时A/D的CLK没有脉冲,采样停止。当FIFO保存的数据几乎满后给单片机一个中断信号,单片机接到中断信号后置PB0为低电平停止采样,然后把数据从FIFO中读出。因为单片机的PG0引脚经反向器后接到FIFO的UNCK,PC4脚接到FIFO的OE,它的有效地址只要保持PC4引脚为高电平即可。数据处理完毕后再接着采样,如此反复,完成周期性采样[2]。

2 嵌入式单片机ATmega128与数传电台的串行通信

ATmega128为基于AVR RISC结构的8位低功耗CMOS微处理器。ATmega128的数据吞吐率高达1 MIPS/MHz,从而可以缓减系统在功耗和处理速度之间的矛盾。8通道10位ADC(具有可选的可编程增益)、具有片内振荡器的可编程看门狗定时器、SPI串行端口、异步串行口与JTAG测试接口(此接口同时还可以用于片上调试),以及六种可以通过软件选择的省电模式。

2.1  ATmega128的串行通信方式

串行通信波特率:9600bps,发送接收方式:一位起始位,8位数据位,奇校验,1位停止位。UARTO初始化可以在ICC AVR中设置完成,而且Builder自动生成中断服务子程序和人口地址,只需在服务子程序中加人处理代码即可。

//UARTO  initialisation
//desired baud rate:9600
//char size:8bit
//parity: Disabled
void uart0_init(void)
{
UCSR0A=0x00;
UCSR0B=0x98;    //接收完成中断允许,发送数据允许.
UCSR0C=0x06;    //发送接收的字符长度为8位.
UBRR0H=0x00;
}

接收数据时,单片机设置一个标志,假设接收到第一个“*”字符,标志置1,认为通信正常,可以接收数据。接收数据时,判断是否收到接收完成消息;是,则清除标志,使得下次收到的数据无效,直到再次收到“*”,标志置1。标志为1时,判断是否收到消息(字符值等于8);是,将上次收到字符清为0;不是则将接收到的数据保存到接收缓冲区中。执行操作后,最后将接收到的字符发回给计算机。单片机通信流程图见图3。

2.2   ATmega128与数传电台的硬件连接

数传电台与单片机、终端主控机的通信协议:标准串行RS485接口,通信帧格式——1位起始位,8位数据位,1位可编程数据位,1位停止位,波特率9600bps。建议使用窄带无线数传电台MDS SCADA,专门用于电力自动化中。此电台采用工业级铸铝封装,可提升电磁干扰,绕射能力强,提供标准的RS-485接口,系统响应快。
系统采用异步串行通信方式。利用单片机串口与数字电台RS-485数据口相连,电台常态为收状态(PPT=0,收状态;PPT=1,发状态)。单片机通过带控制端的三态缓冲门74HC125、非门74HC14控制电台的收发转换。接收时,PC1=1,PC1经74HC14反相、光电隔离,使电台PPT脚为低电平,将其置为接收状态;发射时,PC1=0,经74HC14反相、光电隔离,使电台PPT脚为高电平,将其置为发射状态;同时74HC125A截止,74HC125B导通,数据由单片机TXD脚输出,经74HC125B缓冲门、光电隔离、MAX232电平变换,通过电台TXD端口将数据发送出去。具体硬件连接见图4。

3  结束语

国家的农网改造,使配电网络的供电能力得到了很大的提高.但随着社会经济的发展,对电力部门又提出了更高的要求.结合电网的实际情况,对于实时性、配电质量要求教高的地区,无线数据传输系统建成使用后,运行结果表明:系统工作稳定可靠,本系统与有线网相比,具有建网费用低、建设周期短、维护量小、抗灾能力强、无需查线检修、数据易传等优点。由于在该数据采集系统中采用了ATmega128,其开发速度较以往有很大的提高,这种高效灵活的嵌入式正广泛应用于工业控制领域,有着广阔的前景。

4  本文作者创新点

1.本系统采用了多种先进技术,高性能单片机系统技术、无线传输技术、计算机的远程控制技术等。2.本系统具有自动化程度高、系统可靠性和稳定性好、数据采集精度高等比较突出的优点。3.由于本系统和上位计算机系统可以方便地进行通讯和数据传送,可以把检测记录的数据保存在计算机的数据库内,有助于实现电力调度的网络化、数字化和信息化。

继续阅读
SKT之AVR硬件I2C的操作函数

STK600 之 Atmega128硬件I2C 读写高精度时钟芯片DS3231函数,STK600 用于程序的下载 连接JTAG口至mega128目标板即可,分享给大家参考。

ATMEGA128熔丝位配置详解

本文以AVR系列的ATmega128单片机为例,详细介绍熔丝位的配置以及在配置过程中常出现的一些问题,并给出相应的解决办法,成功地解决了因熔丝位配置不当而引起的单片机不能正常工作和死锁等一系列问题。

Atmega128中文资料

ATmega128是ATMEL公司的 8位系列单片机的最高配置的一款单片机,应用极其广泛。

基于ATmega128的16路遥控单元设计及应用

本文介绍一款具有16路遥控接点输出的ARTU-J16,该装置通过RS485总线与上位机相连,作为远程继电器输出模块,用于接收计算机指令,执行系统的遥控操作或自动控制,继电器输出共16路,装置拥有1600组操作事件记录,带GPS校时功能,在外部电源掉电后可以保证SOE事件记录一个月内不丢失,相对以往控制方式,本设计在简化控制网络结构的同时,提供了一种低成本,高可靠性的替代方案。

基于ATmega128的粮库无线温湿度传感器网络的监测节点设计

本设计实现了以高档8位AVR单片机ATmega128L为核心,结合外围温湿度传感器SHT11和无线收发芯片CC2420的粮库无线传感器网络节点。

©2018 Microchip Corporation
facebook google plus twitter linkedin youku weibo rss