基于数字集群电台融合通信的实现方法
2013-08-30孙嘉鹏
孙嘉鹏
(河北远东哈里斯通信有限公司河北石家庄050200)
1 引言
随着科学技术的发展进步,各种通信手段层出不穷,为不同行业带来了巨大的便利。但由于各种通信手段的互相独立性,各部门之间不能相互联络,为跨行业跨部门的联合行动,带来了较多不便。从目前来看,各种通信手段的相互整合已经是一个急待解决的问题。
数字集群系统依靠其连接快速、信道复用率高、声音清晰和可靠性高等特点,已经在各行业应用得到了广泛的应用,主要的应用行业包括:公安、人防、交通和电力等。数字集群电台的功能都是依靠电台本身的操作来完成,通过电台面板或手段来实现,在应用上有一定的局限性。在一些应用领域需要将数字集群电台功能集成到应用软件中,因此需要对数字集群电台进行二次开发,通过数字集群电台的二次开发接口实现应用软件对电台的控制。
2 数字集群电台二次开发接口
数字集群电台的二次开发接口因电台型号的不同,接口形式和管脚定义也有所不同,有些型号电台采用了RS232接口形式,通过AT命令集实现控制,如EADS电台;有些型号电台采用了SB9600接口形式,通过私有定义协议实现,如Motorola电台。通过AT命令集实现方式比较简单,在此不再描述。本文主要以摩托罗拉公司的ASTRO XTL 2500电台为例,详细介绍数字集群电台接入单元系统软硬件结构及二次开发口的接口形式和实现方式。ASTRO XTL 2500电台是美国摩托罗拉公司生产的符合P25标准的数字集群车载电台。P25是Project 25的简称,是全球开放的数字集群通讯标准之一。P25由美国国际公共安全通信官员协会(APCO)、国家电信管理者协会(NASTD)和联邦政府用户与电信工业协会(TIA)合作制定推行的,提供给各无线电业者遵循。P25标准主要应用于美洲市场(美国市场最多),另外在中东、亚太、俄罗斯等地区有少量的分布。
通过数字集群电台的二次开发接口可以实现应用软件与电台的连接,从而实现软件对电台的控制,包括:转组、私密呼叫、PTT控制和接收私密呼叫等,再将电台收发的音频信号接入系统,即可实现数字集群电台与其他制式电台、电话或手机等不同设备间的融合通信,系统应用环境示意图如图1所示。
图1 数字集群电台二次开发接口应用环境示意图
3 电台接入单元硬件系统结构
数字集群电台接入单元硬件部分主要由二次电源模块、CPU模块、串口扩展模块、音频电路模块、调试串口模块、以太网口模块和电平转换模块组成,系统框图如图2所示。
各模块主要描述如下:
①二次电源模块[1]:把DC12V转换成主控电路板需要的+5 V、+3.3 V电源;
②CPU模块 [2]:使用三星公司出品的一款ARM处理器,并配置了CPU系统需要的Flash和SDRAM芯片;
图2 数字集群电台接入单元系统框图
③串口扩展模块:使用异步通信芯片SC16C554来实现串口扩展,通过该芯片可以扩展出4个串口,用于连接电台的SB9600接口、主控设备接口(连接上位机)和用于长距离通信的备用串口模式的RS422接口;
④音频电路模块:包括音频放大电路和转换电路,其中音频放大电路用于调整音频信号的幅度,转换电路用于转换音频的形式,以方便与不同的外部设备音频接口连接;
⑤调试串口模块:使用CPU自带的UART0做为软件的调试串口;
⑥以太网口模块:用于实现数字集群电台接入单元的系统升级;
⑦电平转换模块:进行串口TTL电平信号和电台SB9600接口的差分信号的转换。
4 电台接入单元软件系统结构
数字集群电台接入单元软件系统主要由BOOTLOADER、LINUX KERNEL、驱动程序和应用层接口线程组成,系统框架图如图3所示[3]。①BOOTLOADER:嵌入LINUX的启动引导部分,它完成基本硬件的初始化,并加载嵌入LINUX内核,在本系统中具体使用的BOOTLOADER是PPCBOOT;② LINUX KERNEL:本系统的嵌入操作系统,它提供了操作系统的基本功能,该内核针对ARM处理器S3C2410裁剪而成;③驱动程序:对应系统中各个硬件接口,实现其相应的驱动程序,其中网口驱动为内核级驱动,直接编译到了KERNEL中,其余驱动采用MODULE的形式动态加载;④应用层接口线程:系统的各项功能通过相应线程来实现,对应每一个驱动模块,从而实现应用软件对底层硬件模块的控制。
图3 软件系统模块构成
下面对电台接入单元用到的通信线程进行简单描述:
①主机通信线程和RS422线程,用于电台接入单元与应用服务器之间的通信。根据不同的通信距离,选择不同的通信线程,主要实现应用软件与电台的通信控制,为应用软件与电台的数据交互提供通道;
②SB9600线程是实现电台接入单元与电台设备间的通信控制,完成了电台接入单元与电台设备的双向通信;
③IO控制线程主要实现了CPU对各种IO接口的连接操作,完成对电台接入单元的各种外围设备的控制;
④网口线程主要是实现对CPU的固件升级,为后续的功能扩展提供条件;
⑤维护管理主要完成对整个CPU软件的维护管理,包括Watchdog、日志输出和内存审计等功能。
5 二次开发的关键技术及实现方法
ASTRO XTL 2500电台的尾部有一个26针的二次开发口,该开发接口包含着两个异步串行总线:SB9600总线和RS-232/USB串行总线。SB9600总线接口可以作为电台控制头和一些电台外部不同硬件模块的控制器。而RS-232/USB总线用作电台编程接口。二次开发需要用微控制器控制电台的转组、发起呼叫、以及智能语音检测的PTT等操作,需要使用SB9600总线进行通信控制。SB9600总线使用了摩托罗拉公司的专有协议,由BUS+、BUS-、BUSY和RESET4根信号线组成。其中BUS+、BUS-和BUSY,3根数据线可用于与微控制器的异步通信,但是为了增加通信距离,协议数据是以差分信号的形式通过BUS+和BUS-传输,微控制器想要与电台通信,则需对信号进行转换。
图4 电平转换模块的电路框图
通过对电台电路及SB9600总线时序进行分析,使用运放的共模输入将差分信号转换为TTL电平,通过串口扩展模块,将电台数据传给控制器,而控制器的数据则通过串口扩展模块传输,再经数字门电路的驱动和三极管的逻辑转换后,发送给电台。BUSY信号经过类似的转换作为控制器串口的CTS和RTS控制信号。电平转换模块的电路框图如图4所示[4-6]。
通过示波器测量及消息测试,电平转换模块能够实现SB9600串行总线接口和UART串行总线接口数据格式的相互转换,使微控制器和电台之间可以相互通信。根据电台的通信协议,分别发送测试数据消息,电台能够执行相应操作,从而实现了应用软件对电台的控制,测试数据消息表1所示。
表1 电台测试消息数据
使用测试软件对电台通信信道进行呼损测试,在近50 000次的呼叫测试中,仅有6次返回的消息错误,呼损远低于系统要求的0.05%,满足了系统通信稳定性的要求。
6 结束语
通过长时间的测试及用户近2年的实际使用证实,经上述对数字集群电台的二次开发,可实现微控制器对电台的稳定控制,模拟电台的相应控制头的操作,这样不仅可以与相同制式的手台和电台通信,还可实现与其他种类电台、电话、手机和调度系统终端等的融合通信,达到持一种终端就可与多部门进行通信的能力,提高紧急情况下的综合指挥调度能力,为救援抢险争取宝贵的时间。
[1]郭玉辉,王彦瑜,黄继江,等.嵌入式电源控制器设计[J].核电子学与探测技术,2008,28(2):299-301.
[2]刘 凯.ARM嵌入式应用技术基础[M].北京:清华大学出版社,2009.
[3]张邦术.嵌入式软件设计之思想与方法[M].北京:北京航空航天大学出版社,2009.
[4]黄 争,李 琰.运算放大器应用手册[M].北京:电子工业出版社,2010.
[5]康华光.电子技术基础模拟部分(第四版)[M].北京:高等教育出版社,1999.
[6]阎 石.数字电子技术基础(第四版)[M].北京:高等教育出版社,1998.