קורס יסודות בינה מלאכותית RB29-15 –בינה מלאכותית API הסוד הגדול – רחפני בינה מלאכותית

קורס יסודות בינה מלאכותית RB29-15 –בינה מלאכותית API  הסוד הגדול

 

לפני שנתחיל 2 תרגילים כיפים של בינה מלאכותית

 

 

 


חלק א :  API – רישום , יצירת קוד עם בינה מלאכותית

 


 

תרגיל כיתה  1 : API – רישום , יצירת קוד עם בינה מלאכותית

  1.  צור חשבון באתר NASA

1.2 קישור לאתר     NASA    https://api.nasa.gov/

1.3 צור API תקבל אותו באמייל

1.4 בעזרת בינה  מלאכותית  ניתן לפתח  קוד בפייטון אשר מכיל את ה KEY שקיבלת

 

 

2. בקש מהבינה מלאכותי לפתח קוד שיראה לך תמונות של החלל מבוססות האתר של NASA API

3.בקש מבינה מלאוכתית להציג תמונה מהחלל  בעזרת קוד API

 

העשרה: API לאתר למסחר במניות (אחריות המשתמש בלבד)

4  https://alpaca.markets/

 


 

תרגיל 2  :  API chatgpt

2.1 צור בעזרת בינה מלאכותית  קישור ל CHATGP דרך אתר OPEN AI העזר במרצה

2.2 בנה קוד בבינה מלאכותית , אשר שולח בקשה ל chatGPT  דרך API

 

 


 

חלק ב : רחפנים ובינה מאלכותית

שימוש רחפן בחקלאות  ובינה מלאכותית

 

מעקב אחר בני אדם

חלקי מערכת הקרקע:

  • שלט רחוק (Transmitter): השלט שממנו מפעילים את הרחפן.

  • משקפי FPV (לא חובה): לצפייה בשידור החי מהרחפן.

  • אנטנות שידור/קליטה: משדרות ומקבלות אותות וידאו ופקודות בקרה.

 

  • מסגרת (Frame): שלדת הרחפן שמחזיקה את כל הרכיבים.

  • מנועים (Motors): מניעים את הרחפן, לרוב 4–8 מנועים.

  • פרופלורים (Propellers): מחוברים למנועים ומייצרים את הדחף.

  • בקר טיסה (Flight Controller – קרקר): המוח של הרחפן, מנהל ייצוב ובקרה. דוגמאות: Kakute, Matek, Omnibus.

  • ESC (Electronic Speed Controllers): שולטים במהירות המנועים לפי פקודות הבקר.

  • סוללה (LiPo Battery): מספקת חשמל לכל המערכת.

  • מקלט רדיו (Receiver): מקבל את הפקודות מהשלט.

  • GPS (לא חובה): לניווט ומיקום מדויק.

  • חיישנים (IMU): ג'יירו, אקסלרומטר וברומטר.

  • מצלמה (Camera): אופציונלית, לצילום וידאו ו-FPV.

  • VTX (Video Transmitter): משדר את הווידאו מהמחשב או המצלמה למשקפיים/מסך.

  • אנטנות: לשידור וקליטת אותות וידאו/רדיו.

 


שלושת מערכות ההפעלה המובילות לרחפנים:

מערכת הפעלה יתרונות עיקריים תמיכה במיקרו-בקר חיצוני ובינה מלאכותית?
Betaflight – מיקוד ב-FPV מהיר ותגובות חדות.
– אידאלי למרוצי רחפנים (Racing).
– הכי קל להגדרה עם ממשק GUI ידידותי.
מוגבל. לא מיועדת לשילוב ישיר של מיקרו-בקר חיצוני/AI, אך ניתן להוסיף מערכות חיצוניות (למשל עיבוד תמונה ב-RPi) במקביל.
INAV – תומכת בניווט GPS, Waypoints, RTH.
– מעולה לרחפנים לטיולים, משימות אוטונומיות, ואפילו למטוסים.
– שילוב חזק עם חיישני GPS, ברומטר, מצפן.
תומכת באופן חלקי (I2C, UART) למיקרו-בקר חיצוני, וניתן להוסיף מודולים חיצוניים ל-AI (למשל ESP32, Raspberry Pi).
ArduPilot (ArduCopter) – הפתרון הכי מקצועי ורב-שימושי.
– תומך בכלי טיס, רכבים יבשתיים, סירות ועוד.
– יכולות מתקדמות כמו טיסה אוטונומית, מערכות SLAM, ויכולת התאמה גבוהה.
כן! תומכת באופן מלא במיקרו-בקרים חיצוניים, עיבוד AI (למשל Jetson Nano, Raspberry Pi), ומשלבת פרוטוקולים כמו MAVLink. הכי מתקדמת לשילוב AI.

 


בינה מלאכותית עם שילוב רחפן

שלב ראשון כתיבת קוד לרחפן אטונומי  במערכת INAV

כדי לשלוט ברחפן עם בקר טיסה מבוסס INAV באמצעות ארדואינו, תוכל להשתמש בפרוטוקול MAVLink לשליחת פקודות כמו המראה, טיסה לנקודת GPS מסוימת ונחיתה.

דרישות:

  • בקר טיסה תואם ל-INAV (למשל, Holybro Kakute H743-Wing)

  • מודול GPS (כגון GP-1818MK)

  • ארדואינו (Uno, Mega, או ESP32)

  • ספריית MAVLink מותקנת ב-Arduino IDE

  • חיבור UART בין הארדואינו לבקר הטיסהArduPilot Discourse

🛠️ קוד לדוגמה:

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


אותו קוד בפייטון

 

 

MAVLink Command Reference for Drones

MAVLink Command Code Description Usage Example (Typical Params)
Arm/Disarm MAV_CMD_COMPONENT_ARM_DISARM (400) Arm or disarm motors. param1: 1 = Arm, 0 = Disarm. Others: 0.
Takeoff MAV_CMD_NAV_TAKEOFF (22) Take off to a given altitude. param7: Altitude. Lat/Lon optional.
Land MAV_CMD_NAV_LAND (21) Land at the current or specified location. All params usually 0 for basic landing.
Return to Launch (RTL) MAV_CMD_NAV_RETURN_TO_LAUNCH (20) Return to the takeoff point and land. All params 0.
Fly to Waypoint (GPS) MAV_CMD_NAV_WAYPOINT (16) Fly to a specific GPS coordinate. param5-7: Latitude, Longitude, Altitude.
Loiter (Circle) MAV_CMD_NAV_LOITER_UNLIM (17) Circle at the current location indefinitely. param3: Radius. Others optional.
Loiter Turns MAV_CMD_NAV_LOITER_TURNS (18) Circle for a set number of turns. param1: Turns, param3: Radius.
Loiter Time MAV_CMD_NAV_LOITER_TIME (19) Circle for a set amount of time (in seconds). param1: Time, param3: Radius.
Change Speed MAV_CMD_DO_CHANGE_SPEED (178) Change airspeed or ground speed. param1: 0=airspeed, 1=groundspeed, param2: speed (m/s).
Set Mode MAV_CMD_DO_SET_MODE (176) Change the flight mode. param1: Mode (e.g., 4=Guided).
Pause Mission MAV_CMD_MISSION_PAUSE (193) Pause current mission. All params 0.
Resume Mission MAV_CMD_MISSION_START (300) Resume a paused mission. param1: Starting waypoint index.
Start/Stop Video MAV_CMD_VIDEO_START_CAPTURE (2500) / MAV_CMD_VIDEO_STOP_CAPTURE (2501) Start/stop video recording. Params: Camera ID, Frequency, etc.
Start/Stop Image Capture MAV_CMD_IMAGE_START_CAPTURE (2000) / MAV_CMD_IMAGE_STOP_CAPTURE (2001) Start/stop still image capture. Params: Camera ID, Interval, Count.
Reboot/Shutdown FC MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN (246) Reboot or shutdown the flight controller. param1: 1=reboot autopilot.

 


שילוב YOLO בינה מלאכותית ורחפן

נפתח  תוכנה מבוססת בינה מלאוכתית אשר מחברת בין מצלמה שמחוברת ל-Raspberry Pi לבין הרחפן שלך (שמבוסס על INAV/Pixhawk).
היא מבצעת את הפעולות הבאות:
✅ מצלמת ה-Raspberry Pi מצלמת בזמן אמת את מה שהרחפן רואה.
✅ אלגוריתם בינה מלאכותית (YOLOv8) מזהה עצמים בתמונה – כמו אנשים, מכוניות, חפצים וכו’.
✅ ברגע שהתוכנה מזהה מכשול (כל דבר שהוא לא "אדם" בדוגמה הזו), היא שולחת פקודה למחשב הטיסה של הרחפן:
1️⃣ לעצור את הרחפן (Disarm – ניתוק המנועים)
2️⃣ להמריא בחזרה לגובה 15 מטר – כדי לעבור מעל המכשול.
✅ התהליך קורה בזמן אמת: המצלמה מזהה, המידע מנותח, והרחפן מגיב מיד בהתאם.


 איפה נכנסת הבינה המלאכותית?

הבינה המלאכותית פועלת בחלק של זיהוי העצמים בתמונה – בעזרת מודל YOLOv8:

  • המודל "מאומן" לזהות עצמים שונים בתמונות: למשל, בני אדם, מכוניות, אופניים, בעלי חיים, ועוד.

  • הוא מזהה כל עצם, מקיף אותו במסגרת, ומסווג אותו לפי סוג (Label) כמו "person", "car", "dog".

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

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


מתי משתמשים בזה?

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

 

Raspberry Pi + YOLO + INAV (via MAVLink) Example

Setup Requirements

Raspberry Pi (with camera module)
INAV Flight Controller (Pixhawk, Kakute, etc.)
MAVLink enabled on INAV (UART)
Python libraries:

 

 

 

שימושים ב FPV רחפנים


רחפנים עם סיבים אופטים



 

 

מבנה חומרה של רחפן – הסבר בהרצאה מה תפקיד של כל רכיב

 


 


INAV

העשרה

 

 


חלק ג : חזרה על  YOLO תרגיל כיתה

חלק א : אימון yolo colab

הסבר שלב אחרי שלב בהמשך הדף קישור לקוד אימון בינה מלאכותית

https://colab.research.google.com/gist/RoboWild/19deff31306d95d2e315a9e1d331f156/yolo-train.ipynb

1.1 קישור לתוכנה לסימון תוויות עבור YOLO מודל     : https://www.makesense.ai/


תרגיל כיתה 2

YOLO מודל

  1. יש לעבוד לפי הסרטון שלב אחרי שלב .
  2. הסרטון הוא המשך של הרצאה RB23-09 RB23-08 שם מוספר שלב אחרי שלב של התקנת הסביבה פיתוח , תוספים


תרגיל כיתה 2

YOLO מודל

אימון רשתזיהוי טנק

2.1  נעבור על הקוד שלב אחרי שלב


סביבת קולאב    COLAB :–  YOLO מודל yolo

שלב 1 :  התקנת הסיפריות (עושים פעם אחת בלבד בסביבת הפיתוח)

בסוף התקנת הספריות אם אין שגיעות נקבל הודעת DONE כלומר סיים להתקין


שימו לב : סיבבת הפיתוח הקבצים תראה כך לפני ההתקנה

אנחנו עובדים על ספריית CONTENT


שלב 2 : יצירת קובץ yaml

לאחר ההתקנה נקבל

ואפשר לראות את תוכן הקובץ – קליל כפול עם העכבר על שם הקובץ

חילוץ הקובץ  מ RAR : 

לאחר החילוץ RAR ולחיצה על TANK

שלב 3 :  התקנת קבצי התמונות והתוויות – (labels)  בסביבת – אימון

נתקין את התונות על יהיה העתקה  או יבואו או הורדה לסביבית הפיתוח שנאמן את הבינה המלאכותית – חייב להיות מאוד מדוייק – טעות הכי קטנה וזה לא יעבוד . . סביבת האימון יכולה להיות COLAB או ANACONDA  או אחר  ?

………………………………………………………………………………………………

נוריד מ GOOGLE DRIVE קובץ RAR שמכיל תמונות ו LABELS במבנה  הנכון – חובה מבנה נכון 

חילוץ קובץ RAR

https://colab.research.google.com/gist/RoboWild/19deff31306d95d2e315a9e1d331f156/yolo-train.ipynb

שלב 4 : אימון בינה מלאכותית מודל YOLO

יבוא ספריות , ויבוא המודל

נקבל את הספריות הבאות שימו לב על קובץ YOLOV8M.PT 

אימון הבינה מלאכותית  לפי קובץ YAML – זה המקום שהבינה מלאכותית לומדת

בסוף האימון של הבינה מלאכותית נקבל את הפלט הבא :

פעולת האימון של הבינה מלאכותית הסתיימה 

מודל שלנו מאומן


שלב 5: בדיקה איך הבינה שלנו למדה ניתוח הליך הלימוד  – נילמד בהמשך


שלב 6 : הרצה של קובץ של המודל שאומן

נחפש בתוך ספריית RUN את ה DETECT האחרון אם נרית כמה פעמים המספר יכול להשתנות של DETECT

נגדיר אובייקט PRE לפי המיקום של הקובץ BEST.PT

שימו לב : המיקום עשוי להשתנות בנתיב לפי שינוי בשם DETECT 

ואז ניטען אותו – אפשר להעביר למחשבים אחרים או מיקרו מעבדים שונים

 

 

הרצה של הבינה מלאכותית – שורת קוד אחת בלבד !  כל השאר קוד פייתון

את התוצאה נקבל לתוך ספריה

קוד מתקדם יותר

https://colab.research.google.com/drive/1Iim5HYrT0wGJyEc6SHFkiZtkRmlLiv70#scrollTo=PQXWhPmU5NBk



כתיבת תגובה