Tartalomjegyzék:
- 1. lépés: ALKATRÉSZEK - DRAGONBOARD
- 2. lépés: ALKATRÉSZEK - LINKER BASE
- 3. lépés: ALKATRÉSZEK - ÉRZÉKELŐ
- 4. lépés: DESENVOLVIMENTO COM WINDOWS 10 IOT CORE
- 5. lépés: AZ API ELŐKÉSZÍTÉSE
- 6. lépés: APP MOBILE
- 7. lépés: FLUXOGRAMA
- 8. lépés: REFERENCIÁK
Videó: SISTEMA DE IRRIGAÇÃO AUTOMÁTICA CONTROLADA POR SMARTPHONE: 8 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:39
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS Tanfolyam: Especialização em Arquitetura de Software Distribuído
Adatok: 2017.10.26
Unidade: Praça da Liberdade
Fegyelem: Internet das Coisas
Professzor: Ilo Rivero
Alunos: Bruno Valgas ([email protected])
Dellan Hoffman P. Silva ([email protected])
Hebert Alves Ferreira ([email protected])
Jean Carlos Batista ([email protected])
Jeordane Batista ([email protected])
BEVEZETÉS
Mi lenne, ha bármikor, bárhol öntözhetnénk növényeinket? A WaterPlant projekt segítségével ez lehetséges lesz. Ezt a projektet azzal a céllal fejlesztették ki, hogy javítsa a kényelmet és a gyakorlatiasságot, hogy kezelje ezt a bolygó számára oly fontosnak.
INTRODUÇÃO
Como seria se pudéssemos aguar nossas plantas a qualquer hora e de qualquer lugar? Com o Projeto WaterPlant será possível. Este projeto foi desenvolvido visando melhorar a comodidade e a praticidade para tratar deste ser tão importante para o planeta.
FUNCIONAMENTO
O projeto foi desenvolvido para monitoramento de jardins, onde é possível efetuar a verificação do estado do solo, com relação a sua umidade. Sendo assim, por meio de parâmetros da umidade do solo é possível avaliar a needidade de sua irrigação.
A placa envia informationções para a API, armazenada na nuvem, que por sua vez é acessada pelo aplicativo mobile, que recebe e trata tais information. Desta forma a aplicação mantem o usuário informado da situção do solo. O usuário em contato com a aplicação poderá solicitar o irrigamento imediado do solo, esta informationção é enviada para a API que por sua vez se comunica com a placa para acionamento do dispositivo de irrigação.
1. lépés: ALKATRÉSZEK - DRAGONBOARD
DragonBoard 410C
A DragonBoard 410C a Qualcomm Snapdragon 400 sorozatának elsődleges területe, a Wifi, a Bluetooth és a GPS, például a tamanho aproximado de um cartão de crédito, és a characterizada pelo alto desempenho do processador. Qualcomm 1,2 GHz -es szabvány, 1 GB memória DDR3 533 MHz és 8 GB memória armazenamento (eMMC).
Előre: 500–750 USD
2. lépés: ALKATRÉSZEK - LINKER BASE
Placa de expansão para mapeamento e utilização de portas, facilitando a utilização de sensores.
3. lépés: ALKATRÉSZEK - ÉRZÉKELŐ
Umidade do Solo érzékelő
Ez az érzékelő hasznos lehet, ha eletrodos para passar corrente pelo solo e lê o nível de umidade por comparação com a ellenállás potenciálmetró do módulo do sensor. Quando o solo estiver seco, a sua resistência aumenta, dificultando a passagem de corrente. Com a absorção da água, a resistência do solo diminui allowindo a passagem de corrente entre os eletrodos e fechando, desta forma, o circuit. Dessa forma podemos definir quando o solo está molhado, ou quando está seco.
O módulo fornece tanto uma saída digital (D0), como uma saída analógica (A0). O sinal digital é ajustado para que tenha valor lógico 1 quando a umidade for maior do que um valor predefinido, ajustado através do potenciômetro presente no módulo.
Előre: 6–20 dollár.
4. lépés: DESENVOLVIMENTO COM WINDOWS 10 IOT CORE
Egy alkalmazás a Dragonboard 410c -hez, amely használható a Windows 10 IoT Core használatához.
O A Windows 10 IoT Core programja támogatja a fejlesztési folyamatot, és segíti a vida dos desvolvolvedores és a hora de programar seus dispositivos szolgáltatásait. Com ele é possível desenvolver para várias placas thereistes no mercado, bastando ter instalado no computador os seguintes itens (já em sequência de instalação, no caso de uso da Dragonboard):
- A Visual Studio 2017 Community vagy a ququerer outra versoo (https://www.visualstudio.com/thank-you-downloading…);
- DragonBoard frissítő eszköz;
- Windows 10 IoT Core Dashboard;
- DragonBoard Windows 10 IoT Core Image;
- Windows IoT projekt sablonok;
Teljesen telepíthető és konfigurálható processzor és titkosítás nélküli titkosító link:
A Microsoft telepíti és konfigurálja a konfigurációt vagy az oktatóanyagot a Microsoft basta criar um novo projeto No Visual Studio do tipo Background Application programhoz.
Ez a bemutató vamos disponibilizar o código finalizado da aplicação através do GitHub em
Toda a configuração do aplicativo está no arquivo StartupTask.cs na raiz do projeto, e vamos explicar abaixo parte a parte do código.
O método princip da aplicação é o Run () e seu código é o seguinte:
public void Run (IBackgroundTaskInstance taskInstance)
{InitGPIO (); InitSPI (); _deferral = taskInstance. GetDeferral (); timer = ThreadPoolTimer. CreatePeriodicTimer (Timer_Tick, TimeSpan. FromMilliseconds (10000)); timer2 = ThreadPoolTimer. CreatePeriodicTimer (Timer_Tick2, TimeSpan. FromMilliseconds (10000)); }
Os metódus InitGPIO () e InitSPI () inicializam variáveis para serem utilizadas na nossa aplicação enquanto as variáveis timer e timer2 criam 2 timers para serem executados a cada quantidade de tempo, e neste caso foram parametrizados 10 segment cassad. Para alterar esse tempo basta mudar estes valores nessa parte do código.
O Método InitGPIO () a seguir tem como função definir as configuraçõese do pino que ativa a válvula solenoide de água. Nesse examplelo de código para a Dragonboard o código do pino foi o 36.
private void InitGPIO ()
{var gpio = GpioController. GetDefault (); if (gpio == null) {pin = null; Visszatérés; } pin = gpio. OpenPin (36); if (pin == null) {return; } pin. Write (GpioPinValue. High); pin. SetDriveMode (GpioPinDriveMode. Output); }
Az InitSPI () metódusa konfigurálja a SPI0 portát a Dragonboard -on.
privát aszinkron Feladat InitSPI ()
{try {var settings = new SpiConnectionSettings (0); // Válassza ki a SPI0 portát a DragonBoard beállításoknál. ClockFrequency = 500000; // Az óra beállítása barramento SPI -hez 0,5 MHz -es beállításokkal. Mode = SpiMode. Mode0; // COnfigura polaridade e fase do clock do SPI var controller = wait SpiController. GetDefaultAsync (); SpiADC = controller. GetDevice (beállítások); } fogás (kivétel kivétel) {dobj új kivételt ("Falha na inicialização do SPI", ex); }}
O primeiro timer invoca o método Timer_Tick () que tem como função a verificação através da API se houve um comando para iniciar uma irrigação. O keverék trecho de código és válaszok chamada API:
var httpWebRequest = (HttpWebRequest) WebRequest. Create ("https://serverless-study.appspot.com/api/v1/irrigacoes");
httpWebRequest. ContentType = "application/json"; httpWebRequest. Method = "GET";
Neste trecho de código deve ser alterado para o endereço onde será hospedado o código da API para buscar o comando de irrigação. É neste trecho de código que a irrigação é encerrada também.
Para o segundo timer é invocado o método Timer_Tick2 () que é responseável pelo envio dos dados da umidade do solo naquele momento. É nincs seguinte trecho de código deste método que deve ser Configurado o endereço da API para or envio dos dados:
var httpWebRequest = (HttpWebRequest) WebRequest. Create ("https://serverless-study.appspot.com/api/v1/umidades");
httpWebRequest. ContentType = "application/json"; httpWebRequest. Method = "POST";
O método LerADC (bájtcsatorna) é método válaszreakció por ler do convertor analógikus/digitális os fényérzékelő információs pelo sensor de umidade. Este adaptator information um array de bytes que é convertido em inteiro através do método ConvertToInt ([ReadOnlyArray] byte data). Segue os trechos de código:
public int LerADC (bájtcsatorna)
{byte readBuffer = new byte [3]; bájt writeBuffer = új bájt [3] {0x00, 0x00, 0x00}; writeBuffer [0] = 0x01; writeBuffer [1] = csatorna; SpiADC. TransferFullDuplex (writeBuffer, readBuffer); adcValue = ConvertToInt (readBuffer); return adcValue; } public int ConvertToInt ([ReadOnlyArray] bájt adat) {int eredmény = 0; eredmény = adatok [1] & 0x03; eredmény << = 8; eredmény += adatok [2]; visszatérési eredmény; }
5. lépés: AZ API ELŐKÉSZÍTÉSE
API a NodeJS (https://nodejs.org) platformon, a Swagger használatán (https://swagger.io/specification/) a moderátoron és a dokumentumok visszaállításán, az integraço do trabalho használatához.
Armazenamento dos dados fori use of banco de dados MySQL, banco de dados relacional and open source.
Segítségével az arquitetura de camadas que compõem API.
● /api: Camada que gerencia os recursos disponibilizados para que terceiros possam acessar.
○ /api /controller: Camada que gerencia as rotas definidas no documento gerado pelo swagger.
○ /api /service: Camada que entrega os dados de entrada para serem tratados, depois escritos ou lidos pela camada de BO (descrita mais à diante). Nesta camada está configurarado o retorno ocorrido durante o processo de request.
○ /api /swagger: Camada que contém o arquivo de configuração do swagger, on estão toda as configurações dos recursos.
● /domain: Camada que contém toda codificação relacionada a regra de negócio da aplicação.
○ /adattár: Camada de persência de dados.
● /infrastruktúra: Cama de configuração das strings de conexão do banco de dados e também do servidor que será Provisionado pela própria aplicação.
További információ és konzultáció a código fonte acesso vagy link a githubhoz:
Segue abaixo uma breve descrição de cada recurso disponibilizados API:
Método: POST
URI:/api/v1/umidades
Leírás: Recurso utilizado para registar umidade coletada pelo sensor de umidade.
Példa a követelményekre:
{
„Vitézség”: 355}
Método: GET
URI:/api/v1/umidades
Leírás: Recurso que recupera todos os registros de valores de umidade que foram salvos anteriormente.
Példa a válaszra:
[{„Id”: 1, „valor”: 355, „dataCadastro”: éééé-hh-nn HÓ: MM}]
Método: POST
URI:/api/v1/irrigacoes
Leírás: Recurso utilizado para ativar o dispositivo de irrigação.
Método: GET
URI:/api/v1/irrigacoes
Leírás: Recurso utilizado para verificar o estado de umidade atual do solo.
Példa a válaszra:
{
„Vitézség”: 355}
6. lépés: APP MOBILE
Escolhemos uma tecnologia híbrida para gerar um código reutilizável para todas as plataformas (Android e IOS) para aumentar and abrangência de usuários e diminuir o custo do projeto. O Ionic é um framework que possui uma gigantesca biblioteca de komponens gráficos que facilitita and implementação visual do aplicativo. A webes nyelvhasználat (HTML, CSS és Javascript) a criação das telas e tem o Angular como o seu núcleo (core). Através do cordova (biblioteca javascript) os recursos do dispositivos são acessados pelo webview do mesmo.
O applicativo consiste em realizar algumas requisições para a API do system a fim de se obter informationções sobre a umidade do solo e regar o mesmo remotamente. Através de um evento de botão uma requisição é enviada para o servidor e a ação levelező é realizada.
Linkek:
- https://ionicframework.com/
- https://angular.io/
- https://ionicframework.com/
O código fonte do aplicativo modelo encontra-se no GitHub, no endereço
Para que o applicativo funcione basta configurar o endereço da API no arquivo server.ts que encontra-se no directtório /src/entity/server.ts(https://github.com/jeordanecarlosbatista/temperat…) e alterar a variável URI_PREFIX, Conforme examplelo abaixo para o endereço onde está hospedada a API:
export osztály Szerver {
public static readonly URI_PREFIX: string = "https://serverless-study.appspot.com/api/v1/"; /* public static readonly URI_PREFIX: string = "https://dominio.com/aplicacao/"; */}
7. lépés: FLUXOGRAMA
8. lépés: REFERENCIÁK
Utasítások:
Qualcomm DragonBoard 410C:
Windows 10 és DragonBoard ™ 410c-a tökéletes kezdet az IoT fejlesztéséhez:
Monitore sua planta usando Arduino:
Ajánlott:
Vídeo Tutoriales De Tecnologías Creativas 05: ¿Hacemos Un Detector De Presencia? ¡Por Supuesto !: 4 lépés
Vídeo Tutoriales De Tecnologías Creativas 05: ¿Hacemos Un Detector De Presencia? ¡Por Supuesto !: En tutorial vamos a aprender como hacer un detector de presencia con un sensor de ultrasonidos sobre una placa Arduino Uno y utilizando Tinkercad Circuits (utilizando una cuenta gratuita). A Continuación se tiene el resultado final que posterior
Jukebox Casera Por: Tono Kiehnle: 5 lépés (képekkel)
Jukebox Casera Szerző: Tono Kiehnle: Jukebox hecha en casa program Arduino UNO. Contiene 3 dalok reprodukálása por medio de un buzzer pasivo y cuenta con botones de pulso y una pantalla LCD para interakció con el usuario.La jukebox cuenta con 3 botones. 2 de ellos se util
Sistema De Irrigação Automático Para Plantas: 8 lépés
Sistema De Irrigação Automático Para Plantas: A irrigação é uma das tecnologias mais utilizadas por Agricultores pois esta atividade independente da ocorrência de chuvas, garante uma safra uniforme, reduz a falha humana, minimiza o consumo de água (utilizando os apenis minim)
Sam - NFC Smartphone Automation Mate: 6 lépés
Sam - NFC Smartphone Automation Mate: Bevezetés: Sam - NFC Smartphone Automation MatePreface: Ez egy csoportos projekt Lance Pan és Zeynep Kirmiziyesil között az Emily Carr Művészeti Egyetemen & Tervezés az intelligens objektumokhoz. Ez a projekt a Near Field Communication (NFC) technológiát tárja fel
SmartPhone Game Simulator- Játsszon Windows játékokkal az IMU gesztusvezérlés, gyorsulásmérő, giroszkóp, magnetométer segítségével: 5 lépés
SmartPhone Game Simulator- Játsszon Windows játékokat gesztusvezérléssel IMU, gyorsulásmérő, giroszkóp, magnetométer: Támogassa ezt a projektet: https://www.paypal.me/vslcreations, adományozva nyílt forráskódoknak és & további fejlődés támogatása