فهرست مطالب:
- مرحله 1: کامپوننت ها - DRAGONBOARD
- مرحله 2: کامپوننت ها - LINKER BASE
- مرحله 3: کامپوننت ها - سنسور
- مرحله 4: DESENVOLVIMENTO COM WINDOWS 10 IOT CORE
- مرحله 5: API را آماده کنید
- مرحله 6: APP MOBILE
- مرحله 7: FLUXOGRAMA
- مرحله 8: ارجاع به بیماریها
تصویری: SISTEMA DE IRRIGAÇÃO AUTOMÁTICA CONTROLADA POR SMARTPHONE: 8 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:52
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS Curso: Especialização em Arquitetura de Software Distribuído
داده ها: 2017/10/26
Unidade: Praça da Liberdade
انضباط: اینترنت das Coisas
استاد: ایلو ریورو
Alunos: Bruno Valgas ([email protected])
دلان هافمن P. سیلوا ([email protected])
هبرت آلوز فریرا ([email protected])
ژان کارلوس باتیستا ([email protected])
جوردان باتیستا ([email protected])
معرفی
اگر بتوانیم گیاهان خود را در هر زمان و هر مکان آبیاری کنیم ، چگونه خواهد بود؟ با پروژه WaterPlant امکان پذیر خواهد بود. این پروژه با هدف بهبود راحتی و کاربردی برای درمان این امر بسیار مهم برای کره زمین ایجاد شده است.
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.
اطلاعاتی برای یک API ، اطلاعات جدید و استفاده از آن ، می توانید از طریق تلفن همراه ، از دریافت اطلاعات بیشتر استفاده کنید. Desta forma a aplicação mantem o usuário informado da situação do solo. ما می توانیم با استفاده از یک درخواست برای راه اندازی یا استفاده از راه حل های انفرادی ، از طریق یک API که برای ارتباط با سیستم آبیاری خود استفاده می کنیم ، از طریق API برنامه ریزی کنیم.
مرحله 1: کامپوننت ها - DRAGONBOARD
DragonBoard 410C
A DragonBoard 410C یک راه اصلی برای طراحی و توسعه در پایگاه داده بدون پردازنده از سری Qualcomm Snapdragon 400 است ، از طریق Wi -Fi ، بلوتوث و GPS از راه دور به کار می رود ، شما می توانید به 64 مورد دسترسی پیدا کنید. Qualcomm rodando à 1.2GHz ، با 1 گیگابایت حافظه DDR3 533 مگاهرتز و 8 گیگابایت حافظه داخلی (eMMC).
پیش خرید: 500 دلار آمریکا 750 750 دلار آمریکا
مرحله 2: کامپوننت ها - LINKER BASE
Placa de expansão para mapeamento e utilização de portas ، تسهیل کننده استفاده از سنسورس.
مرحله 3: کامپوننت ها - سنسور
سنسور de Umidade do Solo
این حسگر از طریق استفاده از راه حل های انفرادی می تواند از طریق یک سنسور مقاومتی استفاده شود. Quando o solo estiver seco، a sua resistência aumenta، dificultando a passagem de corrente. Com a absorção da água، a resistencia do solo diminui allowindo a passagem de corrente entre os eletrodos e fechando، desta forma، o circuito. Dessa forma podemos definir quando o solo está molhado، ou quando está seco.
O mddulo 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.
قیمت پیش خرید: 6 دلار آمریکا - 20 دلار آمریکا.
مرحله 4: DESENVOLVIMENTO COM WINDOWS 10 IOT CORE
یک برنامه کاربردی برای استفاده از Dragonboard 410c برای استفاده از Windows 10 IoT Core استفاده کنید.
در ویندوز 10 IoT Core به منظور تسهیل برنامه های کاربردی و برنامه های کاربردی خود به منظور ایجاد سهولت برنامه ریزی شده است. Com ele é possível desenvolver para várias placas existenes no mercado، bastando ter instalado no computador os seguintes itens (já em sequência de instalação، no caso de uso da Dragonboard):
- Visual Studio 2017 Community یا outquare versão (https://www.visualstudio.com/thank-you-downloading…) ؛
- ابزار به روز رسانی DragonBoard ؛
- داشبورد اصلی IoT ویندوز 10 ؛
- DragonBoard Windows 10 IoT Core Image ؛
- الگوهای پروژه Windows IoT ؛
تمام مراحل نصب و پیکربندی pode ser encontrado بدون پیوند پیوندی:
برای نصب و راه اندازی پیکربندی مطابق آموزش با مایکروسافت ، برنامه های کاربردی پس زمینه را در Visual Studio انجام دهید.
به منظور آموزش vamos disponibilizar o código finalizado da aplicação através do GitHub em
برای پیکربندی می توانید از StartupTask.cs استفاده کنید و برنامه های خود را اجرا کنید ، و به طور واضح توضیح دهید که چگونه می توانید کار کنید.
O método principal 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 métodos InitGPIO () e InitSPI () inicializam variáveis para serem utilisadas na nossa aplicação enquanto as variáveis timer e timer2 criam 2 timers para serem ekzadosos a cada quantidade de tempo، e neste caso forames parametre 10 (10) به Para alterar esse tempo basta mudar estes valores nessa parte do código.
O Método InitGPIO () a seguir tem como função definer as configuraçõese do pino que ativa a válvula solenoide de gua. Nesse exemplo de código para a Dragonboard o código do pino foi o 36.
خلأ خصوصی InitGPIO ()
{var gpio = GpioController. GetDefault ()؛ if (gpio == null) {pin = null؛ برگشت؛ } pin = gpio. OpenPin (36)؛ if (pin == null) {return؛ } pin. Write (GpioPinValue. High) ؛ pin. SetDriveMode (GpioPinDriveMode. Output) ؛ }
Oetto InitSPI () یک پیکربندی SPI0 و Dragonboard را پیکربندی کنید.
خصوصی async Task InitSPI ()
{try {var settings = new SpiConnectionSettings (0)؛ // Seleciona a porta SPI0 da DragonBoard settings. ClockFrequency = 500000؛ // پیکربندی ساعت در تنظیمات SPI em 0.5MHz. Mode = SpiMode. Mode0؛ // COnfigura polaridade e fase do clock do SPI var controller = منتظر SpiController. GetDefaultAsync ()؛ SpiADC = controller. GetDevice (تنظیمات) ؛ } catch (Exception ex) {throw new Exception ("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 komando para iniciar uma irrigação. O seguinte trecho de código é responsável pela chamada à API:
var httpWebRequest = ((HttpWebRequest) WebRequest. Create ("https://serverless-study.appspot.com/api/v1/irrigacoes") ؛
httpWebRequest. ContentType = "application/json"؛ httpWebRequest. Method = "دریافت" ؛
Neste trecho de código deve ser alterado para o endereço onde será hospedado o código da API para buscar یا 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 () که به شما پاسخ می دهد pelo envio dos dados da umidade do solo naquele momento. É no seguinte trecho de código deste método que deve ser configurado o endereço da API para o envio dos dados:
var httpWebRequest = ((HttpWebRequest) WebRequest. Create ("https://serverless-study.appspot.com/api/v1/umidades") ؛
httpWebRequest. ContentType = "application/json"؛ httpWebRequest. Method = "ارسال" ؛
O método LerADC (کانال بایت) و یا پاسخگویی بیشتر برای انجام تجزیه و تحلیل/دیجیتالی و سیستم اطلاعاتی سنسورهای اطلاعاتی. اطلاعات مربوط به آرایه ای از بایت ها را برای تبدیل و تبدیل اطلاعات بیشتر به ConvertToInt (
public int LerADC (کانال بایت)
{بایت readBuffer = بایت جدید [3]؛ بایت writeBuffer = بایت جدید [3] {0x00 ، 0x00 ، 0x00} ؛ writeBuffer [0] = 0x01؛ writeBuffer [1] = کانال ؛ SpiADC. TransferFullDuplex (writeBuffer ، readBuffer) ؛ adcValue = ConvertToInt (readBuffer) ؛ بازگشت adcValue ؛ } public int ConvertToInt ([ReadOnlyArray] byte data) {int result = 0؛ نتیجه = داده [1] & 0x03؛ نتیجه << = 8؛ نتیجه += داده [2] ؛ نتیجه بازگشت ؛ }
مرحله 5: API را آماده کنید
API از طریق برنامه های کاربردی NodeJS (https://nodejs.org) ، از طریق Swagger (https://swagger.io/specification/) به عنوان مدلی برای اسناد و مدارک مورد استفاده قرار می گیرد.
Para armazenamento dos dados foi utilisado o banco de dados MySQL ، banco de dados relacional و منبع باز.
Segue abaixo a arquitetura de camadas que compõem a API.
● /api: Camada que gerencia os recursos disponibilizados para que terceiros possam acessar.
ap /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 یا lidos pela camada de BO (descrita mais à diante). Nesta camada está configurado o retorno ocorrido durante o processo de request.
○ /api /swagger: Camada que contém o arquivo de configuração do swagger ، onda estão toda به عنوان configurações dos recursos.
● /دامنه: Camada que contém toda codificação relacionada a regra de negócio da aplicação.
○ /مخزن: Camada de persistência de dados.
● /زیرساخت: Cama de configuração das strings de conexão do banco de dados e também do servidor que será providerado pela própria aplicação.
Para mais informações e consulta ao código fonte acesso o link to github:
Segue abaixo uma breve descrição de cada recurso disponibilizados na API:
متودو: ارسال
URI:/api/v1/umidades
توصیف: Recurso utilisado para registar umidade coletada pelo sensor de umidade.
Explo de Requisição:
{
"شجاعت": 355}
متودو: دریافت کنید
URI:/api/v1/umidades
توصیف: Recurso que recupera todos os registros de valores de umidade que foram salvos anteriormente.
پاسخ بیکاری:
[{"id": 1 ، "valor": 355 ، "dataCadastro": yyyy-MM-dd HH: MM}]
متودو: ارسال
URI:/api/v1/آبی
توصیف: Recurso utilizado para ativar o dispositivo de irrigação.
متودو: دریافت کنید
URI:/api/v1/آبی
توصیف: Recurso utilizado para verificar o estado de umidade atual do solo.
پاسخ بیکاری:
{
"شجاعت": 355}
مرحله 6: APP MOBILE
Escolhemos uma tecnologia híbrida para gerar um código reutilizável para todas as plataformas (Android و IOS) برای ابزارهای مختلف استفاده از ابزارهای کوچک و کوچک برای انجام کارها. O Ionic é um um çar possui uma gigantesca biblioteca de componentes gráficos برای تسهیل اجرای برنامه های کاربردی بصری. استفاده از زبان (HTML ، CSS و جاوا اسکریپت) برای استفاده از ابزارهای ارتباطی زاویه ای یا محوری (هسته). Através do cordova (biblioteca javascript) os recursos do dispositivos são acessados pelo webview do mesmo.
برای اعمال یک برنامه کاربردی برنامه کاربردی از طریق برنامه های کاربردی و برنامه های کاربردی از راه دور ، می توانید از راه دور استفاده کنید. Através de um evento de botão uma requisição é enviada para o servidor e açãorespondente é realizada.
پیوندها:
- https://ionicframework.com/
- https://angular.io/
- https://ionicframework.com/
O código fonte do aplicativo modelo encontra-se no GitHub ، no endereço
برای استفاده از پیکربندی برنامه API بدون استفاده از هیچ سرور arquivo.ts که به هیچ وجه /src/entity/server.ts(https://github.com/jeordanecarlosbatista/temperat…) و غیره URI_PREFIX را تغییر دهید ، conforme exemplo abaixo para o endereço onde está hospedada a API:
سرور کلاس صادرات {
عمومی فقط خواندنی URI_PREFIX: string = "https://serverless-study.appspot.com/api/v1/"؛ /* public static readonly URI_PREFIX: string = "https://dominio.com/aplicacao/"؛ */}
مرحله 7: FLUXOGRAMA
مرحله 8: ارجاع به بیماریها
دستورالعمل ها:
Qualcomm DragonBoard 410C:
Windows 10 و DragonBoard ™ 410c-شروع ایده آل برای توسعه اینترنت اشیا:
Monitore sua planta usando Arduino:
توصیه شده:
Verander Een Ongebruikte Smartphone در Een Slim Display: 6 مرحله (همراه با تصاویر)
Verander Een Ongebruikte Smartphone در Een Slim Display: این آموزش به زبان هلندی است ، برای نسخه انگلیسی آن را اینجا ببینید. Heb jij een (oude) ongebruikte smartphone؟ Maak er een slim display van has met Google Spreadsheets en wat pen and papier door deze eenvoudige tutorial te volgen.Als je de tutorial hebt voltooid
Sistema De Irrigação Automático Para Plantas: 8 قدم
Sistema De Irrigação Automático Para Plantas: A irrigação é uma das tecnologias mais utilisadas por کشاورزی از این طریق مستقل از چشمان خود ، از گارانتی uma safra uniforme ، reduz a falha humana ، minimiza o konsumo de goso ooozao استفاده کنید
Asistente Solar: Un Smartphone Modificación: 3 مرحله
Asistente Solar: Un Smartphone تغییر: Lo siento por mi horror espa & ntilde؛ ol. Gracias por leer mi Instructables usted! Tel & eacute؛ fonos tienden a estar fuera de derecho de la bater & iacute؛ a cuando m & aacute؛ s los necesitan. Con este proyecto، se puede extender la vida de la bater & iacute
نحوه تنظیم LED Demon Eye W/ Smartphone برنامه بلوتوث: 5 مرحله
چگونه می توان برنامه بلوتوث LED Demon Eye W/ Smart Phone را راه اندازی کرد: این راهنمای نصب نحوه تنظیم برنامه ای است که از طریق بلوتوث متصل می شود. این برنامه را می توان در Apple Store و Google Play ، با نام & quot؛ نورپردازی خوش & quot؛
روبات کنترل شده SMARTPHONE با استفاده از BLE 4.0 !!!: 5 مرحله
SMARTPHONE ROBOT CONTROLLED با استفاده از BLE 4.0! می توانید آن را اینجا بررسی کنید. در این مقاله آموزشی به شما نشان خواهم داد که چگونه یک ربات بسازید که می تواند