avatar_ete

PIC Basic Ders-14 (RF haberleşme)

Başlatan ete, 28 Ağustos 2011, 16:27:17

ete

Bu dersimizde RF haberleşmenin esaslarını öğrenmeye çalışacağız. Bu konuda piyasada bulunan malzemeleride esas alarak bazı çalışamalr yapacağız.

Önce RF haberleşmenin ne olduğunu açıklayalım. İki ünite arasında kablosuz olarak bilgi alış verişine RF haberleşme diyoruz. En basitinden tarifi bu şekildedir. Ancak Infrared yolu ile yapılanda bir kablosuz haberleşmedir. Bu nedenle RF sistemi  (Radyo-Frekans) yüksek frekanslı radyo dalgaları kullanılarak yapılan haberleşme şeklidir dersek daha doğru olacaktır.

İhtiyaca göre bu sistemler çeşitlik gösterirler. En basitinden bir verici üzerinde yer alan iki buton ile iki rölenin kontrolünden tutunda karşılıklı otomatik haberleşen ve bir Master Slave ilişikisi içinde yer alan sistemlere kadar hepsi RF sistemleri kapsar.

Genelde kullanılan haberleşme frekansları 300-315 Mhz , 433-434 Mhz,  815 MHz , 2,4 GHz gibi frekans bantalrında çalışılmaktadır. Bizim inceleyeceğimiz sistemler genelde 433-434 Mhz de çalışan sistemler oalcaktır.  Genelleme yapmak gerekirse 433 Mhz lik sistemler ile çalışacağız.

Bilinen bir çok yolu olmasına rağmen biz bu derste en çok kullanılan metodları inceleyeceğiz.
Metoda Ya da ihtiaç duyulan sisteme göre verici ve alıcı şekli değişebilmektedir.

Öncelikle en basit sistemi nceleyeceğiz.
Elimizde 4 butonlu bir elcik (433 Mhz lik RF vericisi) olduğunu varsayalım ve bu verici ile 4 adet röleyi RF yolu ile çalıştırma üzerinde çalışalım............. (devamı PDF dosyasında)

Not: Dosya içeriği değişmişti. 25-11-2013 tarihinden önce yükleyenler yeniden yüklesinler. Değişiklik RS485 devresinde master ve slave programlarında yapılmıştır.
Ete

menduh

ETE hocam öncelikle böylesine güzel bir bilgi paylaşım platformundan dolayı teşekkür ederim,paylaşımlarınız çok güzel PBP ilede zaten sizin dersleriniz sayesinde tanıştım.
problemim şu 14. derste paylaşmış olduğunuz dökümandaki similasyonu bir türlü çalıştıramadım master devredeki tx pinini slave devredeki rx e master devreki rx pininide slave devrenin tx pinine doğrudan bağladım ve slave devrelerden 2.sinide tamamen iptal ettim. lcd ekranda "lütfen bekleyiniz" kısaca yazıyor ve siliniyor ondan sonrada başka bişey çıkmıyor,bu arada master ve slave pic'lerini 4MHz olarak ayarladım programda tanımlandığı üzere 2400kbps olsun diye.
hatta slave devrede ufak bi ayrıntı dikkatimi çekti usart devresinin ayarlamalarının olmadığını düşündüm master programını inceleyerek bu kanıya vardım yanlışmı yaptım doğrumu bilemiyorum ama

***********************************************************
DEFINE HSER_RCSTA 90h ' Enable serial port & continuous receive
DEFINE HSER_TXSTA 20h ' Enable transmit, BRGH = 0
DEFINE HSER_SPBRG 25  ' 2400 Baud @ 4MHz, 0,17%
DEFINE HSER_CLROERR 1 ' Clear overflow automatically
***********************************************************
bu kısmı master dan alıp slave kısmına aynen kopyaladım ama yinede similasyon çalışmadı..
bu konuda yardımcı olursanız sevinirim.

Kullandığım dosyalar  RF_MASTER.BAS ve RF_SLAVE.BAS

menduh

bu arada aynı problemi RS_485 similasyonunda da yaşıyorum. yardımlarınız için şimdiden tşk ediyorum.

ete

Sorun yaşamasaydın şaşardım zaten. Dördü bir arada çalışacak bir sistemin yarısını siliyorsun ve çalıştırmaya çalışıyorsun.
Programada bakmak aklına gelmiyor . Sistem sıralı olarak master kontrolünde salve' lara bilgi vermeleri için emir verir.
Şayet arada birisi eksik kalır ise (silinmiş  ise) emğrden haberi olmayacak ve master de boşuna silinmiş slave den bilgi gelecek diye bekleyecekitir.

Made yalnız Master-Slave yani ikili çalıştıracaksın o halde ikili model var orada onu çalıştır yada ne yapacaksan ona uyarlama yap. Üzerinde oynadığın sistemi ikili haberleşme sistemine çevirmek için programda tadilat yapmak lazım.
Aynı şeyler RS485 sistemi içinde geçerli.

Ete

menduh

Hocam cevap için tşkler. aslında kodları baya bi incelemiştim ikinci slave devreyi kaldırmadan önce ve anladığım kadarıyla master devre önce 1.slave devreye bilgi gönderiyor ve bekliyor gelen yanıtı ekranda yazıyor ve ikinciye gönderiyor ve yine bekliyor
IKIBIR:
SAYAC=SAYAC+1
IF SAYAC 30000 THEN BASLA ' BELLI BIR SURE ICINIDE CEVAP GELMEZ ISE BASLA ETİKETİNE GIT
PAUSEUS 5

bukadar süre bekledikten sonra tekrar 1.slave devreye emir gönderiyor.

ben bu şekilde algıladığımdan silmiştim hatta ilk başta silmedim zaten çalıştıramayınca aynı hat paralel olmasın veri kaybı yaşanıyor belkide diye 2.slave devreyi çıkarmıştım. cevabınızdan sonra her iki sistemide denedim fakat bir sonuç alamadım çok güzel çok mantıklı bir sistem bana göre fakat çalıştıramamış olmak kafama takıldı.
birde şunu sormak istiyorum
KIME=1 ile KIME=%00000001  bu aynı şeymidir. cvplarınız için şimdiden tşk ediyorum.

ete

O derslerde yer alan bütün programlar çalışmaktadır ve hepsinide ben çalıştırıp denedeikten sonra oraya koydum.
Zaten bir arkadaşımın lafı vardır çok severim. Çalışmayan devre yoktur çalıştırılamayan devre vardır der.
Öncelikle yapılacak iş o devreleri mevcut halleri ile çalıştırmayı denemek. Çalışıyor ise sorun yok bir aşama atlayabilirsiniz. Ama çalışmıyor ise kusur sizdedir ve sorunu bulmak zorundasınız.

Sİmulasyonlar genellikle tüm devre elemanlarını istemeden çalışırlar. Sitenin önemli bilgiler bölümünde bu konuda nelere dikkat edilmesi gerektiğini anlattım. İsis devreye temiz 5V verilmiş farz eder. İsis devreye bir kristal bağlı yada dahili osc ile frekans seçimi yapılmış farz eder. İsis bunların yanında daha pek çokşeyi var kabul eder. Siz gerçek devrenizde bunlardan birini eksik yaparsanız devreniz çalışmaz. Bunu sıklıkla yaşıyorum. Genelde LCD ve mikro işlemci kullanım ve bağlantılarında devcre şemalarını gördükleri gibi uyguluyorlar. Artık bizde bütün şemaları dört dörtlük yayınlamıyoruz. İsis pratikliğinden yararlanıp onun var kabul ettiklerini devreye bağlamıyoruz buda pek çok amatör için sorun oluşturuyor. Ama bunun birde faydalı yönü var. Öğrenmenin yoluda bu gibi kusurlardan geçiyor. Sorarak öğrenen bir daha unutmuyor. Aksi halde her şeyi ezbere yapanlar ise bir müddet sonra o bağlımıydı bu varmıydı gibi ikilemlere düşüp şaşırıyorlar. Anlayacağınız gittiğim yol bana göre doğru. Bir şey öğrenilecek ise temelinden de bir şeyler öğrenmek doğru olur diye düşünüyorum.

Elbete verilen programlar öğretmek amacı ile verilmiştir. Programlarda değişiklik yapabilmek için mantığını iyice kavramak gerekir. Orada da bu amaçlanmıştır. Program mantıklarını (algoritmaları) kavratmak yada en azından üzerinde düşünülmesini sağlamak benim öğretme şeklimdir. Bu konuda başarılı olduğumu aldığım mesajlar ve forumlardan gönderilen teşekkür mesajlarından anlamaktayım.

KIME=1 ile KIME=%00000001  aynı şeylerdir. Hatta bir ekleme daha yapabiliriz. KIME=$01 de aynı şeydir. Farkları sayı formatlarıdır. Birincisi desimal sistemde 1 sayısı KIME isimli değişkene veriliyor. İkincisinde ise binary formatında 1 sayısı aynı değişkene veriliyor. Üçüncüsünde ise Hex formatında 1 sayısı aynı değişkene veriliyor.
Üç eşitlikte aynı işi yapar ve Kime isimli değişkene 1 sayısını yerleştirir.

Ete


menduh

Hocam aklıma bişey takıldı alıcı kısımda kesme kullanmamızı öneriyorsunuz dersinizde fakat seri yoldan gelen herhangi bir parazit kesmeyi aktif etmezmi (rf alıcılar boştayken gürültü sinyali üretiyor bu durumda da alıcı sürekli kesme varmış gibi davranmazmı?)

ete

Parazit dijital bir bilgi degildir. Bu nedenle soyledigin olusmaz.
Ete

wisdom_rs232

ete hocaya teşekkürlerimi borç bilirm. Çok yardımını Gördüm. Özellikle RF Konuları diğer konularda cabası. O söz doğru söylenmiş. Calışmayan devre yotur. :)

oracle

Hocam dosya eki çalışmıyor galiba, bir türlü indiremedim linki yenilerseniz çok sevinirim.

ete

Şİmdi denedim sorunsuz yüklüyor. Sorun senin internette olabilir. Yada virüs koruman engel oluyor olabilir.
Değişik şekillerde denemeye çalış.

Ete

oracle

Tamamdır hocam sorun halloldu. Uzantısı zip olduğu için winzip ile açayım dedim olmadı ama winrar açtı. Teşekkürler.

y1lh4n

Dersler süper hazırlanmış ellerinize sağlık hocam..

mamik_34

hocam emeğe gerçekten büyük saygı teşekkür ederim

M.A.A

Merhaba
Ete hocam sizin verdiğiniz bilgilerden çok yararlandım, teşekkür ederim. Bu dosyayı indirdim, hiç bir değişiklik yapmadan çalıştırdım. Ekranda bir an Lütfen Bekleyiniz yazıyor daha sonra ekran boş. Nedeni ne olabilir.

Powered by EzPortal