‏הצגת רשומות עם תוויות רחפנים. הצג את כל הרשומות
‏הצגת רשומות עם תוויות רחפנים. הצג את כל הרשומות

יום חמישי, 20 במרץ 2025

כדי לזהות רחפנים באופן אוטומטי באמצעות AI/Machine Learning

 כדי לזהות רחפנים באופן אוטומטי באמצעות AI/Machine Learning, נשתמש בגישה הבאה:


📌 עקרון הפעולה של הזיהוי האוטומטי

1️⃣ סריקת ספקטרום (כבר יש לנו קוד לזה) – נאסוף נתונים רחבים של RF מ-70MHz עד 6GHz.
2️⃣ עיבוד נתונים (Feature Extraction) – נזהה דפוסי אותות שמאפיינים רחפנים (למשל, אותות PWM, WiFi, FHSS וכו').
3️⃣ מודל למידת מכונה (ML/DL) – נלמד רשת נוירונים או מודל SVM/RandomForest לזהות רחפן לפי טביעת הספקטרום שלו.
4️⃣ זיהוי בזמן אמת (Real-time Detection) – ניטור שוטף והתרעה כאשר מזוהה תדר של רחפן.


🔍 איסוף ותיוג נתונים

לפני שנאמן מודל, נצטרך דאטה מתויג: ✅ דגימות רחפנים אמיתיות – ניקח ספקטרום של DJI, Parrot, Autel ועוד.
✅ דגימות רקע (Noise & False Positives) – תדרים של WiFi, Bluetooth, מכשירים ביתיים.
✅ תיוג הנתונים – ניצור מאגר אותות עם תוויות ("Drone", "Non-Drone").

📌 רוצה להקליט נתוני רחפן משלך או להשתמש במאגר נתונים מוכן?


📜 קוד ראשוני לזיהוי תדרי רחפן עם ML

נשתמש ב-SciKit-Learn עם Random Forest כדי לזהות דפוסים בספקטרום.

import numpy as np
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# יצירת דאטה מדומה (בשלב הבא נכניס דאטה אמיתי)
num_samples = 1000
freqs = np.linspace(70e6, 6e9, num_samples)

# יצירת תדרים של רחפנים (למשל DJI ב-2.4GHz ו-5.8GHz)
drone_labels = np.random.choice([0, 1], size=num_samples, p=[0.9, 0.1])  # רוב התדרים לא רחפן

# יצירת מאפייני ספקטרום
features = np.random.rand(num_samples, 10)  # סימולציה של ספקטרום (נכניס דאטה אמיתי אחר כך)

# חלוקה לסט אימון/בדיקה
X_train, X_test, y_train, y_test = train_test_split(features, drone_labels, test_size=0.2, random_state=42)

# אימון מודל זיהוי רחפנים
clf = RandomForestClassifier(n_estimators=100)
clf.fit(X_train, y_train)

# בדיקת ביצועים
y_pred = clf.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print(f"Model Accuracy: {accuracy * 100:.2f}%")

# זיהוי רחפן בתדרים אמיתיים
test_spectrum = np.random.rand(1, 10)  # נכניס ספקטרום אמיתי מה-SDR
prediction = clf.predict(test_spectrum)
print("Drone Detected!" if prediction == 1 else "No Drone Detected.")

🚀 מה השלב הבא?

1️⃣ שימוש בנתוני RF אמיתיים מה-SDR (ולא רק סימולציה).
2️⃣ שיפור המודל עם CNN/RNN לניתוח ספקטרום רציף.
3️⃣ חיבור לזיהוי חכם ושיבוש אוטומטי לאחר זיהוי רחפן.

📌 רוצה שאשלב מודל נוירונים מתקדם (Deep Learning) לזיהוי רחפנים בצורה חכמה יותר? 😃

לשבש תדרי רחפנים בעזרת SDR

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


1. זיהוי התדרים של הרחפן (DF – Direction Finding או Scan)

לפני שמשבשים תדרים, צריך לדעת באיזה תדרים הרחפן פועל. לרוב רחפנים עובדים על 2.4GHz ו-5.8GHz (WiFi, DJI, וכו'). ניתן להשתמש ב-SDR כדי לבצע ספקטרום אנלייזר ולגלות תדרים פעילים.

כלים מומלצים לזיהוי תדרים:

  • GQRX / SDR# – צפייה ידנית בספקטרום.
  • GNURadio עם FFT Sink – הצגת ספקטרום בזמן אמת.
  • kalibrate-rtl / rtl_power – סריקת תדרים וחישוב עוצמת אות.
  • Deep Learning עם TensorFlow/Keras – זיהוי אוטומטי של תבניות RF של רחפנים.

2. קבלת תמונת ספקטרום בזמן אמת

אפשר להשתמש ב-Python עם RTL-SDR או UHD (ל-SDR B205) כדי לקבל תמונה בזמן אמת של הספקטרום.
דוגמה לקוד עם GNU Radio ו-Python להצגת ספקטרום:

import numpy as np
import matplotlib.pyplot as plt
from rtlsdr import RtlSdr

# חיבור ל-SDR
sdr = RtlSdr()
sdr.sample_rate = 2.048e6  # 2.048 MSPS
sdr.center_freq = 2.4e9  # 2.4GHz
sdr.gain = 40

# קריאת נתונים מה-SDR
samples = sdr.read_samples(256*1024)

# חישוב FFT והצגת ספקטרום
fft_vals = np.fft.fftshift(np.fft.fft(samples))
freqs = np.fft.fftshift(np.fft.fftfreq(len(samples), d=1.0/sdr.sample_rate))

plt.plot(freqs/1e6, 20*np.log10(np.abs(fft_vals)))
plt.xlabel("Frequency (MHz)")
plt.ylabel("Power (dB)")
plt.title("Real-Time Spectrum")
plt.show()

sdr.close()

מה הקוד עושה?

  • סורק את התדר 2.4GHz עם SDR ומקבל נתוני ספקטרום.
  • מבצע FFT כדי להמיר את הנתונים לתמונה ספקטרלית.
  • מציג גרף של התדרים מול עוצמת השידור.

3. שיבוש תדרי הרחפן (Jamming)

ברגע שאיתרנו את התדרים של הרחפן, ניתן לשדר אותות רעש (Noise) או טון נושא (CW) מתמשך כדי לשבש את התקשורת שלו.

שיטות שיבוש נפוצות:

  1. שיבוש רחב-פס (Broadband Noise) – יצירת רעש רחב על כל התחום (2.4GHz או 5.8GHz).
  2. שיבוש ממוקד (Narrowband Jamming) – שידור בתדר ספציפי של הרחפן לאחר זיהוי.
  3. שיבוש חכם (Reactive Jamming) – ניטור רציף של הרחפן ושידור רק כשהוא משדר.

קוד GNURadio לשיבוש אותות רחפנים

ניתן להשתמש ב-GNU Radio עם SDR B205 כדי לשדר רעש לבן:

  1. פותחים GNURadio Companion (GRC)
  2. יוצרים בלוק של UHD: USRP Sink
  3. מוסיפים Signal Source (תדר 2.4GHz, אות רועש או סינוס)
  4. מחברים לבלוק ה-Sink ושולחים לרחפן

למשתמשי Python עם UHD:

from gnuradio import gr, analog, uhd

class JammingFlowgraph(gr.top_block):
    def __init__(self):
        gr.top_block.__init__(self)

        # יצירת מקור אותות - רעש לבן
        self.noise_source = analog.noise_source_c(analog.GR_GAUSSIAN, 0.5)

        # הגדרת SDR B205
        self.sdr_sink = uhd.usrp_sink(
            ",".join(("addr=192.168.10.2", "")), # כתובת ה-SDR
            uhd.stream_args(cpu_format="fc32", channels=[0]),
        )

        # קביעת תדר השיבוש
        self.sdr_sink.set_samp_rate(1e6)
        self.sdr_sink.set_center_freq(2.4e9)
        self.sdr_sink.set_gain(50)

        # חיבור הבלוקים
        self.connect(self.noise_source, self.sdr_sink)

if __name__ == "__main__":
    tb = JammingFlowgraph()
    tb.start()
    input("Press Enter to stop jamming...\n")
    tb.stop()
    tb.wait()

מה הקוד עושה?

  • יוצר רעש גאוסי לבן (White Noise).
  • משדר אותו דרך SDR B205 בתדר 2.4GHz.
  • ניתן להגדיר תדר אחר לפי סוג הרחפן (למשל 5.8GHz).

4. שיפור ביצועים – מגברים ואנטנות

כדי לשפר את היכולת לשבש רחפנים:
✅ מגברים (PA - Power Amplifier): לדוגמה, 10W-50W בתחום 2.4GHz או 5.8GHz.
✅ אנטנות כיווניות (Directional Antennas): לדוגמה, Yagi או Panel Antenna שממקדות את השיבוש לרחפן.
✅ משדרים רבי-עוצמה: שילוב SDR עם מגברים לחסימת רחפנים רחוקים.


סיכום

✅ שלב 1: זיהוי תדרי הרחפן (DF) עם SDR והצגת ספקטרום.
✅ שלב 2: יצירת תמונת ספקטרום לזיהוי אותות חשודים.
✅ שלב 3: שיבוש בעזרת GNURadio/Python.
✅ שלב 4: שיפור הביצועים עם מגברים ואנטנות כיווניות.

רוצה שנתמקד בפיתוח קוד ספציפי יותר (למשל שיבוש חכם עם AI או מעקב אחר רחפן בזמן אמת)? 😃

יום רביעי, 9 באוקטובר 2024

רחפנים





 ישנם סוגים רבים של רחפנים (Drones), הנבדלים זה מזה במטרות השימוש, במבנה, בטכנולוגיה וביכולות הטיסה שלהם. להלן הסוגים העיקריים של רחפנים:

1. רחפנים חובבניים (Consumer Drones)

  • מאפיינים: רחפנים קלים יחסית לשימוש, המתאימים למשתמשים חובבים לצורך צילום, משחק או הנאה כללית.
  • יכולות: כוללים מצלמות באיכות טובה, קלות בהפעלה, ובדרך כלל יש להם מערכת טיסה אוטומטית, שמירה על גובה וייצוב טיסה.
  • דוגמאות: רחפנים כמו DJI Mavic Mini, DJI Phantom, Parrot Anafi.
  • שימושים: צילום מהאוויר, תיעוד נסיעות, יצירת תוכן למדיה חברתית.

2. רחפנים מקצועיים (Professional Drones)

  • מאפיינים: רחפנים אלו כוללים מצלמות ברמת מקצועית, יכולות צילום באיכות 4K ואפילו 8K, יציבות מעולה, ומערכות טיסה מתקדמות.
  • יכולות: טווח טיסה רחב יותר, עמידות בפני רוח, משקל גבוה יותר למצלמות מקצועיות, והם כוללים מערכות GPS, מערכות מניעת התנגשויות, ויכולות טיסה מתקדמות.
  • דוגמאות: DJI Inspire, Yuneec Typhoon H Pro.
  • שימושים: צילום קולנועי, פרויקטים מקצועיים בתעשיית המדיה, צילום אירועים, ומיפוי מקצועי.

3. רחפנים תעשייתיים (Industrial Drones)

  • מאפיינים: רחפנים גדולים וחזקים המיועדים לשימושים תעשייתיים, כמו פיקוח על תשתיות, עבודות הנדסיות, חקלאות, ועוד.
  • יכולות: עמידות בתנאים קשים, יכולות נשיאת ציוד כבד, שימוש במצלמות חום או חיישנים מתקדמים אחרים, וזמן טיסה ארוך.
  • דוגמאות: DJI Matrice, Freefly Alta.
  • שימושים: פיקוח על קווי חשמל, סריקת תשתיות, מיפוי חקלאי (Agri Drones), ניטור יערות ומדידות גיאוגרפיות.

4. רחפנים צבאיים (Military Drones)

  • מאפיינים: רחפנים לשימוש צבאי, מתוכננים לפעולות מודיעין, פיקוח, תקיפה או תובלה. רחפנים אלו יכולים להיות גדולים, משוכללים וכוללים טכנולוגיות מתקדמות.
  • יכולות: מצוידים בחיישנים מתקדמים, מצלמות לראיית לילה, חיישני חום, ואף מערכות נשק. הם פועלים בטווחים גדולים, לעיתים על פני יבשות שלמות.
  • דוגמאות: MQ-9 Reaper, RQ-4 Global Hawk.
  • שימושים: איסוף מודיעין, תקיפות כירורגיות, ניטור גבולות, ומשימות לוגיסטיות בשדה הקרב.

5. רחפנים לאספקה ולוגיסטיקה (Delivery Drones)

  • מאפיינים: רחפנים שתוכננו במיוחד לביצוע משימות אספקה והובלה של חבילות.
  • יכולות: נושאים מטענים קלים (בדרך כלל עד מספר קילוגרמים), ומצוידים במערכות GPS מתקדמות לניווט. חלקם מסוגלים לטוס אוטונומית.
  • דוגמאות: הרחפנים של Amazon Prime Air ושל Zipline.
  • שימושים: משלוחי חבילות מהירים, במיוחד באזורים כפריים או במצבי חירום (אספקת תרופות וציוד רפואי).

6. רחפנים לחקלאות (Agricultural Drones)

  • מאפיינים: רחפנים חקלאיים המיועדים לניטור ומעקב אחרי שטחים חקלאיים, ריסוס גידולים והערכת יבולים.
  • יכולות: מצוידים במצלמות מולטי-ספקטרליות וחיישנים למדידת מצב הצמחייה, משמשים גם לריסוס שדות בצורה מדויקת ומהירה.
  • דוגמאות: DJI Agras, Sentera V3.
  • שימושים: ניטור גידולים, מדידת לחות, ריסוס דשן וחומרי הדברה, זיהוי מחלות בגידולים.

7. רחפנים אוטונומיים (Autonomous Drones)

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

8. רחפני מירוצים (Racing Drones)

  • מאפיינים: רחפנים קטנים, מהירים וקלילים שתוכננו במיוחד לתחרויות מירוץ אווירי.
  • יכולות: מהירות טיסה גבוהה, יכולת תמרון חדה, ומערכת FPV (First-Person View) המאפשרת למפעיל לצפות ישירות מנקודת מבטו של הרחפן בזמן אמת.
  • שימושים: תחרויות מירוצי רחפנים, בהם המשתתפים שולטים ברחפנים בעזרת משקפי FPV.

9. רחפנים לתצפית ומעקב (Surveillance Drones)

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

סיכום

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

הפוסטים הבולטים

Html

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

פוסטים