118ELEC | مجله خبری الکترونیک و رباتیک
  • خانه
  • اخبار
    • اخبار الکترونیک
    • اخبار رباتیک
  • آموزش ها
    • الکترونیک
      • الکترونیک مقدماتی
        • معرفی قطعات الکترونیک
        • تجهیزات اندازه‌گیری
      • الکترونیک پیشرفته
      • الکترونیک دیجیتال
      • الکترونیک صنعتی
    • میکروکنترلرها
      • میکروکنترلر چیست و انواع آن
    • آردوینو
      • آردوینو چیست
      • پروژه آردوینو
    • اینترنت اشیاء
      • اینترنت اشیاء مقدماتی
      • اینترنت اشیاء پیشرفته
    • شبکه‌های کامپیوتری و ارتباط داده
      • can
    • طراحی و ساخت PCB
      • روش های ساخت پی سی بی
    • باتری‌ها
      • باتری چیست؟
      • باتری لیتیوم یون
    • موتور و درایور
      • درایور موتور
      • موتور DC
    • رباتیک
      • مباحث پایه رباتیک
      • ربات مسیر یاب
      • ربات جنگجو
      • سایر ربات ها
  • پروژه
    • پروژه آردوینو
    • پروژه Esp
  • سرگرمی الکترونیک
  • درباره ما
    • درباره ما
    • تماس با ما
  • نویسنده شو!
    • راهنمای ثبت نام و درج مقاله
    • نشر مقاله
    • ثبت نام
    • ورود
    • بازیابی رمز عبور
بدون نتیجه
مشاهده همه نتیجه
  • خانه
  • اخبار
    • اخبار الکترونیک
    • اخبار رباتیک
  • آموزش ها
    • الکترونیک
      • الکترونیک مقدماتی
        • معرفی قطعات الکترونیک
        • تجهیزات اندازه‌گیری
      • الکترونیک پیشرفته
      • الکترونیک دیجیتال
      • الکترونیک صنعتی
    • میکروکنترلرها
      • میکروکنترلر چیست و انواع آن
    • آردوینو
      • آردوینو چیست
      • پروژه آردوینو
    • اینترنت اشیاء
      • اینترنت اشیاء مقدماتی
      • اینترنت اشیاء پیشرفته
    • شبکه‌های کامپیوتری و ارتباط داده
      • can
    • طراحی و ساخت PCB
      • روش های ساخت پی سی بی
    • باتری‌ها
      • باتری چیست؟
      • باتری لیتیوم یون
    • موتور و درایور
      • درایور موتور
      • موتور DC
    • رباتیک
      • مباحث پایه رباتیک
      • ربات مسیر یاب
      • ربات جنگجو
      • سایر ربات ها
  • پروژه
    • پروژه آردوینو
    • پروژه Esp
  • سرگرمی الکترونیک
  • درباره ما
    • درباره ما
    • تماس با ما
  • نویسنده شو!
    • راهنمای ثبت نام و درج مقاله
    • نشر مقاله
    • ثبت نام
    • ورود
    • بازیابی رمز عبور
بدون نتیجه
مشاهده همه نتیجه
118ELEC | مجله خبری الکترونیک و رباتیک
بدون نتیجه
مشاهده همه نتیجه

راه اندازی ماژول SIM800L با آردوینو UNO

ادمین 2 توسط ادمین 2
7 دی 1400
در پروژه آردوینو
9
راه اندازی ماژول SIM800L با آردوینو UNO

اگر علاقه دارید قسمت هایی از خانه خود را با برقراری یک تماس یا پیامک کنترل کنید، اتفاقات خانه خود را رصد کنید و یا حتی از طرف خانه شما پیامکی برروی تلفن همراه شما ارسال شود، پس با ما در آموزش راه اندازی ماژول SIM800L با آردوینو همراه باشید. پس از اتمام این مقاله شما میتوانید به‌سادگی یک پروژه اینترنت اشیا (IOT) برای خود بسازید.

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

باید به این نکته توجه داشته باشید که نمی توان پین Rx ماژول را به صورت مستقیم به پین دیجیتال آردوینو وصل کرد. زیرا ولتاژ روی پایه های GPIO در آردوینو Uno پنج ولت است، در حالیکه ماژول SIM800L با 3.3 ولت کار می کند و تحمل 5 ولت را ندارد. بنابراین سطح ولتاژی که از آردوینو به ماژول وارد می شود باید به 3.3 کاهش یابد تا به ماژول آسیبی نرسد. چندین راه حل برای کاهش سطح سیگنال  وجود دارد که ساده ترین آن استفاده از یک تقسیم مقاومتی ساده است. می توان یک مقاومت 10 کیلو اهم بین پین Rx ماژول SIM800L GSM و پین 2 آردوینو Uno و همچنین یک مقاومت 20 کیلو اهم بین پین RX ماژول و زمین قرار داد.

حال باید پین های منبع تغذیه وصل شوند. همانطور که در مقاله معرفی ماژول SIM800L GSM توضیح داده شد، می توان برای تغذیه ماژول به دو روش عمل کرد که در شکل های زیر شماتیک مدار و نحوه اتصال آن آورده شده است. در شکل اول از باتری Li-Po  با ظرفیت 1200mAh و در شکل دوم از مبدل کاهنده باک LM2596 برای تغذیه ماژول استفاده شده است.

  راه اندازی ماژول SIM800l با آردوینو UNO و استفاده از باتری Li-Po 3.7 ولت برای تغذیه ماژول
راه اندازی ماژول SIM800l با آردوینو UNO و استفاده از باتری Li-Po 3.7 ولت برای تغذیه ماژول
 راه اندازی ماژول SIM800l با آردوینو UNO و استفاده از مبدل کاهنده باک برای تغذیه ماژول
راه اندازی ماژول SIM800l با آردوینو UNO و استفاده از مبدل کاهنده باک برای تغذیه ماژول

توجه: هنگامیکه از مبدل کاهنده LM2596 به عنوان منبع تغذیه ماژول استفاده می شود، زمین های مدار باید به یکدیگر متصل باشند.


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

بررسی دستورات AT برای راه اندازی ماژول SIM800l با آردوینو

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

لازم به ذکر است که در پنجره مانیتور سریال  ، باید گزینه NL&CR انتخاب شود. حال به شرح قسمت های مختلف کد پرداخته می شود.

#include < SoftwareSerial.h >
//Create software serial object to communicate with SIM800L
SoftwareSerial mySerial(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2
void setup()
{
 //Begin serial communication with Arduino and Arduino IDE (Serial Monitor)
 Serial.begin(9600);
 
 //Begin serial communication with Arduino and SIM800L
  mySerial.begin(9600);
  Serial.println("Initializing...");
  delay(1000);
  mySerial.println("AT"); //Once the handshake test is successful, it will back to OK
  updateSerial();
  mySerial.println("AT+CSQ"); //Signal quality test, value range is 0-31 , 31 is the best
  updateSerial();
  mySerial.println("AT+CCID"); //Read SIM information to confirm whether the SIM is plugged
  updateSerial();
 mySerial.println("AT+CREG?"); //Check whether it has registered in the network
  updateSerial();
}
void loop()
{
  updateSerial();
}
void updateSerial()
{
  delay(500);
  while (Serial.available()) 
  {
    mySerial.write(Serial.read());//Forward what Serial received to Software Serial Port
  }
  while(mySerial.available()) 
  {
    Serial.write(mySerial.read());//Forward what Software Serial received to Serial Port
  }
}

در ابتدای کد کتابخانه SoftwareSerial.h برای ارتباط سریال میان پین های آردوینو و پورت های Rx /Tx ماژول SIM800L افزوده  شده است. 

#include < SoftwareSerial.h >
//Create software serial object to communicate with SIM800L
SoftwareSerial mySerial(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2

در تابع setup، تنظیمات اولیه ارتباط سریال بین آردوینو، محیط آردوینو IDE و ماژول SIM800L با نرخ ارسال 9600 آورده شده است.

//Begin serial communication with Arduino and Arduino IDE (Serial Monitor)
 Serial.begin(9600);
 
 //Begin serial communication with Arduino and SIM800L
  mySerial.begin(9600);

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

دستور AT : پایه ترین دستور AT است که با ارسال آن و دریافت OK از سمت ماژول می توان از برقراری ارتباط بین ماژول و آردوینو اطمینان یافت. سپس می توان دستوراتی را مانند دستورات زیر، برای ماژول ارسال کرد و اطلاعاتی را در مورد آن بدست آورد:

دستور AT+CSQ : شدت سیگنال را بررسی می کند. عدد اول، شدت سیگنال به دسی بل را بیان می کند که باید مقدارش از 5 بیشتر باشد. هر چه این مقدار بیشتر باشد، بهتر است. البته این مقدار به نوع آنتن مورد استفاده و موقعیت مکانی ماژول بستگی دارد. 

دستور AT+CCID : با ارسال این دستور و دریافت OK می توان از فعال بودن سیم کارت اطمینان پیدا کرد. به علاوه با این دستور شماره سیم کارت قابل دریافت است. 

دستور ?AT+CREG : بررسی می کند که آیا سیم کارت در شبکه ثبت شده یا خیر. عدد دوم که در پاسخ به این دستور دریافت می شود، نوع شبکه ای که سیم کارت در آن ثبت شده است را نشان می دهد. این عدد می تواند 1 یا 5 باشد. عدد 1 نشان دهنده شبکه خانگی و عدد 5 نشان دهنده شبکه رومینگ است. هر عدد دیگری به جز 1 و 5 ، نشان می دهد که سیم کارت در هیچ شبکه ای ثبت نشده است.

  delay(1000);
  mySerial.println("AT"); //Once the handshake test is successful, it will back to OK
  updateSerial();
  mySerial.println("AT+CSQ"); //Signal quality test, value range is 0-31 , 31 is the best
  updateSerial();
  mySerial.println("AT+CCID"); //Read SIM information to confirm whether the SIM is plugged
  updateSerial();
 mySerial.println("AT+CREG?"); //Check whether it has registered in the network
  updateSerial();

در تابع loop ، تابع ()updateSerial قرار دارد که دائماً منتظر ورودی های مانیتور سریال است تا آن را از طریق پین 2 (پین Rx ماژول) به ماژول SIM800L ارسال کند. همچنین دائماً پین D3 (پین Tx ماژول) را چک می کند تا اگر ماژول پاسخی به ورودی داشته باشد، آن را در مانیتور سریال نشان دهد.

void updateSerial()
{
  delay(500);
  while (Serial.available()) 
  {
    mySerial.write(Serial.read());//Forward what Serial received to Software Serial Port
  }
  while(mySerial.available()) 
  {
    Serial.write(mySerial.read());//Forward what Software Serial received to Serial Port
  }
}

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

دستورات پایه AT برای راه اندازی ماژول SIM800l با آردوینو
دستورات پایه AT برای ارتباط با ماژول SIM800

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

دستور ATI : نام و نسخه ماژول را می دهد.

دستور ?AT+COPS : اتصال به شبکه را بررسی می کند. .

دستور AT+COPS=? : لیست اُپراتورهای موجود در شبکه را نشان می دهد.

دستور AT+CBC : وضعیت باتری Li-Po را نشان می دهد. عدد دوم میزان شارژ باتری (که در اینجا 93%) و عدد سوم ولتاژ واقعی به میلی ولت (در اینجا 3.877 ولت) است.

دستورات AT برای اتصال شبکه در ماژول SIM800L GSM

ارسال پیام با ماژول SIM800L GSM

پس از آماده‌سازی آردوینو و SIM800، می توان ماژول آردوینو را برای ارسال پیام به شماره موبایل مورد نظر کد نویسی کرد. قبل از کد نویسی باید شماره موبایل را وارد کرد. در رشته ZZxxxxxxxxxx ، کد کشور باید جایگزین ZZ و شماره 10 رقمی به جای xxxxxxxxxx قرار گیرد.

#include < SoftwareSerial.h >
 
//Create software serial object to communicate with SIM800L
SoftwareSerial mySerial(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2
 
void setup()
{
  //Begin serial communication with Arduino and Arduino IDE (Serial Monitor)
  Serial.begin(9600);
 
  //Begin serial communication with Arduino and SIM800L
  mySerial.begin(9600);
 
  Serial.println("Initializing...");
  delay(1000);
 
  mySerial.println("AT"); //Once the handshake test is successful, it will back to OK
  updateSerial();
 
  mySerial.println("AT+CMGF=1"); // Configuring TEXT mode
  updateSerial();
  mySerial.println("AT+CMGS=\"+ZZxxxxxxxxxx\"");//change ZZ with country code and xxxxxxxxxxx with phone number to sms
  updateSerial();
  mySerial.print("Last Minute Engineers | lastminuteengineers.com"); //text content
  updateSerial();
  mySerial.write(26);
}
 
void loop()
{
}
 
void updateSerial()
{
  delay(500);
  while (Serial.available())
  {
	mySerial.write(Serial.read());//Forward what Serial received to Software Serial Port
  }
  while(mySerial.available())
  {
	Serial.write(mySerial.read());//Forward what Software Serial received to Serial Port
  }
}

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

دستور AT+CMGF=1 : قالب پیام را از نوع “متن” قرار می دهد. قالب پیشفرض PDU (پروتکل انتقال داده) است.

دستور AT+CMGS=+ZZxxxxxxxxxx : پیام را به شماره مشخص شده ارسال می کند. پیامی که به دنبال آن کلید ‘Ctrl+z’ وارد شود به عنوان یک پیام متنی در نظر گرفته می شود. کلید ‘Ctrl+z’ بیست و ششمین کاراکتر جدول ASCII است. بنابراین، لازم است که هنگام ارسال پیام متنی 26 دسیمال یا 1A هگز ارسال شود. 

println("AT+CMGF=1"); // Configuring TEXT mode
  updateSerial();
  mySerial.println("AT+CMGS=\"+ZZxxxxxxxxxx\"");//change ZZ with country code and xxxxxxxxxxx with phone number to sms
  updateSerial();
  mySerial.print("Last Minute Engineers | lastminuteengineers.com"); //text content
  updateSerial();
  mySerial.write(26);

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

  • پیام ارسالی به ماژول SIM800l
  • پیام ارسالی به ماژول SIM800l
پیام ارسالی به ماژول SIM800

دریافت پیام با SIM800L

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

#include < SoftwareSerial.h >
 
//Create software serial object to communicate with SIM800L
SoftwareSerial mySerial(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2
 
void setup()
{
  //Begin serial communication with Arduino and Arduino IDE (Serial Monitor)
  Serial.begin(9600);
 
  //Begin serial communication with Arduino and SIM800L
  mySerial.begin(9600);
 
  Serial.println("Initializing...");
  delay(1000);
 
  mySerial.println("AT"); //Once the handshake test is successful, it will back to OK
  updateSerial();
 
  mySerial.println("AT+CMGF=1"); // Configuring TEXT mode
  updateSerial();
  mySerial.println("AT+CNMI=1,2,0,0,0"); // Decides how newly arrived SMS messages should be handled
  updateSerial();
}
 
void loop()
{
  updateSerial();
}
 
void updateSerial()
{
  delay(500);
  while (Serial.available())
  {
	mySerial.write(Serial.read());//Forward what Serial received to Software Serial Port
  }
  while(mySerial.available())
  {
	Serial.write(mySerial.read());//Forward what Software Serial received to Serial Port
  }
}

این کد نیز مشابه کدهای قبل است و تنها در چندین دستور AT متفاوت است. در این کد ، هنگامی که اتصال برقرار می شود، دستورات AT زیر اجرا می شوند: 

دستور AT+CMGF=1 : قالب پیام را از نوع ‘متنی’ قرار می دهد. قالب پیشفرض PDU است. 

دستور AT+CNMI=1,2,0,0,0 : چگونگی دستیابی کامپیوتر به پیام جدید را تعیین می کند. با استفاده از این دستور می توان تعیین کرد که ماژول پیام های ورودی جدید را مستقیما به کامپیوتر ارسال کند یا آنها را در حافظه خود ذخیره کند و سپس مکان ذخیره سازی پیام را به کامپیوتر اطلاع دهد.

پاسخ ماژول با کد دستوری CMT+ شروع می شود: تمام مقادیر در آن با استفاده از کاما ‘,’ از یکدیگر جدا شده اند. اولین مقدار شماره موبایل، مقدار دوم نام شخصی است که پیام را فرستاده، مقدار سوم تاریخ و زمان دریافت پیام و مقدار چهارم متن پیام است. 

println("AT+CMGF=1"); // Configuring TEXT mode
  updateSerial();
  mySerial.println("AT+CNMI=1,2,0,0,0"); // Decides how newly arrived SMS messages should be handled
  updateSerial();

این بار تابع loop (حلقه) خالی نیست  تا هر زمان که پیامی به ماژول ارسال شود، بتوان آن را خواند. به محض ارسال پیام به ماژول SIM800، می توان آن را بر روی مانیتور سریال مشاهده کرد.

  • ارسال پیام به ماژول SIM800
  • دستورات AT ماژول SIM800 برای خواندن پیام بر روی آردوینو
دریافت پیام توسط ماژول SIM800 و نمایش خروجی بر روی مانیتور سریال

افزایش اندازه بافر SoftwareSerial آردوینو برای دریافت پیام

در صورتی که پیام طولانی باشد، ممکن است که برخی از کاراکترها حذف شوند. این مساله به دلیل خطای کد نویسی نمی باشد بلکه بافر دریافتی SoftwareSerial پر شده و به همین دلیل، برخی از کاراکترها حذف می شوند. 

ساده ترین راه حل افزایش اندازه بافر SoftwareSerial است. اندازه پیشفرض بافر 64 بایت است که می توان آن را تا 256 بایت (این مقدار بسته به کاربرد میتواند کمتر انتخاب شود) افزایش داد. برای این منظور، در کامپیوتر در صورتی که دارای سیستم عامل ویندوز باشد، به آدرس زیر رفته :

C:\Program Files (x86) -> Arduino -> hardware -> Arduino -> avr -> libraries -> SoftwareSerial

(در صورتی که از نسخه های جدیدتر آردوینو IDE استفاده می شود به پوشه src رفته)، سپس کتابخانه SoftwareSerial.h را باز کرده و دستور مربوط به اندازه بافر مانند زیر تغییر کند:

// RX buffer size
#define _SS_MAX_RX_BUFF 64

باید به صورت زیر تغییر کند:

// RX buffer size
#define _SS_MAX_RX_BUFF 256

پس از ذخیره کردن فایل، باید کد دوباره اجرا شود.

آردوینو  SoftwareSerial افزایش اندازه بافر
افزایش اندازه بافر SoftwareSerial آردوینو

برقراری تماس با ماژول SIM800L و آردوینو

این دستورات برای برقراری تماس کمکی (SoS) در موقعیت های خطرناک و اضطراری بطور مثال، زمانیکه آتش سوزی یا سرقت در منزل رخ بدهد، کاربرد دارد. 

قبل از اجرای برنامه، ابتدا باید شماره موبایل مورد نظر وارد شود به این صورت که در رشته ZZxxxxxxxxxx کد کشور با ZZ و شماره موبایل 10 رقمی مورد نظر با xxxxxxxxxx  جایگزین شوند.

#include < SoftwareSerial.h >
 //Create software serial object to communicate with SIM800L
SoftwareSerial mySerial(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2
void setup()
{
  //Begin serial communication with Arduino and Arduino IDE (Serial Monitor)
  Serial.begin(9600);
  //Begin serial communication with Arduino and SIM800L
  mySerial.begin(9600);
   Serial.println("Initializing...");
  delay(1000);
   mySerial.println("AT"); //Once the handshake test is successful, i t will back to OK
  updateSerial();
  mySerial.println("ATD+ +ZZxxxxxxxxxx;"); //  change ZZ with country code and xxxxxxxxxxx with phone number to dial
  updateSerial();
  delay(20000); // wait for 20 seconds...
  mySerial.println("ATH"); //hang up
  updateSerial();
}
 void loop()
{
}
 void updateSerial()
{
  delay(500);
  while (Serial.available())
  {
	mySerial.write(Serial.read());//Forward what Serial received to Software Serial Port
  }
  while(mySerial.available())
  {
	Serial.write(mySerial.read());//Forward what Software Serial received to Serial Port
  }
}

برای برقراری تماس باید دستورات AT زیر را به کار برد: 

دستور ;ATD+ +ZZxxxxxxxxxx : با شماره وارد شده تماس می گیرد. کاراکتر (;) نشان دهنده پایان دستور است و باید در انتهای تمام خط کدها قرار بگیرد. 

دستور ATH : تماس را قطع می کند.

println("ATD+ +ZZxxxxxxxxxx;"); //  change ZZ with country code and xxxxxxxxxxx with phone number to dial
  updateSerial();
  delay(20000); // wait for 20 seconds...
  mySerial.println("ATH"); //hang up
  updateSerial();
  • برقراری تماس با ماژول SIM800
برقراری تماس با ماژول SIM800 و نمایش دستورات AT در مانیتور سریال

دریافت تماس با آردوینو و ماژول SIM800L

برای دریافت تماس، تنها کافیست که به ماژول SIM800L گوش داده شود. کد زیر برای زمانی که لازم باشد هنگام دریافت تماس از یک شماره بخصوص، کار خاصی انجام گیرد، کاربرد دارد.

#include < SoftwareSerial.h >
 //Create software serial object to communicate with SIM800L
SoftwareSerial mySerial(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2
void setup()
{
//Begin serial communication with Arduino and Arduino IDE (Serial Monitor)
  Serial.begin(9600);
 
  //Begin serial communication with Arduino and SIM800L
  mySerial.begin(9600);
 
  Serial.println("Initializing...");
}
 
void loop()
{
  updateSerial();
}
 
void updateSerial()
{
  delay(500);
  while (Serial.available())
  {
	mySerial.write(Serial.read());//Forward what Serial received to Software Serial Port
  }
  while(mySerial.available())
  {
	Serial.write(mySerial.read());//Forward what Software Serial received to Serial Port
  }
}

زمانی که تماس دریافت می شود، “RING” در مانیتور سریال مشاهده می شود. به دنبال “RING” شماره تلفن و شناسه تماس گیرنده نیز در مانیتور سریال نرم افزار آردوینو دیده می شود. برای پذیرش یا قطع تماس ورودی، از دستورات AT زیراستفاده می شود: 

دستور ATA  : برای پذیرش تماس ورودی به کار میرود.

دستور ATH : تماس ورودی را قطع می کند. هنگام قطع تماس، “NO CARRIER” را بر روی مانیتور سریال می فرستد و نشان دهنده این است که تماسی برقرار نشده است. 

خروجی مانیتور سریال زمانی که تماس توسط ماژول SIM800L GSM دریافت می شود

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

پست قبلی

معرفی ماژول SIM800L GSM

پست بعدی

معرفی سنسور ژیروسکوپ

ادمین 2

ادمین 2

پست بعدی
عملکرد سنسور ژیروسکوپ MEMS

معرفی سنسور ژیروسکوپ

نظرات 9

  1. مریم می گوید:
    4 سال قبل

    سلام و خداقوت بسیار خدمت شما.امیدوارم هرکجا که هستید سالم و موفق وخوشحال باشید.مطالبی که ذکر کردید بسیار مفید بود.

    پاسخ
    • ادمین 2 ادمین 2 می گوید:
      4 سال قبل

      سلام ممنونم دوست عزیز.

      پاسخ
  2. محمد عباسی می گوید:
    4 سال قبل

    من هرچقدر تلاش کردم نتونستم با استفاده از این ماژول پیامک بفرستم!
    ماژول پیامک و تماس دریافت می کنه
    اما وقتی پیامک می فرستم ارور میده؟
    پیشنهادی ندارید؟

    پاسخ
  3. محمد جواد مشهدی می گوید:
    4 سال قبل

    سلام
    کدتون خطای سین تکس داره
    #include
    با اس بزرگ نوشته می شه!!!

    پاسخ
    • ادمین 2 ادمین 2 می گوید:
      4 سال قبل

      سلام دوست عزیز
      ممنونم اصلاح شد.

      پاسخ
    • بنده خدا می گوید:
      4 سال قبل

      باید بعد از شروع AT دو تا خط کد اضافه کرد:
      mySerial.println(“AT+CSMP=17,167,2,25\r”); // set this parameter if empty SMS received
      delay(100);

      پاسخ
      • p y p y می گوید:
        4 سال قبل

        سلام دوست عزیز، ممنون از نظرتون، این دو خط هم می‌تونه باشه.

        پاسخ
  4. محمد می گوید:
    3 سال قبل

    با عرض سلام.
    یه سوالی که داشتم اینه چرا از 3.3 ولت آردوینو استفاده نمیکنید به جای این 2 روش؟؟؟

    پاسخ
    • P Y P Y می گوید:
      3 سال قبل

      سلام دوست عزیز،
      خروجی ۳.۳ ولت آردوینو، حداکثر ۵۰ میلی‌آمپر جریان میتونه تامین کنه،
      در حالی که sim800 در حالت ارسال و دریافت به‌طور متوسط ۳۵۰ میلی‌آمپر جریان نیاز داره،
      این جریان به‌صورت لحظه‌ای ممکنه بسیار بیشتر هم بشه.

      پاسخ

دیدگاهتان را بنویسید لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

راه اندازی سنسور تشخیص رنگ TCS230/TCS3200 با آردوینو

توسط 118elec .com
20 اسفند 1401
0
راه اندازی سنسور تشخیص رنگ TCS230/TCS3200 با آردوینو

در این مقاله به آموزش تشخیص رنگ با استفاده از سنسور رنگ TCS230 یا TCS3200 و آردوینو پرداخته شده است....

بیشتر بخوانید

نحوه ارتقاء مبدل XL4015

توسط 118elec .com
15 اسفند 1401
0
تغییر مبدل XL4015 با استفاده ازمحدود‌کننده‌های قابل تنظیم جریان

در این آموزش روشی ساده برای ارتقای ماژول XL4015، که یک مبدل DC به DC باک می‌باشد، با استفاده از...

بیشتر بخوانید

پیشرفت نوسان سازها در راستای پاسخ به نیازهای روز تکنولوژی

توسط نویسنده 2
14 شهریور 1401
0
پیشرفت نوسان سازها در راستای پاسخ به نیازهای روز تکنولوژی

Part components inside joystick of a console game نوسان سازهای ساعت، سیگنال مرجع دقیق زمان‌بندی‌شده‌ای برای کنترل مدار الکترونیکی ارائه...

بیشتر بخوانید

درباره ما

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

ارتباط با ما از طریق:

118elec@gmail.com

  • اصول مقاله نویسی
  • درباره ما
  • تماس با ما

Copyright © تمام حقوق این سایت متعلق به 118elec می‌باشد.

بدون نتیجه
مشاهده همه نتیجه
  • خانه
  • اخبار
    • اخبار الکترونیک
    • اخبار رباتیک
  • آموزش ها
    • الکترونیک
      • الکترونیک مقدماتی
      • الکترونیک پیشرفته
      • الکترونیک دیجیتال
      • الکترونیک صنعتی
    • میکروکنترلرها
      • میکروکنترلر چیست و انواع آن
    • آردوینو
      • آردوینو چیست
      • پروژه آردوینو
    • اینترنت اشیاء
      • اینترنت اشیاء مقدماتی
      • اینترنت اشیاء پیشرفته
    • شبکه‌های کامپیوتری و ارتباط داده
      • can
    • طراحی و ساخت PCB
      • روش های ساخت پی سی بی
    • باتری‌ها
      • باتری چیست؟
      • باتری لیتیوم یون
    • موتور و درایور
      • درایور موتور
      • موتور DC
    • رباتیک
      • مباحث پایه رباتیک
      • ربات مسیر یاب
      • ربات جنگجو
      • سایر ربات ها
  • پروژه
    • پروژه آردوینو
    • پروژه Esp
  • سرگرمی الکترونیک
  • درباره ما
    • درباره ما
    • تماس با ما
  • نویسنده شو!
    • راهنمای ثبت نام و درج مقاله
    • نشر مقاله
    • ثبت نام
    • ورود
    • بازیابی رمز عبور

Copyright © تمام حقوق این سایت متعلق به 118elec می‌باشد.

خوش آمدید!

ورود به حساب کاربری خود در زیر

رمز عبور را فراموش کرده اید؟ ثبت نام

ایجاد حساب جدید!

پر کردن فرم های زیر برای ثبت نام

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

رمز عبور خود را بازیابی کنید

لطفا نام کاربری یا آدرس ایمیل خود را برای تنظیم مجدد رمز عبور خود وارد کنید.

ورود