Smart Piscina Com IoT Ionic Dweet ኢ DragonBoard
የምርት መረጃ፡-
ስማርት ፒሲና ኮም አይኦቲ የአይኦቲ አርክቴክቸር ምርት ነው።
አዮኒክን በመጠቀም የመዋኛ ገንዳውን ለመቆጣጠር እና ለመቆጣጠር ያስችላል፣
Dweet, እና DragonBoard ቴክኖሎጂዎች. እንደ አካሎች ያካትታል
ሊንከር ሜዛንይን፣ 96ቦርዶች ጂፒኦ እና ፒ-ስፒዲቭ። ምርቱ
ተጠቃሚዎች የሕክምናውን ሁኔታ ፣ የፓምፕ ሁኔታን እንዲቆጣጠሩ ያስችላቸዋል ፣
የውኃ ማጠራቀሚያ ሁኔታ, እና የገንዳው ፒኤች ዋጋ. ምርቱም እንዲሁ
ተጠቃሚዎች ውሂብን ወደዚህ እንዲልኩ የሚያስችል Dweet አቅራቢን ያካትታል
ለተጨማሪ ትንተና Dweet.io መድረክ።
የምርት አጠቃቀም መመሪያዎች፡-
የSmart Piscina Com IoT ምርት ለመጠቀም እነዚህን ይከተሉ
መመሪያ፡-
- የሚከተሉትን በማሄድ ሶፍትዌሩን ያዘምኑ እና ያሻሽሉ።
በተርሚናል ውስጥ ትዕዛዞች:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
- የሚከተሉትን ትዕዛዞችን በማሄድ ተጨማሪ ክፍሎችን ይጫኑ
በጣቢያው ውስጥ:
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
- libsoc.confን ያርትዑ file ውስጥ የሚከተለውን ትዕዛዝ በማስኬድ
ተርሚናል:
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 } - የሚከተለውን ትዕዛዝ በማስኬድ የጥያቄዎች ቤተ-መጽሐፍትን ይጫኑ
ተርሚናል:
sudo pip install requests
- Spidev, Time, Dweet, gpio, እና በማስመጣት ምርቱን ይጠቀሙ
GPIO ለመቆጣጠር እና ለመቆጣጠር አስፈላጊዎቹን ተግባራት ያሂዱ
መዋኛ ገንዳ. ለ example፣ pH ን ለማንበብ readPH ተግባርን ይጠቀሙ
የገንዳው ዋጋ. ለማብራት/ለማጥፋት የliga_des_bomba ተግባርን ተጠቀም
ፓምፑ. የፒኤች ቅንብር ነጥብን ለማዘመን atualiza_sp ተግባርን ተጠቀም
ዋጋ. ወደ Dweet.io ውሂብ ለመላክ የdweetPost ተግባርን ይጠቀሙ
ለተጨማሪ ትንተና መድረክ.
መመሪያ የሚሰጥ
Smart Piscina Com IoT – አዮኒክ፣ Dweet ኢ DragonBoard
በ rxidieh
መግቢያ
አፕሪሴንቶ አኩይ ኡማ ሶሉቻኦ ፓራ ሞኒታሜንቶ ኢ ትራታሜንቶ ዴ ፒሲናስ ዴ ማኔራ ሬሞታ፣ que poderia ser usado tanto pelo proprietário de um imóvel, como por algum piscineiro que poderia veri car remotamente diversas piscinas እንደ quais ele at. ኦ ሃርድዌር ጥቅም ላይ የሚውለው ድራጎንቦርድ እና Qualcom እና ሊንከር ሜዛኒን እና 96ቦርዶች። Também serão utilizados sensores እና 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. እንደ funções criadas são፡ -የመቆጣጠሪያው ፒኤች ዳ ፒሲና -አሲዮናሜንቶ ዳ ቦምባ 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 consiste em:
1. ኦስ ዳዶስ ሳኦ ሊዶስ እና ፕሮሰስዶስ ፔላ ድራጎንቦርድ 2. DragonBoard 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 usário
Smart Piscina Com IoT – Ionic፣ Dweet E DragonBoard፡ ገጽ 1
ደረጃ 1፡ Configuração ሃርድዌርን አድርግ
እንደዛ፣ ከ DragonBoard 410c para realizar a automação e controle local da piscina። Junto com a Dragonboard foi instalada um shield እና 96boards chamado Linker Mezanine, que facilita o acesso aos IOs እና 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. ምንም ምሳሌ የለም፣ 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 እውነተኛ 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á ser instalado em uma bóia 6 ፖርኤም፣ አንድ ዶዝጌም ደ produto é feita por uma eletrovalvula 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/ 96ቦርዶች
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 para interface com a Linker Mezan. Uma vez que estamos trabalhando em Linux, podemos acessar o ተርሚናል 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 upgrade sudo apt-get dist-upgrade
Para trabalhar com o Python፣ tambom a instalação de um editor de textos e do interpretador መገንዘብ
sudo apt-get install gedit sudo apt-get install python-pip
እና sequeência serão instaladas እንደ 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 make sudo make sudo ldconfig/usr ጫን /local/lib sudo ዳግም ማስጀመር
96 ሰሌዳዎች;
git clone https://github. com/96ቦርዶች/96ቦርዶችGPIO.git
ሲዲ 96ቦርድ ጂፒኦ/
sudo ./autogen.sh sudo ./configure sudo make sudo make sudo ldconfig ጫን
Quase no m… mas aproveitamos para installar tb a biblioteca para acesso a parte analógica da Linker Mezanine፡-
git clone https://github.com/doceme/pyspidev.git ሲዲ 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 serve 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 necessita de uma autenticaçãar o complexa da para acessita 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. አይ ሐampo “ይዘት” adicion os dados que serão lidos e enviados። Os dados devem estar ምንም formato
“json” 4. ጠቅ ያድርጉ “ሞክረው!” “የምላሽ አካል” 5. Caso queira con rmar o uncionamento da “coisa”፣ vá até ocampo “Lattest 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, "ሁኔታ_ቦምባ":0, "ሁኔታ_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
ሎጊካ ደ Funcionamento
Smart Piscina Com IoT – Ionic፣ Dweet E DragonBoard፡ ገጽ 8
ኦ ሶፍትዌር ዴ መቆጣጠሪያ ዳ ፒስኪና foi desenvolvido em Python፣ que é uma linguagem simples e translateada፣ ou seja não necessita de compiladores para obter a execução da aplicação። እንደ 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 eletrovalvula.
2. O acionamento da eletrovalvula é temporizado, ou seja, uma certa quantidade de produto é dosada ea lógica aguarda um determinado período para realizar uma nova dosagem
3. ኦ ኮንትሮል ሶ ኢ ሪሊዛዶ ሴ አ ቦምባ ዳ ፒሲና እስቲቨር em funcionamento e se o nível do tanque de produto para dosagem estiver እሺ!
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.
አንቴስ ደ አፕሪሴንታር ኦ ኮዲጎ፣ ዴቬሞስ ሪልዛር አልጉንስ አጁስቴስ ና Dragonboard para que ela se comunique adequadamente com o Dweet.io
አካላት adicionais
ለፖስት እና ኤችቲቲፒ አግኙ የመጽሐፍ ቅዱስ ጥያቄዎችን ጫን
የ sudo pip ጭነት ጥያቄዎች
ኮፒር o arquivo dweet.py para a mesma pasta onde está a aplicação smart_piscina.py
ኮዲጎ ፎንቴ em Python
A seguir apresentamos o codigo 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 ከlibsoc አስመጣ gpio ከ gpio_96ቦርዶች አስመጣ GPIO
COMANDO_BBA = 36
#ኮማንዶ ቦምባ
NIVEL_PROD = 13
#Chave de nivel
DOSAGEM_VVL = 115
#Valvula Dosagem
BBA_LIGADA = 24 #Retorno de Bomba ligada
GPIO_CS = 18
# ዳሳሽ ፒኤች (አናሎጊኮ)
ፒን = (
(GPIO_CS፣ 'ውጭ')፣(COMANDO_BBA፣ 'ውጭ')፣(DOSAGEM_VVL፣ 'ውጭ')፣(NIVEL_PROD፣ 'ውስጥ')፣(BBA_LIGADA፣ 'ውስጥ')
)
ድዌት = ድዌት()
spi = spidev.SpiDev()
spi.ክፍት (0,0)
spi.max_speed_hz = 10000
spi.mode = 0b00
spi.bits_per_word = 8def readPH(ጂፒዮ)፡
gpio.digital_write(GPIO_CS፣ GPIO.HIGH)
ጊዜ (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 | (ር[2] እና 0xff)
adcout = (adcout * 0.014)
ወደ ፒኤች 0 ወደ 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 ሶፍትዌር፡
def le_dweet()
#Le qual setpoint para tratamento
ሁለንተናዊ ld_bomba፣ st_bomba፣ st_trat፣ st_res፣ PH_valor፣ PH_SP
resposta = dweet.latest_dweet(ስም = "ስማርት_ፒሲና")
ld_bomba = resposta['ጋር'][0]["ይዘት"]['ligadesliga_bomba']
st_bomba = resposta['ጋር'][0]['ይዘት']['ሁኔታ_ቦምባ']
st_trat = resposta['ጋር'][0]['ይዘት']['ሁኔታ_tratamento']
st_res = resposta['ጋር'][0]["ይዘት"]['ሁኔታ_reservatorio']
PH_valor = resposta['ጋር'][0]['ይዘት']['PH_valor']
PH_SP = resposta['ጋር'][0]['ይዘት']['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 logica para acionamento baseada no PH, nível do reservatório e bomba ligada። ማስታወሻ 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) ከሆነ (PH_valor <PH_SP) እና (st_res == 1)) እና (== 1) digital_write(DOSAGEM_VVL፣ GPIO.HIGH) time.sleep(2) # temp da dosagem do produto gpio.digital_write(DOSAGEM_VVL፣ GPIO.LOW) time ሌላ፡ gpio.digital_write(DOSAGEM_VVL፣ GPIO.LOW) st_trat = 1 print("TRATAMENTO DESlIGADO") መመለስ st_trat, st_res
A quarta e última parte é o looping de execução da logica. ኤ ኦርደም ኦንዴ እስ ሱብሮቲናስ ሳኦ ቻማዳስ ኤ አስፈላጊ ፓራ ኩ ኦስ ዳዶስ ሊዶስ ፔሎ ድዌት ሰጃም አቱሊዛዶስ ኢ ዴፖይስ ኢንቪያዶስ ፓራ ኮሬታ ቪዥያሳቻኦ ኖ Web መተግበሪያ.
ከሆነ__ስም__=='__ዋና__'፡ ከጂፒኦ(ፒን) ጋር እንደ gpio፡ እውነት እያለ፡
le_dweet () tratamento () PH_valor = ክብ (ማንበብPH(ጂፒኦ)፣ 2) ld_bomba ከሆነ == 1፡ gpio.digital_write (COMANDO_BBA, GPIO.HIGH) ማተም ("Bomba Ligada") ሌላ፡ gpio.digital_write (COMANDO_BBA, GPIO.BBA, LOW) ህትመት ("Bomba Desligada") ህትመት ("Valor do PH = %d" % PH_valor) ህትመት ("Valor do SP PH = %d" % PH_SP) ህትመት ("") dweet.dweet_by_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
አውርድ አውርድ
ደረጃ 5፡ Desenvolvimento Do APP – Ambiente Hídrido
Smart Piscina Com IoT – Ionic፣ Dweet E DragonBoard፡ ገጽ 10
ፕላታፎርማ ሂብሪዳ አዮኒክ
O aplicativo para controle da piscina será desenvolvido utilizando uma plataforma híbrida፣ ou seja፣ fazemos a abstração do hardware que o app será utilizado e desenvolvemos um projeto utilizando HTML፣ CSS እና Javascript que posteriormente pode seraforma híbrida አንድሮይድ ወይም አይኦኤስ። Neste caso utilizamos o IONIC፣ que funciona baseado na plataforma Cordova፣ que permite visualizar e testar a aplicação através da renderização na mesma na tela de um Web አሳሽ Para o Desenvolvimento do መተግበሪያ፣ የቋንቋ ኤችቲኤምኤል እና የጽሕፈት ስክሪፕት ይጠቀሙ። o IONIC ታምቤም እንዲጠቀምበት የተፈቀደለት ማዕቀፍ የAngular para trabalhar ocs components como Models e Controllers።
Instalação do Ambiente de Desenvolvimento
ኦ ዴሰንቮልቪሜንቶ አፕ ሴራ ሪልዛዶ 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 node.js አፖስ መደምደሚያ a instalação, o gerencador de pacotes NPM ter sido instalado durante a instalação do node.js. Ele permitirá realizar a instalação do Ionic። ምንም ጥያቄ የለም ዊንዶውስ መጫኑን አይገነዘብም:
npm ጫን g cordova ionic npm install g cordova
ፓራ ቴስታር ኦ አዮኒክ፣ o ሴጊንቴ ኮማንዶ ፖዴ ሴር ኤክሴኩታዶ e se estiver tudo ok retornará a versão instalada፡
ionic v
Criação da aplicação no Ionic
Não፣ não tem uma በይነገጽ grá ca bonita። Tem que criar o app utilizando a linha de comandos። ማስ ዴፖይስ አንድ ፋሲሊዳዴ ዴ ኡሶ ኮፔንሳ። 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
ፓራ ቴስታር ወይም ኮዲጎ፡-
ሲዲ smart_piscina ionic አገልጋይ
Será aberta uma tela no navegador padrão mostrando a 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 ምንም ጣቢያ፡ https://code.visualstudio.com/download Os códigos alterados sdosão apreseguir mas também estão disponíveis para download.
በይነገጽ
አንድ በይነገጽ com o usuário será editada no arquivo home.html። ማስታወሻ que እንደ 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 አንጉላር። 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. የ qualquer forma está disponível ምንም arquivo compactado para ማውረድ.
Processamento
እንደ 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';
//É ትክክለኛ አስመጪ ወይም አቅራቢ። አስመጣ {DweetProvider} ከ '../../providers/dweet/dweet';
@Component ({መራጭ፡ 'ገጽ-ቤት'፣ አብነትUrl: 'ቤት.html'
})
ክፍል መነሻ ገጽ {
ግንበኛ (የሕዝብ navCtrl፡ NavController፣ የግል Dweetአቅራቢ፡ Dweetአቅራቢ) {}
//Declarações ደ Variáveis የሕዝብ respostaDweet: string=””; ይፋዊ ሁኔታ_tratamento: string = "አደጋ"; የህዝብ st_trat = 0; ይፋዊ ሁኔታ_ቦምባ፡ string=“አደጋ”፤ የህዝብ st_bba = 0; ይፋዊ ሁኔታ_reservatorio: string = "አደጋ"; የህዝብ st_res = 0; የህዝብ ቦታ = ድርድር (); ይፋዊ PH_val = 0; የህዝብ SP_PH = 0;
//ሞዴል do botão de ligar bomba public bomba_model = {
ምልክት የተደረገበት፡ ውሸት፡ ስም፡ “ሊጋር ቦምባ” }
ionViewDidLoad () {//buscando os dados no Dweet e salvando nas variáies locais this.DweetProvider.getLastestDweet("smart_piscina").subscribe( data=>{
const ምላሽ = (ውሂብ እንደ ማንኛውም); const objeto_retorno = JSON.parse (ምላሽ._body); this.locais = objeto_retorno.ጋር[0]።ይዘት; 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; ይህ.PH_val = objeto_retorno.ጋር[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.ጋር[0].content.PH_setpoint; console.log (ይህ.locais); }፣ ስህተት => {console.log(ስህተት); } ) //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 አዘምን() {
ይህ.ionViewዲድሎድ (); }
//Liga Desliga Bomba liga_des_bomba(){ this.dweetPost() }
aualiza_sp(){ this.dweetPost()
}
dweetPost(){//Converte dados do botão de Boolean para inteiro const ld_bba = ((ይህ.bomba_model.የተፈተሸ == እውነት)? 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_valor , "PH_setpo int"፡ ይህ.SP_PH}; this.DweetProvider.setDweet("smart_piscina",json_dweet)።ደንበኝነት ይመዝገቡ(
data=>{ console.log (ዳታ); }፣ ስህተት=> {console.log(ስህተት); } ) }
Dweet አቅራቢ
E necessário criar um provider 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' አስመጣ; ከ'@angular/core' አስመጣ { መርፌ }; አስመጣ 'rxjs/ add/operator/map'; /*
የመነጨ ክፍል ለDweetProvider አቅራቢ። ስለ አቅራቢዎች እና Angular DI ተጨማሪ መረጃ ለማግኘት https://angular.io/guide/dependency-injection ይመልከቱ። */ @Injectable() ክፍል DweetProvider {የግል መሰረትUrl = "https://dweet.io:443/" ግንበኛ(ይፋዊ http: ኤችቲቲፒ) {
console.log ('Hello DweetProvider Provider'); } //Método responsável por buscar as informações no Dweet. getLastestDweet (ነገር: ሕብረቁምፊ) {
const url_ማግኘት = ይህ.መሰረትUrl + “ማግኘት/የቅርብ/dweet/ለ/” + ነገር; console.log(url_ማግኘት); ይህንን ይመልሱ።http.get(url_ማግኘት); } //Método resposnsável por modificar os dados no Dweet. setDweet(ነገር፣ አካል) {ይህንን ይመልሱ።http.post(this.base.)Url + “dweet/for/”+ ነገር፣ አካል); }
Por m, é necessário realizar uma modi cação no arquivo app.module.ts para que carregue adequadamente os components 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' አስመጣ; ከ'@ionic-native/splash-screen' አስመጣ { SplashScreen}; ከ'@ionic-native/status-bar' አስመጣ { StatusBar }; {HttpModule}ን ከ'@angular/http' አስመጣ; {MyApp}ን ከ'./app.component' አስመጣ; ከ'../pages/home/home' አስመጣ { መነሻ ገጽ }; አስመጣ {DweetProvider} ከ '../providers/dweet/dweet'; @NgModule({
መግለጫዎች: [ MyApp, Homepage
]፣ ማስመጣት፡ [
BrowserModule፣ IonicModule.forRoot(MyApp)፣ // Importar o modulo HTTP አጠቃቀም ፔሎ Dweet። HttpModule]፣ bootstrap: [IonicApp]፣ entryComponents: [MyApp, HomePage]፣ አቅራቢዎች፡ [ StatusBar፣ SplashScreen፣ {አቅርቡ፡ ErrorHandler፣ useClass: IonicErrorHandler}፣ DweetProvider ]}) AppModule ክፍልን ወደ ውጪ መላክ {}
ኡፋ!
ሳልቭ tudo e teste a 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፡ ኮሎካንዶ ቱዶ ፓራ ፉንሲዮናር!!
1.ኢኒሻንዶ o ድዌት፡ ምንም ጣቢያ የለም Dweet.io፣ crie o objeto conform descrito no passo 3
Smart Piscina Com IoT – Ionic፣ Dweet E DragonBoard፡ ገጽ 19
2.ኢኒሺያንዶ እና ድራጎንቦርድ፡ አብራ o ተርሚናል ኖ ሊናሮ፣ acesse a pasta onde está a aplicação smart_home.py e digite o comando፡
sudo Python smarthome.py
3.ኢኒሻንዶ አ አፕሊካኦ ኖ አዮኒክ፡ አበራ ኦ ቶክ ዴ ኮማንዶ፣ አሴሴ አንድ ፓስታ ኦንዴ 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 ስማርት ፒሲና ኮም IoT Ionic Dweet ኢ DragonBoard [pdf] መመሪያ Smart Piscina Com IoT Ionic Dweet E DragonBoard፣ Smart Piscina፣ Com IoT Ionic Dweet E DragonBoard፣ Dweet E DragonBoard |