当前位置:首页 > 单片机 > 单片机
[导读] 自动气象站数据采集器一般基于单片机或PC/104总线控制器设计,具有与PC兼容性好、功耗低、体积紧凑等特点,然而如何设计出功能强大,网络传输功能强的自动气象站数据采集器,满足现代气象检测的要求

自动气象站数据采集器一般基于单片机或PC/104总线控制器设计,具有与PC兼容性好、功耗低、体积紧凑等特点,然而如何设计出功能强大,网络传输功能强的自动气象站数据采集器,满足现代气象检测的要求,是一个值得研究的课题。
文中基于ARM微处理器和Linux操作系统平台,借助前端无线传感器网络的数据输入,利用嵌入式Qt的开发优势并设计数据通信格式,完成无线气象数据通信系统的设计,实现了数据的可靠传输。为天气预报、科学研究、气象灾害预警等提供实时的气象观测数据。

1 无线气象数据通信系统的基本组成
如图1所示,无线气象数据通信系统主要由无线传感器网络节点、协调器、数据通信器(数据通信器以S3C2440AL为核心)、远程服务器等组成,完成对数据的采集、处理、传输和存储等功能。数据的采集基于CC2530的无线传感器网络,传感器节点将采集到的气象数据定时发送给协调器,再由协调器将数据通过RS232接口传给数据通信器,数据通信器按气象数据处理规范对接收到的数据进行处理后,一方面显示在液晶显示屏上,另一方面经以太网发送到远程服务器。此外,数据通信器保存接收的数据。

2 硬件电路设计

2.1 CC2530与S3C2440AL的连接

CC2530是TI公司以C51为内核的ZigBee芯片,它支持IEEE802.15.4标准以及ZigBee、ZigBee PRO和ZigBee RF4CE标准,提供101 dB的链路质量,具有高接收灵敏度和强抗干扰性,同时具有低功耗、低成本、时延短、高安全等特点。此外,系统采用Samsung S3C2440AL来实现高分辨率彩色显示、触摸控制、高速数据处理及管理、网络接口扩展等需要。

CC2530与S3C2440AL之间采用串口通信,其连接如图2所示。CC2530的串行数据发送端P0_3与S3C2440AL的串行数据接收端RXD1相连,CC25 30的串行数据接收端P0_2与S3C2440AL的串行数据发送端TXD1相连。此处将CC2530的设备类型设置为协调器,实现无线接收各个传感器节点发送的气象数据。
2.2 S3C2440AL外围电路设计
由于系统需要移植嵌入式Linux操作系统、安装微型数据库、运行可视化应用程序、存储气象数据以及将数据经过以太网发送给远程服务器,需要扩展液晶显示器、外部存储器、以太网控制器等。液晶显示屏采用320x240分辨率的3.5英寸触摸真彩液晶屏,SDRAM采用H57V25 62GTR,NANDFLASH采用K9F1216UOA,以太网控制器采用单芯片快速以太网MAC控制器DM9000。S3C2440AL部分外围电路如图3所示。



3 软件设计
下位机软件的核心是串口通信以及Socket通信。系统采用Qt4.5.0、Qt Creator 1.3.0作为数据通信器软件的开发工具,主要包括数据接收显示、存储以及发送给远程服务器等功能。
系统为了保证气象数据有效、高效、可靠地通信,该系统建立了如表1所示的数据帧格式。


协调器每次给数据通信器发送10字节数据,其中以“#”为起始符,紧跟4字节浮点数,第6字节表示气象要素类型,第8和第9字节分别为CRC检测的高位和低位,最后以“*”结束。CRC域是两个字节,它由协调器节点计算后加入到数据中,数据通信器对校验信息进行检查,若无错则接收该数据,否则放弃该数据并请求重发。

3.1 串口通信程序设计

协调器通过串口与数据通信器进行数据交互,所以在程序设计时需要对串口的波特率、数据位、奇偶校验、停止位以及数据流控制进行设置,实现数据传输。通过任务接口定时读写串口数据,查看协调器是否有数据,并将数据存入队列供界面显示、存储以及发送。串口设置界面如图4所示。




下面是串口设置的部分代码:

其中,getPortSettings()函数返回一个PortSettings型变量,包含了对波特率、数据位、停止位等的设置,getPortName()函数返回字符串型变量,用于串口号的设置。

3.2 网络通信程序设计
网络传输是本设计的主要任务之一,将数据通信器接收的数据经过Socket发送给远程服务器。而Qt提供了QTCPSocket类,用于编写TCP客户端的应用程序。QTcpSocket类提供了一个有缓冲的TCP连接,可以用来实现其他标准协议也可以用来实现自定义的协议。OTcpSocket采用异步工作方式,它依靠Qt事件循环发现外来数据和向外发送数据,并以信号的方式报告状态的改变或产生的错误,一旦网络的某一种状态发生改变(如网络断开),就会发出信号(如connectionClosed()),再通过信号与槽函数相关联进行处理。服务器设置界面如图5所示。


下面是网络传输相应槽函数:



4 结论
首次使用时,在系统设置界面对服务器地址、服务器端口、经度、纬度、台站号进行设置,在串口设置界面对串口的波特率、数据位、停止位等信息进行设置。设置完成后连接服务器并打开串口,在数据显示界面将会实时动态显示各传感器节点发来的气象数据。与服务器的连接状态等信息在程序状态栏会有相关提示,一旦与服务器断开,系统将会自动连接服务器并将这段时间内收到的数据保存起来等待连接成功后重新发送。
系统已经完成制作调试,效果良好,可以成功地实现数据通信、处理、存储、网络连接以及网络异常处理等功能。本系统低成本、无布线、可扩展性强等特点,在自动气象站应用中具有广泛的潜在市场和应用空间。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

本届年会将在上海(11月13-14日)、北京(11月19-20日)和深圳(11月27-28日)举行,面向嵌入式设计工程师推出25门技术课程

关键字: 嵌入式 MCU 模拟

上海2025年9月5日 /美通社/ -- 由纽伦堡会展(上海)有限公司举办的上海国际嵌入式会议将于 2025 年 10 月 16-17 日在上海世博展览馆举办。 此次会议将由三个版块组成:嵌入式技术会议、汽...

关键字: 嵌入式 CE CHINA EMBEDDED

从外部看,电子系统仿佛一个统一的学科或设备,各组成部分协同工作,浑然一体。然而揭开表象,其内在却是另一番景象:一个碎片化、多层次的世界——其中每一层都独立且复杂,衍生出各自特有的工具、专家、工作流程,甚至哲学体系。

关键字: 嵌入式 电子系统 半导体

8位单片机在嵌入式设计领域已经成为半个多世纪以来的主流选择。尽管嵌入式系统市场日益复杂,8位单片机依然不断发展,积极应对新的挑战和系统需求。如今,Microchip推出的8位PIC®和AVR®单片机系列,配备了先进的独立...

关键字: 单片机 嵌入式 CPU

深圳2025年8月28日 /美通社/ -- 8月26日,2025 ELEXCON深圳国际电子展盛大启幕。本届大会以"All for AI"为主题,深圳市德...

关键字: AI 工业级 SSD 嵌入式

深圳2025年8月26日 /美通社/ -- 8月26日,由博闻创意会展主办的 第22届深圳国际电子展暨嵌入式展(elexcon2025)在深圳(福田)会展中心隆重开幕。 作为中国电子与嵌入式技术领域的专业大展,本届展会...

关键字: 嵌入式 电子 高通 AI

在工业自动化、能源管理等实时性要求严苛的场景中,Modbus通信系统的响应延迟直接关系到设备控制的精度与系统稳定性。从智能电表的功率调节到机器人关节的同步控制,微秒级的响应偏差都可能引发连锁故障。本文从硬件架构、软件设计...

关键字: Modbus 通信系统

模块化设计作为一种将系统拆分为独立、可复用组件的方法,能够在低代码平台中实现功能的灵活组合,并最大限度地提升系统性能。本文将探讨如何通过模块化设计,使得低代码平台既能快速适应变化,又能保持高效稳定的运行。

关键字: 模块化设计 嵌入式

CPU亲和度通过限制进程或线程可以运行的CPU核心集合,使得它们只能在指定的CPU核心上执行。这可以减少CPU缓存的失效次数,提高缓存命中率,从而提升系统性能。

关键字: Linux 嵌入式

加密算法分对称加密和非对称算法,其中对称加密算法的加密与解密密钥相同,非对称加密算法的加密密钥与解密密钥不同,此外,还有一类不需要密钥的散列算法。

关键字: 算法 嵌入式
关闭