آردوینو سیم کارت GSM - GPRS پروژه های آردوینو

پروژه سنجش پیامکی دما رطوبت محیط با Sim800c پرومیک Promake و آردوینو

measure-humid-and-temp-with-easy-iot-promake-arduino-shield-digispark
نوشته شده توسط معین صابری

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

 


ماژول سنسور SHT20 پرومیک


شیلد سنسور PROMAKE، یک شیلد بسیار جالب است. این شیلد در حقیقت یک شیلد مادر برای سنسورهای مختلف به شمار می رود. این شیلد به شما این امکان را می دهد تا سنسورهای مختلف را به آن متصل(لحیم) کنید. به صورت پیشفرض روی این شیلد سنسور SHT20 جهت اندازه گیری دما و رطوبت تعبیه شده است. این سنسور می تواند از طریق پروتکل I2C به صورت همزمان، میزان دما و رطوبت را در اختیار ما قرار دهد. سنسور SHT20 در بازه ۰ الی ۸۰ درصد رطوبت و دما را در محدوده ۴۵- الی ۱۲۵ درجه سانتی گراد می تواند اندازه گیری کند.

ماژول دما رطوبت SHT20 پرومیک promake - دیجی اسپارک

 

جهت اتصال شیلد سنسور، می بایست از شیلد آردوینو UNO استفاده کنید. بر روی شیلد آردوینو UNO دو اسلات تعبیه شده است. شما باید شیلد سنسور را در اسلات Promake Module2 قرار دهید. در اتصال شیلد هم به گونه ای عمل کنید که پایه ۵ ولت شیلد به پایه متناظر آن در اسلات، متصل شود.

 


ماژول سیم کارت SIM800C پرومیک


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

ماژول sim800c promake در پروژه سنجش پیامکی دما رطوبت - دیجی اسپارک

 

جهت اتصال شیلد سیم کارت، باید آن را در اسلات شماره ۱، با نام Promake Module1 قرار دهید. در هنگام اتصال حتما دقت کنید که پایه ۵ ولت شیلد GSM به پایه متناطر در اسلات، متصل گردد. همچنین جهت اتصال سیم کارت صحیح بوده و آنتن هم حتما نصب گردد.

 


نصب کتابخانه سنسور


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

نصب کتابخانه SHT20 در آردوینو - دیجی اسپارک

 


کدهای پروژه سنجش دما رطوبت پیامکی


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

#include "Wire.h"  //کتابخانه i2c
#include "SHT2x.h"  //کتابخانه سنسور دما و رطوبت SHT
SHT2x sht;  //ایجاد یک شی از کلاس کتابخانه
void setup() {
  sht.begin();  //راه اندازی سنسور SHT
  Serial.begin(115200);  //تعیین باودریت ارتباط سریال
  delay(100);
  Serial.print("AT\r\n");  //ارسال دستور برای تعیین باودریت
  delay(500);
  check_connect();  //انتظار برای اتصال به شبکه GSM
  Serial.print("AT+CMGF=1\r\n");  //تعیین فرمت متنی برای ارسال پیامک
  delay(700);
  Serial.print("AT+CMGD=1,4\r\n");   //پاک کردن حافظه سیم کارت
  delay(700);
  Serial.print("AT+CSMP=17,167,0,0\r\n");  //تعیین مرکز پیام برای راسال پیامک
  delay(700);
}
void loop() {
  char RING[] = {"RING"};  //درصورتیکه تماس گرفته شود، عبارت RING را از ماژول دریافت خواهیم کرد.
  if (Serial.find(RING) == true) {
    Serial.print("ATH\r\n");  //قطع تماس 
    delay(700);
    send_sms(read_data());   //ارسال پیامک، خروجی خوانده شده از تابع مخصوص سنسور، در ورودی تابع قرار می گیرد.
  }

}
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);
  }
}
String read_data() {
  sht.read();  //خواندن داده از سنسور
  return ("TEMP:" + String (sht.getTemperature()) + " HUMIDITY: " + String(sht.getHumidity()));  //خواندن مقدار دما و رطوبت از سنسور و قرار دادن در خروجی
}
void send_sms(String data_) {
  Serial.print("AT+CMGS=\"+98************\"\r\n");//به چای ستاره ها شماره خود را قرار دهید.
  delay(700);
  Serial.print(data_);
  delay(700);
  Serial.write(0x1a);  //کاراکتر کنترلی ارسال پیامک
  delay(5000);
  delay(5000);
}

 


اجرای پروژه سنجش دما رطوبت SMS


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

اجرای پروژه سنجش پیامکی دما رطوبت تجاری سازی شده با آردوینو - دیجی اسپارک

 


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


لینک خرید برد آردوینو، کلیک کنید

لینک خرید شیلد PROMAKE ماژول SIM800، کلیک کنید

لینک خرید شیلد سنسور، کلیک کنید

لینک خرید آداپتور، کلیک کنید

لینک خرید شیلد آردوینو PROMAKE، کلیک کنید

 


جمع بندی


در مجموعه آموزش های راه اندازی و کار با شیلدهای PROMAKE، این قسمت را به یکی از مهم ترین و پرکابردترین شیلدهای PROMAKE، شیلد سنسور اختصاص دادیم. شیلد سنسور PROAMKE یک شیلد همه کاره با قابلیت های فراوان است. این شیلد که به صورت پیشفرض از سنسور SHT20 بهره می برد، قادر است تا اتصال سایر سنسورها را به خود، بپذیرد. در این آموزش به کمک این شیلد و شیلد GSM، توانستیم تا داده های مربوط به دما و رطوبت را از راه دور و به کمک پیامک، در اخیتار بگیریم. البته در این پروژه، از شیلد آردوینو UNO جهت ارتباط با آردوینو، بهره بردیم.

 

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

معین صابری

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

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

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