我使用官方提供的代码,即C:\ti\mmwave_studio_03_00_00_14\mmWaveStudio\MatlabExamples\4chip_cascade_MIMO_example\main\cascade目录下的cascade_MIMO_signalProcessing.m得到adcData的数据,发现通道等间隔的接收天线所接收信号的相位差是不固定的,有很大的偏移,12根发射所打到的同一根接收天线的相位差也是不固定的,请问是我们相位的校准出问题了吗?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我使用官方提供的代码,即C:\ti\mmwave_studio_03_00_00_14\mmWaveStudio\MatlabExamples\4chip_cascade_MIMO_example\main\cascade目录下的cascade_MIMO_signalProcessing.m得到adcData的数据,发现通道等间隔的接收天线所接收信号的相位差是不固定的,有很大的偏移,12根发射所打到的同一根接收天线的相位差也是不固定的,请问是我们相位的校准出问题了吗?
我按要求完成了8.3.1节的天线校准,生成了矫正矩阵,并成功调用该矩阵对用Cascade_Configuration_MIMO采集到的数据进行处理,但是用cascade_MIMO_signalProcessing.m处理后的数据adcdata通道等间隔的接收天线所接收信号的相位差是不固定的。除此之外,我们还进行了相位矫正,但可能操作不规范,我们先是在5m的位置放置一个角反,然后运行Cascade_Phase_Shifter_Calibration_AWRx,运行过程中生成了一些文件与文件夹。但我并不知道该怎么利用这些文件夹。这是否是导致出现通道等间隔的接收天线所接收信号的相位差是不固定的原因?
你好,
相位校准相关信息请参考AWRx_TX_Channel_Calibration_Script_User_Guide.pdf。
Thanks,
Chris
你好,
相位校准是需要的,请问校准是在暗室做的么?
另外,请尝试下面的代码修改,看有改善么?
read_ADC_bin_TDA2_separateFiles.m
function [adcData1Complex] = readBinFile(fileFullPath, frameIdx,numSamplePerChirp,numChirpPerLoop,numLoops, numRXPerDevice, numDevices)
Expected_Num_SamplesPerFrame = numSamplePerChirp*numChirpPerLoop*numLoops*numRXPerDevice*2;
fp = fopen(fileFullPath, 'r');
fseek(fp,(frameIdx-1)*Expected_Num_SamplesPerFrame*2, 'bof');
adcData1 = fread(fp,Expected_Num_SamplesPerFrame,'uint16');
neg = logical(bitget(adcData1, 16));
adcData1(neg) = adcData1(neg) - 2^16;
%%
adcData1 = adcData1(1:2:end) + sqrt(-1)*adcData1(2:2:end);
% adcData1Complex = reshape(adcData1, numRXPerDevice, numSamplePerChirp, numChirpPerLoop, numLoops);
% adcData1Complex = permute(adcData1Complex, [2 4 1 3]);
% The ADC data format is in non-inteleaved mode [ADC samples][Rxantennas][chirpsPerLoop][ChirpLoops]
adcData1Complex = reshape(adcData1, numSamplePerChirp, numRXPerDevice, numChirpPerLoop, numLoops);
adcData1Complex = permute(adcData1Complex, [1 4 2 3]);
fclose(fp);
Thanks,
Chris
你好,
建议是在暗室里做校准,至少也是一个空旷的环境,走廊上墙壁会有很多多径干扰的。
Cascade_Configuration_TXBF_Simple.lua和Cascade_Configuration_TXBF_AngleSweep.lua里使用,这步对于校准相位有什么作用?可以省略这一步吗?
校准前后比较。
Thanks,
Chris
3.另外我想知道利用calibrateTXPhaseResults.mat文件生成得到phaseShifterCalibration.mat要在哪个官方的历程中使用呢?
请参考下面的论坛讨论:
https://e2echina.ti.com/support/archived-forums/f/other-analog-forum/202135/txbf-matlab/631616
Thanks,
Chris