Smart Piscina Com IoT Ionic Dweet E DragonBoard
Impormasyon ng Produkto:
Ang Smart Piscina Com IoT ay isang IoT architecture na produkto na
nagbibigay-daan sa kontrol at pagsubaybay ng isang swimming pool gamit ang Ionic,
Dweet, at mga teknolohiya ng DragonBoard. Kabilang dito ang mga sangkap tulad ng
ang Linker Mezzanine, 96Boards GPIO, at Py-Spidev. Ang produkto
nagbibigay-daan sa mga user na subaybayan ang katayuan ng paggamot, katayuan ng bomba,
reservoir status, at pH value ng pool. Ang produkto din
may kasamang Dweet provider na nagbibigay-daan sa mga user na magpadala ng data sa
Dweet.io platform para sa karagdagang pagsusuri.
Mga Tagubilin sa Paggamit ng Produkto:
Upang magamit ang produktong Smart Piscina Com IoT, sundin ang mga ito
mga tagubilin:
- I-update at i-upgrade ang software sa pamamagitan ng pagpapatakbo ng sumusunod
mga utos sa terminal:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
- Mag-install ng mga karagdagang bahagi sa pamamagitan ng pagpapatakbo ng mga sumusunod na command
sa 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
- I-edit ang libsoc.conf file sa pamamagitan ng pagpapatakbo ng sumusunod na command sa
ang terminal:
sudo gedit /usr/local/etc/libsoc.conf
I-update ang file nilalaman sa mga sumusunod:
{ status_tratamento: 0, ligadesliga_bomba: 0, status_bomba:0,
status_reservatorio:0, PH_setpoint:6, PH_valor: 4 } - I-install ang library ng mga kahilingan sa pamamagitan ng pagpapatakbo ng sumusunod na command sa
ang terminal:
sudo pip install requests
- Gamitin ang produkto sa pamamagitan ng pag-import ng spidev, oras, Dweet, gpio, at
GPIO. Patakbuhin ang mga kinakailangang function upang makontrol at masubaybayan ang
swimming pool. Para kay example, gamitin ang readPH function para basahin ang pH
halaga ng pool. Gamitin ang liga_des_bomba function para i-on/i-off
ang bomba. Gamitin ang atualiza_sp function para i-update ang pH setpoint
halaga. Gamitin ang function na dweetPost upang magpadala ng data sa Dweet.io
plataporma para sa karagdagang pagsusuri.
mga instructable
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard
ni rxidieh
Introdução
Apresento aqui uma solução para monitoramento e tratamento de piscinas de maneira remota, que poderia ser usado tanto pelo proprietário de um imóvel, como por algum piscineiro que poderia veri car remotamente diversas piscinas as quais ele atende. Ang paggamit ng hardware ay baseado sa DragonBoard sa Qualcom at sa Linker Mezanine at 96boards. Gamitin ang mga sensor sa Arrow para sa isang placa Linker Mezanine. Esta não é uma implementação nal! Mas sim um desenvolvimento para mostrar como realizar a programação do Hardware, a comunicação com um serviço reposiório na nuvem at criação de um app para acesso at kontrol sa sistema. As funções criadas são: -Kontrol sa PH da Piscina -Acionamento da Bomba at monitoramento -Monitoramento do nível do reservatório de produto para tratamento
Arquitetura IoT
Automação eo controle do tratamento at piscina são realizados para sa Dragonboard, com interface na ginagamit sa pamamagitan ng app Web. Para sa kung saan ito posible, ay utilizada at arquitetura demonstrada na imagem, at binubuo ng:
. Web, neste caso o Dweet.io 3. O Dweet.io disponibiliza as informações lidas para que sejam disponíveis para outras aplicações 4. Um aplicativo Web desenvolvido no Ionic at Acessa os data do Dweet.io at ipinapakita ng isang interface
HTML para sa usuário
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 1
Hakbang 1: Configuração Do Hardware
Dito, gumamit din ng DragonBoard 410c para maisakatuparan ang isang automate at kontrolin ang lokal na piscina. Ilagay ang Dragonboard sa pamamagitan ng pag-install ng isang shield sa 96boards chamado Linker Mezanine, na pinapadali o i-access ang IOs sa DragonBoard. Este shield tb possui dois conversores A/D para leitura de dados analógicos. May mga imaheng umiiral na isang con guração utilizada para conexão dos IOs deste exemplo.
1. Foi considerado o uso de um PHmetro que forneça uma saída proporcional de 0 a 5V para que seja compatível com a entrada do A/D. Caso seja utilizado um com sinal maior, será necessário um divisor resistivo para compatibilizar o sinal com a entrada
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 2
2. Walang halimbawa, ao invés de um PHmetro foi utilizado um potênciometro para simulação do sinal 3. Para simular o acionamento da bomba foi utilizado um led, que em um projeto real poderia ser um
acoplador ótico acionando um TRIAC ou relé 4. O sensor de rotação at bomba foi simulado com um sensor de toque. Em uma aplicação real poderia ser
um sensor no eixo da bomba ou um contado auxiliar do contator que aciona a bomba. Neste caso, em caso de defeito da bomba ou queda do disjuntor, seria possível veri car que a bomba foi acionada at não está girando 5. O sensor para sa nível do reservatório é um do tipong “tilt” que deverá ser instalado em uma bóia 6 Sa pamamagitan ng m, a doseagem de produto é feita por uma eletroválvula acionada por um relé
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 3
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 4
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 5
Hakbang 2: Paghahanda ng DragonBoard
Atualização da Placa at instalação das bibliotecas p/ 96boards
Ang isang placa DragonBoard vem de fábrica com uma distribuiçaõ Linux chamada Linaro, ito ay su cient em recursos para sa executar esta aplicação, basta na lang naaalis ang placa at realizar at installação das bibliotecas sa 96boards para sa interface com a Linker Mezanine. Uma vez que estamos trabalhando em Linux, podemos acessar o Terminal para realizar os comandos de atualização at instalação de bibliotecas: Os seguintes comandos realizam at atualização da placa:
sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade
Para sa trabalhar com o Python, maaari mong malaman ang isang instalação de um editor ng textos at interpretador
sudo apt-get install gedit sudo apt-get install python-pip
Na sequeência serão instaladas as Bibliotecas necessárias. Os commandos devem ser apresentados na ordem a seguir at são criticos para sa instalação correta:
sudo apt-get install build-essential autoconf automake libtool-bin pkg-config python-dev sudo reboot
LIBSOC (Acesso 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
96boards:
git clone https://github. com/96boards/96BoardsGPIO.git
cd 96BoardsGPIO/
sudo ./autogen.sh sudo ./configure sudo make sudo make install sudo ldconfig
Quase no m… mas aproveitamos para i-install ang tb at biblioteca para ma-access ang bahaging analógica sa Linker Mezanine:
git clone https://github.com/doceme/pyspidev.git cd py-spidev sudo python setup.py install sudo ldconfig sudo reboot
Ang importanteng lebrar que na LIBSOC estão as referências de endereçamento da Linker Mezanine, at serve de referência caso precise acessar diretasmente um endereço de IO
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 6
sudo gedit /usr/local/etc/libsoc.conf
Hakbang 3: Criação Do Objeto No Dweet.io
Como o próprio slogan diz, o dweet.io funciona como um Twitter para sa IoT, onde as coisas podem enviar at receber naging internet de maneira facilitada Uma mga katangiang importante e que o Dweet não necessita de uma autenticação complexa para acessar os dados, o que o torna interessante para início dos testes com IoT. Para criar o objeto no Dweet basta seguir os seguintes passos:
1. Acessar o Dweet.io at i-click ang “Play” 2. Na guia POST crie um nom para o obejto no campo “bagay” 3. Hindi campo “content” addicione os data que serão lidos and enviados. Os dados devem estar no formato
“json” 4. Clique em “Subukan ito!” at obserbahan o resulta ng “Katawan ng Pagtugon” 5. Kaso queira con rmar o uncionamento da “coisa”, at até ocampo “Kumuha ng Pinakabagong Dweet”, insira o nome do
obje criado and clique em “Try it out” para veri car a resposta do Dweet. Para esta aplicação foi criado o objeto “smart_piscina” que tem o seguinte conteúdo:
{ “status_tratamento”: 0, “ligadesliga_bomba”: 0, “status_bomba”:0, “status_reservatorio”:0, “PH_setpoint”:6, “PH_valor”: 4 }
Hindi na kailangang gawin ang lahat ng kailangan para sa komunikasyon sa DragonBoard at aplikasyon Web. Mahalagang ressaltar que o nome do objeto deve ser alterado no Dweet at no código fonte das aplicações para evitar que outros dispositivos acessem simultaneamente at coisa gerando resultados indesejados
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 7
Hakbang 4: Programa ng Python
Logica de Funcionamento
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 8
O software de Controle da Piscina foi desenvolvido em Python, que e uma linguagem simples and interpretada, ou seja não necessita de compiladores para obter a execução da aplicação. Bilang funções realizadas pelo software piscina_ nal.py, que roda sa DragonBoard são as seguintes:
1. Controla o PH, monitorando o valor medido na piscina at comparando com o “Setpoint” de nido pelo usuário no Web app. A correção será feita dosando produto através do acionamento da eletroválvula.
2. O acionamento da eletroválvula é temporizado, ou seja, uma certa quantidade de produto é dosada ea logica aguarda um determinado período para realizar uma nova dosagem
3. O controle só é realizado se a bomba da piscina estiver em funcionamento at se o nível do tanque de produto para dosagem estiver ok!
4. Quando o PH ay umabot sa lakas ng loob o desejado, isang dosis para sa awtomatikong pag-aayos 5. Kontrolin ang bomba, ligando at desligando at mesma através do Web app, conforme solicitação do usuário 6. Monitora at informa ao usuário o nível do reservatório do produto de Dosagem 7. Informa anomalia na bomba, caso seja ligada at não rode.
Antes de apresentar o código, devemos realizar alguns ajustes na Dragonboard para que ela se comunique adequadamente com o Dweet.io
Componente adicionais
Mag-install ng biblioteca REQUESTS para realizar funções de POST at GET em HTTP
sudo pip mga kahilingan sa pag-install
Copiar o arquivo dweet.py para sa mesma pasta onde está a applicação smart_piscina.py
Código Fonte sa Python
A seguir apresentamos o código por partes, nesta primeira são lidas as bibliotecas necessárias, con gurados os IOs at realizada a leitura analógica do valor de PH.
import spidev import oras mula sa dweet import Dweet mula sa libsoc import gpio mula sa gpio_96boards import GPIO
COMANDO_BBA = 36
#Comando Bomba
NIVEL_PROD = 13
#Chave de nivel
DOSAGEM_VVL = 115
#Valvula Dosagem
BBA_LIGADA = 24 #Retorno de Bomba ligada
GPIO_CS = 18
#Sensor PH (Analogico)
mga pin = (
(GPIO_CS, 'out'),(COMANDO_BBA, 'out'),(DOSAGEM_VVL, 'out'),(NIVEL_PROD, 'in'),(BBA_LIGADA, 'in')
)
dweet = Dweet()
spi = spidev.SpiDev()
spi.open(0,0)
spi.max_speed_hz=10000
spi.mode = 0b00
spi.bits_per_word = 8def readPH(gpio):
gpio.digital_write(GPIO_CS, GPIO.HIGH)
oras. tulog (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) at 0b1100000000
adcout = adcout | (r[2] at 0xff)
adcout = (adcout * 0.014)
#converte para sa PH 0 a 14
balik adcout
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 9
Sa isang bahagi, ito ay natanto ng isang leitura ng Dweet at ang naging mga armas ng mga variáveis globais para sa mga logicas para sa software:
def le_dweet():
#Le qual setpoint para tratamento
pandaigdigang ld_bomba, st_bomba, st_trat, st_res, PH_valor, PH_SP
resposta = dweet.latest_dweet(name=”smart_piscina”)
ld_bomba = resposta['with'][0]['content']['ligadesliga_bomba']
st_bomba = resposta['with'][0]['content']['status_bomba']
st_trat = resposta['with'][0]['content']['status_tratamento']
st_res = resposta['with'][0]['content']['status_reservatorio']
PH_valor = resposta['with'][0]['content']['PH_valor']
PH_SP = resposta['with'][0]['content']['PH_setpoint']
ibalik ang ld_bomba, st_bomba, st_trat, st_res, PH_valor, PH_SP
A terceira part is a função que realiza o tratamento da piscina, com a logica para acionamento baseada no PH, nível do reservatório at bomba ligada. Tandaan na ang mga pagkakaiba-iba ng monitoramento são bilang mesmas lidas pelo Dweet, desta forma conseguimos atualizar os valores na logica para que despois sejam novamente enviados ao serviço.
def tratamento(): global st_trat, st_res, st_bomba st_res = gpio.digital_read(NIVEL_PROD) st_bomba = gpio.digital_read(BBA_LIGADA) kung (PH_valor <PH_SP) at ( st_res == 1) at ( st_gpiomba ==. 1): digital_write(DOSAGEM_VVL, GPIO.HIGH) time.sleep(2) #tempo da dosagem do produto gpio.digital_write(DOSAGEM_VVL, GPIO.LOW) time.sleep(1) #espera entre dosagens st_trat = 1 print(“TRATAMENTO lIGADO”) iba pa: gpio.digital_write(DOSAGEM_VVL, GPIO.LOW) st_trat = 0 print("TRATAMENTO DESlIGADO") return st_trat, st_res
A quarta e última parte é o looping de execução da logica. Ang isang ordem onde bilang subrotinas são chamadas ay mahalaga para sa kung ano ang magiging lidos pelo Dweet sejam atualizados at depois enviados para sa isang correta visualização no Web app.
kung __name__=='__main__': na may GPIO(pins) bilang gpio: habang True:
le_dweet() tratamento() PH_valor = round(readPH(gpio), 2) kung 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
I-download I-download
Hakbang 5: Desenvolvimento Do APP – Ambiente Hídrido
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 10
Plataforma híbrida Ionic
O aplicativo para sa controle da piscina será desenvolvido utilizando uma plataforma híbrida, ou seja, fazemos at abstração do hardware que o app será utilizado at desenvolvemos um projeto utilizando HTML, CSS at Javascript que posteriormente pode ser convertido em um app for umape plato Android o IOS. Neste caso utilizamos o IONIC, que funciona baseado na plataforma Cordova, que permite visualizar and testar a aplicação através da renderização na mesma na tela de um Web Browser. Para sa Desenvolvimento ng app, gumamit ng linguagem HTML at Typescript. o Pinahihintulutan ng IONIC ang paggamit ng framework Angular para sa trabalhar ocs na mga bahagi tulad ng Mga Modelo at Controller.
Instalação do Ambiente de Desenvolvimento
O desenvolvimento do app será realizado em um computador pessoal, and não na placa DragonBoard. Iniciaremos sa pamamagitan ng pag-install ng node.js, kinakailangan apra o pag-andar ng Ionic Acessar o site https://nodejs.org/en/ at fazer o I-download ang ultima versão do node.js Após concluída a instalação, o gerencador de pacotes NPM deve kung saan ang instalado ay na-install at na-install sa node.js. Pinapayagan ka nitong mai-install ang Ionic. Walang prompt ng command na napagtanto ng Windows ang isang instalação com os seguintes commandos:
npm install g cordova ionic npm install g cordova
Para sa testar o ionic, o seguinte commando pode ser executado at se estiver tudo ok retornará a versão instalada:
ionic v
Criação da aplicação no Ionic
Oo, hindi mo na ako magagamit sa interface. Tem que criar o app utilizando a linha de commandos. Mas depois a facilidade de uso compensa. Para criar uma nova aplicação, neste caso a smart_piscina, digitamos o seguinte commando:
ionic start smart_piscina blangko
Será criada uma nova aplicação em branco que estará salva no diretório:
C:UsuáriosNome do usuáriosmart_piscina
Para sa testar o código:
cd smart_piscina ionic serve
Será aberta uma tela no navegador padrão mostrando a aplicação em branco
Hakbang 6: Desenvolvimento Do APP – Edição Da Aplicação
Ang edição da aplicação em branco gerada pelo Ionic será realizada no Visual Studio Code, aplicativo gratuito de programção desenvolvido para sa Microsoft at kung saan maaari mong gamitin ang site: https://code.visualstudio.com/download Os códigos alterados sa apresentados at seguir, mas também estão disponíveis para i-download.
Interface
Isang interface com o usuário será editada no arquivo home.html. Tandaan que bilang tags utilizadas são próprias do Ionic at contém Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Page 11
alguns parâmetros inseridos utilizando os recursos do framework Angular. Os recursos do Angular são utilizados no botão de acionamento da bomba at entrada do valor de Setpoint sa PH. Não é possível apresentar o código aqui por uma limitação do Instructables, que apaga as tags. De qualquer form na ito ay hindi magagamit sa arquivo compactado para sa pag-download.
Processamento
Bilang fuções referentes a leitura at escrita de dados no Dweet at logications em geral para sa correto functions da interface estão no arquivo home.ts desenvolvido em Typescript, liguagem muito semelhante ao Javascript
mag-import ng { Component } mula sa '@angular/core'; import {NavController } mula sa 'ionic-angular';
//E preciso importar o provider. import { DweetProvider } mula sa '../../providers/dweet/dweet';
@Component({ selector: 'page-home', templateUrl: 'home.html'
})
i-export ang homepage ng klase {
constructor(pampublikong navCtrl: NavController, pribadong DweetProvider: DweetProvider) { }
//Declarações de Variáveis public respostaDweet: string=””; public status_tratamento: string=”panganib”; pampublikong st_trat = 0; public status_bomba: string=”panganib”; pampublikong st_bba = 0; public status_reservatorio: string=”panganib”; pampublikong st_res = 0; pampublikong locais = Array(); pampublikong PH_val = 0; pampublikong SP_PH = 0;
//Model do botão de ligar bomba public bomba_model = {
may check: false, pangalan: “Ligar Bomba” }
ionViewDidLoad () { //buscando os dados no Dweet at salvando nas variáies locais locais this.DweetProvider.getLastestDweet(“smart_piscina”).subscribe( data=>{
const tugon = (data bilang anumang); 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; ito.SP_PH = objeStmo_arret tPoirsncoin.wa iCtho[m0].IcooTn-teIonnti.cP,HD_wseeettpEoinDtr;agonBoard: Pahina 12
ito.SP_PH = objeto_retorno.with[0].content.PH_setpoint; console.log(this.locais); }, error => { console.log(error); } ) //Atualiza icones de Status this.status_bomba = ((this.st_bba == 1) ? “secondary” : “danger”); this.status_tratamento = ((this.st_trat == 1) ? “pangalawang” : “panganib”); this.status_reservatorio = ((this.st_res == 1) ? “pangalawang” : “panganib”); }
//Botão Atualizar update() {
ito.ionViewDidLoad(); }
//Liga Desliga Bomba liga_des_bomba(){ this.dweetPost() }
atualiza_sp(){ this.dweetPost()
}
dweetPost(){ //Converte dados do botão de Boolean para inteiro const ld_bba = ((this.bomba_model.checked == true) ? 1 : 0);
//Envia dados para o 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(
data =>{ console.log(data); }, error => { console.log(error); } ) } }
Tagabigay ng Dweet
Nangangailangan ng criar um provider para maisakatuparan ang pakikipag-usap sa HTTP sa Dweet. Isto is feito através do Ionic com o seguinte commando no prompt de commando:
ionic bumuo ng provider ng dweet
Neste momento é gerado o arquivo dweet.ts que deverá ter os commandos referentes a conexão com o Dweet at realização das funções de GET e POST. O código necessário ay exibido a seguir:
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 13
mag-import ng { Http } mula sa '@angular/http'; mag-import ng { Injectable } mula sa '@angular/core'; import 'rxjs/add/operator/map'; /*
Binuo na klase para sa provider ng DweetProvider. Tingnan ang https://angular.io/guide/dependency-injection para sa higit pang impormasyon sa mga provider at Angular DI. */ @Injectable() export class na DweetProvider { private baseUrl = “https://dweet.io:443/” constructor(pampublikong http: Http) {
console.log('Hello DweetProvider Provider'); } //Método responsável por buscar as informações no Dweet. getLastestDweet(bagay: string) {
const url_get = this.baseUrl + “kunin/pinakabago/dweet/para/” + bagay; console.log(url_get); ibalik ito.http.get(url_get); } //Método resposnsável por modificar os dados no Dweet. setDweet(thing, body) { return this.http.post(this.baseUrl + “dweet/for/”+ bagay, katawan); } }
Sa pamamagitan ng m, ay kailangan na realizar uma modi cação no arquivo app.module.ts para sa sapat na pag-iingat ng mga bahagi ng HTTP para sa function ng Dweet Provider:
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 14
i-import ang { BrowserModule } mula sa '@angular/platform-browser'; import { ErrorHandler, NgModule } mula sa '@angular/core'; import {IonicApp, IonicErrorHandler, IonicModule } mula sa 'ionic-angular'; i-import ang { SplashScreen } mula sa '@ionic-native/splash-screen'; i-import ang { StatusBar } mula sa '@ionic-native/status-bar'; mag-import ng { HttpModule } mula sa '@angular/http'; mag-import ng { MyApp } mula sa './app.component'; mag-import ng { HomePage } mula sa '../pages/home/home'; import { DweetProvider } mula sa '../providers/dweet/dweet'; @NgModule({
mga deklarasyon: [ MyApp, HomePage
], mga import: [
BrowserModule, IonicModule.forRoot(MyApp), //Importar o modulo HTTP gamit ang Dweet. HttpModule ], bootstrap: [IonicApp], entryComponents: [ MyApp, HomePage ], mga provider: [ StatusBar, SplashScreen, {provide: ErrorHandler, useClass: IonicErrorHandler}, DweetProvider ] }) export class AppModule {}
Ufa!
Iligtas ang iyong sarili at subukan ang mga aplikasyon ng mga utos:
ionic maglingkod
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 15
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 16
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 17
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 18
https://www.instructables.com/ORIG/FUH/W6SK/JAMTWKY9/FUHW6SKJAMTWKY9.zip
I-download
Hakbang 7: Colocando Tudo Para Funcionar!!
1.Iniciando o Dweet: Walang site na Dweet.io, crie o objeto conform descrito no passo 3
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 19
2.Iniciando ang application ng DragonBoard: Abra o Terminal no Linaro, i-access ang pasta onde está ng applicação smart_home.py at digite o commando:
sudo python smarthome.py
3.Iniciando a application no Ionic: Abra o prompt de commando, i-access ang pasta onde está o aplicativo criado no Ionic at digite o commando
ionic maglingkod
https://youtu.be/O27f93xE0bk https://youtu.be/HaSeRf3wkSI https://youtu.be/vx16cLQKOeU
Hakbang 8:
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Pahina 20
Mga Dokumento / Mga Mapagkukunan
![]() |
instructables Smart Piscina Com IoT Ionic Dweet E DragonBoard [pdf] Mga tagubilin Smart Piscina Com IoT Ionic Dweet E DragonBoard, Smart Piscina, Com IoT Ionic Dweet E DragonBoard, Dweet E DragonBoard |