Sadržaj:
- Korak 1: Stvari koje se koriste u ovom projektu
- Korak 2: Priča
- Korak 3: Priprema
- Korak 4: Konfiguracija
- Korak 5: Instaliranje
- Korak 6: Programiranje
- Korak 7: Testirajte
- Korak 8: Sljedeći korak
- Korak 9: Sheme
- Korak 10: Kodirajte
Video: Dugme za virtualna vrata pomoću Mongoose OS -a i XinaBox -a: 10 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
Koristeći Mongoose i neke xChips -ove, napravili smo virtualno dugme za vrata. Umjesto fizičkog dugmeta za uključivanje osoblja, sada to mogu učiniti sami.
Korak 1: Stvari koje se koriste u ovom projektu
Hardverske komponente
- XinaBox CW02 x 1 Umjesto toga možete koristiti CW01
- XinaBox IP01 x 1
- XinaBox PU01 x 1 Možete koristiti samo IP01 za napajanje, ako ne namjeravate programirati više modula.
- XinaBox OC03 x 1
- XinaBox XC10 x 1 "Ljepilo" koje čini da sve funkcionira!
Softverske aplikacije i mrežne usluge
Mongoose OS Zaista sjajan i jednostavan IoT razvojni alat … i besplatno
Korak 2: Priča
Na našoj recepciji je bilo potrebno obavijestiti naše osoblje, pa smo odlučili uzeti vlastite lijekove i stvoriti virtualno dugme. Ovaj kôd vam omogućava da pošaljete RPC (Remote Procedure Call), koji izgleda kao uobičajeni HTTP poziv iz bilo kojeg preglednika. Koristili smo Mongoose, jer je s njim vrlo jednostavno i brzo raditi, a ugrađeno je OTA (Over The Air) ažuriranje koda, što znači da bismo mogli instalirati našu tehnologiju i s vremenom nadograditi firmver, bez da ga rastavljamo radi ponovnog programiranja.
Korak 3: Priprema
- Instalirajte Mongoose-OS: Odmah naprijed, samo slijedite ove vrlo jednostavne korake za vaš OS ovdje:
- Pritisnite IP01 i CW02 zajedno pomoću XC10 konektora. Pogledajte sliku ispod:
- Umetnite IP01 u svoj USB port
- Uvjerite se da su prekidači IP01 u položaju B i DCE.
- Prebacite Mongoose-OS na CW02 sa svoje komandne linije. Volim ovo:
cd
izvoz MOS_PORT = bin/mos flash esp32
Možete i samo ući u konzolu i odatle učiniti najviše, ali ovdje to radimo iz naredbenog retka, tako da je posao brzo obavljen. Da biste ušli u konzolu:
cd
bin/mos
Korak 4: Konfiguracija
Iako su ovi koraci mogli biti izvedeni u jednoj dugoj izjavi, odlučili smo ih podijeliti, a budući da biste ih u svakom slučaju kopirali i zalijepili, olakšajte:
Postavite I2C pinove na standard xChips:
bin/mos config-set i2c.scl_gpio = 14 i2c.sda_gpio = 2
Priključite svoj CW02 na WiFi:
bin/mos wifi
Odspojite WiFi u načinu AP -a i postavite naziv domene, tako da se možete povezati s CW01 prema imenu hosta umjesto da pronađete ispravnu IP adresu. Ovo će funkcionirati samo ako:
- Isključujete WiFi u načinu rada AP kao što dolje radimo.
- Ili koristite Mac ili instalirajte Bonjour na Windows mašinu.
bin/mos poziv Config. Set '{"config": {"wifi": {"ap": {"enable": false}}}}'
bin/mos poziva Config. Set '{"config": {"dns_sd": {"enable": true}}}' bin/mos poziva Config. Set '{"config": {"dns_sd": {"host- name ":" xinabox_switch "}}}
I na kraju morate ponovno pokrenuti CW02 da bi konfiguracija radila
bin/mos poziv Config. Save '{"reboot": true}'
Vrlo brzo nakon ovoga trebali biste biti u mogućnosti pingati xinabox_switch.local
Korak 5: Instaliranje
Isključite IP01 iz računara i sastavite kolo prema gornjoj slici.
Priključite PU01 (ili ako ste se odlučili držati IP01) u USB izvor napajanja. Spojite žice paralelno sa postojećeg prekidača (ostavite to, za svaki slučaj) na OC03 (polaritet nije bitan). Pogledajte crtež Fritzing.
Nakon uključivanja i da vidite da zapravo razgovarate sa svojim xCW02, šta je sa skeniranjem BUS -a, poznatim i kao I2C sabirnica:
bin/mos --port ws: //xinabox_switch.local/rpc poziv I2C. Scan
Ako sve radi i vaš xOC03 je pravilno instaliran, trebali biste vidjeti da se vraća broj '56'. To je I2C adresa OC03 u decimalnom obliku (u heksadecimalnom iznosu je 0x38).
Korak 6: Programiranje
- Sada otvorite Mongoose u načinu konzole, pogledajte gore. Trebalo bi se otvoriti s prozorom u kojem se traži broj porta, unesite: ws: //xinabox_switch.local/rpc
- On će komunicirati s CW02 i shvatiti da je jedinica već bljeskala i spojena na WiFi, pa će samo dati 3 kvačice. Zatvorite prozor i osvježite listu datoteka
- Kopirajte i zalijepite donji kôd u init.js, a zatim kliknite spremi+ponovno pokretanje
- Vaše kolo je sada programirano.
Korak 7: Testirajte
Sada ste implementirali još jedan RPC poziv pa sa svog terminala možete unijeti:
bin/mos --port ws: //xinabox_switch.local/rpc Prekidač poziva
… i vaš zvučni signal bi trebao trajati 2 sekunde. To možete učiniti i iz - gotovo - bilo kojeg preglednika:
xinabox_switch.local/rpc/Switch
… sa istim efektom.
Korak 8: Sljedeći korak
Možete koristiti bilo koji alat koji može aktivirati URL. Radim to iz Appleove aplikacije koja se zove Workflow, što mi omogućava da to radim sa svog telefona ili kao komplikaciju sa svog Apple Watch -a, ali postoje mnoge druge opcije. Evo moje skripte toka posla, ali sa IP kodiranom IP adresom: Uživajte!
Apple App: Tijek rada - ovdje sa tvrdo kodiranom IP adresom
Korak 9: Sheme
Krug zujalice Instalirajte OC03 paralelno sa postojećim dugmetom.
Preuzmite ga ovdje.
OC03 Krug Instalirajte OC03 paralelno sa postojećim dugmetom.
Preuzmite ga ovdje.
Korak 10: Kodirajte
init.js JavaScript Vaš glavni i jedini kod za ovaj projekat.
load ('api_config.js');
load ('api_gpio.js'); load ('api_i2c.js'); load ('api_net.js'); load ('api_sys.js'); load ('api_timer.js'); load ("api_rpc.js"); let led = Cfg.get ('pins.led'); neka je adr = 0x38; neka sabirnica = I2C.get (); I2C.writeRegB (sabirnica, adr, 3, 0); I2C.writeRegB (sabirnica, adr, 1, 0); / * isključite samo da biste bili sigurni */ let delay = 2000; GPIO.set_mode (led, GPIO. MODE_OUTPUT); RPC.addHandler ('Switch', funkcija (args) {GPIO.toggle (led); I2C.writeRegB (sabirnica, adr, 3, 0); / * u slučaju da se OC03 ponovo poveže * / I2C.writeRegB (sabirnica, adr, 1, 1); Timer.set (delay, false, function () {GPIO.toggle (led); I2C.writeRegB (bus, adr, 1, 0);}, null); return true;});
Preporučuje se:
Senzor vrata i zaključanih vrata na baterije, solarni, ESP8266, ESP-Now, MQTT: 4 koraka (sa slikama)
Senzor vrata i zaključanih vrata na baterijama, solarni, ESP8266, ESP-Now, MQTT: U ovom uputstvu pokazat ću vam kako sam napravio senzor na baterijsko napajanje za nadzor vrata i zaključavanja moje daljinske šupe za bicikle. Nemam napajanje iz mreže, zato ga napajam na baterije. Baterija se puni pomoću male solarne ploče. Modul je d
USB dugme za jačinu zvuka pomoću DigiSparka i rotacionog kodera: 3 koraka
USB gumb za jačinu zvuka pomoću DigiSparka i rotacijskog kodera: Ovo je super jeftin USB gumb za kontrolu glasnoće. Ponekad je tradicionalno dugme prikladnije za upravljanje stvarima, a ne za klikanje miša svuda. Ovaj projekt koristi DigiSpark, rotacijski koder i USB knjižnicu Adafruit Trinket (https: //github.c
Arduino dugme za odbrojavanje W/ dugme za odmor: 4 koraka
Arduino tipka za odbrojavanje W/ tipka za odmor: Ova instrukcija će vas naučiti kako stvoriti tajmer za odbrojavanje koristeći 4-znamenkasti 7-segmentni zaslon koji se može resetirati pomoću gumba. Došao sam na ideju da ovo napravim jer sam prilikom kreiranja jednocifrenog 7-segmentnog ekrana u klasi želio stvoriti nešto
Automatska svjetla povezana s nadzorom vrata i vrata .: 5 koraka
Automatska svjetla povezana s nadzorom vrata i vrata. Čini se da je vrlo teško pronaći razvodnu ploču u mraku, ali ovaj projekt je od velike pomoći u rješavanju ovog problema. Slijedite korake u nastavku da biste saznali rješenje ovoga
Mobilna virtualna stvarnost pomoću obrade za Android (TfCD): 7 koraka (sa slikama)
Mobilna virtualna stvarnost pomoću obrade za Android (TfCD): Virtualna stvarnost (VR) jedna je od novih tehnologija koja bi mogla biti zanimljiva budući proizvodi. Ima mnogo mogućnosti i ne trebaju vam čak ni skupe VR naočare (Oculus Rift). Možda vam se čini da je to jako teško učiniti sami, ali osnove su