李丽华
(海军工程大学,武汉430033)
网络化车钟通信的设计与实现
李丽华
(海军工程大学,武汉430033)
文章阐述了网络化车钟通信硬件控制设计、网络化组成以及通讯协议的编制,着重介绍了所设计的控制电路以及软件通讯规约。其中的关键技术是车钟通信系统的CAN总线的网络化实现。
CAN车钟通信
目前国内车钟一般采用模拟方式或开关量式通讯,模拟式车钟是利用电位器产生连续电流或连续电压信号传令,由于模拟器件参数的离散性以及传输过程中的信号被干扰,容易造成信息的误差,从而引起系统的不稳定,降低了系统的可靠性;开关量式通讯时用按键开关传令,发送车位信息为整档位车令,结构简单但需要较多开关量信号且只能“一线对一点”,不利于扩展,通用性很差。
网络化车钟通信采用CAN总线协议完成各个舱位车钟模块之间的通讯,只用一对双绞线即可完成所有通讯,所有网络车钟节点都可同时接收,且可根据系统需要增减模块而无须改动。同时其抗干扰性能大大提高。
较大型船舶的推进系统操作地点多、操作方式多,一般需要多个车钟节点的信息互通以及必需的人机交互功能,因此它们各自有本地的通讯收发、键盘输入、数码管显示以及操作方式指示和蜂鸣器报警等功能。
每个车钟分别作为一个节点由CAN总线构建局域网,进行数据的传输,满足实时性的要求;维护方便,且易于扩展,操作模拟训练箱和VDR数据采集系统可方便的与该网络交换数据。基于CAN总线的车钟系统通信的网络连接见图1所示。
图1 车钟通信CAN网络连接示意图
1.1硬件设计
每个车钟通信节点的控制电路主要包括MCU及其扩展电路(存储器、电源监控芯片、晶振、总线驱动与锁存等),CAN总线控制电路和电源、按键与显示等。
MCU采用单片机196KC,主要完成对键盘显示芯片8279、CAN控制器和数码管、指示灯的处理等任务。操作方式信号包括集控自动、遥控自动、电操、手操等隔离后输入到集控车钟单片机的P0口。所有的输入与输出的信号包括按键的行列信号、数码管的段码信号、指示灯的驱动信号、蜂鸣器的驱动信号等均通过光耦TLP621隔离。
CAN模块主要由3部分组成:独立CAN通信控制器、CAN总线驱动器和高速光电耦合器。CAN控制器采用PHILIPS公司的SJA1000芯片,它是一款独立CAN控制器,具有优秀的EMI、EMC性能,适合用于工业环境中的控制器局域网络,可直接与196KC接口。SJA1000片内的存储单元相对196KC来说是片外的数据存储器,因此,可以按照扩展片外数据存储器的形式来访问SJA1000的寄存器地址。把196KC的ALE、RD、WR和SJA1000的ALE、RD、WR相连就构成一个最小系统节点。196KC通过地址总线经译码来选通SJA1000,并由此决定CAN控制器各寄存器的地址,通过读、写外部数据存储器的形式来访问SJA1000。SJA1000可工作于BasiaCAN模式或PeliCAN模式,完全支持具有很多新特性的CAN 2.0B协议。CAN收发器采用PHILIPS公司的TJA1050芯片,TJA1050是CAN控制器和物理总线之间的接口。此器件对总线提供差动发送能力,对CAN控制器提供差动接收能力。通讯速率可以设定在5 kbps~1 Mbps之间,可满足远距离传输数据时的低速率要求。TJA1050芯片具有良好的EMC性能,在不上电状态下有理想的无源性能,并集成有完善的总线保护功能。采用高速光耦来实现收发器与控制器之间的电气隔离,保护控制系统电路。
电源为三块DC-DC模块,采用朝阳的4NIC—DC15/05,15V输入,5V输出,分别为CAN隔离电源、芯片电源以及输入输出隔离电源。
按键采用行列式,通过光耦隔离后连接到键盘芯片8279。当有按键按下时8279自动消抖并产生中断通知单片机读取键码。按键设“前进、后退、微升、微降等。
数码管采用段码式高亮数码管,其段码信号、片选信号通过光耦隔离后连接到显示芯片8279。前两个数码管主要用于发令显示,后两个用于回令显示。
指示灯采用高亮LED,可指示当前的操作方式、传令与回令的状态。
单个车钟通信节点的原理框图如图2所示。
图2 车钟通信原理框图
1.2软件
车钟通信软件由汇编语言编写,基于CAN总线车钟的软件设计的指导思想是友好性、安全性、容错性。软件设计充分体现模块化,并适当考虑软件冗余。该软件主要由4大模块组成:主程序模块;CAN通信模块;键盘输入模块;LED显示模块。各模块在不同节点上根据功能要求有所不同。车钟通信软件要完成的功能是:网络化车钟通信的主车钟节点发送车钟命令,其他车钟通信节点LED均可显示当前发送车令,但只有对应节点可回令,同时伴随声响,其他节点无法回令以免混乱,若有节点偶然失电重启可恢复当前车令显示。
在本网络化车钟通信软件设计中充分考虑了抗干扰以及容错技术,以及整体的安全性、方便性以及可扩展性。
2.1上电初始化
1)合电源开关,所有车钟上电复位,数码管显示“+0+0”,指示灯不亮。
2)各车钟延时后向主车钟发送初始化请求命令,请求主车钟发送当前操作方式信息(若运行中断电后重新上电或者复位可保证及时显示当前必要信息)。
3)主车钟查询当前操作方式信息并发送给其他车钟。所有车钟代表当前操作方式的指示灯(若有)亮,初始化完成。
2.2运行中操作
1)主车钟查询到此时操作状态为“遥控自动”,通过CAN发送给其他车钟。
2)主车钟按下车令比如“+3”,此时前两个数码管闪烁显示+3,蜂鸣器响。
3)主车钟按下“确认”键确认,将+3通过CAN总线传给目的车钟,若此时不按“确认”键,而按下其他车令,前两个数码管将闪烁显示最新车令,按下“确认”键将传送最新车令。
4)所有车钟前两个数码管闪烁显示“+3”。
5)目的车钟回令,若正确则完成指令,所有车钟四个数码管稳定显示,源地址车钟与目的地址车钟蜂鸣器停止鸣响。其他车钟回令无效。
基于CAN总线的单片机车钟通信系统相对于用中小规模集成芯片来构建车钟系统,电路简单,可靠性高,非常易于功能的扩展,可以适应多点、多种操作方式的信息传输以及与上位机的通讯。设计中软硬件充分考虑了抗干扰以及容错技术。该方案在技术上是先进的、适用的,以196单片机为控制核心,以SJA1000控制器构成CAN总线,大大减少了电缆连接数目,提高了维修性,方便了接线与调试,同时也提高了抗干扰能力。网络化车钟通信系统组建方便、简单,成本也不高。
该装置经与监控系统实地联合调试运行,完全能达到所预期的功能,其可操作性与稳定性较好。
[1]许爱卿.Intel16位单片机.北京:航空航天大学出版社.
[2]胡汉才.单片机原理及其接口技术[M].北京:清华大学出版社,1995.
Design and Realization of Communication on Network Telegraph
Li Lihua
(Naval University of Engineering,Wuhan 430064,China)
This paper expatiates the control technology of communication hardware andsoftware,network form and communication protocolmation extraction of network telegraph.It introduces the circuit,the flow chart of thesoftware which is used in the interface.The key techniques in the man-machine interface is how to realize networked CAN bus for the communication telegraph.
CAN;telegraph;communication
TP368.1
A
1003-4862(2015)10-0078-03
2015-08-14
李丽华(1977-),女,硕士。研究方向:无线通信与网络通信。