AVR

سیستم آبیاری خودکار گیاهان به کمک ماژول آردوینو(Arduino) با استفاده از سنسور رطوبت خاک

/post-206

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


قفل الکترونیکی با سنسور اثر انگشت (Finger Print Sensor) و ماژول آردوینو یونو

/post-205

این پروژه ساده باز کردن قفل درب با اثر انگشت با استفاده از آردوینو می‌تواند برای امنیت درب، پزشکی قانونی، تحقیقات جرم، شناسایی شخصی، سیستم حضور و غیاب و موارد دیگر بسیار مفید باشد. در آینده، ممکن است برنامه های بسیار بیشتری مانند گواهینامه رانندگی مبتنی بر اثر انگشت، عملیات حساب های بانکی و غیره وجود داشته باشد.کل سیستم، تحت یک الگوریتم ساده به نام الگوریتم تطبیق (Matching Algorithm) کار می کند، که برای مقایسه الگوهای اثر انگشت قبلاً ذخیره شده با اثر انگشت کاربران برای اهداف احراز هویت استفاده می شود.یک کلید معمولا برای باز کردن درب سنتی استفاده می شود، اما امنیت بسیار ضعیفی را فراهم می کند. در این پروژه باز کردن قفل درب با اثر انگشت، تنها زمانی که یک شخص مجاز انگشت خود را روی سنسور قرار می دهد، قفل در باز می شود و ال سی دی پیام خوشامدگویی را همراه با نام آن شخص نمایش می دهد.


کنترل و مانیتورینگ سرعت فن مبتنی بر دما با استفاده از آردوینو (Arduino) و سنسور دمای LM35

/post-204

این پروژه یک کنترل کننده سرعت فن مستقل و خودکار ارائه می دهد که به طور هوشمند سرعت فن را در پاسخ به تغییرات دما تنظیم می کند بطوریکه این سیستم حلقه بسته، کنترل دما کارآمد و قابل اعتمادی را ارائه می دهد. میکروکنترلر برد آردوینو Maga328 امکان کنترل سریع و پویا را فراهم می کند و صفحه LCD داده های دما و سرعت فن را در زمان واقعی برای نظارت راحت ارائه می دهد. آردوینو در قلب مدار قرار دارد زیرا تمام عملکردها را کنترل می کند. LM35 یک سنسور مدار مجتمع دقیق است که ولتاژ خروجی آن به طور خطی با دمای سانتیگراد (درجه سانتیگراد) متناسب است. این دستگاه در محدوده دمایی -55 تا 150 درجه سانتیگراد کار می کند. سنسور دما LM35 دما را حس می کند و آن را به سیگنال الکتریکی (آنالوگ) تبدیل می کند که از طریق مبدل آنالوگ به دیجیتال (ADC) به میکروکنترلر اعمال می شود. سیگنال آنالوگ توسط ADC به فرمت دیجیتال تبدیل می شود.


نحوه برنامه ریزی میکروکنترلر خانواده آرم (ARM) به شماره STM32F103C8 (مینی هدر برد) به کمک آردوینو (Arduino)

/stm32f103c8

برخلاف برد شناخته شده آردوینو UNO، ماژول Blue Pin مبتنی بر میکروکنترلر آرم STM32F103C8 یک برد توسعه میکروکنترلر 32 بیتی آرم Cortex-M3 با کارایی بالا است که در حداکثر فرکانس کاری 72 مگاهرتز کار می کند. همانطور که می‌دانید برد Arduino UNO در پروژه‌های پیچیده‌تر محدودیت‌هایی دارد زیرا پین‌های ورودی/خروجی محدود، ADC با وضوح پایین، سرعت پایین‌تر PWM و پین‌های اینتراپت کمتری دارد. با استفاده از این برد Blue Pin می توان بر این محدودیت ها غلبه کرد. این ماژول دارای پایه های ورودی/خروجی بیشتر، ADC های 12 بیتی، پایه های اینتراپت خارجی بیشتر، سرعت PWM بالاتر و بسیاری ویژگی های دیگر است. برد Blue Pill دارای بیش از یک پورت I2C، UART و SPI است که به برقراری ارتباط با سایر دستگاه ها بسیار سریعتر از برد Arduino UNO کمک می کند. دارای تعداد زیادی پین ورودی/خروجی است که اتصال سنسورها، ماژول‌ها و سایر قطعات الکترونیکی بیشتری را به برد آسان‌تر می‌کند. برای برنامه ریزی برد Blue Pill از نرم افزار Arduino IDE می توانیم استفاده کنیم و از همان مجموعه دستورالعمل های برنامه نویسی برد Arduino UNO استفاده کنیم.


تشخیص دهنده سطح آب(Water Level Indicator) به کمک آردوینو (َArduino)، سنسور آلتراسونیک(Ultrasonic) با شماره HC-SR04 و ماژول RF به نام RF433

/post-199

نشانگر سطح آب با استفاده از آردوینونشانگر سطح آب بی سیم با استفاده از سنسور آلتراسونیک و آردوینو یک پروژه شگفت انگیز و بسیار مفید است. هدف از این پروژه اطلاع رسانی به کاربر از میزان آبی موجود در مخزن آب است. این پروژه را می توان برای کنترل سطح آب در مخزن با روشن کردن یک پمپ، زمانی که سطح آب کم است، و خاموش کردن آن در زمانی که سطح آب بالا است، ارتقا داد. بنابراین، نشانگر سطح آب آردوینو به جلوگیری از هدر رفتن آب در مخزن کمک می کند. این پروژه بی سیم است، بنابراین نصب آن آسان است و می تواند تا 100 متر کار کند.در این پروژه از دو مدار استفاده می شود: مدار فرستنده و مدار گیرنده. مدار فرستنده از حسگر اولتراسونیک برای اندازه گیری سطح آب از نظر فاصله استفاده می کند. این داده ها با استفاده از ارتباط RF به مدار گیرنده ارسال می شود. سطح آب بر حسب درصد در یک نمایشگر LCD 16×2 که به مدار گیرنده متصل است نشان داده شده است.


چگونگی قرار دادن بوت لودر در یک ATMEGA328 ، ATMEGA8، ATtiny85 خام و جدید توسط ماژول آردوینو

/post-198

در این آموزش، نحوه آپلود بوت لودر را در آی سی ATmega328P تازه خریداری شده و آپلود کد در ATmega328P، ATtiny85 و ATmega8 با استفاده از برد Arduino UNO یاد خواهید گرفت.در برخی از پروژه های آردوینو، ممکن است بخواهید به جای استفاده از کل برد UNO آردوینو، فقط از IC میکروکنترلر (ATmega328P) استفاده کنید. در این صورت یا می توانید آی سی ATmega328P را از برد آردوینو UNO جدا کرده و با مدار حداقلی از آن استفاده کنید یا می توانید یک آی سی جدید ATmega328P خریداری کنید و کد را در آن آپلود کنید و در پروژه خود استفاده کنید.برخی از پروژه های آردوینو به میکروکنترلر قدرتمندی مانند ATmega328P نیاز ندارند، بنابراین، می توان به جای استفاده از برد Arduino UNO یا IC ATmega328P از ATtiny85 استفاده کنید. در این آموزش تمام این موارد را یاد خواهید گرفت.


استفاده از کتابخانه ها برای تنظیم تایمرها در آردوینو یونو (ARDUINO UNO)

/post-197

همانطور که در مقاله قبلی دیدیم تنظیمات عملکرد زمان سنجی/شمارش می توانست بر اساس تنظیمات رجیسترهای مرتبط با میکروکنترلر اختصاصی ماژول آردوینو انجام پذیرد. روش دیگر برای کنترل ماژول های تایمر استفاده از کتابخانه های تایمر می باشد. یکی از این کتابخانه ها، کتابخانه Arduino-timer است. در اینجا به این موضوع خواهیم پرداخت، و در مورد نحوه نصب و استفاده از کتابخانه arduino-timer بحث خواهیم کرد. استفاده از آن می تواند بسیار ساده تر از آنچه قبلاً در آموزش وقفه های تایمر آردوینو انجام دادیم باشد.


برنامه نویسی تایمرها (Timer) در ارتباط با زمان سنجی و تولید PWM در آردوینو (Arduino)

/post-196

تایمرهای سخت افزاری آردوینوArduino UNO (Atemga328p) دارای 3 تایمر سخت افزاری است که عبارتند از:تایمر 0: تایمر 8 بیتیتایمر 1: تایمر 16 بیتیتایمر 2: تایمر 8 بیتیاین ماژول‌های تایمر برای تولید سیگنال‌های خروجی PWM و ارائه قابلیت‌های زمان‌بندی و تاخیر در آردوینو استفاده می‌شوند، و همچنین می‌توانیم از آنها برای دستیابی به عملکرد زمانی مورد نظر استفاده کنیم.هر تایمر سخت افزاری، یک رجیستر شمارنده دیجیتال در هسته خود دارد که بر اساس کلاک پالس ورودی شمارش می شود. اگر کلاک پالس از یک منبع داخلی با فرکانس ثابت تغذیه می شود، گفته می شود که در حالت تایمر کار می کند. اما اگر کلاک پالس به صورت خارجی از یک IO یا هر منبع ناهمگام تغذیه شود، گفته می شود که به عنوان شمارنده کار می کند که پالس های دریافتی را می شمارد.


آموزش رابط کاربری LCD گرافیکی 128x64 (GLCD) با آردوینو (Arduino)

/post-195

در این مقاله، به شما نشان خواهیم داد که چگونه یک LCD گرافیکی 128X64 را با آردوینو یونو Arduino UNO متصل کنید. ماژول LCD خاص مد نظر ما مبتنی بر کنترلر ST7920 است. بنابراین، ابتدا کمی در مورد ماژول LCD گرافیکی و کنترلر آن صحبت خواهیم کرد. ماژول های ال سی دی مختلفی با کنترلرهای اختصاصی در بازار یافت می شوند از جمله ماژول ST7920، ماژول نوکیا 5110 ، KS0108 و غیره. بطور مثال مشکل ماژول ال سی دی نوکیا 5110 رزولوشن پایین آن است بطوریکه دارای رزولوشن 48x48 پیکسلی بوده و به دلیل اندازه کوچک آن، منوی حاصل به 3 یا 4 مورد در هر صفحه محدود می شود. همچنین در خصوص ماژول مرسوم در بازار به نام KS0108 ف این کنترلر دارای رزولوشن 128x64 بوده و دارای دو کنترلر مجزا برای پیکسل های 0 تا 64 و 64 تا 128 می باشد اما در اتصال این ماژول گرافیکی به آردوینو باید 8 پایه داده را علاوه بر پایه های کنترلی به کار گرفت بدان معنا که تعداد زیادی از پایه های آردوینو را اشغال خواهد کرد.


راه اندازی ال سی دی (LCD) متنی با آردوینو (Arduino)

/post-194

در این مقاله قصد داریم تا به کمک ماژول آردوینو (Arduino) مدل یونو (UNO) یک ال سی دی (lcd) متنی را برنامه نویسی کنیم. همانطور که می دانیدLCD مخفف واژگان (Liquid Crystal Display) می باشد که نسبت به نور و عدم نور بر روی صفحه اش واکنش نشان می دهد. برای نوشتن کاراکترهای متنی بر روی ال سی دی به کمک ماژول آردوینو کافیست از کتابخانه LiquidCrystal.h استفاده کرده و با ایجاد یک شی از کلاس LiquidCrystal توابع مورد نیاز و متنوعی را فراخوانی کنیم.