
Bu devre sayesinde, herhangi bir cep telefonundan belirli bir SMS mesajı göndererek 8 cihaza kadar (örnek projemizde 4 cihaz) kontrol sağlayabiliriz. Cihazların bulunduğu yerde kablolu telefon hattının olmadığı durumlar için oldukça kullanışlı bir çözümdür. Eğer köşede duran, kullanmadığınız eski bir Ericsson cep telefonunuz varsa, onu işe yarar bir projeye dönüştürmenin tam zamanı. Cihazlar üzerinde yapabileceğimiz kontroller; AÇMA (ON), KAPATMA (OFF) veya Resetleme işlemleridir.
Kullanım Alanları
Bu devre ile Linux sunucuları, ADSL modemleri, yazıcıları, elektrikli kilitli kapıları, garaj kapılarını, ev aydınlatmalarını, su pompalarını veya elektrikli güneşlikleri uzaktan kontrol edebilirsiniz. Ayrıca hırsızlık durumunda arabanızın veya motosikletinizin motorunu kilitlemek gibi pek çok farklı amaçla da kullanılabilir. Bu devrenin temel amacı, insan hayatını daha iyi ve kolay hale getirmektir.Devre Hakkında
Devrenin donanımı oldukça basittir; çünkü Ericsson cep telefonlarının haberleşme portu, AT komutları (modem komutlarına benzer, ancak cep telefonları için olan komutlar) aracılığıyla 5 Volt seviyesinde çalışmaktadır.AT90S2313 (veya ATtiny2313) mikrodenetleyicisinin yazılımı (firmware) ise biraz daha karmaşıktır. Çünkü telefonun gönderdiği "septet"leri (7 bitlik veri paketleri), AVR işlemcisinin ihtiyaç duyduğu 8 bit uzunluğundaki "octet"lere dönüştürmemiz gerekir. SMS mesajının içeriğini çözebilmek (decode) için tüm bu süreç gereklidir.
Teknik Detaylar
Bu devre hem AT90S2313 hem de ATtiny2313 mikrodenetleyicileri ile uyumlu çalışmaktadır. ATtiny2313 kullanılması durumunda, programlayıcı yazılımınızın "Fuses" (Sigorta Ayarları) sekmesinden, varsayılan "dahili RC osilatör" yerine "External Crystal Oscillator" (Harici Kristal Osilatör) seçeneğini seçmeniz gerekmektedir. Ayrıca "Divide clock by 8 internally" (Saati dahili olarak 8'e böl) seçeneğinin işaretini kaldırmalısınız.
Kurulum ve Çalıştırma
Devreyi tamamladığınızda, önce cep telefonuna bağlayın ve telefonu açın. Devreye enerjiyi telefonu açtıktan sonra verin; daha önce vermeyin. Enerji verildiğinde AVR, telefonun 1. hafıza konumundaki mesajı okumaya çalışacaktır. Bu nedenle, telefonu devreye bağlamadan önce içindeki tüm SMS mesajlarını silmenizi öneririm. Eğer 1. hafıza konumunda herhangi bir mesaj yoksa, AVR siz bir mesaj gönderene kadar tekrar tekrar okuma yapmaya devam edecektir.Mesaj Formatı ve Kodlama
Gönderilecek mesajın formatı sadece '1' veya '0' rakamlarından oluşmalıdır. Cihazı aktif etmek için '1', pasif hale getirmek için '0' kullanılır. Mesaj, yan yana yazılmış (tek başına veya karışık) toplam 8 adet rakamdan oluşmalıdır.- Örnek: Eğer 11000100 şeklinde bir mesaj gönderirseniz; sağdan başlayarak 3., 7. ve 8. cihazları aktif ('1'), 1., 2., 4., 5. ve 6. cihazları ise pasif ('0') duruma getirmiş olursunuz.
Durum Değiştirme
Yeni bir mesaj göndermek istediğinizde, mevcut durumunu değiştirmek istemediğiniz cihazlar için eski mesajdaki rakamın aynısını göndermelisiniz.- Örnek: Mevcut durumunuz 11000100 iken sadece 5. cihazı aktif etmek istiyorsanız, yeni mesajı 11010100 şeklinde göndermelisiniz. Böylece diğer cihazların durumunu korumuş, sadece 5. biti '0'dan '1'e çekerek o cihazı açmış olursunuz.

Veri kablosuna ihtiyacınız yok. AVR'nin pinlerini doğrudan T10s konektörüne bağlayın.

T10s için herhangi bir pile ihtiyacınız yok. +5V DC'yi <SMS uzaktan kumanda> kartından alın.

Otomatik Güç (Power-ON) Modifikasyonu
Cihazın elektrik kesilmelerinden sonra kendi kendine açılabilmesi için küçük bir donanım müdahalesi yapabilirsiniz:- Ericsson T10s telefonun üzerindeki "NO" (Kapatma/Açma) tuşunu yerinden sökebilir ve bu noktaya bir AÇMA-KAPAMA (ON-OFF) anahtarı lehimleyebilirsiniz.
- Bu anahtarı "ON" (AÇIK) konumuna getirirseniz; ana +12V DC güç kaynağını kesip tekrar verdiğiniz her seferde, telefon otomatik olarak açılacaktır.
- Bu anahtarı ekleyebilmek için T10s telefonun kasasını açmanız (demonte etmeniz) gerekmektedir.

SMS uzaktan kumanda> kartı (4 röleli versiyon)
PDU Kod Çözme (Decode) İşlemi
PDU formatı, 7 bit uzunluğundaki karakterleri kullanır. Kod çözme işlemi; 7 adet 8 bitlik baytı alıp, her bir baytın başına bir adet "0" ekleyerek bunları 8 adet 8 bitlik standart bayta dönüştürme prensibiyle çalışır.Güvenlik Tavsiyesi!
Cihazlarınızı yabancı kişilerden gelen mesajlara karşı korumak isterseniz, kaynak kodunu (source code) mesajı işlemeden önce gönderen telefon numarasını doğrulayacak şekilde modifiye edebilirsiniz. Paylaştığım kaynak kodunda; gönderen numarasını, servis merkezi numarasını, mesajın tarihini ve saatini okuyan bölümler mevcuttur.Not: Bu proje Yunanistan'daki şebekesi baz alınarak hazırlanmıştır. Diğer ülkelerdeki SMS yazım kurallarında (GSM şebekesinden gelen septet yapısında) farklılıklar olabilir.AVR işlemcisi mesajı alıp uyguladıktan sonra, 1. hafıza konumunu boşaltmak için mesajı telefondan siler ve yeni bir mesaj beklemeye başlar.
Servis Modu (Hata Ayıklama)
AVR'nin 7. pinini (PD3) bir MAX232 çipi üzerinden bilgisayara bağlarsanız; terminal yazılımında telefonun AVR'ye gönderdiği tüm verileri (Gönderen numarası, servis merkezi numarası, tarih, saat ve AT komutları) görebilirsiniz.- COM Port Ayarları: 19200 bps, 8n1.
Sorun Giderme (Troubleshoot)
Bu devre Yunan sim kartları ve Ericsson T10s ile test edilmiştir. Diğer ülke şebekelerinde veya farklı telefon modellerinde çalışması için şemada kesikli çizgilerle gösterilen diyagnostik devresini kurup RS232 üzerinden PC bağlantısı yapmanız gerekebilir.Devreye güç verildiğinde AVR şu komut dizisini izler:
- AT+CPMS="ME" (Telefon hafızasını seçer)
- AT+CMGR=1 (1. konumdaki mesajı okur)
- Hafıza boşsa hata döner ve AVR tekrar denemeye başlar.
- Yeni mesaj geldiğinde AVR içeriği çözer, röleleri konumlandırır ve AT+CMGD=1 komutuyla mesajı siler.
Versiyon Geçmişi (SMSrc)
V2.2 (03.12.2006)- Tak-Çalıştır Fonksiyonu: AVR ile T10s arasındaki bazı haberleşme kopuklukları giderildi.
- Reset Komutu: "r" veya "R" harfi eklendi. Bu komut gönderildiğinde, ilgili röle 2 saniye boyunca bırakılır (disarm) ve sonra tekrar çeker. Modem, sunucu veya erişim noktalarını (Access Point) uzaktan resetlemek için mükemmeldir.
- PC Veri Gönderimi: Veri gönderim pini 7. pin (PD3) olarak değiştirildi. Hız 19200 bps yapıldı.
- Hatalı Karakter Koruması: Mesajda "1", "0", "r", "R" dışındaki karakterler artık görmezden gelinir. Eski versiyonlarda bilinmeyen karakter geldiğinde röleler pasif konuma düşüyordu.
- Yanıt Mesajı Kaldırıldı: Operatörler SMS teslim raporunu ücretsiz sunduğu için cihazın yanıt mesajı gönderme özelliği kaldırıldı.
- Kodlar sıfırdan yazılarak daha stabil hale getirildi.
- Yanıt mesajı özelliği eklendi (V2.1'de tekrar kaldırıldı).
- İlk versiyon yayınlandı. 8 cihaza kadar kontrol desteği sunuldu.
PDU Spy Yazılımı ve Bilgisayar Bağlantısı
pduspy.exe, akıllı kartların (SIM kart) SMS hafızasını veya Ericsson cep telefonunun SMS belleğini, bilgisayarınızın RS232 seri portu üzerinden kontrol etmenizi sağlayan bir yazılımdır. Bu yazılımı kullanabilmek için telefonu bilgisayara bağlayacak bir data kablosu satın almanız (veya kendi kablonuzu yapmanız) gerekmektedir.Teknik Not:PDU Spy, özellikle SMS mesajlarının PDU formatındaki ham hallerini görmek ve AVR kodlaması yaparken mesaj yapısını analiz etmek için çok kullanışlı bir araçtır. Eğer kendi kablonuzu yapacaksanız, bilgisayarın RS232 seviyesini (±12V) telefonun TTL seviyesine (5V) düşürmek için bir MAX232 entegresi kullanmanız gerektiğini unutmayın.
Eklentiler
Son düzenleme: