Mündəricat:
- Addım 1: Crouton
- Addım 2: Veb Server / Redaktor
- Addım 3: Cihaz Özelleştirme
- Addım 4: Əmlakın Fərdiləşdirilməsi
- Addım 5: Metadata Fərdiləşdirmə
- Addım 6: Materiallar və Alətlər
- Addım 7: MCU Hazırlanması
- Addım 8: MCU mənzil hazırlığı
- Addım 9: Qulların Aşağı Yan Anahtarı/RESET Qız lövhəsinin qurulması
- Addım 10: Əsas komponentlərin yığılması
- Addım 11: Növbəti addımlar
Video: IOT123 - ASSIMILATE SENSOR HUB: ICOS10 CUSTOMIZATION WEBSEREVER: 11 Addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
ASSIMILATE SENSOR/ACTOR Slaves, Croutonda vizualizasiyanı təyin etmək üçün istifadə olunan metadata yerləşdirir. Bu quruluş, ESP8266 Master -a bir veb server əlavə edir, istifadəçi tərəfindən dəyişdirilə bilən bəzi konfiqurasiya fayllarına xidmət edir, sonra vizualizasiyanı yenidən təyin etmək üçün həmin fayllardan istifadə edir. Beləliklə, tablosuna kartların adları və konfiqurasiya edilə bilən xüsusiyyətlərin əksəriyyəti dəyişdirilə bilər. Bu lazım idi, məsələn DHT11, Temperatur və Rütubət xüsusiyyətlərini dərc edir: bir saytın ayrı DHT11 sensoru olan bir neçə qovşağı varsa, hamısına Temperatur deyilə bilməz (Qaraj İstiliyi, Yard Temp…). I2C Bus (16 simvol) tərəfindən təyin olunan metadata uzunluğu məhdudiyyəti mövcud deyil və daha zəngin dəyərlər tətbiq oluna bilər (64 işarəyə qədər).
İsteğe bağlı Əsas Doğrulama, redaktə olunan veb səhifəsi və digər mənbələr üçün Doğrulamadan kənarlaşdırma siyahısı üçün konfiqurasiya edilə bilər.
Lazım olduqda qulları aşağı salan aşağı tərəfli bir keçid də mövcud bir qızıl taxtada hazırlanmışdır.
Texniki qeyd olaraq, bu işə başlamazdan əvvəl qlobal metadata obyekti qrafiki səbəbindən yaddaş sahəsi 70% idi. Ən son AssimilateBus kitabxanasında, qlobal dəyişəni SPIFFS -də saxlanılan daha kiçik JSON fayllarına ayıran dəyişikliklər oldu. Bu, bütün JSON təhlil/bina üçün daha təhlükəsiz olan izi ~ 50%-ə qədər geri qaytardı. AssimilateBusSlave kitabxanası bu dəyişikliklər boyunca eyni olaraq qalır (ASSIM_VERSION 2).
XÜSUSİYYƏTLƏRİ VİZYON
Hal -hazırda Qullar (sensorlar və aktyorlar) özünəməxsusdur və mülkləri oxumaq və ya əmrlər üzərində hərəkət etmək üçün konvensiyaya əsaslanan I2C mesajlarına güvənirlər. Usta qullardan metadata və xassələri götürüb MQTT brokerinə göndərir. Həm də bir veb serveri işə salır və ustanı konfiqurasiya etmək və nəticədə Crouton tərəfindən istehlak edilən metadata/xassələri fərdiləşdirmək üçün düzəldilə bilən JSON fayllarına xidmət edir. Fərdi sensorlar/aktyorlar, qulların nə etdikləri barədə əvvəlcədən məlumatı olmayan Crouton vasitəsilə oxunur/əmr olunur.
IOT NETWORK ASSIMILATE -in məqsədlərindən biri, Crouton -u fərdiləşdirməkdir ki, IOT NODE veb -serverlərindən (bu quruluş kimi) xidmət edən yığma redaktorları, işin tam nəzarətini təmin edəcək veb komponentləri kimi əlavə olunsun, yəni ustanın proqramlaşdırılmaması, qulların əsas xüsusiyyət dəstləri var, ancaq Crouton tablosu işi idarə etmək üçün lazım olan bütün iş qaydalarını özündə cəmləşdirir!
Crouton çəngəl şeylərin mərkəzləşdirilməmiş idarə edilməsi/konfiqurasiyası üçün bir seçim olaraq görülür. Əslində hər hansı bir MQTT müştəri/GUI birləşməsi əşyalarınızı idarə edə bilər, çünki hər bir funksiya (sensorlar və aktyorlar) MQTT son nöqtələri kimi açılır.
Addım 1: Crouton
Crouton. https://crouton.mybluemix.net/ Crouton, IOT cihazlarınızı minimum quraşdırma ilə görselleştirmenize və idarə etməyə imkan verən bir tablosudur. Əslində, yalnız MQTT və JSON istifadə edərək hər hansı bir IOT hardware həvəskarı üçün qurmaq üçün ən asan tablosudur.
ASSIMILATE SLAVES (sensorlar və aktyorlar), ustanın Croutonun tablosunu qurmaq üçün istifadə etdiyi cihazı qurmaq üçün istifadə etdiyi metadata və xüsusiyyətlərə malikdir. ASSIMILATE NODES və Crouton arasındakı vasitəçi, webockets dostu olan bir MQTT brokeridir: Demo üçün ağcaqanad istifadə olunur.
ASSIMILATE MASTER (bu quruluş) xassələri istədiyi üçün Crouton yeniləmələri üçün cavab dəyərlərini lazımi formatda formatlayır.
Addım 2: Veb Server / Redaktor
Master çəkildikcə (bu quruluş) quraşdırılmış bir veb serveri işə salınır. IP ünvanı Serial Konsoluna verilir; nəticədə bu Crouton tablosuna nəşr olunacaq.
Qeyd olunan URL -ə baxdığınız zaman ACE EDITOR yüklənəcək:
Ace, JavaScript -də yazılmış gömülü kod redaktorudur. Sublime, Vim və TextMate kimi yerli redaktorların xüsusiyyətlərinə və performansına uyğun gəlir.
Ace, quraşdırılmış veb serverləri ilə məşhurdur və JSON fayllarını redaktə etmək və saxlamaq üçün yaxşı bir interfeys verir.
Solda bir fayl adına tıklandıqda, fayl ESP8266 üzərindəki SPIFFS -dən oxunacaq və sağdakı redaktə üçün məzmun yüklənəcək. Fayl üst alətlər çubuğundan saxlanıla bilər.
Fayl yükləmək üçün:
- Yerli fayl sisteminizdən Fayl seçin.
- Mətn qutusuna bir qovluq yolu daxil edin (lazım olduqda).
- Yüklə vurun.
- Səhifəni yeniləyin.
Addım 3: Cihaz Özelleştirme
Cihazın konfiqurasiyası (ESP8266) device.json faylı vasitəsilə həyata keçirilir.
Veriləri SPIFFS -ə (ESP8266 Sketch Data Upload) yükləməzdən əvvəl bu girişlərdən bəzilərinin (wifi_ssid, wifi_key) dəyişdirilməsi lazımdır.
Veb serverinin kökünə baxın (https://192.168.8.104/ kimi konsol çıxışında göstərilir).
Redaktə
ACE EDITOR -da config/device.json seçin.
Girişlər bunlardır:
- www_auth_username: veb server faylları üçün icazə istifadəçi adı (icazə verilməməsi üçün boşdur).
- www_auth_password: veb server faylları üçün icazə şifrəsi (istifadəçi adı təyin olunarsa).
- www_auth_exclude_files: avtorizasiya yoxlamalarından istisna ediləcək fayl yollarının nöqtəli nöqtə ilə ayrılmış siyahısı (istifadəçi adı təyin olunarsa).
- sensor_interval: MQTT Brokerinə məlumatların nəşri arasındakı milisaniyələr.
- ntp_server_name: istifadə ediləcək vaxt serverinin adı.
- time_zone: yerli vaxtınız üçün saatlarla ofset.
- wifi_ssid: yerli giriş nöqtənizin SSID -si.
- wifi_key: SSID üçün istifadə olunan açar.
- mqtt_broker: MQTT broker ünvanı.
- mqtt_username: MQTT broker üçün istifadə ediləcək istifadəçi adı (heç bir hesaba ehtiyac yoxdur).
- mqtt_password: MQTT istifadəçi adından istifadə etmək üçün parol.
- mqtt_port: MQTT broker portu.
- mqtt_device_name: MQTT mövzuları və Crouton identifikasiyası üçün istifadə ediləcək ad.
- mqtt_device_description: Croutonda göstərilən cihazın de3scription.
- viz_color: Croutondakı cihaz kartlarını müəyyən etmək üçün rəng (forked versiyada)
Addım 4: Əmlakın Fərdiləşdirilməsi
Kölələrin hər biri, definitions.h faylında müəyyən edilmiş bir nvc struktura malikdir:
// --------------------------------------- YAYIMLANAN ƏMLAKLAR
nvc rekvizitləri [2] = {{"Nəmlik", "", doğru}, {"Temperatur", "", yalan}}; // --------------------------------------- YAYIMLANAN ƏMLAKLARI SONLA
Girişlərin hər birində 0 (sıfır) olan bir indeks var.
Mülkiyyət adının fərdiləşdirilməsi user_props.json faylı vasitəsilə həyata keçirilir.
Veb serverinin kökünə baxın (https://192.168.8.104/ kimi konsol çıxışında göstərilir).
Redaktə
ACE EDITOR -da config/user_props.json seçin (və ya birini yükləyin).
Quruluş belədir:
İlk açar, tanımlar.h faylında Qulun Ünvanıdır:
#ADDRESS_SLAVE XX təyin edin
- Açarların növbəti səviyyəsi Əmlak İndeksidir.
- Bu açarın dəyəri, təriflər sənədində təyin olunan Mülkiyyət Adı yerinə Croutonda istifadə ediləcək Mülkiyyət Adıdır.
Addım 5: Metadata Fərdiləşdirmə
Mümkün olan fərdiləşdirmələrin miqdarına görə, hər bir qulun öz metadata dəyişiklik faylı var. Fayllar user_metas_.json formatında olmalıdır.
Kölə ünvan ATTINY85 eskizlərində definitions.h faylında tapılır:
#ADDRESS_SLAVE XX təyin edin
Metadata eyni faylda bu şəkildə təyin olunur:
const statik xarakter viz1 PROGMEM = "VIZ_CARD_TYPE";
const statik char viz2 PROGMEM = "2: chart-donut"; const statik char viz3 PROGMEM = "1";
Birinci sətir metadata elementinin adıdır.
İkinci sətir dəyərdir. Ümumiyyətlə bir əmlak indeksi şəkilçisinə malikdir.
Üçüncü sətir davam bayrağıdır. 1 - davam et, 0 - metadatanın sonu (VCC_MV).
Veb serverinin kökünə baxın (https://192.168.8.104/ kimi konsol çıxışında göstərilir).
Redaktə
ACE EDITOR -da config/user_metas_SLAVE_ADDRESS.json seçin (və ya birini yükləyin). Quruluş belədir:
- Ad/dəyər cütlükləri.
- Ad, dəyişdiriləcək metadata elementinin adıdır.
- Dəyişiklik dəyərdir. İndeks şəkilçisi əvəz edilməsi üçün yoxlanılır.
Addım 6: Materiallar və Alətlər
ICOS10 (IDC) Shell Materials Bill
- D1M BLOCK Pin Jig (1)
- D1M BLOCK bazası və korpusu (1)
- Wemos D1 Mini (1)
- Wemos D1 Mini Protoboard Qalxanı (1)
- 40P Qadın Başlıqları (8P, 8P, 9P, 9P)
- Kişi Başlığı 90º (3P, 3P, 3P, 2P, 1P, 2P)
- 1 "İki tərəfli protoboard (2)
- 2N7000 NFET (1)
- 6 Pin Kəfənli IDC Kişi Başlığı (1)
- Bağlama teli (~ 10)
- 0.5mm Kalaylı Tel (~ 4)
- 4G x 15mm Düymə başlı özünü vurma vintləri (2)
- 4G x 6mm özünü vurma havşa vintləri (~ 20)
- Lehim və Dəmir (1)
Addım 7: MCU Hazırlanması
Bu quruluşda Wemos D1 Mini istifadə edirik. Daha əvvəl bir D1M WIFI BLOCK qurmusunuzsa, modul hardware komponenti üçün istifadə edə bilərsiniz. Əks təqdirdə, minimum olaraq növbəti bölməni izləyin.
BAŞLIĞIN PİNLƏRİNİ MCU ÜZRƏ LAYİHLƏŞTİRMƏK (PIN JIG -dən istifadə etməklə) Bir PIN JIG çap edə bilmirsinizsə, sadəcə təlimatları izləyin və doğaçlama edin: PIN JIG -in hündürlüyü (ofset) 6.5 mm -dir.
- Bu səhifədən bir PIN JIG yazdırın/alın.
- Başlıq sancaqlarını lövhənin altından (TX sağdan sola) və lehim cihazına daxil edin.
- Pimleri sərt düz bir səthə bastırın.
- Lövhəni yapışqan üzərinə möhkəm bir şəkildə basın.
- 4 künc pinini lehimləyin.
- Lazım gələrsə lövhəni/sancaqları yenidən qızdırın və yenidən yerləşdirin (lövhə və ya sancaqlar hizalanmamış və ya şaquli deyil).
- Qalan sancaqları lehimləyin.
FİRMA AYARININ YÜKLƏNMƏSİ
Kod anbarını burada tapa bilərsiniz (anlıq görüntü).
Kitabxananın bir ZIP ünvanını burada tapa bilərsiniz (anlıq görüntü).
"ZIP Kitabxanasının idxal edilməsi" üçün təlimatlar burada.
Kitabxana quraşdırıldıqdan sonra "mqtt_crouton_esp8266_customization_webserver" nümunəsini aça bilərsiniz.
Wemos D1 Mini üçün Arduino qurmaq üçün təlimatlar burada.
Asılılıqlar: ArduinoJson, TimeLib, PubSubClient, NeoTimer (depolardakı dəyişikliklər pozularsa əlavələrə baxın).
SPIFFS YÜKLƏ
Kod Arduino IDE -yə yükləndikdən sonra data/config qovluğunda device.json açın:
- WiFi SSID ilə wifi_ssid dəyərini dəyişdirin.
- WiFi Açarınızla wifi_key dəyərini dəyişdirin.
- Mqtt_device_name dəyərini istədiyiniz cihaz identifikasiyası ilə dəyişdirin (qoşulmağa ehtiyac yoxdur).
- İstədiyiniz Cihaz Təsviri ilə mqtt_device_description dəyərini dəyişdirin (Croutonda).
- Cihazı saxla.json.
- Məlumat fayllarını SPIFFS -ə yükləyin.
Addım 8: MCU mənzil hazırlığı
MCU Housing, D1 Mini-nin başlıqlarını Soket (sensorlar və aktyorlar) dövrəsi ilə əlaqə quran qız lövhələri üçün bağlayır.
KONUT BAŞIQLARI Bu, D1 Mini Protoboard -a əsaslanır və bu sancaqları ayırır:
- Qoşulmaq üçün D1M WIFI BLOCK/D1 Mini üçün pinlər.
- D1M WIFI BLOCK/D1 Mini -dən 2 sıra kontaktların birbaşa kəsilməsi. Bunlar yalnız prototip hazırlayarkən rahatlıq üçün mövcuddur. Qız lövhələrinin bu başlıqlara bütün girişləri maneə törətəcəyi gözlənilir.
- 4 Qız lövhələrinin istifadə etdiyi xüsusi sancaqların qırılması.
D1M Əlaqələrini KONUT BAŞLIĞINA əlavə etmək üçün:
- SOKET JİGİNDƏN İSTİFADƏ EDƏN LƏHİM videosuna baxın.
- Başlıq pinlərini lövhənin altından keçirin (üst tərəfdə TX yuxarı sol).
- Plastik başlığın üstünə keçid qoyun və hər iki səthi düzəldin.
- Jig və montajı çevirin və başlığı sərt düz bir səthə möhkəm basdırın.
- Lövhəni yapışqan üzərinə möhkəm bir şəkildə basın.
- Minimum lehim istifadə edərək 4 künc pinini lehimləyin (pinlərin müvəqqəti hizalanması).
- Lazım gələrsə lövhəni/sancaqları yenidən qızdırın və yenidən yerləşdirin (lövhə və ya sancaqlar hizalanmamış və ya şaquli deyil).
- Qalan sancaqları lehimləyin.
- Jigeri çıxarın.
- Lehimlərin üstündəki sancaqları kəsin.
Daughter-board Breakouts əlavə etmək üçün:
- 9P qadın başlıqlarından 4 -ü kəsin.
- Üstdə, göstərildiyi kimi 9P başlıqlarını daxil edin və aşağıya lehimləyin.
Direct Breakouts əlavə etmək üçün:
- 2 ədəd 8P qadın başlıqlarını kəsin.
- Üstdə, göstərildiyi kimi 8P başlıqlarını daxil edin və aşağıya lehimləyin.
Başlıqları aşağıya doğru yönəldilmiş TX pinlə bağlamaq üçün:
- 4 pin arasında RST pinindən iz və lehim.
- 4 pin arasında A0 pinindən iz və lehim.
- D1 pinindən 4 sancaq arasında iz və lehim.
- D2 pinindən 4 sancaq arasında iz və lehim.
- D0 pinindən 2 satır aşağı və 4 sancaq boyunca iz və lehim.
- D7 pinindən 4 sancaq arasında iz və lehim.
- 4 pin arasında GND pinindən iz və lehim.
- 5V pinindən 4 sancaq arasında iz və lehim.
- 3V3 pinindən 4 pin arasında 45 ° aşağıya doğru iz və lehim.
FİQTURUN MONTAJI
Evin başlıqları MCU HOUSING -ə yapışdırılır və bu da BAZA PLAKA -na yapışdırılır.
- KONUT BAŞLIĞININ uzun tərəfi çuxura işarə edərkən, D1M KONTAKTLARINI MCU HOUSING -in boşluqlarına daxil edin və aşağıya doğru itələyin.
- Düzgün hizalanmasını təmin etmək üçün yapışdırarkən MCU KONTAKTLARINA MCU daxil edin.
- HEADER Çərçivəsini montaj armaturlarının üstünə qoyun və 2 ədəd 4G x 16 mm vintlə yapışdırın.
- Yığılmış armaturları çuxuru qısa tərəfə baxaraq yerləşdirin və 4G x 6mm vintlər ilə yapışdırın.
Addım 9: Qulların Aşağı Yan Anahtarı/RESET Qız lövhəsinin qurulması
Bu, son qurulan REST qızı lövhəsinin bir təkmilləşdirməsidir. Bu, qulları GROUND-a bağlayan aşağı tərəfli bir keçid əlavə edir. Master sıfırlanırsa, qullar da işə başlayacaq və metadatanı yayan başlanğıc yenidən başlayacaq.
MONTAJ
- İçəriyə 9P 90 ° Kişi Başlıqları (1), 1P 90 ° Kişi Başlığı (2), 2N7000 (3) daxil edin və xaricdən lehimləyin.
- İçərisində, SARI 1 -dən SARI 2 -ə qədər sarı bir teli izləyin və lehimləyin.
- İçəridə, SILVER1 -dən SILVER2 -ə qədər bir çılpaq teli və lehimi izləyin.
- İçəridə, SILVER3 -dən SILVER4 -ə qədər bir çılpaq teli və lehimi izləyin.
Addım 10: Əsas komponentlərin yığılması
- SHELL -in qurulduğundan və dövrənin sınandığından əmin olun (kabel və prizlər).
- 3V3 I2C DAUGHTER-BOARD üzərindəki 2P Kişi başlığını 2P 90º 1P Kişi Başlığı ilə dəyişdirin.
- 3V3 I2C DAUGHTER-BOARD-ı 3V3 pinlə başlıqların cırılmış ucuna daxil edin (şəkilə bax).
- LOW-SIDE SWITCH/RESET DAUGHTER-BOARD, telin içəriyə daxil olması ilə daxil edin (şəkilə bax).
- QIZ SALINDIRMA QAYDASINDAKI 90º 1P Kişi Başlığı ilə 3V3 I2C QIZLI KARTINA qədər bir Dupont liderini izləyin.
- IDC Soketini SHELL CABLE-dən 3V3 I2C DAUGHTER-BOARD üzərindəki IDC Başlığına daxil edin.
- QUZAQDAKI kabellər arasına diqqətlə QIZ QIZLIĞI/KONUTUNU daxil edin və əsas delikləri hizalayın.
- BAZA MONTAJINI 4G x 6mm vintlər ilə QABĞA bağlayın.
- Etdiyiniz hər hansı bir ASSIMILATE SENSORS əlavə edin.
Addım 11: Növbəti addımlar
- Brauzerinizi https://crouton.mybluemix.net/crouton/connections ünvanına yönəldin.
- Brokerin test.mosquitto.org olduğundan əmin olun.
- Bağlan düyməsini basın.
- /Config/device.json faylına mqtt_device_name olaraq Cihaz adı girişini daxil edin.
- Cihaz əlavə et vurun.
- Avtomatik əlaqə düyməsini basın.
- ICOS10 -u (5V MicroUSB) gücləndirin.
- Crouton tablosundan yoxlayın.
Tövsiyə:
Sistem Sensor MPU-6050 Com Sensor: 6 Addım
Sistem Sensorları MPU-6050: MPU-6050 sensoru MEMS-dən istifadə etməklə çipə malikdir. Suallar 3 ildir ki, giroskopiya üçün 3 eixos, 6 aydan çox azaddır (6DOF) .Vamos bir kompüter sistemini hazırladıqdan sonra
Asan IOT - Orta Səviyyəli IOT Cihazları üçün Tətbiqlə İdarə olunan RF Sensor Hub: 4 Addım
Easy IOT - Orta Səviyyə IOT Cihazları üçün Tətbiqlə İdarə olunan RF Sensor Hubu: Bu dərsliklərdə, mərkəzi qovşaq cihazından bir radio bağlantısı ilə idarə edilə bilən bir cihaz şəbəkəsi quracağıq. WIFI və ya Bluetooth əvəzinə 433MHz serial radio bağlantısı istifadə etməyin faydası daha böyük diapazondur (yaxşı
IOT Haqqında Docker Pi Sensor Hub Kartı: 13 Addım
IOT Haqqında Docker Pi Seriyası Sensor Hub Kartı: Salam hər bir oğlan. Hal -hazırda demək olar ki, hər şey IOT ilə əlaqədardır. Şübhə yoxdur ki, DockerPi seriyalı lövhəmiz də IOT -u dəstəkləyir. Bu gün SensorHub -un DockerPi seriyasını necə təqdim etmək istəyirəm Sizə IOT -a müraciət etmək üçün bu elementi işə salıram
IOT123 - SENSÖR HUBUNU YÜKLƏ: ICOS10 CORS WEBCOMPONENTS: 8 Addım
IOT123 - ASSIMILATE SENSOR HUB: ICOS10 CORS WEBCOMPONENTS: ASSIMILATE SENSOR/ACTOR Slaves, Croutondakı vizualizasiyanı təyin etmək üçün istifadə olunan metadata yerləşdirir. Bu quruluş əvvəlkindən bir qədər fərqlidir; hardware dəyişiklikləri yoxdur. Firmware artıq xüsusi (daha zəngin) redaktorların yerləşdirilməsini dəstəkləyir
Mənim qapımda kim var? PIR Motion Sensor/Range Sensor Layihəsi: 5 Addım
Kim mənim qapımdadır? PIR Motion Sensor/Range Sensor Project: Layihəmizin məqsədi PIR və məsafə sensorları vasitəsi ilə hərəkəti hiss etməkdir. Arduino kodu istifadəçiyə yaxın olduğunu bildirmək üçün vizual və səs siqnalı çıxaracaq. MATLAB kodu, istifadəçiyə birinin yaxın olduğunu bildirmək üçün am e -poçt siqnalı göndərəcək. Bu cihaz