دوربین عکاسی جیبی با ماژول ESP32-S3
دنیای الکترونیک پر از بردهای کوچیکیه که کارای بزرگی میکنن. یکی از این بردهای خیلی خفن، ماژول ESP32-S3 نسخه XIAO هست که با وجود اندازه بندانگشتیش، امکانات فوقالعادهای برای پردازش تصویر داره. ترکیب این برد با چند تا قطعه ساده، به ما این اجازه رو میده که یه دوربین عکاسی دیجیتال و کاملا شخصی بسازیم که همهجا همراهمون باشه.
این دوربین فسقلی نیازی به مدار شارژ جداگانه نداره و عکسا رو مستقیم روی کارت حافظه ذخیره میکنه. مهمترین ویژگیش اینه که فقط همون لحظهای که دکمه رو فشار میدی روشن میشه و به همین خاطر، مصرف باتریش بهشدت پایینه. طراحی جمعوجور این مدار باعث میشه بتونیم اونو داخل یه قاب کوچیک جا بدیم و به عنوان یه گجت پوشیدنی یا جیبی ازش استفاده کنیم.
بیا تو این آموزش با هم قدمبهقدم این دوربین مینیاتوری رو بسازیم. از سیمکشیهای ظریف گرفته تا تنظیمات نرمافزاری و قاب سهبعدی، همهچیز رو با هم پیش میبریم. وسایلت رو آماده کن تا بریم سراغ ساختش.
قطعات موردنیاز
- برد ESP32-S3 مدل XIAO Sense
- باتری لیتیوم پلیمر 3.7 ولت با ظرفیت 180 میلیآمپر
- کارت حافظه Micro SD
- یه دونه الایدی کوچیک به همراه مقاومت 220 اهم
- میکروسوئیچ کوچیک (دکمه فشاری)
- پرینتر سهبعدی (برای چاپ قاب)
سیمکشی قطعات دوربین
سیمکشی این پروژه خیلی سادست و اصلا پیچیدگی نداره. چون خود برد ESP32-S3 سیستم مدیریت باتری داخلی داره، دیگه نیازی به ماژول شارژ جداگانه برای باتری لیتیومی نداریم. فقط کافیه دوربین، دکمه، الایدی و باتری رو دقیقا مثل همون چیزی که تو دیاگرام تصویر میبینی به پایههای برد وصل کنی. حواست باشه که طول سیمها رو تا جای ممکن کوتاه بگیری تا الکی فضای قاب رو اشغال نکنن.
این برد موقع پردازش ویدیو معمولا خیلی زود داغ میکنه. اما چون دوربین ما فقط برای چند ثانیه کوتاه واسه عکاسی روشن میشه، اصلا نیازی به نصب هیتسینک یا ایجاد شیار تهویه روی قاب نداریم.
بعدا برای شارژ باتری میتونی مستقیم از پورت USB روی خود برد استفاده کنی. فقط یادت نره موقع شارژ، باید دکمه رو با یه تیکه چسب شیشهای تو حالت فشرده نگه داری تا ارتباط بین باتری و مدار وصل بمونه.
پشت ماژول دوربین دو تا پد فلزی به اسم J3 هست. برای اینکه کارتخوان SD فعال بشه و بتونی عکسا رو ذخیره کنی، حتما باید این دو تا پد رو با هویه و یه ذره لحیم به هم وصل کنی.
تنظیمات نرمافزار آردوینو
حالا بریم سراغ برنامهنویسی این برد کوچیک. محیط Arduino IDE بهترین گزینه برای این کاره. برای اینکه موقع کامپایل کد، ارورهای اعصابخردکن کتابخونهها کلافت نکنن، باید چند تا نکته ریز رو تو تنظیمات رعایت کنی.
راهحل فرار از ارورها ایناست:
اول اینکه تو بخش مدیریت بردهای آردوینو (Board Manager)، حتما مطمئن شو که پکیجهای توسعه (dev index) مخصوص بردهای ESP32 تو تنظیمات نرمافزارت اضافه شده باشن تا برد درست شناسایی بشه. دوم اینکه از منوی Tools نرمافزار آردوینو، حتما گزینه psram رو فعال کن تا حافظه رم خارجی برد در دسترس قرار بگیره.
در نهایت، برای مدیریت بردهای ESP32 بهتره از نسخه 2.x استفاده کنی. نسخههای جدیدتر مثل سری 3 ممکنه با کتابخونهها تداخل داشته باشن و ارور بدن. پس اگه نرمافزار پیام آپدیت برد رو داد، بیخیالش شو تا پروژهات بدون مشکل کامپایل بشه.
بارگذاری کدهای دوربین
کدهای آماده زیادی برای راهاندازی دوربینهای ESP32 تو اینترنت هست. ما تو این پروژه از کدی استفاده میکنیم که وظیفه اصلیش عکاسی و ذخیره مستقیم فایل روی مموری کارته.
داخل کدهای برنامه یه خطی هست که نوشته شده `config.frame_size = FRAMESIZE_UXGA`. تو میتونی خیلی راحت با تغییر دادن عبارت UXGA به فرمتهای دیگه مثل XGA یا VGA، ابعاد و کیفیت عکسهای خروجی رو به دلخواه خودت عوض کنی و بعد کد رو روی برد آپلود کنی.
طراحی و ساخت قاب محافظ
تو این مرحله برای اینکه یه ظاهر تمیز و یکپارچه داشته باشیم، به پرینتر سهبعدی نیاز داری. البته اگه پرینتر سهبعدی دم دستت نیست اصلا غصه نخور! میتونی با یه کم خلاقیت از چوب، ورقهای پلاستیکی یا حتی یه جعبه فلزی کوچیک برای ساخت قاب استفاده کنی. شاید اندازهاش یه کم بزرگتر بشه، اما هیچ تاثیری رو کارکرد دوربینت نداره.
اگه از پرینتر سهبعدی استفاده میکنی، چاپ کردن دو تا قطعه اصلی قاب زمان زیادی ازت نمیگیره.
مونتاژ نهایی قطعات
- دکمه فشاری و الایدی (همراه با مقاومت) رو دقیقا مثل نقشه لحیم کن.
- سیمهای باتری و دکمه رو با ظرافت به پدهای روی برد وصل کن. بهتره سیمها رو از داخل سوراخهای پین رد کنی تا کشیده نشن و با یه کم چسب حرارتی اتصالات رو محکم کنی.
- پدهای فلزی J3 پشت ماژول رو یادت نره حتما به هم لحیم کنی.
- کارت حافظه فرمتشده رو با کمک یه پنس ظریف داخل شیار مخصوص روی برد جا بزن.
پیشنهاد میکنم دقیقا همین الان، قبل از اینکه قاب رو کامل ببندی، یه بار مدار رو روشن کنی و عملکرد دوربین رو تست کنی تا خیالت راحت بشه.
- حالا برد، باتری، دکمه و الایدی رو با احتیاط داخل نیمه جلویی قاب بذار.
- قاب رو ببند و اگه لازم بود از یه کش لاستیکی برای محکم نگه داشتن دو تا تیکه استفاده کن.
روش استفاده از دوربین
برای شارژ کردن باتری، فقط کافیه قاب رو باز کنی و کابل USB-C رو بزنی به برد. همونطور که قبلا گفتم، برای اینکه جریان شارژ برقرار بمونه باید دکمه فشاری رو با یه تیکه چسب تو حالت فشرده نگه داری.
واسه عکس گرفتن، دوربین رو ثابت نگه دار و دکمه رو فشار بده. تو تمام مدتی که دوربین در حال پردازش و ذخیره عکسه، الایدی روشن میمونه. دکمه رو حدود 3 ثانیه نگه دار تا الایدی خاموش بشه؛ این یعنی پروسه ذخیره عکس با موفقیت تموم شده.
این مدار طوری طراحی شده که فقط موقع فشار دادن دکمه، برق میگیره. تو این روش نیازی به حالت خواب عمیق (Deep Sleep) نرمافزاری نداریم، چون خودت با رها کردن دکمه بعد از چند ثانیه، جریان برق رو کلا قطع میکنی.
همین ترفند ساده باعث میشه با یه بار شارژ باتری، بتونی چیزی حدود 120 تا عکس بگیری. البته یادت باشه هرچی سایز عکسا رو تو تنظیمات بزرگتر انتخاب کنی، ذخیره کردنشون بیشتر طول میکشه و مصرف باتری هم یه کم بالاتر میره.
عکاسی با این گجت حس و حال نوستالژی جالبی داره؛ چون هیچ نمایشگری برای دیدن عکس تو همون لحظه نداری و باید تا زمان انتقال فایلها به کامپیوتر منتظر بمونی. دقیقا مثل دوربینهای قدیمی که بعضی عکسا هم ممکنه خراب بشن!
انتقال عکسها به کامپیوتر
سادهترین راه برای دیدن عکسا اینه که قاب رو باز کنی، مموری کارت رو با یه پنس در بیاری و با استفاده از یه رمریدر، عکسها رو روی کامپیوترت ببینی. اگه هم خیلی اهل چالش باشی، میتونی تو قدمهای بعدی کدهای برنامه رو طوری ارتقا بدی که عکسها از طریق وایفای و پروتکل FTP به گوشیت منتقل بشن. دمت گرم که تا آخر این آموزش با آیسیمدار همراه بودی.
ساختن اینجور گجتهای مینیاتوری همیشه حس خیلی خوبی میده. اگه این دوربین بامزه رو ساختی یا ایده خفنی برای بهتر کردنش به ذهنت رسیده، حتما تو بخش کامنتها برامون بنویس تا بقیه هم از تجربههات استفاده کنن. منتظر نظراتت هستیم!
فایلهای پیوست
تو میتونی اولین سازنده باشی!
اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر
این آموزش با استانداردهای اختصاصی آیسیمدار بازنویسی و بهینهسازی شده و تمامی حقوق انتشار آن متعلق به این مجموعه است و در صورت کپی یا بازنشر پیگرد قانونی خواهد داشت.








































گفتگوهای کاربران
هنوز نظری ثبت نشده؛ تو شروع کن!
هنوز نظری ثبت نشده؛ تو شروع کن!