现场总线控制技术实验报告要点.docx
《现场总线控制技术实验报告要点.docx》由会员分享,可在线阅读,更多相关《现场总线控制技术实验报告要点.docx(15页珍藏版)》请在冰点文库上搜索。
现场总线控制技术实验报告要点
课程名称:
现场总线实验
任课教师:
廉迎战
学院:
自动化
专业班级:
学号:
学生姓名:
2015年6月16日
实验一频移键控法仿真实验
一.实验目的
初步掌握通信原理基础知识中频移键控法的基本原理。
能用MATLAB仿真软件,编写并调试简单的仿真程序。
二.实验主要仪器设备和材料
1.实验用计算机
2.MATLAB仿真软件
三.实验内容
四.实验步骤及结果测试
1.安装部署MATLAB仿真环境,同时根据频移键控法要求,设置仿真环境。
2.在MATLAB环境下,输入频移键控法原理图。
原理图如下:
方法一
方法二
Repeatingsequencestair:
F3数字信号
sinewave:
100Hz信号
Sinewave1:
50Hz信号
Scope1:
示波器
方法一:
Switch1:
选通开关//方法二:
用乘法器product代替
3.在MATLAB中产生F1=50Hz和F2=100Hz的交流信号,以及需要发送的数字信号,数字信号为:
F3=01101001方波波形。
4.加载输入信号,观察仿真原理图输出信号波形,同时记录并分析。
如下图:
五.思考题
1.数字信号01101001的频移键控法输出波形表示形式如下:
输出的数字信号为10110101时,其频移键控波形如下的OUT:
1~6行输出信号分别为:
1.数字信号10110101的输入信号;2.50Hz频率sine;3.100Hz频率sine;4.Product输出;5.product1输出;6.add输出
2.如何实现幅移键控法的信号通讯技术?
通过信号幅值的高低映射到数字信号的1和0从而达到载波传输信号,可利用现成的电信网,电话网等设施构成信道。
3.
实验二双极性非归零编码仿真实验
一.实验目的
初步掌握通信原理基础知识中的数字编码技术应用。
能用MATLAB仿真软件,编写并调试简单的仿真程序。
二.实验主要仪器设备和材料
1.实验用计算机
2.MATLAB仿真软件
三.实验内容
双极性非归零编码仿真实验原理图如同所示。
图2双极性非归零编码仿真原理图
四.实验步骤及结果测试
1.安装部署MATLAB仿真环境,同时根据双极性非归零编码要求,设置仿真环境。
2.在MATLAB环境下,设计输入双极性非归零编码原理图。
如下:
3.
Signalbuder:
F=1011010010单极性方波波形;
Constant1:
值为1的常数信号;
Constant-1:
值为-1的常数信号:
4.在MATLAB中产生数字信号为:
F=1011010010单极性方波波形。
5.在相应的输入端加载输入信号,观察仿真原理图的输出信号波形,同时记录并分析。
如下图,OUT即为F3信号的双极性非归零编码仿真输出。
F31时选择constant1,0时选择constant-1,合并波形。
以上6个信号分别为:
1.signalbuilder的数字信号10110100101;2.constant=1;3.constant1=-1;4.product信号;5.product1信号;6.add输出信号
五.思考题
1.数字信号10110100101双极性非归零编码输出波形图如下OUT:
以上6个信号分别为:
1.signalbuilder的数字信号10110100101;2.constant=1;3.constant1=-1;4.product信号;5.product1信号;6.add输出信号
输出的数字信号为10110100101时,其单极性非归零编码波形如下OUT:
以上6个信号分别为:
1.signalbuilder的数字信号10110100101;2.constant=1;3.constant1=0;4.product信号;5.product1信号;6.add输出信号
2.如何实现双极性非归零编码的信号通讯?
通过电平的高低表示数字信号的1和0;将数字信号调制成电平信号,经过信道传输,在信宿解调实现信号的还原从而完成通讯。
实验三曼彻斯特编码仿真实验
一.实验目的
初步掌握通信原理基础知识中的曼彻斯特编码技术应用。
能用MATLAB仿真软件,编写并调试简单的仿真程序。
二.实验主要仪器设备和材料
1.实验用计算机
2.MATLAB仿真软件
三.实验内容
曼彻斯特编码仿真实验原理图如同所示。
图2曼彻斯特编码仿真波形图
四.实验步骤及结果测试
1.安装部署MATLAB仿真环境,同时根据曼彻斯特编码要求,设置仿真环境。
2.在MATLAB环境下,设计并输入曼彻斯特编码原理图。
如下:
3.
Signalbuder:
F=01001110方波波形;
RepeatingSequenceStair:
重复下降沿信号,周期1秒;(曼彻斯特编码中,当输入为0时,产生一个上升沿信号)
RepeatingSequenceStair1:
重复上升沿信号,周期1秒;(曼彻斯特编码中,当输入为1时,产生一个下降沿信号)
4.在MATLAB中产生数字信号为:
F=01001110曼彻斯特编码方波波形
输入波形为:
5.在相应的输入端加载输入信号,观察仿真原理图的输出信号波形,同时记录并分析。
如下:
以上6个输出信号分别为:
1.signalbuilder的输入信号:
F=01001110;2.周期为1的下降沿信号;3.周期为1的上升沿信号;4.product输出信号(当输入信号为1时,输出下降沿信号);5.Product1输出信号(当输入信号为0时,输出上升沿信号);6.输出F=01001110的曼彻斯特编码波形
五.思考题
1.数字信号10110100101的曼彻斯特编码输出波形表示形式如下图:
输出的数字信号为10110100101时,其差分曼彻斯特编码波形如下:
2.如何实现曼彻斯特编码的信号通讯?
通过一个周期内高低电平的反转表示数字信号的1和0;相邻两个保持一样表示数字0,跳变相反表示数字1。
将数字信号调制成这样的电平信号,经过信道传输,在信宿解调实现信号的还原从而完成通讯。
实验四CRC冗余码校验编程实验
一.实验目的
掌握CRC冗余码校验编程。
利用C语言编程实现CRC校验过程。
二.实验主要仪器设备和材料
1.实验用计算机
2.C语言开发软件
三.实验内容
CRC校验码的基本思想是利用线性编码理论,在发送端根据要传送的k位二进制码序列,以一定的规则产生一个校验用的监督码(既CRC码)r位,并附在信息后边,构成一个新的二进制码序列数共(k+r)位,最后发送出去。
在接收端,则根据信息码和CRC码之间所遵循的规则进行检验,以确定传送中是否出错。
四.实验程序及结果测试
用CRC-8对数据101101001010进行效验,计算其效验码
程序清单如下:
#include
voidmain(){
intk,i,j,n;
inta[20]={1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1};
intnum[30];
intcrc[30];
printf("xinxishujuweishu:
");
scanf("%d",&k);
printf("shujuwei:
\n");
for(i=k-1;i>=0;i--)
scanf("%d",&num[i]);
printf("K(x):
");
for(i=k-1;i>=0;i--)
printf("%d",num[i]);
printf("\n");
for(i=k-1+16;i>=16;i--){
num[i]=num[i-16];
}
for(i=15;i>=0;i--){
num[i]=0;
}
printf("x^16*K(x):
");
for(i=k-1+16;i>=0;i--)
printf("%d",num[i]);
printf("\n");
for(i=k-1+16;i>=16;i--){
if(num[i]==0){
crc[i-16]=0;
}
else{
crc[i-16]=1;
for(j=i,n=1;j>=i-16;j--,n++){
if(num[j]==a[16-n+1])
num[j]=0;
else
num[j]=1;
}
}
}
printf("冗余码R(x):
");
for(i=k-1+16;i>=0;i--){
if(num[i]!
=0){
for(j=i;j>=0;j--)
printf("%d",num[j]);
break;
}
}
printf("\n");
printf("商输出");
for(i=k-1;i>=0;i--)
printf("%d",crc[i]);
printf("\n");
system("pause");
}
输出结果如下: