חיבור מצלמה למיקרובקר

חיבור מצלמה למיקרו בקר ויצירה של מצלמת אבטחה מרחוק בעלות של 20 שקל.

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

נדרש ידע והבנה ב-ESP32 על מנת לקרוא ולהבין פוסט זה. אם אין לכם – ממש לא נורא ואפשר להתחיל בפוסט הזה שלי המסביר על ESP32 להורים וילדים והוא מבוא לסדרת פוסטים בנושא שקריאה שלהם תביא כל אחד למצב שהוא יודע לעבוד עם מיקרופייתון ו-ESP32.

המצרכים:

ESP32 עם מצלמה – זה לא ESP32 רגיל אלא ESP32 שיש בו מקום למצלמה וכמובן מצלמה. האמת היא שאפשר לקנות אותם בנפרד אבל אני ממליץ לרכוש אותם ביחד כשהם כבר מחוברים ומולחמים. זה עולה עוד שני שקלים (ליטרלי שני שקלים) אבל מונע הסתבכות באלקטרוניקה. דוגמה למה שאני קניתי ועובד איתו. שימו לב שזה לא לינק אפיליאציה כי אני לא משפיענית אינסטוש. אפשר גם לחפש ESP32-CAM ESP32-CAM-MB MICRO USB ESP32 Serial to WiFi ESP32 CAM Development Board בגוגל.

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

בתמונה התריס פתוח - פתחתי אותו עם הציפורן בזהירות והשחלתי את הסרט של המצלמה.

בתמונה שלמעלה התריס פתוח – פתחתי אותו עם הציפורן בזהירות והשחלתי את הסרט של המצלמה.

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

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

שלב התוכנה

הכי קל, מהניסיון שלי, זה לצרוב Firmware שכולל בתוכו את הדרייבר של המצלמה ובמקרה של ESP32 camera זה ממש פשוט. יש לנו את esp32-cam-micropython-2022 שהוא יופי של דרייבר וגם בא עם הוראות פשוטות ומדויקות. אנחנו נוריד את firmware.bin למחשב. פשוט מאתרים את firmware.bin ברשימה (אפשר להעזר בקישור הישיר הזה) ולוחצים על האייקון של ההורדה.

את ה-Firmware שהורדנו אנחנו צורבים עם Thonny כפי שהסברתי בפוסט הזה. מי שמכיר ועובד עם ESP32 לא יתקשה להתמודד עם זה וזה שלב באמת פשוט.

נתחבר עם Thonny אחרי הצריבה (מהניסיון שלי – עדיף לנתק ולחבר שוב את ה-ESP32 ולהמתין כשתי דקות). אם הכל תקין, אנו נתחבר בקונסולה וב-REPL (המקום שבו אפשר להקליד פקודות של פייתון) את הסטטוס הזה:

MicroPython v1.18-610-gcf7d962cf-kaki5 on 2022-06-10; ESP32 CAMERA module (KAKI5) with ESP32

אחרי שנצחק קצת על זה שכתוב שם kaki, נכניס ל-REPL את הפקודות הבאות ונראה אם באמת יש את הפלט:

>>> import camera

>>> camera.init()

True # אם הוא לא מדפיס True, נתקו את המיקרובקר מהחשמל וחברו מהחשמל והמתינו כמה דקות

>>> img=camera.capture()

>>> len(img)

58810 # או מספר אחר

>>>

זה עובד? מעולה! הכל מוכן! אפשר להתחיל לעבוד!

פלט תקין של קונסולה.

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

help.py
html.py
site.py
webcam.py
wifi.py

שימו לב להכניס ב-wifi.py את פרטי הרשת שלכם!

ואז להקליד ב-REPL:

execfile('webcam.py')

ירוץ שרת ווב עם קישור – תלחצו על הקישור שבו אפשר לראות בזמן אמת את הפלט של המצלמה!

הרצה של שרת - הפלט הוא - חיבור לרשת ואז קישור

ואפשר להכנס לכתובת, שזמינה ברשת שלכם ולבדוק את המצלמה בזמן אמת.

אפשר להריץ שם גם פיד חי והכל. מאד מאד כיפי!

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

ועוד הערה רק על בטיחות. שימו לב שהשרת הזה פתוח החוצה תיאורטית וכל אחד חמוש ב-shodan יכול לגשת אליו. נכון, יש פה סוג של אבטחה אבל זה באמת לא יעצור מישהו שירצה להכנס. שימו לב להשתמש ב-FireWall או לפחות לא להציב את המצלמה במקום רגיש. מסדרון מחוץ לבית? זה בסדר. חדר השינה שלכם? פחות.

פוסטים נוספים שכדאי לקרוא

פתרונות ומאמרים על פיתוח אינטרנט

נגישות טכנית – פודקאסט ומבוא

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

גלילה לראש העמוד