基于ARM+FPGA+AI的船舶状态智能监测系统(一)总体设计
深入分析了船舶机舱监测设备的系统需求,规格说明以及总体设计。
首先,通过详细分析系统的功能和设计特点,明确了设计目标和要求。其次,根据这些需求和要求,提出了硬件和软件的系统设计方案,以实现精确、可靠和高效的性能。通过对系统总体设计的深入阐述,为后续的详细设计和实施提供了坚实的基础。

2.1 设备功能需求分析
课题的总体目标是研制一套完整的船舶机舱监测设备,用于对船舶自身设备以及周围环境的各种信息进行采集,完成数据的监测、传输和记录,从而全面了解船舶的自身状况和设备的运行状况。
依据实际课题的项目需求,船舶机舱监测设备的设计必须建立在高度可靠的基础上进行设计,设备需充分吸取已有的成熟可靠性设计技术,以确保设备在执行监测任务时稳定与安全。同时,鉴于机舱空间有限和严格的重量限制,设备的研制不仅需要保证性能,还需严格控制其尺寸和质量,以满足实际需求。
为增强设备的通用性,需要充分考虑资源配置,以满足各种监测任务的需求。
在性能方面,应用高性能的处理器,以确保数据的高效处理和分析。此外,需采用易于二次开发的嵌入式系统,为未来的升级和定制提供方便的途径。具体的功能需求如下:
(1)具有多路振动和温度信号检测功能。船舶在航行中会受到各种振动和冲击,这可能会对船舶结构和设备产生影响。根据中国船级社提出的《船舶智能机舱检验指南》,可了解到对于船舶机舱中发动机等设备的运行情况可采用温度、振动、压力、流量等参数进行监测,其中大多数设备需监测的参数以振动和温度信号为主,通过采集这类数据与正常运行状态进行对比来评定设备运行情况。这种监测对于预防结构疲劳、诊断机械故障和提高船舶安全性非常重要,通过实时监测,船舶维护人员可以及时采取措施,避免潜在的故障。
(2)具有多路模拟电压、电流量监测能力。船舶机舱监测中通常还涉及到流量、液位等参数对各设备的状态进行监测,采集这些参数所用传感器有的为模拟电压量和电流量输出,需设计采集模拟电压量和电流量的 AD 模块将这些模拟信号转换为数字信号,以便系统进行实时监测、分析和记录。
(3)具有与多路 RS-232、RS-485、CAN 接口的通讯能力。船舶机舱内部涉及到大量的设备和子系统,这些设备可能使用不同的通信协议。RS485、RS232
和 CAN 通信接口提供了灵活的数据交换方式,能够连接多种设备,如传感器、发动机控制系统、导航系统、液位报警系统等。通过这些接口,监测设备能够与这些设备进行数据交换、监控和控制,确保船舶的正常运行。
(4)具有输出激励功能。实现数字量开关功能,对某些设备进行控制。
(5)具有数据存储与网络通信功能。监测设备所采集的数据量很大,需具备大容量存储功能。此外,该监测设备还需与外部系统进行数据交换和远程监控,系统通过提供双以太网冗余功能,可以支持高速数据传输和远程访问,以实现与主控制台、船舶管理系统等的连接。
2.2 设备性能指标要求
(1)硬件计算平台:
① CPU:最低主频 1GHz;
② RAM:DDR4(4GB);
③ 嵌入式操作系统:Linux;
(2)接口与采集单元:
① 振动信号接口:≥16 路;
② 模拟电压量输入:≥8 路,±10V;
③ 模拟电流量输入:≥8 路,4~20mA;
④ 温度信号接口:≥2 路,测量误差-0.5℃~+0.5℃;
⑤ RS232:≥4 路,抗干扰能力强,各项通信参数可用软件配置;
⑥ RS485:≥8 路,抗干扰能力强,各项通信参数可用软件配置;
⑦ CAN 总线:≥4 路,抗干扰能力强,采用 FIFO 进行数据收发,深度不低于 1024Byte,查询方式读取,波特率等通信参数可配置;
⑧ 千兆以太网接口:≥2 路;
⑨ USB 接口:≥2 路;
⑩ 数字量开关状态输出:≥6 路;
(3)数据管理单元:
① 数据存储单元:至少 2TB,采用固态硬盘;
(4)供电电源:
① 供电电压:额定电压 24V;
② 供电功率:≤80W;
(5)环境适应性:
① 工作温度:-20℃~+55℃;
② 贮存温度:-55℃~+70℃;
③ 工作湿度:≤95%(+30℃)。
2.3 设备系统方案设计
船舶机舱监测设备主要用于对船舶设备各类信号进行采集,以及与某些设备或系统通信,并具备数据存储和高速传输等功能。此设备主要包括主控平台,振动、温度、模拟电压量与电流量信号采集模块,RS232、CAN、RS485 等通讯模块。
首先对于主控的选择作为监测设备的设计基础,也是整个设备布局规划的重要参考,鉴于机舱空间有限和严格的重量限制的条件下,主控平台应该尽量轻小型化、高度集成化。设备的需求包括多路模拟信号采集以及多路 RS232、
RS485 标准的 UART 和 CAN 总线通讯协议的通信,传统微处理器的串口、CAN
口资源受限,同时处理速度较慢,还需要考虑后续研究可能需要增加其他类型通道。因此,在这种采集并处理大量数据的场合下,选择采用 FPGA+CPU 组合进行这一系统的设计,利用 FPGA 并行处理在数据采集领域的优势和 CPU 任务控制、管理的优势,完成船舶机舱监测设备的设计。
对于 CPU 和 FPGA 的组合,经综合分析,船舶机舱监测设备的主控芯片选择方案大致为以下几种:ARM+FPGA、DSP+FPGA、PowerPC+FPGA、ZYNQ 等。
由于 CPU 的任务主要为任务调度,上述选择中 DSP 比较适合信号处理,且不太适合运行 Linux 系统,对其首先进行了排除。对于其它三种选择,基于设备应具备高性能、小型化、轻体积的要求,本设计选择 ZYNQ 系列 FPGA。此款芯片内部集成了 ARM 处理器以及 FPGA 芯片,两者在芯片中分别被称为处理系统 PS(Processing System)端与可编程逻辑部分 PL(Programmable Logic)
端,采用 AXI 协议连接,具备高性能、低延迟、高位宽的优势。这种集成方式不仅降低了系统的物理复杂性,简化了系统设计,也使得开发者能够用软硬件协同处理数据的方法设计系统,最大程度上发挥 ARM 处理器的任务分时处理优势以及 FPGA 的并行处理和具备丰富逻辑资源的优势错误****!****未找到引用源。。
对于 ZYNQ 内部所采用的 AXI 协议,主要采用主从设备之间“握手”的方式来进行通信,具体为两边采用 VALID 和 READY 信号对数据的传输进行控制,其传输协议时序图如图 2-1 所示。

其总体的工作流程是将模拟板和数字板作为与下层设备连接,获取采集的信号数据与设备通信数据,并将这些数据经过核心板卡缓存与处理,通过所设计的双冗余以太网总线与船舶主控台进行数据的通信。以下是各板卡的主要设计内容:
(1)模拟量板卡:船舶机舱监测设备中不可或缺的组成部分,承担着关键的功能。首先,振动信号采集与处理电路负责实时监测船舶机舱各关键部位的振动情况,监测机械部件的振动状况,通过采集的振动数据,系统可以实时分析并评估机械设备的运行状态,及时发现异常振动并预测可能的故障。其次,模拟电压量 AD 采集模块用于采集传感器输出的模拟电压信号,支持电源稳定性监测及电气参数分析。第三,模拟电流量 AD 采集电路负责测量电机、传感器等输出的模拟电流信号,帮助实时监测设备运行状态和电流负载情况。最后,温度量采集电路监测船舶机舱关键部位的温度,为引擎、电机等提供温度数据,实现温度控制和性能优化。这些功能为船舶监测系统提供了必要的数据基础,有助于确保船舶系统的正常运行,提前发现潜在故障并采取适当措施,从而保障船舶及其设备的安全、高效运行。
(2)数字量板卡:在监测系统中扮演着至关重要的角色,具备多项功能。
首先,多路 RS232 通讯电路允许与各种设备进行串行通信,便于获取设备状态或传感器数据。其次,多路 RS485 通讯电路支持多点通信,适用于连接远距离设备,它通过差分信号传输方式提高抗干扰性能,常用于连接船舶不同部位的设备,实现可靠的数据传输。第三,多路 CAN 通讯电路用于连接机舱内部的子系统或设备,如发电机系统、液位报警系统、电子舵机等,它支持高速数据传输和实时通信,确保系统内各个节点之间的协调工作,提高船舶系统的整体效率。
最后,数字量开关输出电路用于远程控制一些简单开关量设备。通过以上功能,可以提高系统的灵活性和通用化。
(3)主控板卡:船舶监测系统的核心部分,具备多重功能,包括 JTAG 烧录接口、SD 卡存储、PS_UART 串行调试、供电支持、双千兆网口电路、双 USB
接口电路,以及 SSD 固态硬盘接口电路。JTAG 电路和串口电路为船舶监测系统的软件及固件提供了调试和烧录能力,方便开发和维护。供电电路负责为整个底板以及连接的模拟量板卡、数字量板卡等提供稳定的总电源。双千兆网口电路提供高速网络连接,用于实现船舶机舱监测设备与其他系统的数据通信,保障高速数据传输。为了便于人机交互,提供 USB 接口,用于连接外部设备,例如 USB 存储设备、外部控制器等,实现数据传输和外设扩展。数据存储则采用集成式固态硬盘,加快数据的读写速度,提高系统性能。
这些功能的设计共同为船舶机舱监测系统提供了可靠的数据通信和多样的监测能力,同时这种独立的功能板卡设计具备较强的扩展性,能够适应未来可能的系统升级和功能拓展需求,有助于提高系统的效率、安全性和可操作性,确保船舶设备的正常运行和性能优化。
2.4 设备结构设计
设备安装于设备舱内部,按照要求,设备体积应不超过 160mm×160mm×
90mm,重量不超过 800g。设备平面应尽可能减少占用面积,应充分考虑减重设计。
