کنترل وسایل برقی از طریق پیامک به معنای استفاده از تکنولوژی برای کنترل و مدیریت وسایل برقی، مانند دستگاههای خانگی، سیستمهای روشنایی، سیستمهای امنیتی و سایر دستگاههای الکترونیکی است. که صرفا با استفاده از ارسال و دریافت پیامک صورت میگیرد.. این فرایند معمولا با استفاده از دستگاههای کنترل از راه دور (مانند گوشی هوشمند) و تکنولوژیهای ارتباطی مانند شبکههای سیم کارت، شبکههای بی سیم و اینترنت انجام میشود. ایده اصلی پشت این فناوری، امکان کنترل و مدیریت وسایل برقی به صورت راه دور و از هر مکانی که دسترسی به پیامک داشته باشید است. با استفاده از کنترل وسایل برقی از طریق پیامک، میتوانید وسایل برقی خود را روشن یا خاموش کنید، تنظیمات مختلف را تغییر دهید، برنامههای زمانبندی را اجرا کنید و به طور کلی کنترل کامل بر وسایل برقی خود را داشته باشید، حتی اگر در جای دیگری از منزل یا حتی خارج از خانه باشید. در ادامه پروژه کنترل وسایل برقی با پیامک و شیلد ProMake با مرجع تخصصی ماژول سیم کارت به زبان فارسی، دیجی اسپارک همراه باشید.
شیلد PROMAKE برد آردوینو
شیلدهای ProMake یکسری از شیلدهای مخصوص آردوینو بوده که کار طراحی نمونه اولیه و حتی در بعضی موارد محصولات خاص را بسیار بسیار ساده میکند. شیلدهای پرومیک که ساخت ایران هستند، برای انواع مختلفی از بردهای آردوینو طراحی و توسعه دادهاند. به کمک این شیلدها می توان به سادگی و بدون نیاز به هیچ سیم کشی اضافه، ارتباط بین بردهای آردوینو و ماژول های مختلف را برقرار نمود. در این آموزش قصد داریم تا به طراحی و پیاده سازی یک سیستم اس ام اس کنترل رله بپردازیم. در این سیستم به کمک شیلد ماژول رله دو کانال می توانیم همزمان به دو رله فرمان دهیم. این شیلد که به سادگی روی برد آردوینو UNO قرار می گیرد، دارای امکانات جانبی بسیاری است. به عنوان مثال دارای پورت USB از نوع TYPEC یا تقسیم بندی انواع پروتکلها، و افزودن پروتکل QWIIC است. در کنار این، وجود LED ها و کلید، به عنوان خروجی و ورودی تعبیه شده است. به تصویر زیر دقت کنید.
شیلد PROMAKE مخصوص آردوینو، دارای دو اسلات جداگانه است. هر اسلات دارای پایه هایی جهت اتصال شیلدهاست. بر روی این اسلات ها میتوان شیلدهای مختلف PROMAKE نظیر GSM، GPS، رله و….. را قرار داد. در این آموزش هم ما قصد داریم تا از شیلد GSM جهت دریافت فرامین پیامک استفاده کنیم. پس بدون هیچ نگرانی کافیست ماژولها را در محل مشخص شده قرار دهید و پروژه را راه اندازی کنید.
شیلد GSM ماژول SIM800C
ماژول سیم کارت SIM800C، یک شیلد بسیار بسیار کاربردی است. ابتدا در رابطه ماژول SIM800C کمی بحث کنیم. این برد یک ماژول مخابراتی از نوع سیم کارتی است. این ماژول با نصب سیم کارت، میتواند به شبکه موبایل کشور متصل شود. پس از اتصال، این ماژول میتواند همانند یک تلفن همراه، به ارسال و دریافت پیامک، برقراری تماس صوتی دو طرفه و احتی اتصال به اینترنت، بپردازد. به همین سادگی، فقط بایستی دستورهای لازمه را برای اجرای پروژه به ماژول ارسال کنید. در تصویر زیر ماژول سیم کارت Sim800C ساخت پرومیک را مشاهده میکنید.
ماژول SIM800C پرومیک، دارای امکانات بسیاری است. این شیلد اولا دارای تغذیه ۵ ولتی بوده و میتواند به راحتی تغذیه ماژول SIM800C را تامین کند. توجه داشته باشید که ماژول SIM800C دارای بازه ولتاژی بین ۳٫۴ الی ۴٫۳ است. شیلد ماژول SIM800C، دارای سوکت آنتن GSM و بلوتوث بوده و همچنین از سوکت سیم کارت جهت اتصال سیم کارت، بهره میبرد. در این آموزش ما از این شیلد استفاده میکنیم. به کمک این شیلد، زمانیکه پیامک ارسال میکنیم، می توانیم وضعیت رله های شیلد رله را کنترل کنیم. روش ارتباطی این ماژول از طریق رابط سریال خواهد بود.
توجه: زمانیکه قصد دارید شیلد ماژول GSM را متصل کنید، این شیلد را به قسمت Promake Module1 متصل کنید. منظور قسمتی است که دارای نوشته A0 است. در هنگام اتصال شیلد، آن را به گونه ای نصب کنید که ۵ ولت شیلد GSM، بر روی ۵ ولت شیلد آردوینو UNO قرار گیرد.
شیلد ماژول رله پرومیک
کنترل وسایل برقی از طریق قطعهای به نام رله صورت میگیرد. ماژول رله دو کانال ProMake، دارای دو کانال است. این شیلد به سادگی روی شیلد آردوینو UNO PROMAKE قرار گرفته و میتواند با برد آردوینو ارتباط برقرار کند. این شیلد دارای دو رله است. هر رله دارای ولتاژ خروجی ۲۵۰ ولت AC با جریان قابل تحمل ۵ آمپر است. خروجی آن هم دارای ترمینال پیچی MX301 است. که به سادگی میتوانید برای کنترل هر وسیله برقی از آنها استفاده کنید. در تصویر زیر این ماژول رله دو کاناله کوچک را مشاهده میکنید.
ماژول رله PROMAKE را می بایست در اسلات دوم، یعنی Promake Module2 قرار دهید. توجه داشته باشید که شیلد رله را طوری قرار دهید که پایه RLY1 به پایه PWM اسلات شماره ۲ متصل شود.
آپلود برنامه SMS Control روی پرومیک
تا اینجا با سخت افزارهای به کار رفته در پروژه کنترل وسایل برقی با پیامک آشنا شدید. حال بایستی برنامهی نوشته شده برای این برد را روی میکروکنترلر آپلود کنید. پس از اتصال شیلدها، نوبت به آپلود برنامه روی برد می رسد. هنگام آپلود برنامه، سوییچ S1 که بر روی آن عبارت UART|DEBUG باید روی قسمت PROG باشد. پس از آپلود، حتما سوییچ را روی قسمت UART قرار دهید.
#define relay1 6 //تعیین پایه رله اول #define relay2 9 //تعیین پایه رله دوم void setup() { Serial.begin(115200); //تعیین باودریت ارتباط سریال delay(100); Serial.print("AT\r\n"); //ارسال دستور برای تعیین باودریت delay(500); check_connect(); //انتظار برای اتصال به شبکه GSM Serial.print("AT+CMGF=1\r\n"); //تعیین فرمت متنی برای ارسال پیامک delay(700); pinMode(relay1, OUTPUT); //تعیین پایه رله شماره یک به عنوان خروجی digitalWrite(relay1, LOW); pinMode(relay2, OUTPUT); //تعیین پایه رله شماره ۲ برای خروجی digitalWrite(relay2, LOW); Serial.print("AT+CMGD=1,4\r\n"); //پاک کردن حافظه سیم کارت delay(700); Serial.print("AT+CSMP=17,167,0,0\r\n"); //تعیین مرکز پیام برای راسال پیامک delay(700); } void loop() { //+CMTI char CMTI[] = {"+CMTI"}; //در صورتیکه پیامک دریافت شود، این متن توسط ماژول راسال می شود. if (Serial.find(CMTI) == true) { check_sms(); //بررسی متن پیام ارسالی } } void check_connect() { //AT+CCALR? ->{+CCALR: 1 || +CCALR: 0} char CCALR[] = {"+CCALR: 1"}; while (Serial.find(CCALR) != true) { // در صورتیکه عبارت CCALR برابر یک دریافت شد، از حلقه خارج می شویم. Serial.print("AT+CCALR?\r\n"); delay(500); } } void check_sms() { String data = ""; if (Serial.available() > 0) //پاک کردن داده های پیشین بافر Serial.readString(); Serial.print("AT+CMGR=1\r\n"); //ارسال دستور جهت خواندن متن پیام while (Serial.available() == 0); data = Serial.readString(); //در صورت دریافت عبارت مخصوص هر رله، آن را اجرا خواهیم کرد. if (data.indexOf("!11#") >= 0) digitalWrite(relay1, HIGH); else if (data.indexOf("!10#") >= 0) digitalWrite(relay1, LOW); else if (data.indexOf("!21#") >= 0) digitalWrite(relay2, HIGH); else if (data.indexOf("!20#" ) >= 0) digitalWrite(relay2, LOW); Serial.print("AT+CMGD=1,4\r\n"); delay(500); Serial.readString(); send_sms(data); //ارسال پیامک موفقیت آمیز بودن پیامک، شما می توانید هر متنی را در ورودی قرار دهید. } void send_sms(String data_) { Serial.print("AT+CMGS=\"+989*************************\"\r\n");//به چای ستاره ها شماره خود را قرار دهید. delay(700); Serial.print("RELAY SETTING FINISHED SUCCESSFULLY\r\n"); delay(700); Serial.write(0x1a); delay(5000); delay(5000); }
اجرای پروژه کنترل وسایل برقی با پیامک
پس از آپلود برنامه، نوبت به اجرای پروژه کنترل وسایل برقی با پیامک ProMake میرسد. برای اجرای پروژه، حتما تغذیه برد آردوینو را از یک آداپتور ۶ الی ۹ ولت با جریان حداقل ۲ آمپر استفاده کنید. همچنین یک آنتن مناسب برای قسمت GSM، میبایست تهییه شود. پس از این، دکمه PWRKEY را برای سه ثانیه نگه داشته و سپس رها کنید. در این حالت چشمک زن SIM800C فعال میشود. زمانیکه به شبکه متصل شود، چشمک زن هر سه ثانیه یکبار خواهد بود. برای اطلاعات بیشتر در این زمینه، روی این لینک کلیک کنید. در ادامه، دقت کنید که ما دو رله داریم و برای کنترل وضعیت رله ها، به صورت زیر عمل می کنیم. فرمت ارسال پیامک به صورت #x,y! خواهد بود. x شماره رله و y وضعیت رله است. به عنوان مثال می خواهیم رله شماره ۱ را روشن کنیم. بنابراین، پیامک را به صورت ۱,۱#! ارسال میکنیم. در این وضعیت، رله خاموش عدد ۰ و عدد ۱ برای رله روشن تعیین می شود. به عنوان مثال، برای خاموش کردن رله شماره ۲، پیامک را به صورت ۲,۰#! ارسال میکنیم. با ارسال فرامین فوق، می توانیم وضعیت رله های شیلد را کنترل کنیم.
لوازم مورد نیاز
لینک خرید برد آردوینو، کلیک کنید
لینک خرید شیلد PROMAKE ماژول SIM800، کلیک کنید
لینک خرید شیلد آردوینو PROMAKE، کلیک کنید
جمع بندی
در این آموزش به طراحی و پیاده سازی یک رله پیامکی دو کانال، به کمک شیلد PROMAKE پرداختیم. شیلد PROMAKE می تواند اتصالات بین آردوینو و سنسورها و ماژول های مختلف را بدون سیم کشی، اجرا کنید. در این پروژه از سه شیلد آردوینو UNO، SIM800C و رله استفاده کردیم. به کمک این سه شیلد، اتصالات به سادگی و بدون نیاز به برد بورد، اجرا شد. در حقیقت به کمک شیلدهای PROMAKE، بدون نیاز به هیچ سیم کشی و حتی لحیم کاری، شما می توانید پروژه های خود را به سادگی هرچه تمام تر، اجرا کنید.