آردوینو آموزش آردوینو اینترنت اشیا IOT برد Esp32 برد ESP8266 برد Nodemcu خانه هوشمند ماژول دوربین

ارسال تصویر به ایمیل با ESP32-CAM

ارسال تصاویر به ایمیل ESP32-cam
نوشته شده توسط CiferTech

در آموزش قبلی از سری آموزش‌های مربوط به برد توسعه ESP32-CAM نحوه راه اندازی و استریم کردن تصاویر را به شما آموزش دادیم، در این آموزش تصاویر را از دوربین ESP Cam دریافت کرده با استفاده از این برد تصاویر را ثبت و به ایمیل مقصد ارسال کنیم، برای اطلاع از نحوه داه اندازی برد به این آموزش مراجعه کنید.

 


تراشه ESP32


ESP32 نسل پیشرفته ESP8266 است. یکی از تفاوت‌های آن بلوتوث داخلی‌اش می‌باشد. همچنین دارای هسته وایفای ۲,۴ گیگا هرتزی و بلوتوث داخلی تولید شده با تکنولوژی ۴۰ نانومتری شرکت TSMC می‌باشد. این ماژول دارای بهترین پرفورمنس در مصرف انرژی می‌باشد یعنی با کمترین مصرف انرژی بهترین نتیجه را برای ما به همراه دارد. اگر بخواهیم دقیق‌تر به این برد نگاه کنیم باید بگوییم که این یک chip است که پلتفرم NodeMCU در اون پیاده سازی شده که به این نوع چیپ ها System on a chip microcontrollers هم گفته می‌شود.

ارسال تصاویر به ایمیل ESP32-cam

از دیگر امکانات ماژول ESP32-cam می‌توان به دوربین OV2640 با قابلیت ثبت تصویر با فرمت JPEG, BMP, grayscale اشاره کرد. همچنین با LED flash مونتاژ شده بر روی این ماژول قادر به تصویر برداری در مکان‌های تاریک نیز خواهید بود. یکی از ویژگی‌های کاربردی این ماژول ورودی micro SD با قابلیت ارتقا تا ۴GB است که به کاربر اجازه ذخیره تصاویر را هم می‌دهد.

 


SMTP Server


SMTP یا “Simple Mail Transfer Protocol” یک استاندارد برای ارسال اطلاعات به ایمیل است. پس در نتیجه برای ارسال اطلاعات از ESP32 باید از این سرویس استفاده کنیم. در این آموزش برد ESP32-CAM مبدا و ایمیل ما مقصد است. همچنین محتوای ارسالی هم تصاویر ثبت شده توسط دوربین ESP32-Cam است. برای ارسال این اطلاعات نیاز به پیش نیازهایی داریم در ابتدا به کتابخانه ESP32 MailClient library می پردازیم.

ارسال تصاویر به ایمیل ESP32-cam


کتابخانه ESP32 MailClient library


با استفاده از این کتابخانه کاربر قادر خواهد بود فایل هایی برای نمونه با پسوند .txt با .jpg را برای سرویس ایمیل ارسال کند، که در این آموزش فایل مد نظر ما تصاویر ثبت شده ESP32-cam می باشد که فرمت آن ها نیز .jpg می باشد. خب حالا نوبت نصب این کتاخانه در بستر آردوینو IDE می باشد که چند مرحله بسیار ساده دارد؛ در اولین مرحله مسیر Sketch/Include library/Manage libraries را دنبال کنید.

ارسال تصاویر به ایمیل ESP32-cam

در پنجره باز شده با وارد کردن نام کنابخانه مربوط که در اینجا “ESP32 MailClient” می باشد، اقدام دانلود و نصب کتابخانه بکنید.

ارسال تصاویر به ایمیل ESP32-cam

در ادامه مانند تصویر زیر نرم افزار اقدام به دانلود فایل های مربوط میکند.

ارسال تصاویر به ایمیل ESP32-cam

 


ایمیل ارسال کننده


خب در اینجا ما نیاز به یک ایمیل داریم داریم تا اطلاعات مورد نیاز ما از مقصد این ایمیل به inbox ایمیل اصلی ما ارسال شود که پیشنهاد میکنم از ایمیل های اصلی خود برای این منظور استفاده نکنید و اقدام به ساخت یک ایمیل جدید کنید به این دلیل که باید دسترسی هایی خاصی به این ایمیل داده شود. بعد از ساخت ایمیل جدید به این لینک مراجعه کنید و اقدام فعال کردن دسترسی مورد نیاز بکنید.

ارسال تصاویر به ایمیل ESP32-cam

تنظیمات سرویس Gmail برای STMP:

  • SMTP Server: smtp.gmail.com
  • SMTP username: آدرس کامل جیمیل
  • SMTP password: پسوورد جیمیل
  • SMTP port (TLS): ۵۸۷
  • SMTP port (SSL): ۴۶۵
  • SMTP TLS/SSL required: yes

 


کد مرجع ESP32 ارسال ایمیل


 با ویزایش کردن موارد مورد نیاز که در کد زیر ذکر شده اقدام به آپلود کردن کد در برد ESP32-cam بکنید. در صورتی که در فرآینده آپلود با مشکل مواجه شدید به آموزش مقدماتی ESP32-cam که در ابتدای آموزش نیز به آن اشاره شد مراجعه کنید.

 

در کد مواردی که در تصویر زیر به آن ها اشاره شده را با توجه به توضیحات ویرایش کنید.

ارسال تصاویر به ایمیل ESP32-cam

 


تنظیمات ایمیل


همانطور که در بخش کد ها اشاره به مواردی که باید مورد ویرایش قرار بگیرند در این قسمت توضیحات تکمیلی برای شما ارائه خواهد شد. در این قسمت ایمیلی که ساختید و دسترسی هایی را برای آن فعال کردید را وارد کنید که در واقع همان ایمیل است که اطلاعات را برای ایمیل اصلی ما ارسال می کند.

 

در قسمت بعد باید ایمیل اصلی خود که قرار است از طرق آن اطلاعات را دریافت کنید وارد کنید.

 

در قسمت تنظیمات SMTP از موارد زیر استفاده میکنیم به این دلیل سرویس ایمیلی که از آن استفاده میکنیم GMAIL می باشد.

 

در قسمت emailSubject اسمی که دوست دارید اسمسل ها با آن نام برای شما ارسال شود را وارد کنید، در غیر این صورت هیچ ویرایشی برای روی آن انجام ندهید.

 


کتابخانه های استفاده شده!


در این آموزش از چهار کتابخانه استفاده شده که به ترتیب؛ ESP32_MailClient.h که برای ارسال ایمیل از آن استفاده می شود، FS.h و SPIFFS.h که برای ذخیره و دسترسی به SPIFFS استفاده میشوند و در نهایت WiFi.h که برای برقراری اتصال ESP با شبکه محلی استفاده می شود.

 


قطعات مورد نیاز


ماژول ESP32-CAM

 

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند می‌توانید از همین طریق اطلاع رسانی کنید.

 

در پایان نظرات  و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

درباره نویسنده

CiferTech

فقط 10 نوع آدم در این دنیا وجود داره، اونی که باینری میفهمه و اونی که باینری نمیفهمه! ^-^

~ اینستاگرام: CiferTech

تبادل نظر و رفع عیب با ثبت دیدگاه

۳۴ دیدگاه

  • سلام مهندس .
    من اقدام به ساخت این پروژه کردم .
    اما چند سوال دارم .
    خوب شما گفتید که ماژول عکس را میگیرد و به ایمیل من ارسال میکند. اما باید دکمه ریست ماژول را فشار دهیم تا عکس گرفته شود و به ایمیل من ارسال شود. یا اینکه خود ماژول اتوماتیک هر چند ثانیه یک با عکس میگیرد و به ایمیل من ارسال میکند.

      • سلام چه جوری میشه براش مشخص کرد اگه فلان کلید رو زدم عکس بگیره
        یه کلید به جز ریست ؟

        تنها راه برا این کار اینه بایه فرمان ولتاژ پایه ریست رو صفر کنیم ؟؟

        • با سلام، کد به شکلی تعریف شده که هر بار که ماژول شروع به کار می کند، مراحل عکسبرداری را انجام می دهد، که ما برای کنترل این پروسه از کلید ریست استفاده می کنیم.

  • برای ساخت پروژه همین یه ماژول کافیه؟چیزه دیگه ای یعنی نمیخوادتو یه فیلم من دیدیم اردینو uno استفاده کرده بود!!!!!

  • سلام مهندس.
    گفته بودین اموزش ساخت دوربین عکاسی با اردینو را میزارید.
    هنوز این اموزش را منتشر نکرده اید؟

    • کلمه که در آموزش ذکر شده را برای پیدا کردن کتابخانه جستجو کنید، همچنین نرم‌افزار آردوینو را به آخرین نسخه بروزرسانی کنید.

  • با سلام میشه این ماژول رو دائم کار کرد(همیشه عکس بفرسته)؟یا هر چند ثانیه دکمه رو فشار بدم؟ آیا امکانش هست اگه نیست لطفاً راهنمایی کنید.

  • سلام.این برنامه خیلی عالی بود ممنون. اما کیفیتش بسیااااااار پایینتر از مثال خود ای اس پی هستش و نمیدونم چرا میشه راهنمایی کنید؟

    • سلام، خیلی ممنون.
      دوربین این ماژول در کل از کیفیت مطلوبی برخوردار نیست، اما تمیز کردن لنز و تنظیم دستی فوکوس میتونه به ثبت تصویر مناسب تر کمک کنه.

  • سلام مهندس
    شما گفتید که برای ارسال تصویر به ایمیل باید دکمه ریست ماژول را فشرد
    اما من یه ایده به ذهنم رسید
    که خروجی رله یه کیت تایمر دو زمانه را به پایه ریست و منفی برد esp32 cam وصل کنم و با زمان دادن به تایمر دو زمانه هر چند ثانیه یک بار یا هر دقیقه یک بار توسط خروجی رله پایه های ریست و منفی برد esp32 cam بهم اتصال پیدا کنن و یه عکس برام ارسال بشه
    بنظرتون این ایده قابل اجرا است ؟؟

    • با سلام، بسیار عالی، البته از نظر تئوری قابل اجراست و در عمل هم فکر نمیکنم موردی داشته باشه، البته این مورد را بطوری نرم‌افزاری در کد هم می‌توان اجرا کرد.

  • سلام مهندس
    میشه کد زیر را داخل کد های این پروژه وارد کرد و و با عبور شخصی از جلوی سنسورpir عکس به ایمیل ارسال بشه ؟؟
    esp_sleep_enable_ext0_wakeup(GPIO_NUM_13,0);
    اگه میشه این کار را انجام داد میشه بگید باید کجای کد این پروژه این کد را باید وارد کنم

  • سلام مهندس
    میشه پروژه ساخت ایفون تصویری هوشمند با برد esp32 camرا بزارید
    که وقتی کسی زنگ ایفون را فشرد ماژول یک عکس برای من از طریق لینک پیامک بفرسته یا از طریق ربات بله

  • سلام مهندس میشه
    این پروژه را به شکل زیر انجام داد
    دو تا سروو موتور به پایه های برد esp32 cam وصل کنیم یکی از سروو ها را به کنار برد و سروو موتور دیگری را به زیر برد وصل میکنیم
    و داخل ایمیل مثلاً کلمه A 180 درجه را برای برد بفرستیم و برد esp32 cam به ۱۸۰ درجه بچرخه و برامون عکس را بفرسته کلمه A یعنی اینکه چپ و کلمه B مثلاً راست و کلمه C مثلاً بالا و کلمه D پایین که کلمه A و B برای سروو موتور زیر برد میشه که برد را به چپ و راست بچرخونه و کلمه C و D برای سروو موتور کنار برد که برد را به بالا و پایین بچرخونه و عدد ۱۸۰ و یا عدم های دیگر هم برای اینکه برد به چند درجه بچرخه

    • با سلام، من این مورد را تست نکردم، اما خواندن مقادیر در ایمیل و سپس فرمان گرفتن ESP امکان پذیر نیست، اما به روش های دیگری قابل اجرا شدن است.

  • سلام مهندس تشکر از آموزش شما
    میخواستم بپرسم که آیا ماژول دوربین رزبری پای که درگاه اون CSI است به ESP32CAM متصل میشه؟