Mundarija:
- 1 -qadam: KOMPONENTLAR - DRAGONBOARD
- 2 -qadam: KOMPONENTLAR - LINKER BASE
- 3 -qadam: KOMPONENTLAR - SENSOR
- 4 -qadam: DESENVOLVIMENTO COM WINDOWS 10 IOT CORE
- 5 -qadam: API tayyorlang
- 6 -qadam: MOBIL ilovasi
- 7 -qadam: FLUXOGRAMA
- 8 -qadam: YO'LLANMA
Video: SISTEMA DE IRRIGAÇO AUTOMÁTICA CONTROLADA POR SMARTPHONE: 8 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
PONTIFCCIA UNIVERSIDADE CATÓLICA DE MINAS GERAISCurso: Maxsus dasturlar va dasturiy ta'minotni tarqatish.
Ma'lumot: 26.10.2017
Unidade: Praça da Liberdade
Fan: Coisas Internet tarmog'i
Professor: Ilo Rivero
Alunos: Bruno Valgas ([email protected])
Dellan Xoffman P. Silva ([email protected])
Hebert Alves Ferreyra ([email protected])
Jan Karlos Batista ([email protected])
Jordan Batista ([email protected])
KIRISH
Agar biz o'simliklarimizni istalgan vaqtda, istalgan joyda sug'organimizda nima bo'lar edi? WaterPlant loyihasi bilan bu mumkin bo'ladi. Bu loyiha sayyoramiz uchun juda muhim bo'lgan qulaylik va amaliylikni yaxshilash maqsadida ishlab chiqilgan.
KIRISH
Qimmatbaho qog'ozlar qanday? U Projeto WaterPlant -ga tegishli. Bu sizning sayyorangiz uchun muhim rol o'ynashi mumkin.
FUNCIONAMENTO
Yozuvlarni tekshirish uchun, biz o'zimizni shaxsiy ma'lumotlarimizni tekshiramiz, lekin biz o'zimizni xohlaymiz. Agar siz o'zingizni xohlasangiz, u holda siz ham o'zingizni xohlaysiz.
Ma'lumotlar API -ga tegishli ma'lumotlarni o'z ichiga oladi, ular mobil telefonlar, mobil qurilmalar va boshqa ma'lumotlarni o'z ichiga oladi. Ma'lumotlar almashinuvi ma'lumotlari ham, yakka tartibda ham mavjud. Alohida savollarga javob berish uchun, siz API -ni ishlatishingiz mumkin.
1 -qadam: KOMPONENTLAR - DRAGONBOARD
DragonBoard 410C
Qualcomm Snapdragon 400, Wi -Fi, Bluetooth va GPS -dan foydalanish uchun hech qanday asosiy protsessor yo'q, lekin bu protsessor 64 -darajali protsessorga ega. Qualcomm - 1,2 gigagertsli, 1 Gb DDR3 533 MGts va 8 Gb tezkor xotira (eMMC).
Oldingi: $ 500 ~ R $ 750
2 -qadam: KOMPONENTLAR - LINKER BASE
Sensorli sensorlar uchun qulaylik va qulaylik yaratish.
3 -qadam: KOMPONENTLAR - SENSOR
Sensor de Umidade yakkaxon
Hisoblagichlar sensorlar yordamida sensorlar bilan ishlashni osonlashtiradi. Alohida -alohida, qarshilik ko'rsatish qiyin bo'lsa, uni tuzatish qiyin. Maqsadga ko'ra, qarshilik faqat o'z -o'zidan kamayishi mumkin, bu esa o'chirish, o'chirish yoki o'chirish uchun ruxsat beradi. Dessa formulasi aniq yoki yo'qligini aniqlab beradi.
Raqamli raqamlar (D0), analogika (A0). Raqamli raqamli ma'lumotni olish uchun, siz birinchi navbatda ma'lumotni oldindan belgilashingiz mumkin, shuning uchun hech qanday imkoniyat yo'q.
Oldindan: $ 6 ~ R $ 20.
4 -qadam: DESENVOLVIMENTO COM WINDOWS 10 IOT CORE
Dragonboard 410c uchun Windows 10 IoT Core -ni o'rnatish uchun zarur bo'lgan operatsion tizim.
Windows 10 IoT Core va undan keyin dasturiy ta'minot va boshqa dasturlar bilan ishlashni osonlashtiradi. Bu erda hech qanday merkado, bastando ter instalado hech qanday hisob -kitoblar mavjud emas (masalan, ajdaho taxtasi yo'q):
- Visual Studio 2017 hamjamiyatining talablari (https://www.visualstudio.com/thank-you-downloading…);
- DragonBoard yangilash vositasi;
- Windows 10 IoT Core boshqaruv paneli;
- DragonBoard Windows 10 IoT Core tasviri;
- Windows IoT loyihasi andozalari;
O'rnatish va o'rnatish uchun havola yo'q:
O'rnatish yoki o'rnatish uchun, Microsoft Visual Studio dasturining orqa fon ilovasi bilan hech qanday aloqasi yo'q.
GitHub-dan foydalanish bo'yicha qo'llanmalarning yakuniy versiyasi-bu
StartupTask.cs loyiha va dasturlarni sozlashda hech qanday farq yo'q, shuning uchun ular bir -biridan farq qiladi.
Boshqaruvning asosiy vazifasi Run () ni tanlang:
public void Run (IBackgroundTaskInstance taskInstance)
{InitGPIO (); InitSPI (); _deferral = taskInstance. GetDeferral (); taymer = ThreadPoolTimer. CreatePeriodicTimer (Timer_Tick, TimeSpan. FromMilliseconds (10000)); timer2 = ThreadPoolTimer. CreatePeriodicTimer (Timer_Tick2, TimeSpan. FromMilliseconds (10000)); }
InitGPIO () va InitSPI () dasturlari vaqtni o'lchash uchun 2 ta taymer va vaqtni o'lchash uchun 2 ta taymerni o'rnatish uchun 10 soniya vaqtdan keyin o'rnatiladi.. Qolaversa, bu tezlik va tezlikni oshiradi.
Meteodo InitGPIO () ni aniqlang, bu sizning xohishingizga ko'ra sozlamalarni o'rnatishga imkon beradi. Misol uchun, Dragonboard yoki pino foi yoki 36.
shaxsiy bo'sh joy InitGPIO ()
{var gpio = GpioController. GetDefault (); agar (gpio == null) {pin = null; qaytish; } pin = gpio. OpenPin (36); if (pin == null) {qaytish; } pin. Write (GpioPinValue. High); pin. SetDriveMode (GpioPinDriveMode. Output); }
InitSPI () protokoli SPI0 va Dragonboard -ni sozlash.
InitSPI xususiy vaqtinchalik vazifasi
{harakat qilib ko'ring {var settings = new SpiConnectionSettings (0); // SPI0 va DragonBoard sozlamalarini tanlang. ClockFrequency = 500000; // 0,5 MGts chastotali SPI rejimida soatni sozlash. Mod = SpiMode. Mode0; // COnfigura polaridade e fase do clock do SPI var controller = awi SpiController. GetDefaultAsync (); SpiADC = controller. GetDevice (sozlamalar); } catch (Exception ex) {yangi istisno tashlash ("Falha na inicialização do SPI", sobiq); }}
Timer_Tick () dasturini ishga tushirish vaqtini belgilash uchun siz API -ni ishlatishingiz mumkin. Siz API -da javob berishingiz mumkin:
var httpWebRequest = (HttpWebRequest) WebRequest. Create ("https://serverless-study.appspot.com/api/v1/irrigacoes");
httpWebRequest. ContentType = "application/json"; httpWebRequest. Method = "Oling";
Alohida shifrlash yoki shifoxonada API -ni o'rnatish, shuningdek, avtoulovni haydash yoki o'chirish uchun mo'ljallangan. Bu hech qanday muammosiz.
Timer_Tick2 () ni ishga tushirish vaqtini belgilang, shunda siz javob berishingiz kerak. Hech qanday ma'lumot yo'q, lekin siz API -ni sozlashingiz yoki sozlashingiz mumkin:
var httpWebRequest = (HttpWebRequest) WebRequest. Create ("https://serverless-study.appspot.com/api/v1/umidades");
httpWebRequest. ContentType = "application/json"; httpWebRequest. Method = "POST";
Bu LerADC (bayt kanali) va boshqa javoblar yordamida analitik/raqamli ma'lumotlarni almashish uchun zarur bo'lgan ma'lumotlarni uzatadi. Ma'lumotlar ConvertToInt ([ReadOnlyArray] bayt ma'lumotlari) bilan bir qatorda, baytlarni ham o'zgartiradi. Mashhurlik:
ommaviy int LerADC (bayt kanali)
{bayt readBuffer = yangi bayt [3]; bayt writeBuffer = yangi bayt [3] {0x00, 0x00, 0x00}; yozish Buffer [0] = 0x01; writeBuffer [1] = kanal; SpiADC. TransferFullDuplex (writeBuffer, readBuffer); adcValue = ConvertToInt (readBuffer); adcValue -ni qaytarish; } public int ConvertToInt ([ReadOnlyArray] bayt ma'lumotlar) {int natijasi = 0; natija = ma'lumotlar [1] & 0x03; natija << = 8; natija += ma'lumotlar [2]; natijani qaytarish; }
5 -qadam: API tayyorlang
NodeJS platformasi (https://nodejs.org) yoki Swagger (https://swagger.io/specification/) yordamida siz hujjatlarni qayta ishlashingiz va ularni qayta ishlashingiz mumkin.
MySQL -dan, shuningdek, ochiq manbadan va boshqa manbalardan foydalanish mumkin.
Siz API -ni tanlashingiz kerak.
● /api: achchiq -achchiq -a -da.
○ /api /nazoratchi: hech qanday hujjat yo'q, chunki u hech qanday ma'lumot bermaydi.
Ap /api /xizmati: O'yinni o'tkazish uchun eng muhim vazifalarni bajaring, bu sizning vazifangizni bajarishga yordam beradi. Nesta konfiguratsiya yoki qayta ishlash talab qilinadi.
○ /api /swagger: bu konfiguratsiyani tez -tez sozlash va sozlash uchun kerak bo'ladi.
● /domen: bir vaqtning o'zida bir nechta kodli dasturlar.
○ /ombor: Camada de persentecia de dados.
● /infratuzilma: konfiguratsiyaning asosiy satrlari, shuningdek, xizmatlar va xizmatlarni taqdim etish.
Github-ga havola orqali ma'lumot olish uchun maslahatlar bering:
Siz API -ni o'chirib qo'yishingiz mumkin:
Matn: POST
URI:/api/v1/umidades
Ta'rif: ro'yxatga olish kitobini qayta tiklash uchun sensorlar ham kerak.
Masalan, talablar:
{
"Jasorat": 355}
Metod: Oling
URI:/api/v1/umidades
Ta'rif: Ma'lumotlarni qayta yozib oling, bu ro'yxatga olish ma'lumotlarini oldindan yozib qo'ying.
Masalan, javob:
[{"Id": 1, "jasorat": 355, "dataCadastro": yyyy-MM-gg HH: MM}]
Matn: POST
URI:/api/v1/irrigacoes
Ta'rif: Ma'lumotni qayta ishlashning yana bir usuli.
Metod: Oling
URI:/api/v1/irrigacoes
Ta'rif: Yakkaxon operatsiyalarni mustaqil ravishda bajaring.
Masalan, javob:
{
"Jasorat": 355}
6 -qadam: MOBIL ilovasi
Escolhemos texnologiyasi, shuningdek, plataformalar (Android va IOS) bilan bir qatorda, dasturlarni ham, o'yinlarni ham o'z ichiga oladi. Ion -ramka, biblioteca komponentlarini grafika, shuningdek, ingl. Linguagens veb -saytining (HTML, CSS va Javascript) asosiy va asosiy burchaklari (asosiy) uchun mo'ljallangan. Tashriflar kordova (biblioteca javascript) orqali amalga oshiriladi, shuning uchun veb -saytni ochish kerak.
Bu API -ni o'rnatish uchun zarur bo'lgan barcha ma'lumotlarni o'z ichiga oladi. Hodisalar, shuningdek, xizmat ko'rsatuvchi va xizmat ko'rsatuvchi muxbirlar tomonidan amalga oshiriladi.
Havolalar:
- https://ionicframework.com/
- https://angular.io/
- https://ionicframework.com/
GitHub-ni ishlatmaslik uchun hech qanday cheklovlar yo'q, lekin
API-ni o'rnatish uchun server yoki serverni o'rnatib bo'lmaganda, /src/entity/server.ts(https://github.com/jeordanecarlosbatista/temperat…) o'zgaruvchan URI_PREFIX, masalan, API -ni ishlatish kerak:
eksport sinf serveri {
URI_PREFIX statik o'qish uchun ochiq: string = "https://serverless-study.appspot.com/api/v1/"; /* umumiy statik o'qish uchun faqat URI_PREFIX: string = "https://dominio.com/aplicacao/"; */}
7 -qadam: FLUXOGRAMA
8 -qadam: YO'LLANMA
Ko'rsatmalar:
Qualcomm DragonBoard 410C:
Windows 10 va DragonBoard ™ 410c-IoT ishlab chiqish uchun mukammal boshlanish:
Arduino-ni ishlating:
Tavsiya:
To'g'ridan-to'g'ri raqamli sintez (DDS) chipli MIDI tomonidan boshqariladigan qadam dvigateli: 3 qadam
To'g'ridan-to'g'ri raqamli sintez (DDS) chipli MIDI tomonidan boshqariladigan qadamli dvigatel: Siz hech qachon mini-loyihaga aylanishingiz kerak degan yomon fikrga keldingizmi? Xo'sh, men AD9833 to'g'ridan -to'g'ri raqamli sintez (DDS) moduli yordamida musiqa yaratishga qaratilgan Arduino Due uchun chizgan eskiz bilan o'ynab yurardim … va bir paytlar men o'yladim
Comando Por Voz - DragonBoard410c: 5 qadam
Comando Por Voz - DragonBoard410c: Este guia ir á Julius junto com o Coruja dasturining konfiguratsiyasini o'rnatish, u bilan bir vaqtda, Portugaliya stico em Portugaliya va uning atrofidagi dasturlarni qayta ishlashga yordam beradi
Lámpara Portátil Con Carga Por Inducción (En Proceso): 4 qadam
Lámpara Portátil Con Carga Por Inducción (En Proceso): Kompyuter komponentlari: Bateria Lipo 500mAh/3.7V: https: //tienda.bricogeek.com/baterias-lipo/939-- … LiPo USB va shahar yuk mashinalari: https://tienda.bricogeek.com/cargadores-de-bateria…Car
Nazorat De Foco Por Medio De Comandos De Voz: 22 qadam
Boshqaruv De Foco Pio Medio De Comandos De Voz: O'quv qo'llanmalari, shuningdek, google yordamchisi va nufuzli plataforma de -wi -fi (Lolin) ni boshqaradi. Esp8266 modulli tugunni o‘chirish
Robot Con Sistema De Control: 7 qadam (rasmlar bilan)
Boshqaruvning robot tizimi: O'qitish mumkin emas, chunki bu tizimni boshqarishning hech qanday usuli yo'q, shuning uchun PID -ni boshqarish juda oson