(此文档为word格式,下载后您可任意编辑修改!)数据采集与传输系统摘要该数据采集与传输系统以89C51及89C2051为核心,由数据采集模块、调制解调模块、模拟信道、测试码发生器、噪声模拟器、结果显示模块等构成。
在本方案中仅使用通用元器件就较好的实现了题目要求的各项指标。
其中调制解调模块、噪声模拟器分别采用单片机和可编程逻辑器件实现。
本数据采集与传输系统既可对8路数据进行轮检,也可设置为对一路数据单独监控。
本系统硬件设计应用了EDA 工具,软件设计采用了模块化的编程方法。
传输码元速率为16kHz~48kHz的二进制数据流。
另外,还使用了“1”:“01”、“0”:“10”的Manchester编码方法使数据流的数据位减少,从而提高传输速率。
一、方案设计与论证首先,我们分析一下信道与信噪比情况。
本题中码元传输速率为16k波特,而信号被限定在30k~50kHz的范围内,属于典型的窄带高速率数字通信。
而信噪比情况相对较好。
这是因为信号带宽仅为20kHz,而噪声近似为0~43kHz()的窄带白噪声,这样即使在信号和噪声幅度比值为1:1的情况下,带内的噪声功率仍然比较小,所以系统具有较高的信噪比。
方案一:常用的数字调制系统有:ASK、FSK、PSK等。
其中FSK具有较强的抗干扰能力,但其要求的的带宽最宽,频带利用率最低,所以首先排除。
ASK理论上虽然可行,但在本题目中,由于一个码元内只包括约两个周期的载波,所以采用包络检波法难以解调,也不可行。
另外,对于本题目,还可以考虑采用基带编码的方法进行传输,如HDB3码,但这种编码方法其抗干扰能力较差,因此也不太适合。
方案二:PSK调制方式具有较强的抗干扰能力,同时其调制带宽相对也比较窄,因此我们考虑采用这种调制方式。
为了简化系统,在实际实现时,我们采用了方波作为载波的PSK调制方式。
当要求的数据传输速率较低(≤24kbps)时,对原始数据处理的方法如下:“1”用“1010”(0相位两个周期的方波)表示;“0”用“0101”(π相位两个周期的方波)表示。
上述调制方法能传输的最大码元速率为24kbps,当要求的数据传输速率大于24kbps时,对原始数据处理的方法如下:“1”用“10”(0相位一个周期的方波)表示;“0”用“01”(π相位一个周期的方波)表示。
同时我们为了避免PSK调制方式复杂的载波提取电路的设计,在具体设计时采用了异步传输和软件解调相结合的解调方法,即:首先利用异步传输的起始位,确定数据的初始相位,避免了PSK解调时相位的随机性;然后利用简单的软件判决进行数据的解调。
这样做有以下优点:1、只使用两个电平,有足够的定位信息,直流漂移较小。
2、信号频谱的主要部分在30k~50kHz的通带范围内,利于传输。
3、实现方法简单,避免了PSK解调时复杂的载波提取和位同步提取电路。
4、在数据速率较低时,系统具有一定的纠错能力。
例如当收到1110时可判为1(1010),当收到0111时可判为0(0101)。
本系统通过软件加入了自动纠错,能纠正码距为1的误码。
5、系统具有比较宽的数据传输范围:16kbps~48kbps。
虽然在高端和低端传输速率时,已调信号的带宽已超出了信道的3dB带宽的范围,但由于已调信号的大部分能量仍然在信道的带宽范围之内,而信道噪声又比较小,所以对于正确解调影响不大。
在具体实现上采用单片机完成调制与解调,通信采用单片机间的串行通信来完成。
这样做的好处是:1、采用单片机串口通信,便于同步,定位方便。
2、单片机本身对于串行信号具有多次抽判的功能。
3、单片机可对接收到的1010四位序列进行软件判决,提高系统的抗噪性能。
4、系统可升级性好,可以根据需要,进行纠错编码。
当信道条件改变时也能较快适应。
系统原理框图如下图1.1 系统原理框图二、系统实现及理论分析1.带通滤波器模块带通滤波器N阶全极点传递函数近似式如上式,可看出带通滤波器的传递函数是由低通滤波器的传递函数变换而来的。
四阶带通滤波器可由低通滤波器和高通滤波器级连而成,因此可以把一个截止频率为30KHZ的高通滤波器和一个截止频率为50KHZ的低通滤波器级联起来,采用切比雪夫型高低通滤波器级联,经计算中心频率约为40KHZ。
切比雪夫型低通滤波器其幅频公式如下:()K H j ω=e 和K 1为常数C n 为N 阶切比雪夫型多项表达式,ωc 为截止频率。
N 增加则波纹系数增加。
将低通滤波器传递函数的s 换为1s 即可得到高通滤波器的传递函数。
滤波器采用归一化设计,求出归一化系数后查表得到所需阻容参数。
为此我们用VB 编写了一个滤波器快速设计软件,只要填入频率值和所选电容值就可得出其他电路参数。
图2.1 滤波器设计软件界面该软件是根据[美]D.E.约翰逊等人所编写的《有源滤波器快速实用设计》一书设计的。
首先将输入的截止频率fc 和电容c 的值代入式子:计算出参数K ,然后查该书相应的阻值表得到各电阻在K=1时的阻值,将该阻值乘以K 即得到所设计电路中各电阻的阻值。
以上计算过程和所用到的参数、表格和电路形式都已设计在程序里,由程序自动完成,因此使用时只需选择要设计的电路形式和该电路所需的必要参数即可立刻得到该电路各元件的值,可十分方便快速地设计出所需的各种滤波器。
最后设计出的带通滤波器如下(图2.2)。
图2.2 BPF电路原理图通过EWB模拟得到的频谱响应如下(图 2.3):图 2.3 BPF仿真结果2.数据采集模块:数据采集模块数据采集系统如(图 2.4),采用AD0809模数转换器及89C51控制数据采集。
AD0809为8位8输入通道的AD变换器,满足题目所提出的要求。
由单片机控制进行轮询采集或是指定通道采集。
图 2.4数据采集模块电路原理图3.调制解调模块按据前述对题目的要求的分析和各方案比较,我们最终决定采用方载波的PSK调制方法实现。
具体实现方法是直接利用软件进行调制,然后通过异步方式进行传输。
解调时利用异步传输的特点,根据起始位确定已调信号的初始相位,并通过软件判决进行PSK的解调。
具体实现方法如下:首先,对要传输的数据进行数字PSK调制,然后把调制后的数据作为异步传输的数据,通过单片机的串行口进行异步传输,即为其再增加异步传输的起始位、校验位和停止位。
在接收端,首先对接收到的信号进行整形,并利用单片机的串行口对调制信号作为异步传输的数据进行接收,然后利用软件判决的方法对接收到的数据进行PSK的解调。
这样就避免了PSK解调时复杂的载波提取和同步提取电路的设计,同时得到较好的接收性能。
在本次设计中,我们采用了18.432MHz的晶体,这是一种在通信中常用的晶体,可方便的分频出16kHz、19.20kHz、24kHz、32kHz、48kHz等传输时钟。
数据传输的码元速率不大于24kbps时:“1”用“1010”(0相位两个周期的方波)表示,“0”用“0101”(π相位两个周期的方波)表示。
另外,为了防止单片机的停止位产生富含低频分量的较长连续“1”,通过信道传输前先将单片机串口输出的码序列取非。
具体调制结果示例如下:*:设数据为“”。
这样可以保证数据流中没有三个连续“1”,也没有”11”与”00”连在一起的情况。
这样,使用96kbps的波特率传输时,调制信号的频谱分量大部分集中分布在32kHz与48kHz之间,这样便可在题目所要求的信道中传输码元速率不大于24kbps的数据信息(由于带宽很窄,可不考虑谐波分量)。
对于它的解调,接收到信号后取非再用单片机译码即可实现,同时由于编码的特点,还可纠正传输中码距为1的误码,如单片机收到1101(已取非还原)的数据时可判原信号为0。
当数据传输的码元速率较高(>24kbps)时,编码自动调整为“1”用“10”(0相位一个周期的方波)表示,“0”用“01”(π相位一个周期的方波)表示的PSK调制方法,使每一码元编码后对应的二进制数据位减少,在相同的时间内传输更多的码元,从而提高码元传输速率,达到扩展功能中提高传输速率的要求。
由于编码位数减少一半,因此使用96kbps的波特率传输时,理论上可达到48kbps的码元传输速率。
另外,由于调制部分和解调部分的输入波特率与输出波特率均不同(调制部分输入波特率为16kbps~48kbps,输出波特率为96kbps; 解调部分输入波特率为96kbps,输出波特率为16kbps~48kbps。
),而且在一片单片机上同时实现数据的收发也较困难,因此调制部分与解调部分均采用了两片89C2051来分别管理数据的输入与输出,以减轻每一片单片机的负担。
这两片单片机之间通过并口实时传输数据,具体电路原理图见(图 2.5)。
图 2.5调制解调模块电路原理图在串口加入了一个衰减器使输出电压可以在0-1V的范围内连续变化。
输入口使用LM311比较器构成电平判决电路。
该电路如(图2.6)。
图 2.6 电平判决电路原理图4.采集结果显示模块在此模块中,我们采用了EDM12816B 型图形点阵式液晶显示器,它的分辨率为128×16。
这样我们可以利用自制的字模生成软件编制易懂的中文分级菜单界面,人机交互性较好。
电路原理图见附录总图。
三、其它功能的实现1.噪声模拟发生器:通常产生伪随机序列的电路为一反馈移位寄存器。
一般的,线性反馈移位寄存器由于理论比较成熟,实现比较简单,实际中常常使用。
由线性反馈移位寄存器产生出的最长的二进制数字序列成为最大长度线性反馈移位寄存器序列,通常简称为m序列。
图示为一般的线性反馈移位寄存器的组成:其中若=0则表示此线断开,=1则表示接通。
由于n级移位寄存器共有个可能的不同状态,除全0外,只剩-1个,那末,任何n级线性反馈移位寄存器产生的序列的周期最长为-1。
设n级移位寄存器的初始状态为:,经过一次移位后,状态变为。
经过n此移位后,状态为。
再位移一次时,移位寄存器左端新得到的输入为:112201...2i nn n n in n i a c a c a c a c a ---==⊕⊕⊕=∑(模)。
故对任意状态,有:。
令20120()...nni n i i f x c c x c x c x c x ==++++=∑ 这一方程即为特征方程(或特征多项式)。
由此可以得出的线性反馈移位寄存器。
当各级触发器均处于0状态时,电路就停止产生序列信号,即产生了阻塞现象。
这是由于序列发生器在0状态下不具有自启动特性,所以需要在反馈中增加一个防止全0的修正项,即得到如下图所示的序列发生电路。
在输出口加入了一个衰减器使输出电压可以在0-1V 范围内连续变化。
(衰减器电路图请见调制解调器电路图)图 3.1 伪随机序列发生电路原理图方案一采用普通数字逻辑单元器件产生,此方案所需器件多,结构复杂。