- Gerekli malzemeler:
- Çalışma Metodolojisi:
- Ön koşullar:
- AC Uzaktan Kumandanın Çalışması:
- Devre Şeması ve Açıklaması:
- AC Uzaktan Sinyallerinizin kodunu çözme:
- Ana Arduino Programı:
- Android Uygulamasının Kurulması:
- Cep Telefonu kontrollü AC'nin çalışması:
Günümüzün modern dünyasında, nereye gidersek gidelim, çevremizde birçok elektronik cihaz var. Ama hepsinden öte, ceplerimizde her zaman kişisel olarak bulundurduğumuz tek bir cihaz var. Evet, bu bizim cep telefonlarımız. Artık cep telefonları iletişim için kullanılan bir cihazdan fazlası haline geldi, onlar bizim kameralarımız, onlar bizim haritamız, onlar bizim alışveriş kartlarımız, ne değil?
Elimizdeki bu özellik sayesinde, evimizdeki TV, AC, Ev sineması vb. Gibi elektronik uygulamaları kontrol etmek için Uzaktan kumandaları kullanmak gerçekten sıkıcı bir fikir. Yatağımızın rahat rahatlığından AC'nin Uzaktan Kumandasına ulaşmak her zaman sinir bozucu. veya kanepe. Bu nedenle, bu projede Klimayı Bluetooth ve Arduino kullanarak Akıllı telefonunuz aracılığıyla kontrol edebileceğiniz küçük bir kurulum yapacağız. Kulağa ilginç geliyor doğru! Bir tane inşa edelim
Gerekli malzemeler:
- Arduino Mega 2560
- TSOP (HS0038)
- IR Led
- Herhangi bir Renkli LED ve 1K Direnç (isteğe bağlı)
- HC-06
- Breadboard
- Kabloların Bağlanması
Çalışma Metodolojisi:
Evimizdeki TV, Ev Sineması, AC vb. Kontrol etmek için kullandığımız tüm Uzaktan Kumandalar IR Blasters yardımıyla çalışır. Bir IR blaster, bir sinyali tekrarlayan darbelerle patlatabilen bir IR LED'den başka bir şey değildir; bu sinyal, elektronik cihazdaki alıcı tarafından okunacaktır. Uzaktan kumandadaki her farklı düğme için, alıcı tarafından okuduktan sonra önceden tanımlanmış belirli bir görevi gerçekleştirmek için kullanılan benzersiz bir sinyal patlatılacaktır. Uzaktan kumandadan gelen bu sinyali okuyabilirsek, o görevi gerçekleştirmek için gerektiğinde bir IR LED kullanarak aynı sinyali taklit edebiliriz. Daha önce Universal IR Remote ve Otomatik AC Sıcaklık kontrolü için bir IR Blaster devresi yaptık.
Bir TSOP uzaktan kumandalar gelen sinyalin kodunu çözmek üzere kullanılabileceği bir IR alıcısıdır. Uzaktan kumandamızdaki tüm bilgileri çözmek ve Arduino'da saklamak için bu TSOP'u kullanacağız. Daha sonra bu bilgileri ve bir IR Led'i kullanarak, gerektiğinde Arduino'muzdan gelen IR sinyallerini yeniden oluşturabiliriz.
Ön koşullar:
Bu Arduino Bluetooth Kontrollü AC Projesi için, kod boyutu ağır olduğundan bir Arduino Mega'ya sahip olduğunuzdan ve başka bir Arduino sürümünüz olmadığından emin olun. TSOP ve IR Blaster ile çalışmak için bu bağlantıyı kullanarak IR Uzak Kitaplığı kurun.
AC Uzaktan Kumandanın Çalışması:
Projeye devam etmeden önce biraz zaman ayırın ve AC uzaktan kumandanızın nasıl çalıştığını görün. AC uzaktan kumandalar, TV, DVD IR uzaktan kumandalara kıyasla biraz daha farklı çalışır. Uzaktan kumandanızda yalnızca 10-12 düğme olabilir, ancak çok sayıda farklı sinyal türü gönderebilirler. Yani Uzaktan Kumanda, aynı düğme için her seferinde aynı kodu göndermiyor. Örneğin, sıcaklığı 24 ° C (Santigrat derece) yapmak için aşağı düğmesini kullanarak sıcaklığı düşürdüğünüzde, bir dizi veri içeren bir sinyal alırsınız, ancak 25 ° C'yi ayarlamak için tekrar bastığınızda aynı değeri alamazsınız. sıcaklık şu anda 24 değil 25 olduğundan verilerdir. Benzer şekilde 25'in kodu farklı fan hızları, uyku ayarları vb. için de değişecektir. Bu yüzden tüm seçeneklerle uğraşmayalım ve sadece diğer ayarlar için sabit bir değere sahip sıcaklık değerlerine odaklanalım.
Diğer bir sorun, her düğmeye basıldığında gönderilen veri miktarıdır, normal uzaktan kumandalar 24 bit veya 48 bit gönderebilir, ancak bir AC uzaktan kumanda 228 bit'e kadar gönderebilir çünkü her sinyal Sıcaklık, Fan Hızı, Uyku zamanlaması, Swing stili vb. Daha iyi depolama seçenekleri için bir Arduino Mega'ya ihtiyacımızın nedeni budur.
Devre Şeması ve Açıklaması:
Neyse ki bu Cep Telefonu Kontrollü Klimanın donanım kurulumu çok kolaydır. Basitçe bir devre tahtası kullanabilir ve aşağıda gösterildiği gibi bağlantıları yapabilirsiniz.
Aşağıdaki tablo, bağlantılarınızı doğrulamak için de kullanılabilir.
S.No: |
Bileşen Pimi |
Arduino Pimi |
1 |
TSOP - Vcc |
5V |
2 |
TSOP - Gnd |
Gnd |
3 |
TSOP - Sinyal |
8 |
4 |
IR Led - Katot |
Gnd |
5 |
IR Led - Anot |
9 |
6 |
HC-05 - Vcc |
5V |
7 |
HC05 - Gnd |
Zemin |
8 |
HC05 - Tx |
10 |
9 |
HC05 - Rx |
11 |
Bağlantılar tamamlandıktan sonra aşağıda gösterildiği gibi görünmelidir. İşleri düzenlemek için bir Breadboard kullandım, ancak tüm bileşenleri doğrudan bağlamak için Erkek-dişi kabloları da kullanabilirsiniz.
AC Uzaktan Sinyallerinizin kodunu çözme:
AC'nizi kontrol etmenin ilk adımı, AC Uzaktan Kumanda IR Kodlarını çözmek için TSOP1738'i kullanmaktır. Tüm bağlantıları devre şemasında gösterildiği gibi yapın ve belirtilen tüm kitaplıkları kurduğunuzdan emin olun. Şimdi Dosya -> Örnekler -> IRremote -> IRrecvDumpV2'de bulunabilen örnek programı “ IRrecvDumpV2 ” açın .
int recvPin = 8; IRrecv irrecv (recvPin);
TSOP'umuz pin 8'e bağlandığından, yukarıda gösterildiği gibi satır numarasını 9'u int recPin = 8 olarak değiştirin. Ardından programı Arduino Mega'nıza yükleyin ve Seri Monitörü açın.
Uzaktan Kumandanızı TSOP'a doğru tutun ve herhangi bir düğmeye basın, her düğmeye bastığınız Sinyal TSOP1738 tarafından okunacak, Arduino tarafından kodu çözülecek ve Seri Monitörde görüntülenecektir. Uzaktan Kumandanızdaki her sıcaklık değişikliği için farklı bir Veri alacaksınız. Ana programımızda kullanacağımız için bu Verileri kaydedin. Seri monitörünüz böyle bir şeye benzeyecek, kopyalanan verileri kaydettiğim Word dosyasını da gösterdim.
Ekran görüntüsü, AC uzaktan kumandam için sıcaklığı 26 ° C'ye ayarlama kodunu gösterir. Uzaktan Kumandanıza bağlı olarak farklı bir kod seti alacaksınız. Tüm farklı sıcaklık seviyeleri için kodları benzer şekilde kopyalayın. Sen edebilirsiniz Arduino Kanununda tüm Klima Uzaktan kumanda IR kodları kontrol bu yazının sonunda verilen.
Ana Arduino Programı:
Komple ana Arduino programı bu sayfanın alt kısmında olabilir, ancak aynı programı kullanamazsınız. Örnek taslaktan yeni elde ettiğimiz Sinyal kodu değerlerini değiştirmelisiniz. Arduino IDE'nizdeki ana programı açın ve aşağıda gösterilen bu alana gidin ve burada dizi değerlerini Remote'unuz için elde ettiğiniz değerlerle değiştirin.
Ben ki Not 10 Diziler kullanılan hangi iki bize AÇ ve dinlenme 8 farklı sıcaklığını ayarlamak için kullanılır iken AC kapatmak için kullanılan dışarı. Örneğin Temp23, AC'nizde 23 * C'yi ayarlamak için kullanılır, bu nedenle bu Dizideki ilgili kodu kullanın. Bu yapıldıktan sonra, kodu Arduino'nuza yüklemeniz yeterlidir.
Bu proje için iki kütüphane içe aktarmamız gerekiyor. Biri Arduino'ya eklediğimiz IRremote kitaplığı, diğeri ise Bluetooth modülünü kullanmamıza yardımcı olan yerleşik Yazılım Seri Kitaplığıdır.
#Dahil etmek
Daha sonra Bluetooth Modülünü pin 10 ve 11'de başlatıyoruz ve ardından kütüphanenin tüm IR özelliklerine erişmek için irsend adlı bir nesne kullanıyoruz.
SoftwareSerial BT_module (10, 11); // RX, TX IRsend irsend;
Ardından çok önemli kod satırları geliyor. AC'nizi kontrol etmek için bilgiler burada bulunur. Aşağıda gösterilen AC uzaktan kumandam içindir, sizinkini önceki adımda almış olmalısınız.
Daha sonra, geçersiz kurulum işlevinin içinde, iki seri iletişim başlatıyoruz. Biri 9600 Baud hızında Bluetooth ve diğeri 57600 baud hızında Seri monitör.
void setup () {BT_module.begin (9600); // BT 9600 Serial.begin (57600) üzerinde çalışır; // Seri Monitör work son 57600}
Inside geçersiz döngü (sonsuz döngü), biz Bluetooth Modülü tarafından alınan bir şey varsa kontrol. Herhangi bir şey alınırsa, bu bilgiyi BluetoothData değişkeninde saklarız.
while (BT_module.available ()) // Veri geliyorsa {BluetoothData = BT_module.read (); // okuyun ve kaydedin Serial.println (BluetoothData); // test amacıyla seri olarak yazdırın}
Bluetooth tarafından alınan bilgiler, bir sonraki adımımızda yükleyeceğimiz Android uygulamamızda basılan düğmeye dayanacaktır. Bilgi alındıktan sonra, aşağıdaki gibi ilgili IR kodunu tetiklememiz yeterlidir.
eğer (BluetoothData == '2') {irsend.sendRaw (Temp23, sizeof (Temp23) / sizeof (Temp23), khz); gecikme (2000); // Sıcaklık 23C'yi ayarlamak için sinyal gönderin}
Burada '2' kodu alınırsa, AC'nin sıcaklığını 23 ° C'ye ayarlamamız gerekir. Benzer şekilde, AC'nin tüm temel kontrol işlevlerini gerçekleştirmek için 0'dan 9'a kadar bir kodumuz var. Bu sayfanın sonundaki tam arduino koduna bakabilirsiniz.
Android Uygulamasının Kurulması:
Akıllı telefon kontrollü Klimanın son adımı Android uygulamasını kurmaktır. Bu proje için Android uygulaması Android İşleme Modu kullanılarak oluşturuldu. İşleme, Gömülü projeleriniz için.exe dosyaları veya APK dosyaları oluşturmak için mükemmel bir araçtır. Tıpkı Arduino gibi bir Açık kaynak platformudur ve bu nedenle kullanımı tamamen ücretsizdir.
Çok fazla derinlemesine bilgi almak istemiyorsanız , APK dosyasını buradan zip dosyasının içinden indirebilir ve doğrudan cep telefonunuza yükleyebilirsiniz. Uygulamayı açın ve aşağıda gösterildiği gibi bir ekran göreceksiniz, bundan sonra bir sonraki adıma geçebilir ve proje ile çalışmanın keyfini çıkarabilirsiniz. Ancak, uygulamanın programını ihtiyacınıza uyacak şekilde değiştirmek istiyorsanız, daha fazlasını okuyabilirsiniz.
İşleme kodu için komple program dosyası edilebilir buradan indirilebilir. Bu Zip, uygulamanın çalıştığı kod ve görüntü kaynağına sahip olacaktır. Kodu açtıktan sonra, ihtiyacınıza göre uyarlamak için aşağıdaki satırlarda ince ayar yapabilirsiniz.
Daha önce de belirtildiği gibi, İşleme Arduino'ya benzer. Dolayısıyla bir void kurulumu ve void döngü (burada çiz) işlevlerine de sahiptir. Geçersiz kurulum işlevinin içinde, telefonun Bluetooth'una Arduino'nun Bluetooth'una bağlanmasını söyleyeceğiz. Buradaki cihazımın adı "HC-05" olduğundan kod satırım
bt.start (); // BT bağlantılarını dinlemeye başlayın bt.getPairedDeviceNames (); bt.connectToDeviceByName ("HC-05"); // HC-06 bluetooth modülümüze bağlanın
İçeride Sonraki load_buttons () işlevleri yapabilirsiniz istediğiniz kadar düğmeler olarak çizin. Uygulamada gösterildiği gibi 10 düğme çizdim. Bunu takiben, hangi düğmeye dokunduğunuzu algılamak için kullanılan read_buttons () işlevine sahibiz . Her düğmenin belirli bir rengi vardır, bu nedenle bir kullanıcı ekrana dokunduğunda hangi renge dokunduğunu kontrol eder ve hangi düğmeye dokunduğunu belirleriz. Bir düğme oluşturmak ve onu renge göre seçmek için örnek bir kod aşağıda gösterilmiştir
doldurma (255,145,3); rect (genişlik / 2-genişlik / 4, yükseklik / 2, genişlik / 4, yükseklik / 12); doldurma (255); metin ("25C", genişlik / 2-genişlik / 4, yükseklik / 2); // düğme 5 if (color_val == - 13589993) {bayt verileri = {'0'}; bt.broadcast (veri);}
"Bayt verisi = {'0'};" satırı çok önemli bir satır. Arduino'ya Bluetooth aracılığıyla hangi kodun gönderilmesi gerektiğine burada karar veriyoruz. Burada bu düğmeye basıldığında "0" karakteri Bluetooth'tan Arduino'ya gönderilir. Benzer şekilde farklı düğmeler için farklı bir karakter gönderebiliriz. Bu karakterler daha sonra Arduino tarafında karşılaştırılabilir ve ilgili işlem yapılabilir.
Devam edin ve kodun etrafında dolaşın, herhangi bir şüpheniz varsa yorum bölümünden bana ulaşın ve size yardımcı olmak için elimden geleni yapacağım.
Cep Telefonu kontrollü AC'nin çalışması:
Donanımınız, Arduino Kodunuz ve android uygulamalarınız ile hazır olduğunuzda çıktının tadını çıkarma zamanı. Arduino Kodunu Donanımınıza yükleyin ve AC'nize bakacak şekilde yerleştirin. Şimdi Cep telefonunuzda android uygulamasını açın, her şey beklendiği gibi çalışıyorsa aşağıda gösterildiği gibi " Connected to: device_name (bazı kodlar) " ifadesini görmeniz gerekir
Şimdi Android uygulamanızdaki herhangi bir düğmeye basın ve bir Uzaktan Kumandayı kullanıyormuşsunuz gibi AC'de ilgili bir işlemi tetiklemelidir. Kodu değiştirerek istediğiniz kadar düğme ekleyebilir ve hatta AC'nizi oda sıcaklığınıza veya mevcudiyetinize göre otomatikleştirebilirsiniz. Tam Arduino Kodunu ve Aşağıdaki Videoyu kontrol edin.
Umarım projeyi beğenmişsinizdir ve arkasındaki konsepti anlamışsınızdır. Her zaman olduğu gibi, bu işi yaparken herhangi bir sorunla karşılaşırsanız, forumları kullanarak sorularınızı gönderebilir ve bunları çözebilirsiniz.
Android Uygulamasını yüklemek için APK dosyası buradan indirilebilir.