基于CANopen协议的矿用语音通信系统研究-自动化毕
2013-08-29 01:07
导读:自动化论文毕业论文,基于CANopen协议的矿用语音通信系统研究-自动化毕论文模板,格式要求,科教论文网免费提供指导材料:
1 引言
现场总线的研究与应用早已成
1 引言
现场总线的研究与应用早已成为工业数据总线领域的热点,CAN 总线作为一种技术先进、可靠性高、功能完善、成本合理的远程网络通讯控制方式,已被广泛应用到自动化控制系统中。由于CAN 本身并非一个完整的协议,因而进行高效率的通讯还需要进一步开发高层协议,而CANopen 协议就是建立在CAN 协议物理层和数据链路层基础上的标准化应用层协议,其采用面向对象的思想设计,具有很好的模块特性和很高的适应性,且精练透明、易于开发。本文围绕由微控制器PIC18F458和语音处理芯片AMBE-1000 构成的语音通信系统研究了CANopen 协议在基于CAN 总线的语音通信系统中的应用情况。
2 语音通信系统的硬件设计
2.1 系统原理
系统由上位机,网关,节点,中继等组成,利用已有的CAN 总线实现实时语音和监控数据的传输。通信过程为:语音数据通过麦克采集输入后经A /D 转换变成数字信号,而语音处理模块AMBE-1000 对数字信号压缩编码后传送给本地微处理器PIC18F458, 然后微处理器通过CAN 收发器将收到的数据经CAN 总线送给远方微处理器。相应的,远方微处理器对收到的数据经过上述步骤的反向处理最终还原为语音信号并由喇叭播放。当没有语音信号需要处理传输时,系统自动开启MP3 功能播放背景音乐。
2.2 信道接口设计
微控制器采用Microchip 公司的PIC18Fxxx 系列芯片,其内含有A/D、内部EEPROM 存储器、CAN 控制器、SPI 接口、FLASH 程序存储器读/写等强大功能。
语音处理模块采用Digital Voice Systems 公司推出的语音压缩/ 解压芯片AMBE-1000,其压缩率可在2.4kbps-9.6kbps 范围内由软件调节,且具有FEC(前向纠错)、VAD(语音激活检测)功能和DTMF 信号检测功能。
(科教作文网http://zw.ΝsΕAc.com发布)
AMBE-1000 与微控制器PIC18F458 进行通信的信道接口为串行SPI 接口,有两种工作模式:主动模式和被动模式。本系统定义AMBE-1000 的引脚CH_SEL1~CHSEL0 将AMBE-1000 设置为串行被动模式,串口存在于帧格式下,通过模拟标准SPI 通信时序实现数据包的传输。
3 CANopen 协议的实现
在系统中,选取网关为主节点,其它节点为从节点。主节点除了具有启动/停止网络、检查网络工作状态等功能外,还定义了网络设备的标识符和访问对象字典入口。
3.1 标识符的分配
主节点通过上位机发出的标识符字来改变从节点的状态。在CANopen 协议应用层,设备之间交换的是通讯对象(COB),它们被映射到带有标识符(ID)的CAN 帧中,然后在数据链路层上传输。
在CAN 标识符缺省的默认值分配方案中,COB-ID 有11 位,由4 位Function Code 和7位Node-ID 组成,Function Code 已经确定,网络中不同的Node-ID 就决定了COB-ID 编码。
在本设计中,井下节点以分组形式存在,每小组节点数不超过14 个(0 不可用,1 为主节点的Node-ID)上位机与井下节点通话分为广播、组播、点播,分组数不超过3 个。同时考虑到PIC18F458 的缓冲器结构,节点的号定义为:0x01-0x03,节点的组内节点号0x02-0x0F,各节点Node-ID 分配如表1 所示。
11 位COB-ID 中,高四位为功能码,语音模式时标识id6 位为0 ,MP3 模式时标识符id6位为1,id4-id5 位为小组号,id0-id3 位为每一小组内的节点号。通过对11 位中低4 位验收屏蔽滤波器进行屏蔽,对高7 位进行滤波实现广播、组播、点播等功能。语音模式下,广播时使用PIC18F458 的验收滤波寄存器2,组播和点播时使用验收滤波寄存器3;Mp3 模式下,广播时使用PIC18F458 的验收滤波寄存器4,组播和点播时使用验收滤波寄存器5。
(转载自http://zw.nseac.coM科教作文网)
3.2 对象字典的建立和变量的传输
CANopen 协议网络中每个节点都有一个对象字典,它包含了描述这个设备和网络行为的所有参数。下面以主节点对象字典的建立为例说明对象字典的建立方法。
每个PDO 都对应一个通信对象和一个映射对象;本系统中存放第一个发送PDO 通信参数的对象为0X1800,存放该PDO 影射参数的对象为0X1A00。其中对象0X2000子索引0x01 处存放语音模式下广播变中的数据量,以下的变量类同;首先通过读取1800H中的通讯模式,然后,读取0X2000 中的数据帧的具体内容,通讯时,将确定通讯模式的相关信息和具体数据帧的地址信息按CANOpen 的映射规则写入1A00H 中,从而完成PDO 的发送与接收。
3.3 CANopen 软件实现
在整个CANopen 网络中,SYNC 报文的优先级最高,因此用它来传送同步信号,保持各节点间的同步,并且用来触发PDO 报文的发送。Time-Stamp 报文的优先级比SYNC 稍低,它用来传送时钟信号,当主站需要各节点校时时,主站通过串口发出校时报文给主节点,然后主节点在全CAN网范围内转发包含时钟信息的Time-Stamp 报文,子节点收到后完成校时。