论文部分内容阅读
目前海洋水文气象数据采集系统中传感器的数量较多,数据采集器为每个传感器都配有一个接口。由此导致的接线复杂、可扩展性差等问题一直存在。为解决这一问题,本文将开放总线技术引入到水文气象数据采集系统中。文章深入研究了SDI-12总线和NMEA2000总线的通讯协议标准,并设计出基于该两总线的两种接口,所有的传感器都连入总线上与数据采集器通信。另外SDI-12接口可以通过软件控制切换至RS-232、RS-485、RS-422等通讯协议,丰富了接口的功能。论文首先对开放总线接口进行了总体设计,对SDI-12和NMEA2000通讯协议进行了介绍。然后阐述了实现总线接口的硬件与软件设计方法。硬件设计主要是满足SDI-12总线和NMEA2000总线物理层信号的传输要求。文中详细介绍了芯片选型及电路原理图的设计。微控制器选取了ST公司的STM32F103VE芯片,并基于该芯片对多协议接口模块和NMEA2000模块进行设计。软件设计主要是完成总线上数据链路层及上层通讯协议的设计,包括数据帧的收发,以及报文的解析。软件开发环境为Keil及RTX嵌入式实时操作系统。文中对RTX操作系统作了较为详细的介绍,并在此平台下进行多任务的设计,实现SDI-12和NMEA2000总线接口的功能。为以后维护方便对程序进行了模块化的设计,每个模块都有详细的流程图说明以及通讯协议的解释。最后将多个水文气象传感器连入总线中,验证总线采集数据的效果。验证结果表明,本文所设计的水文气象数据采集接口能够正常采集数据。使得整个数据采集系统具有可扩展性强,硬件电路简单,接线方便,便于现场安装等特点。