舰船科学技术  2023, Vol. 45 Issue (16): 129-132    DOI: 10.3404/j.issn.1672-7649.2023.16.026   PDF    
基于嵌入式CAN网关的船舶集成平台系统开发
邓威1, 沈守强2     
1. 黄河科技学院 应用技术学院,河南 郑州 450063;
2. 北京信息科技大学 理学院,北京 100192
摘要: 船舶集成平台系统是一个综合性的软硬件系统,用于管理和监控船舶的各种设备和系统。本文首先介绍嵌入式CAN网关的原理和功能,针对嵌入式网关的关键硬件进行分析,然后提出一种基于嵌入式CAN网关的船舶集成平台系统的设计方案,详细描述了集成平台系统的构成和功能,最后结合Socket软件开发工具,设计了基于嵌入式CAN网关的船舶集成平台系统的软件程序。基于嵌入式CAN网关的船舶集成平台系统具有较高的可靠性和稳定性,能够满足船舶管理和监控需求。
关键词: 嵌入式     CAN网关     集成平台系统     Socket    
Development of ship integration platform system based on embedded CAN gateway
DENG wei1, SHEN Shou-qiang2     
1. Faculty of Applied Technology, Huanghe Science and Technology University, Zhengzhou 450063, China;
2. School of Applied Science, Beijing Information Science and Technology University, Beijing 100192, China
Abstract: The ship integrated platform system is a comprehensive hardware and software system, which is used to manage and monitor various equipment and systems of the ship. This paper first introduces the principle and function of the embedded CAN gateway, and develops the key hardware of the embedded gateway. Then, this paper proposes a design scheme of the ship integrated platform system based on the embedded CAN gateway, and describes the composition and function of the integrated platform system in detail. The software program of ship integrated platform system based on embedded CAN gateway is designed. The ship integrated platform system based on embedded CAN gateway has high reliability and stability, and can meet the needs of ship management and monitoring.
Key words: embedded     CAN gateway     integrated platform system     Socket    
0 引 言

随着船舶信息化、智能化的发展,船舶内部自动化设备数量越来越多,为了加强船舶内部设备的监管水平,提高不同系统和模块之间的信息传递能力,设计和开发船舶集成平台系统成为一项研究热点。船舶集成平台系统通过对船舶信息的管理、船舶位置的跟踪、船舶通信的实现、船舶安全的监控和船舶运营的管理,提高了船舶运营的效率和安全性,具有非常大的应用潜力。

船舶平台系统的关键是信息网络的建设,本文重点介绍一种基于嵌入式CAN总线的信息网络,分别从CAN总线计算的原理、CAN网关设计以及船舶集成平台系统的开发等方面进行详细阐述。

1 CAN现场总线技术研究

CAN总线网络具有数据传输速度快、稳定性好等优点,CAN总线网络通常由CPU、CAN控制器、CAN收发器、节点、数据总线等组成,如图1所示。

图 1 CAN总线网络的构成原理图 Fig. 1 Schematic diagram of the composition of the CAN bus network

CAN传输总线的关键特性包括:

1)CAN数据帧特点

CAN总线使用数据帧来实现数据的高速传输,数据帧的详细格式包括起始位、标识符、控制位、数据位和CRC校验位等字段。其中,起始位用于同步数据传输,标识符用于区分不同的数据帧,控制位用于控制数据传输的流程,数据位用于存储实际的数据,CRC校验位用于检测CAN数据的完整性。

2)信息的确认机制

CAN总线采用一种确认机制来保证数据的可靠传输,每当一个节点发送数据帧后,其他节点会对数据帧进行检测和确认。如果数据帧被正确接收,接收节点会发送一个确认帧给发送节点,表示数据接收成功。如果数据帧发生错误,接收节点会发送一个错误帧给发送节点,表示数据接收失败。

3)CAN的仲裁机制

当多个节点同时发送数据帧时,CAN总线使用仲裁机制来确定哪个节点可以继续发送数据,哪个节点需要终止发送数据。仲裁机制基于标识符的优先级,优先级越高的节点可以继续发送数据,优先级较低的节点需要等待。

2 基于嵌入式的船舶 CAN 网关设计 2.1 测试

网关是CAN通信网络中实现互联互通的枢纽结构,也可以用于2个具有不同协议的网络互连,当网络的通信协议不同、数据形式和体系均不同时,网关可以作为翻译器搭建起2种系统。

在设计船舶集成平台的CAN网络时,本文采用的网关控制器为MCP2510。

MCP2510主要由4个部分组成:

1)CAN控制器

MCP2510的核心部分是CAN控制器,它负责处理CAN总线的通信协议。CAN控制器具有接收和发送CAN帧的功能,并提供了一些配置选项,如过滤器和屏蔽器,以过滤和筛选接收到的CAN帧。

2)SPI接口

MCP2510通过SPI(串行外设接口)与主控器连接。SPI接口提供了与主控器之间的通信通道,通过SPI接口,主控器可以向MCP2510发送命令和配置信息,以及接收来自MCP2510的状态和数据。

3)控制和配置寄存器

MCP2510还包含一组控制和配置寄存器,用于存储和管理CAN控制器的状态和配置信息。主控器可以通过SPI接口访问这些寄存器,以读取和写入相关的控制和配置信息,从而控制和配置MCP2510的行为。

4)CAN协议引擎

其主要作用是处理总线上的报文发送和接收逻辑,当CAN总线的数据发送时,CAN协议引擎首先将数据存储在报文缓冲器和控制寄存器中,如图2所示。网关控制器MCP2510共有3个发送缓冲区,2个接收缓冲区、6个滤波寄存器,还包括协议机和控制逻辑引脚。

图 2 网关控制器MCP2510原理图 Fig. 2 Schematic diagram of gateway controller MCP2510
2.2 基于嵌入式的 CAN 网关硬件结构设计

基于嵌入式ARM技术,设计了船舶集成平台的CAN网关,其硬件构成如图3所示。

图 3 基于嵌入式ARM的CAN网关硬件构成 Fig. 3 Hardware composition of CAN gateway based on embedded ARM

基于嵌入式ARM的CAN网关硬件核心是嵌入式处理器ARM S3C45B,该微控制器由韩国Samsung公司研发,是一种高性价比16/32位微控制器,ARM S3C45B微控制器的主要特性[1]为:

1)处理器核心。ARM7TDMI-S,采用RISC架构。它具有16/32位指令集,可执行高性能的32位运算,并支持长指令和thumb指令集模式。

2)主频和存储。ARM S3C45B的主频通常在几十兆赫兹到数百兆赫兹之间,具体取决于系统设计。ARM通常集成了片上存储器,包括快速的闪存和SRAM,可用于存储程序代码和数据。

3)外设接口。ARM S3C45B具有多个外设接口,包括UART(通用异步收发器)、SPI(串行外设接口)、I2C(串行通信接口)和USB(通用串行总线)。这些接口可以用于与其他外部设备进行通信和数据交换。

4)定时器和计数器。该微控制器还包含多个定时器和计数器通道,可用于测量时间、进行定时操作和产生精确的时间基准。

5)ADC和DAC。ARM S3C45B集成了模数转换器(ADC)和数字模数转换器(DAC)[2],可以用于模拟信号的输入和输出。

6)电源管理。该微控制器具有多个电源管理功能,包括低功耗模式和电源管理单元(PMU),可以在系统的不同工作模式之间实现有效的功耗管理。

基于嵌入式ARM的CAN网关参数如表1所示。

表 1 基于嵌入式ARM的CAN网关参数表 Tab.1 Parameter table of CAN gateway based on embedded ARM

针对船舶集成平台的CAN网关数据噪声问题,本文采用高斯低通滤波器降低信号中的噪声分量,其模型如下:

$ H(f) = \exp \left[ { - (\frac{{{\rm{ln}}2}}{2}){{(\frac{f}{{\text{B}}})}^2}} \right] 。$

式中,B为通信的带宽。

高斯低通滤波器响应特性方程为:

$ h(t) = \frac{{\sqrt {\text{π}}}}{\alpha }\exp \left[ { - {{\left( {\frac{ \text{π} }{\alpha }t} \right)}^2}} \right] \text{。} $

式中, $ \alpha = \sqrt {\displaystyle\frac{{\ln 2}}{2}\frac{1}{B}} $

3 基于嵌入式CAN网关的船舶集成平台系统开发 3.1 船舶集成平台系统的整体设计

船舶集成平台系统作为船舶信息的枢纽,需要具备采集、分析、处理和转发船舶自动化设备数据的功能,同时,集成平台也需要建立大型数据库,存储和管理船舶日常的各种通信、导航数据,实现全船数据共享,提高船舶的信息化和监控水平[3]

集成平台位于船舶集控室和驾控室内,通过CAN总线与船舶主机、服务器、网关等连接,图4为基于嵌入式CAN的船舶集成平台系统原理图。

图 4 基于嵌入式CAN的船舶集成平台系统原理图 Fig. 4 Schematic diagram of ship integrated platform system based on embedded CAN

船舶集成平台管理系统的特点和优势包括:

1)集成性。该系统能够集成各种船舶管理功能,如船舶位置监控、航行路线规划、船舶维护保养等,实现全面的船舶管理。

2)实时性。该系统能够实时监控船舶的位置和状态,及时获取船舶的相关信息,实现对船舶的实时管理和监控。

3)自动化。该系统能够自动化处理船舶管理流程,减少人工操作,提高工作效率。

4)数据分析。该系统能够对船舶数据进行分析,提供数据报表和统计分析,帮助管理者更好地了解船舶运营情况,做出决策。

5)安全性。该系统能够确保船舶的安全,包括防止船舶被非法入侵、及时发现船舶故障等。

6)环保性。该系统能够监测船舶的排放情况,提供环保指标,帮助管理者监控和改善船舶的环境影响。

7)统一管理。该系统能够统一管理多艘船舶,集中管理船舶的各项信息和操作,提高管理效率。

8)可扩展性。该系统具有良好的可扩展性,可以根据实际需要进行功能扩展和定制化开发,满足不同船舶管理需求。

3.2 基于嵌入式CAN的船舶集成平台数据库设计

考虑到集成平台系统船舶监控数据信息查询和响应的快速性需求,采用Apache Solr数据库索引服务器实现数据的管理。

Apache Solr是一个开源的搜索平台,具有高效、可扩展、分布式的搜索和数据分析功能[4],其特点包括:

1)Apache Solr使用了倒排索引的数据结构,可以快速地检索和分析大规模的文本数据。它支持复杂的查询语法和过滤器,可以进行全文搜索、排序、分组、过滤、统计等操作。

2)Apache Solr提供了丰富功能和插件,可以支持多种数据源和数据格式的索引和搜索。它可以与关系型数据库、NoSQL数据库、文件系统等进行集成,并提供了RESTful API和各种客户端库,方便开发者进行数据的索引和搜索。

3)Apache Solr还支持分布式部署,可以横向扩展以处理大规模的数据和请求。它提供了高可用性和容错性的机制,可以自动进行数据的复制和故障恢复。

Apache Solr可以用于构建全文搜索引擎、数据分析和实时搜索等应用,易于集成和使用,通过API接口与外部环境相连接。

基于Apache Solr数据库的船舶集成平台系统数据处理流程如图5所示。数据报文首先进入数据队列和应用层服务端口,然后判断是否为服务消息,如果是服务消息则进入应用层和管理层处理函数进行处理,最后输出报文。

图 5 基于Apache Solr数据库的船舶集成平台系统数据处理流程 Fig. 5 Data processing flow of ship integrated platform system based on Apache Solr database
3.3 基于嵌入式CAN的船舶集成平台软件开发

基于嵌入式CAN的船舶集成平台软件开发采用Socket套接字编程技术,其包括服务层和客户层2个模块[5],通过数据接口连接,基本原理如图6所示。

图 6 Socket技术的基本原理图 Fig. 6 The basic principle of Socket technology is shown in the figure
4 结 语

嵌入式ARM 的CAN网关技术在通信传输速度、集成度、可靠性等方面具有优越性,为了提高船舶通信、导航系统的性能,本文结合嵌入式ARM 的CAN网关技术开发了船舶的集成平台系统,并从网关控制器开发、平台硬件设计、软件开发等方面进行研究,重点设计了系统的数据和软件,系统具有较高的稳定性和可靠性。

参考文献
[1]
李安戈, 张金梁, 崔颖, 等. 智能船舶系统总体技术方案应用设计研究[J]. 船舶标准化与质量, 2020(2): 57-61.
[2]
庞宇, 赵凡琪, 吴骏. 智能船舶集成平台的研究与设计[J]. 船舶, 2019, 30(5): 105-115.
[3]
刘秀敏. 综合船舶导航集成系统中的云平台架构设计[J]. 舰船科学技术, 2019, 41(16): 148-150.
LIU Xiu-min. Cloud platform architecture design in integrated ship navigation integrated system[J]. Ship Science and Technology, 2019, 41(16): 148-150.
[4]
倪天颖. 船舶导航集成系统的分析与研究[J]. 船舶物资与市场, 2019(3): 40-41.
[5]
林晨, 周晓梅, 王敏. 智能船舶集成平台数据采集技术研究与实践[J]. 上海船舶运输科学研究所学报, 2018, 41(2): 59-64.