GSM మోడెమ్ ఉపయోగించి SMS పంపడం మరియు స్వీకరించడం ఎలా

సమస్యలను తొలగించడానికి మా పరికరాన్ని ప్రయత్నించండి





ఈ వ్యాసంలో మనం నేర్చుకోబోతున్నాం, ఆర్డునో చేత నియంత్రించబడే GSM మోడెమ్ ఉపయోగించి SMS ఎలా పంపాలి మరియు స్వీకరించాలి. GSM మోడెమ్ అంటే ఏమిటి, దానిని ఆర్డునోతో ఎలా ఇంటర్ఫేస్ చేయాలి, సెటప్‌తో SMS ఎలా పంపాలో చూద్దాం.

మానవుడు వచన సందేశాన్ని పంపడం మినహా GSM మోడెమ్‌తో మనం సాధించగల అన్ని అనువర్తనాలు ఏమిటో కూడా అన్వేషించబోతున్నాం.



GSM మోడెమ్ అంటే ఏమిటి?

GSM అంటే మొబైల్ కమ్యూనికేషన్స్ కోసం గ్లోబల్ సిస్టమ్, ఇది 2G కమ్యూనికేషన్ కోసం ప్రోటోకాల్‌లను వివరించిన ETSI (యూరోపియన్ టెలికమ్యూనికేషన్స్ స్టాండర్డ్ ఇన్స్టిట్యూట్) చే అభివృద్ధి చేయబడిన ప్రమాణం.

ఇది మొబైల్ కమ్యూనికేషన్ కోసం మొదటి డిజిటల్ ప్రోటోకాల్, ఇది పూర్తి డ్యూప్లెక్స్ వాయిస్ కమ్యూనికేషన్ కోసం ఆప్టిమైజ్ చేయబడింది. క్లుప్తంగా పూర్తి డ్యూప్లెక్స్ కమ్యూనికేషన్ అంటే రెండు పార్టీలు ఒకేసారి డేటాను (లేదా వాయిస్) పంపవచ్చు / స్వీకరించవచ్చు.



GSM ప్రోటోకాల్ GPRS మరియు EDGE వంటి ప్యాకెట్ డేటాను బదిలీ చేయడానికి కూడా అనుమతిస్తుంది.

SIM800 GSM మోడెమ్:

GSM మోడెమ్ అనేది చెల్లుబాటు అయ్యే సిమ్ కార్డు (చందాదారుల గుర్తింపు మాడ్యూల్) ను అంగీకరించే హార్డ్‌వేర్, ప్రాథమికంగా ఏదైనా సిమ్ పని చేస్తుంది, ఇది GSM ప్రోటోకాల్‌కు మద్దతు ఇస్తుంది మరియు నెట్‌వర్క్ చందాతో ఉంటుంది.

ఇది స్క్రీన్ మరియు కీప్యాడ్ లేని మొబైల్ ఫోన్ లాంటిది. మీరు ఎంచుకున్న మోడల్‌ను బట్టి దీనికి నాలుగు I / O పిన్‌లు ఉంటాయి.

TX మరియు RX కోసం రెండు (ప్రసారం మరియు స్వీకరించడం), VCC మరియు GND లకు మరో రెండు పిన్స్, ఇది అన్నింటికీ సాధారణం.

ఇది మోడెమ్ మరియు కంప్యూటర్ మధ్య సీరియల్ కమ్యూనికేషన్ కోసం RS232 పోర్ట్‌ను కలిగి ఉంటుంది, అయితే మేము ఈ ప్రాజెక్ట్‌లో ఉపయోగించబోవడం లేదు.

ఇది ప్రామాణిక DC పవర్ జాక్ కలిగి ఉంది, ఇది వోల్టేజ్ ఎడాప్టర్లు వంటి బాహ్య విద్యుత్ వనరుల నుండి శక్తినిస్తుంది.

ఇది మోడల్‌ను బట్టి DC జాక్‌లో 5 నుండి 12V వరకు పనిచేసే వోల్టేజ్‌ను కలిగి ఉంటుంది. ఇది శక్తి, స్థితి మరియు నెట్‌వర్క్ కోసం 3 LED సూచికలను కలిగి ఉంది.

శక్తి LED శక్తి ఉనికిని సూచిస్తుంది, స్థితి LED GSM మోడెమ్ పనిచేస్తుందో లేదో సూచిస్తుంది, నెట్‌వర్క్ LED మొబైల్ నెట్‌వర్క్ స్థాపనను సూచిస్తుంది.

నెట్‌వర్క్ కోసం శోధిస్తున్నప్పుడు ప్రారంభంలో నెట్‌వర్క్ ఎల్‌ఈడీ ప్రతి సెకను మెరిసిపోతుంది, ఇది మొబైల్ నెట్‌వర్క్‌ను స్థాపించిన తర్వాత ప్రతి 3 సెకన్లకు మెరిసిపోతుంది.

GSM మోడెమ్‌ను సక్రియం చేయడానికి మీరు 2 నుండి 3 సెకన్ల పాటు పవర్ బటన్‌ను నొక్కాలి, మీరు పూర్తి చేసిన తర్వాత, అది మొబైల్ నెట్‌వర్క్‌కు తాళాలు వేస్తుంది.

మీ GSM మోడెమ్ పనిచేస్తుందని ధృవీకరించడానికి, మీరు సిమ్ కార్డును చొప్పించిన సంఖ్యకు కాల్ చేయండి. మీరు రింగ్ బ్యాక్ టోన్ పొందాలి. అది జరిగితే, మీ మాడ్యూల్ బాగా పనిచేస్తుంది.

మేము క్వాడ్-బ్యాండ్ 850/900/1800/1900 MHz కు మద్దతిచ్చే SIM800 GSM మోడెమ్‌ను ఉపయోగించబోతున్నాము. మీరు SIM900 మోడెమ్ కలిగి ఉంటే, ఆందోళన చెందాల్సిన అవసరం లేదు, ఈ ప్రాజెక్ట్‌లో ప్రోగ్రామ్ మరియు సర్క్యూట్ అనుకూలంగా ఉంటాయి.

ఇప్పుడు, మీరు GSM మోడెమ్ గురించి కొంత ఆలోచన సంపాదించి ఉంటారు, ఇప్పుడు దాన్ని arduino తో ఎలా ఇంటర్ఫేస్ చేయాలో నేర్చుకుందాం.

సర్క్యూట్ రేఖాచిత్రం:

మీరు రేఖాచిత్రాన్ని రూపొందించవచ్చు కాబట్టి, సర్క్యూట్ కనెక్షన్ సులభంగా చనిపోతుంది. మీకు కేవలం 3 మగ నుండి ఆడ హెడర్ పిన్స్ అవసరం. ఈ ప్రాజెక్ట్‌లో యుఎస్‌బి కేబుల్ తప్పనిసరి, ఎందుకంటే మేము సీరియల్ మానిటర్ ద్వారా కమ్యూనికేట్ చేయబోతున్నాం.

ఎల్లప్పుడూ, బాహ్య అడాప్టర్‌తో GSM మోడెమ్‌కు శక్తినివ్వండి. ఆర్డునో నుండి వచ్చే శక్తి జిఎస్ఎమ్ మోడెమ్‌కు సరిపోదు, ఇది ఆర్డునో యొక్క వోల్టేజ్ రెగ్యులేటర్‌ను కూడా ఓవర్‌లోడ్ చేస్తుంది.

హార్డ్‌వేర్ భాగం గురించి అంతే. ఇప్పుడు, కోడింగ్‌కు వెళ్దాం.

కార్యక్రమం:

//-------------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 డిజిటల్ ఫోన్ నంబర్‌తో x ని మార్చండి. మీ సిమ్ కార్డులో పని చేసే SMS ప్లాన్ ఉందని నిర్ధారించుకోండి.

మీరు భారతదేశం నుండి కాకపోతే, దయచేసి ప్రోగ్రామ్‌లో కంట్రీ కోడ్‌ను మార్చండి.

ఉదాహరణకి:

UK కోసం: +44
యుఎస్ కోసం: +1
కెనడా కోసం: +1
రష్యా కోసం: +7

ఆర్డునోను తగిన విధంగా కోడింగ్ చేయడం ద్వారా GSM మోడెమ్ పంపిన సందేశాన్ని కూడా మీరు ఆటోమేట్ చేయవచ్చు. మీరు మీ ఫోన్‌లో ఆటోమేటెడ్ మెసేజ్ హెచ్చరికలను స్వీకరించవచ్చు: యాంటీ-థెఫ్ట్ హెచ్చరిక, ఫైర్ అలారం హెచ్చరిక, మీ స్థానిక ప్రాంతంలో వాతావరణ హెచ్చరిక మొదలైనవి.

మీరు GSM మోడెంలో GPRS తో ఇంటర్నెట్‌కు కూడా కనెక్ట్ కావచ్చు, కానీ ఇది మరొక కథనానికి సంబంధించినది.

రాబోయే వ్యాసాలలో ఒకదానిలో మనం నేర్చుకుంటాము GSM మోడెమ్ మరియు ఆర్డునో ఉపయోగించి SMS ఎలా స్వీకరించాలి

GSM మోడెమ్ ఉపయోగించి SMS ఎలా పంపించాలో మీకు మరిన్ని ప్రశ్నలు ఉంటే, వ్యాఖ్య విభాగంలో సంకోచించకండి.

GSM మోడెమ్ ఉపయోగించి SMS ఎలా స్వీకరించాలి

పై చర్చలో మేము GSM మోడెమ్ ఉపయోగించి వచన సందేశాన్ని ఎలా పంపించాలో నేర్చుకున్నాము మరియు GSM మోడెమ్ యొక్క ప్రాథమిక విషయాలను కూడా చర్చించాము.

ఈ విభాగంలో మేము ఆర్డునో IDE యొక్క సీరియల్ మానిటర్ ద్వారా SMS ను ఎలా స్వీకరించాలో చర్చించాము. మేము SMS ను స్వీకరించడమే కాదు, వేర్వేరు కీలను నొక్కడం ద్వారా వచన సందేశాన్ని కూడా పంపుతాము. తక్షణం, “s” నొక్కడం వల్ల ప్రీ-ఎంటర్ టెక్స్ట్ సందేశం పంపుతుంది, “r” నొక్కడం వల్ల రియల్ టైమ్ SMS అందుతుంది.

రచయిత యొక్క నమూనా ఇక్కడ ఉంది:

అది ఎలా పని చేస్తుంది

GSM మోడెన్ ఉపయోగించి SMS స్వీకరించడానికి సర్క్యూట్ చాలా సులభం, మీకు కేవలం 3 మగ నుండి ఆడ హెడర్ పిన్స్ అవసరం. GSM మోడెమ్ యొక్క TX ఆర్డునో యొక్క పిన్ # 9 కి అనుసంధానించబడి ఉంది మరియు GSM మోడెమ్ యొక్క RX పిన్ # 8 ఆర్డునోతో అనుసంధానించబడి ఉంది మరియు GSM మరియు arduino మధ్య గ్రౌండ్ టు గ్రౌండ్ కనెక్షన్ కూడా ఇవ్వబడుతుంది.

GSM మోడెమ్ కోసం ఎల్లప్పుడూ బాహ్య విద్యుత్ సరఫరాను ఉపయోగించుకోండి, ఆర్డునో యొక్క వోల్టేజ్ రెగ్యులేటర్‌ను ఓవర్‌లోడ్ చేయడానికి మంచి అవకాశం ఉన్నందున, 5Vcc ని ఆర్డునో నుండి GSM మోడెమ్‌కి కనెక్ట్ చేయవద్దు.

మీ SMS ఖర్చులను తగ్గించడం కోసం SMS రేటు కట్టర్ లేదా మీ SMS సభ్యత్వంలో ఇలాంటి వాటిని అమలు చేయడం మర్చిపోవద్దు.

సిమ్ కార్డ్ GSM మోడెమ్‌లో ఉన్నందున, పంపిన ప్రతి SMS తర్వాత మీ సెల్యులార్ ప్రొవైడర్ నుండి ఎటువంటి అంగీకారం ఉండదు కాబట్టి, మీరు అనేక SMS పంపిన తర్వాత ఖాళీ ఖాతా బ్యాలెన్స్‌ను ముగుస్తుంది.

మీ ఖాళీ ఖాతాకు సంబంధించి SMS ను హెచ్చరించడం మీకు లభించే ఏకైక రసీదు, కాబట్టి మీ ఖర్చుల విషయంలో జాగ్రత్తగా ఉండండి. ఇప్పుడు ఈ ప్రాజెక్ట్ యొక్క భాగాన్ని కోడింగ్ చేద్దాం.

కార్యక్రమం:

//-----------------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-------------//

ఫోన్ నంబర్లను నమోదు చేస్తోంది

ప్రారంభంలో మీ దేశ కోడ్‌తో ప్రోగ్రామ్‌లోని “xxxxxxxxxx” లో గ్రహీత ఫోన్ నంబర్‌ను నమోదు చేయండి.

కొటేషన్ గుర్తులో మీరు ప్రోగ్రామ్‌లో పంపించాలనుకుంటున్న వచనాన్ని నమోదు చేయండి: gsm.println ('హలో నేను GSM మోడెమ్ !!!') // మీరు పంపాలనుకుంటున్న SMS టెక్స్ట్

ప్రోగ్రామ్‌ను కంపైల్ చేసి arduino కి అప్‌లోడ్ చేయండి.

సిమ్ కార్డును చొప్పించి, GSM మోడెమ్‌కు బాహ్య విద్యుత్ సరఫరాతో శక్తినివ్వండి మరియు 3 సెకన్ల పాటు పవర్ బటన్‌ను నొక్కండి (మోడల్‌ను బట్టి), మొబైల్ నెట్‌వర్క్‌ను స్థాపించడానికి 10 నుండి 20 సెకన్ల వరకు వేచి ఉండండి, నెట్‌వర్క్ LED ప్రతి 3 సెకన్లకు ఒకసారి మెరిసి ఉండాలి. ప్రతిదీ పైన పేర్కొన్నట్లయితే, మేము తదుపరి దశకు వెళ్ళడానికి సిద్ధంగా ఉన్నాము.

ఇప్పుడు సీరియల్ మానిటర్ తెరిచి “r” నొక్కండి GSM మోడెమ్ SMS స్వీకరించడానికి సిద్ధంగా ఉంది. ఇప్పుడు ఏదైనా మొబైల్ ఫోన్ నుండి GSM మోడెమ్‌లో చేర్చబడిన సిమ్ సంఖ్యకు వచన సందేశాన్ని పంపండి.
వచన సందేశం సీరియల్ మానిటర్‌లో పాపప్ అవ్వాలి, ఇది క్రింద వివరించిన మాదిరిగానే ఉంటుంది:

“హలో వరల్డ్” అనేది GSM మోడెమ్‌కు పంపిన సందేశం మరియు టెక్స్ట్ సందేశం పంపిన సంఖ్య కూడా ప్రదర్శించబడుతుంది.

ఇప్పుడు, ముందుగా నమోదు చేసిన సందేశంతో ప్రోగ్రామ్‌లో ముందుగా నమోదు చేసిన నంబర్‌కు SMS పంపండి. “S” నొక్కండి మరియు మీరు క్రింద వివరించిన ఇలాంటిదే చూస్తారు: పంపిన SMS “హలో నేను GSM మోడెమ్”.

ఇప్పుడు, GSM మోడెమ్ ఉపయోగించి SMS ఎలా పంపాలో మరియు ఎలా స్వీకరించాలో మీకు తెలుసు.




మునుపటి: బ్లూటూత్ మోటార్ కంట్రోలర్ సర్క్యూట్ తర్వాత: ఇండక్షన్ హీటర్ సర్క్యూట్‌ను ఎలా డిజైన్ చేయాలి