I-Smart Piscina Com IoT Ionic Dweet E DragonBoard

Ulwazi Lomkhiqizo:

I-Smart Piscina Com IoT iwumkhiqizo wezokwakha we-IoT
inika amandla ukulawula nokuqapha indawo yokubhukuda kusetshenziswa i-Ionic,
I-Dweet, kanye nobuchwepheshe be-DragonBoard. Kuhlanganisa izingxenye ezifana
i-Linker Mezzanine, i-96Boards GPIO, ne-Py-Spidev. Umkhiqizo
ivumela abasebenzisi ukuthi baqaphe isimo sokwelashwa, isimo sepompo,
isimo sedamu, kanye nenani le-pH lechibi. Umkhiqizo futhi
ihlanganisa umhlinzeki we-Dweet ovumela abasebenzisi ukuthi bathumele idatha ku-
Inkundla ye-Dweet.io yokuhlaziya okwengeziwe.

Imiyalo yokusetshenziswa komkhiqizo:

Ukuze usebenzise umkhiqizo we-Smart Piscina Com IoT, landela lokhu
imiyalelo:

  1. Buyekeza futhi uthuthukise isofthiwe ngokusebenzisa okulandelayo
    imiyalo kutheminali:
    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get dist-upgrade
  2. Faka izingxenye ezengeziwe ngokusebenzisa imiyalo elandelayo
    esigungwini:
    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
  3. Hlela ifayela le-libsoc.conf file ngokusebenzisa umyalo olandelayo ku
    itheminali:
    sudo gedit /usr/local/etc/libsoc.conf
    Buyekeza i file okuqukethwe kokulandelayo:
    { status_tratamento: 0, ligadesliga_bomba: 0, status_bomba:0,
    status_reservatorio:0, PH_setpoint:6, PH_valor: 4 }
  4. Faka ilabhulali yezicelo ngokusebenzisa umyalo olandelayo ku
    itheminali:
    sudo pip install requests
  5. Sebenzisa umkhiqizo ngokungenisa i-spidev, isikhathi, i-Dweet, i-gpio, kanye
    I-GPIO. Qalisa imisebenzi edingekayo ukuze ulawule futhi uqaphe i
    Indawo yokubhukuda. Okwesiboneloample, sebenzisa umsebenzi we-readPH ukuze ufunde i-pH
    ukubaluleka kwechibi. Sebenzisa umsebenzi we-liga_des_bomba ukuze uvule/uvale
    iphampu. Sebenzisa umsebenzi we-atualiza_sp ukuze ubuyekeze indawo yokubeka i-pH
    inani. Sebenzisa umsebenzi we-dweetPost ukuthumela idatha ku-Dweet.io
    inkundla yokuhlaziya okwengeziwe.

ezifundiswayo
I-Smart Piscina Com IoT – Ionic, Dweet E DragonBoard
ngo-rxidieh
Isingeniso
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. Izingxenyekazi zekhompiyutha ezisetshenziswayo zifaka i-DragonBoard ne-Qualcom ne-placa ye-Linker Mezanine nama-96boards. Sebenzisa izinzwa ze-Arrow ku-placa Linker Mezanine. Esta não é uma implementação nal! Mas sim desenvolvimento for mostrar como realizar a programação do Hardware, a comunicação com um serviço repositório ne nuvem ea criação de um app para acesso e controle do sistema. As funções criadas são: -Lawula i-PH da Piscina -Acionamento da Bomba e monitoramento -Monitoramento do nível do reservatório de produto para tratamento
I-Arquitetura IoT
I-automação eo controle do tratamento da piscina são realizados pela Dragonboard, com interface do usuário ngohlelo lokusebenza Web. Njengoba le ncazelo itholakala, isetshenziselwa ukuboniswa kwesithombe nesithombe, futhi ihlanganisa:
1. Os dados são lidos e processados ​​pela Dragonboard 2. I-DragonBoard escreve em repositório na 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 e Acessa os dados do Dweet.io e apresenta em uma interface
I-HTML yohlelo lokusebenza
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 1

Isinyathelo 1: Configuração Do Hardware
Ngokunjalo, sebenzisa i-DragonBoard 410c ukuze ufezekise i-automação nokulawula i-piscina yendawo. Ujoyine i-Dragonboard ngokufaka isihlangu sakho kumabhodi angu-96 we-Linker Mezanine, ukuze kube lula ukutholakala kwe-IOs ku-DragonBoard. Este shield tb possui dois conversos A/D para leitura de dados analógicos. Nas images existe a con guração utilizada para conexão dos IOs deste exemplo.
1. I-Foi considerado of 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. I-Caso seja isebenzisa i-com sinal maior, idinga i-divisor resistivo para compatibilizar o sinal com a entrada
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 2

2. Asikho isibonelo, i-PHmetro isetshenziswa ngokusetshenziswa kwe-simulação do sinal 3. I-simular o acionamento da bomba foi utilizado um led, que em um projeto real poderia ser um
i-acoplador ótico acionando um TRIAC noma i-relé 4. O inzwa ye-rotação da bomba foi simulado com um inzwa ye-toque. Em uma aplicação real poderia ser
um inzwa no eixo da bomba ou um contado auxiliar do contator que aciona a bomba. I-Neste caso, em caso 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 em uma bóia 6 . Por m, a doseagem de produto é feita por uma eletroválvula acionada por um relé
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 3

I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 4

I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 5

Isinyathelo sesi-2: Preparação Da DragonBoard
I-Atualização da Placa instalação das bibliotecas p/ 96boards
I-placa DragonBoard ye-fabrica com uma isabalalisa i-Linux chamada Linaro, ela é su ciente em recursos para executar esta aplicação, bastando atualizar a placa and realizar instalação das bibliotecas das 96boards para interface Mezani com. Uma une-estamos trabalhando e-Linux, i-Podemos acessar noma i-Terminal para realizar os comandos de atualização e-instalação de bibliotecas: Os seguintes comandos realizam atualização da placa:
sudo apt-get update sudo apt-get thuthukisa sudo apt-get dist-upgrade
Para trabalhar com o Python, também bona instalação de um editor de textos e do interpretador
sudo apt-get install gedit sudo apt-get install python-pip
Na sequeência serão instaladas as Bibliotecas necessárias. Os comandos devem ser apresentados na ordem a seguir e são críticos para a instalação correta:
sudo apt-get install build-essential autoconf automake libtool-bin pkg-config python-dev sudo reboot
I-LIBSOC (i-Acesso a Linker Mezanine)
i-git clone https://github.com/jackmitch/ libsoc.git cd libsok sudo autoreconf -i sudo ./configure -enable-python=2 -enableboard= dragonboard410c -with-board-configs sudo yenza i-sudo ifake i-sudo ldconfig /usr /local/lib sudo qala kabusha
96 amabhodi:
git clone https://github. com/96boards/96BoardsGPIO.git
cd 96boardsGPIO/
sudo ./autogen.sh sudo ./configure sudo yenza i-sudo yenza ukufaka i-sudo ldconfig
I-Nom no m… uma ufakazelwa ngokufaka i-tb ne-biblioteca ukuze uthole ingxenye ye-analogica ye-Linker Mezanine:
git clone https://github.com/doceme/pyspidev.git cd py-spidev sudo python setup.py faka sudo ldconfig sudo reboot
É importante lebrar que na LIBSOC estão as referências de endereçamento da Linker Mezanine, eserva de referência caso precise acessar diretamente um endereço de IO
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 6

sudo gedit /usr/local/etc/libsoc.conf
Isinyathelo sesi-3: Criação Do Objeto No Dweet.io
I-Como o próprio slogan diz, o dweet.io funciona como um Twitter para IoT, onde as coisas podem enviar e receber dados pela internet de maneira facilitada Uma característica importante é que o Dweet necessita de uma autenticacessar os complex os paradados o i-torna interessante para início dos testes com IoT. Ukuze uthole ukwaziswa okwengeziwe, qhafaza i-Dweet njengengxenye yamaphasiwedi:
1. Acessar o Dweet.io e clicar em “Dlala” 2. Na guia POST khala um nom para o obejto no campo “into” 3. Cha campo “okuqukethwe” adicione os dados que serão lidos e enviados. Os dados devem estar no formato
“json” 4. Chofoza okuthi “Yizame!” bheka omphumela othi “Umzimba Wempendulo” 5. I-Caso queira con rmar o uncionamento da “coisa”, vá até ocampo “Thola I-Lattest Dweet”, insira o nome do
Khetha bese uchofoza okuthi “Yizame” ukuze uthole impendulo ye-Dweet. Ukuze uthole ukwaziswa okwengeziwe mayelana ne-"smart_piscina" landela lezi zinyathelo ezilandelayo:
{“status_tratamento”: 0, “ligadesliga_bomba”: 0, “status_bomba”:0, “status_reservatorio”:0, “PH_setpoint”:6, “PH_valor”: 4 }
Nele estão todos os dados necessários para comunicação entre a DragonBoard aplicação Web. Okubalulekile ukuhlaziya que o nome do objeto deve ser alterado no Dweet e no código fonte das aplicações para evitar que outros dispositivos acessem simultaneamente a coisa gerando resultados indesejados
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 7

Isinyathelo sesi-4: Programação Em Python

I-Logica de Funcionamento

I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 8

O software de Controle da Piscina foi desenvolvido em Python, que é uma linguagem simples and interpretada, ou seja não necessita de compiladores para obter a execução da aplicação. Njengoba funções realizadas pelo software piscina_ nal.py, que roda ne DragonBoard são as seguintes:
1. Controla o PH, monitorando o valor medido na piscina e comparando com o “Setpoint” de nido pelo usuário no Web uhlelo lokusebenza. I-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 lógica aguarda um determinado período para realizar uma nova dosagem
3. O controle só é realizado se a bomba da piscina estiver em funcionamento e se o nível do tanque de produto para dosagem estiver ok!
4. I-Quando o PH ine-valor superior ao desejado, i-dosagem para automaticamente 5. Lawula ibhomu, i-ligando ne-desligando i-mesma através do Web app, conforme solicitação do usuário 6. Monitora e informa ao usuário o nível do reservatório do produto de Dosagem 7. Informa anomalia ne bomba, caso seja ligada e não rode.
I-Antes de apresentar noma i-código, i-devemos realizar alguns ajustes ne-Dragonboard para que ela se-comunique adequadamente com o Dweet.io
I-Componentes adicionais
Faka i-biblioteca IZICELO ukuze uthole ukwaziswa okwengeziwe THUMELA futhi THOLA ku-HTTP
izicelo zokufaka i-sudo pip
I-Copiar noma i-arquivo dweet.py ye-mesma pasta kanye ne-applications smart_piscina.py

I-Código Fonte em Python
A seguir apresentamos o código por partes, nesta primeira são lidas as bibliotecas necessárias, con gurados os IOs e realizada a leitura analógica do valor de PH.

ngenisa isikhathi sokungenisa se-spidev kusuka ku-dweet ngenisa i-Dweet isuka ku-libsoc ngenisa i-gpio isuka ku-gpio_96boards ngenisa i-GPIO

COMANDO_BBA = 36

#Comando Bomba

NIVEL_PROD = 13

#Ngena ngemvume

I-DOSAGEM_VVL = 115

#Valvula Dosagem

BBA_LIGADA = 24 #Retorno de Bomba ligada

GPIO_CS = 18

#Inzwa PH (Analogico)

izikhonkwane = (

(GPIO_CS, 'out'),(COMANDO_BBA,'out'),(DOSAGEM_VVL, 'out'),(NIVEL_PROD, 'in'),(BBA_LIGADA,' in')

)

i-dweet = I-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)

isikhathi.ukulala (0.0002)

gpio.digital_write(GPIO_CS, GPIO.LOW)

r = spi.xfer2([0x01, 0x80, 0x00])

gpio.digital_write(GPIO_CS, GPIO.HIGH)

i-adcout = (r[1] << 8) & 0b1100000000

i-adcout = isikhangiso | (r[2] & 0xff)

i-adcout = (i-adcout * 0.014)

#guqula ku-PH 0 kuya ku-14

buyisela isikhangiso

I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 9

Ngokwengxenye yegundane, kusungulwe le nguqulo ye-Dweet ne-armazenados ehlukahlukene emhlabeni wonke njengesoftware enengqondo:

def le_dweet():

#Le qual setpoint para tratamento

global ld_bomba, st_bomba, st_trat, st_res, PH_valor, PH_SP

resposta = dweet.latest_dweet(igama=”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 = i-resposta['with'][0]['content']['PH_setpoint']

buyisela ld_bomba, st_bomba, st_trat, st_res, PH_valor, PH_SP

A terceira parte é a função que realiza o tratamento da piscina, com a lógica para acionamento baseada no PH, nível do reservatório e bomba ligada. Qaphela que as variáveis ​​de monitoramento são as mesmas lidas pelo Dweet, desta forma conseguimos atualizar os valores na lógica 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) uma (PH_valor < PH_SP) kanye ( st_res == 1) kanye == 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"ITRATADO 1 print) okunye: gpio.digital_write(DOSAGEM_VVL, GPIO.LOW) st_trat = 0 phrinta(“TRATAMENTO DESlIGADO”) buyisela st_trat, st_res

I-quarta e última parte é o looping de execução da lógica. A ordem onde as subrotinas são chamadas é importante para que os dados lidos pelo Dweet sejam atualizados e depois enviados para a correta visualização no Web uhlelo lokusebenza.

uma __igama__=='__main__': nge-GPIO(izikhonkwane) njenge-gpio: kuyilapho Iqiniso:
le_dweet() tratamento() PH_valor = round(readPH(gpio), 2) if ld_bomba == 1: gpio.digital_write(COMANDO_BBA, GPIO.HIGH) phrinta(“Bomba Ligada”) else: gpio.digital_write(COMANDIO_BBA,BBA, LOW) phrinta(“Bomba Desligada”) phrinta(“Valor do PH = %d” % PH_valor) phrinta(“Valor do SP PH = %d” % PH_SP) phrinta(“”) dweet.dweet_by_name(igama=”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}) isikhathi.lala(10)

https://www.instructables.com/ORIG/FPV/I7ZO/JAMTVW5R/FPVI7ZOJAMTVW5R.py https://www.instructables.com/ORIG/FMD/BHS3/JAMTVW5V/FMDBHS3JAMTVW5V.py

Thwebula Khulula

Isinyathelo sesi-5: I-Desenvolvimento Do APP – Ambiente Hídrido
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 10

I-Plataforma híbrida Ionic
O applicativo para controle da piscina será desenvolvido utilizando uma plataforma híbrida, ou seja, fazemos a abstração do hardware que o app será utilizado and desenvolvemos as projeto use HTML, CSS e Javascript que post umatuma post form form Android noma iOS. I-Neste caso utilizamos o IONIC, que funciona baseado neplataforma Cordova, que permite visualizar e testar aplicação através da renderização na mesma na tela de um Web Isiphequluli. Uma usebenzisa uhlelo lokusebenza, sebenzisa ulimi lwe-HTML ne-Typescript. o I-IONIC também ikuvumela ukuthi usebenzise uhlaka lwe-Angular para trabalhar ocs componentes como Models and Controllers.
Instalação do Ambiente de Desenvolvimento
O desenvolvimento do app será realizado em um computador pessoal, e não na placa DragonBoard. Iniciaremos com a instalçaão do node.js, necessário apra or funcionamento do Ionic Acessar noma site https://nodejs.org/zu/ e fazer o Landa inguqulo yakamuva ye-Após concluída a instalação, noma i-gerencador deveve pacotes ter sido instalado durante a instalação do node.js. Ele permitirá realizar instalação do Ionic. Akukho saziso sokwenza i-Windows ibone i-instalação com os seguintes comandos:
npm faka i-g cordova ionic npm faka i-g cordova
Ukuze wenze i-tester noma i-ionic, noma i-comando ilandele i-executado kanye ne-estiver tudo ok retornará ne-versão instalada:
ionic v
I-Criação da aplicação no Ionic
Não, não tem uma interface grá ca bonita. Tem que criar o app utilizando a linha de comandos. I-Mas depois a facilidade de uso compensa. Para criar uma nova aplicação, neste caso a smart_piscina, digitamos o seguinte comando:
ionic qala i-smart_piscina ingenalutho
Será criada uma nova aplicação em branco que estará salva no diretório:
C:UsuáriosNome do usuáriosmart_piscina
Ukufaka isicelo:
cd smart_piscina ionic service
Será aberta uma tela no navegador padrão mostrando aplicação em branco
Isinyathelo sesi-6: I-Desenvolvimento Do APP – Edição Da Aplicação
Uhlelo lwe-aplicação e branco gerada pelo Ionic será realizada no Visual Studio Code, application free to programação desenvolvido de Microsoft and que pode for the site of: https://code.visualstudio.com/download Os códigos apredados, mas também estão disponíveis para download.
Isixhumi esibonakalayo
A interface com o usuário será editada no arquivo home.html. Qaphela njenge tags sebenzisa i-são próprias do Ionic kanye ne-Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: Ikhasi 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 e na entrada do valor de Setpoint do PH. Não é possível apresentar o código aqui por uma limitação do Instructables, que apaga as tags. Ifomethi ye-qualquer yi-disponível no-arquivo compactado para download.
Processamento
Njengoba fuções referentes a leitura escrita de dados no Dweet e lógicas em geral para o correto funcionamento da interface estão no arquivo home.ts desenvolvido em Typescript, liguagem muito semelhante ao Javascript
ngenisa {Ingxenye } isuka ku-'@angular/core'; ngenisa {NavController } kusuka ku-'ionic-angular';
//É preciso importer or umhlinzeki. ngenisa {DweetProvider } kusuka ku-'../../providers/dweet/dweet';
@Component({ isikhethi: 'ikhaya-lekhasi', isifanekisoUrl: 'ikhaya.html'
})
Ikhasi Lasekhaya lokuthekelisa {
umakhi(i-navCtrl yomphakathi: NavController, i-DweetProvider yangasese: DweetProvider) { }
//Declarações de Variáveis ​​public respostaDweet: string=””; public status_tratamento: string=”danger”; umphakathi st_trat = 0; isimo somphakathi_bomba: string=”danger”; umphakathi st_bba = 0; public status_reservatorio: string="danger"; umphakathi st_res = 0; indawo yomphakathi = I-Array(); umphakathi PH_val = 0; umphakathi SP_PH = 0;
//Imodeli do botão de ligar bomba public bomba_model = {
kuhloliwe: amanga, igama: “Ligar Bomba” }
ionViewI-DidLoad () {//i-buscando os dados no Dweet and salvando and variáies variáies in this.DweetProvider.getLastestDweet(“smart_piscina”).subscribe( data=>{
const response = (idatha njenganoma iyiphi); 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; lokhu.SP_PH = objeStmo_arret tPoirsncoin.wa iCtho[m0].IcooTn-teIonnti.cP,HD_wseeettpEoinDtr;agonBoard: Ikhasi 12

this.SP_PH = objeto_retorno.with[0].content.PH_setpoint; console.log(this.locais); }, iphutha => {console.log(iphutha); } ) //Atualiza icons de Status this.status_bomba = ((this.st_bba == 1) ? “secondary” : “danger”); this.status_tratamento = ((this.st_trat == 1) ? “sesibili” : “ingozi”); this.status_reservatorio = ((this.st_res == 1) ? “sesibili” : “ingozi”); }
//Botão Atualizar update() {
lokhu.ionViewDidLoad(); }
//Liga Desliga Bomba liga_des_bomba(){ this.dweetPost()}
atualiza_sp(){ this.dweetPost()
}
i-dweetPost(){//Guqula ama-dados do botão de Boolean para inteiro const ld_bba = ((le.bomba_model.checked == iqiniso) ? 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._val_val”: , “PH_setpo int”: this.SP_PH}; lokhu.DweetProvider.setDweet(“smart_piscina”,json_dweet).subscribe(
idatha=>{console.log(data); }, error=> {console.log(iphutha); } )}}
Umhlinzeki we-Dweet
É necessário criar um provider for realizar acomunicação HTTP com o Dweet. I-feito através do Ionic com o seguinte comando no prompt de comando:
ionic yenza i-dweet yomhlinzeki
I-Neste momento é gerado o arquivo dweet.ts que deverá ter os comandos referentes a conexão com o Dweet e realização das funções de GET e POST. Okudingayo kudinga ukunakekelwa okulandelayo:
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 13

ngenisa i-{Http} isuka ku-'@angular/http'; ngenisa { Umjovo } usuka ku-'@angular/core'; ngenisa 'rxjs/add/opharetha/imephu'; /*
Ikilasi elakhiwe lomhlinzeki we-DweetProvider. Bona okuthi https://angular.io/guide/dependency-injection ukuze uthole ulwazi olwengeziwe ngabahlinzeki kanye ne-Angular DI. */ @Injectable() ikilasi lokuthekelisa le-DweetProvider { isisekelo sangaseseUrl = "https://dweet.io:443/" umakhi(http://public: Http) {
console.log('Sawubona DweetProvider Provider'); } //Impendulo ye-Método ngebhasi njenge-informações no-Dweet. getLastestDweet(into: string) {
const url_thola = lesi.baseUrl + “thola/kwakamuva/i-dweet/ye/” + into; console.log(url_thola); buyisela lokhu.http.get(url_thola); } //Impendulo yeMétodo nge-modificar os dados no Dweet. setDweet(into, umzimba) {buyisela lokhu.http.post(this.baseUrl + “weet/for/”+ into, umzimba); }}
Ngakho-ke, kufanele kuqashelwe uma usebenzisa i-app.module.ts para que carregue adequadamente of HTTP para funcionamento do Dweet Provider:
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 14

ngenisa i-{ BrowserModule } isuka ku-'@angular/platform-browser'; ngenisa {ErrorHandler, NgModule } kusuka ku-'@angular/core'; ngenisa i-{IonicApp, IonicErrorHandler, IonicModule } isuka ku-'ionic-angular'; ngenisa {SplashScreen } kusuka ku-'@ionic-native/splash-screen'; ngenisa i-{ StatusBar } ukusuka ku-'@ionic-native/status-bar'; ngenisa {HttpModule } kusuka ku-'@angular/http'; ngenisa i-{MyApp } kusuka ku-'./app.component'; ngenisa i-{HomePage } isuka '../pages/home/home'; ngenisa {DweetProvider } kusuka '../providers/dweet/dweet'; @NgModule({
izimemezelo: [ MyApp, HomePage
], ukungenisa: [
BrowserModule, IonicModule.forRoot(MyApp), //Ngenisa noma imojula ye-HTTP isebenzisa i-Dweet. HttpModule ], i-bootstrap: [IonicApp], entryComponents: [ MyApp, HomePage ], abahlinzeki: [ StatusBar, SplashScreen, {Provide: ErrorHandler, useClass: IonicErrorHandler}, DweetProvider ] }) ikilasi lokuthekelisa le-AppModule {}
Ufa!
I-Salve tudo e teste aplicação através do comando:
ionic ukukhonza
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 15

I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 16

I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 17

I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 18

https://www.instructables.com/ORIG/FUH/W6SK/JAMTWKY9/FUHW6SKJAMTWKY9.zip

Landa

Isinyathelo sesi-7: I-Colocando Tudo Para Funcionar!!
1.Iniciando o Dweet: Alikho isayithi Dweet.io, khala o objeto conform descrito no passo 3
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 19

2.Qala uhlelo lokusebenza lwe-DragonBoard: I-Abra o Itheminali no-Linaro, finyelela i-pasta onde está aplicação smart_home.py e digite noma i-comando:
sudo python smarthome.py
3.Iniciando a aplicação no Ionic: Abra o prompt de comando, acesse a pasta onde está o aplicativo criado no Ionic e digite o comando
ionic ukukhonza
https://youtu.be/O27f93xE0bk https://youtu.be/HaSeRf3wkSI https://youtu.be/vx16cLQKOeU
Isinyathelo 8:
I-Smart Piscina Com IoT - Ionic, Dweet E DragonBoard: Ikhasi 20

Amadokhumenti / Izinsiza

iziqondiso ze-Smart Piscina Com IoT Ionic Dweet E DragonBoard [pdf] Iziyalezo
I-Smart Piscina Com IoT Ionic Dweet E DragonBoard, Smart Piscina, Com IoT Ionic Dweet E DragonBoard, Dweet E DragonBoard

Izithenjwa

Shiya amazwana

Ikheli lakho le-imeyili ngeke lishicilelwe. Izinkambu ezidingekayo zimakiwe *