PIC MCU spojen sa GSM uredjajem

Rasprava o PIC mikrokontrolerima, PIC projekti i drugo vezano za PIC-eve...

Moderators: pedja089, stojke369, [eDo], trax

l33tb1t
Posts: 9
Joined: 05-04-2008, 10:32

PIC MCU spojen sa GSM uredjajem

Post by l33tb1t »

Postovanje i lijepi pozdrav svima na ovom forumu! Pratim vas vec dulje vrijeme i imam same pohvale za vas! Kako je ovo moj prvi post, da se usput i predstavim. Ime mi je l33tb1t (stavio sam takvo ime da ne ispadnem bezveznjak pored svih ostalih cool imena ;)). Studiram elektrotehniku, smijer automatizacija, iz Hrvatske sam i vasa je stranica na mom fakultetu izrazito popularna! Dosta pohvala, idemo na pitanje ;)

Htio bih nauciti kako napraviti komunikaciju PIC mikrokontrolera sa GSM uredjajem. Odabrao sam uredjaj, skinuo njegov set AT naredbi, medjutim, nisam upucen kako ostvariti tu komunikaciju. Od programskih alata za programiranje uredjaja koristim iskljucivo MPLAB, te vas molim za bilo kakve upute i pomoc o toj tematici. Nesto sto bi generalno opisalo kako se ostvaruje sklopovlje potrebno za komunikaciju (pretpostavljam da se radi o pinovima Rx i Tx) te o kakvoj se komunikaciji radi, odnosno, kako ju isprogramirati. Ne trazim gotova rjesenja, vec samo informacije kako to funkcionira da sam pokusam to napraviti.

Unaprijed vam svima zahvaljujem na pomoci i nadam se da me necete odmah u startu otpiliti :)

Lijepi pozdrav i ugodan vikend svima!!!
User avatar
ShOkRe
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 468
Joined: 10-01-2007, 20:55
Location: Pula

Post by ShOkRe »

pa u principu dosta je o tome pisano po ovim postovima, ali ruku na srce niti ima garancije da ces naci ovaj niski dio niti se kome da sve to ponovno čitati.....
prvo nebi bilo loše da kazes koji si to gsm uredjaj odabrao da ti se moze dati informacija o tome...
imas nekoliko bitnih čimbenika oko odabira pravog (ispravnog) načina...
komunikacija se u večini svodi na rs232, razlike mogu biti samo u naponskim standardima, u biti rs232 je ujedno i naponski standardiziran (kao na pc-u) ima onaj max232 ili slični čip koji generira naponski standard i invertira signal (neznam koliko znaqs o http://en.wikipedia.org/wiki/Serial_port )
dakle verzije su :
-5V napajani pic (na hardverskom uartu (serial portu) 5V ttl neinvertirani
-3.3V napajani pic (na hardverskom uartu (serial portu) 3.3V ttl neinvertirani
(za dobiti nativni rs232c moras imati naponski inverterski cip (nprmax232))
-primjera radi TELIT862 gsm baza radi na 3.8v open kolektor neinvertirani rs232
-ako koristiš softverski emulirani serijalac na picu (hw zahtjevnije) onda mozes sw invertirati signal i primiti ga na pc-u bez ovih invertera....
dakle rezime, neki se gsm uredjaji mogu spojiti sa picem bez naponskih (ili uz minimalne) korekcija ili inverzija...
npr telefon<-> pic ili gsm baza <-> pic ovisno od korištenih komponenti ali u globalu između staviš možda samo otpornik ili po potrebi zenericu od 3.3 da se osiguraš od vlastitih grešaka i da spriječiš prenapon na skupim gsm solucijama.....

dakle moj savjet je pic usart tx pin na gsm rx pin i rx na tx preko otpora od npr 390oma i ako je telefon/baza na 3.3 a pic na 5v onda izmdju rx noge gsm-a i mase zener od 3.3, i peglaj....

dalje znaš (ili neznaš) inicijalizacija pica (da nastimas baud rate od pica i od baze da se kuze i razne flow kontrol, echo, blala parametre), zatim inicijalizacija gsm-a (sve iz pica).....

eh sad softverski dio je drugo poglavlje, pogotovo asembler, to ce ti neko drugi objasniti, ili đoraj po netu ima toga (na kraju krajeva trax ti je tu doma)
l33tb1t
Posts: 9
Joined: 05-04-2008, 10:32

Post by l33tb1t »

Lijepi pozdrav ShOkRe!
Prije svega, hvala ti na odgovoru!
Procitao sam sto si napisao, medjutim, ili cu napisati za PIC 16F84A softwaresku rutinu za USART, ili cu koristiti PIC sa implementiranim USART-om. Ovo drugo je vjerojatnije.
Nasao sam ovaj link:
http://ww1.microchip.com/downloads/en/D ... /usart.pdf
Mislim da je tu veci dio mojih odgovora, samo moram imati na umu da MPLAB ne podrzava simulaciju hardwareskog USARTA.

Ono sto me zanima sada je, gdje pronaci informacije kako se serijski vrsi komunikacija sa mobitelom? Odlucio sam se za NOKIA GSM uredjaje i nabavio sam PDF file "AT COMMAND SET FOR NOKIA GSM PRODUCTS", medjutim, misterij mi je kako to funkcionira. Mobitel uvijek ceka na svom Rx pinu da dodje podatak i cim mu ja posaljem iz MCU podatak, komunikacija pocinje (imajuci na umu postivanje AT komandi)?

Unaprijed zahvalan!
User avatar
trax
Administrator sajta
Administrator sajta
Posts: 3509
Joined: 08-01-2005, 18:04
Location: 75k, BA
Contact:

Post by trax »

Sto se tice komunikacije sa bilo kakvim uredjajem koji radi na principu AT komandi (npr GSM), stvar je slijedeca: Uredjaj ceka na neku AT komandu i onda ti salje odgovor kad odradi trazeni posao. Postoji mogucnost da sam uredjaj odnosno GSM modem tebi bez ga da pitas posalje neki podatak. Kada npr GSM zvoni, on na svom izlazu salje neki string tipa: "+RING +3876123456\r\n".

Eh sad, znaci radi se o obicnoj seriskoj komunikaciji odnosno razmjeni podataka. Podaci su najobicniji stringovi. Primjer neke AT komande je:

1. Posaljes mobitelu "ATZ" i puknes tipku ENTER, odnosno karakter 0x0D (ASCII karakter 13). Kada mu posaljes taj CR znak, on onda zna da si zavrsio sa slanjem i sad on pocinje da odradjuje zadatak. Kad zavrsi:
2. Mobitel ti vrati echo-om to isto sto si mu poslao i nakon toga potvrdu. Npr. dobijes nazad: "<CR>ATZ<CR><CR>OK<CR>". Gdje je "OK" ono sto tebi treba, ili ces dobiti "ERROR" ako nesto nije OK. Ovaj echo mozes iskljuciti AT komandom ATE0.

ATZ ce resetovati modem. Sad nastupa onaj spisak AT komandi koje si nasao i eksperimentisanje sa njima. Nokije podrzavaju TEXT-MODE za SMS poruke pa se neces morati zezati sa PDU formatom.

Moja preporuka ti je da spojis mobitel na PC, upalis hyperterminal i testiras AT komande. To ti je jedini nacin da vidis kako i sta sve GSM modem moze. Nakon toga kada budes znao sta konkretno zelis napraviti, to sve fino isplaniras i pocnes pisati program u PIC kontroler.
l33tb1t
Posts: 9
Joined: 05-04-2008, 10:32

Post by l33tb1t »

Odlicno gospodo, hvala vam obojici na pomoci. Jasno mi je gotovo sve. Sad se samo treba uhvatiti knjige i napraviti nesto korisno.

Stvarno vam hvala na trudu da mi pomognete, napredak cu, ako nemate nista protiv, postati ovdje na ovaj forum, mozda nekome u blizoj buducnosti bude od koristi!

Lijepi pozdrav!
fighter
Pocetnik na forumu
Pocetnik na forumu
Posts: 28
Joined: 04-01-2007, 19:19

Post by fighter »

Moja preporuka ti je da spojis mobitel na PC, upalis hyperterminal i testiras AT komande. To ti je jedini nacin da vidis kako i sta sve GSM modem moze. Nakon toga kada budes znao sta konkretno zelis napraviti, to sve fino isplaniras i pocnes pisati program u PIC kontroler.[/quote]



Cekaj malo...
Ak samo spojim mob na pc prek kabla za serijsku komunikaciju mogu poslati AT komandu u mob??
Netreba izmedju nikakav max3232 ili nekakav medusklop???

To moram isprobati...
Stvarno mi nije palo na pamet nesto takvo...

Hvala na ideji :idea:
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Post by pedja089 »

naravno da ti treba naponski konverter. na mobu je 3.3V, a na com poru je +/-10
fighter
Pocetnik na forumu
Pocetnik na forumu
Posts: 28
Joined: 04-01-2007, 19:19

Post by fighter »

ok, probat cu....

Znaci s maxom bi trebalo biti ok???
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Post by pedja089 »

i zenericom od 3,3V na rx-u od moba
User avatar
ShOkRe
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 468
Joined: 10-01-2007, 20:55
Location: Pula

Post by ShOkRe »

maxa mozes napajati sa 3.3v pa ti netreba zener, imas i semu (guglaj) sa 2 tranzistora sve strpas u dbd9 plastiku, ili na kraju mozes koristiti i obican 7804 ili slični inverter, (fuseraj ali za experimente ako nemas max radi) ali dodaj zener jer inverter ako radi na 5v pc ima 90% sanse da ga kuzi ako na 3.3 ima 20%....
User avatar
ShOkRe
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 468
Joined: 10-01-2007, 20:55
Location: Pula

Post by ShOkRe »

http://picevi.googlepages.com

BAS OVIH DANA POKUSAVAM POKRENUTI I NEKU SVOJU MALO PASIVNU EKIPU U OVE VODE PA VIDI MOZDA NADJES STO INTERESANTNO

http://picevi.googlepages.com
User avatar
_anima
Pocetnik na forumu
Pocetnik na forumu
Posts: 27
Joined: 17-02-2009, 23:02
Location: Sarajevo, BIH

Re: PIC MCU spojen sa GSM uredjajem

Post by _anima »

Ovako....
Prvo moram reci da ste svi super.....

Treba mi neko sa iskustvom, oko vezivanja mikrokontroler (u mom slucaju PIC16F877A) i mobitela (Siemens C45). Imam projekat na fakultetu koji ne mogu nikako zavrsiti :)
Da li je neko slao SMS iz hiperterminala, kako sklopiti ispravan PDU i da uspije. Treba mi informacija kako se inace sklapa PDU da bih mogla slati izvjestaj o odredjenoj akciji (kao povratna informacija, npr OK ili ERROR)
Unaprijed zahvaljujem...
"Ljubav ženama daje duha, a muškarcima ga oduzima."
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7877
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: PIC MCU spojen sa GSM uredjajem

Post by pedja089 »

zasto ne probas sa nekim modemom koji podrzava text mode. ja imam siemens tc35i i nije nikakav problem ni priomiti ni poslati poruku...
posle poslane porukr treba da ti vrati "OK".
na kojem si fakultetu?
User avatar
_anima
Pocetnik na forumu
Pocetnik na forumu
Posts: 27
Joined: 17-02-2009, 23:02
Location: Sarajevo, BIH

Re: PIC MCU spojen sa GSM uredjajem

Post by _anima »

Na Elektrotehnickom...

Imamo jos i problem sto nam mobitel ne registrira naredbe od mikrokontrolera, profesor nam je provjerio da li smo dobro inicijalizirali serijsku komunikaciju, dobro su nam spojeni svi pinovi, medjutim kao prof govori da na izlazu sa max 232 nemamo dovoljan napon da bi mobitel mogao to prepoznati jer smo mu slali AT i ocekivali OK, medjutim ni traga ni glasa... :)
Napon je oko 3.2V i to kao mob ne moze prepoznati, a u komunikaciji sa racunarom kao veci su naponi...
Isto smo probali zvati mob i on treba da na serijsku komunikaciju salje RING, pa smo pokusali iscitati, al nije islo, salje nesto, ali to nije RING jer smo pokusali upisati to na Eprom, i bilo je skup nekih nedefinisanih znakova. Takodjer kada smo pisali profesora, rekao je da mozda Eprom ne moze tako brzo da biljezi...

Mozda samo bila konfuzna ali eto bilo kakav odgovor ce nas utjesiti...

Hvala...
"Ljubav ženama daje duha, a muškarcima ga oduzima."
User avatar
trax
Administrator sajta
Administrator sajta
Posts: 3509
Joined: 08-01-2005, 18:04
Location: 75k, BA
Contact:

Re: PIC MCU spojen sa GSM uredjajem

Post by trax »

Problem sto dobijas neke blesave znakove je zato sto brzina porta nije tacna. Siemens obicno koristi brzinu porta 19200bps, a vi ste vjerovatno izabrali neku drugu.
User avatar
_anima
Pocetnik na forumu
Pocetnik na forumu
Posts: 27
Joined: 17-02-2009, 23:02
Location: Sarajevo, BIH

Re: PIC MCU spojen sa GSM uredjajem

Post by _anima »

podesili smo 19200 prema koeficijenitima koji su dati u data sheet-u naseg mikrokontrolera za dati kvarc, koristili smo kvarc od 10 MHz.
To nam je profesor provjerio, ona kaze da je problem u naponima na izlazu sa rs232, kolike napone trebamo ocekivati na izlazi RS232?
"Ljubav ženama daje duha, a muškarcima ga oduzima."
User avatar
trax
Administrator sajta
Administrator sajta
Posts: 3509
Joined: 08-01-2005, 18:04
Location: 75k, BA
Contact:

Re: PIC MCU spojen sa GSM uredjajem

Post by trax »

Ovako, da bi spojili PIC na GSM, ne trebaju vam naponski nivoi RS232 kao sto mozes procitati ovdje: http://en.wikipedia.org/wiki/RS-232#Voltage_levels" onclick="window.open(this.href);return false;

Vama trebaju TTL naponski nivoi, a to su oni koje imate na PIC kontroleru, tako da je sve super. Eh sad, pogledaj ovu shemu:
GSM_to_PIC.gif
GSM to PIC
(11.33 KiB) Downloaded 96 times
Bez ovog zaokruzenog dijela takodje ces imati pogresno primljene podatke sa mobitela.
Bez ovog dijela sa zener diodom, mobitel ce gubiti mrezu prilikom slanja UART podataka ka mobitelu iz PIC-a, zbor prenapona. Da, mobitel ocekuje nekih 3.3 - 3.6V, i na svom TX izlazu daje isto toliko. Zato nam treba ono "pojacalo" koje je zaokruzeno.

GSM Tx, GSM Rx, i GSM GND spajas obicnim zicama na konektor od mobitela, znaci zaboravi na MAX232. On ti cak moze spaliti GSM telefon. On se koristi samo pri spajanju na GSM modeme, kao npr Siemens TC35 ili 45, ne sjecam se vise oznake...

I da, reci profesoru da nema pojma pogotovo sto vam je dopustio da spajate mobitel sa pic-em preko MAX232.
User avatar
_anima
Pocetnik na forumu
Pocetnik na forumu
Posts: 27
Joined: 17-02-2009, 23:02
Location: Sarajevo, BIH

Re: PIC MCU spojen sa GSM uredjajem

Post by _anima »

Puno hvala!!!
Mi smo predlagali profesoru da odmah na tx, rx kacimo sa mobitela, doduse ne preko ovih tranzistora i zenerice al ipak imali smo dobru ideju zbog ttl napona koje daje mob, rekao je da ne radimo to, ali sada imamo i argumente. Hvala punoooo...
Evo sada cemo probati ovako spojiti :)
"Ljubav ženama daje duha, a muškarcima ga oduzima."
User avatar
Feko
Stariji član
Stariji član
Posts: 4394
Joined: 23-07-2008, 06:18
Location: Hrvatska, Slavonija, Selo moje malo...

Re: PIC MCU spojen sa GSM uredjajem

Post by Feko »

trax wrote: I da, reci profesoru da nema pojma pogotovo sto vam je dopustio da spajate mobitel sa pic-em preko MAX232.
Ajd budi hrabar pa to reci profesoru što je rekao trax :lol: :lol:
User avatar
grunf
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 286
Joined: 19-04-2008, 14:22
Location: Cvjećara

Re: PIC MCU spojen sa GSM uredjajem

Post by grunf »

pozdrav

imama par pitanja, mozda ce se to bolje vidjeti sa prilozene sheme, naime interesuje me da li je i u ovom slucaju potrebno ubaciti pojacalo u tx liniju, kao sto je trax u nekom od postova rekao...i da li su nam potreben isti otpori R1 i R2, ili mozemo ostaviti ovako kako je nacrtano sa otporom od 1 k (tako je na originalnoj shemi sa http://www.atrox.at" onclick="window.open(this.href);return false;) i zenerkomod 2,7 volti??? hvala unaprijed!!!
Post Reply