Pcden Seri Port + Role Acip Kapama
-
Hocalar simdi salonda bi pc var film izlediğim.
Film izlemek için içeri giriyorum. PCyi açıyorum, TV yi açıyorum, anfiyi açıyorum, subwooferi açıyorum. Kapatırkende hepsini aynı sırayla kapatıyorum.
Benim zaten antenle falan işim yok PCden başka hiçbişiyden film izlemiyorum dolayısıyla PC açılınca bütün bu aletler açılsın, PC kapanınca bütün bu aletler kapansın istiyorum. Yazılım tarafını her türlü hallederim.
Bu arada tvnin servis modu var rs232 var üstünde Tvyi onunla açıp kapamak ve açıkmı diye kontrol ettirebilmek istiyorum.
Planım PCye paralel ve seri portlu bir esata takmak ve seriye null modem kablosu ile TVye, paraleli de rolelere bağlamak.
Fakat pek profosyonel gelmedi bana yapacağım şey.
donanım nasıl birşey önerirsiniz? PIC ile aracı bişeymi yapim seri port ile onumu kumanda edim? yoksa USB li bi yardımcı entegre vs varmı bildiğiniz? seri ve paralel taş devrinde kaldı gibi geliyor.
Mümkünse bi paralel bi seri değil tek kablodan halletmek istiyorum.
-
tam olarak anlamasam da röle kullanmak istiyorsan 5 volt dc / 220 volt ac çalışan röle bulman gerekli. bilmiyorum bu şekilde röle var mı normalde
12 volt dc ile çalışanlar var. bu da demek oluyor ki uln2003 gibi bir entegre kullanarak 12 voltu harici olarak röleye vermek gerekli ama bulabilirsen
5/220 volt şeklinde o zaman bilgisayarın portlarını kullanabilirsin. ancak bu pek tavsiye edilmez, küçük bir arkda ya da ne bileyim bir dalgalanmada
bilgisayarın anakartını/portlarını yakma ihtimalin olduğu için genelde harici kaynakdan beslenme tavsiye edilir. (yani ekstra dışardan bir güç
kaynağı bağlaman daha iyi olabilir)
seri port ile kontrol usb ye oranla daha kolaydır ama en kolayı paralel porttur. tabii çağa uydurmak istiyorsan usb kontrollü yapman gerekir. pic ile
yapacaksan bu konudaki en basit entegrelerden biri 12f serisindeydi ama ismini hatırlamıyorum. bir de 18f 2550 entegresi var biraz daha
gelişmiş.benim kullandığım pic 18f 4550 bu diğerlerinden daha gelişimiş (daha fazla özellik ve giriş/çıkış barındırması)
usb nin hem bilgisayar programlaması hem de elektronik programlamasını yapmak zorundasın ve kullanacağın pic yukarıda söylediğim gibi usb
destekli olmalı (vusb girişi olacak) ancak usb nin çalışma mantığı biraz farklı. karşılıklı olarak handshake yapman gerekiyor (vendorID,productID ve
serialID) bunlardan vendorID ve productID önemlidir. Bu iki id hem bilgisayarda yazdığın yazılımda bulunması gerekli hem de elektronik
tarafındaki pic içerisinde. aksi halde bağlantı sağlayamazsın. bağlantı sağlandıktan sonra istediğin şekilde veri yollayabilirsin. bunun için özel
kütüphaneler (mesela libusb) ya da api ler mevcut. pic i programlarken de hi-tech,ccs c, pic basic, asm ... kullanabilirsin. önemli olan o derleyicide
usb kütüphanesini eklemendir
kolay gelsin
-
helal olsun lan size elektroniğin amına koymuşsunuz ikiniz de. güzel konu olmuş.
-
Ama usb olacaksa driver mi yazacaz ona bide, PC nasıl anlıyor? o pic için hazır driver falan mı var?
-
Ama usb olacaksa driver mi yazacaz ona bide, PC nasıl anlıyor? o pic için hazır driver falan mı var?
driver yazmana gerek yok hocam. normalde hazır bir kütüphane ile ya da api ile bu işi kolaylıkla halledebilirsin. şimdi biraz daha açık yazmak
gerekirse. bu ürün ticari bir ürün olmadığı için vendorID (vID) ve productID (pID) yi kendin belirleyebilrsin. pic için yazacağın kodda bu değerleri
belirtmen gerek. Atıyorum vID ye 2345 dedin pID ye de 3456 dedin. bu numaraları masaüstü yazılımı tarafında da kullanman gerekli yoksa
cihazınla iletişime geçemezsin. Aygıtı taktığında zaten bilgisayar kendisi yükler. aygıt yöneticisinden girip vid ve pid i görebilirsin de. bu numaraları
kullanarak yapmış olduğun cihaza bağlanabilirsin. yani senin yapacağın iş şunlar
Pic Tarafı
1- vendor id ve product id belirle
2- usb.c yi ekle projene
3- usb fonksiyonlarını kullanarak gelen ve giden veriler için fonksiyonlar oluştur (event gibi düşün)
4- bu fonksiyonlar, bilgisayardan veri geldiğinde ya da bilgisayara veri yolladğında event gibi tetikleniyor ona göre de gerekli fonksiyonları bunun içinden çağırabilirsin.
5- bu fonksiyonlar da senin hangi çıkışlara 1 ya da 0 vereceğini belirleyebileceğin kodlardan oluşacak.. mesela ccs c deki usb fonksiynlarındaki parametre byte dizisi şeklinde. bu diziyle istediğini yapabilirsin
if (gelenveri[0] ==0 && gelenveri[1]==0)
CihazlariKapat();
else if (gelenveri[0] ==0 && gelenveri[1]==1)
CihazDurumunuBilgisayaraYolla();
else
CihazlarıAc();
gibi..
masaüstü yazılımı tarafında ise
1- usb hazır kütüphaneleri yada apilerini projene ekle
2- constructorlarına vid ve pid leri geçir (pic deki projene yazdığın)
3- eklediğin kütüphanedeki eventleri implement et projene
4- bu eventlerle veri geldiğinde ya da veri gönderildiğinde gerekli kodu yaz
-
4 Tuşa basmamak için bunların hepsi.
Ömrün boyunca buna harcıyacağın süre program, alet edavat işi için harcıyacağın süreyi karşılamaz.
Fakat emeğe saygı.
Not: Zamanında pcden vantilatörü açıp kapama işini yapınca banada aynısını söylemişlerdi.
-
real_agabey bunu yazdı
4 Tuşa basmamak için bunların hepsi.
Ömrün boyunca buna harcıyacağın süre program, alet edavat işi için harcıyacağın süreyi karşılamaz.
Fakat emeğe saygı.
Not: Zamanında pcden vantilatörü açıp kapama işini yapınca banada aynısını söylemişlerdi.
bence burda onemli olan proje cikartmak. uretmek
-
arduino ve linkteki shield yardımcı olabilir.
http://www.open-electronics.org/input-output-shield-for-arduino/
edit: düzeltme
X10n tarafından 12/Kas/12 20:26 tarihinde düzenlenmiştir -
X10n bunu yazdı
arduino ve linkteki shield yardımcı olabilir.
http://www.open-electronics.org/input-output-shield-for-arduino/
edit: düzeltme
aynen arduino candır
-
Seri port veya paralel port açıkcası çok amelelik olur, bu yöntemler ile illaki düzgün bişey yaparsın ama bu sistemde öncelikle ihtiyacınızı iyi değerlendirip en optimum sonuca gitmeniz lazım. Ki o da bence şöyle;
İhtiyaç: Pc açıldığınıda TV+Sub+Amfi kendiliğinden açılsın.
Yöntem1: Akım duyarlı master + 3 tane slave prizi bulunan akıllı priz grubu alınır. Master kısmına TV takılır Slave olanlara PC ve ses sistemleri takılır.(Sonuç olarak Tv çalışmadan pc nin çalışmasına gerek yok.) Tv yi Stand-By dan Power on yaptığında akıllı priz slave prizlere enerji verir zaten.
Bana bu yetmiyor kontrolleri geliştirmem gereken bir sistem lazım dersen o zaman daha kompleks şeyler düşünmek gerekir... -
ben olsam şayet şöyle birşey yapardım...
pc tarafına ufak usb li bir pic ona göre yazılımı yapacaksın pc programını falanda ayarlıcaksın...(hiç yapamazsan pic'in usartını kullan araya 5-10tl ye satılan usb chiplerinden at kartın üstüne ) sonra bu picli karta yani pc kısmındaki karta (cihazların durum bilgileri okunmayacak ise sadece verici koyacaksın) hem alıcı hem verici çalışan minik modüller var onlardan atacaksın karşıyada aynı modüllerden atacaksın...karşı taraf devamlı data bekliyecek alıcı konumda kalacak verici pc kısımda devamlı verici konumda olacak...
böylece kablo derdinide ortadan kaldırmış olursun...
bluetoot modüller vs. var fakat astarı yüzün geçer hem pic hem yazılım hem maliyet... :P
ben olsam temiz yaparım en kötüsü usb rs232 çevirici yaparım diğer kabloları ortadan kaldırmak içinde haberleşmeyi kablosuz yaparım...durum bilgisi almayada gerek yok sanırım...devamlı başında da denetleyici olacağı için sanmıyorum...
yada illa kablo kullanacaksan sana bir tavsiyem hocam...rs485/usb adaptör alırım haberleşmeyi 2 kablo üzerinden yaparım...ilerde birgün ihtiyaçlar artarsa evi bu iki kablo üzerinden otomasyona da dökersin...485 candır :D can :P