สารบัญ:
- ขั้นตอนที่ 1: กำหนดค่า Do AndroidManifest
- ขั้นตอนที่ 2: Entendendo ในฐานะ Classes De Serviço "PavimentoIrregularBackgroundService"
- ขั้นตอนที่ 3: Entendendo ในฐานะ Classes De Services "GeoBackgroundService"
- ขั้นตอนที่ 4: Entendendo ในฐานะ Classes De Serviço "FirebaseBackgroundService"
- ขั้นตอนที่ 5: กิจกรรม Entendendo "MapaActivity"
- ขั้นตอนที่ 6: Firebase
- ขั้นตอนที่ 7: Conclusão Do Projeto Final
วีดีโอ: มินฮาผ่าน IOT: 7 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
โพสต์ Graduação จาก Desenvolvimento de Aplicações para dispositivos móveisPUC Contagem
อลูนอส: Gabriel André e Leandro Reis
Os pavimentos das principais rodovias federais, estaduais e das vias públicas das cidades possuem algum tipo de defeito, causados por vários fatores, o que gera um grande impacto no custo โอเปร่าทำการขนส่ง A partir deste problema, o presente trabalho tem como objetivo a presentação de um aplicativo for smartphone com sistema Operacional Android que identifique as Identifique as Irmalidades na pavimentação dos logradouros das cidades utilizando os sensores acelerômetro. ระบบปฏิบัติการ ปกติ comum encontrados são: remendos em processo de afundamento ou remendos com elevação acima do pavimento Regular, afundamentos, trincas, ondulações e buracos Abaixo segue os passos necessários para entendimento da construção da aplicação.
ขั้นตอนที่ 1: กำหนดค่า Do AndroidManifest
ไม่มี arquivo AndroidManifest.xml é realizado เป็น configurações necessários de permissão e funcionamento do aplicativo com os conceitos de computação ubíqua
-
PermissõesDetalhamos abaixo เป็น permissões do aplicativo e os motivos do uso de cada configuração.
- อนุญาต LocalizaçãoPermissão do aplicativo para encontrar a localização configuramos duas tags, sendo elas:
- Permissão para identificação de Inicialização e Reinicialização do AplicativoPermissão do aplicativo para "escutar" um evento de inicialização e reinicialização do sistema Android, เริ่มต้นใช้งาน os serviços que irá monitorars ที่หน้าจอ
- สิทธิ์ใช้งานอินเทอร์เน็ตอนุญาตสำหรับแอปพลิเคชัน utilizar a internet com objetivo de sincronizar os dados com o servidor firebase, sendo ela:
-
บริการ2.1) บริการของ Pavimento Irregular
ที่แท็ก บริการ que aponta para a classe "PavimentoIrregularBackgroundService" tem como objetivo de captar informações dos pavimentos dissolvees e armmazenar no banco de dados do aparelho smartphone para o aplicativo.
2.2) บริการของ GeoLocalização บริการแท็ก que aponta para a classe "GeoBackgroundService" tem como objetivo de tratar as Informações de pavimento ผิดปกติ e busca a sua localização de logradouro, bairro, cidade, unidade federativa para dados de agrupar os ผิดปกติ อุมา ซิเดด
2.3) บริการของ Sincronização de dados com Firebase Na tag service que aponta para a classe "FirebaseBackgroundService" tem como objetivo de enviar as Informações de pavimento ผิดปกติ encontrado pelo aparelho จาก Smartphone, somando com เป็น demaiscontradaçõs en plica.
-
กำหนดค่า API ทำ MAPS
Para configuração da API do Maps precisamos registrar uma chave por aplicativo, Configure tutorial (กำหนดค่า API MAPS Android)
A chave obtida deverá ser colocada em "android:value" กับแท็ก "meta-data" ทำ 'android:name="com.google.android.geo. API_KEY"', สอดคล้อง ตัวอย่าง abaixo:
-
ผู้รับReceiverReceiver neste projeto irá escutar as ações de inicialização e reinicialização do sistema para captar as Informações de pavimento trauma.4.1) ผู้รับของ Pavimento Irregular
คลาส "AlarmReceive" é chamada toda vez que há inicialização do sistema operacional android, การกำหนดค่าตามแท็ก "" Após esta chamada, dentro da classe há um agendador para a execução do serviço "PavimentoIrregularBackgroundService" que fica avaliando se há pavimento ผิดปกติ.
4.2) Receiver de GeoLocalização A classe "AlarmGeoReceive" é chamada toda vez que há inicialização do sistema operacional android, การกำหนดค่าตามแท็ก"
4.3) ตัวรับสำหรับ Firebase A classe "AlarmFirebaseReceive" é chamada toda vez que há inicialização do sistema operacional android, conforme configuração da tag "" ไฟล์ esta chamada, dentro da classe há um agendador para a execução do serviço "FirebaseBackgroundService" que fica avaliando se há registros com todos os dados de logradouro disponivel para envio ao servidor firebase.
ขั้นตอนที่ 2: Entendendo ในฐานะ Classes De Serviço "PavimentoIrregularBackgroundService"
A classe "PavimentoIrregularBackgroundService" é utizada para capturar Informações dos sensores acelerômetro และ GPS ข้อมูลพื้นฐานและข้อมูลอื่นๆ ที่มีอยู่ ส่วนประกอบ um algoritmo especifico ไม่มี método "onLocationChanged" que avalia se o pavimento é ผิดปกติ, ไม่มีคุณสมบัติ é inserido em uma tabela de banco de dados da própria aplicação. A classe possui algumas tratativas especificas para identificar se o aparelho está com a bateria baixa com objetivo de encerrar o serviço sem que haja prejuízo na coleta das informações e contribuir com. ความช่วยเหลือ Outras tratitivas prevê que o encerramento da aplicação, pausa da aplicação เป็นต้น
ขั้นตอนที่ 3: Entendendo ในฐานะ Classes De Services "GeoBackgroundService"
คลาส "GeoBackgroundService" é ตอบกลับจาก buscar pavimentação ผิดปกติ e เสริมเป็น Informações de endereço da latitude e longitude encontrados para que haja o envio dessas Informações pelo serviço de Firebase Basicamente ele busca a informação e atualiza complementando que está no método "updateAddress".
ขั้นตอนที่ 4: Entendendo ในฐานะ Classes De Serviço "FirebaseBackgroundService"
คลาส "FirebaseBackgroundService" ที่ตอบสนองความต้องการด้านสิ่งแวดล้อมของสภาพแวดล้อมการทำงานที่ไม่ปกติบนเซิร์ฟเวอร์ Firebase da aplicação
ข้อมูลที่เป็นประโยชน์, ระบบปฏิบัติการ dados no banco de dados da aplicação é limpado para prover espaço de armmazenameto ao aparelho Smartphone O método "enviarPavimentoIrregular" é o responsável pela sincronização das informações necessárias. ความรับผิดชอบ การกำหนดค่าสำหรับ Firebase สำหรับระบบปฏิบัติการ Android, การใช้งานขั้นสูง o บทช่วยสอน (การกำหนดค่า Firebase สำหรับ Android) สำหรับพื้นฐานข้อมูลพื้นฐานเกี่ยวกับ Firebase
ขั้นตอนที่ 5: กิจกรรม Entendendo "MapaActivity"
MapaActivity é a principal Activity do sistema, pois ela é responsavel pela exibição dos pavimentos dissolvees encontrados nas cidades e sua informações é exibida por um mapa de calor, onde a maior ocorrência de mapce de mapce.
ขั้นตอนที่ 6: Firebase
ไม่มี arquivo "minhaviaiot-export.json" exportado do Firebase, segue um exemplo da esttrutura dos dados armazenados pela aplicação, สอดคล้อง detalhado abaixo:
Cada logradouro poderá ter mais de um pavimento ผิดปกติ. Cada Cidade poderá ter mais de um logradouro com pavimento ผิดปกติ. E assim por diante até chegar no país de origem do logradouro problemático. ความช่วยเหลือ
{ "minhaviaiot": { "pais": { "BR": { "uf": { "Minas Gerais": { "cidade": { "Belo Horizonte": { "logradouro": { "Acesso Praça Paulo Gustavo do Vale" ": { "LTE5Ljg1OTg3MDA2LTQzLjk5Mzc3MDI4": { "cidade": "Belo Horizonte", "idFirebase": "LTE5Ljg1OTg3MDA2LTQzLjk5Mzc3MDI4", "ละติจูด": "-19.85987006" ตามยาว: "-19.85987006": "-43.99377028", "pais": "BR", "uf": "Minas Gerais" }, "LTE5Ljg1OTgwMDQ4LTQzLjk5MzM2MDg1": { "cidade": "Belo Horizonte", "idFirebase": "LTE5Ljg4g1OTgwmdjLTE5Ljg4GMD1OTgwLtitude" "-19.85980048", "logradouro": "Acesso Praça Paulo Gustavo do Vale", "ลองจิจูด": "-43.99336085", "pais": "BR", "uf": "Minas Gerais" }, "LTE5Ljg1OTgzNzMxLTQzLjkE4Mz": { "cidade": "Belo Horizonte", "idFirebase": "LTE5Ljg1OTgzNzMxLTQzLjk5MzYxMzE4", "ละติจูด": "-19.85983731", "logradouro": "Acesso Praça Paulo Gustavo do Vale", "ลองจิจูด": "ลองจิจูด": "-43.993618": " ": "BR", "uf": "Minas Gerais" } } "Avenida Afonso Pena": { "LTE5LjkzODk3NTI5LTQzLjkyNjQ0MzI5 ": { "cidade": "Belo Horizonte", "idFirebase": "LTE5LjkzODk3NTI5LTQzLjkyNjQ0MzI5", "ละติจูด": "-19.93897529", "logradouro": "Avenida Afonso Pena", "ลองจิจูด": "-43.92644329" ": "BR", "uf": "Minas Gerais" }, "LTE5LjkzODkyOTY1LTQzLjkyNjM2MDk=": { "cidade": "Belo Horizonte", "idFirebase": "LTE5LjkzODkyOTY1LTQzLjkyNjM2MDk:-19, "ละติจูด" logradouro": "Avenida Afonso Pena", "ลองจิจูด": "-43.9263609", "pais": "BR", "uf": "Minas Gerais" } } } } } } } } } } }
ขั้นตอนที่ 7: Conclusão Do Projeto Final
ขยายและสั่งสอนต่อจากสิ่งที่ต้องทำหรือโปรเจ็กโต Android compactado Com este projeto é possível ter uma visão dos conceitos de computação ubíqua aplicado em um problema que não tem em nenhum sistema de tempo จริง ข้อมูลโครงการ é possível chegar na realidade de cada cidade e identificar onde deverá ser aplicado os investimentos para um novo asfalto ou uma correção de curto prazo. Para quaisquer dúreis e Leudrolook-mail@
แนะนำ:
Easy IOT – ฮับเซ็นเซอร์ RF ที่ควบคุมด้วยแอปสำหรับอุปกรณ์ IOT ระยะกลาง: 4 ขั้นตอน
Easy IOT – ฮับเซ็นเซอร์ RF ที่ควบคุมด้วยแอปสำหรับอุปกรณ์ IOT ระยะกลาง: ในบทช่วยสอนนี้ เราจะสร้างเครือข่ายของอุปกรณ์ที่สามารถควบคุมผ่านลิงก์วิทยุจากอุปกรณ์ศูนย์กลาง ประโยชน์ของการใช้การเชื่อมต่อวิทยุแบบอนุกรม 433MHz แทน WIFI หรือ Bluetooth คือช่วงที่กว้างกว่ามาก (พร้อม
IoT APIS V2 - ระบบชลประทานพืชอัตโนมัติที่เปิดใช้งาน IoT แบบอัตโนมัติ: 17 ขั้นตอน (พร้อมรูปภาพ)
IoT APIS V2 - ระบบชลประทานพืชอัตโนมัติที่เปิดใช้งาน IoT แบบอัตโนมัติ: โครงการนี้เป็นวิวัฒนาการของคำสั่งก่อนหน้าของฉัน: APIS - ระบบชลประทานพืชอัตโนมัติฉันใช้ APIS มาเกือบปีแล้วและต้องการปรับปรุงจากการออกแบบก่อนหน้านี้: ความสามารถในการ ตรวจสอบโรงงานจากระยะไกล นี่คือวิธีที่
โมดูลพลังงาน IoT: การเพิ่มคุณสมบัติการวัดพลังงาน IoT ให้กับตัวควบคุมการชาร์จพลังงานแสงอาทิตย์ของฉัน: 19 ขั้นตอน (พร้อมรูปภาพ)
โมดูลพลังงาน IoT: การเพิ่มคุณสมบัติการวัดพลังงาน IoT ให้กับตัวควบคุมการชาร์จพลังงานแสงอาทิตย์ของฉัน: สวัสดีทุกคน ฉันหวังว่าพวกคุณทุกคนจะยอดเยี่ยม! ในคำแนะนำนี้ฉันจะแสดงให้คุณเห็นว่าฉันสร้างโมดูลการวัดพลังงาน IoT ที่คำนวณปริมาณพลังงานที่สร้างโดยแผงโซลาร์เซลล์ของฉันได้อย่างไรซึ่งถูกใช้โดยตัวควบคุมการชาร์จพลังงานแสงอาทิตย์ของฉัน t
พื้นฐาน IoT: การเชื่อมต่อ IoT ของคุณกับคลาวด์โดยใช้ Mongoose OS: 5 ขั้นตอน
พื้นฐาน IoT: การเชื่อมต่อ IoT ของคุณกับคลาวด์โดยใช้ Mongoose OS: หากคุณเป็นคนที่ชอบซ่อมแซมและอุปกรณ์อิเล็กทรอนิกส์ บ่อยครั้งคุณจะเจอคำว่า Internet of Things ซึ่งปกติจะย่อว่า IoT และมัน หมายถึงชุดอุปกรณ์ที่สามารถเชื่อมต่ออินเทอร์เน็ตได้! เป็นคนแบบนี้
ESP8266 NODEMCU BLYNK IOT บทช่วยสอน - Esp8266 IOT โดยใช้ Blunk และ Arduino IDE - การควบคุมไฟ LED ผ่านอินเทอร์เน็ต: 6 ขั้นตอน
ESP8266 NODEMCU BLYNK IOT บทช่วยสอน | Esp8266 IOT โดยใช้ Blunk และ Arduino IDE | การควบคุม LEDs ผ่านอินเทอร์เน็ต: สวัสดีทุกคนในคำแนะนำนี้ เราจะเรียนรู้วิธีใช้ IOT กับ ESP8266 หรือ Nodemcu ของเรา เราจะใช้แอป blynk สำหรับสิ่งนั้น ดังนั้นเราจะใช้ esp8266/nodemcu ของเราเพื่อควบคุมไฟ LED ผ่านอินเทอร์เน็ต ดังนั้นแอป Blynk จะเชื่อมต่อกับ esp8266 หรือ Nodemcu ของเรา