Smart Piscina Com IoT Ionic Dweet E DragonBoard
Informazioni sul prodotto:
Smart Piscina Com IoT è un prodotto con architettura IoT che
consente il controllo e il monitoraggio di una piscina utilizzando Ionic,
Tecnologie Dweet e DragonBoard. Include componenti come
il Linker Mezzanine, 96Boards GPIO e Py-Spidev. Il prodotto
consente agli utenti di monitorare lo stato del trattamento, lo stato della pompa,
stato del serbatoio e valore di pH della piscina. Il prodotto anche
include un provider Dweet che consente agli utenti di inviare dati al
Piattaforma Dweet.io per ulteriori analisi.
Istruzioni per l'uso del prodotto:
Per utilizzare il prodotto Smart Piscina Com IoT, segui questi
istruzioni:
- Aggiornare e aggiornare il software eseguendo quanto segue
comandi nel terminale:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
- Installare componenti aggiuntivi eseguendo i seguenti comandi
nel terminal:
sudo apt-get install gedit
sudo apt-get install python-pip
sudo apt-get install build-essential autoconf automake
libtool-bin pkg-config python-dev
git clone
https://github.com/jackmitch/libsoc.git
cd libsoc
sudo autoreconf -i
sudo ./configure --enable-python=2 --enableboard=
dragonboard410c --with-board-configs
sudo make
sudo make install
sudo ldconfig /usr/local/lib
git clone
https://github.com/96boards/96BoardsGPIO.git
cd 96BoardsGPIO/
sudo ./autogen.sh
sudo ./configure
sudo make
sudo make install
sudo ldconfig
git clone https://github.com/doceme/pyspidev.git
cd py-spidev
sudo python setup.py install
sudo ldconfig
- Modifica il file libsoc.conf file eseguendo il seguente comando in
il terminale:
sudo gedit /usr/local/etc/libsoc.conf
Aggiornare il file contenuto al seguente:
{ status_tratamento: 0, ligadesliga_bomba: 0, status_bomba:0,
status_reservatorio:0, PH_setpoint:6, PH_valor: 4 } - Installa la libreria delle richieste eseguendo il seguente comando in
il terminale:
sudo pip install requests
- Utilizza il prodotto importando spidev, time, Dweet, gpio e
GPIO. Eseguire le funzioni necessarie per controllare e monitorare il
piscina. Per esample, utilizzare la funzione readPH per leggere il pH
valore della piscina. Usa la funzione liga_des_bomba per accendere/spegnere
la pompa. Utilizzare la funzione atualiza_sp per aggiornare il setpoint del pH
valore. Usa la funzione dweetPost per inviare dati a Dweet.io
piattaforma per ulteriori analisi.
istruzioni
Smart Piscina Com IoT – Ionico, Dweet E DragonBoard
di rxidieh
Introduzione
Presento qui una soluzione per il monitoraggio e il trattamento di piscine di maniere remote, che poderia ser usado tanto pelo proprietario di un immobile, come per alcune piscine che poderia veri car remote diverse piscine come quais ele atende. L'hardware utilizzato è basato su DragonBoard di Qualcom e su Linker Mezanine di 96boards. Vengono inoltre utilizzati i sensori di Arrow per la placa Linker Mezanine. Questa non è un'implementazione finale! Mas sim uno sviluppo per mostrare come realizzare una programmazione hardware, una comunicazione con un servizio repository su un numero e la creazione di un'app per l'accesso e il controllo del sistema. As funções criadas são: -Controle do PH da Piscina -Acionamento da Bomba e monitoramento -Monitoramento do nível do reservatório de produto para tratamento
Architettura IoT
L'automazione e il controllo del trattamento della piscina sono realizzati su Dragonboard, con l'interfaccia utente tramite app Web. Para que isto seja possível, é utilizada a arquitetura demonstrada na imagem, e consiste in:
1. I dati sono lidi e processati da Dragonboard 2. Un DragonBoard si trova in un archivio Web, in questo caso o Dweet.io 3. O Dweet.io disponibile come informazioni lidas affinché siano disponibili per altre applicazioni 4. Un'applicazione Web sviluppo di Ionic e accesso ai dati di Dweet.io e presentazione su un'interfaccia
HTML per l'utente
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 1
Passaggio 1: configurazione dell'hardware
Come detto, è stato utilizzato un DragonBoard 410c per realizzare l'automazione e il controllo locale della piscina. Insieme a Dragonboard è stato installato uno scudo da 96boards chamado Linker Mezanine, che facilita l'accesso agli IO di DragonBoard. Este shield tb possui dois conversores A/D para letture de dados analógicos. Le immagini esistono con guração utilizada para conexão dos IOs deste exemplo.
1. Considerare l'uso di un metro PH che fornisce una proporzione detta di 0 a 5V per essere compatibile con l'ingresso A/D. Nel caso in cui venga utilizzato un canale maggiore, sarà necessario un divisore resistivo per la compatibilità del canale con l'ingresso
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 2
2. Nessun esempio, a fronte di un PHmetro è stato utilizzato un potenziometro per simulare il segnale 3. Per simulare l'attivazione della bomba è stato utilizzato un led, che in un progetto reale potrebbe essere uno
acoplador ótico acionando um TRIAC ou relé 4. Il sensore di rotazione della bomba è stato simulato con un sensore di pressione. In una vera e propria applicazione poderia ser
um sensor no eixo da bomba ou um contado auxiliar do contator que aciona a bomba. Neste caso, in caso de defeito da bomba ou queda do disjuntor, seria possível veri car que a bomba foi acionada e não está girando 5. O sensor para nível do reservatório é um do tipo “tilt” que deverá ser instalado su uma bóia 6 Per m, una dose di prodotto è feita per un'elettrovalvola azionata da un relè
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 3
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 4
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 5
Passaggio 2: preparazione del DragonBoard
Atualização da Placa e instalação das bibliotecas p/ 96boards
Una piattaforma DragonBoard vem de fábrica con una distribuzione Linux chamada Linaro, è su ciente in risorse per eseguire questa applicazione, basta atualizar a placa e realizzare un'installazione delle biblioteche da 96boards per l'interfaccia con un Linker Mezanine. Una volta che stiamo lavorando su Linux, possiamo accedere al Terminale per realizzare i comandi di aggiornamento e installazione delle biblioteche: I seguenti comandi realizzano l'aggiornamento da placa:
sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade
Per lavorare con Python, realizza anche un'installazione di un editor di testi e un interprete
sudo apt-get install gedit sudo apt-get install python-pip
In sequenza saranno installate come Biblioteche necessarie. I comandi devono essere presentati all'ordine di seguire e sono critici per l'installazione corretta:
sudo apt-get install build-essential autoconf automake libtool-bin pkg-config python-dev sudo reboot
LIBSOC (Accesso a Linker Mezanine)
git clone https://github.com/jackmitch/ libsoc.git cd libsoc sudo autoreconf -i sudo ./configure –enable-python=2 –enableboard= dragonboard410c –with-board-configs sudo make sudo make install sudo ldconfig /usr /local/lib sudo reboot
96 tavole:
git clone https://github. com/96boards/96BoardsGPIO.git
cd 96TavoleGPIO/
sudo ./autogen.sh sudo ./configure sudo make sudo make install sudo ldconfig
Quase no m... mas aproveitamos para instalar tb a biblioteca para acesso a parte analogica da Linker Mezanine:
git clone https://github.com/doceme/pyspidev.git cd py-spidev sudo python setup.py installa sudo ldconfig sudo reboot
È importante sapere che in LIBSOC ci sono referências de endereçamento da Linker Mezanine, e serve referência caso preciso acessar direttamente a un endereço de IO
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 6
sudo gedit /usr/local/etc/libsoc.conf
Passaggio 3: Crea l'oggetto senza Dweet.io
Come il proprio slogan diz, o dweet.io funziona come un Twitter per IoT, dove come qualcuno può inviare e ricevere dati da Internet de maneira facilitada Una caratteristica importante è che il Dweet non necessita di un'autenticazione complessa per accedere ai dati, o che o torna interessante per iniziare due testi con IoT. Para criar o objeto no Dweet basta seguire os seguenti passi:
1. Accedi a Dweet.io e fai clic su "Riproduci" 2. Na guia POST crie um nom para o obejto no campo “cosa” 3. No campo “content” adicione os dados que serão lidos e enviados. I dati devono essere non formati
"json" 4. Fai clic su "Provalo!" e osserva o resultado em “Response Body” 5. Caso queira con rmar o uncionamento da “coisa”, vá até ocampo "Get Lattest Dweet", insira o nome do
obje criado e clique en "Try it out" per veri car a resposta do Dweet. Per questa applicazione è stato creato l'oggetto “smart_piscina” che ha il seguente contenuto:
{ “status_tratamento”: 0, “ligadesliga_bomba”: 0, “status_bomba”:0, “status_reservatorio”:0, “PH_setpoint”:6, “PH_valor”: 4 }
Nele ci sono tutti i dati necessari per la comunicazione tra DragonBoard e l'applicazione Web. È importante sottolineare che il nome dell'oggetto deve essere alterato da Dweet e da codice sorgente delle applicazioni per evitare che altri dispositivi accedano contemporaneamente a chi genera risultati indesiderati
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 7
Passaggio 4: programmare in Python
Logica di funzionamento
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 8
Il software di Controle da Piscina è stato sviluppato in Python, che è un linguaggio semplice e interpretato, o non ha bisogno di compilatori per ottenere l'esecuzione dell'applicazione. Le funzioni realizzate dal software piscina_ nal.py, che girano su DragonBoard sono le seguenti:
1. Controllare il PH, monitorare il valore medio della piscina e confrontarlo con il “Setpoint” del nido per l'utente no Web app. La correzione avverrà dosando il prodotto attraverso l'attivazione della valvola elettrica.
2. L'azione dell'elettrovalvola è temporizzata, o seja, una certa quantità di prodotto è dosata e logicamente prevede un determinato periodo per realizzare un nuovo dosaggio
3. O controle só é realizado se a bomba da piscina estivar en funcionamento e se o nível do tanque de produto para dosaggiom estater ok!
4. Quando o PH attinge um valor superior ao desejado, a dosaggiom para automaticamente 5. Controla a bomba, ligando e desligando a mesma através do Web app, conforme sollecitação do usuário 6. Monitora e informa ao usuário o nível do reservatório do produto de Dosagem 7. Informa anomalia na bomba, caso seja seja ligada e não rode.
Prima di presentare il codice, dobbiamo realizzare alcune regolazioni su Dragonboard affinché venga comunicata adeguatamente con Dweet.io
Componenti aggiuntivi
Installa la biblioteca REQUESTS per realizzare le funzioni POST e GET in HTTP
sudo pip richieste di installazione
Copiare l'archivio dweet.py per la pasta mesma dove si trova l'applicazione smart_piscina.py
Codice Fonte in Python
A seguire apresentamos o código por partes, nesta primeira são lidas as biblios necessárias, con gurados os IOs e realizada a letura analógica do valor de PH.
import spidev import time da dweet import Dweet da libsoc import gpio da gpio_96boards import GPIO
COMANDO_BBA = 36
#ComandoBomba
NIVEL_PROD = 13
#Chave de nivel
DOSAGGIO_VVL = 115
#Valvula Dosaggio
BBA_LIGADA = 24 #Ritorno di Bomba ligada
GPIO_CS = 18
#Sensore PH (Analogico)
perni = (
(GPIO_CS, 'uscita'),(COMANDO_BBA, 'uscita'),(DOSAGEM_VVL, 'uscita'),(NIVEL_PROD, 'entrata'),(BBA_LIGADA, 'entrata')
)
dolce = dolce()
spi = spidev.SpiDev()
spi.aperto(0,0)
spi.max_speed_hz=10000
spi.modalità = 0b00
spi.bits_per_word = 8def readPH(gpio):
gpio.digital_write(GPIO_CS, GPIO.HIGH)
time.sleep (0.0002)
gpio.digital_write(GPIO_CS, GPIO.LOW)
r = spi.xfer2([0x01, 0x80, 0x00])
gpio.digital_write(GPIO_CS, GPIO.HIGH)
adcout = (r[1] << 8) & 0b1100000000
adcout = adcout | (r[2] & 0xff)
adcout = (adcout * 0.014)
#converte per PH 0 a 14
ritorno adcout
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 9
In seconda parte, è stata realizzata la lettura di Dweet e i dati raccolti in varie parti del mondo per la logica del software:
def le_dweet():
#Le qual setpoint para tratamento
globale ld_bomba, st_bomba, st_trat, st_res, PH_valor, PH_SP
risposta = dweet.latest_dweet(name=”smart_piscina”)
ld_bomba = risposta['with'][0]['content']['ligadesliga_bomba']
st_bomba = risposta['with'][0]['content']['status_bomba']
st_trat = risposta['with'][0]['content']['status_tratamento']
st_res = risposta['con'][0]['content']['status_reservatorio']
PH_valor = risposta['with'][0]['content']['PH_valor']
PH_SP = risposta['with'][0]['content']['PH_setpoint']
ritorna ld_bomba, st_bomba, st_trat, st_res, PH_valor, PH_SP
La terza parte è una funzione che realizza il trattamento della piscina, con logica per l'azione basata su PH, livello di riservazione e bomba lega. Tieni presente che le variazioni di monitoraggio sono le stesse volte che ci sono Dweet, questo è il modo in cui riusciamo ad adeguare i valori logicamente per poi essere inviati di nuovo al servizio.
def tratamento(): global st_trat, st_res, st_bomba st_res = gpio.digital_read(NIVEL_PROD) st_bomba = gpio.digital_read(BBA_LIGADA) if (PH_valor < PH_SP) e ( st_res == 1) e ( st_bomba == 1): gpio. digital_write(DOSAGEM_VVL, GPIO.HIGH) time.sleep(2) #tempo da dosaggiom do produto gpio.digital_write(DOSAGEM_VVL, GPIO.LOW) time.sleep(1) #espera tra dosaggi st_trat = 1 print(“TRATAMENTO LIGADO”) else: gpio.digital_write(DOSAGEM_VVL, GPIO.LOW) st_trat = 0 print(“TRATAMENTO DESlIGADO”) return st_trat, st_res
La quarta e ultima parte è il ciclo di esecuzione della logica. L'ordine delle subrotine è importante per il fatto che i dati lidos di Dweet siano stati aggiornati e inviati per la corretta visualizzazione non Web applicazione.
if __name__=='__main__': con GPIO(pin) come gpio: while True:
le_dweet() tratamento() PH_valor = round(readPH(gpio), 2) if ld_bomba == 1: gpio.digital_write(COMANDO_BBA, GPIO.HIGH) print(“Bomba Ligada”) else: gpio.digital_write(COMANDO_BBA, GPIO. LOW) print(“Bomba Desligada”) print(“Valor do PH = %d” % PH_valor) print(“Valor do SP PH = %d” % PH_SP) print(“”) dweet.dweet_by_name(name=”smart_piscina” , data={“ligadesliga_bomba”:ld_bomba, “status_bomba”:st_bomba, “status_tratamento”:st_trat, “status_reservatorio”:st_res, “PH_valor”:PH_valor, “PH_setpoint”:PH_SP}) time.sleep(10)
https://www.instructables.com/ORIG/FPV/I7ZO/JAMTVW5R/FPVI7ZOJAMTVW5R.py https://www.instructables.com/ORIG/FMD/BHS3/JAMTVW5V/FMDBHS3JAMTVW5V.py
Scarica Scarica
Passaggio 5: sviluppo dell'APP – Ambiente Hídrido
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 10
Plataforma ibrida ionica
L'applicazione per il controllo della piscina si svilupperà utilizzando una piattaforma ibrida, oppure vediamo l'astrazione dell'hardware che l'app verrà utilizzata e svilupperemo un progetto utilizzando HTML, CSS e Javascript che posteriormente potrà essere convertita in un'app per una piattaforma specifica come Android o IOS. In questo caso utilizziamo IONIC, che funziona sulla base della piattaforma Cordova, che consente di visualizzare e testare l'applicazione attraverso il rendering sullo schermo di una pagina Web Navigatore. Per lo sviluppo dell'app, utilizzeremo un linguaggio HTML e Typescript. o IONIC consente anche l'utilizzo del framework Angular per lavorare componenti come Models e Controllers.
Installazione dell'ambiente di sviluppo
Lo sviluppo dell'app sarà realizzato su un computer personale e non su DragonBoard. Iniziamo con l'installazione di node.js, necessário apra o funcionamento di Ionic Accedi al sito https://nodejs.org/en/ e fai il download dell'ultima versione di node.js Dopo aver concluso l'installazione, il gestore di pacchetti NPM deve ter sido installato durante l'installazione di node.js. Ti permetterà di realizzare un'installazione in Ionic. Nessun prompt di comando fa in modo che Windows realizzi un'installazione con i seguenti comandi:
npm installa g cordova ionico npm installa g cordova
Per testare o ionic, il seguente comando potrà essere eseguito e se sarà tutto ok ritornerà alla versione installata:
ionico v.tr
Criação da aplicação non ionico
No, non c'è un'interfaccia grá ca bonita. Devi creare un'app utilizzando la linea di comando. Mas depois a facilitadade de uso compenso. Per creare una nuova applicazione, in questo caso su smart_piscina, digita il seguente comando:
start ionico smart_piscina vuoto
Sarà creata una nuova applicazione sul ramo che sarà salvata dal direttore:
C:UsuáriosNome do usuáriosmart_piscina
Per testare il codice:
cd smart_piscina servizio ionico
Sarà aperta una tela sul navigatore padrão mostrando un'applicazione in branco
Passo 6: Desenvolvimento Do APP – Edição Da Aplicação
A edição da aplicação in branco gerada pelo Ionic será realizada no Visual Studio Code, aplicativo gratuito de programação desenvolvido pela Microsoft e que pode ser baixado no site: https://code.visualstudio.com/download Os códigos alterados são apresentados a seguir, Mas è anche disponibile per il download.
Interfaccia
L'interfaccia con l'utente verrà modificata nell'archivio home.html. Nota come tags Le applicazioni sono proprie di Ionic e Contem Smart Piscina Con IoT – Ionic, Dweet E DragonBoard: Pagina 11
alcuni parametri inseriti utilizzando le risorse del framework Angular. Le risorse di Angular vengono utilizzate sul pulsante di azione della bomba e all'ingresso del valore di Setpoint del PH. Non è possibile presentare il codice qui per una limitazione di Instructables, che apaga come tags. Qualsiasi forma è disponibile non archiviata compatta per il download.
Procedimento
Poiché le funzioni di riferimento per la lettura e la scrittura dei dati in Dweet e la logica generale per il corretto funzionamento dell'interfaccia non sono state archiviate in home.ts sviluppate in Typescript, il linguaggio è molto simile a Javascript
import { Component } from '@angular/core'; import { NavController } from 'ionic-angular';
//É preciso importar o provider. import { DweetProvider } from '../../providers/dweet/dweet';
@Component({ selettore: 'page-home', templateUrl: 'casa.html'
})
classe di esportazione HomePage {
costruttore (navCtrl pubblico: NavController, DweetProvider privato: DweetProvider) { }
//Declarações de Variáveis public resposaDweet: string=””; public status_tratamento: string=”pericolo”; pubblico st_trat = 0; public status_bomba: string=”pericolo”; pubblico st_bba = 0; public status_reservatorio: string=”pericolo”; public st_res = 0; public locais = Array(); public PH_val = 0; pubblico SP_PH = 0;
//Modello del pulsante di collegamento della bomba public bomba_model = {
controllato: falso, nome: "Ligar Bomba" }
ioneViewDidLoad () { //buscando os dados no Dweet e salvando nas variáies locais this.DweetProvider.getLastestDweet(“smart_piscina”).subscribe( data=>{
const risposta = (dati come qualsiasi); const objeto_retorno = JSON.parse(response._body); this.locais = objeto_retorno.with[0].content; this.bomba_model.checked = objeto_retorno.with[0].content.ligadesliga_bomba; this.st_bba = objeto_retorno.with[0].content.status_bomba; this.st_trat = objeto_retorno.with[0].content.status_tratamento; this.st_res = objeto_retorno.with[0].content.status_reservatorio; this.PH_val = objeto_retorno.with[0].content.PH_valor; this.SP_PH = objeStmo_arret tPoirsncoin.wa iCtho[m0].IcooTn-teIonnti.cP,HD_wseeettpEoinDtr;agonBoard: Pagina 12
this.SP_PH = objeto_retorno.with[0].content.PH_setpoint; console.log(this.locais); }, errore => { console.log(errore); } ) //Atualizza icone di stato this.status_bomba = ((this.st_bba == 1) ? “secondario” : “pericolo”); this.status_tratamento = ((this.st_trat == 1) ? “secondario” : “pericolo”); this.status_reservatorio = ((this.st_res == 1) ? “secondario” : “pericolo”); }
//Botao Atualizar update() {
questo.ioneViewDidLoad(); }
//Liga Desliga Bomba liga_des_bomba(){ this.dweetPost() }
attualiza_sp(){ this.dweetPost()
}
dweetPost(){ //Converte i dati del pulsante Boolean per intero const ld_bba = ((this.bomba_model.checked == true) ? 1 : 0);
// Invia dati per Dweet.io const json_dweet = {“ligadesliga_bomba”: ld_bba, “status_bomba”: this.st_bba, “status_tratamento”: this.st_trat, “status_reservatorio”: this.st_res, “PH_valor”: this.PH_val , “PH_setpo int”: this.SP_PH}; this.DweetProvider.setDweet(“smart_piscina”,json_dweet).subscribe(
dati=>{ console.log(dati); }, errore=> { console.log(errore); } ) } }
Fornitore dolce
È necessario creare un provider per realizzare una comunicazione HTTP con Dweet. Questo è fatto attraverso Ionic con il seguente comando al prompt di comando:
fornitore di generazione ionica dweet
Questo momento è gerado o archiviato dweet.ts che dovrà essere seguito dai comandi di riferimento per la connessione con il Dweet e la realizzazione delle funzioni di GET e POST. Il codice necessario è mostrato a seguire:
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 13
import { Http } da '@angular/http'; import { Injectable } from '@angular/core'; importa 'rxjs/aggiungi/operatore/mappa'; /*
Classe generata per il provider DweetProvider. Vedi https://angular.io/guide/dependency-injection per maggiori informazioni sui provider e su Angular DI. */ @Injectable() classe di esportazione DweetProvider { base privataUrl = "https://dweet.io:443/" costruttore (http pubblico: Http) {
console.log('Ciao DweetProvider Provider'); } //Metodo responsável por buscar as informações no Dweet. getLastestDweet(cosa: stringa) {
costante url_get = this.baseUrl + "ottieni/ultimo/dweet/for/" + cosa; console.log(url_Ottenere); restituisci questo.http.get(url_Ottenere); } //Metodo resposnsável por modificare os dados no Dweet. setDweet(cosa, corpo) { return this.http.post(this.baseUrl + "dweet/per/"+ cosa, corpo); } }
Per m, è necessario realizzare una modalità di download nell'app.module.ts per gestire adeguatamente i componenti HTTP per il funzionamento del Dweet Provider:
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 14
import {BrowserModule} da '@angular/platform-browser'; import { ErrorHandler, NgModule } da '@angular/core'; import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular'; importa { SplashScreen } da '@ionic-native/splash-screen'; import { StatusBar } from '@ionic-native/status-bar'; import { HttpModule } da '@angular/http'; import { MyApp } from './app.component'; import { HomePage } from '../pages/home/home'; import { DweetProvider } from '../providers/dweet/dweet'; @NgModule({
dichiarazioni: [ MyApp, HomePage
], importazioni: [
BrowserModule, IonicModule.forRoot(MyApp), //Importa il modulo HTTP usato con Dweet. HttpModule ], bootstrap: [IonicApp], entryComponents: [ MyApp, HomePage ], provider: [ StatusBar, SplashScreen, {provide: ErrorHandler, useClass: IonicErrorHandler}, DweetProvider ] }) export class AppModule {}
Polvere!
Salve tudo e testare l'applicazione attraverso il comando:
servizio ionico
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 15
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 16
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 17
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 18
https://www.instructables.com/ORIG/FUH/W6SK/JAMTWKY9/FUHW6SKJAMTWKY9.zip
Scaricamento
Passo 7: Colocando Tudo Para Funcionar!!
1. Avviando Dweet: No site Dweet.io, chiama l'oggetto conforme descritto al passo 3
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 19
2. Avviando l'applicazione su DragonBoard: Abra o Terminal no Linaro, accedi a pasta dove si trova l'applicazione smart_home.py e digita il comando:
sudo python smarthome.py
3.Iniziando l'applicazione non Ionic: Abra o prompt de command, acesse a pasta onde está o aplicativo criado no Ionic e digite o command
servizio ionico
https://youtu.be/O27f93xE0bk https://youtu.be/HaSeRf3wkSI https://youtu.be/vx16cLQKOeU
Fase 8:
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pagina 20
Documenti / Risorse
![]() |
instructables Smart Piscina Com IoT Ionic Dweet E DragonBoard [pdf] Istruzioni Smart Piscina Com IoT Ionic Dweet E DragonBoard, Smart Piscina, Com IoT Ionic Dweet E DragonBoard, Dweet E DragonBoard |