APP下载

基于TMS320F2812 DSP的CAN总线矿用语音通信系统设计*

2013-11-02梅申合廖晓纬沈晓波

关键词:标识符寄存器邮箱

梅申合,廖晓纬,沈晓波

(1.安徽大学电子信息工程学院,合肥230601;2.淮南师范学院电气信息工程学院,安徽淮南232038)

煤炭产业是我国的基础产业,煤矿安全是煤炭企业健康稳定发展的重要保障。如何保持调度室与井下通信实时是保证煤矿安全生产的关键环节。现在许多煤矿的井下广播仍使用着传统的调度通信系统,调度电话分布数量有限,且通信电缆长度有限,数量过多的通信电缆也容易遭到破坏。为了确保井下人员的人身安全,让他们随时了解到井下的情况和听到地面指挥调度中心的广播,矿井内需要全覆盖的语音广播系统来实现上述目标。因此,提出一种基于TMS320F2812的CAN总线[1,2]技术的煤矿井下语音通信系统,既能完美实现广播对讲功能,又具有远距离传输、低成本和施工方便等优点。

1 系统组成

系统为矿用广播对讲系统,可以做到全矿井的覆盖,用于矿井下人行道、停车场、休息室、工作面等场所,是日常安全生产指挥的有效工具,并在需要时双向对话实现对讲。系统总体结构如图1所示,主要包括广播主站、CAN总线和广播分站3个部分。广播主站可监听任意一个广播分站周围的声音,可对一个、一组或所有广播分站进行广播。广播主站和分站都采用TI的DSP芯片TMS320F2812作为信号采集和控制单元[3],输入的模拟声音信号经过模拟放大电路,送入TMS320F2812的A/D采集口,转换完成后,把数据暂时存储在片内的存储器中,通过CAN收发器传输到CAN总线上,等待其他广播响应,当有广播响应后,通过CAN收发器将数据暂时存储在广播分站片内存储器中,通过外部D/A转换,再经过模拟放大电路,将声音输出。

图1 系统总体框图

2 硬件设计

2.1 模拟放大电路设计

系统的控制核心TMS320F2812芯片的片内A/D模块包括12位A/D核,内置双采样保持器,16个通道,完全可以满足矿用语音系统的采样精度和速度的要求,因此不必外扩A/D转换器[4,5]。由于声音是通过话筒转化为电信号之后才供A/D采集的,考虑到电信号的微弱性,输入的电信号要经过模拟放大电路才进入A/D转化器,模拟放大电路如图2所示。C2为电源滤波电容,IC1是功放集成电路,C4是输入耦合电容,C3是输出耦合电容,此模拟放大电路也适用于D/A输出电路。

图2 模拟放大电路

2.2 CAN总线接口电路设计

由于矿井工作环境较为复杂,所以选用了抗干扰能力强的CAN总线作为矿用广播系统的通信方式。TMS320F2812是通过内置增强型CAN控制器ECAN模块进行通信的,支持标准的CAN2.0协议[6]和远距离传输,总线通信速率最高可以达到1Mbps,拥有32个邮箱,每个邮箱都可以配置为发送或接收邮箱,且都有一个可编程的接收过滤器屏蔽寄存器,现已被广泛地应用与众多领域。TMS320F2812芯片的CAN总线控制器与CAN物理总线的接口选用SN65HVD232芯片,提供对总线的差动发送和接受功能,硬件原理如图3所示。此芯片与传统CAN收发器PCA82C250兼容,且支持+3.3V电压,可直接与TMS320F2812连接,简化了电路,为了提高CAN通信的稳定性,CAN总线网络的两个端点之间要加入终端匹配电阻。

图3 CAN接口电路

2.3 D/A连接电路设计

D/A输出电路选用的是BURR-BROWN公司的D/A芯片DAC7724,它是12位串行数模转换器,4路独立模拟输出,内部包括4组R-2R权电阻网络,4组双极缓冲输入寄存器和运算放大器,具有片选,输出使能等控制引脚,其与主控单元TMS320F2812的连接通过由ALTERA公司MAX7000AE系列的EPM7064AE来完成。其与主控单元的连接电路如图4所示,译码程序在QUARTUSП环境下用VHDL语言编写,编译修改,生成目标文件,最后通过JTAG接口下载完成。

图4 DAC7724与主控单元连接电路图

3 软件设计

3.1 采集功能实现

ADC模块共有16个结果寄存器,每个结果寄存器都是16位,而TMS320F2812的ADC是12位,也就是说转换后的数值最高只有12位。ADC转换的数值在结果寄存器中是左对齐,结果寄存器的高12位用于存放转换结果,低4位被忽略,可以将ADResult中的值先右移4位再计算,输入的模拟量和转换后的数字量之间的关系如下所示

ADResult是结果寄存器中的数字量,VoltInput是模拟电压输入值,ADCLO是ADC转换的参考电平,一般取值为0。

ADC模块进行数据采集时必须有一个启动信号。设计采用EVA下的通用定时器T1,T1的周期中断标志位被置1时向ADC模块发出一个ADC启动信号。当转换结束时,转换数值写入相应的结果寄存器中,中断标志位置位,进入ADC中断服务子程序中,将转换结果读入数组Ad_data中,然后调用CAN通信子程序,将数据发送出去,清除ADC中断标志位,响应中断后返回主函数。

3.2 通信功能实现

CAN网络中交换与传输的数据单元称为报文,报文传送由4种帧类型组成:数据帧、远程帧、错误帧、过载帧。数据帧的格式,由7种不同的位场组成。网络中的CAN节点只能在总线空闲时才允许开始发送信号,所有的节点必须同步于首先开始发送报文的节点的帧起始前沿。若同时有两个或两个以上的节点开始发送报文,总线会对标识符逐位进行仲裁,仲裁期间,每个节点都将总线电平与自己发送位电平相比较,如果发送电平和接受电平相同,则该节点继续发送报文。若该节点发送的一个隐性位被显性位改写,说明有较高优先权在发送,则节点自动转变为接收器。

CAN模块的主要任务是将A/D采集的语音数据发送到CAN总线上以便其他广播站接受,是构成语音系统的关键。CAN模块的软件设计主要由3部分组成:CAN模块的初始化、发送程序和接受中断程序。在使用CAN模块之前必须进行初始化。初始化包括引脚的定义、清除标志位、时钟使能、收发邮箱的配置和波特率的配置等。发送程序在DSP主程序的循环部分进行调用,接受中断程序在ECAN1INT产生中断时进行调用。CAN模块发送消息时,首先CPU将A/D采集的数据存放在发送邮箱中,将数据和标识符存放在相应RAM空间中,当发送请求位TRSn被置位后,数据就会发送出去。CAN模块接受消息时,首先将比较接受消息的标示符和接受邮箱的标识符,如果消息的标识符和邮箱的标识符匹配,则接受标识符、控制位和数据字节就会写入该邮箱的RAM存储区域中,相应的接收消息挂起位RMPn被置位[7,8]。发送和接受流程图如图5所示。

3.3 D/A输出功能实现

DAC7724芯片输入的数据是二进制格式,理想的输入数字量与输出模拟量之间的关系如下:

其中N是数字输入代码。

前面已经设计D/A的硬件部分,所以软件部分就变得简单,只要对D/A初始化,将CAN接受到的数字语音信号,直接送入D/A的转换通道即可。

4 系统测试

为了验证通信系统的性能,选取两个语音节点对其进行了实验测试。实验方法是用分压电路5V稳压

源电压接入一号语音节点A/D采集口的通道0,通过CAN总线传输到2号语音节点,调节滑动变阻器,在2号语音节点D/A输出通道0处测量输出电压并计算。其测试结果如表1所示。

图5 CAN发送和接受程序流程图

表1 测试数据

测试结果表明,误差值随着电压的变化而变化,但是误差率始终不超过1%,该系统可实现高效稳定的数据传输,完全符合矿用语音系统的设计要求。

[1]邬宽明.CAN总线原理和应用系统设计[M].北京:北京航空航天出版社,1996

[2]丁恩杰,苗曙光,朱微维,等.一种基于CAN总线的煤矿数字化扩音电话系统的设计[J].工况自动化,2010,1(1):66-69

[3]徐科军.TMS320×281×DSP原理与应用[M].北京:北京航空航天大学出版社,2006

[4]张风江,王兴松.基于TMS320F2812和USB的数据采集系统的设计[J].机械工程与自动化,2007,141(2):71-72

[5]曹军军.基于TMS320F2812的电力暂态信号采集与录波单元的研制[D].成都:西南交通大学,2006

[6]孙兵,何瑾,陈广夏.基于DSP的CAN总线与以太网互联系统研制[J].仪器仪表学报,2008,29(2):377-388

[7]阳宪惠.现场总线技术及其应用[M].北京:清华大学出版社,1997

[8]史久根.CAN现场总线设计技术[M].北京:国防工业出版社,2004

猜你喜欢

标识符寄存器邮箱
基于底层虚拟机的标识符混淆方法
STM32和51单片机寄存器映射原理异同分析
Lite寄存器模型的设计与实现
基于区块链的持久标识符系统①
没问题邮箱
关于停止使用dianxunjishu@china.com邮箱的通知
科研人员唯一标识符的理论研究现状剖析
邮箱变更
数字图书馆推广工程唯一标识符体系构建研究*
《胃肠病学》邮箱更改启事