Mündəricat:

Arduino Uzaqdan/Simsiz Proqramlaşdırma və Power Bank Evdə: 12 Addım (Şəkillərlə birlikdə)
Arduino Uzaqdan/Simsiz Proqramlaşdırma və Power Bank Evdə: 12 Addım (Şəkillərlə birlikdə)

Video: Arduino Uzaqdan/Simsiz Proqramlaşdırma və Power Bank Evdə: 12 Addım (Şəkillərlə birlikdə)

Video: Arduino Uzaqdan/Simsiz Proqramlaşdırma və Power Bank Evdə: 12 Addım (Şəkillərlə birlikdə)
Video: Kablosuz Arduino Programlama Kartı Yaptım | PCBWay 2024, Noyabr
Anonim
Image
Image
Əlavə Komponent
Əlavə Komponent

Problem.

PC yaxınlığında bir eskiz hazırlayıram və "debug" etmək üçün usb və serialdan istifadə edirəm, bu halda DHT12 üçün lib yaradıram, kitabxananın github -da bir versiyasını təqdim edirəm.

Ancaq bir problem ortaya çıxır: "temperatur 0 -dan aşağı düşəndə oxunan dəyər səhvdir".

İndi problemimi dondurucumda sınamalıyam (: P) və belə bir sadə vəziyyət üçün eskizi yenidən yazmaq və WIFI istifadə etmək istəmirəm.

Eskizi yenidən yazmadan əvvəlki kimi proqramlaşdırmaya davam etmək istəyirəm, amma Arduino dondurucuma getməlidir.

2 şeyə ehtiyacım var, biri batareyadır, amma nə qədər test etməli olduğumu bilmirəm, təkrar doldurulan bir batareyaya və Bluetooth kimi uzaqdan mikrokontrolörlə işləmək üçün bir adapterə ehtiyacım var.

Yeniləmə versiyası üçün mi saytına baxın

Addım 1: Əlavə Komponent

Əlavə Komponent
Əlavə Komponent
Əlavə Komponent
Əlavə Komponent

Uzaqdan əlaqə üçün istifadə edəcəyəm:

  1. Bluetooth adapteri:

    1. HC-05 (yalnız qismən sınaqdan keçirilmişdir)
    2. SPP C (eBay) (Axtarsanız 1,5 dollara tapa bilərsiniz)
    3. 0.1uf kondansatör (HC-05 üçün).

İstifadə edəcəyim enerji təchizatı üçün (arduino üçün sadə bir 9v batareya istifadə edə bilərsiniz, ancaq şarj edilə bilməz və nə qədər testə ehtiyacım olduğunu bilmirəm) kiçik bir şarj edilə bilən güc paketi:

  1. TP4056 Lityum Batareya Şarj Cihazı Modulu (eBay)
  2. 0.9V-5V-dan 5V DC-DC USB Gərginlik Dönüştürücü Step Up Booster Güc Təchizatı Modulu (eBay), Yalnız 600mha çıxışı var, Daha peşəkar> 1A-dan daha çox bir şey istəyirsinizsə bura getməlisiniz (Digi-key)
  3. 18560 Batareya tutacağı (Digi-Key) (SparkFun)
  4. 18560 Batareya (SparkFun) (Digi-Key) buradan satın alıram, bir batareya tutumu yoxlayıcısı yaradıram və görürəm ki, şəbəkədəki 18650 batareyanın əksəriyyəti saxta tutuma malikdir (testdə olan batareya 4500mha elan edilmiş və 1100mha realdır)
  5. 2 mövqe açarı (eBay)

Hamısını bir modulda istəyirsinizsə, buna baxa bilərsiniz (Digi-key)

Addım 2: Enerji təchizatı (sadə Power Bank və ya UPS)

Enerji təchizatı (sadə Power Bank və ya UPS)
Enerji təchizatı (sadə Power Bank və ya UPS)
Enerji təchizatı (sadə Power Bank və ya UPS)
Enerji təchizatı (sadə Power Bank və ya UPS)
Enerji təchizatı (sadə Power Bank və ya UPS)
Enerji təchizatı (sadə Power Bank və ya UPS)

Laboratoriyamda müxtəlif cihazlarım var (bir şey qurmaq üçün satın alın), amma bir az təcili şarj edilə bilən usb enerji təchizatı/batareya paketinin faydalı olduğunu düşünürəm, buna görə 2 sadə komponentlə bir cihaz hazırlayacağıq.

Günəş enerjisi hava stansiyamı yaratmaq üçün TP4056 Lityum Batareya Şarj Cihazı Modulu alıram.

Telefonumu müxtəlif batareya ilə doldurmaq üçün 5 addımlıq usb modulu var, gərginliyi 0.9-5v-dən sabit 5v-ə çevirir.

Bağlantı sxemində, modulu artırmadan əvvəl bir keçid əlavə etməli olduğumuzu görə bilərsiniz, çünki 5v almaq üçün davamlı cərəyanı boşaldır.

Güc bankı və ya UPS olaraq istifadə edilə bilər, şarj modulu eyni anda şarj edə və enerji təchizatı verə bilər.

Bağlantı sadədir, TP4056 batareya çıxışı batareyaya gedir, TPR056 çıxışı usb modulunu artırır, müsbət teldə 2 mövqe açarı əlavə edilməlidir.

Addım 3: Power Bank: İş yerində

Image
Image

Bu güc bankının/UPS -in standart istifadəsinin minimal videosu.

Addım 4: Uzaqdan əlaqə

Bluetooth Adapterini Arduino -ya qoşun və Serial Bağlantı olaraq istifadə edin
Bluetooth Adapterini Arduino -ya qoşun və Serial Bağlantı olaraq istifadə edin

USB kabel olmadan uzaq bir əlaqə yaratmaq üçün bluetooth modulunu serial ötürmə olaraq istifadə etmək istəyirəm.

Arduino ilə əlaqə qurmalı və proqramlaşdırmalıyıq. Bağlantı sxemi bluetooth adapterini proqramlaşdırmaq üçündür

Laboratoriyamda 2 modul HC-05 və SPP C var.

Ancaq CNC yönləndiricimlə simsiz əlaqə qurmaq üçün HC-05 istifadə edirəm, lakin aşağı qiymət SPP C kifayətdir.

Normalda serial ötürmə üçün 115200 baud dərəcəsi istifadə edirəm, buna görə də bluetooth modulumu bu nisbətə uyğun olaraq konfiqurasiya edirəm.

Addım 5: Bluetooth Modulunu Konfiqurasiya edin: HC-05 Clone

HC-05 üçün cnc-ni konfiqurasiya etmək üçün bu kodu istifadə edirəm.

Serial çıxış baud dərəcəsi burada təyin olunur:

#define SERIAL_SPEED 115200

Bluetooth rabitə ötürmə dərəcəsi burada:

#define BLUETOOTH_SPEED 38400

İlk dəfə bluetooth'u 9600-dən HC-06 cihazlarına, 38400-dən HC-05 cihazlarına konfiqurasiya etməyi təyin etməlisiniz.

Bluetooth baudrate -ni təyin etməkdən daha çox:

#define SET_BLUETOOTH_SPEED 115200

Yeni cihaz adı təyin edə bilərsiniz:

#define BT_NAME "TEST-Reef"

Ancaq HC bluetooth modulu olduqca təmiz və standartdır, lakin bu kod SPPC -də işləmir.

Addım 6: Bluetooth Modulunu Konfiqurasiya edin: HC-05 (zs-040)

Bu modul digərindən fərqlidir, əlaqə eynidir.

Əvvəlcə düymənin olub olmadığına diqqət yetirməlisiniz (konfiqurasiya rejiminə keçmək üçün eskizin yüksək pininə deyil, bu düyməyə basın). Yavaş -yavaş yanıb -sönəndə (hər 2 saniyədə) konfiqurasiya rejimindəsinizsə, konfiqurasiya rejimi cihazı 38400 baud sürətinə qoyur, buna görə də serialın və proqramın seriyasını həmin səs sürətinə qoymalısınız. Bu əmri daxil etməkdənsə:

AT

AT+ORGL AT+POLAR = 1, 0 AT+NAME = Test Reef AT+UART = 115200, 0, 0 AT+INIT

ATèORGL sıfırlama cihazına diqqət yetirin.

AT+INIT Səhv (17) verə bilər, amma narahat olmayın Bu artıq o rejimdədir.

Addım 7: Bluetooth Modulunu konfiqurasiya edin: SPP C

SPP C kodu HC-05 kimi o qədər də təmiz deyil, amma nəticə eyni olaraq qalır.

Serial çıxış baud dərəcəsi burada təyin olunur:

#define SERIAL_SPEED 115200

Bluetooth rabitə ötürmə dərəcəsi burada:

#detin BLUETOOTH_SPEED 38400

İlk dəfə bluetooth'u 9600-dən HC-06 cihazlarına, 38400-dən HC-05 cihazlarına konfiqurasiya etməyi təyin etməlisiniz.

Bluetooth baudrate -ni təyin etməkdən daha çox:

#define SET_BLUETOOTH_SPEED 115200

Yeni cihaz adı təyin edə bilərsiniz:

#define BT_NAME "TEST-Reef"

Addım 8: Serial Bağlantı Olaraq İstifadə etmək üçün Bluetooth Adapterini Arduino -ya qoşun

Bluetooth Adapterini Arduino -ya qoşun və Serial Bağlantı kimi istifadə edin
Bluetooth Adapterini Arduino -ya qoşun və Serial Bağlantı kimi istifadə edin
Bluetooth Adapterini Arduino -ya qoşun və Serial Bağlantı olaraq istifadə edin
Bluetooth Adapterini Arduino -ya qoşun və Serial Bağlantı olaraq istifadə edin

HC05 üçün qeyd etmək lazım olan yeganə şey, kondansatörün uzun ayağının (+) sıfırlanmasına, bluetooth adapterinin DTR (və ya MCU-INT və ya Vəziyyətə) gedəcəyinə, 0.1uf keramika kondansatöründən də istifadə edə bilərsiniz.

Mən HC-05-i proqramçı kimi yox, yalnız USB kabelinin serial ünsiyyəti üçün sınadığından SPP-C modulunu göstərəcəyəm.

Mənim vəziyyətimdəki SPP-C modulu kondansatör əlavə etsəm işləmir, amma onsuz əla işləyir: D.

Bluetooth adapterinin rx, mikro nəzarətçinin sıfırlanması üçün VCC və GND və DTR və ya MCU-INT və ya bluetooth adapterinin vəziyyətini bağlamağınızdan daha çox, tx mikro nəzarətçisinə və tx-dən rx-ə bağlanır.

Daha yaxşı bir sabitlik üçün, şəkildəki kimi RX bluetooth pininə qarşı bir gərginlik ayırıcı etmək yaxşıdır, çünki ötürmə gərginliyi 5v deyil, 3.3v -dir.

Addım 9: USB ilə sadə eskiz və yükləmə

Yükləmək üçün çox sadə bir eskiz hazırlayıram, hər 1500 millisaniyədə yalnız ardıcıl nömrələr yazılır.

Videoda USB kabel vasitəsilə standart istifadə göstərilir.

Addım 10: Bluetooth ilə Eyni Sketch Yükləmə

Image
Image

Bu videoda əvvəlcədən eskiz kodu dəyişdirmədən Bluetooth vasitəsilə uzaqdan yüklənir.

Addım 11: Real Test

Real Test
Real Test
Real Test
Real Test
Real Test
Real Test

İndi dondurucudan cavab almalıyam.

Dondurucunun dərinliyindən, kolbasaların yaxınlığındakı uzaqdan test, 0 -dan aşağı olduqda DHT12 kitabxanamda bir səhv olduğunu söylədi.

Addım 12: Təşəkkürlər

DHT12 lib -də olan səhv indi düzəldildi.

Tövsiyə: