সুচিপত্র:

ESP32 CAM দিয়ে শুরু করা - ইএসপি ক্যাম ব্যবহার করে স্ট্রিমিং ভিডিও ওয়াইফাই - ESP32 সিকিউরিটি ক্যামেরা প্রজেক্ট: 8 ধাপ
ESP32 CAM দিয়ে শুরু করা - ইএসপি ক্যাম ব্যবহার করে স্ট্রিমিং ভিডিও ওয়াইফাই - ESP32 সিকিউরিটি ক্যামেরা প্রজেক্ট: 8 ধাপ

ভিডিও: ESP32 CAM দিয়ে শুরু করা - ইএসপি ক্যাম ব্যবহার করে স্ট্রিমিং ভিডিও ওয়াইফাই - ESP32 সিকিউরিটি ক্যামেরা প্রজেক্ট: 8 ধাপ

ভিডিও: ESP32 CAM দিয়ে শুরু করা - ইএসপি ক্যাম ব্যবহার করে স্ট্রিমিং ভিডিও ওয়াইফাই - ESP32 সিকিউরিটি ক্যামেরা প্রজেক্ট: 8 ধাপ
ভিডিও: ESP32 Tutorial 45- Custom Streamign Server with LED control CAM-3 l SunFounder's ESP32 Learnig kit 2024, নভেম্বর
Anonim
ESP32 CAM দিয়ে শুরু করা | ইএসপি ক্যাম ব্যবহার করে স্ট্রিমিং ভিডিও ওয়াইফাই | ESP32 নিরাপত্তা ক্যামেরা প্রকল্প
ESP32 CAM দিয়ে শুরু করা | ইএসপি ক্যাম ব্যবহার করে স্ট্রিমিং ভিডিও ওয়াইফাই | ESP32 নিরাপত্তা ক্যামেরা প্রকল্প

আজ আমরা শিখব কিভাবে এই নতুন ESP32 CAM বোর্ড ব্যবহার করতে হয় এবং কিভাবে আমরা এটি কোড করতে পারি এবং এটি একটি নিরাপত্তা ক্যামেরা হিসাবে ব্যবহার করতে পারি এবং ওয়াইফাই এর মাধ্যমে একটি স্ট্রিমিং ভিডিও পেতে পারি।

ধাপ 1: আপনার প্রয়োজনীয় জিনিসগুলি

জিনিস আপনার প্রয়োজন
জিনিস আপনার প্রয়োজন
জিনিস আপনার প্রয়োজন
জিনিস আপনার প্রয়োজন

আমরা শুরু করার আগে নিশ্চিত হয়ে নিন যে আপনার সাথে নিম্নলিখিত বিষয়গুলি রয়েছে: ESP 32 CAM:

FTDI:

ধাপ 2: ESP32 Arduino IDE সেটআপ

ESP32 Arduino IDE সেটআপ
ESP32 Arduino IDE সেটআপ

নিশ্চিত করুন যে আপনার পিসিতে Arduino IDE আছে এবং আপনি আপনার Arduino IDE এ ESP32 বোর্ড ইনস্টল করেছেন, এবং যদি এটি না হয় তবে দয়া করে এটি ইনস্টল করার জন্য আমার নিম্নলিখিত নির্দেশাবলী অনুসরণ করুন।:

ধাপ 3: ESP32 CAM বোর্ড স্পেসিফিকেশন

ESP32 CAM বোর্ড স্পেসিফিকেশন
ESP32 CAM বোর্ড স্পেসিফিকেশন

আমরা কিছু করতে যাওয়ার আগে নিশ্চিত হয়ে নিন যে আপনি ESP32 CAM বোর্ডের স্পেসিফিকেশন এবং পিনআউট ইত্যাদি জানেন, এবং সেই পিনআউট ইমেজ যোগ করার জন্য দয়া করে উল্লেখ করুন এবং ESP32 CAM বোর্ডের স্পেসিফিকেশন নিচে দেওয়া হল: সবচেয়ে ছোট 802.11b/g/n Wi-Fi BT SoC মডিউল নিম্ন ক্ষমতার 32-বিট CPU, 160MHz ঘড়ির গতি পর্যন্ত অ্যাপ্লিকেশন প্রসেসর পরিবেশন করতে পারে, 600 DMIPS পর্যন্ত সংক্ষিপ্ত কম্পিউটিং পাওয়ার বিল্ট-ইন 520 KB SRAM, বাহ্যিক 4MPSRAM UART/SPI/I2C/PWM/ADC/DAC সমর্থন সমর্থন OV2640 এবং OV7670 ক্যামেরা, অন্তর্নির্মিত ফ্ল্যাশ ল্যাম্প সাপোর্ট ইমেজ ওয়াইফাই আপলোড সাপোর্ট টিএফ কার্ড একাধিক স্লিপ মোড সাপোর্ট করে এম্বেডেড লুইপ এবং ফ্রিআরটিএস সমর্থন করে এসটিএ/এপি/এসটিএ+এপি অপারেশন মোড সাপোর্ট স্মার্ট কনফিগ/এয়ারকিস প্রযুক্তি সিরিয়াল পোর্ট লোকাল এবং রিমোট ফার্মওয়্যার আপগ্রেড (FOTA) পিন মাইক্রোএসডি কার্ড রিডারের জন্য ব্যবহৃত হয়: CLKGPIO 15: CMDGPIO 2: Data 0GPIO 4: Data 1 (on-board LED এর সাথেও সংযুক্ত) GPIO 12: Data 2GPIO 13: Data 3

ধাপ 4: সবকিছু একসাথে সংযুক্ত করুন

সবকিছু একসাথে সংযুক্ত করুন
সবকিছু একসাথে সংযুক্ত করুন

এই জিনিসটি প্রোগ্রাম করার জন্য আমাদের এই FTDI/usb কে ttl এর সাথে সংযোগ করতে হবে কারণ এই বোর্ডটি নেই তাই Ftdi/usb কে stmatics অনুযায়ী ttl এর সাথে সংযুক্ত করুন।

ধাপ 5: কোড পাওয়া

আপনার Arduino IDE তে, File> Examples> ESP32> Camera এ যান এবং CameraWebServer example খুলুন। অথবা আপনি নিম্নলিখিত কোডটি ব্যবহার করতে পারেন, নিচের কোডটি কপি করুন: #include "esp_camera.h" #include #include "esp_timer.h" #অন্তর্ভুক্ত "img_converters.h"#অন্তর্ভুক্ত "Arduino.h"#অন্তর্ভুক্ত "fb_gfx.h"#অন্তর্ভুক্ত "soc/soc.h" // ব্রাউনআউট সমস্যাগুলি অক্ষম করুন অন্তর্ভুক্ত করুন "dl_lib.h" #include "esp_http_server.h" // আপনার নেটওয়ার্ক ক্রেডেনশিয়ালের সাথে প্রতিস্থাপন করুন char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD";#এই প্রজেক্ট 24000000#240000 দিয়ে নির্ধারণ করুন এআই থিঙ্কার মডেল, M5STACK PSRAM মডেল এবং M5STACK ছাড়া PSRAM # সংজ্ঞায়িত CAMERA_MODEL_AI_THINKER // # সংজ্ঞায়িত CAMERA_MODEL_M5STACK_PSRAM // # সংজ্ঞায়িত CAMERA_MODEL_M5STACK_WITHOUT_PSRAM // এই মডেল সঙ্গে পরীক্ষা নেই // # CAMERA_MODEL_WROVER_KIT # সংজ্ঞায়িত যদি সংজ্ঞায়িত (CAMERA_MODEL_WROVER_KIT) # define PWDN_GPIO_NUM -1 # define RESET_GPIO_NUM -1 #XCLK_G নির্ধারণ করুন PIO_NUM 21 # define SIOD_GPIO_NUM 26 # define SIOC_GPIO_NUM 27 # define Y9_GPIO_NUM 35 # define Y8_GPIO_NUM 34 # define Y7_GPIO_NUM 39 # define Y6_GPIO_NUM 36 # define Y5_GPIO_NUM 19 # define Y4_GPIO_NUM 18 # define Y3_GPIO_NUM 5 # define Y2_GPIO_NUM 4 # define VSYNC_GPIO_NUM 25 # define HREF_GPIO_NUM 23 # define PCLK_GPIO_NUM 22 # Elif সংজ্ঞায়িত (CAMERA_MODEL_M5STACK_PSRAM) # define PWDN_GPIO_NUM -1 # define RESET_GPIO_NUM 15 # define XCLK_GPIO_NUM 27 # define SIOD_GPIO_NUM 25 # define SIOC_GPIO_NUM 23 # define Y9_GPIO_NUM 19 # define Y8_GPIO_NUM 36 # define Y7_GPIO_NUM 18 # define Y6_GPIO_NUM 39 # define Y5_GPIO_NUM 5 # define Y4_GPIO_NUM 34 # define Y3_GPIO_NUM 35 # define Y2_GPIO_NUM 32 # define VSYNC_GPIO_NUM 22 # define HREF_GPIO_NUM 26 # define PCLK_GPIO_NUM 21 # Elif সংজ্ঞায়িত (CAMERA_MODEL_M5STACK_WITHOUT_PSRAM) # define PWDN_GPIO_NUM -1 # define RESET_GPIO_NUM 15 # define XCLK_GPIO_NUM 27 # define SIOD_GPIO_NUM 25 # define SIOC_GPIO_NUM 23 #Y9_GPIO_NUM 19 #ডিফাইন Y8_GPIO_NUM 36 #ডিফাইন Y7_GPIO_NUM 18 #ডিফাইন Y6_ GPIO_NUM 39 # define Y5_GPIO_NUM 5 # define Y4_GPIO_NUM 34 # define Y3_GPIO_NUM 35 # define Y2_GPIO_NUM 17 # define VSYNC_GPIO_NUM 22 # define HREF_GPIO_NUM 26 # define PCLK_GPIO_NUM 21 # Elif সংজ্ঞায়িত (CAMERA_MODEL_AI_THINKER) # define PWDN_GPIO_NUM 32 # define RESET_GPIO_NUM -1 # define XCLK_GPIO_NUM 0 # SIOD_GPIO_NUM 26 # define SIOC_GPIO_NUM 27 # define Y9_GPIO_NUM 35 # define Y8_GPIO_NUM 34 # define Y7_GPIO_NUM 39 # define Y6_GPIO_NUM 36 # define Y5_GPIO_NUM 21 # define Y4_GPIO_NUM 19 # define Y3_GPIO_NUM 18 # define Y2_GPIO_NUM 5 # define VSYNC_GPIO_NUM 25 # define HREF_GPIO_NUM 23 # define PCLK_GPIO_NUM সংজ্ঞায়িত 22#অন্য#ত্রুটি "ক্যামেরা মডেল নির্বাচিত নয়" #endifstatic const char* _STREAM_CONTENT_TYPE = "মাল্টিপার্ট/এক্স-মিক্সড-রিপ্লেস; সীমানা =" PART_BOUNDARY; ic n "; স্ট্যাটিক const char * _STREAM_PART =" বিষয়বস্তু-প্রকার: image/jpeg / r / n কন্টেন্ট-দৈর্ঘ্য: %u / r / n / r / n "; httpd_handle_t stream_httpd = NULL; static esp_err_t stream_handler (httpd_req_t {camera_fb_t * f b = শূন্য; esp_err_t res = ESP_OK; size_t _jpg_buf_len = 0; uint8_t * _jpg_buf = শূন্য; char * part_buf [64]; res = httpd_resp_set_type (req, _STREAM_CONTENT_TYPE); যদি (res! = ESP_OK) {return res; } যখন (সত্য) {fb = esp_camera_fb_get (); যদি (! fb) {Serial.println ("ক্যামেরা ক্যাপচার ব্যর্থ"); res = ESP_FAIL; } অন্য {if (fb-> width> 400) {if (fb-> format! = PIXFORMAT_JPEG) {bool jpeg_converted = frame-j.webp

ধাপ 6: কোড আপলোড করুন

কোড আপলোড করুন
কোড আপলোড করুন

কোডটি পাওয়ার পর, আপনাকে কোডটি আপলোড করতে হবে এবং কোডটি আপলোড করার জন্য কিছু সেটিংস প্রয়োজন তাই নিশ্চিত করুন যে আপনি আপলোড করার সময় নিম্নলিখিত কাজটি করেছেন কারণ এটি একটি আলিঙ্গন কোড তাই এটি স্বাভাবিক পদ্ধতিতে আপলোড করা হবে না। সরঞ্জাম> বোর্ডে যান এবং ESP32 Wrover মডিউল নির্বাচন করুন Tools> Port এ যান এবং COMP পোর্টটি নির্বাচন করুন ESP32 Tools> Partition Scheme- এ, “Huge APP (3MB No OTA)” নির্বাচন করুন, কোড আপলোড করার আগে, আপনাকে নিচের অংশে আপনার ওয়াইফাই ক্রেডেনশিয়াল ইনপুট করতে হবে। কোড: const char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD"; এবং নিশ্চিত করুন যে আপনি সঠিক ক্যামেরা মডিউল নির্বাচন করেছেন। এখানে যেমন আমরা AI-THINKER মডেল ব্যবহার করছি তাই নিচের বিষয়গুলি নির্বাচন করুন, তাই সব মন্তব্য করুন অন্যান্য মডেলগুলি এবং এটিকে অস্বস্তিকর করে:#সংজ্ঞায়িত করুন CAMERA_MODEL_AI_THINKER ESP32-CAM অন-বোর্ড রিসেট বোতাম টিপুন তারপর, কোড আপলোড করতে আপলোড বোতামে ক্লিক করুন।

ধাপ 7: আইপি পাওয়া

আইপি পাচ্ছি
আইপি পাচ্ছি

GPIO0 এবং GND এর মধ্যে সংযুক্ত জাম্পারটি সরান, তারপর বড রেট দিয়ে সিরিয়াল মনিটর খুলুন: 115200 এবং তারপর ESP32-CAM রিসেট বোতাম টিপুন এবং আইপি প্রদর্শিত হওয়ার জন্য অপেক্ষা করুন এবং কয়েক সেকেন্ড অপেক্ষা করুন এবং তারপর আবার রিসেট করুন। দেখুন আমি আমার আইপি পেয়েছি এবং এটি ছবিতে হাইলাইট করা হয়েছে।

ধাপ 8: ওয়াইফাই স্ট্রিমিং ভিডিও পাওয়া

ওয়াইফাই স্ট্রিমিং ভিডিও পাওয়া
ওয়াইফাই স্ট্রিমিং ভিডিও পাওয়া

আপনার ব্রাউজারটি খুলুন এবং নিশ্চিত করুন যে আপনার পিসি ESP32 CAM এর মতো একই নেটওয়ার্কে সংযুক্ত এবং তারপর আপনার ব্রাউজারে আইপি টাইপ করুন তারপর স্ট্রিম বাটনে ক্লিক করুন এবং আপনি আপনার ভিডিও স্ট্রিম পাবেন এবং এখানে কয়েকটি সেটিংস আছে যাতে আপনি সেগুলি চেষ্টা করতে পারেন এবং একটি ভাল ভিডিও পেতে।

প্রস্তাবিত: