Како се шаље и прима СМС путем ГСМ модема

Испробајте Наш Инструмент За Елиминисање Проблема





У овом чланку ћемо научити како слати и примати СМС поруке користећи ГСМ модем којим управља Ардуино. Погледајмо шта је ГСМ модем, како га повезати са Ардуином, како послати СМС са подешавањем.

Такође ћемо истражити које све апликације можемо постићи са ГСМ модемом, осим слања текстуалне поруке од стране човека.



Шта је ГСМ модем?

ГСМ је скраћеница од Глобални систем за мобилне комуникације, то је стандард који је развио ЕТСИ (Европски институт за телекомуникационе стандарде) који је описао протоколе за 2Г комуникацију.

То је први дигитални протокол за мобилну комуникацију који је оптимизован за фулл дуплек говорну комуникацију. Укратко, пуна дуплекс комуникација значи да обе стране могу истовремено слати / примати податке (или глас).



ГСМ протокол такође омогућава пренос пакетних података, као што су ГПРС и ЕДГЕ.

СИМ800 ГСМ модем:

ГСМ модем је хардвер који прихвата важећу СИМ картицу (Субсцрибер Идентити Модуле), у основи ће радити било који СИМ који подржава ГСМ протокол и са мрежном претплатом.

То је попут мобилног телефона без екрана и тастатуре. Има четири И / О пинова у зависности од модела који одаберете.

Два за ТКС и РКС (пренос и пријем), још два пина за ВЦЦ и ГНД, што је уобичајено за све.

Такође се састоји од РС232 порта за серијску комуникацију између модема и рачунара, међутим нећемо користити у овом пројекту.

Има стандардну утичницу за једносмерну струју која се може напајати из спољних извора напајања као што су напонски адаптери.

Има радни напон у распону од 5 до 12В на ДЦ прикључку, овисно о моделу. Има 3 ЛЕД индикатора за напајање, статус и мрежу.

ЛЕД за напајање указује на присуство напајања, статус ЛЕД приказује да ли ГСМ модем ради или не, мрежни ЛЕД указује на успостављање мобилне мреже.

У почетку мрежна ЛЕД лампица трепће сваке секунде док тражи мрежу, након што успостави мобилну мрежу, трепће сваке 3 секунде.

Потребно је да притиснете дугме за напајање 2 до 3 секунде да бисте активирали ГСМ модем, након што завршите, закључаће се на мобилну мрежу.

Да бисте проверили да ли ваш ГСМ модем ради, само позовите број чији сте уметнули СИМ картицу. Требали бисте добити повратни тон звона. Ако се догоди, онда ваш модул ради у реду.

Користићемо СИМ800 ГСМ модем који подржава четверопојасни 850/900/1800/1900 МХз. ако поседујете СИМ900 модем, не брините, програм и склоп су компатибилни у овом пројекту.

Сад бисте стекли неку идеју о ГСМ модему, а сада научимо како да га повежемо са ардуином.

Кружни дијаграм:

Као што можете закључити из дијаграма, веза круга је крајње лака. Требају вам само 3 мушке и женске заглавља. У овом пројекту је обавезан УСБ кабл, јер ћемо комуницирати путем серијског монитора.

Увек напајајте ГСМ модем спољним адаптером. Снага из ардуина је недовољна за ГСМ модем, чак би могао преоптеретити регулатор напона ардуина.

То је све о хардверском делу. Сада пређимо на кодирање.

Програм:

//-------------Program developed by R.Girish---------------//
#include
#define rxPin 9 // gsm TX------> arduino 9
#define txPin 8 //gsm RX--------> arduino 8
SoftwareSerial mySerial = SoftwareSerial(rxPin, txPin)
char text[150]
String message=''
int x
void setup()
{
Serial.begin(9600)
while (!Serial){}
mySerial.begin(9600)
delay(1000)
Serial.println('Write your message (with dot at end):')
}
void loop()
{
x=0
while( Serial.available()>0 )
{
text[x] = Serial.read()
message += text[x]
x++
if (text[x-1]==46)
{
Serial.println('Your message is sending......')
SendTextMessage()
ShowSerialData()
delay(1000)
Serial.println('r')
Serial.println('Success')
message=''
x=0
}}}
void SendTextMessage()
{
mySerial.print('AT+CMGF=1r')
delay(1000)
mySerial.print('AT+CMGS='+91xxxxxxxxxx'r') // Replace x with your 10 digit phone number
delay(1000)
mySerial.println(message)
mySerial.print('r')
delay(1000)
mySerial.println((char)26)
mySerial.println()
}
void ShowSerialData()
{
while(mySerial.available()!=0)
Serial.write(mySerial.read())
}
//-------------Program developed by R.Girish---------------//

Не заборавите тачку (.) На сваком крају поруке , у супротном неће послати поруку на прописани број у програму. Замените к са 10 дигиталних телефонских бројева у програму. Обавезно имајте важећи СМС план на СИМ картици.

Ако нисте из Индије, промените позивни број државе у програму.

На пример:

За Велику Британију: +44
За САД: +1
За Канаду: +1
За Русију: +7

Такође можете аутоматизовати поруку коју шаље ГСМ модем одговарајућим кодирањем Ардуина. На телефон можете примити аутоматска упозорења о порукама, као што су: упозорење против крађе, упозорење о пожару, временско упозорење на вашем локалном подручју итд.

Можете се чак и повезати на Интернет путем ГПРС-а у ГСМ модему, али то је предмет другог чланка.

У једном од наредних чланака који ћемо научити Како примити СМС користећи ГСМ модем и Ардуино

Ако имате додатних питања у вези са слањем СМС-а помоћу ГСМ модема, слободно питајте у одељку за коментаре.

Како примити СМС користећи ГСМ модем

У горњој дискусији научили смо како послати текстуалну поруку користећи ГСМ модем и такође смо разговарали о основама ГСМ модема.

У овом одељку ћемо разговарати о начину примања СМС-а путем серијског монитора ардуино ИДЕ-а. Не само да ћемо примати СМС поруке, већ и слати текстуалне поруке притиском на различите тастере. На тренутак ће се притиском на „с“ послати унапред унета текстуална порука, притиском на „р“ примит ће се СМС у стварном времену.

Ево ауторовог прототипа:

Како то ради

Коло за примање СМС-а користећи ГСМ моден је врло једноставно, требају вам само 3 мушке и женске заглавља. ТКС ГСМ модема повезан је на пин # 9 ардуино-а, а РКС ГСМ-модема повезан је на пин # 8 ардуино-а, а веза између земље и земље такође је дата између ГСМ-а и ардуино-а.

Увек користите спољно напајање за ГСМ модем, немојте повезивати 5 Вцц са ардуина на ГСМ модем, јер постоје велике шансе за преоптерећење регулатора напона ардуина.

Не заборавите да на претплату на СМС примените резач тарифе за СМС или нешто слично како бисте смањили трошкове за СМС.

У супротном ћете на крају испразнити стање на рачуну након слања неколико СМС-ова, јер неће бити потврде од вашег мобилног оператера након сваког послатог СМС-а, јер се СИМ картица налази у ГСМ модему.

Једино признање које добијете је упозорење СМС-ом у вези са вашим празним рачуном, па будите опрезни у погледу трошкова. Сада пређимо на кодирање дела овог пројекта.

Програм:

//-----------------Program developed by R.Girish-------------//
#include
SoftwareSerial gsm(9,8)
void setup()
{
gsm.begin(9600) // Setting the baud rate of GSM Module
Serial.begin(9600) // Setting the baud rate of Serial Monitor (Arduino)
delay(100)
}
void loop()
{
if (Serial.available()>0)
switch(Serial.read())
{
case 's':
Send()
break
case 'r':
Recieve()
break
case 'S':
Send()
break
case 'R':
Recieve()
break
}
if (gsm.available()>0)
Serial.write(gsm.read())
}
void Send()
{
gsm.println('AT+CMGF=1')
delay(1000)
gsm.println('AT+CMGS='+91xxxxxxxxxx'r') // Replace x with mobile number
delay(1000)
gsm.println('Hello I am GSM modem!!!')// The SMS text you want to send
delay(100)
gsm.println((char)26) // ASCII code of CTRL+Z
delay(1000)
}
void Recieve()
{
gsm.println('AT+CNMI=2,2,0,0,0') // AT Command to receive a live SMS
delay(1000)
}
//-----------------Program developed by R.Girish-------------//

Унос телефонских бројева

Унесите број телефона примаоца на „ккккккккккк“ у програм са кодом државе на почетку.

Текст који желите да пошаљете у програм унесите под наводнике: гсм.принтлн ('Здраво, ја сам ГСМ модем !!!') // СМС текст који желите да пошаљете

Саставите програм и отпремите на ардуино.

Уметните СИМ картицу и напајајте ГСМ модем спољним напајањем и притисните дугме за напајање 3 секунде (у зависности од модела), сачекајте 10 до 20 секунди да успоставите мобилну мрежу, мрежна ЛЕД лампица треба да трепће једном у 3 секунде. Ако се уради све горе наведено, спремни смо да пређемо на следећи корак.

Сада отворите серијски монитор и притисните „р“, ГСМ модем је спреман за примање СМС-а. Сада пошаљите текстуалну поруку са било ког мобилног телефона на број СИМ-а који је уметнут у ГСМ модем.
Текстуална порука би требало да искочи на серијском монитору, нешто слично илустрованом у наставку:

„Хелло ворлд“ је порука послата на ГСМ модем, а такође се приказује и број са којег се шаље текстуална порука.

Сада, пошаљите СМС на унапред унети број у програму са унапред унесеном поруком. Притисните „с“ и видећете нешто слично приказано у наставку: Послати СМС је „Здраво, ја сам ГСМ модем“.

Сада знате како да шаљете и како да примате СМС поруке користећи ГСМ модем.




Претходно: Блуетоотх склоп управљачког склопа мотора Следеће: Како дизајнирати круг индукционог грејача