Systematics
  • EN
  • אודות
    • על סיסטמטיקס
    • הורדת תעודות ISO
    • אירועים בסיסטמטיקס
    • קהילה
    • יצירת קשר
    • דרכי הגעה
    • לזכרו של יואב לבנטר ז"ל, מייסד ומנכ"ל משותף
  • פתרונות ומוצרים
    • תחום GIS
      • אודות
      • מוצרים
      • אירועים
      • קורסים
      • תמיכה
      • סיפורי לקוחות
    • תחום 3D CAD/PLM
      • אודות
      • מוצרים
      • אירועים
      • קורסים
      • תמיכה
      • סיפורי לקוחות
    • תחום MATLAB & Simulink
      • אודות
      • מוצרים
      • אירועים
      • קורסים
      • תמיכה
      • סיפורי לקוחות
    • תחום 3D Printing
      • אודות
      • מוצרים
      • אירועים
      • תמיכה
      • סיפורי לקוחות
      • רכישה Online
  • לקוחות
    • לקוחות סיסטמטיקס בחזית המאבק במגיפת הקורונה
    • לקוחות
      • סיפורי הצלחה
    • תעשיות
      • אקדמיה
      • Start Ups
    • תכניות עבור סטארטאפים
  • קורסים
      • אודות מרכז ההדרכה
    • קורסים GIS
      • אודות הקורסים
      • תאריכים וסילבוס
    • קורסים SOLIDWORKS
      • אודות הקורסים
      • תאריכים וסילבוס
      • קורסים CATIA
    • קורסים MATLAB & Simulink
      • אודות הקורסים
      • תאריכים וסילבוס
    • קורסים 3D Printing
      • תאריכים וסילבוס
    • קורסים ALTIUM
      • תאריכים וסילבוס
  • תמיכה
    • תמיכה ושירותי ייעוץ
    • סקר שביעות רצון לקוחות
    • נהלי התקנה ורישוי GIS
    • נהלי התקנה ורישוי MATLAB
    • נהלי התקנה ורישוי SOLIDWORKS
    • פתיחת קריאות שירות
    • פתיחת קריאות שירות תחום GIS
  • קריירה
    • משרות
    • לעבוד בסיסטמטיקס
  • צור קשר
  • בלוג
    • הבלוגים שלנו
    • SOLIDBlog
    • PCB Blog
    • GIS Blog
    • MATLAB With Fun Blog
    • 3D Printing Blog
  • HE
  • Contact Us
  • Support
  • Customers
    • Customers
    • Success Stories
  • Industries
  • Solutions
  • About Us
  • חיפוש באתר
  • Menu Menu

עמוד הבית » בלוג » MATLAB With Fun

  • ALL
  • GIS Blog
  • MATLAB With Fun
  • PCB Blog
  • Smart 3D Printing
  • SOLIDBlog

תכנון ובניית אב טיפוס של מערכות (Software Defined Radio (SDR בצורה קלה ומהירה עם MATLAB ו-Simulink

שלומי שרגא
03/09/2020
MATLAB With Fun

תגיות: MATLAB | SDR | SIMULINK | Software Defined Radio

כמפתח אלגוריתמים למערכות תקשורת מורכבות, אתה יודע שאי אפשר לפתח אלגוריתם בוואקום. אתה צריך להתחשב בכל מרכיב במערכת שמשפיע על ביצועי האלגוריתם, וזקוק ליכולת לנתח ביצועים בזמן אמת, עם אותות תקניים. לצורך כך, MathWorks מציעה שיטת פיתוח ב-5 שלבים אותה אציג בבלוג הזה.

שתפו את הפוסט
  • שתף בפייסבוק
  • שתף בטוויטר
  • שתף בגוגל+
  • שתף בלינקדאין
  • שתף באימייל
  • שתף בוואטסאפ

SDR הינו התקן האלחוטי שבדרך-כלל מכיל מקלט-משדר (מקמ"ש) RF מתוכנת + FPGA או SoC. פלטפורמות SDR מסחריות מסוגלות לשדר ולקלוט בתדרים שונים לצורך יישום תקנים אלחוטיים, מרדיו FM ועד תקשורת Wi-Fi ו-LTE.

ניתן לתקשר עם פלטפורמות אלו ישירות מ-MATLAB ו-Simulink ולבצע בדיקות ובניית אבטיפוס Radio-in-the-Loop. זה אומר שאם אתה אלגוריתמאי, אתה יכול לשדר ולקלוט מידע אלחוטי בזמן אמת ולבחון אלגוריתמים שאתה מפתח ע"ג SDR.

לדוגמא:

  • ניתן לעשות וריפיקציה ולבנות במהירות אבי טיפוס למערכות תקשורת באמצעות ה-Zynq-7000 של Xilinx (חומרה מבוססת SoC עם ראש RF של Analog Devices)
    (תוכל לבחון את ביצועי התכן שלך בתרחישים אמיתיים ע"י שידור אותות RF באמצעות MATLAB ו-Simulink)
  • ניתן לייבא אותות RF אמיתיים לתוך סביבת MATLAB ע"י שימוש ב-SDR מסוג USRP של חברת National Instruments.

(גם כאן תוכל להשתמש בחומרת ה-USRP להטמעת קוד HDL שנוצר ישירות מתוך מודל ה-Simulink שלך).

אלו רק 2 דוגמאות מתוך כמה פלטפורמות SDR הנתמכות ב-MATLAB ו-Simulink (קישור לרשימה המלאה בהמשך).  אבל אם אתה משתמש בצב"דים במעבדה, MATLAB ו-Simulink תומכים גם בהם.

לדוגמא, סדרת ה-X-Series Signal Analyzers של Keysight.  מהנדסים מתעשיות תקשורת הסלולר, תקשורת לוויינית, צבאית, Wireless, ועוד משתמשים בצב"דים אלו, המשמשים להקלטה ולאנליזה של בדיקות מעבדה.

מהנדסי בדיקות יכולים לשלוט, לקנפג, ולרכוש אותות ממכשירים אלו ישירות מ-MATLAB ולבצע בדיקות ייחודיות (customized).

>> תוכל לבדוק אם ה–SDR או צב"ד שלך נתמך כאן.

וכפי שתראה בדוגמא הבאה, ניתן אפילו להשתמש בצב"דים אלו לניתוח אותות LTE תקניים. (ניתן לבנות דוגמאות דומות לתקשורת 5G ו-WLAN)

דוגמא: תיקוף תכן LTE באמצעות אותות אמיתיים וצב"דים

דרישה קריטית לתכן ווריפיקציה של מערכת LTE (או Advanced-LTE) היא היכולת לעבוד עם אותות אמיתיים. לכן, מהנדסים צריכים תוכנה שמאפשרת התממשקות לתכן עם אותות "חיים" תוך שימוש בצב"דים לשיערוך ווריפיקציה.

דוגמא זו מראה כיצד להשתמש ב- RF Signal Generator and Analyzer כחלק מתהליך וריפיקציה לתכן מערכת LTE (ראה Figure 1 למטה).

ה-setup: מייצרים סיגנל LTE תקני ב-MATLAB ומכינים אותו לשידור over-the-air בצב"ד. משתמשים בצב"ד נוסף לרכישת האות שאח"כ מנותח ב-MATLAB.

 

Figure 1. LTE signal generation and capture using an RF signal generator and analyzer

שלב #1: יצירת סיגנל ה-BaseBand

ניתן לייצר סיגנל Downlink E-TM לבדיקות יחד עם אותות uplink and downlink reference channel RMC בקלות מ-GUI ייעודי ב-MATLAB:

Figure 2. Parameter-driven MATLAB interface for LTE downlink E-TM waveform generation

שלב #2: שידור סיגנל Over-the-Air באמצעות צב"ד RF

באמצעות Instrument Control Toolbox אפשר כעת לטעון לצב"ד את האות שבנינו ב-MATLAB.

פונקציית MATLAB בשם hDownloadAndPlayWaveformUsingN5172B.m (מוצגת למטה) יוצרת ממשק עם הצב"ד Agilent N5172B Signal Generator

txaddress = ‘192.168.10.1’;
% Instrument address iq = waveform;
% IQ data sr = cfg.SamplingRate; % Sampling rate (Hz)
fc = 1e9; % Center frequency (Hz)
power = 0; % Output power (dBm)
hDownloadAndPlayWaveformUsingN5172B(txaddress,iq,sr,fc,power);

שלב #3: טעינת הסיגנל הנקלט ל-MATLAB

נשתמש שוב ב- Instrument Control Toolbox כדי לנתח את האות הנקלט ב-MATLAB.

פונק' MATLAB בשם hCaptureIQUsingN9010A.m היא דוגמא שניתן להשתמש בה עם צב"ד Agilent N9010A.

(פונקציה זו מחזירה את אות הנקלט ואת קצב הדגימה מהצב"ד).

המידע מיובא ל-MATLAB באמצעות הקוד הבא:

rxaddress = ‘192.168.10.2’; % Instrument address
t = cfg.TotSubframes*1e-3; % Capture time (s), one subframe is 1 ms
fc = 1e9; % Center frequency (Hz)
bw = 10e6; % Bandwidth (Hz)
trig = false; % External trigger
[rxwaveform, capsr] = hCaptureIQUsingN9010A(rxaddress,t,fc,bw,trig);

אובייקט ה-Spectrum Analyzer ב-MATLAB מציג את ספקטרום האות הנקלט במרחב הזמן באמצעות הקוד למטה.

ניתן לראות את השפעות ה-RF בשידור ובקליטה.

Figure 3. Frequency spectrum of captured baseband LTE waveform using the DSP System Toolbox spectrum analyzer in MATLAB

hsa = dsp.SpectrumAnalyzer(‘SampleRate’,capsr, …
‘SpectrumType’,’Power density’,’PowerUnits’,’dBm’, …
‘RBWSource’,’Property’,’RBW’,1.3e3,...
‘FrequencySpan’,’Span and center frequency’,’Span’,bw, …
‘CenterFrequency’,0,’Window’,’Rectangular’,’SpectralAverages’,10, …
‘YLabel’,’PSD’,’ShowLegend’,false, ...
‘Title’,’Received Signal Spectrum: 10 MHz LTE Carrier’);
step(hsa,rxwaveform);

שלב #4: הכנת אות LTE הנקלט לניתוח

כדי לנתח את האות הנקלט, צריך לדעת כמה פרמטרים של המערכת. באמצעות פונק' מובנות ב-LTE System Toolbox נוכל לייצר בקלות פרמטרי מערכת עבור אותות E-TM  וגם downlink and uplink RMCs:

% System parameters for Test Model 1.1, 10 MHz bandwidth
cfg = lteTestModel(‘1.1’,’10MHz’);

 

כדי לשחזר את ה-resource grid, נמיר את קצב הדגימה של האות הנקלט לזה הנדרש עבור OFDM demodulation, ואז נסנכרן אותו ל-frame boundary הראשון.

לאחר מכן נוכל לעשות דמודולציה ושחזור, כפי שמוצג בקטע הקוד הבא:

% Obtain sampling rate and resample for OFDM demodulation
info = lteOFDMInfo(cfg);

cfg.SamplingRate = info.SamplingRate;
rxwaveform = resample(rxwaveform,cfg.SamplingRate,capsr);
% Synchronize to the first frame head
offset = lteDLFrameOffset(cfg,rxwaveform);

rxwaveform = rxwaveform(1+offset:end,:);

% OFDM demodulate to recover resource grid
rxgrid = lteOFDMDemodulate(cfg,rxwaveform);

 

שלב #5: ניתוח האות הנקלט

כעת נוכל לנתח את האות המשוחזר ואת ה-resource grid.

ה-LTE System Toolbox מספק דוגמאות ופונקציה לניתוח אותות, כולל יחס אות לערוצים שכנים (ACLR), ו- EVM.

הפונקציה hACLRMeasurementEUTRA.m, hACLRMeasurementUTRA.m מתוך ה-LTE System Toolbox מודדות את ה-UTRA ACLR וה-E-UTRA ACLR של האות הנקלט:

% Calculate ACLR measurement parameters
rmc.UTRAChipRate = 3.84; % UTRA chip rate in MCPS

[aclr, nRC, R _ C, BWUTRA] = hACLRParameters(cfg);
% Apply required oversampling
resampled = resample(rxwaveform,aclr.OSR,1);

% Measure E-UTRA ACLR
aclr = hACLRMeasurementEUTRA(aclr,resampled);

aclr = hACLRMeasurementUTRA(aclr,resampled,nRC,R_C,BWUTRA);

 

ניתן גם לבנות גרפים להצגת מדידות ה-ACLR:

Figure 4. Example visualization of UTRA and E-UTRA ACLR measurement results

 

הפונקציה hPDSCHEVM.m מודדת EVM של ה-PDSCH:

% Configure the channel estimator to average over frequency and time
cec.PilotAverage = ‘UserDefined’;

cec.FreqWindow = 9;
cec.TimeWindow = 9;
cec.InterpType = ‘cubic’;
cec.InterpWinSize = 3;
cec.InterpWindow = ‘Causal’;
% Perform EVM measurement
evmMeas = hPDSCHEVM(cfg,cec,rxwaveform);

ה-struct המוחזר מהפונקציה מכיל peak EVM ו-RMS EVM ומערך המכיל את וקטור השגיאה עבור כל סימבול ב-PDSCH.

evmmeas =
Peak: 0.0509
RMS: 0.0127
EV: [10464×1 double]

השלמנו את ניתוח האות, וכעת נוכל לעשות איטרציות פיתוח אלגוריתם מהירות ולבחון השפעה על ביצועי כלל המערכת באופן מיידי.

לחץ כאן כדי לקרוא עוד על תכן ו– Prototyping באמצעות מערכות SDR ב–MATLAB ו– Simulink

*הערה: הבלוג נכתב מטעמי נוחות בלשון זכר, אך מיועד לכלל העוסקים בהנדסה – נשים וגברים כאחד.

תגיות: MATLAB | SDR | SIMULINK | Software Defined Radio

שתפו את הפוסט
  • שתף בפייסבוק
  • שתף בטוויטר
  • שתף בגוגל+
  • שתף בלינקדאין
  • שתף באימייל
  • שתף בוואטסאפ

פוסטים נוספים מאותה קטגוריה

להמריא עם MATLAB – כל מה שצריך לדעת על הקורסים של MathWorks

להמריא עם MATLAB – כל מה שצריך לדעת על הקורסים של MathWorks

MATLAB With Fun

שלי מרטינוב
11/05/2025
גילוי כשלים בייצור בשלבים מוקדמים בעזרת Visual Inspection

גילוי כשלים בייצור בשלבים מוקדמים בעזרת Visual Inspection

MATLAB With Fun

ענבר לוי
27/04/2025
תאום דיגיטלי להאצת בדיקות בקרת ההינע של מנועים חשמליים

תאום דיגיטלי להאצת בדיקות בקרת ההינע של מנועים חשמליים

MATLAB With Fun

איתמר אנגלמן
07/04/2025
תגובות | 0 תגובות

השאירו תגובה

כתיבת תגובה לבטל

האימייל לא יוצג באתר. שדות החובה מסומנים *

הרשמו לקבלת עדכונים

MATLAB With Fun
שדה חובה

ההרשמה בוצעה בהצלחה. בדוק בתיבת הדואר שלך, הודעה המכילה קישור לאישור ההרשמה ואשר את הרשמתך.

רוצים ללמוד עוד? כיתבו לנו

כיתבו לנו


    social-media-youtubesocial-media-linkedin

    קהילה

    • קהילת סיסטמטיקס
    • SOLIDWORKS Blog
    • PCB Blog
    • MATLAB with Fun Blog
    • GIS Blog
    • Smart 3D Printing Blog
    • ESRI Israel FB
    • SOLIDWORKS Israel FB
    • MATLAB and Simulink LI
    • MATLAB and Simulink FB

    צור קשר

    • בקשת יצירת קשר
    • בקשת קשר טלפוני

    רכישה

    • בקשת הצעת מחיר
    • מכירות ESRI
    • מכירות SOLIDWORKS
    • מכירות ALTIUM
    • מכירות CATIA
    • מכירות ENOVIA
    • מכירות MATLAB & Simulink
    • מכירת מדפסות תלת מימד

    קורסים

    • קורסים GIS
    • קורסים SOLIDWORKS
    • קורסים MATLAB & Simulink
    • קורסים CATIA
    • קורסים ALTIUM
    • יצירת קשר מרכז ההדרכה

    תמיכה

    • מדיניות תמיכה
    • שירותי ייעוץ
    • פתיחת קריאות שירות

    פתרונות ומוצרים

    • תחום GIS
    • תחום 3D CAD/PLM
    • SOLIDWORKS
    • ALTIUM PCB
    • CATIA
    • ENOVIA
    • MATLAB & Simulink
    • תחום 3D Printing
    • 3D EXPERIENCE
    • תעשיות
    • אקדמיה
    • Start Ups

    אודות סיסטמטיקס

    • מי אנחנו?
    • אירועים
    • דרכי גישה ומפה
    • יצירת קשר

    לקוחות

    • לקוחות סיסטמטיקס
    • סיפורי לקוח SOLIDWORKS
    • סיפורי לקוח MathWorks
    • סיפורי הצלחה GIS
    © 2025 All rights reserved SYSTEMATICS Ltd. | Privacy Policy
    • הישארו מעודכנים
    • כיתבו לנו
    Scroll to top