Çekmecelerimi karıştırırken 2005 yılında yaptığım bir proje geçti elime. MagicPlug.
MagicPlug, akıllı bir elektrik prizi. Kendisine takılan cihazları uzaktan "aç kapa" yapmak için tasarlandı. Uzaktan ile kastettiğim kablosuz olarak bilgisayar üzerinden prize hükmetmek. Dolayısı ile bu bilgisayara uzaktan bağlanılabildiği için aynı zamanda internet üzerinden de kontrol edilebiliyor.
Projeyi yaptığım günlerde Linux kullanmıyordum. Çekmeceden çıkarıp bir de Pardus 2009 üzerinde çalıştıralım dedim.
MagicPlug'ı, uzaktan kumandalı oyuncak araba, röle, paralel port kablosu, birkaç transistör, direnç ve diyot kullanarak yaptım.
Uzaktan kumandalı arabanın üzerinden çıkardığım alıcı kendisine gerekli komutlar verilince motor çalıştırmak üzere tasarlanmış. Biraz modifikasyonla bunu bir röle tetikleyecek hale getirdim.
Arabanın kumandasını ise yine biraz modifikasyonla paralel porttan aldığı komutlar ile vericiye sinyal göndermesini sağladım.
Daha iyi anlaşılması için bir şema hazırladım.
Sonuçta ortaya şöyle iki cihaz çıktı:
MagicPlug Kumandası
MagicPlug
Peki sistemi nasıl çalıştırdım?
Önce paralel porttan çıkış almamı sağlayacak küçük bir C programı yazdım. Program iki adet argüman alıyor, on ve off.
sudo magicplug on
komutunu verdiğimizde fiş çalışıyor. off komutu verince de çalışmasını durduruyor. Programın kodlarını buradan bulabilirsiniz.
Programi derlemek icin "gcc magicplug.c -o magicplug" komutunu verin.
Daha sonra ise Python ve Qt kullanarak hazırladığım ve sadece bir butondan oluşan frontend'e backendi bağladım. O nun da kodlarını şuradan bulabilirsiniz.
"sudo python magicplug.py komutunu verip programı çalıştırabilirsiniz."
Masaüstüme bağlı olan bu sisteme laptop'umdan ssh -X ile bağlanarak sistemi Pardus 2009 üzerinde çalışır halde gösterdiğim kısa video da aşağıda. Sistem şu an yanımda olsa da aslında salondan veya Antartika'dan lambayı kapatıp açabilirim. Bu arada cep telefonundan anca boyle fake gibi gorunen bir video cekebildim + projeyi Kıbrıs'ta yaptığım için İngiliz tipi fiş kullanmayı tercih ettim.
























