Smart Piscina Com IoT Ionic Dweet E DragonBoard

ຂໍ້ມູນຜະລິດຕະພັນ:

Smart Piscina Com IoT ແມ່ນຜະລິດຕະພັນສະຖາປັດຕະຍະກໍາ IoT ທີ່
ຊ່ວຍໃຫ້ການຄວບຄຸມແລະຕິດຕາມກວດກາສະລອຍນ້ໍາໂດຍໃຊ້ Ionic,
Dweet, ແລະເທກໂນໂລຍີ DragonBoard. ມັນປະກອບມີອົງປະກອບເຊັ່ນ:
Linker Mezzanine, 96Boards GPIO, ແລະ Py-Spidev. ຜະລິດຕະພັນ
ອະ​ນຸ​ຍາດ​ໃຫ້​ຜູ້​ໃຊ້​ໃນ​ການ​ຕິດ​ຕາມ​ສະ​ຖາ​ນະ​ພາບ​ການ​ປິ່ນ​ປົວ​, ສະ​ຖາ​ນະ​ການ​ສູບ​,
ສະຖານະອ່າງເກັບນ້ຳ, ແລະຄ່າ pH ຂອງສະລອຍນ້ຳ. ຜະ​ລິດ​ຕະ​ພັນ​ຍັງ​
ປະກອບມີຜູ້ໃຫ້ບໍລິການ Dweet ທີ່ເຮັດໃຫ້ຜູ້ໃຊ້ສາມາດສົ່ງຂໍ້ມູນໄປຫາ
ເວທີ Dweet.io ສໍາລັບການວິເຄາະຕື່ມອີກ.

ຄໍາແນະນໍາການນໍາໃຊ້ຜະລິດຕະພັນ:

ເພື່ອໃຊ້ຜະລິດຕະພັນ Smart Piscina Com IoT, ປະຕິບັດຕາມເຫຼົ່ານີ້
ຄໍາແນະນໍາ:

  1. ປັບປຸງແລະຍົກລະດັບຊອບແວໂດຍການດໍາເນີນການດັ່ງຕໍ່ໄປນີ້
    ຄໍາສັ່ງຢູ່ໃນ terminal:
    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get dist-upgrade
  2. ຕິດຕັ້ງອົງປະກອບເພີ່ມເຕີມໂດຍການແລ່ນຄໍາສັ່ງຕໍ່ໄປນີ້
    ຢູ່ປາຍ:
    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. ແກ້ໄຂ libsoc.conf file ໂດຍການແລ່ນຄໍາສັ່ງຕໍ່ໄປນີ້ໃນ
    terminal:
    sudo gedit /usr/local/etc/libsoc.conf
    ປັບປຸງ file ເນື້ອໃນຕໍ່ໄປນີ້:
    { status_tratamento: 0, ligadesliga_bomba: 0, status_bomba:0,
    status_reservatorio:0, PH_setpoint:6, PH_valor: 4 }
  4. ຕິດຕັ້ງຫ້ອງສະໝຸດຄຳຮ້ອງຂໍໂດຍການແລ່ນຄຳສັ່ງຕໍ່ໄປນີ້ໃນ
    terminal:
    sudo pip install requests
  5. ໃຊ້ຜະລິດຕະພັນໂດຍການນໍາເຂົ້າ spidev, ເວລາ, Dweet, gpio, ແລະ
    GPIO. ປະຕິບັດຫນ້າທີ່ທີ່ຈໍາເປັນເພື່ອຄວບຄຸມແລະຕິດຕາມກວດກາ
    ສະ​ລອຍ​ນ​້​ໍ​າ. ຕົວຢ່າງample, ໃຊ້ຟັງຊັນ readPH ເພື່ອອ່ານ pH
    ມູນຄ່າຂອງສະນຸກເກີ. ໃຊ້ຟັງຊັນ liga_des_bomba ເພື່ອເປີດ/ປິດ
    ປັ໊ມ. ໃຊ້ຟັງຊັນ atualiza_sp ເພື່ອປັບປຸງຈຸດ pH
    ຄ່າ. ໃຊ້ຟັງຊັນ dweetPost ເພື່ອສົ່ງຂໍ້ມູນໄປຍັງ Dweet.io
    ເວທີສໍາລັບການວິເຄາະຕື່ມອີກ.

instructables
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard
ໂດຍ rxidieh
ແນະນຳ
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 remotamentiseleas de diversas O ຮາດແວ utilizado é baseado na placa DragonBoard da Qualcom e na placa Linker Mezanine da 96boards. Também serão utilizados sensores da Arrow para a 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 repositório na nuvem ea criação de um app para acesso e controle do 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
Arquitetura IoT
A automação eo controle do tratamento da piscina são realizados pela Dragonboard, com interface do usuário ຜ່ານແອັບ Web. Para que isto seja possível, é utilizada a arquitetura demonstrada na imagem, e ປະກອບ em:
1. Os dados são lidos e processados ​​pela Dragonboard 2. A DragonBoard escreve em um 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
HTML para o usuário
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 1

ຂັ້ນຕອນທີ 1: Configuração Do Hardware
Como dito, foi utilizada a DragonBoard 410c para realizar a automação e ຄວບຄຸມທ້ອງຖິ່ນ da piscina. Junto com a Dragonboard foi instalada um shield da 96boards chamado Linker Mezanine, que facilita o acesso aos IOs da DragonBoard. Este shield tb possui dois conversores A/D para leitura de dados analógicos. Nas imagens existe a 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: ໜ້າ 2

2. No exemplo, 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 da 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 e não está girando 5. O sensor para nível do reservatório é um do tipo “tilt” que deverá uma serbado 6 instalado .por m, a dosagem de produto é feita por uma eletroválvula acionada por um relé
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 3

Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 4

Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 5

ຂັ້ນຕອນທີ 2: Preparação Da DragonBoard
Atualização da Placa e instalação das bibliotecas p/ 96boards
A placa DragonBoard vem de fábrica com uma distribuiçaõ Linux chamada Linaro, ela é su ciente em recursos para executar esta aplicação, bastando atualizar a placa e realizar a instalação das bibliotecas da 96boards da comboards. Uma vez que estamos trabalhando em Linux, podemos acessar o Terminal para realizar os comandos de atualização e instalação de bibliotecas: Os seguintes comandos realizam a atualização da placa:
sudo apt-get update sudo apt-get ປັບປຸງ sudo apt-get dist-upgrade
Para trabalhar com o Python, também realize a instalação de um editor de textos e do interpretador
sudo apt-get ຕິດຕັ້ງ gedit sudo apt-get ຕິດຕັ້ງ 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
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 ເຮັດໃຫ້ sudo ເຮັດໃຫ້ການຕິດຕັ້ງ sudo ldconfig /usr /local/lib sudo reboot
96 ກະດານ:
git clone https://github. com/96boards/96BoardsGPIO.git
cd 96BoardsGPIO/
sudo ./autogen.sh sudo ./configure sudo ເຮັດໃຫ້ sudo ເຮັດໃຫ້ການຕິດຕັ້ງ sudo ldconfig
Quase no m… mas aproveitamos para instalar tb a biblioteca para acesso a parte analógica da Linker Mezanine:
git clone https://github.com/doceme/pyspidev.git cd py-spidev sudo python setup.py ຕິດຕັ້ງ sudo ldconfig sudo reboot
É importante lebrar que na LIBSOC estão as referências de endereçamento da Linker Mezanine, e ໃຫ້ບໍລິການ de referência caso precise acessar diretamente um endereço de IO
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 6

sudo gedit /usr/local/etc/libsoc.conf
ຂັ້ນຕອນທີ 3: Criação Do Objeto No Dweet.io
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 não necessitas de uma ção ções de maneira facilitada 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 e clicar em “Play” 2. Na guia POST crie um nom para o obejto no campo “ສິ່ງ” 3. ບໍ່ມີ campo “ເນື້ອໃນ” adicione os dados que serão lidos e enviados. Os dados devem estar no formato
“json” 4. ຄລິກ “ລອງມັນອອກ!” e observe o resultado em “Response Body” 5. Caso queira con rmar o uncionamento da “coisa”, vá até ocampo “Get Lasttest Dweet”, insira o nome do
obje criado e clique em “ລອງມັນອອກ” 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 }
Nele estão todos os dados necessários para comunicação entre a DragonBoard ea aplicação Web. É importante ressaltar 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
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 7

ຂັ້ນຕອນທີ 4: Programação Em Python

Lógica de Funcionamento

Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 8

O software de Controle da Piscina foi desenvolvido em Python, que é uma linguagem simples e interpretada, ou seja não necessita de compiladores para obter a execução da aplicação. As funções realizadas pelo software piscina_ nal.py, que roda na 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 ແອັບ. 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 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. Quando o PH atinge um valor superior ao desejado, a dosagem para automaticamente 5. Controla a bomba, ligando e desligando a 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 na bomba, caso seja ligada e 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
ອົງປະກອບ adicionais
ຕິດຕັ້ງ biblioteca REQUESTS para realizar funções de POST e GET em HTTP
sudo pip ການຮ້ອງຂໍການຕິດຕັ້ງ
Copiar o arquivo dweet.py para a mesma pasta onde está a aplicação smart_piscina.py

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.

ນໍາເຂົ້າ spidev ເວລານໍາເຂົ້າຈາກ dweet ນໍາເຂົ້າ Dweet ຈາກ libsoc ນໍາເຂົ້າ gpio ຈາກ gpio_96boards ນໍາເຂົ້າ GPIO

COMANDO_BBA = 36

#Comando Bomba

NIVEL_PROD = 13

#ເຊບ ເດີ ນິເວວ

DOSAGEM_VVL = 115

#Valvula Dosagem

BBA_LIGADA = 24 #Retorno de Bomba ligada

GPIO_CS = 18

#ເຊັນເຊີ PH (Analogico)

ເຂັມ = (

(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)

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)

#ປ່ຽນ para PH 0 a 14

ກັບຄືນ adcout

Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 9

Na segunda parte, é realizada a leitura do Dweet e os dados armazenados em variáveis ​​globais para as logicas do software:

def le_dweet():

#Le qual setpoint para tratamento

ld_bomba ທົ່ວໂລກ, st_bomba, st_trat, st_res, PH_valor, PH_SP

resposta = dweet.latest_dweet(ຊື່=”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']

ກັບຄືນ 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. Note 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(): st_trat ທົ່ວໂລກ, st_res, st_bomba st_res = gpio.digital_read(NIVEL_PROD) st_bomba = gpio.digital_read(BBA_LIGADA) ຖ້າ (PH_valor < PH_SP) ແລະ ( st_res == 1) ແລະ = st_bomba = 1) ແລະ ( st_2): digital_write(DOSAGEM_VVL, GPIO.HIGH) time.sleep(1) #tempo da dosagem do produto gpio.digital_write(DOSAGEM_VVL, GPIO.LOW) time.sleep(1) #espera entre dosagem st_trat = 0" ພິມ(“IGGITAL = XNUMX”) else: gpio.digital_write(DOSAGEM_VVL, GPIO.LOW) st_trat = XNUMX print(“TRATAMENTO DESlIGADO”) ກັບຄືນ st_trat, st_res

A 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 ແອັບ.

ຖ້າ __name__=='__main__': ກັບ GPIO(pins) ເປັນ gpio: ໃນຂະນະທີ່ຖືກຕ້ອງ:
le_dweet() tratamento() PH_valor = round(readPH(gpio), 2) ຖ້າ ld_bomba == 1: gpio.digital_write(COMANDO_BBA, GPIO.HIGH) ພິມ(“Bomba Ligada”) ອື່ນ: gpio.digital_BA(COMANDO. 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}) ເວລາ.ນອນ(10)

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

Download Download

ຂັ້ນຕອນທີ 5: Desenvolvimento Do APP – Ambiente Hídrido
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 10

Plataforma híbrida Ionic
O aplicativo para controle da piscina será desenvolvido utilizando uma plataforma híbrida, ou seja, fazemos a abstração do ຮາດແວ que o app será utilizado e desenvolvemos um projeto app para utilizando HTML, CSS umerizad eor sérémente javascript. forma especí ca como Android ຫຼື IOS. Neste caso utilizamos o IONIC, que funciona baseado na plataforma Cordova, que permite visualizar e testar aplicação através da renderização na mesma na tela de um Web ຕົວທ່ອງເວັບ. Para o Desenvolvimento do app, utilizaremos a linguagem HTML e Typescript. o IONIC também permite a utilização do framework Angular para trabalhar ocs componentes como Models e 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 o funcionamento do Ionic Acessar o site https://nodejs.org/en/ e fazer o ດາວໂຫລດ da última versão do nodeador.js Após concluída a instalagerenco PM deo, deo ter sido instalado durante a instalação do node.js. Ele permitirá realizar a instalação do Ionic. No prompt de comando do Windows realize a instalação com os seguintes comandos:
npm ຕິດຕັ້ງ g cordova ionic npm ຕິດຕັ້ງ g cordova
Para testar o ionic, o seguinte comando pode ser executado e se estiver tudo ok retornará a versão instalada:
ໄອອອນ v
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. Mas depois a facilidade de uso compensa. Para criar uma nova aplicação, neste caso a smart_piscina, digitamos o seguinte comando:
ionic start smart_piscina ຫວ່າງເປົ່າ
Será criada uma nova aplicação em branco que estará salva no diretório:
C:UsuáriosNome do usuáriosmart_piscina
Para testar o código:
cd smart_piscina ionic ໃຫ້ບໍລິການ
Será aberta uma tela no navegador padrão mostrando aplicação em branco
ຂັ້ນຕອນທີ 6: Desenvolvimento Do APP – Edição Da Aplicação
A edição da aplicação em 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 ãs aloirados alteradosenta. mas também estão disponíveis para ດາວໂຫລດ.
ການໂຕ້ຕອບ
A interface com o usuário será editada no arquivo home.html. ຫມາຍເຫດ que as tags utilizadas são próprias do Ionic e contém Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ຫນ້າ 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. De qualquer forma está disponível no arquivo compactado para ດາວໂຫຼດ.
ຂະບວນການ
As fuções referentes a leitura e 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
ນໍາເຂົ້າ {ອົງປະກອບ } ຈາກ '@angular/core'; ນໍາເຂົ້າ { NavController } ຈາກ 'ionic-angular';
// É preciso importar o ຜູ້ໃຫ້ບໍລິການ. ນຳເຂົ້າ { DweetProvider } ຈາກ '../../providers/dweet/dweet';
@Component({ selector: 'page-home', templateUrl: 'home.html'
})
ປະເພດສົ່ງອອກຫນ້າທໍາອິດຫນ້າທໍາອິດ {
constructor(public navCtrl: NavController, private DweetProvider: DweetProvider) { }
//Declarações de Variáveis ​​public respostaDweet: string =””; public status_tratamento: string=”ອັນຕະລາຍ”; st_trat ສາທາລະນະ = 0; public status_bomba: string=”ອັນຕະລາຍ”; st_bba ສາທາລະນະ = 0; public status_reservatorio: string=”ອັນຕະລາຍ”; st_res ສາທາລະນະ = 0; public locais = Array(); PH_val ສາທາລະນະ = 0; SP_PH ສາທາລະນະ = 0;
//Model do botão de ligar bomba public bomba_model = {
checked: false, ຊື່: “Ligar Bomba” }
ໄອອອນViewDidLoad () { //buscando os dados no Dweet e salvando nas variáies locais this.DweetProvider.getLastestDweet(“smart_piscina”).subscribe( data=>{
const response = (ຂໍ້ມູນເປັນອັນໃດກໍ່ໄດ້); 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: ໜ້າ 12

this.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) ?“ຮອງ”: “ອັນຕະລາຍ”); this.status_tratamento = ((this.st_trat == 1) ? “ຮອງ” : “ອັນຕະລາຍ”); this.status_reservatorio = ((this.st_res == 1) ? “ຮອງ” : “ອັນຕະລາຍ”); }
// Botão Atualizar update() {
ນີ້.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_valorval”: this.st_res, “PH_valorval” , “PH_setpo int”: this.SP_PH}; this.DweetProvider.setDweet(“smart_piscina”,json_dweet).ຈອງ(
data=>{ console.log(ຂໍ້ມູນ); }, error=> { console.log(error); } ) } }
ຜູ້ໃຫ້ບໍລິການ Dweet
É necessário criar um ຜູ້ໃຫ້ບໍລິການ para realizar a comunicação HTTP com o Dweet. Isto é feito através do Ionic com o seguinte comando no prompt de comando:
ionic ສ້າງຜູ້ໃຫ້ບໍລິການ dweet
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. O código necessário é exibido a seguir:
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 13

ນໍາເຂົ້າ { Http } ຈາກ '@angular/http'; ນຳເຂົ້າ { Injectable } ຈາກ '@angular/core'; ນໍາເຂົ້າ 'rxjs/add/operator/map'; /*
ຊັ້ນຮຽນທີ່ສ້າງຂຶ້ນສໍາລັບຜູ້ໃຫ້ບໍລິການ DweetProvider. ເບິ່ງ https://angular.io/guide/dependency-injection ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບຜູ້ໃຫ້ບໍລິການ ແລະ Angular DI. */ @Injectable() ຊັ້ນສົ່ງອອກ DweetProvider { ພື້ນຖານສ່ວນຕົວUrl = “https://dweet.io:443/” ຜູ້ກໍ່ສ້າງ(http: Http) {
console.log('ສະບາຍດີ ຜູ້ໃຫ້ບໍລິການ DweetProvider'); } //Método responsável por buscar as informações no Dweet. getLastestDweet(ສິ່ງ​ທີ່: string) {
const url_get = this.baseUrl + “get/latest/dweet/for/” + ສິ່ງ; console.log(url_ໄດ້); ກັບຄືນ this.http.get(url_ໄດ້); } //Método resposnsável por modificar os dados no Dweet. setDweet(thing, body) { return this.http.post(this.baseUrl + “dweet/for/”+ ສິ່ງ, ຮ່າງກາຍ); } }
Por m, é necessário realizar uma modi cação no arquivo app.module.ts para que carregue adequadamente os componentes HTTP para o funcionamento do Dweet Provider:
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 14

ນໍາເຂົ້າ { BrowserModule } ຈາກ '@angular/platform-browser'; ນຳເຂົ້າ { ErrorHandler, NgModule } ຈາກ '@angular/core'; ນໍາເຂົ້າ { IonicApp, IonicErrorHandler, IonicModule } ຈາກ 'ionic-angular'; ນຳເຂົ້າ { SplashScreen } ຈາກ '@ionic-native/splash-screen'; ນຳເຂົ້າ { StatusBar } ຈາກ '@ionic-native/status-bar'; ນໍາເຂົ້າ { HttpModule } ຈາກ '@angular/http'; ນຳເຂົ້າ { MyApp } ຈາກ './app.component'; ນຳເຂົ້າ { HomePage } ຈາກ '../pages/home/home'; ນຳເຂົ້າ { DweetProvider } ຈາກ '../providers/dweet/dweet'; @NgModule({
ປະກາດ: [ MyApp, HomePage
], ການ​ນໍາ​ເຂົ້າ​: [
BrowserModule, IonicModule.forRoot(MyApp), // Importar o modulo HTTP usado pelo Dweet. HttpModule ], bootstrap: [IonicApp], entryComponents: [ MyApp, HomePage ], providers: [ StatusBar, SplashScreen, {provide: ErrorHandler, useClass: IonicErrorHandler}, DweetProvider ] }) export class AppModule {}
ອູຟາ!
Salve tudo e teste aplicação através do comando:
ໃຫ້ບໍລິການ ionic
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 15

Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 16

Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 17

Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 18

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

ດາວໂຫຼດ

ຂັ້ນຕອນທີ 7: Colocando Tudo Para Funcionar!!
1.Iniciando o Dweet: ບໍ່ມີເວັບໄຊ Dweet.io, crie o objeto conform descrito no passo 3
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 19

2.Iniciando a aplicação na DragonBoard: Abra o Terminal no Linaro, acesse a pasta onde está a aplicação smart_home.py e digite o 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
https://youtu.be/O27f93xE0bk https://youtu.be/HaSeRf3wkSI https://youtu.be/vx16cLQKOeU
ຂັ້ນຕອນທີ 8:
Smart Piscina Com IoT – Ionic, Dweet E DragonBoard: ໜ້າ 20

ເອກະສານ / ຊັບພະຍາກອນ

instructables Smart Piscina Com IoT Ionic Dweet E DragonBoard [pdf] ຄໍາແນະນໍາ
Smart Piscina Com IoT Ionic Dweet E DragonBoard, Smart Piscina, Com IoT Ionic Dweet E DragonBoard, Dweet E DragonBoard

ເອກະສານອ້າງອີງ

ອອກຄໍາເຫັນ

ທີ່ຢູ່ອີເມວຂອງເຈົ້າຈະບໍ່ຖືກເຜີຍແຜ່. ຊ່ອງຂໍ້ມູນທີ່ຕ້ອງການຖືກໝາຍໄວ້ *