Სარჩევი:

ტემპერატურისა და ტენიანობის მონაცემთა ჩამწერი Arduino– დან Android ტელეფონამდე SD ბარათის მოდულით Bluetooth– ის საშუალებით: 5 ნაბიჯი
ტემპერატურისა და ტენიანობის მონაცემთა ჩამწერი Arduino– დან Android ტელეფონამდე SD ბარათის მოდულით Bluetooth– ის საშუალებით: 5 ნაბიჯი

ვიდეო: ტემპერატურისა და ტენიანობის მონაცემთა ჩამწერი Arduino– დან Android ტელეფონამდე SD ბარათის მოდულით Bluetooth– ის საშუალებით: 5 ნაბიჯი

ვიდეო: ტემპერატურისა და ტენიანობის მონაცემთა ჩამწერი Arduino– დან Android ტელეფონამდე SD ბარათის მოდულით Bluetooth– ის საშუალებით: 5 ნაბიჯი
ვიდეო: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, ნოემბერი
Anonim
ტემპერატურისა და ტენიანობის მონაცემთა ჩამწერი Arduino– დან Android ტელეფონამდე SD ბარათის მოდულით Bluetooth– ის საშუალებით
ტემპერატურისა და ტენიანობის მონაცემთა ჩამწერი Arduino– დან Android ტელეფონამდე SD ბარათის მოდულით Bluetooth– ის საშუალებით

გამარჯობა ყველას, ეს არის ჩემი პირველი ინსტრუქცია, ვიმედოვნებ, რომ დავეხმარები შემქმნელ საზოგადოებას, რადგან ამით ვისარგებლე.

ხშირად ჩვენ ვიყენებთ სენსორებს ჩვენს პროექტებში, მაგრამ მონაცემების შეგროვების, შენახვისა და გადაცემის ტელეფონების ან უკაბელო საშუალებების პოვნა არ იყო მზა პროცესი. ეს ინსტრუქცია დაგეხმარებათ

  • მონაცემების მოპოვება სენსორიდან (DHT 11) - ტემპერატურისა და ტენიანობის სენსორი.
  • შეძენილი მონაცემების შენახვა SD ბარათში SD ბარათის მოდულით.
  • მონაცემთა გადაცემა უკაბელო Bluetooth– ის გამოყენებით Android– ის პერსონალურ აპლიკაციაში.
  • მიღებული სენსორის მნიშვნელობების შენახვა ტექსტურ ფაილში (.txt ფაილი).

ნაბიჯი 1: კომპონენტების სია

კომპონენტების სია
კომპონენტების სია
კომპონენტების სია
კომპონენტების სია
კომპონენტების სია
კომპონენტების სია

მოდი ჯარი შევიკრიბოთ ამ გასაოცარი პროექტის განსახორციელებლად.

  • Arduino Uno (ნებისმიერი სხვა arduino ასევე იქნება შესაფერისი)
  • მიკრო SD ბარათის მოდული.
  • SD ბარათის მოდული (ის, რასაც მე ვიყენებ არის 8 GB, გირჩევთ გამოიყენოთ> = 32 GB)
  • HC05 - Bluetooth მოდული
  • DHT11 (ტემპერატურის და ტენიანობის სენსორი)
  • მხტუნავების თაიგული.
  • Android ტელეფონი

ნაბიჯი 2: კავშირები:

კავშირები
კავშირები

კომპონენტების გაერთიანება და დაკავშირება პროექტისთვის ნახევარ გზაზეა. ნახსენები პროდუქტები ადვილად ხელმისაწვდომია ელექტრონული მაღაზიების უმეტესობაში და ონლაინ საიტებზე, როგორიცაა Amazon.

Arduino - HC05 კავშირი (Bluetooth):

  • +5V - Vcc
  • გნდ - გნდ
  • Pin 0 - Tx
  • პინი 1 - Rx

Arduino - SDcard მოდულის კავშირი:

  • +5V - Vcc
  • გნდ - გნდ
  • პინი 11 - MOSI (Master Out Slave In)
  • პინ 12 - MISO (Master In Slave Out)
  • პინი 13 - SCk (საათი სინქრონული)
  • პინი 4 - CS (ჩიპის არჩევა)

Arduino - HC05 კავშირი (Bluetooth):

  • +5V - Vcc
  • გნდ - გნდ
  • Pin A0 - სიგნალი

ნაბიჯი 3: პროცედურა

Პროცედურა
Პროცედურა

შეაერთეთ ყველა ნაწილი, როგორც წინა ნაბიჯში იყო ნათქვამი, ამით ჩვენ შეგვიძლია დავწეროთ კოდი Arduino Ide– ში, რათა მივაღწიოთ ჩვენს მიზანს.

ჩვენი პროექტის მეორე ნაწილია: გვქონდეს Android აპლიკაცია, რომ მიიღოს სენსორის მნიშვნელობები, აჩვენოს ღირებულებები და შეინახოს იგი მობილურში ფაილში. მე გამოვიყენე Thunkable Android აპლიკაციის შესაქმნელად და ასევე მივაწოდე apk და aia ამისთვის.

ნაბიჯი 4: Arduino კოდი:

არდუინოს კოდი მოცემულია და განმარტებულია ქვემოთ.

არდუინოს კოდი უმეტესად თვითგამოხსნილია SD ბარათის ბიბლიოთეკით და DHT11 ბიბლიოთეკით. Bluetooth იყენებს ტექნიკის სერიალს, რომელიც არის arduino– ს pin0 და pin1, ამიტომ bluetooth გადაცემა ხდება Serial print () ფუნქციებით, რომელიც იყენებს I2C პროტოკოლს და SD ბარათის მოდული იყენებს SPI პროტოკოლს მასთან კომუნიკაციისთვის.

/*

* SD ბარათი მიმაგრებულია SPI ავტობუსზე შემდეგნაირად:

** MOSI - pin 11 ** MISO - pin 12 ** CLK - pin 13 ** CS - pin 4 (for MKRZero SD: SDCARD_SS_PIN) * * HC 05 მოდულის კავშირი: ** TX - pin 0 (ნაგულისხმევი) [შეიძლება იყოს შეიცვალა პროგრამული უზრუნველყოფის გამოყენებისას] ** RX - პინი 1 (ნაგულისხმევი) [შეიძლება შეიცვალოს, თუ პროგრამული უზრუნველყოფა გამოიყენება]

*/

#ჩართეთ

#ჩართეთ #ჩართეთ

ფაილის myFile;

dht DHT; #განსაზღვრეთ DHT11_PIN A0

void setup () {

// გახსენით სერიული კომუნიკაციები და დაელოდეთ პორტის გახსნას: Serial.begin (9600); Serial.println ("ტიპი, / t სტატუსი, / t ტენიანობა (%), / t ტემპერატურა (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.temperature, 1); დაგვიანება (2000); }

void sdCardWrite (სიმებიანი ფაილის სახელი)

{Serial.println ("SD ბარათის ინიციალიზაცია"); if (! SD.begin (4)) {Serial.println ("ინიციაცია ვერ მოხერხდა."); დაბრუნების; } Serial.println ("ინიციაცია გაკეთებულია!"); // გახსენით ფაილი. გაითვალისწინეთ, რომ მხოლოდ ერთი ფაილი შეიძლება იყოს გახსნილი ერთდროულად, // ასე რომ თქვენ უნდა დახუროთ ეს ერთი მეორის გახსნამდე. 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.temperature, 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 (სიმებიანი ფაილის სახელი)

{// ხელახლა გახსენით ფაილი წასაკითხად: myFile = SD.open (ფაილის სახელი); if (myFile) {Serial.println ("test.txt:"); // წაიკითხეთ ფაილიდან, სანამ მასში სხვა არაფერია: while (myFile.available ()) {Serial.write (myFile.read ()); } // დახურეთ ფაილი: myFile.close (); } else {// თუ ფაილი არ გაიხსნა, დაბეჭდეთ შეცდომა: Serial.println ("შეცდომა test.txt გახსნისას"); }}

ბათილი მარყუჟი () {

// დაყენების შემდეგ არაფერი ხდება //Serial.println("test 1.. 2.. 3 "); // დაგვიანება (1000); }

ნაბიჯი 5: Android აპლიკაცია:

Android აპლიკაცია
Android აპლიკაცია
Android აპლიკაცია
Android აპლიკაცია

Android აპლიკაცია დამზადებულია Thunkable პროგრამით, გადაათრიეთ და ჩამოაგდეთ პროგრამირებით. ის ჩაწერს მონაცემებს ეკრანზე არსებულ ეტიკეტზე და მას შემდეგ რაც მაღაზიის მონაცემების ღილაკს დააჭერთ ადგილმდებარეობის AppInventor/Data ფაილის სახელი, რომელსაც მიენიჭა კოდი.

პროექტი შეიძლება გაფართოვდეს სენსორის მონაცემების ხაზგარეშე შესანახად, სასურველი სენსორული მოდულებით ჩანაცვლებით და აპლიკაცია შეიძლება გაფართოვდეს მონაცემების საცავიდან ამოსაღებად და აპლიკაციის შესატყვისად მანიპულირებისთვის.

გირჩევთ: