Telefon ile Cihaz Kontrolü devresi

Elektronik Devreler elektrik 403 views
sponsorlu reklam

Telefon ile Cihaz Kontrolü devresi

Telefon ile Cihaz Kontrolü devresini arkadaşlar 16f84 ile yaptık ama 16f877 veya 16f628 ilede yapabilirsiniz. Önemli olan lojik olarak gelen bilgili okuyacak bir beyne sahip kart kullanmanız. Mantıgından bahsedecek olursak telefondan gelen sinyali anlamdıracak olan kart KT3170 veya HT9170 bu iki kartta aynı işleve sahiptir. Telefondan girilen bilgi bu kartlar vasıtasıyla 4 bitlik bir bilgiye dönüştürülüyor peki 4 bitlik bilgi nasıldır örnegin 0011 4 bitlik bir bilgidir.

telefonla cihaz kontrolü mantıgı

 

Bu sistemde cihazlara baglı telefon otomatik olarak açılmalıdır çünkü telefonun başında kimse olmayacaktır.telefon ayarından 3 kere 5 kere çaldıgında açıl gibi bir ayar yapabiliriz.

Telefonu karta nasıl takılacagını merak ediyorsanız kulaklık takarak çıkışını karta takar.

Pic imizin kaç sefer çaldıgında açılması gerektigini şu şekilde belirtiyoruz optaküplör girişine telefon sinyali geldigi anda çıkışından ra0 a bilgi gider ve ra1 hat açma rolesini aktif hale getirerek devremiz çalışmaya başlar.

ccs ile telefonla cihaz kontrolü devresinde timer kesmesi kullanılmış 15 saniye hiçbir tuşa basılmadıgında otomatik program kesmeye gidirek işlem yapmaktadır.

Telefon ile Cihaz Kontrolü devresi şeması

telefon ile cihaz kontrolü

telefon ile cihaz kontrolü

Telefon ile Cihaz Kontrolü devresi yapılmış hali

telefonla cihaz kontrolü

telefonla cihaz kontrolü

 

Malzeme listesi
Adet 			Malzeme adi 
______________________________________________
1	220nF/400V (veya 630V) kutupsuz kondansator
1	470nF/400V (veya 630V) kutupsuz kondansator
3	100nF/63V kutupsuz kondansator
2	22pF kutupsuz kondansator
2	100uF/25V (veya 16V) elektrolitik kondansator
2	220nF/63V kutupsuz kondansator
2	5.6V'luk zener diyot (BZX85C5V6)
2	24V'luk zener diyot
1	5mm Yesil LED (Sifre_Onay icin)
1	5mm kirmizi LED (POWER icin)
4	3mm Kirmizi LED (Roleler icin)
6	1N4001 diyot (veya 1N4007)
1	Moduler Jack 6P6C 90 derece uzun tip (telefon soketi icin)
4	0 No PCB klemens
4	5V'luk role (Ornek model: Tianbo HJR-3FF 5VDC)
5	BC547 NPN transistor
2	560R/1W direnc
2	100k direnc (0.25W)
1	330k direnc
1	4.7k direnc
6	1k direnc
2	330R direnc
4	470R direnc
2	10k direnc
1	1M direnc
1	22M direnc (veya 10M ohm)
1	1:1 hat trafosu (Ornek model: CP Clare Emit-3020 www.telemar.com.tr)
1	CM8870 entegre (CM8870PI)
1	PIC16F84A mikro denetleyici
1	4N25 optocoupler entegresi
1	LM7805 gerilim regulatoru (TO220 kilif)
1	7805 icin uygun tipte sogutucu 
1	3.579MHz kristal
1	4MHz kristal
2	18 pinli entegre soketi
1	10cm x 15cm bakir plaket
1	9V 0.5A'lik reguleli DC cikisli adaptor 
ccs ile yazılmış telefonla ile cihaz kontrolü devresi
// Telefonla uzaktan cihaz kontrolu projesine ait PIC16F84A programi
// CM8870'in Q1-Q4 cikislari PIC16F84A'nin RB0-RB3 pinlerine baglidir.
// StD ucu RB4'e baglidir. Hat acma rolesi RA1'e baglidir.
// Sifre onay LED'i RA2'ye baglidir.
// Zil calma sayisi icin pals devresi RA1'e baglidir.
// Kontrol edilecek cihazlar sirasiyla RB5,RB6,RB7'ye baglidir.
#include <pic.h>
#include <delay.c>
#define StD RB4
#define HAT_ROLE RA1
#define LED RA2
#define PALS RA0
// 4MHz osilator
__CONFIG(XT&WDTDIS&PWRTEN);
unsigned char kontrol=0;
unsigned int CX;
//----------------------------------------------------------
// Timer alt programi
// 15 saniye suresince tusa basilmadiysa hatti kapatmak icin
//----------------------------------------------------------
void interrupt kesme(void){
CX++;
if(CX>15000)kontrol=1;
T0IF=0; // bayragi temizle
TMR0=131;
}
//----------------------------------------------------------
//----------------------------------------------------------
// ANA PROGRAM
//----------------------------------------------------------
main(void){
unsigned char i,komut,sifre[5],sayac;
//----------------------------------------------------------
// Port konfigurasyonu
//----------------------------------------------------------
TRISB=0x1F; // PORTB'nin RB5,6,7 pinleri cikis,digerleri giris  
TRISA=0x01; // RA0 giris digerleri cikis
//----------------------------------------------------------
PORTB=0; // cihazlar enerjisiz
PORTA=0; // hat kapali, LED sonuk
//-------------------------------------------------------------
//Timer islemleri (kesme suresi=1ms)
//-------------------------------------------------------------
T0CS=0; // Dahili clock
PSA=0; // Prescaler TMR0 icin ayarli
PS0=0; PS1=1; PS2=0; // Oran 1:8
ei(); // butun kesmeler etkin
T0IE=0; //Baslangicta timer pasif
T0IF=0; // bayrak temizle
//-------------------------------------------------------------
// resetten sonra 1 saniye bekle
for(i=0;i<4;i++)DelayMs(250);
basla:
sayac=0; CX=0;
for(;;){ // zil sayisi belirleme dongusu
while(PALS==1); 
sayac++;
if(sayac>50){ // Zil sayisi 2 
HAT_ROLE=1; // Hatti ac
sifreoku:
for(i=0;i<5;i++){ // sifreyi al 
//--------------------------------------
kontrol=0;
TMR0=131; //  
T0IE=1; // TIMER ON
//--------------------------------------
while(StD==0){	// tusa basilmadi ise bekle
if(kontrol==1){ // sure>15s ise hatti kapat
HAT_ROLE=0; goto basla; // basa don
}
else {};
}
T0IE=0; CX=0; // Tusa basildi ise Timer'i durdur, CX'i sifirla 
// Boylece yeni bir 15s'lik ek sure kazanilmis olur
sifre[i]=PORTB&0x0F; // sifreyi oku
while(StD==1); // tus basili ise bekle
}
//--------------------------------------
// sifrenin son hanesi * olmalidir
//--------Sifre konrol------------------
if(sifre[0]==1 && sifre[1]==2 && sifre[2]==3 && sifre[3]==4 && sifre[4]==11){
// 11 degeri tus takimindaki * tusuna karsilik gelir.
LED=1; // sifre dogru ise LED'i yak
for(;;){
while(StD==0); // cihazlar icin komut bekle
komut=PORTB&0x0F; 
if(komut==1)RB5=1; // cihaz 1 ON
if(komut==2)RB6=1;
if(komut==3)RB7=1;
if(komut==4)RB5=0; // cihaz 1 OFF 
if(komut==5)RB6=0;
if(komut==6)RB7=0;
if(komut==12){ // # tusuna basildi ise hatti kapat
HAT_ROLE=0; LED=0; goto basla;
// Cihazlarin ON/OFF durumlari degismeden kalir.
}
}				
//--------------------------------------
}
else{ 
goto sifreoku; //sifre yanlis ise tekrar sifre okumaya git
}
}
else{  // sayac<50 ise
while(PALS==0);
}
} // for dongusu
}

Sosyal Ağlarda Paylaş

{elektrik}

1988 Karabük dogumluyum ilköğretim ve ortaöğretimimi karabükte tamamladım.Ankara Üniversitesi Endüstriyel Otomasyon Mezuniyet=2008, Gazi üniversitesi Elektrik Öğretmenligi Mezuniyet=2012, Katü Elektrik-Elektronik Mühendisligi Devam ediyor. facebooktan takip etmek için; https://www.facebook.com/yasinhocammm

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir