ساعت LED روی آردوینو نانو. ما با دستان خود یک ساعت الکترونیکی در آردوینو می سازیم. ساعت آماده در آردوینو

در عکس یک نمونه اولیه مونتاژ شده توسط من برای اشکال زدایی برنامه ای است که تمام این اقتصاد را مدیریت می کند. دومین آردوینو نانو در گوشه سمت راست بالای تخته نان به پروژه تعلق ندارد و دقیقاً به همان شکل بیرون می‌آید، می‌توانید آن را نادیده بگیرید.

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

مشکل اصلی در مورد من این است که نشانگرهای 2.7 اینچی با آند مشترک و اولاً باید به نوعی با max7219 که برای نشانگرهای دارای کاتد مشترک تیز می شود دوست می شدند و ثانیاً مشکل منبع تغذیه آنها حل می شد. زیرا آنها برای درخشش به 7.2 ولت نیاز دارند که max7219 به تنهایی قادر به تامین آن نیست. درخواست کمک در یک انجمن، من همان پاسخ را دریافت کردم.

راه حل اسکرین شات:


یک ریزمدار به خروجی سگمنت‌ها از max7219 می‌چسبد که سیگنال را معکوس می‌کند و یک مدار از سه ترانزیستور به هر خروجی می‌چسبد که باید به کاتد مشترک نمایشگر متصل شود، که سیگنال آن را نیز معکوس می‌کند و ولتاژ را افزایش می‌دهد. بنابراین، ما این فرصت را داریم که نمایشگرهایی با آند مشترک و ولتاژ تغذیه بیش از 5 ولت به max7219 متصل کنیم.

من یک نشانگر را برای آزمایش وصل کردم، همه چیز کار می کند، چیزی دود نمی کند

شروع به جمع آوری می کنیم.

من تصمیم گرفتم مدار را به 2 قسمت تقسیم کنم زیرا تعداد زیادی جامپر در نسخه جدا شده توسط پنجه های کج من که همه چیز روی یک تخته بود. ساعت از یک واحد نمایشگر و یک منبع تغذیه و واحد کنترل تشکیل شده است. تصمیم گرفته شد که اولی دومی را جمع آوری کنیم. زیباروان و آماتورهای رادیویی با تجربه لطفا به دلیل رفتار ظالمانه با قطعات غش نکنید. هیچ تمایلی به خرید چاپگر به خاطر LUT وجود ندارد، بنابراین من این کار را به روش قدیمی انجام می دهم - روی یک تکه کاغذ تمرین می کنم، طبق یک الگو سوراخ می کنم، با یک نشانگر مسیر نقاشی می کنم، سپس حکاکی می کنم.

اصل بستن نشانگرها مانند روشن باقی مانده است.

ما با استفاده از یک الگوی پلکسی گلاس که برای راحتی ساخته شده است، موقعیت نشانگرها و اجزاء را مشخص می کنیم.

فرآیند نشانه گذاری







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

ما مسیرها را ترسیم می کنیم و سم می زنیم.




حمام کردن در کلرید آهن

آماده!
برد کنترل:


تابلوی نشانگر:


برد کنترل عالی بود، مسیر روی صفحه نمایش به طور جدی خراب نشده بود، این قابل تعمیر است، وقت لحیم کردن است. این بار بکارت SMD خود را از دست دادم و قطعات 0805 را وارد مدار کردم. حداقل، اولین مقاومت ها و خازن ها در جای خود لحیم شدند. فکر می کنم دستم را بگیرم، راحت تر خواهد بود.
برای لحیم کاری از فلاکسی که خریدم استفاده کردم. لحیم کاری با او لذت بخش است، اکنون من از کلوفون الکلی فقط برای قلع کردن استفاده می کنم.

در اینجا تابلوهای تمام شده هستند. برد کنترل دارای یک صندلی برای آردوینو نانو، یک ساعت، و همچنین خروجی هایی برای اتصال به برد نمایشگر و سنسورها (یک مقاومت نوری برای روشنایی خودکار و یک دماسنج دیجیتال ds18s20) و یک منبع تغذیه با ولتاژ خروجی قابل تنظیم (برای بزرگ هفت سگمنت) و برای تامین انرژی ساعت و آردوینو، روی صفحه نمایش سوکت های فرود برای نمایشگر، سوکت های max2719 و uln2003a، راه حلی برای تامین انرژی چهار سون سگمنت بزرگ و دسته ای جامپر وجود دارد.




برد کنترل عقب

تابلوی نشانگر پشت:

مونتاژ smd وحشتناک:


راه اندازی

پس از لحیم کاری تمام کابل ها، دکمه ها و سنسورها، نوبت به روشن کردن آن می رسد. اجرای اول چندین مشکل را آشکار کرد. آخرین نشانگر بزرگ نمی درخشید و بقیه تاریک می درخشیدند. من با لحیم کردن پایه های ترانزیستور smd با مشکل اول برخورد کردم - با تنظیم ولتاژ خروجی توسط lm317.
زنده است!

یکی از اولین پروژه هایی که مبتدیان بر اساس برد آردوینو می سازند یک ساعت ساده است که زمان را پیگیری می کند. اساساً چنین ساعت هایی بر اساس ماژول RTC (ساعت واقعی) متصل به آردوینو هستند. امروزه در بازار قطعات الکترونیکی موجود است مدل های مختلف RTC، از نظر دقت و قیمت متفاوت است. از جمله مدل های رایج می توان به DS1302، DS1307، DS3231 اشاره کرد.



اما شما می توانید یک ساعت آردوینو بدون استفاده از RTC بسازید، به خصوص اگر نمی توانید چنین ماژول هایی را دریافت کنید. البته دقت در این مورد پایین خواهد بود، بنابراین بهتر است پروژه به عنوان یک پروژه آموزشی در نظر گرفته شود.


اصل عملکرد چنین ساعت هایی بسیار ساده است. هر بار که این ساعت را در آردوینو روشن می کنید، باید آن را مانند هر ساعت آنالوگ روی زمان فعلی تنظیم کنید. مطمئناً بهتر است از چنین ساعت هایی در خود استفاده نکنید زندگی روزمرهاگر آنها برای مدت طولانی بدون راه اندازی مجدد و تنظیم بیشتر فعال باشند، زیرا همگام سازی با زمان فعلی در طول عملیات طولانی مدت می تواند قابل توجه باشد.


این ساعت را می توان روی تخته نان معمولی مونتاژ کرد، زیرا به قطعات زیادی نیاز ندارد. لینک اصلی ما در اینجا برد Arduino Uno خواهد بود. برای نمایش زمان می توانید یک LCD 16x2 بگیرید. برای تغییر تنظیمات زمان، دو دکمه (برای ساعت و دقیقه) وصل کنید. دکمه ها از طریق مقاومت های 10 کیلو اهم به آدوینو متصل می شوند. برای تغییر روشنایی نمایشگر، یک پتانسیومتر 10 کیلو اهم لازم است. نمودار اتصال تمامی این قطعات به برد آردوینو Uno در زیر نشان داده شده است.



حالا باید آردوینو را برنامه ریزی کنید. یک کد ساده (طرح) که به شما امکان می دهد زمان را روی صفحه LCD نمایش دهید در زیر نشان داده شده است.


#عبارتند از ال سی دی کریستال مایع (12،11،5،4،3،2); int h=12; intm; int s; پرچم بین المللی; int TIME; const int hs=8; const int ms=9; int state1; int state2; void setup() ( lcd.begin(16,2); ) void loop() (lcd.setCursor(0,0); s=s+1; lcd.print("TIME:"); lcd.print(h lcd.print(":"); lcd.print(m); lcd.print(":"); lcd.print(s); if(flag<12)lcd.print("AM"); if(flag==12)lcd.print("PM"); if(flag>12)lcd.print("PM"); if(flag==24) flag=0; تاخیر (1000); lcd.clear(); if(s==60)(s=0; m=m+1; ) if(m==60) (m=0; h=h+1; flag=flag+1; ) if(h==13 ) ( h=1; ) lcd.setCursor(0,1); lcd.print("روز خوبی داشته باشید"); //-------زمان // تنظیم-------// state1=digitalRead(hs); if(state1==1) (h=h+1; flag=flag+1; if(flag<12)lcd.print("AM"); if(flag==12)lcd.print("PM"); if(flag>12)lcd.print("PM"); if(flag==24) flag=0; if(h==13)h=1; ) state2=digitalRead(ms); if(state2==1)(s=0; m=m+1;) )

   از علاقه شما متشکرم پروژه اطلاعاتیسایت اینترنتی.
   اگر می خواهید مطالب جالب و مفیدی بیشتر منتشر شود و تبلیغات کمتری داشته باشید،
   شما می توانید با اهدای هر مبلغی از پروژه ما برای توسعه آن حمایت کنید.

ساعتی با نور پس‌زمینه LED و عقربه‌گر دقیقه‌پینگ روی میکروکنترلر آردوینو
این ساعت نور پس‌زمینه LED منحصر به فرد با عقربه دقیقه‌ای ضربان دار با استفاده از آی سی کنترلر PWM TLC5940 ساخته شده است. وظیفه اصلی آن گسترش تعداد مخاطبین با مدولاسیون PWM است. یکی دیگر از ویژگی های این ساعت تبدیل ولت متر آنالوگ به دستگاه اندازه گیری دقیقه است. برای انجام این کار، یک ترازو جدید روی یک چاپگر استاندارد چاپ شد و روی یک چاپگر قدیمی چسبانده شد. به این ترتیب، دقیقه 5 شمارش نمی شود، فقط در دقیقه 5 شمارنده زمان فلشی را نشان می دهد که روی انتهای ترازو قرار گرفته است (از مقیاس خارج می شود). کنترل اصلی بر روی میکروکنترلر Arduino Uno پیاده سازی شده است.

برای اینکه نور پس زمینه ساعت در یک اتاق تاریک خیلی روشن نباشد، مداری برای تنظیم خودکار روشنایی بسته به روشنایی اجرا شد (از یک مقاومت نوری استفاده شد).

مرحله 1: اجزای مورد نیاز



در اینجا چیزی است که مورد نیاز است:

  • ماژول ولت متر آنالوگ برای 5 ولت DC؛
  • میکروکنترلر آردوینو UNO یا آردوینو مناسب دیگر؛
  • برد مدار آردوینو (پرتو برد);
  • ماژول ساعت واقعی DS1307 (RTC)؛
  • ماژول با کنترلر PWM TLC5940;
  • LED های نور پس زمینه گلبرگ - 12 عدد.
  • قطعات برای مونتاژ مدار کنترل روشنایی خودکار (LDR).

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

مرحله 2: شماره گیری




صفحه شامل سه قسمت (لایه) برش خورده بر روی دستگاه برش لیزری از ورق MDF 3 میلی متری است که با پیچ و مهره به هم بسته می شوند. یک صفحه بدون شکاف (پایین سمت راست در تصویر) در زیر صفحه موقعیت یابی LED دیگری (پایین سمت چپ) قرار داده شده است. سپس LED های جداگانه در شکاف های مربوطه قرار می گیرند و پانل جلویی در بالا قرار می گیرد (بالا در شکل). چهار سوراخ در امتداد لبه صفحه حفر شده است که از طریق آن هر سه قسمت با پیچ و مهره به هم بسته می شوند.

  • برای آزمایش عملکرد LED ها در این مرحله، از یک باتری سکه ای CR2032 استفاده شد.
  • برای تعمیر ال ای دی ها از نوارهای کوچک نوار چسب استفاده شده است که به پشت ال ای دی ها چسبانده شده است.
  • تمام پایه های LED بر این اساس از قبل خم شده اند.
  • سوراخ‌های لبه‌ها مجدداً حفر شدند که از طریق آن پیچ‌کاری انجام شد. معلوم شد که خیلی راحت تر است.

نقشه فنی جزئیات شماره گیری در آدرس زیر موجود است:

مرحله 3: طراحی شماتیک



در این مرحله توسعه یافت مدار. برای این کار از کتاب های درسی و کتابچه های راهنما مختلف استفاده شد. ما خیلی عمیق به این فرآیند نخواهیم پرداخت، دو فایل زیر مدار الکتریکی تمام شده ای را نشان می دهد که در این پروژه استفاده شده است.

مرحله 4: اتصال برد مدار آردوینو





  1. اولین گام این است که تمام کنتاکت های سوزن را روی تخته های مدار و تخته های شکسته لحیم کنید.
  2. بعلاوه با توجه به اینکه برق 5 ولت و GND توسط بردهای زیادی استفاده می شود و لوازم جانبیبرای اطمینان، دو سیم برای 5 ولت و GND روی برد مدار لحیم شدند.
  3. سپس یک کنترلر PWM TLC5940 در کنار کنتاکت های مورد استفاده نصب شد.
  4. پس از آن، طبق نمودار اتصال، کنترلر TLC5940 متصل می شود.
  5. برای اینکه بتوان از باتری استفاده کرد، یک ماژول RTC روی لبه برد مدار نصب شد. اگر آن را در وسط برد لحیم کنید، نام مخاطبین قابل مشاهده نخواهد بود.
  6. ماژول RTC مطابق نمودار اتصال متصل شده است.
  7. یک مدار کنترل خودکار روشنایی (LDR) مونتاژ شده است، می توانید آن را در لینک پیدا کنید
  8. سیم کشی ولت متر با اتصال سیم ها به پایه 6 و GND انجام می شود.
  9. در پایان، 13 سیم برای LED ها لحیم شدند (در عمل، معلوم شد که بهتر است قبل از اقدام به مرحله 3 این کار را انجام دهید).

مرحله 5: کد

کد زیر از قطعات مختلفی از اجزای ساعت موجود در اینترنت جمع آوری شده است. به طور کامل اشکال زدایی شده است و اکنون کاملاً کاربردی است و نظرات کاملاً دقیقی اضافه شده است. اما قبل از دانلود در میکروکنترلر به نکات زیر توجه کنید:

  • قبل از فلش کردن آردوینو، باید خطی را که زمان را تنظیم می‌کند، از حالت کامنت بردارید:
    rtc.adjust(DateTime(__DATE__, __TIME__))
    پس از فلش کردن کنترلر با این خط (زمان تنظیم شده است) باید دوباره آن را کامنت کنید و دوباره کنترلر را فلش کنید. این به ماژول RTC اجازه می دهد تا در صورت قطع برق اصلی از باتری برای یادآوری زمان استفاده کند.
  • هر بار که از "Tlc.set()" استفاده می کنید باید از "Tlc.update" استفاده کنید.

مرحله 6: حلقه بیرونی

حلقه بیرونی ساعت بر روی Replicator Z18 چاپ شده بود. با پیچ در جلوی ساعت به ساعت متصل می شود. در زیر فایلی با مدل سه بعدی حلقه برای چاپ روی پرینتر سه بعدی آورده شده است.

مرحله 7: مونتاژ ساعت


میکروکنترلر آردوینو به همراه تمام وسایل الکترونیکی دیگر با استفاده از پیچ‌ها و مهره‌های خودکار به‌عنوان فاصله‌دهنده در پشت ساعت ثابت می‌شد. سپس تمام ال ای دی ها، ولت متر آنالوگ و LDR را به سیم هایی که قبلا به مدار لحیم شده بودند وصل کردم. همه LED ها توسط یک پایه به هم متصل می شوند و به پین ​​VCC روی کنترلر TLC5940 متصل می شوند (یک تکه سیم به سادگی به صورت دایره ای لحیم می شود).

تا کنون، همه این ها به خوبی از اتصال کوتاه جدا نشده اند، اما کار روی این موضوع در نسخه های بعدی ادامه خواهد داشت.




بالا