理想的LoRa CSS波形解调,仅需要关注上述数组序号中的信号信息即可,其他数组元素中的信息,可以忽略。
解调效果
为什么不直接看“正频”对应下标?
①不能只看正频:
幅度较大者随着S的增加向负频偏移,当S较小时:
很容易根据幅度检测到正频对应的数组下标即为我们发送的数值;
当正频对应幅度比较小时会淹没在噪声中难以解调,因为我们是先看幅值再看对应数组下标映射,故两个要一起看更方便
②不同信道只有相对中心频率的相对“正负”,解调端只有两个载频附近的峰值检测的到
在-20dB信噪比条件下较小一侧峰值被淹没:
也就是说FFT谱叠加免去了判断这一步骤直接对应映射即可,能量更加集中便于检测,达到超强的抗干扰能力
FSK仿真:
方波与激励信号相乘再叠加:
当激励函数频率过大(100左右)时会恒为1
对坐标进行范围限定仍未解决上述问题(频率为100):
matlab语法部分:
①高斯加噪
Y = awgn(X,SNR,SIGPOWER)
当参数“SIGPOWER”是一个数值的时候,代表输入信号“X”的功率,单位是dBW;当参数“SIGPOWER”是“measured”的时候,在添加噪声前会测量(计算)输入信号“X”的功率;
②随机数生成
randi(…)
randi(N) 是生成(0,N]间均匀分布的伪随机数,并且数都是整数,所以每个数是位于1到N之间。它的表达形式有以下几种:
R = randi(iMax) % 生成1:iMax之间的均匀分布随机数
R = randi(iMax,m,n) % 生成m×n的1:iMax之间的均匀分布随机数
R = randi([iMin,iMax],m,n) % 生成m×n的iMin:iMax之间的均匀分布随机数
具体用法见官网:https://ww2.mathworks.cn/help/matlab/ref/randi.htmlhttps://ww2.mathworks.cn/help/matlab/ref/randi.html
③冒号在矩阵中的用法(用vpa或disp查看矩阵元素)
MATLAB中冒号的用法解析_matlab冒号的用法及作用-CSDN博客https://blog.csdn.net/CHQC388/article/details/104342589Matlab中的冒号 - allaqppq - 博客园 (cnblogs.com)https://www.cnblogs.com/CCWangsj/p/12819345.html#:~:text=%E5%86%92%E5%8F%B7%E5%9C%A8%E7%9F%A9%E9%98%B5%E6%93%8D%E4%BD%9C%E4%B8%AD%E4%B8%BB%E8%A6%81%E6%9C%89%EF%BC%9A%201.%E5%AE%9A%E4%B9%89%E7%9F%A9%E9%98%B5%E6%88%96%E5%8F%96%E7%9F%A9%E9%98%B5%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86%E6%97%B6%EF%BC%8C%E6%8C%87%E5%AE%9A%E6%AD%A5%E9%95%BF%EF%BC%9B,2.%E5%8D%95%E7%8B%AC%E5%AD%98%E5%9C%A8%E6%97%B6%EF%BC%8C%E8%A1%A8%E7%A4%BA%E9%BB%98%E8%AE%A4%E9%80%89%E6%8B%A9%E6%89%80%E6%9C%89%E8%A1%8C%2F%E5%88%97%20%28%E8%8B%A5%E5%9C%A8%E9%80%97%E5%8F%B7%E5%B7%A6%E8%BE%B9%EF%BC%8C%E8%A1%A8%E7%A4%BA%E9%80%89%E6%8B%A9%E6%89%80%E6%9C%89%E8%A1%8C%EF%BC%9B%E8%8B%A5%E5%9C%A8%E9%80%97%E5%8F%B7%E5%8F%B3%E8%BE%B9%EF%BC%8C%E9%BB%98%E8%AE%A4%E9%80%89%E6%8B%A9%E6%89%80%E6%9C%89%E5%88%97%29%E3%80%82
④矩阵“.*”与“*”的区别:
matlab如何解决矩阵维度必须一致_matlab吧_百度贴吧 (baidu.com)https://tieba.baidu.com/p/3762436126?share=9105&fr=share&see_lz=0&red_tag=0983125501