当前位置:首页 > 嵌入式 > 嵌入式硬件

摘 要: 针对海洋数据采集系统中串行数据传输能力不能满足海洋环境实时监测需求的现状,设计并实现了一种传输速率较高的以太网数据传输系统。系统以STM32F207VGT6处理器为核心,选择轻量级的LwIP作为以太网协议栈,将LwIP TCP/IP协议栈移植到STM32F207VGT6上,在应用层实现了一个网络、串口数据双向传输的数据传输系统。经测试,其传输速率优于同条件下RS232、RS485、CAN总线的传输速度,满足了设计要求。
关键词: 数据采集;LwIP;TCP/IP;数据传输

以海底观测节点为载体的海洋数据采集与传输系统,可以实现海平面以下水环境监测数据的实时、自动获取,它由各个传感器、CPU控制器、数据传输接口以及水上远程监测平台组成,可为海洋的探索和监测提供丰富的信息和资料。从我国开始研制海洋数据采集与监测系统至今,先后采用了多种数据传输方式[1],包括RS232、RS485、CAN总线等,各个传输方式各有利弊。RS232支持全双工通信,虽然是众多设备的直接连接渠道,但传输速率慢、抗干扰能力差、传输距离短;RS485只支持半双工通信,抗噪声干扰性好,传输距离较RS232远,但传输速率慢;CAN总线只支持半双工通信,通信距离远,抗干扰能力强,但传输速率仍有限制[2]。根据数据采集及传输系统对数据传输速率的要求,本文利用LwIP作为以太网协议栈,完成LwIP TCP/IP协议栈在STM32F207VGT6的移植;考虑到以太网支持全双工通信,同时利用以太网中的UDP传输方式实现各类传感器开启、采集间隔的控制以及对采集数据的实时监测,大幅度提高了系统远程的可控性及实时性。
1 系统工作原理
海洋数据采集与传输系统的整体结构如图1所示。其中数据采集板是本系统设计和实现的主要组成部分,本文主要阐述由传感器、数据采集板和用户远程检测终端组成的海洋数据采集与传输系统。它主要完成对传感器采集到的数据进行存储和传输以及对传感器进行实时监测,其目的是提高传感器水下工作时长、提供外部电源供电引脚、方便进行长期观测。


海洋数据采集与传输系统工作原理为:当水下传感器采集到数据时,即刻通过串口传递至数据采集板,采集板收到数据请求信号,立即执行SD卡数据存储操作,并通过以太网对数据进行接收,在UDP传输方式下通过网线将数据传递至用户远程计算机终端。数据接收完毕后,水下传感器继续执行数据的采集。与此同时,远程计算机终端通过网络发送控制命令,信号经网络传输至采集板CPU,CPU进行命令解析,针对不同的解析结果对传感器发送相应控制命令,实现对传感器开启、采集间隔设置的实时控制。
CTD传感器1~传感器5是一般的RS232接口传感器,而耦合传感器1、2、3属于感应耦合自容式传感器,若要连入电路,需要加入调制解调模块。两种传感器除了都能以RS232形式输出数据外,也可进行自容式存储。
2 系统硬件
目前,实现传感器串行数据与以太网数据交换的方式主要有3种:(1)使用专用的网络处理芯片;(2)使用高档嵌入式系统处理;(3)使用单片机和网络控制芯片。通过比较可以发现:第(1)种成本较高,且用户需要重新设计接口;第(2)种成本也较高,且如果仅用于通信接口,芯片资源则不能充分利用;相比较而言,通过从成本和使用场合考虑,第(3)种方法成本低,实现比较容易,并且可以根据实际需要进行功能扩展,只是软件编程工作量比较大。因此本文采用第三种方法来实现。
本系统中主控板微处理器选用ST公司基于Cortex-M3内核的32 bit微处理器STM32F207,其主频达120 MHz,专用于网络型嵌入式设备中。STM32F207具有丰富的串口资源、4路USART通道、2路UART通道。其中USART1和USART6最高波特率支持7.5 Mb/s,其他接口最高支持3.75 Mb/s,不仅支持调制解调模块、传感器的物理连接,而且对于数据的传输也提供了较高的传输速率,可以有效缩短传感器通过串口下载历史数据的时间。
以太网收发芯片选用美国National公司的10/100 M以太网物理层收发芯片DP83848C,该芯片遵循Ethernet II和IEEE802.3u标准,同时支持MII、RMII、SNI三种数据连接方式,内部还集成了数据收发及滤波功能。在全双工模式下,可以同时实现发送和接收,理论上最高速度能达到100 Mb/s,本文对其配置为100 Mb/s。采集板简要框图如图2所示。

如图2所示,微控制器与以太网收发芯片间采用了RMII模式[3]。这种方式在保持物理层器件现有特性的前提下减少了PHY的连接引脚,在保持IEEE802.3规范中所有特性的同时,降低了系统设计的成本。
3 系统软件设计
本系统软件设计包括两部分:水下采集板传感器数据采集、传输程序和远程用户界面实时监测程序。其中,采集板程序均在KEIL Uvision4下编译、测试,远程监测程序在Visual Studio 2008下编译、测试。
3.1 TCP/IP协议栈——LwIP 移植
LwIP是瑞士计算机科学院的Adam Dunkles等人开发的用于嵌入式系统的开放源码TCP/IP协议栈,其在保持TCP主要功能的基础上减少对RAM的占用,一般只需要几十字节的RAM和40 KB左右的ROM就可运行,使LwIP适合在中低端的嵌入式系统中应用。
嵌入式TCP/IP协议栈有两种普遍的实现方式:一种是将协议簇中的每个协议作为一个单独的进程,并指定进程之间的通信点。其优点在于结构清晰,代码易懂,占用系统资源较少,且方便调试;另一种方式是将协议栈驻留在操作系统内核中,应用程序通过系统调用与协议栈通信。该方式对系统RAM、ROM资源占用较高,且不能很好地支持MDK[4]环境下的断点调试。故本文选择第一种方式。
3.2 STM32F207采集板程序设计

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

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭