Բովանդակություն:

Duերմաստիճանի և խոնավության տվյալների գրանցիչ Arduino- ից մինչև Android հեռախոս ՝ SD քարտի մոդուլով Bluetooth- ի միջոցով. 5 քայլ
Duերմաստիճանի և խոնավության տվյալների գրանցիչ Arduino- ից մինչև Android հեռախոս ՝ SD քարտի մոդուլով Bluetooth- ի միջոցով. 5 քայլ

Video: Duերմաստիճանի և խոնավության տվյալների գրանցիչ Arduino- ից մինչև Android հեռախոս ՝ SD քարտի մոդուլով Bluetooth- ի միջոցով. 5 քայլ

Video: Duերմաստիճանի և խոնավության տվյալների գրանցիչ Arduino- ից մինչև Android հեռախոս ՝ SD քարտի մոդուլով Bluetooth- ի միջոցով. 5 քայլ
Video: Как спрятать данные в ячейках Excel? 2024, Նոյեմբեր
Anonim
Duերմաստիճանի և խոնավության տվյալների գրանցիչ Arduino- ից մինչև Android հեռախոս ՝ SD քարտի մոդուլով Bluetooth- ի միջոցով
Duերմաստիճանի և խոնավության տվյալների գրանցիչ Arduino- ից մինչև Android հեռախոս ՝ SD քարտի մոդուլով Bluetooth- ի միջոցով

Ողջույն բոլորին, սա իմ առաջին հրահանգն է: Հուսով եմ, որ ես կօգնեմ ստեղծող համայնքին, քանի որ ինձ դա օգուտ է բերել:

Հաճախ մենք մեր նախագծերում օգտագործում ենք սենսորներ, բայց տվյալների հավաքման, պահման և փոխանցման համար հեռախոսներ կամ այլ սարքեր գտնելու միջոցը պատրաստ գործընթաց չէր: Այս հրահանգը ձեզ կառաջնորդի

  • Սենսորից տվյալների ձեռքբերում (DHT 11) - ջերմաստիճանի և խոնավության տվիչ:
  • Ձեռք բերված տվյալների պահպանումը SD քարտում SD քարտի մոդուլով:
  • Bluetooth- ի միջոցով անլար տվյալների փոխանցումը անհատական Android հավելվածին:
  • Ստացված սենսորի արժեքների պահպանումը որպես տեքստային ֆայլ (.txt ֆայլ):

Քայլ 1: Բաղադրիչների ցուցակ

Բաղադրիչների ցուցակ
Բաղադրիչների ցուցակ
Բաղադրիչների ցուցակ
Բաղադրիչների ցուցակ
Բաղադրիչների ցուցակ
Բաղադրիչների ցուցակ

Եկեք ներքև հավաքենք զորքերը `այս հիանալի նախագիծը պատրաստելու համար:

  • Arduino Uno (ցանկացած այլ arduino նույնպես հարմար կլինի)
  • միկրո SD քարտի մոդուլ:
  • SD քարտի մոդուլ (այն, ինչ ես օգտագործում եմ, 8 ԳԲ է, խորհուրդ է տրվում օգտագործել> = 32 ԳԲ)
  • HC05 - Bluetooth մոդուլ
  • DHT11 (ջերմաստիճանի և խոնավության ցուցիչ)
  • Bատկողների փունջ:
  • Android հեռախոս

Քայլ 2: Միացումներ

Միացումներ
Միացումներ

Componentsրագրի կիսով չափ կատարված է բաղադրիչների միացումը և միացումը: Նշված ապրանքները հեշտությամբ մատչելի են մանրածախ էլեկտրոնային խանութների և Amazon- ի նման առցանց կայքերում:

Arduino - HC05 կապ (Bluetooth):

  • +5V - Vcc
  • Գնդ - Գնդ
  • Pin 0 - Tx
  • Պին 1 - Rx

Arduino - SDcard մոդուլի միացում.

  • +5V - Vcc
  • Գնդ - Գնդ
  • Պին 11 - MOSI (Master Out Slave In)
  • Pin 12 - MISO (Master In Slave Out)
  • Պին 13 - SCk (ockամացույցի համաժամանակյա)
  • Pin 4 - CS (Chip Select)

Arduino - HC05 կապ (Bluetooth):

  • +5V - Vcc
  • Գնդ - Գնդ
  • Pin A0 - Ազդանշան

Քայլ 3: Ընթացակարգ

Ընթացակարգ
Ընթացակարգ

Միացրեք բոլոր մասերը, ինչպես նշված է նախորդ քայլին, դրանով մենք կարող ենք Arduino Ide- ում գրել կոդը ՝ մեր նպատակին հասնելու համար:

Մեր նախագծի երկրորդ մասն այն է, որ Android ծրագիրը ունենա սենսորների արժեքները, ցուցադրի արժեքները և պահի այն բջջայինի ֆայլում: Ես օգտագործել եմ Thunkable- ը ՝ Android հավելվածը պատրաստելու համար, ինչպես նաև տրամադրել եմ դրա համար apk և aia:

Քայլ 4: Arduino կոդ

Arduino ծածկագիրը տրված և բացատրված է ստորև:

Արդուինոյի ծածկագիրը հիմնականում ինքնուրույն բացատրվում է SD քարտերի գրադարանով և DHT11 գրադարանով: Bluetooth- ն օգտագործում է ապարատային սերիալ, որը arduino- ի pin0 և pin1- ն է, ուստի bluetooth- ի փոխանցումը կատարվում է Serial print () գործառույթների հետ, որն օգտագործում է I2C արձանագրությունը, իսկ SD քարտի մոդուլը ՝ SPI արձանագրությունը դրա հետ հաղորդակցվելու համար:

/*

* SPI ավտոբուսին կցված SD քարտ հետևյալ կերպ.

** MOSI - pin 11 ** MISO - pin 12 ** CLK - pin 13 ** CS - pin 4 (for MKRZero SD: SDCARD_SS_PIN) * * HC 05 մոդուլի միացում. ** TX - pin 0 (default) [կարող է լինել փոխվել է, եթե օգտագործվում է Softwareserial] ** RX - pin 1 (կանխադրված) [կարող է փոխվել, եթե Softwareserial- ը օգտագործվում է]

*/

#ներառում

#ներառել #ներառել

Ֆայլ myFile;

dht DHT; #սահմանեք DHT11_PIN A0- ը

void setup () {

// Բացեք սերիական հաղորդակցությունները և սպասեք նավահանգստի բացմանը. Serial.begin (9600); Serial.println ("Տեսակը, / t Կարգավիճակը, / t Խոնավությունը (%), / t peratերմաստիճանը (C)"); իսկ (! Սերիա) {; // սպասեք սերիական նավահանգստի միացմանը: Անհրաժեշտ է միայն մայրենի USB պորտի համար} DHTAcq (); sdCardWrite ("test3.txt"); sdCardRead ("test3.txt");

}

անվավեր DHTAcq ()

{Serial.println ("DHT11, / t"); int chk = DHT.read11 (DHT11_PIN); Serial.print (DHT. Խոնավություն, 1); Serial.print (", / t"); Serial.print (DHT. Ջերմաստիճան, 1); ուշացում (2000); }

void sdCardWrite (String fileNameStr)

{Serial.println («SD քարտի նախաստորագրում»); եթե (! SD.begin (4)) {Serial.println ("Initilization ձախողվեց."); վերադարձ; } Serial.println ("Initilization done!"); // բացեք ֆայլը: նկատի ունեցեք, որ միաժամանակ կարող է բացվել միայն մեկ ֆայլ, // այնպես որ մյուսը բացելուց առաջ պետք է այն փակել: 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 («կատարված է»); */} else {// եթե ֆայլը չի բացվել, տպեք սխալ. Serial.println ("error გახსնում test.txt"); }}

void sdCardRead (լարային ֆայլի անուն)

{// վերաբացեք ֆայլը կարդալու համար. myFile = SD.open (fileName); if (myFile) {Serial.println ("test.txt:"); // կարդալ ֆայլից մինչև դրա մեջ այլ բան չկա. while (myFile.available ()) {Serial.write (myFile.read ()); } // փակել ֆայլը ՝ myFile.close (); } else {// եթե ֆայլը չի բացվել, տպեք սխալ. Serial.println ("error. test.txt"); }}

դատարկ շրջան () {

// կարգավորումից հետո ոչինչ չի պատահում //Serial.println("test 1.. 2.. 3 "); // ուշացում (1000); }

Քայլ 5: Android հավելված

Android հավելված
Android հավելված
Android հավելված
Android հավելված

Android ծրագիրը պատրաստվել է Thunkable հավելվածով ՝ քաշել և թողնել ծրագրավորմամբ: Այն տվյալները մուտքագրելու է էկրանին առկա պիտակի վրա և մեկ անգամ, երբ Store Data կոճակը սեղմված կլինի AppInventor/Data- ի գտնվելու վայրի վրա ՝ այն կոդին տրված ֆայլի անունով:

Նախագիծը կարող է երկարաձգվել ՝ ունենալով այն սենսորային տվյալները, որոնք մենք ցանկանում ենք ՝ փոխարինելով ցանկալի սենսորային մոդուլներով, և ծրագիրը կարող է երկարաձգվել ՝ տվյալները պահեստից վերցնելու և ծրագրին համապատասխան հարմարեցնելու համար:

Խորհուրդ ենք տալիս: