摘要: 文章阐述了超声波无线透传模块的工作原理及设计思路,从系统的角度给出了利用超声波来实现无线点对点通讯的整体方案。该声波通讯系统可实现由串口到超声波无线再到串口的单双工数据透传。实验结果表明本设计扩展性灵活,可在一定距离内实现稳定无线声波通讯。
Abstract: This paper describes the ultrasonic wireless launch and receiver module"s working principle and designning ideas, given the overall program for the project of ultrasound wireless point to point communication from a systems perspective. The acoustic communication system can achieve the communication from the serial port to ultrasonic wireless and then back to another serial port. The experimental result shows that the design can achieve stable wireless acoustic communication within a certain distance.
关键词: 即现场可编程门阵列(FPGA);无线通讯;超声波;声通讯
Key words: field-programmable gate array (FPGA);wireless communication;ultrasonic wave;acoustic wireless communication
中图分类号:TP39 文献标识码:A 文章编号:1006-4311(2012)24-0215-02
0 引言
随着电子技术的飞速度发展,无线通讯正悄然的改变着这个社会,成为人们生活中不可或缺的一部分,传统意义上的无线通讯大多建立在电磁通讯上,虽发展早技术相对成熟,但并不适合于所有领域,如海洋环境。由于水是电的良导体,这使得电磁波在水下衰减十分迅速,想进一步实现无线通讯非常困难。如今世界各国对海洋资源开发的日益重视,人们越发感觉到找寻一种新型的无线通讯方式并制定与之相应的通讯体制的重要性。与此同时因声波在水下传播方向性好,穿透力强,传播距离远等特性,使得水声成为水下通讯的首选媒介,无线声通讯的研究正在成为一个新的研究热点。
现场可编程门阵列(FPGA)作为新一代的可编程逻辑器件以其成本低、可靠性高、开发周期短等优势,广泛应用于通讯、工控、接口总线、航空及车载控制等的设计上,成为最具灵活性及广泛性的开发设计平台之一。FPGA可轻易地被修改与变更,且允许开发人员根据需求变化进行资源的重新配置,这允许我们对已经成型的PCB在不改动硬件连接的情况下进行二次开发,这一优点在无线通讯设计方面尤为明显,突出表现在系统的升级更新,协议的调整,接口的扩展等方面。FPGA在为无线通讯系统提供丰富资源的同时,也使无线通讯系统烦琐的开发过程变的简单。
1 总体设计和系统架构
本系统分为超声波收发部分,调制解调部分以及与外界MCU、PC进行数据传输的UART接口模块、系统接口缓存FIFO四个部分组成。系统将待发送的数据通过脉冲进行编码调制,把数据加载到声波上以超声波的能量形式发送出去,由超声波接收模块接收,并进行信号的解调与校验。系统中将要发送与新接收到的数据都暂存在FIFO中,并通过UART接口与外界进行数据的交互,如图1所示。
2 设计原理
2.1 无线部分的设计
2.1.1 超声波无线通讯协议选择与数据帧结构 为了能够正确地对超声波进行编码,首先必须对通讯协议进行选择与设计。设计的关键在于帧的同步问题,本设计参考了串口通讯协议,数据帧包含一个起始位,8个数据位,一个偶校验位和1个停止位。未接收到信号时,定时器不计时,当电平由高变低即收到起始位0时,记时器开始计时,既以起始位作为帧同步的信号。通过比较计数器的计数来判断每一位是0或者是1,接收完8位数据、校验位及停止位后。定时器复位,准备接收下一个数据。本设计以200个40KHZ周期脉冲时间作为最小的电平转换单元,即最小的电平持续时间为5ms,为保证采样数据的可靠性,对每位的电平数据进行中心点附近的5次采样。
2.1.2 载波频率的选择 超声波在介质中传输对频率十分敏感,在传播过程中介质对声波的吸收与频率的平方成正比,频率越高,衰减越快,而频率低收到的背景噪声大,对传输质量有影响。选择合适的频率来作为系统无线的载波频率不但可以有效避开大量背景噪声同时也减少了传播过程的信号衰减。试验中选用常用的40khz换能器作为实验对象。
2.1.3 接收部分设计 超声波接收电路使用了红外接收解调芯片CX20106,芯片内置放大、带通滤波、比较及整形等功能,当接收到40KHZ信号时,会在芯片第7脚输出低电平,反之则输出高电平。经FPGA内部接收处理,可将“时断时续”的信号还原成原始的数据。
2.1.4 发送部分的设计 本设计中超声波通信数据采用脉冲编码调制,当有一个8位的数据需要发送时,首先对其首尾加入起始位,奇偶校验位与停止位将其封装成一个标准数据帧。由于CX20106接收到40KHZ信号时输出为低电平,所以发送的数据必须反向发送,即当编码为‘1’时不产生调制信号,而编码为‘0’时,FPGA产生两路40KHZ的反向脉冲信号,脉冲信号通过MAX232芯片驱动超声波发射头,将数据由低位到高位无线发送出去。两路反向信号经过MAX232能够分别输出+-12V的输出电压,叠加到超声波换能器两端相当于24V的压差,增强了发射功率,加大了无线通讯的距离。
2.1.5 数据接收过程的实现
①当超声波信道空闲时,CX20106输出为高,系统处于standby模式,此时当输入信号由高电平降低为低电平时,计数器使能开始计数。
②进入数据接收模式,根据定时器计的时间点来判断接收到的是第几位数据,并分别对该位中心点附近的5个点作采样。当接收完第10位数据时,计数器清0。
③数据接收完成后,将数据位与偶校验位进行异或运算,若偶校验通过则保留数据,并产生验证通过信号,如果校验失败则丢弃本次接收数据。
④偶校验无误的数据压入FIFO缓存。
⑤系统返回standby模式,等待下一次的数据接收。
2.2 FIFO模块 本次设计的是一个从串口到无线再到串口的无线透传模块,由于超声波传输有一定的时延,有限的声速制约着无线传输的效率,同时串口通讯速率较无线要快许多,在系统中加入数据缓冲‘FIFO’来对两个时间域不同的数据交互作缓冲是有必要的。本设计中使用VERILOG来进行FIFO模块的描述编写,构造了一个深度为256字节的8位FIFO。
2.3 UART通讯模块信号的定义 根据实际情况与需求,在UART模块中定义了RST,CLK,TXD,RXD,ENi,ENO,DOUT[7:0],DIN[7:0]6个信号。CLK为系统时钟信号 TXD为UART向外部设备发送的串行数据位,RXD为UART模块从外部设备接收到的串行数据位。ENi为UART模块输入的使能信号,当输入FIFO堆栈满时,ENi为0,UART输入功能被关闭防止数据溢出。ENO为UART模块的输出使能信号,当输出FIFO堆栈不为空时,ENO为1,允许UART模块从输出FIFO中读取并发出数据。DOUT为8位并行数据线与输入FIFO相连,DIN[7:0]为输入。考虑到超声波通讯的速度有限,设计中串口通信波特率采用固定的9600BPS。
3 实例的仿真验证与实现
设计的验证包括功能仿真与时序仿真。本文选用VERILOG语言进行硬件资源的建模。在QUARTUS开发工具上完成代码的编写编译与综合之后,使用MODELSIM仿真软件进行系统通讯部分的时序仿真。图上incsb模拟了CX20106传输进的电平信号。outdat为接收到的8位数据,eri为偶校验通过位。仿真结果表明,本文用verilog设计的超声波无线通讯信号解码部分符合本设计无线通讯协议的要求。
本设计实现平台采用Altera公司的Cyclone II系列 EP2C8Q208C8型号FPGA。整个系统在20M时钟频率下可正常工作,设计中收发编解码部分,FIFO缓存以及UART接口模块均工作正常。以本无线透传模块设计的超声波遥控器与无线超声波串口设计均能很好的实现功能。
4 结束语
本设计编码方式灵活简单,占用资源少,相对独立。后期功能扩展,升级都非常容易实现。如在此基础上将通讯数据位由8位扩展为16位或更高,增加校验措施和地址位等,可以提高系统的吞吐量与稳定性。除此之外模块本身从串口到串口的无线透传设计,允许用户无需过多的编程,只要调用简单的串口程序,即可使用本模块的无线透传功能。
本文就基于FPGA超声波无线通讯的原理及协议进行了讨论,设计出切实可行的超声波无线通讯方案,实验模拟过程中通讯稳定可靠。面对复杂多变的声环境,设计中仍然存在着一些问题待后续优化与解决。随着水声通讯与类似声通讯研究的兴起,相信有朝一日,无线声通讯将以其特有的姿态同蓝牙,红外等通讯技术一起出现在人们的生活中。
参考文献:
[1]夏宇闻.VERILOG数字系统设计教程[M].北京航空航天大学出版社,2008(06).
[2]蒋俊峰.基于单片机的红外通讯设计[J].电子设计应用,2003(11).
[3]于新业,陈以,黄廷磊.基于FPGA的非编码无线模块的应用设计[J].微计算机信息,2009(08).
[4]沙燕萍,皇甫伟,曾烈光.异步FIFO的VHDL设计[J].电子技术应用,2001(06).
[5]唐新来.基于FPGA的无线通讯收发模块设计方案[J].微计算机信息,2008(24).
推荐访问: 超声波 模块 设计 FPGA