Circuits4you.com

gsm-modemet, telefoner, gir en lavpris, lang rekkevidde, trådløs kommunikasjonskanal for innebygde, mikrokontrollerbaserte applikasjoner som trenger tilkobling i stedet for høye datahastigheter. Maskiner som industrielle kjøleskap, frysere, HVAC, overvåking og salgsautomater, kjøretøy service, varslingssystem, sikkerhetssystem, fjernkontroll etc. kan ha nytte av å være koblet til ET GSM-modem.

denne veiledningen beskriver hvordan du bruker EN AVR til å styre ET gsm-modem ved hjelp av at-kommandoer. Grensesnittet mellom modem og vert er en tekstlig protokoll kalt At-Kommandoer. Disse kommandoene aktivere GSM modem oppsett, oppringing, tekstmeldinger etc. Denne spesielle applikasjonen kobler en Avr ATmega8 OG SIM300, SIM900-modul ved hjelp AV EN RS232-tilkobling. DE FLESTE GSM-modemer har samme at-kommandoer.

Innhold

* Poeng å vurdere når du velger GSM-modem
* Grensesnitt TIL GSM-modemer•
* Implementering av At-Command-sett.
* PDU streng komprimering og dekompresjon.
• SMS-overføring, hvordan du sender og mottar.

Typer GSM-Modemer

det er mange GSM-modemer er tilgjengelige I markedet Simcom SIM300, SIM900 OG Quectel M10. lar gjennomgang på funksjonene

Poeng å vurdere når du velger GSM Modem

det er MAI GSM modemer tilgjengelig i markedet DISSE ER SIM300, SIM900 OG SIM900A, Quectel M10 er mye pålitelig og litt kostbart. SIM300 er eldre modem nå blir det absolutt.

  1. Krav Til Strømforsyning
  2. Tilgjengelig grensesnitt UART (TTL) eller RS232
  3. Størrelse
  4. Pris
  5. lydgrensesnitt (MIKROFON / SPK)

Strømforsyning Krav

De FLESTE gsm-modem krever 4.2 V å operere, og de er kompatible MED 5V og 3.3 v noen modemer er også tilgjengelig i 3.3 V. avhengig av microcontroller kravet velge riktig modem. GSM-modem krever mer strøm mens du sender SMS, ringer og under registrering på nettverket. Husk alltid bruk 2 Amp Strømforsyning. De fleste nye mennesker gjør feil i å velge riktig strømforsyning dette vil føre til problem eller modem reset mens du sender SMS.

Tilgjengelig grensesnitt UART (TTL) eller RS232

Som vi bruker Avr ATmega8, foretrekker VI TTL UART-Grensesnitt. De FLESTE Gsm-Modem har RS232 Og UART (TTL) Grensesnitt.

Få GSM-Modem kommer OGSÅ MED USB-Grensesnitt når DU kobler GSM-Modem TIL PC-BRUK USB-Grensesnitt. Det eliminerer BEHOVET FOR USB til seriell omformer og få modemer ER USB-drevet, så det er ikke behov for ekstern strømforsyning.

Størrelse, Pris

Størrelse og pris på hvert modem varierer basert på produsentens bruk av eksterne komponenter.

Audio Interface (MIC/SPK)

Audio interface er nødvendig hvis du bruker GSM-Modem til å ringe eller til grensesnitt MED DTMF dekoder for Å lage IVRS system.

GSM Modem Grensesnitt

før vi kobler Ut ATmega8 MED GSM modem kan ta en titt på ulike GSM-Modemer. Disse ALLE GSM-modem har gprs evne det er ikke behov for separat gprs modem.

Som du ser i Dette Quectel M10 GSM-modemet, har Vi ikke tilgang til ttl (Rx, Tx) – tilkobling vi trenger RS232 Nivåomformer konstruert VED HJELP AV MAX232.

Quectel M10
Quectel M10

SIM300 er absolutt vi kan ikke få dette i markedet. Den bruker lm317 lineær regulator for å gjøre strømforsyningen, det er bedre Å ha DC-DC-omformer eller bryteregulator for best resultat.

SIM300 Modem
SIM300 Modem

Vi skal bruke DETTE gsm-modemet. Det har TTL Rx, Tx-Utgang . Grensesnitt AV GSM-Modem med mikrokontroller er bare å koble disse Rx, Tx linjer Med Mikrokontrollere UART.

SIM900A GSM-modem
SIM900A GSM-modem

Gsm-Modemtilkoblinger Med ATmega8

Gsm-Modemgrensesnitt
Gsm-Modemgrensesnitt

At-Kommandoer

protokollen som brukes av gsm-modemer FOR OPPSETT OG KONTROLL, er basert på at-kommandosettet. Gsm-modem spesifikke kommandoer er tilpasset tjenestene som tilbys AV ET GSM-modem som: tekstmeldinger, ringe et Gitt Telefonnummer, slette minnesteder etc. Siden hovedmålet for denne opplæringen er å vise hvordan du sender og mottar tekstmeldinger, må bare en delmengde AV At-Command-settet implementeres. European Telecommunication Standard Institute (Etsi) GSM 07.05 definerer At-Command-grensesnittet for GSM-kompatible modemer. I denne opplæringen noen utvalgte kommandoer er valgt, og presenteres kort i denne delen. Denne kommandoen delsett vil gjøre det mulig for modemet å sende OG motta SMS-meldinger.

kommandoene kan prøves ut ved å koble ET GSM-modem til EN AV PCENS COM-porter. Bruk hyper terminal Eller Seriell Terminal Programvare for å gi at-kommandoer TIL GSM-Modem.

Kommando Beskrivelse
Sjekk om serielt grensesnitt og GSM-modem fungerer.
ATE0 Slå av ekko, mindre trafikk på seriell linje.
PÅ + CMTI Visning av ny innkommende SMS.
AT + CPMS Valg AV SMS-minne.
PÅ + CMGF SMS strengformat, hvordan de komprimeres.
På + CMGR Les ny melding fra en gitt minneplassering.
AT + CMGS Send melding til en gitt mottaker.
På + CMGD Slett melding.

Status (AT)

kommandoen «AT» er en statusforespørsel som brukes til å teste om et kompatibelt modem er tilkoblet og at det serielle grensesnittet fungerer som det skal.

Kommando: «AT»
Svar:»OK»
Tilkoblet og arbeider
Svar: «FEIL»
SERIELL linje OK modemfeil

Ekko av (ATE0)

KOMMANDOEN» ATE0 » brukes til å konfigurere kommunikasjonen. SOM standard er GSM-modemer satt til å ekko alle mottatte kommandoer tilbake med en bekreftelse.

med echo off, «ATE0″, ville modemet ha svart» OK «når det ble utført»AT». Echo off-kommandoen vil redusere trafikken på seriell linje. KOMMANDOEN» ATE1 » vil aktivere ekko igjen.

ATE0

hold alltid ekko av «ATE0» for å forenkle seriell kommunikasjon med kontrolleren.

AT+CMGF Velg SMS-Meldingsformat

kommandoen «AT + CMGF» brukes til å angi inngangs-og utdataformat FOR SMS-meldinger. To moduser er tilgjengelige:

• Tekstmodus: lesing OG sending AV SMS gjøres i ren tekst.

Sett alltid Den Til Tekstmodus for enkelhet

VED+CMGF=1

0 ER PDU-modus, 1 er tekstmodus.

Les Melding (AT+CMGR)

kommandoen» AT+CMGR » brukes til å lese en melding fra en gitt minneplassering. Utførelse av «AT + CMGR» returnerer en melding på fra valgt minne .

for eksempel lesing fra plassering 1

AT+CMGR=1

Skriv Melding til minne (AT + CMGW)

denne kommandoen lar brukeren sende SMS-meldinger.

AT+CMGW=1 //Skriver melding til plassering 1

Send SMS-Melding Fra Lagring (AT+CMSS)

Sender lagret sms.

AT+CMSS=1 //Send SMS fra sted 1

Sms Sending ved Hjelp Av Avr Microcontroller Code

i din hoved() subrutine initialiser seriell og ring sendSMS() for å sende SMS

void sendSMS(){ senddata("AT+CMGD=1"); USART_Transmit(13); USART_Transmit(10); delay_ms(1000); senddata("AT+CMGF=1"); USART_Transmit(13); USART_Transmit(10); delay_ms(1000); senddata("AT+CMGW="); USART_Transmit(34); senddata("+919812345678"); //Enter Your Mobile number USART_Transmit(34); USART_Transmit(13); USART_Transmit(10); delay_ms(1000); senddata("Alert: Fire Detected"); USART_Transmit(13); USART_Transmit(10); delay_ms(1000); USART_Transmit(26); //Cntrl+Z delay_ms(1000); delay_ms(1000); senddata("AT+CMSS=1"); USART_Transmit(13); USART_Transmit(10); delay_ms(1000);}void delay_ms(unsigned int de){unsigned int rr,rr1; for (rr=0;rr<de;rr++) { for(rr1=0;rr1<30;rr1++) //395 { asm("nop"); } }}void USART_Transmit(char data ){ UDR = data; /* Wait for empty transmit buffer */ while ( !( UCSRA & (1<<UDRE)) ) ; /* Put data into buffer, sends the data */}void senddata(char string){ int len,count; len = strlen(string); for (count=0;count<len;count++) { USART_Transmit(string); }}void USART_Init(){/* Set baud rate */ UBRRH = 0x00; //12, 9600 Baud At 1MHz UBRRL =12; //Set double speed enabled UCSRA |= (1<<U2X);/* Enable receiver and transmitter */ UCSRB = (1<<RXEN)|(1<<TXEN);/* Set frame format: 8data, 2stop bit */ UCSRC = (1<<URSEL)|(1<<USBS)|(3<<UCSZ0);//Set interrupt on RX// UCSRB |= (1<<RXCIE);}

Sende SMS ved Hjelp Av Arduino

void setup() { Serial.begin(9600);}void loop() { sendSMS(); //Send SMS delay(5000); //Wait for few seconds}void sendSMS(){ Serial.println("AT+CMGD=1"); //Delete privious sent SMS delay(1000); Serial.println("AT+CMGF=1"); //Set SMS configuration delay(1000); Serial.print("AT+CMGW="); //Write New SMS Serial.write(34); //Double quotes ASCII Code Serial.print("+9198--------"); //Enter Your Mobile number Serial.write(34); Serial.println(); //Send Crrige return delay(1000); Serial.println("Your message here"); //SMS Message to be sent delay(1000); Serial.write(26); //Cntrl+Z character code delay(1000); delay(1000); Serial.println("AT+CMSS=1"); //Send SMS from memory location 1 delay(4000);}

nå er DET klart at nå kan vi sende sms med arduino OG AVR MICROCONTROLLER Med Enkelt SERIELT grensesnitt med gsm-modem.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.