APP下载

基于STM32F7的具有3CAN2以太功能的船用监控屏的设计

2017-02-02罗宁昭

船电技术 2017年12期
关键词:IP地址以太网电脑

王 征,罗宁昭,聂 冬



基于STM32F7的具有3CAN2以太功能的船用监控屏的设计

王 征1,罗宁昭2,聂 冬3

(1. 海军驻广州某军代室,广州 51000;2. 海军工程大学武汉 430033; 3. 海军驻722所军事代表室,武汉 430070)

本文结合船用电气设备双冗余通信的实际需要,以高性能的STM32F767单片机为硬件基础,该单片机含有3个CAN接口和1个Ethernet接口,将一个UART接口用IPort-3转换成Ethernet接口,用轻量级TCP/IP管理工具lwIP来管理Ethernet,显示采用7寸RGB屏,最终达到预期设计要求。

双冗余 STM32F767 CAN Ethernet

0 引言

现代船舶为简化系统结构,通常采用全船统一的平台网完成设备之间的通信,设计要求电力系统设备对外通过双冗余CAN网和双冗余以太网进行数据通信。同时由于设备内部也是使用CAN总线进行通讯行,这就要求设备至少具备两个CAN接口和两个Ethernet接口,接口要求高。传统MCU一般不具备多种接口,同时考虑到大流量数据的通信和稳定性,选用高性能的STM32F767,用ZLG公司的IPort-3将一个UART接口转换为Ethernet接口,实现3CAN2以太,显示屏采用ATK-7’RGBLCD V1.3,分辨率800*480,系统硬件接口简化图如图1所示。

1 硬件设计

CAN通信收发芯片采用ADM3053,进行完全隔离的CAN通信;Ethernet通信收发芯片采用LAN8720A,高性能低功耗,采用RMII接口,集成10/100 MBps自适应以太网速率;ATK公司的ATK7084屏幕可以跟STM32F767直接接驳,使用方便稳定;设计四个按钮进行监控屏界面的功能控制;加装纽扣电池,可以掉电保存数据;一路JTAG调试接口,制作好的电路板实物如图2所示。

图2 电路板实物

2 软件设计

ST公司推出图形化编程工具HALCOGEN,可以节约部分基础代码的开发时间,使用STM32CubeMX进行基础代码的配置,包括CAN、UART、IO口、时钟等,配置完后可以直接使用三路CAN,在两路CAN冗余通信方面进行修改;关于将UART通过IPort-3转换成Ethernet的程序可以参考ZLG的官方程序进行修改;以太网部分较前两部分比较复杂,因为HALCOGEN代码生成器工具只能生成基础的以太网配置代码,这其中是不包含协议栈。TI提供的资源里已经有LwIP协议栈在该型芯片上的移植,所以采取LwIP协议栈实现以太网模块。

LwIP部分:LwIP是一个小型开源的TCP/IP协议栈。完成移植之后的LwIP协议栈不需要了解底层的函数信息,只需要对LwIP协议栈中的需要的函数进行调用就可以完成以太网通信。由于只用到UDP通信的部分,因此只对该部分进行简单地说明:

lwIPInit():对LwIP协议栈进行初始化。下面是初始化的程序说明:

u8 lwip_comm_init(void)

{ u8 retry=0;struct netif *Netif_Init_Flag; //调用netif_add()函数时的返回值, 用于判断网络初始化是否成功

struct ip_addr ipaddr; //ip地址

struct ip_addr netmask; //子网掩码

struct ip_addr gw; //默认网关

……}

LCD部分:初始化对数值、长度、笔色颜色、背景色等进行设置。

IPort-3部分:由于IPort-3可以提供TCP Server, TCP Client, UDP 和 Real COM driver 等多种工作模式,因此需要对模块进行一定的设置,使该模块工作在UDP模式并将收到的数据发向指定的IP和端口。IPort-3可以通过网线与电脑相连,在电脑上安装ZNetCom软件就可以通过图像化的交互完成对IPort-3的设置。

主程序将各部分功能组合在一起。

3 实验测试

利用STM32的内部以太网MAC+外置PHY实现网络连接。本设备开启了LWIP的DHCP功能,可以自动从路由器获取IP地址,也可以关闭DHCP,使用默认静态IP地址,默认静态IP地址为192.168.1.30,当联网完成以后可以在电脑上向开发板发送Ping包来测试网络是否通畅。使用ULINK2下载和调试程序,电脑端使用ZNetCom进行以太网通讯冗余通信测试,在屏幕上显示通信连接结果。

图3 通信连接结果

CAN部分的测试利用ZLG公司的CANAnalysII调试工具,电脑端使用CANTest测试软件,速率500K,对每路CAN进行通信测试,软件接收到的CAN数据帧如图4。

序号传输方向时间标识帧ID帧格式帧类型数据长度数据(HEX) 250接收11:28:53.458.018数据帧标准帧0x0844 45 46 47 48 49 4a 4b 251接收11:28:53.692.018数据帧标准帧0x0845 46 47 48 49 4a 4b 4c 252接收11:28:53.911.018数据帧标准帧0x0846 47 48 49 4a 4b 4c 4d 253接收11:28:53.130.018数据帧标准帧0x0847 48 49 4a 4b 4c 4d 4e 254接收11:28:53.348.018数据帧标准帧0x0848 49 4a 4b 4c 4d 4e 4f 255接收11:28:53.567.018数据帧标准帧0x0849 4a 4b 4c 4d 4e 4f 50

4 结论

使用这样一套硬件和软件解决方案可以很好的实现双冗余的以太网通信和CAN通信,并保证有独立的一个CAN网络进行内部通信,同时可以设计多个按键进行操作,界面除了在程序上纯画图之外还可以使用GUI进行图形化界面构图,丰富界面,达到新型船舶监控屏的使用要求。

[1] 丁瑞等. DSP下CAN总线双冗余通信机制的设计与实现[J]. 计算机工程与设计, 2014,(08_.

[2] 刘力军等. 双以太网冗余通信系统的设计与应用[J].工业控制计算机, 2005, (07).

[3] 王海平. 双冗余CAN总线在船舶通信中的可靠性分析[J]. 中国新通信, 2015, (09).

Design of Marine Monitoring Screen with 3CAN2 Ethernet Function of Ship Based on STM32F7

Wang Zheng, Luo Ningzhao, Nie Dong

(1.Naval Representatives Office in Guangzhou, Guangzhou 510000, China; 2.Naval Univ. of Engineering, Wuhan430033, China; Naval Representatives Office in 722 Research Institute, Wuhan 430070, China)

TP39

A

1003-4862(2017)12-0027-02

2017-09-15

王征(1978-),博士,工程师,研究方向:电气工程。E-mail: liyihs2013@163.com

猜你喜欢

IP地址以太网电脑
电脑
电脑节来了
电脑能够自己思考吗?
基于1500以太网养猪场的智能饲喂控制系统的设计与实现
铁路远动系统几种组网方式IP地址的申请和设置
IP地址切换器(IPCFG)
基于SNMP的IP地址管理系统开发与应用
谈实时以太网EtherCAT技术在变电站自动化中的应用
公安网络中IP地址智能管理的研究与思考
强化学习及其在电脑围棋中的应用