Sommario:
- Passaggio 1: cose utilizzate in questo progetto
- Fase 2: Storia
- Passaggio 3: preparazione
- Passaggio 4: configurazione
- Passaggio 5: installazione
- Passaggio 6: programmazione
- Passaggio 7: test
- Passaggio 8: passaggio successivo
- Passaggio 9: schemi
- Passaggio 10: codice
Video: Pulsante porta virtuale utilizzando il sistema operativo Mongoose e XinaBox: 10 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
Usando Mongoose e alcuni xChips, abbiamo creato un pulsante per la porta virtuale. Invece di un pulsante fisico per attivare il personale, ora possono farlo da soli.
Passaggio 1: cose utilizzate in questo progetto
Componenti hardware
- XinaBox CW02 x 1 Potresti invece usare il CW01
- XinaBox IP01 x 1
- XinaBox PU01 x 1 Si potrebbe semplicemente usare l'IP01 per l'alimentazione, se non si intende programmare più moduli.
- XinaBox OC03 x 1
- XinaBox XC10 x 1 La "colla" che fa funzionare tutto!
App software e servizi online
Mongoose OS Strumento di sviluppo IoT davvero fantastico e facile… e gratuito
Fase 2: Storia
Nella nostra reception il nostro personale aveva bisogno di essere interpellato, quindi abbiamo deciso di prendere la nostra medicina e creare un pulsante virtuale. Questo codice ti consente di inviare una RPC (Remote Procedure Call), che sembra una normale chiamata HTTP da qualsiasi browser. Abbiamo usato Mongoose, dal momento che è davvero facile e veloce da usare e l'aggiornamento del codice OTA (Over The Air) integrato, significa che potremmo installare la nostra tecnologia e comunque nel tempo aggiornare il firmware, senza dissimularlo per la riprogrammazione.
Passaggio 3: preparazione
- Installa Mongoose-OS: Semplice, segui questi semplici passaggi per il tuo sistema operativo qui:
- Fare clic su IP01 e CW02 insieme utilizzando un connettore XC10. Vedi immagine sotto:
- Inserisci l'IP01 nella porta USB
- Assicurarsi che gli interruttori IP01 siano in posizione B e DCE.
- Aggiorna il sistema operativo Mongoose a CW02 dalla riga di comando. Come questo:
cd
esporta MOS_PORT= bin/mos flash esp32
Potresti anche semplicemente entrare nella console e fare la maggior parte da lì, ma qui lo facciamo dalla riga di comando, quindi il lavoro è fatto rapidamente. Per accedere alla console:
cd
bin/mos
Passaggio 4: configurazione
Sebbene questi passaggi possano essere eseguiti in un'unica lunga istruzione, abbiamo deciso di dividerli e, poiché li avresti copiati e incollati comunque, rendiamolo semplice:
Imposta i pin I2C sullo standard xChips:
bin/mos config-set i2c.scl_gpio=14 i2c.sda_gpio=2
Collega il tuo CW02 al tuo WiFi:
bin/mos wifi
Disconnetti il WiFi in modalità AP e imposta un nome di dominio, in modo da poterti connettere al CW01 tramite il nome host invece di trovare l'indirizzo IP corretto. Funzionerà solo se:
- Disconnetti il WiFi in modalità AP come facciamo di seguito.
- Usa un Mac o installa Bonjour sul tuo computer Windows.
bin/mos chiama Config. Set '{"config": {"wifi": {"ap": {"enable": false}}}}'
bin/mos chiama Config. Set '{"config": {"dns_sd": {"enable": true}}}' bin/mos chiama Config. Set '{"config": {"dns_sd": {"host- nome": "xinabox_switch"}}}
E infine devi riavviare il CW02 affinché la configurazione funzioni
bin/mos chiama Config. Save '{"reboot": true}'
Molto rapidamente dopo questo dovresti essere in grado di eseguire il ping di xinabox_switch.local
Passaggio 5: installazione
Scollegare l'IP01 dal computer e assemblare un circuito come nell'immagine in alto.
Collega il PU01 (o se hai deciso di restare con l'IP01) a una fonte di alimentazione USB. Collega i cavi in parallelo dal tuo interruttore esistente (lascialo, per ogni evenienza) all'OC03 (la polarità non ha importanza). Guarda il disegno di Fritzing.
Una volta acceso e per vedere che stai effettivamente parlando con il tuo xCW02, che ne dici di scansionare il BUS, ovvero il bus I2C:
bin/mos --port ws://xinabox_switch.local/rpc chiama I2C. Scan
Se tutto funziona e il tuo xOC03 è installato correttamente, dovresti vedere un numero '56' essere restituito. Questo è l'indirizzo I2C dell'OC03 in decimale (in esadecimale è 0x38).
Passaggio 6: programmazione
- Ora apri Mongoose in modalità console, vedi sopra. Dovrebbe aprirsi con una finestra in cui richiede un numero di porta, inserire: ws://xinabox_switch.local/rpc
- Comunicherà con il CW02 e si renderà conto che l'unità è già lampeggiante e connessa al WiFi, quindi darà solo 3 segni di spunta. Chiudi la finestra e aggiorna l'elenco dei file
- Copia e incolla il codice qui sotto in init.js e fai clic su save+reboot
- Il circuito è ora programmato.
Passaggio 7: test
Ora hai implementato un'altra chiamata RPC quindi dal tuo terminale puoi inserire:
bin/mos --port ws://xinabox_switch.local/rpc call Switch
… e il tuo cicalino dovrebbe suonare per 2 sec. Puoi anche farlo da - quasi - qualsiasi browser:
xinabox_switch.local/rpc/Switch
…con lo stesso effetto.
Passaggio 8: passaggio successivo
Puoi utilizzare qualsiasi strumento in grado di attivare un URL. Lo faccio da un'app Apple chiamata Workflow, che mi consente di farlo dal mio telefono o come complicazione dal mio Apple Watch, ma ci sono molte altre opzioni là fuori. Ecco il mio script del flusso di lavoro, ma con indirizzo IP codificato: Buon divertimento!
App Apple: flusso di lavoro - qui con indirizzo IP codificato
Passaggio 9: schemi
Circuito Buzzer Installare l'OC03 in parallelo con il pulsante esistente.
Scaricalo qui.
Circuito OC03 Installare l'OC03 in parallelo al pulsante esistente.
Scaricalo qui.
Passaggio 10: codice
init.js JavaScript Il tuo codice principale e unico per questo progetto.
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'); let adr = 0x38; let bus = I2C.get(); I2C.writeRegB(bus, adr, 3, 0); I2C.writeRegB(bus, adr, 1, 0); /* disattiva solo per essere sicuro */ let delay = 2000; GPIO.set_mode(led, GPIO. MODE_OUTPUT); RPC.addHandler('Switch', function(args) { GPIO.toggle(led); I2C.writeRegB(bus, adr, 3, 0); /* nel caso in cui l'OC03 venga riconnesso */ I2C.writeRegB(bus, adr, 1, 1); Timer.set(delay, false, function() { GPIO.toggle(led); I2C.writeRegB(bus, adr, 1, 0); }, null); return true; });
Consigliato:
Come installare il sistema operativo Raspbian in Raspberry Pi utilizzando il software e lo smartphone NOOBS.: 6 passaggi
Come installare il sistema operativo Raspbian in Raspberry Pi utilizzando il software e lo smartphone NOOBS.: Ciao a tutti! oggi in questo tutorial ti mostro come installare facilmente il sistema operativo Raspbian in Raspberry Pi usando il software NOOBS e Smartphone
Nozioni di base sull'IoT: connessione dell'IoT al cloud utilizzando il sistema operativo Mongoose: 5 passaggi
Nozioni di base sull'IoT: connessione del tuo IoT al cloud utilizzando il sistema operativo Mongoose: se sei una persona che ama armeggiare ed elettronica, il più delle volte ti imbatterai nel termine Internet of Things, solitamente abbreviato in IoT, e che si riferisce a un insieme di dispositivi che possono connettersi a Internet! Essere una persona così
Microcontrollore AVR. Attiva/disattiva i LED utilizzando un interruttore a pulsante. Pulsante antirimbalzo: 4 passaggi
Microcontrollore AVR. Attiva/disattiva i LED utilizzando un interruttore a pulsante. Push Button Debouncing.: In questa sezione, impareremo come creare un codice C del programma per ATMega328PU per alternare lo stato dei tre LED in base all'input da un interruttore a pulsante. Inoltre, abbiamo esplorato una soluzione al problema di "Switch Bounce". Come di consueto, vi
Crea una rete Wi-Fi virtuale utilizzando il prompt dei comandi su Windows 10: 10 passaggi
Crea una rete Wi-Fi virtuale utilizzando il prompt dei comandi su Windows 10: dimostrerò come funziona la creazione di una rete Wi-Fi virtuale su computer Windows 10. Mostrerò più passaggi su come fare e spiegherò se il tuo computer supporta o meno la funzione
Realtà virtuale mobile utilizzando l'elaborazione per Android (TfCD): 7 passaggi (con immagini)
Realtà virtuale mobile che utilizza l'elaborazione per Android (TfCD): la realtà virtuale (VR) è una delle nuove tecnologie che potrebbero essere interessanti per i prodotti futuri. Ha molte opportunità e non hai nemmeno bisogno di costosi occhiali VR (Oculus Rift). Può sembrare molto difficile da fare da soli, ma le basi sono