İçindekiler:
- Adım 1: Bileşen Listesi
- Adım 2: Bağlantılar:
- Adım 3: Prosedür
- Adım 4: Arduino Kodu:
- Adım 5: Android Uygulaması:
Video: Arduino'dan SD Kart Modülü ile Bluetooth Üzerinden Android Telefona Sıcaklık ve Nem Veri Kaydedici: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
Herkese Merhaba, Bu benim ilk Eğitilebilirliğim, Umarım bundan faydalandığım için yapımcı topluluğuna yardım ederim.
Projelerimizde sıklıkla sensörler kullanıyoruz ancak verileri toplamanın, saklamanın ve aktarmanın bir yolunu bulmayı hemen buluyoruz Telefonlar veya diğer cihazlar ve kablosuz, hazır bir süreç değildi. Bu Eğitilebilirlik size rehberlik edecek
- Sensörden Veri Alma (DHT 11) - sıcaklık ve nem sensörü.
- Alınan verilerin SD kart modülü ile SD kartta saklanması.
- Bluetooth kullanarak verileri kablosuz olarak özel yapılmış bir Android Uygulamasına aktarma.
- Alınan sensör değerlerinin metin dosyası (.txt dosyası) olarak saklanması.
Adım 1: Bileşen Listesi
Bu harika projeyi yapmak için askerleri toplamak için aşağı inelim.
- Arduino Uno (başka herhangi bir arduino da uygun olacaktır)
- mikro SD kart modülü.
- SD kart modülü (benim kullandığım 8 GB, >=32 GB kullanılması tavsiye edilir)
- HC05 - Bluetooth modülü
- DHT11 (Sıcaklık ve Nem Sensörü)
- Bir sürü jumper.
- Android telefon
Adım 2: Bağlantılar:
Bileşenlerin bir araya getirilmesi ve bağlanması proje için yarı yarıya tamamlandı. Bahsedilen ürünler, çoğu perakende elektronik mağazasında ve Amazon gibi çevrimiçi sitelerde kolayca bulunabilir.
Arduino - HC05 bağlantısı(Bluetooth):
- +5V - Vcc
- Gnd - Gnd
- Pin 0 - Tx
- Pin 1 - Rx
Arduino - SDcard modül bağlantısı:
- +5V - Vcc
- Gnd - Gnd
- Pin 11 - MOSI (Master Out Slave In)
- Pin 12 - MISO (Master In Slave Out)
- Pin 13 - SCk (Saat senkron)
- Pin 4 - CS (Çip Seçimi)
Arduino - HC05 bağlantısı(Bluetooth):
- +5V - Vcc
- Gnd - Gnd
- Pin A0 - Sinyal
Adım 3: Prosedür
Tüm parçaları bir önceki adımda anlatıldığı gibi bağlayın, bununla amacımıza ulaşmak için Arduino Ide içerisine kod yazabiliriz.
Projemizin ikinci kısmı ise sensör değerlerini almak, değerleri görüntülemek ve mobilde bir dosyada saklamak için bir Android uygulamasına sahip olmaktır. Android Uygulamasını yapmak için Thunkable'ı kullandım ve bunun için apk ve aia sağladım.
Adım 4: Arduino Kodu:
Arduino Kodu aşağıda verilmiş ve açıklanmıştır.
Arduino kodu çoğunlukla SD kart kitaplığı ve DHT11 kitaplığı ile kendini açıklayıcıdır. Bluetooth, arduino'nun pin0 ve pin1 olan donanım serilerini kullanır, dolayısıyla bluetooth aktarımı, I2C protokolünü kullanan Serial print() işlevleriyle gerçekleşir ve SD kart modülü, onunla iletişim kurmak için SPI protokolünü kullanır.
/*
* SPI veriyoluna aşağıdaki şekilde takılı SD kart:
** MOSI - pin 11 ** MISO - pin 12 ** CLK - pin 13 ** CS - pin 4 (MKRZero SD için: SDCARD_SS_PIN) * *HC 05 modül bağlantısı: ** TX - pin 0 (varsayılan)[olabilir Softwareserial kullanılıyorsa değiştirilir] ** RX - pin 1 (varsayılan) [Softwareserial kullanılıyorsa değiştirilebilir]
*/
#Dahil etmek
#include #include
Dosya myFile;
dht DHT; #define DHT11_PIN A0
geçersiz kurulum() {
// Seri iletişimi açın ve bağlantı noktasının açılmasını bekleyin: Serial.begin(9600); Serial.println("Tip, \tDurum, \tNem(%), \tSıcaklık(C)"); while (!Seri) {; // seri bağlantı noktasının bağlanmasını bekleyin. Yalnızca yerel USB bağlantı noktası için gereklidir } DHTAcq(); sdCardWrite("test3.txt"); sdCardRead("test3.txt");
}
geçersiz DHTAcq()
{ Serial.println("DHT11,\t"); int chk = DHT.read11(DHT11_PIN); Seri.baskı(DHT.nem, 1); Seri.print(", \t"); Seri.baskı(DHT.sıcaklık, 1); gecikme(2000); }
void sdCardWrite(Dize dosyaAdıStr)
{ Serial.println("SD kart başlatılıyor"); if (!SD.begin(4)) { Serial.println("Başlatma başarısız."); dönüş; } Serial.println("Başlatma tamamlandı!"); // dosyayı aç. aynı anda yalnızca bir dosyanın açılabileceğine dikkat edin, // bu nedenle başka bir dosyayı açmadan önce bunu kapatmanız gerekir. myFile = SD.open(fileNameStr, FILE_WRITE); // dosya açıldıysa, ona yazın: if (myFile) { myFile.println("DHT11, \t"); int chk = DHT.read11(DHT11_PIN); myFile.print(DHT.nem, 1); myFile.print(", \t"); myFile.print(DHT.temperature, 1); myFile.close(); Serial.println("bitti!"); gecikme(200); /*Serial.print("test.txt'ye yazılıyor…"); myFile.println("1, 2, 3 testi."); // dosyayı kapat: myFile.close(); Serial.println("bitti."); */ } else { // dosya açılmadıysa bir hata yazdırın: Serial.println("test.txt açılırken hata oluştu"); } }
geçersiz sdCardRead(Dize dosyasıAdı)
{ // dosyayı okumak için yeniden açın: myFile = SD.open(fileName); if (myFile) { Serial.println("test.txt:"); // dosyadan başka bir şey kalmayana kadar oku: while (myFile.available()) { Serial.write(myFile.read()); } // dosyayı kapat: myFile.close(); } else { // dosya açılmadıysa bir hata yazdırın: Serial.println("test.txt açılırken hata oluştu"); } }
boşluk döngüsü () {
// kurulumdan sonra hiçbir şey olmuyor //Serial.println("test 1.. 2.. 3"); //gecikme(1000); }
Adım 5: Android Uygulaması:
Android uygulaması Thunkable uygulaması ile sürükle bırak programlama ile yapılmıştır. Verileri ekrandaki etikete kaydedecek ve AppInventor/Data konumunda kodu verilen dosya adıyla Verileri Sakla düğmesine basıldığında.
Proje, istenen sensör modülleri ile değiştirilerek, istediğimiz sensör verilerinin çevrimdışı depolanmasına sahip olacak şekilde genişletilebilir ve uygulama, verileri depodan almak ve uygulamaya uyacak şekilde manipüle etmek için genişletilebilir.
Önerilen:
Arduino UNO ve SD-Kart ile Nem ve Sıcaklık Gerçek Zamanlı Veri Kaydedici Nasıl Yapılır - Proteus'ta DHT11 Veri Kaydedici Simülasyonu: 5 Adım
Arduino UNO ve SD-Kart ile Nem ve Sıcaklık Gerçek Zamanlı Veri Kaydedici Nasıl Yapılır | Proteus'ta DHT11 Veri Kaydedici Simülasyonu: Giriş: merhaba, ben Liono Maker, işte YouTube bağlantısı. Arduino ile yaratıcı projeler yapıyoruz ve gömülü sistemler üzerinde çalışıyoruz
Arduino ile SD Kart Modülü: Veri Nasıl Okunur/Yazılır: 14 Adım
Arduino ile SD Kart Modülü: Veri Nasıl Okunur/Yazılır: Genel Bakış Verilerin saklanması, her projenin en önemli bölümlerinden biridir. Veri türüne ve boyutuna göre verileri saklamanın birkaç yolu vardır. Depolama aygıtları arasında en pratik olanlardan biri de SD ve micro SD kartlar
GPRS Üzerinden TCP/IP Bağlantısı: SIM900A Modülü Kullanılarak Sunucuya Nasıl Veri Gönderilir: 4 Adım
GPRS Üzerinden TCP/IP Bağlantısı: SIM900A Modülünü Kullanarak Sunucuya Nasıl Veri Gönderilir: Bu dersimizde sizlere sim900 modülü kullanılarak TCP sunucusuna nasıl veri gönderileceğini anlatacağım. Ayrıca sunucudan istemciye nasıl veri alabileceğimizi göreceğiz (GSM modülü)
Sıcaklık, PH ve Çözünmüş Oksijen için Veri Kaydedici Nasıl Yapılır: 11 Adım (Resimlerle)
Sıcaklık, PH ve Çözünmüş Oksijen için Veri Kaydedici Nasıl Yapılır: Amaçlar: ≤ 500 $ için bir veri kaydedici yapın. Sıcaklık, pH ve DO için verileri bir zaman damgasıyla ve I2C iletişimini kullanarak depolar. Neden I2C (Entegre Devre)? Her birinin sahip olduğu göz önüne alındığında, aynı hatta birçok sensör toplanabilir
Arduino İle Sıcaklık ve Nem Göstergesi ve Veri Toplama ve İşleme: 13 Adım (Resimli)
Arduino ve İşleme ile Sıcaklık ve Nem Görüntüleme ve Veri Toplama: Giriş: Bu, bir Arduino kartı, bir Sensör (DHT11), bir Windows bilgisayar ve Sıcaklık, Nem verilerini dijital olarak görüntülemek için bir İşleme (ücretsiz indirilebilir) programı kullanan bir projedir. çubuk grafik formu, saati ve tarihi görüntüleyin ve bir sayım süresi çalıştırın