RZ9692实训开发通信系统构建(含配置json配置文件)

实验名称

通信系统的构建

实验目的

实现一个通信系统的构建,要求传输两路正弦波,和一路视频信号,要求在接受端完整接受正弦信号和视频信号。

一、实验原理:

数字通信系统的一般模型:

数字通信系统的一般模型中各组成部分的主要功能: 

  1. 信源编码和信源解码:信源编码有两个作用,其一,进行模/数转换;其二,数据压缩,即设法降低数字信号的数码率,提高数字信号传输的有效性。信源解码的作用是进行数/模转换。
  2. 信道编码与信道解码:数字信号在信道中传输时,由于噪声影响,会引起差错,信道编码就是要降低传输的差错率,对传输的信息码元按一定的规则加入保护成分(监督元),组成所谓“抗干扰编码”。接收端的信道解码器按一定规则进行解码,从解码过程中发现错误或纠正错误,从而提高通信系统抗干扰能力,提高传输可靠性。 
  3. 加密器和解密:在需要实现保密通信的场合,为了保证所传信息的安全,人为将被传输的数字序列扰乱,即加上密码,这种处理过程叫加密。在接收端利用与发送端相同的密码复制品对收到的数字序列恢复原来信息,这个过程叫做解密。 
  4. 调制器和解调器:数字调制的任务是把各种数字基带信号转换成适应于信道传输的数字频

1、平台简介

无线通信系统综合实验平台采用开放式硬件架构,模块功能和系统功能可重构,学生既可用设备随机提供的软件完成原理实验和系统实验,也可用自已设计开发的软件重构无线通信信号处理过程中任一个节点功能或完整的无线通信系统功能,完成创新开发实训。

无线通信系统每个模块的功能是通过FPGA实现的,学生进行系统节点功能或系统功能开发实际上就是设计FPGA算法,这对低年级的本科学生来说有一定难度,掌握起来比较困难;针对上述问题,我们将无线从信源到终端整个过程的各种算法封装成80多个控件,学生可通过拖放控件、设计信号流程(连线)、配置模块参数,完成无线通信系统单元级或系统级设计,训练学生掌握并理解:各通信单元功能、通信单元接口匹配、无线通信系统构建、无线通信系统性能测量;从而达到:

1.控件组合,信号测试加深学生对各功能单元认知;

2.直观形象了解通信系统构建、通信系统信号处理流程;

3.选择通信单元信号处理方式,系统性能测试,掌握影响通信系统性能因素;

2、功能说明

无线通信系统基带部分共有8个模块,分别是A1-A8模块,每个模块均能过软件重构功能,因此8个基带模块我们也称8个模块。

A1到A8共8个模块。从左往右从上往下依次是:A1信号源与抽样脉冲、A2信源编码与时分复用、A3信道编码与线路编码、A4频带调制、A5频带解调、A6信道译码与线路译码、A7时分解复用与信源译码、A8终端输出。

每个模块都有输入或输出节点,每个节点有两个重要属性:数据的流向(信号总是由前面的模块流向后面的模块)和数据的类型(数字信号、模拟信号、线路编码信号)。

单元功能设计首先明确该功能对应的开发模块,然后在“无线通信系统设计桌面”上(见图1)用鼠标双击相应的开发模块,“无线通信系统设计桌面”切换成“模块功能设计桌面”,学生可在“模块功能设计桌面”进行控件拖放、信号流向设计(连线)、控件参数配置、虚拟仪器验证等功能设计(见图2);

每个模块有独自的虚拟仪器如信号源、示波器、逻辑分析仪、误码仪等。

学生设计开发可以在设备现场进行,也可通过网络在远端浏览器上完成,浏览器观察信号均为硬件产生实时信号2。

                      通信系统设计桌面

                    模块功能设计页面

实验过程

首先,我们需要对每个模块的原理及其功能进行初步了解,便于接下来的学习及其使用。信号发生器负责生成数字信号,为调制器提供输入信号;调制器则将数字信号转换为模拟信号,以便在传输介质中传输;传输介质可以是有线或无线的,其作用是将模拟信号从发送端传输到接收端;接收端的解调器负责将模拟信号转换回数字信号,以便最终接收器进行处理。即整个实验过程满足:信源-信源编码-信道编码-数字调制-信道-数字解调-信道译码-信源译码-信宿。

在搭建数字通信系统实验箱时,我们必须确保每个组件连接正确并稳定。包括确保信号发生器生成的信号发送到调制器,调制器连接到传输介质,传输介质连接到解调器,以及解调器连接到信号接收器。

使用信号发生器产生数字信号时,我们调整信号参数以模拟不同类型的数字数据,例如调整信号的频率、振幅或脉冲宽度等。之后,将数字信号经过调制器进行调制,选择合适的调制方式,可选择的方式有ASK(振幅键控)、FSK(频率键控)或PSK(相位键控)等,并调整调制参数以适应特定的传输环境和需求。

接下来,将调制后的信号通过选定的传输介质进行传输。在传输过程中,我们确保传输通道的稳定性和可靠性,以确保信号能够准确地到达接收端。

最后,在信号接收端,我们使用解调器对接收到的信号进行解调。解调器的作用是将模拟信号转换回数字信号,以便最终的信号接收器能够对其进行处理和解码,从而还原出原始的数字信号。

1.信源编码模块设计

首先使用模拟信号输入模块,双路AD采集,采样率256k,采集上一个板子送过来的信号源和抽样脉冲,精度为16位。PCM编码模块、CVSD编码模块的原始信号都是由该AD采集。

  1. 使用了两个带通滤波器模块,该模块为300-3400HZ带通滤波器。AD模块采集的信号一般含噪声和谐波分量,该模块可以将AD采集进来的谐波和噪声滤除。并将信号分别送入PCM编码模块和CVSD编码模块。
  2. CVSD模块,该控件完成CVSD编码,。
  3. 串并转换模块可以将输入64k串行数据, 输出8k的8位并行数据。可以将串行输出的cvsd编码数据并行送入时分复用控件。
  4. PCM编码该控件完成PCM编码,编码规则为u律。采样率8k。编码输出通过并串转换后可以得到64k数字信号。
  5. 开关码模块1通过设置拨码开关的值,来产生8位并行数据。通过链接时分复用模块的帧头,对帧头进行设置。
  6. 时分复用模块共四个时隙,这里我们运用到了8个时隙,摄像头占用了4个时隙,每个时隙8bits,帧率为8k,所以同步时钟为256kbs。时分复用的作用是将提供给整个信道传输信息的时间划分成若干时间片(简称时隙),并将这些时隙分配给每一个信号源使用,保证资源的利用率。
  7. 数字信号输出模块将二进制数字信号送往A3或者A7模块。
  8. 最后用示波器观察数字信号输出的波形

信号发生及信源编码

数字信号及调制信号

2.信道编码

  1. 数据输入模块获取来自信源编码模块的数字信号。
  2. 串并转换模块时钟可设,1位转16位的串并转换控件。 信源编码送来的数据需要经过串并转换后才能进行信道编码。
  3. 汉明编码模块时钟可设,将送进去的16位数据分成4组*4bit,每组单独编码得到4组*7bit。 汉明码在传输的消息流中插入验证码,当计算机存储或移动数据时,可能会产生数据位错误,以侦测并更正单一比特错误。
  4. 组帧模块时钟可设。在进行编码时,为了便于同步,将两组编码数据进行组帧。
  5. 并串转换模块时钟可设,64位转1位的并串转换控件。信道编码后的数据需要转化为1bit的二进制信号才能送到A4模块或者A6模块。
  6. 数字信号输出模块:将二进制数字信号送往A4调制或者送到A6译码。

信道编码

逻辑分析仪显示信号

3.数字调制

PSK调制如图所示,基带信号(A3数字信号输入)符号映射后与载波分别送DA转换器连接到乘法器的输出端。

  1. A3数字信号输入模块:获取来自A3模块的数字信号。
  2. PSK符合映射:对于二进制信号 ,值为0或者1。我们在psk调制的实现算法里有一个乘法实现法。1乘以载波,输出同相。0乘以载波等于0,而不是载波的反相。因此,这里需要将0转换成-1。为了输出的幅度饱和,这里使用±16384来映射01。
  3. NCO 1控件:数字控制振荡器(NCO,numerically controlled oscillator)是软件无线电、直接数据频率合成器(DDS,Direct digital synthesizer)等的重要组成部分,同时也是决定其性能的主要因素之一,用于产生可控的正弦波或余弦波。 
  4. 乘法器1:实现乘法功能, 两个16位有符号数输入,一个32位有符号数输出。

DA输出控件:调制后的信号需要通过DA转换器转换为模拟信号输出到A5

数字调制

调制信号

4.数字解调

  1. 调制输入模块:从上一个板子A4接收到的调制输出,在这个解调控件先要转换成数字信号。因为频带信道干扰较大,所以采集到的信号可能有点毛糙。
  2. 乘法器:两个16位有符号数相乘,得到32位无符号数。如果送入的数不足16位,则会被扩展到16位。
  3. VCO模块:做PSK解调时,第一步就是设置VCO载波频率。设置载波频率后,可以输出正弦信号和余弦信号,这个和A4的NCO一致。多了一个信号调节(delta_phase)用于纠正相位差。正相(反相)按钮使输出相位跳转180°,用于PSK纠正相位模糊。
  4. 环路滤波器模块:通过环路滤波器获取载波信息。图中C1和C2由环路滤波器带宽、码元间隔和系统增益等决定。
  5. 双通道低通滤波器:该滤波器两个通道时延完全同步,并且带宽为VCO输出载波频率的1.5倍,可以有效滤波PSK相干解调时的二次谐波。
  6. 乘法器:两个16位有符号数相乘,得到32位无符号数。如果送入的数不足16位,则会被扩展到16位。
  7. 抽样判决与位同步模块:将需要判决的信号送入该控件,然后调节判决电平至合适位置,选择需要恢复出的时钟频率,就可以恢复出数字信号和同步时钟。送入的信号眼图良好,才可以判决。
  8. 数字信号输出模块:将二进制数字信号送往A6。

数字解调

5.信道译码

汉明译码过程包括数字信号输入、帧同步、拆帧、汉明译码、并串转换模块、数字信号输出模块。过程与编码正好相反。

  1. A5数字信号输入控件:获取来自A5模块的解调输出的数字信号。
  2. 帧同步模块:A3模块信道编码后,输出的是数据帧,译码端要做的第一件事就是将串行送入的译码数据帧同步,然后转换为同步好的一帧一帧的并行数据输出。输出并行数据的时钟是串行输入时钟的1/64.
  3. 拆帧模块:这个拆帧控件某种意义上就是一个并串转换控件。我们编码时,两个数据块组成一帧数据。现在要做的是将这两个数据块依次送入译码控件。需要注意的是,一帧里有两个数据块,所以输出时钟是输入时钟的2倍。
  4. 汉明译码:编码时是加校验位,译码时是去校验位,所以位宽从7*4变成了4*4。值得注意的是,未纠错输出就是直接将数据位输出,而未经过校验。
  5. 并串转换模块:时钟可设,15位转1位的并串转换控件。信道译码后的数据位15位并行,如果需要送往A7模块,必须转换为串行数据。
  6. 数字信号输出模块:将二进制数字信号送往A7作后续处理。

信道译码

6.信源译码

  1. A6数字信号输入模块:获取来自A6模块的数字信号。
  2. 帧同步模块:对送进来256kbs的时分复用信号按照指定的帧头帧同步,然后输出同步后的并行信号。同步用的匹配帧头可以设置。帧脉冲信号指示了同步状态。
  3. 将送进来的时分复用信号分成四路信号,四路信号的顺序应该和复接端一致。
  4. PCM译码模块:这是一个8k的pcm译码控件。将PCM编码数据转化为量化数据。
  5. 并串转换模块:输入8k的8位并行数据,输出64k串行数据。
  6. CVSD译码模块:对串行输入的二进制CVSD编码数据进行译码并且滤波。编码时钟和编码量阶要和CVSD编码控件设置一致。图中除了输入和输出节点外,还有一些中间节点可以测量。
  7. 插值低通滤波器:这是一个8k 输入采样64k输出的采样的上抽低通滤波器,滤波器截止频率为4k。
  8. 模拟信号输出模块:进行现场实验时,可以将pcm译码或者cvsd译码数据送到该控件,然后通过DA转换后,使用实际示波器观察波形。

信源编码

最终结果显示我们在接收端完整的收到了两路正弦信号以及一路视频信号

                    

实验总结

我们小组在构建数字通信系统的实验中取得了令人鼓舞的进展!通过一系列的实验步骤,包括信源编码、信道编码、数字调制、数字解调等,我们深入了解了数字通信系统的构建和工作原理。在实验过程中,我们也意识到了不同调制方式对信号传输性能的影响,并从中学到了重要的教训。尽管最初准备采用QPSK调制,但由于经验不足,在系统搭建过程中频繁出现错误。这促使我们认识到在实际应用中,必须根据需求选择最合适的调制方式。最终,我们决定采用PSK调制,因为它能更好地反映信号的调制。此外,我们还发现PSK调制可能会引发相位模糊的问题,但通过以前的学习和探索,我们成功地解决了这一难题,采用了DPSK的码反变换方法。这一过程不仅帮助我们解决了问题,还进一步加深了我们对数字通信系统工作原理的理解。

通过这次实验,我们不仅扎实掌握了理论知识,还积累了宝贵的实践经验。实际操作不仅让我们更深入地理解了数字通信系统,还使我们掌握了调制解调等关键技术的实践运用。面对各种挑战和问题,我们不断学习、解决,这些经历不仅为我们积累了宝贵的经验,也使我们对数字通信系统有了更为深入的认识。未来,我们将继续努力,将所学应用于实践,不断提升自己在数字通信领域的能力和水平。

josn系统配置文件:RZ9692实训开发通信系统构建资源-CSDN文库

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/616316.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

验证搜索二叉树

目录 题目 方法一 思路 优化 方法二 思维误区 递归关系推导 代码实现 题目 98. 验证二叉搜索树 难度:中等 给你一个二叉树的根节点root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含…

Python 开发 框架安全:Django SQL注入漏洞测试.(CVE-2021-35042)

什么是 Django 框架 Django 是一个用 Python 编写的 Web 应用程序框架。它提供了许多工具和库,使得开发 Web 应用程序变得更加容易和高效。Django 遵循了“MTV”(模型-模板-视图)的设计模式,将应用程序的不同组件分离开来&#x…

QT的C++版本是如何从ui文件编译成C++可以使用的.h文件的

Desktop_Qt_6_7_0_MinGW_64_bit是一个编译器,可以将ui文件编译为.h文件。我们可以在项目文件下看到这一样一个文件: 这里的ui_mainwindow.h文件我们可以打开看一下:你会发现你所有的ui设计都被记录在了这里。 /***************************…

最新网页版USB转串口芯片CH340中文规格书手册(20240511)

前言 南京沁恒的产品已经很成熟了,完全可替代国外USB转串口产品,不必迷信FT232,CP2102之类了。 另外,急着买芯片,直接跑过去的,看过几次妹子了:) CH340手册,基于网页3.3版本,规格书…

作为一名新能源汽车热管理仿真工程师需要具备哪些素养与技能

作为一名新能源汽车热管理仿真工程师,需要具备多方面的素养与技能,才能胜任这一岗位的工作。从工程素养到技术技能,再到沟通能力和团队合作,以下是对这些方面的探讨。 理论知识基础 首先,工程素养是新能源汽车热管理仿…

现代制造之数控机床篇

现代制造 有现代技术支撑的制造业,即无论是制造还是服务行业,添了现代两个字不过是因为有了现代科学技术的支撑,如发达的通信方式,不断发展的互联网,信息化程度加强了,因此可以为这两个行业增加了不少优势…

Spring-Cloud-OpenFeign源码解析-01-OpenFeign简介

OpenFeign简介 OpenFeign是一种声明式、模板化的HTTP客户端(仅在Application Client中使用)。声明式调用是指,就像调用本地方法一样调用远程方法,无需感知操作远程http请求。 OpenFeign和Feign的区别 Feign是Spring Cloud组件中一个轻量级RESTful的HT…

[算法][差分][延迟相差][leetcode]2960. 统计已测试设备

题目地址: https://leetcode.cn/problems/count-tested-devices-after-test-operations/description/ 解法一:暴力解法 class Solution {public int countTestedDevices(int[] batteryPercentages) {//特殊条件判断if(null batteryPercentages || ba…

图论(洛谷刷题)

目录 前言: 题单: P3386 【模板】二分图最大匹配 P1525 [NOIP2010 提高组] 关押罪犯 P3385 【模板】负环 P3371 【模板】单源最短路径(弱化版) SPFA写法 Dij写法: P3385 【模板】负环 P5960 【模板】差分约束…

深度解析Nginx:高性能Web服务器的奥秘(上)

🐇明明跟你说过:个人主页 🏅个人专栏:《洞察之眼:ELK监控与可视化》🏅 🔖行路有良友,便是天堂🔖 目录 一、前言 1、Nginx概述 2、Nginx的历史与发展 3、Nginx的…

Kubernetes学习-深入Pod篇(一) 创建Pod,Pod配置文件详解

🏷️个人主页:牵着猫散步的鼠鼠 🏷️系列专栏:Kubernetes渐进式学习-专栏 🏷️个人学习笔记,若有缺误,欢迎评论区指正 1.前言 我们在前面的文章讲解了Kubernetes的核心概念和服务部署&#x…

ViLT 浅析

ViLT 浅析 论文链接:ViLT 文章目录 ViLT 浅析创新点网络结构总结 创新点 本文先分析了4种不同类型的Vision-and-Language Pretraining(VLP) 其中每个矩形的高表示相对计算量大小,VE、TE和MI分别是visual embedding、text embedding和modality interact…

2024年数维杯数学建模

高质量原创论文已完成 需要的私我

解决“电脑开机黑屏Explorer进程卡死“问题

今天,给台式机按电源键,进入windows系统时,发现电脑黑屏了,昨天还好好的,怎么今天电脑桌面进不去了?想起Windows XP、Windows 7、Windows 10 、Windows 11等系统,在使用多个文件拷贝时&#xff…

python的import导入规则

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、pycharm只能看到当前工作路径父目录下所有文件和项目根目录下所有文件二、sys或者图形界面添加解释器路径(搜寻路径)三、import导入…

乡村旅游指标-最美乡村数、旅游示范县数、旅行社数、景区数、农家乐数(2007-2021年)

01、数据介绍 乡村旅游也是促进乡村经济发展的有效途径。通过发展乡村旅游,可以带动乡村相关产业的发展,提高乡村居民的收入,促进乡村的经济发展和社会进步。此外,乡村旅游还能促进城乡交流,推动城乡统筹发展。 数据…

SEO之为什么研究关键词(一)

初创企业需要建站的朋友看这篇文章,谢谢支持: 我给不会敲代码又想搭建网站的人建议 新手上云 初做网站的人很容易犯的最大错误之一是,脑袋一拍就贸然进入某个领域,跳过竞争研究,没规划好目标关键词就开始做网站。这样做…

ICode国际青少年编程竞赛- Python-4级训练场-while语句综合

ICode国际青少年编程竞赛- Python-4级训练场-while语句综合 1、 for i in range(4):while not Flyer[i].disappear():wait()Spaceship.step(6)Spaceship.turnLeft()2、 Dev.turnLeft() for i in range(4):Spaceship.step(2)while Flyer[i].disappear():wait()Dev.step(4)Dev.…

【SpringBoot】Redis Lua脚本实战指南:简单高效的构建分布式多命令原子操作、分布式锁

文章目录 一.Lua脚本1.Lua特性2.Lua优势 二.Lua语法1.注释2.变量3.数据类型:3.1.基本类型3.2.对象类型:表(table) 4.控制结构:4.1.条件语句: 使用if、else和elseif来实现条件分支。4.2.循环结构:Lua支持for…

记录一下Hql遇到的零碎问题

建表相关 -- 地区维度表 drop table dim_province_full; create table dim_province_full( id string comment 编号, name string comment 省份名称, region_id string comment 大区id, area_code string comment 行政区位码, iso_code string comment 国际编码, iso_3166_2 s…