Sisukord:
- Samm: selles projektis kasutatud asjad
- 2. samm: lugu
- 3. samm: Ettevalmistus
- 4. samm: seadistamine
- Samm: paigaldamine
- 6. samm: programmeerimine
- 7. samm: testige
- 8. samm: järgmine samm
- 9. samm: skeemid
- 10. samm: kood
Video: Virtuaalse ukse nupp, kasutades Mongoose OS -i ja XinaBoxi: 10 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Kasutades Mongoose'i ja mõnda xChipi, tegime virtuaalse uksenupu. Füüsilise nupu asemel, millega töötajaid sisse suruda, saavad nad seda nüüd ise teha.
Samm: selles projektis kasutatud asjad
Riistvara komponendid
- XinaBox CW02 x 1 Selle asemel võite kasutada CW01
- XinaBox IP01 x 1
- XinaBox PU01 x 1 Kui te ei kavatse rohkem mooduleid programmeerida, võite toiteallikaks kasutada lihtsalt IP01.
- XinaBox OC03 x 1
- XinaBox XC10 x 1 "Liim", mis paneb selle kõik tööle!
Tarkvararakendused ja võrguteenused
Mongoose OS Tõeliselt vinge ja lihtne IoT arendustööriist … ja tasuta
2. samm: lugu
Vastuvõtul pidid meie töötajad olema põnevil, nii et otsustasime võtta oma ravimi ja luua virtuaalse nupu. See kood võimaldab teil saata RPC (kaugmenetluskõne), mis näeb välja nagu tavaline HTTP -kõne mis tahes brauserist. Kasutasime Mongoose'i, kuna sellega on tõesti lihtne ja kiire töötada ning see on sisseehitatud OTA (Over The Air) koodivärskendus, mis tähendab, et saaksime oma tehnoloogia installida ja püsivara siiski aja jooksul uuendada, ilma et seda ümber programmeeriks.
3. samm: Ettevalmistus
- Installige Mongoose-OS: otse edasi, järgige oma OS-i jaoks väga lihtsaid samme siin:
- Klõpsake XC10 pistiku abil IP01 ja CW02 koos. Vaata allolevat pilti:
- Sisestage IP01 oma USB -porti
- Veenduge, et IP01 lülitid on asendis B ja DCE.
- Flash Mongoose-OS käsurealt CW02. Nagu nii:
cd
eksport MOS_PORT = bin/mos flash esp32
Võite ka lihtsalt siseneda konsooli ja teha sealt kõige rohkem, kuid siin teeme seda käsurealt, nii et töö saab kiiresti tehtud. Konsooli sisenemiseks toimige järgmiselt
cd
prügikast/mos
4. samm: seadistamine
Kuigi neid samme saab teha ühe pika avaldusena, otsustasime need osadeks jagada ja kuna te kopeerite ja kleepite need igal juhul, siis tehke see lihtsaks:
Seadke I2C tihvtid standardile xChips:
bin/mos konfiguratsioonikomplekt i2c.scl_gpio = 14 i2c.sda_gpio = 2
Ühendage oma CW02 WiFi -ga:
bin/mos wifi
Ühendage WiFi ühendus AP -režiimis lahti ja seadistage domeeninimi, nii et saate õige IP -aadressi leidmise asemel ühenduse luua CW01 -ga hostinime järgi. See toimib ainult siis, kui:
- Ühendate WiFi ühenduse AP -režiimis lahti nagu meie allpool.
- Kasutage Maci või installige oma Windowsi masinasse Bonjour.
bin/mos helista Config. Set '{"config": {"wifi": {"ap": {"enable": false}}}}
bin/mos helistage konfiguratsioonile. Määrake '{"config": {"dns_sd": {"enable": true}}} "bin/mos helistage seadistusele. Määrake' {" config ": {" dns_sd ": {" host- nimi ":" xinabox_switch "}}}
Ja lõpuks peate konfiguratsiooni toimimiseks CW02 taaskäivitama
bin/mos helista Config. Save '{"reboot": true}'
Väga kiiresti pärast seda peaksite saama pingida xinabox_switch.local
Samm: paigaldamine
Ühendage IP01 arvutist lahti ja pange vooluahel kokku vastavalt ülemisele pildile.
Ühendage PU01 (või kui otsustasite jääda IP01 juurde) USB -toiteallikasse. Ühendage juhtmed paralleelselt olemasoleva lülitiga (jätke see igaks juhuks) OC03 -ga (polaarsus pole oluline). Vt Fritzingu joonis.
Kui olete sisse lülitatud ja näete, et räägite tegelikult oma xCW02 -ga, siis kuidas oleks BUS -i, ehk I2C -bussi skannimisega:
bin/mos --port ws: //xinabox_switch.local/rpc kõne I2C. Scan
Kui see kõik töötab ja teie xOC03 on õigesti installitud, peaksite nägema numbrit „56”. See on OC03 I2C aadress kümnendkohas (kuuekümnendikuna on see 0x38).
6. samm: programmeerimine
- Nüüd avage Mongoose konsoolirežiimis, vt ülal. See peaks avanema aknaga, kus ta küsib pordi numbrit, sisestage: ws: //xinabox_switch.local/rpc
- See suhtleb CW02 -ga ja mõistab, et seade on juba vilkunud ja WiFi -ga ühendatud, nii et see annab lihtsalt 3 linnukest. Sulgege aken ja värskendage failide loendit
- Kopeerige ja kleepige allolev kood faili init.js ja klõpsake nuppu Salvesta+taaskäivitage
- Teie vooluring on nüüd programmeeritud.
7. samm: testige
Olete nüüd rakendanud veel ühe RPC kõne, nii et saate oma terminalist sisestada:
bin/mos --port ws: //xinabox_switch.local/rpc call Switch
… Ja teie helisignaal peaks 2 sekundiks tööle. Saate seda teha ka peaaegu igast brauserist:
xinabox_switch.local/rpc/Switch
… Sama efektiga.
8. samm: järgmine samm
Võite kasutada mis tahes tööriista, mis võib URL -i käivitada. Teen seda Apple'i rakendusest nimega Workflow, mis võimaldab mul seda teha oma telefonist või Apple Watchi tüsistusena, kuid seal on palju muid võimalusi. Siin on minu töövoo skript, kuid kõvakodeeritud IP -aadressiga: Nautige!
Apple'i rakendus: töövoog - siin kõvakodeeritud IP -aadressiga
9. samm: skeemid
Summeri ahel Paigaldage OC03 paralleelselt olemasoleva nupuga.
Laadige see alla siit.
OC03 ahel Paigaldage OC03 paralleelselt olemasoleva nupuga.
Laadige see alla siit.
10. samm: kood
init.js JavaScript Teie peamine ja ainus kood selle projekti jaoks.
koormus ('api_config.js');
koormus ('api_gpio.js'); koormus ('api_i2c.js'); koormus ('api_net.js'); koormus ('api_sys.js'); koormus ('api_timer.js'); koormus ("api_rpc.js"); las led = Cfg.get ('pins.led'); olgu adr = 0x38; las buss = I2C.get (); I2C.writeRegB (buss, adr, 3, 0); I2C.writeRegB (buss, adr, 1, 0); / * lülita välja, et olla kindel */ let delay = 2000; GPIO.set_mode (led, GPIO. MODE_OUTPUT); RPC.addHandler ('Switch', function (args) {GPIO.toggle (led); I2C.writeRegB (bus, adr, 3, 0); / * juhul, kui OC03 uuesti ühendatakse * / I2C.writeRegB (bus, adr), 1, 1); Timer.set (delay, false, function () {GPIO.toggle (led); I2C.writeRegB (bus, adr, 1, 0);}, null); return true;});
Soovitan:
Virtuaalse kohaloleku robot: 15 sammu
Virtuaalse kohaloleku robot: see mobiilne robot suhtleb oma füüsilise ümbrusega, esindades " virtuaalset kohalolekut " seda kaugjuhitavalt isikult. Sellele pääseb ligi igaüks ja kõikjal maailmas, et maiustusi väljastada ja teiega mängida. Töö, mida ta
Temperatuuri mõõtmine XinaBoxi ja termistori abil: 8 sammu
Temperatuuri mõõtmine XinaBoxi ja termistori abil: mõõtke vedeliku temperatuuri, kasutades XinaBoxi analoogsisendit xChip ja termistorisondi
Kuupäeva, kellaaja ja temperatuuri kuvamine XinaBoxi abil: 8 sammu
Kuupäeva, kellaaja ja temperatuuri näit XinaBoxi abil: jahe OLED -ekraan, mis näitab kuupäeva, kellaaega ja temperatuuri Celsiuse ja Fahrenheiti kraadides, kasutades Xinabox xChips, mis põhineb ESP8266 -l
Ilmajaama ehitamine XinaBoxi ja Ubidotsi abil HTTP kaudu: 7 sammu
Ilmajaama ehitamine XinaBoxi ja Ubidotide abil HTTP kaudu: saate teada, kuidas teha oma ilmajaam Ubidotsis, kasutades XinaBox xChips (IP01, CW01 ja SW01) ESP8266 Core ja Wi-Fi moodul (xChip CW01) võimaldab kasutajatel saata andmed XinaBoxi modulaarsest xChipist pilve. Neid andmeid saab eemalt jälgida
Ukse ja ukse jälgimisega ühendatud automaatsed tuled: 5 sammu
Ukse ja ukse jälgimisega ühendatud automaatsed tuled: tundub, et pimedas on lülitusplaati väga raske leida, kuid see projekt on selle probleemi lahendamiseks tõesti kasulik. Selle lahenduse leidmiseks järgige alltoodud samme