آردوینو پروژه های آردوینو

پروژه طراحی و پیاده سازی قفل هوشمند آردوینو با ایجاد لرزش و الگوی مشخص

smart-door-locker-with-tilt-sensor-and-arduino-with-knock-pattern-digispark
نوشته شده توسط معین صابری

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

 


ماژول رله Relay


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

Activation of relays via DTMF call with voice report - دیجی اسپارک

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

 


برد آردویینو UNO


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

برد آردوینو UNO برای هوشمند سازی خانه - دیجی اسپارک

 

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

 


قفل برقی


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

قفل برقی جهت هوشند سازی با DTMF - دیجی اسپارک

 


 سنسور تشخیص لرزش


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

سنسور تیلت کجی Tilt - دیجی اسپارک

 

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

 


شماتیک و اتصالات


 پس از بررسی قطعات به کار رفته در پروژه، نوبت به بررسی شماتیک و اتصالات پروژه می رسد. تصویر زیر شمایی کلی از مدار را نمایش می دهد.

شماتیک و اتصالات پروژه قفل هوشمند با ایجاد لرزش - دیجی اسپارک

 

پس از این مرحله، به برقراری اتصالات مدار مطابق تصویر فوق می پردازیم.

 


اتصالات سنسور لرزش و آردوینو


  •  اتصال پایه خروجی آنالوگ سنسور لرزش به پایه A0 آردوینو
  • اتصال پایه GND سنسور لرزش به پایه GND آردوینو
  • اتصال پایه VCC سنسور لرزش به پایه ۵ ولت آردوینو
  • اتصالات ماژول رله و قفل برقی
  • اتصال پایه IN یا SIGNAL به پایه GPIO3 آردوینو
  • اتصال پایه GND ماژول رله به پایه GND آردوینو
  • اتصال پایه VCC ماژول رله به پایه ۵ ولت آردوینو
  • اتصال کابل مثبت تغذیه قفل به پایه NC ماژول رله
  • اتصال پایه منفی تغذیه قفل برقی به پایه GND آردوینو

توجه: در این پروژه برای تغذیه کل سیستم از یک آداپتور ۱۲ ولت ۲ آمپر استفاده شده که آداپتور به جک متصل شده است.

 


کدهای پروژه


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

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

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

 


 اجرای پروژه


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

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

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

 


تحلیل کدهای پروژه


 پس از اجرای پروژه، نوبت به تحلیل کدهای آن می رسد. البته در اینجا ما به طو مختصر به تحلیل کدها می پردازیم؛ چراکه درون کدها به صورت خط به خط توضیح(کامنت) درج شده است. در این برنامه ابتدا پایه GPIO3 به عنوان خروجی جهت ارسال فرمان به رله تعیین می شود. سپس در ادامه، مقدار آنالوگ را به کمک تابع analogRead می خوانیم. چنانچه این مقدار از ۱۰۰۰ کمتر شود، یعنی لرزشی ایجاد شده است. در اینجا به کمک تابع millis() به مدت ۵ ثانیه صبر می کنیم. در این ۵ ثانیه با خواندن مقدار ورودی آنالوگ، در صورتیکه لرزشی تشخیص داده شود، مقدار متغیر شمارش لرزش ها کاهش می یابد. در نهایت در صورتیکه مقدار متغیر count(شمارنده لرزش) به ۳ برسد، قفل فعال خواهد شد.

 


لوازم مورد نیاز


 


جمع بندی


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

 

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

 

 

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

معین صابری

کارشناسی ارشد رشته معماری سیستم های کامپیوتری

مالي که ز تو کس نستاند، علم است
حرزي که تو را به حق رساند، علم است
جز علم طلب مکن تو اندر عالم
چيزي که تو را ز غم رهاند، علم است
(شیخ بهایی)

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

۵ دیدگاه