内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体






数字无中心系统呼叫控制协议的设计和实现(2)

时间:2014-01-24 来源:中国集群通信网 作者:不详 点击:

3.3 应用状态机实现呼叫控制协议

数字无中心呼叫控制协议利用有限状态机的设计方案进行描述和实现。有限状态机克服了纯硬件数字系统顺序控制方式不灵活的缺点,它能够架构性能良好的时序逻辑模块,以事件驱动的简易方式来解决复杂的程序流程问题。其可靠性优势明显,是目前嵌入式领域控制程序的通用解决方式。

通信流程中状态的设计是呼叫控制层协议实现的关键。完整而合理的状态转移过程也是程序实现的重要前提。呼叫控制层状态应包括呼叫控制流程周期中的每个典型状况。并且状态之间应该可以转换,不应该存在不能达到的状态或不能进入再次过程的死状态,同时对于要描述的特性没有意义的多余状态也应该避免。

3.3.1 用户A与B通信流程状态事件机

根据呼叫控制流程和呼叫控制信令的特点以及无中心体制的技术规范,呼叫控制状态机中共设计了S0~S4共5个状态。S0(待机状态)表示移动终端空闲时的默认状态;S1(发起呼叫中状态)为呼叫发起方拨号后的呼叫等待状态,S1被叫进行中的状态为被叫方接收到呼叫建立请求后的判断等待状态;S2(呼叫已建立状态)表示呼叫已建立成功,正在等待下一步进行通话;S3(发话中状态)为用户按下对讲机PTT键后传送通话语音的状态;S4(收话中状态)为用户正在收听对方通话语音的状态。通话结束后双方返回到S0(待机状态)。该状态机考虑了呼叫控制实际应用中的技术细节,实现了每一个状态在各种动作、事件激励下的可预期性转移。

3.3.2 呼叫控制程序的实现

呼叫控制程序应用嵌入式C语言在ARM7处理器中开发。设变量ccl_state存储当前状态的代码,next_state存储下一状态代码,利用Switch_Case语句以及对事件判断的if条件语句即可实现复杂的多条件、多分支的呼叫控制状态机。

在程序的设计过程中加入了ARM定时器。定时器在嵌入式系统中起着十分关键的作用。为节省频率资源无中心体制加入了通话限时功能,在通话限时开始后,需要启动定时器计时。定时器到时后产生IRQ中断,执行终止通话操作。为增加程序的可靠性,防止死状态的产生,在程序中也要加入对定时器超时事件的判断动作。各状态(除待机状态)一旦处于等待下一步动作的状态时,需要立即启动定时器进行超时判断。例如,呼叫建立时通过定时器检测对方应答时间,超时则返回S0待机状态。

4 呼叫控制协议的可行性和可靠性分析

呼叫控制流程、呼叫控制信令结构、呼叫控制的状态机三部分密不可分,构成了实现呼叫控制协议的基本要素。呼叫流程的设计考虑了无中心体制以及传统对讲机工作流程。

呼叫控制信令借鉴了ETSI TS 102 490-DPMR标准中数据链路层的信令帧结构并进行了改进。呼叫控制状态机应用UML模型设计了由通信事件、动作触发的五种可变迁状态。在逻辑上此呼叫控制协议充分模拟了实际应用中的呼叫控制的各种工作情景,理论上能够正确完成呼叫控制系统的功能。在实际嵌入式开发过程中,利用ARM7处理器的高速运行优势,在数据传输中对误码率要求严格的控制信令增加了数据链路层的差错控制编码,CRC循环冗余校验,汉明纠错编码,交织抑制连续突发干扰纠错编码,保证了控制信的准确传输。

令此外在呼叫控制程序中增加了防死状态的定时器中断,提高了程序的运行可靠性。本呼叫控制协议已实际应用到实验室数字无中心对讲机的样机开发中,运行稳定。

5 结 语

随着各种数字技术的迅猛发展,模拟的无中心系统在当前的技术环境下已显得捉襟见肘,对其进行全面数字化改造将是未来专网无线通信领域的重要工作内容。呼叫控制协议的数字化标准尚无正式版本推出,本文介绍的呼叫控制协议已应用到数字无中心对讲机的产品开发中,运行稳定,在功能上有待根据实际需求进行进一步的扩容和改进。


(中国集群通信网 | 责任编辑:陈晓亮)

中国集群通信网,国内首家集群通信专业网站。

Copyright © PttCn.Net, All Rights Reserved.   

联系我们 联系我们 中国集群通信网 对讲机学堂 对讲机世界