当前位置:文档之家› 现场总线控制技术实验报告.

现场总线控制技术实验报告.

课程名称:现场总线实验任课教师:廉迎战学院:自动化专业班级:学号:学生姓名:2015 年6月16日实验一频移键控法仿真实验一.实验目的初步掌握通信原理基础知识中频移键控法的基本原理。

能用MATLAB仿真软件,编写并调试简单的仿真程序。

二.实验主要仪器设备和材料1. 实验用计算机2. MATLAB仿真软件三.实验内容四.实验步骤及结果测试1.安装部署MATLAB仿真环境,同时根据频移键控法要求,设置仿真环境。

2.在MATLAB环境下,输入频移键控法原理图。

原理图如下:方法一方法二Repeating sequence stair:F3数字信号sine wave :100Hz信号Sine wave1 :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.Signal buder:F=1011010010单极性方波波形;Constant1:值为1的常数信号;Constant-1:值为-1的常数信号:4.在MATLAB中产生数字信号为:F=1011010010单极性方波波形。

5.在相应的输入端加载输入信号,观察仿真原理图的输出信号波形,同时记录并分析。

如下图,OUT即为F3信号的双极性非归零编码仿真输出。

F3 1时选择constant 1,0时选择constant -1,合并波形。

以上6个信号分别为:1.signal builder的数字信号10110100101;2.constant=1;3.constant1=-1;4.product信号;5.product1信号;6.add 输出信号五.思考题1.数字信号10110100101双极性非归零编码输出波形图如下OUT:以上6个信号分别为:1.signal builder的数字信号10110100101;2.constant=1;3.constant1=-1;4.product信号;5.product1信号;6.add输出信号输出的数字信号为10110100101时,其单极性非归零编码波形如下OUT:以上6个信号分别为:1.signal builder的数字信号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.Signal buder : F=01001110方波波形;Repeating Sequence Stair:重复下降沿信号,周期1秒;(曼彻斯特编码中,当输入为0时,产生一个上升沿信号)Repeating Sequence Stair1:重复上升沿信号,周期1秒;(曼彻斯特编码中,当输入为1时,产生一个下降沿信号)4.在MATLAB中产生数字信号为:F=01001110曼彻斯特编码方波波形输入波形为:同时记录并分析。

如下:以上6个输出信号分别为:1.signal builder的输入信号: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对数据1011 0100 1010进行效验,计算其效验码程序清单如下:#include<stdio.h>void main(){int k,i,j,n;int a[20]={1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1};int num[30];int crc[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;elsenum[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");}输出结果如下:。

相关主题