» Elektronik » Arduino »Klien untuk openweathermap.org berdasarkan Wemos d1 mini

Klien untuk openweathermap.org berdasarkan Wemos d1 mini


Idea ini dipinjam dari projek. Paparan cuaca ESP8266.

Saya mengambil keputusan untuk memikirkannya.
Tugas-tugas berikut telah ditetapkan:
  1. Kemas kini kod berkaitan penggunaan versi baru perpustakaan ArduinoJson.h.
  2. Tulis semula kod menggunakan fungsi millis () dan bukannya fungsi kelewatan (). Sudah jelas bahawa menggunakan kelewatan untuk menetapkan jeda antara menukar maklumat pada paparan, adalah mustahil untuk melaksanakan kawalan butang;
  3. Buat muat turun lakaran melalui Wifi;
  4. Minggir dari Wemos D1 R2 yang besar di mini Wemos D1;
  5. Bila boleh Russify paparan;
  6. Gunakan kes siap dengan lubang butang untuk peranti berdasarkan LCD1602;
  7. Gunakan butang 6x6 standard yang disolder ke papan roti. Tambahkan butang kawalan lampu latar, butang karusel untuk menukar data yang dipaparkan dan butang untuk memaksa kemas kini data dari pelayan.


Komponen-komponen berikut digunakan:
  1. Kes itu diperbuat daripada plastik ABS dengan set penutup untuk butang;
  2. Nylon struts 6 + 5 mm lelaki M3 hitam, 4 pcs;
  3. M3 nilon kacang hitam, 4 pcs;
  4. Nylon jawatan 6 + 5 mm lelaki M2 putih, 3 pcs;
  5. Nylon berdiri 6 mm ibu putih, 1 pc;
  6. Nylon berdiri 8 mm ibu putih, 1 pc;
  7. Rak nilon 10mm ibu putih, 2 pcs;
  8. LCD 1602 (I2C), kuning;
  9. Wemos d1 mini;
  10. Wemos d1 DC-Power shield;
  11. Lembaga roti papan 3x7;
  12. Butang 6x6, ketinggian 7 mm, 3pcs;
  13. Dupont wayar 10cm ibu-ibu, 4 pcs;
  14. 24 Wayar AWG hitam dan merah;
  15. Wayar silikon 20 AWG biru dan putih;
  16. Resistors 5 kOhm - 2 pcs, 10 kOhm - 1 pc (yang datang ke tangan);
  17. Penyesuai kuasa 9V 1A;
  18. Pelekat epoksi dua komponen.


Kes yang digunakan mempunyai beberapa kelebihan. Pertama, sebagai tambahan kepada paparan, standard 3x7 standard decoupling board, dengan komponen dipasang di atasnya di kedua sisi, sesuai dengan ketinggian. Kedua, pada dua hujung ia mempunyai bukaan segi empat tepat untuk penyejukan. Ternyata jumper di antara lubang-lubang ini dipotong dengan sempurna oleh mini-fail 3 dan 4 mm. Jika anda memotong beberapa pelompat dan memotong lubang segi empat tepat kecil dalam kes itu, maka penyambung kuasa DC-005 berjalan sempurna ke lubang geometri kompleks. Juga, belakang kes ini mempunyai lubang persegi yang besar, yang, nampaknya, sepatutnya memasang bateri.Melaluinya, ia adalah mudah untuk menyambung sesuatu di dalam tanpa membongkar kes itu. Selanjutnya, ia hanya boleh ditutup dengan kaca atau plastik.

Bina kemajuan:
Pertama, prototaip dibuat pada papan roti.

Kemudian kes itu dimuktamadkan dengan fail.

Selepas itu, komponen utama dipateri dan pemasangan dilakukan. Kaki dibengkokkan khas supaya sendi yang boleh dilepaskan sesuai dengan ketinggian. Beberapa rak nilon terpaksa difailkan supaya semua butang berada pada ketinggian yang sama.




Akibatnya, bahagian depan papan dengan butang, perintang dan wayar adalah seperti berikut:

Akibatnya, bahagian dalam peranti kelihatan seperti ini:

Apabila dipasang, peranti kelihatan seperti ini:





Mengatasi masalah:
  1. Untuk masa yang lama saya tidak dapat memahami mengapa butang tidak berfungsi, walaupun multimeter menunjukkan dengan jelas 0 apabila butang ditekan dan 4.6 - 5.0 V apabila ditekan (bergantung kepada bekalan kuasa). Ternyata dalam peranti Wemos / Lolin adalah perlu untuk menunjukkan nombor GPIO sebagai nombor pin dalam lakaran. Sebagai contoh, D5 adalah GPIO14. Jadi ini adalah pin ke-14.
    const int buttonPin = 14;

  2. Untuk menunjukkan cuaca, keadaan diperlukan:
    currentMillis - previousMillis == weatherTime

    Surat-menyurat yang ketat, kerana ia mesti dilakukan sekali sahaja.
    Untuk membuat permintaan kepada pelayan, keadaan diperlukan:
    currentMillis - previousMillis> = getDataTime

    Pematuhan yang longgar, kerana ia dilaksanakan sehingga bendera "data diterima" ditetapkan.
    Malah, ini tidak jelas, dan untuk memahami ini, ia mengambil masa yang lama.
  3. Saya juga harus menyeksa diri saya dengan tindak balas pelayan:
    String weather = root ["weather"] [0] ["main"];
    Penerangan rentetan = root ["cuaca"] [0] ["description"];

    Zero adalah benar-benar unobvious. Ternyata terdapat dua stesen cuaca di Moscow, dan yang kedua tidak selalu berfungsi (untuk menerima data daripadanya, anda mesti menentukan [1] jika ia aktif).

Repositori dengan kod dan perpustakaan terletak di sini.
5.5
8.5
10

Tambah komen

    • senyumtersenyumxaxaokdontknowyahoonea
      bosawalbodohyaya-yaagresifrahsia
      maaftariandance2dance3pengampunanmembantuminuman
      berhentikawan-kawanbaikgoodgoodwiseltolaklidah
      asapbertepuk tangancraymengisytiharkanderisivejangan dengarmuat turun
      panasberalunketawa1mdamesyuaratmoskingnegatif
      not_ipopcornmenghukumbacamenakutkanmenakutkancarian
      mengejekterima kasihinito_clueumnikakutbersetuju
      burukbeeeblack_eyeblum3memerahbermegahkebosanan
      ditapiskesenanganrahsia2mengancamkemenanganyusun_bespectacled
      shokrespektloldiingatiselamat datangkrutoyya_za
      ya_dobryipembantune_huliganne_othodifludlarangantutup
7 komen
ino53, adalah mengejutkan bahawa kami bertemu di absen, membaca artikel bukan tentang penguat dan BP. Walaupun tidak menghairankan. Dan kira-kira setahun saya meneka untuk masa yang lama. Saya 67, tetapi itu bukan perkara.
Terima kasih, saya akan tahu mengenai perkara yang baik.
Lelaki, nama samaran saya adalah inisial dan tahun kelahiran, 1953. Saya mempunyai 42 tahun pengalaman kejuruteraan dalam rekod kerja saya, saya tidak tahu tentang amatur - bapa (bukan Lukashenko, kita tidak mempunyai ahli-ahli sihir), mengatakan bahawa saya mula merebut seterika sebelum bercakap. Saya tidak faham apa-apa yang ditulis, tetapi ini adalah langkah seterusnya, dilakukan dengan baik.
Penulis
Saya berbuat demikian. Pada akhir http: //arduino.esp8266.com / stabil / package_esp8266com_index.json mempunyai sokongan untuk papan ini.
Dan anda boleh menggunakan program ini Arduino IDE?
Penulis
Nah, saya secara peribadi mengarahkan dua papan v2.1.0 Wemos D1 R2 setahun yang lalu (mereka bekerja dengan pemandu cp210x). Dan dua Wemos d1 mini setengah tahun lalu. Salah satu R2 D1 datang dengan perintang yang jatuh dari litar bekalan 12 volt. Nah, saya melihat litar itu, mendapati perintang, dipateri, ia berfungsi. Jika tidak, saya tidak perasan sebarang masalah lagi. Dari segi populariti, kira-kira seperti NodeMCU, adalah pelik bahawa mereka tidak pernah mendengar.
Saya belajar tentang Wemos dari artikel anda, harga dan ciri-ciri menarik, tetapi bagaimana dengan ketahanan?

Kami menasihati anda untuk membaca:

Bawa ia untuk telefon pintar ...