Агуулгын хүснэгт:
- Алхам 1: Бүрэлдэхүүн хэсгүүдийн жагсаалт
- Алхам 2: Холболтууд:
- Алхам 3: Процедур
- Алхам 4: Arduino код:
- Алхам 5: Андройд апп:
Видео: Bluetooth -ээр дамжуулан SD картны модуль бүхий Arduino -аас Андройд утас хүртэлх температур ба чийгшлийн мэдээлэл бүртгэгч: 5 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:04
Сайн байцгаана уу, энэ бол миний анхны зааварчилгаа юм, надад ашиг тусаа өгсөн тул би үйлдвэрлэгчдийн нийгэмлэгт тусална гэж найдаж байна.
Ихэнхдээ бид төслүүддээ мэдрэгч ашигладаг боловч өгөгдөл цуглуулах, хадгалах, дамжуулах арга замыг хайж олох, утас эсвэл бусад төхөөрөмжийг шууд утасгүй холбож өгөх нь бэлэн процесс биш юм. Энэхүү зааварчилгаа нь танд туслах болно
- Мэдрэгчээс мэдээлэл авах (DHT 11) - температур ба чийгшлийн мэдрэгч.
- SD картны модулийг ашиглан олж авсан өгөгдлийг хадгалах.
- Bluetooth ашиглан өгөгдлийг утасгүй дамжуулж, захиалгат Android апп руу шилжүүлэх.
- Хүлээн авсан мэдрэгчийн утгыг текст файл (.txt файл) болгон хадгалах.
Алхам 1: Бүрэлдэхүүн хэсгүүдийн жагсаалт
Энэхүү гайхалтай төслийг хийхийн тулд цэргүүдийг цуглуулахаар бууцгаая.
- Arduino Uno (өөр ямар ч ардуино тохиромжтой байх болно)
- микро SD картны модуль.
- SD картны модуль (миний ашигладаг 8 ГБ,> = 32 ГБ ашиглахыг зөвлөж байна)
- HC05 - Bluetooth модуль
- DHT11 (Температур ба чийгшил мэдрэгч)
- Үсрэгчдийн багц.
- Андройд утас
Алхам 2: Холболтууд:
Бүрэлдэхүүн хэсгүүдийг нэгтгэх, холбох ажлыг төслийн хувьд хагасаар хийсэн болно. Дээр дурдсан бүтээгдэхүүнийг Амазон гэх мэт ихэнх жижиглэн худалдааны электрон дэлгүүрүүд болон онлайн сайтуудаас хялбархан авах боломжтой.
Arduino - HC05 холболт (Bluetooth):
- +5V - Vcc
- Гнд - Гнд
- Зүү 0 - Tx
- Зүү 1 - Rx
Arduino - SDcard модулийн холболт:
- +5V - Vcc
- Гнд - Гнд
- Pin 11 - MOSI (Master Out Slave In)
- Pin 12 - MISO (Боолчлолд орсон мастер)
- Pin 13 - SCk (Цаг синхрон)
- Pin 4 - CS (Чип сонгох)
Arduino - HC05 холболт (Bluetooth):
- +5V - Vcc
- Гнд - Гнд
- A0 зүү - Дохио
Алхам 3: Процедур
Өмнөх алхамд дурдсан бүх эд ангиудыг холбосноор бид зорилгодоо хүрэхийн тулд Arduino Ide дээр код бичиж болно.
Манай төслийн хоёрдахь хэсэг бол Андройд аппликейшн нь мэдрэгчийн утгыг хүлээн авч, утгыг харуулах, гар утсандаа файлд хадгалах явдал юм. Би Thunkable -ийг ашиглан Андройд аппликэйшн хийхээс гадна apk болон aia -ийг өгсөн.
Алхам 4: Arduino код:
Arduino кодыг доор тайлбарлаж өгсөн болно.
Arduino код нь ихэвчлэн SD картны сан болон DHT11 номын сангаар тайлбарлагддаг. Bluetooth нь arduino -ийн pin0 ба pin1 гэсэн тоног төхөөрөмжийн цуваа ашигладаг тул bluetooth дамжуулалт нь I2C протоколыг ашигладаг Serial print () функцуудаар хийгддэг бөгөөд SD картны модуль нь түүнтэй холбогдохын тулд SPI протоколыг ашигладаг.
/*
* SD картыг SPI автобусанд дараах байдлаар хавсаргасан болно.
** MOSI - pin 11 ** MISO - pin 12 ** CLK - pin 13 ** CS - pin 4 (MKRZero SD: SDCARD_SS_PIN) * * HC 05 модулийн холболт: ** TX - pin 0 (анхдагч) [байж болно Softwareserial ашиглаж байгаа бол өөрчлөгдсөн] ** RX - pin 1 (анхдагч) [Softwareserial ашиглаж байгаа бол өөрчлөх боломжтой]
*/
#оруулах
#оруулах #оруулах
MyFile файл хийх;
DHT; #тодорхойлох DHT11_PIN A0
хүчингүй тохиргоо () {
// Цуваа холболтыг нээж, порт нээгдэхийг хүлээнэ үү: Serial.begin (9600); Serial.println ("Type, / tStatus, / tHumidity (%), / tTemperature (C)"); while (! Цуваа) {; // цуваа порт холбогдохыг хүлээнэ үү. Зөвхөн эх USB портод хэрэгтэй} DHTAcq (); sdCardWrite ("test3.txt"); sdCardRead ("test3.txt");
}
хүчингүй DHTAcq ()
{Serial.println ("DHT11, / t"); int chk = DHT.read11 (DHT11_PIN); Цуврал хэвлэх (DHT. чийгшил, 1); Serial.print (", / t"); Цуваа.хэвлэх (DHT температур, 1); саатал (2000); }
хүчингүй sdCardWrite (String fileNameStr)
{Serial.println ("SD картыг эхлүүлж байна"); if (! SD.begin (4)) {Serial.println ("Initilization амжилтгүй болсон."); буцах; } Serial.println ("Initilization дууссан!"); // файлыг нээнэ үү. Нэг удаад зөвхөн нэг файл нээгдэх боломжтой гэдгийг анхаарна уу, // та нээхээс өмнө үүнийг хаах хэрэгтэй. myFile = SD.open (fileNameStr, FILE_WRITE); // хэрэв файл хэвийн нээгдсэн бол түүнд бичээрэй: if (myFile) {myFile.println ("DHT11, / t"); int chk = DHT.read11 (DHT11_PIN); myFile.print (DHT. чийгшил, 1); myFile.print (", / t"); myFile.print (DHT температур, 1); myFile.close (); Serial.println ("хийсэн!"); саатал (200); /*Serial.print("Test.txt дээр бичиж байна … "); myFile.println ("туршилтын 1, 2, 3"); // файлыг хаах: myFile.close (); Serial.println ("хийсэн."); */} өөр {// хэрэв файл нээгдээгүй бол алдааг хэвлэ: Serial.println ("test.txt нээх алдаа"); }}
void sdCardRead (String fileName)
{// файлыг уншихаар дахин нээнэ үү: myFile = SD.open (fileName); if (myFile) {Serial.println ("test.txt:"); // өөр зүйл байхгүй болтол файлыг уншина уу: while (myFile.available ()) {Serial.write (myFile.read ()); } // файлыг хаах: myFile.close (); } else {// хэрэв файл нээгдээгүй бол алдааг хэвлэ: Serial.println ("test.txt нээх алдаа"); }}
void loop () {
// тохируулсны дараа юу ч болохгүй //Serial.println("test 1.. 2.. 3 "); // саатал (1000); }
Алхам 5: Андройд апп:
Андройд аппликейшнийг чирэх, буулгах програмтай Thunkable програмын тусламжтайгаар бүтээсэн болно. Энэ нь өгөгдлийг дэлгэцэн дээрх шошгон дээр бүртгэх бөгөөд кодыг өгсөн файлын нэрээр AppInventor/Data байршилд хадгалах товчийг дарсны дараа.
Төслийг хүссэн мэдрэгчийн модулийг орлуулах замаар хүссэн мэдрэгчийн өгөгдлийг офлайн хадгалах боломжтой болгож өргөтгөх боломжтой бөгөөд програмыг хадгалах сангаас өгөгдлийг авах, өргөдөлд нийцүүлэн удирдах зорилгоор өргөтгөх боломжтой.
Зөвлөмж болгож буй:
NodeMCU Lua MicroPython -ийн температур ба чийгшлийн бүртгэл, Wifi болон гар утасны статистик бүхий 6 долларын хямд самбар: 4 алхам
NodeMCU Lua MicroPython -ийн температур ба чийгшлийн бүртгэл, Wifi болон гар утасны статистик бүхий 6 долларын хямд самбар: Энэ бол үндсэндээ үүлэрхэг цаг агаарын станц бөгөөд та утсан дээрх өгөгдлөө шалгах эсвэл зарим утсыг шууд дэлгэц болгон ашиглах боломжтой. , өрөөнд, хүлэмж, лаборатори, хөргөлтийн өрөө эсвэл бусад газарт дуусгах боломжтой
LoRa Arduino, Esp8266 эсвэл Esp32: 15 алхам бүхий бага зардалтай E32 (sx1278/sx1276) төхөөрөмж бүхий 3 км -ээс 8 км хүртэлх утасгүй холбоо: 15 алхам
LoRa Arduino, Esp8266 эсвэл Esp32 -д зориулсан бага өртөгтэй E32 (sx1278/sx1276) төхөөрөмж бүхий 3Km -аас 8Km хүртэлх утасгүй холбоо: Би Semtech цувралын LoRa төхөөрөмж дээр суурилсан EBYTE E32 -ийг удирдах номын сан, маш хүчирхэг, энгийн бөгөөд хямд төхөөрөмжтэй. 3км -ийн хувилбар энд, 8км -ийн хувилбар энд байна Тэд 3000м -ээс 8000м -ийн зайд ажиллах боломжтой бөгөөд тэдгээр нь маш олон онцлог шинж чанартай байдаг
DHT 11 температур ба чийгшлийн модуль бүхий Arduino: 7 алхам
Arduino DHT 11 -ийн температур ба чийгшлийн модультай: “Ангараг гараг нь хүний төсөөллийг өөр гариг шиг татдаггүй. Татах хүчнээс илүү хүчтэй тул шөнийн цэлмэг тэнгэрт гялалзаж буй улаан оршихуйн нүдийг татдаг.” Манай физикийн анги нь 10 x 10 x 10 см хэмжээтэй шоо бариулах үүрэгтэй
ESP8266: 3 алхам ашиглан дэлгэцтэй температур ба чийгшил бүхий интернет бүртгэгч
ESP8266 ашиглан дэлгэцтэй температур ба чийгшил бүхий интернет бүртгэгч: Би танд таалагдах болно гэж бодож буй жижиг төслийг хуваалцахыг хүссэн юм. Энэ бол дэлгэцтэй жижиг, удаан эдэлгээтэй интернетийн температур, чийгшил бүхий интернет бүртгэгч юм. Энэ нь emoncms.org -д бүртгэгддэг бөгөөд дотооддоо Raspberry PI эсвэл өөрийн emoncm -д бүртгэгддэг
ESP8266 бүхий SD картны модуль: 6 алхам
ESP8266 -тэй SD картны модуль: Энэхүү угсралтад бид ESP8266 -тай холбогдсон SD карттай болно. Бид температур, чийгшлийг хэмждэг, SD карт руу илгээдэг DHT22 төхөөрөмжийг байрлуулсан бөгөөд хэлхээнд 43.40, 26.80 -ийн температурыг харуулдаг. Тэр болгонд би