Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

RB0 Harici Kesme !

Başlatan HeCToR, 24 Eylül 2015, 23:54:47

HeCToR

Merhaba Arkadaşlar Yardımınızı Almam gereken bir konu var ekteki şema üzerinden anlatıyım isterseniz 2 Adet Switch , 2 Adet Buton , 2 Adet Rölemiz Var rölelerin kontağından 2 Ayrı motor sürüyorum Aşağı Ve Yukarı olarak röleyi şemaya eklemedim şimdi örnek vermek gerekirse 2 katlı asansörümüz var 1.katta aşağı switch 2.katta yukarı switch var asansörümüz tam orta kısımda duruyor her iki switch'de boşta yukarı butona bastım asansör çıkmaya başladı ve yukarı switch iletime girdi "switch iletime girdiğinde benim yukarı butonum devre dışı kalsın istiyorum motoru koruma amaçlı zorlamaması için" Ancak Yukarı Butonu devre dışı iken Aşağı butonuna bastığımda asansörün aşağı inmesi gerekiyor yani aşağı butonun aktif olması gerekiyor. Asansör aşağı iniyor ve indi aşağı switch iletime girdi"switch iletime girdiğinde benim aşağı butonum devre dışı kalsın istiyorum motoru koruma amaçlı zorlamaması için"Ancak yukarı Butonuna bastığımda asansörün tekrar yukarı çıkması gerekiyor tamamen Zıt çalışma mantığı olacak ve sadece RB0 Kesmesinden kontrol sağlamak istiyorum. Bunun için nasıl bir algoritma ve kod oluşturabilirim Saygılar.


Bilginin Efendisi Olmak İçin Çalışmanın Kölesi Olmak Gerekir

Cemre.

Anahtarlarınızın Normalde Kapalı kontakları mevcutsa çalışması istenmeyen rölenin bobinine seri bağlantı yapılarak kısa yoldan fiziksel koruma sağlanabilir.

HeCToR

@huseyin67 teşekkürler ama tamamen elektronik kontrollu bir devre olacak switchler ise normalde açık 2 bacaklıdır şemadaki gibi
Bilginin Efendisi Olmak İçin Çalışmanın Kölesi Olmak Gerekir

Cemre.

Hocam tek bir girişe aynı gerilim seviyelerinde aynı hattan bağlı iki anahtardan hangisine basılı olduğunu nasıl anlayacaksınız?

HeCToR

@huseyin67 Problem Orada Zaten  :) Elbet Vardır Bir Yöntemi
Bilginin Efendisi Olmak İçin Çalışmanın Kölesi Olmak Gerekir

vitruvius

ADC kullanabilir misiniz?

HeCToR

Bilginin Efendisi Olmak İçin Çalışmanın Kölesi Olmak Gerekir

baran123

Böyle bir şey işiniz görür mü ?

HeCToR

@Baran Ekrem Görür Tabiki @vitruvius ADC kullanabilirmisin deyince jeton düştü  zaten :)  Teşekkürler
Bilginin Efendisi Olmak İçin Çalışmanın Kölesi Olmak Gerekir

OnderGrmz

Switchleri sınır anahtarı olarak anladım. Bu şekilde düşünürsek;
Sınır anahtarları pull down ve asansör ilgili kata geldiğinde sınır anahtarı pice lojik 1 gönderiyor. Bu yükselen kenar oluyor  (L_to_H). İnterrupt ayarlarını buna göre yapman lazım. Butunlarıda pull down bağladığını düşünerek hareket ediyorum. Pull up bağladıysan küçük değişikliklerle sonuca gidebilirsin.

Her sınır anahtarı için bir değişken tanımla mesela;
int1 sinir_alt_kat=0;
int1 sinir_üst_kat=0;

Sonra her butonu tanımla ve bunları kontrol et. Örnek olarak butonları RB7 ve RB6' ya bağladığını düşünüyorum.

#define pin_b7 asagi_in // üst katta bulunan aşağı inmeye sağlayan buton
#define pin_b6 yukari_cik // alt katta bulunan  yukarı  çıkmaya yarayan buton

Röleleride tanımlamak lazım motorlar RB5 ve RB4 pinlerine bağlı olsun.
#define pin_b5 asagi_yon_motoru
#define pin_b4 yukari_yon_mororu


Birde aktif olarak asansörün yukarı mı çıkıyor aşağı mı iniyor onu bilmen lazım.
Onun içinde
int1 yukari=0; // yukarı çıkılıyor
int1 asagi=0; //aşağı iniliyor
şeklinde iki değişkenin olsun.

Kodlara gelirsek;
void dis_kesme (void){
if (yukari==1){
sinir_ust_kat=1;
yukari=0;
}
else if( asagi==1){
sinir_alt_kat=1;
asagi=0;
}

}

int main (void){

while (1){
if (input (asagi_in)&&(sinir_alt_kat==0)&&(yukari==0)){
output_high (asagi_yon_motoru);
asagi=1;
sinir_ust_kat=0;
}
else if (input (yukari_cik)&&(sinir_ust_kat==0)&&(asagi==0)){
output_high (yukari_yon_motoru);
yukari=1;
sinir_alt_kat=0;
}

return 0;
}

Kodları en basit ve hatasız şekilde yazmaya çalıştım. Derleyicinin isteklerine göre gerekli gördüğün yerleri değiştirerek derleyebilirsin.


Cemre.

Hocam jetonun "ayni gerilim seviyelerinde" kelimeleriyle düşmesi gerekiyordu aslında [emoji14]
Şaka bir yana, ADC ile RB0 kesmesi şartınızı sağlayabilecek misiniz acaba? Sonucu merak ediyorum, bizi haberdar edersiniz umarım :-)
Kolay gelsin, iyi geceler..

HeCToR

@huseyin67 idare et bugün gün boyu pc başında projelerle uğraşmaktan kafam allak bullak oldu  :D yarın uygulayıp sonuç bildiririm  ;)
@OnderGrmz Hocam Teşekkürler Yarın uygulayıp sonuç Bildireceğim Saygılar
Bilginin Efendisi Olmak İçin Çalışmanın Kölesi Olmak Gerekir

HeCToR

@OnderGrmz Hocam Paylaşmış Olduğunuz Kodları uyguladım ama Alakasız çalıştı
Bilginin Efendisi Olmak İçin Çalışmanın Kölesi Olmak Gerekir

OnderGrmz

Merhaba;
Yazdığınız kodu burada  paylaşın, beraber inceleyelim.
Nasıl bir problem ortaya çıktı ?

mehmet

Sınır anahtarlarının normalde kapalı
kontakları yön rollerinin bobinlerine seri
bağlanır.
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr