Sisällysluettelo:

IN-FORMA: a Plataforma De Informações Sobre Sua Cidade: 5 Steps
IN-FORMA: a Plataforma De Informações Sobre Sua Cidade: 5 Steps

Video: IN-FORMA: a Plataforma De Informações Sobre Sua Cidade: 5 Steps

Video: IN-FORMA: a Plataforma De Informações Sobre Sua Cidade: 5 Steps
Video: Tribo da Periferia - Magazine (Official Music Video) 2024, Joulukuu
Anonim
IN-FORMA: Plataforma De Informações Sobre Sua Cidade
IN-FORMA: Plataforma De Informações Sobre Sua Cidade

Quem nunca saiu de casa com roupas de frio e quando chegou no destino estava fazendo o maior sol ?! Kuvittele, entao, poder acompanhar em tempo todellinen lämpötila ja monipuolinen tarkka sua cidade, semper estando preparado para o que der e vier! Ou, então, evitar transitar pelos principais täp de alagamento durante uma forte tempestade e, até mesmo, saber or índice de radiação UV antes de ir para uma praia ou um parque para se proteger sopivuusammattia vastaan os danos do sol. Yhdistä IN-FORMA, tiedo isso é possível em um só lugar! Você pode acompanhar tai trânsito de uma determinada região e ver os principais tarkka turísticos por perto. Além de ter acesso a um banco de informações, você pode utilizá-las da forma que desejar. Se você gosta de velejar, por examplelo, pode saber a condição dos ventos no momento para analisar a melhor hora de sair de casa.

A IN-FORMA on uusi novaali verkkokurssi, jossa on monia erilaisia vihjeitä ja tietoja ja vastaus. São espalhados em diversos tarkka da região sensores de Temperatura, umidade, luminosidade, entre outros, que fornecem em tempo real as condições daquele local. Além de contar com todos esses sensores, plataforma tem conexão directta com o Google Maps, trazendo informationções sobre or trânsito e localização, and pode conectar-se a outros systemas de mapeamento da região. Uma das inovações trazidas pela plataforma é que ela pode contar com a vuorovaikutus tehdä käyttö, lähetä lupa ja solicitar autorização para integrar à plataforma suas próprias aplicações fazendo uso dos dados disponibilizados e, inclusive, pose solicaris.

A IN-FORMA, além de poder integrar diversos tipos de aplicações desenvolvidas pelos usuários e empresas, contact com system of mapeamento de inundações desenvolvida pela própria. As inundações trazem muitos problems à população, tanto de saúde pública, quanto ambientais e sociais. Por isso, em cidades com systemas de drenagem ineficientes, é de extremema importância a pontuação das regiões mais críticas. Com plataforma, então, é possível saber o nível de água nas ruas em vários tarkka da cidade, através de aparelhos instalados nas vias ou calçadas. Tämä järjestelmä on äärimmäinen hyödyntäen dias de chuvaa, joka on tietoinen paikasta enemmän ennakkoluulottomasti, kuten todetaan, evitando que a população transite por estes. Além disso, tai järjestelmä de drenagem das ruas pode ser melhorado com os dados fornecidos pela plataforma, que mostram o nível da água ao longo do dia e os tarkka críticos de alagamento da região.

Vaihe 1: Arquitetura Da Plataforma

Arquitetura Da Plataforma
Arquitetura Da Plataforma

A proposta é o desenvolvimento de uma plataforma aberta para integração de diversos dispositivos. Arkkitehtuurijärjestelmä ja perustiedot kommunikaatiosta Dragonboard -levylle, 96 -levylle, AWS -palvelun käyttö Amazonin käyttökehyksessä tai Framework Mosquitto, joka jatkaa kommunikaatiota MQTT -protokollan kautta.

A 96boards estam munida de um Atmel ATMEGA328 que provê entradas digitalis and analógicas e, com isto, permite a Integração da Qualcomm Dragonboard 410c com sensores. Kommunikoi Dragonboard ja 96boards se dá através do protocolo I²C (Integroitu piiri).

Os dados coletados nos dispositivos são enviados para or servidor por meio do protocolo de comunicação TCP/IP. Ei palvelua tietotekniikan sovellusten sovellusliittymän sovellusliittymässä, mahdollisia ja hankittuja tietoja tietojen laadusta, käyttöoikeuksista tai tarvittavista HTTP- tai Restfull -sovellusliittymistä. Hava, inclusive, uma maneira simples de visualizar os dados em uma Dashboard baseada HTML5.

Vaihe 2: Placa Dragonboard

Placa Dragonboard
Placa Dragonboard

Qualcomm Dragonboard 410c -projektin prototipagem ambiente de desenvolvimento. Moto G: n laitteiston vastaava laite, joka on valmistettu Motorola -laitteesta. No desenvolvimento da plataforma ela foi utilizada como servidor local para o system. Nela é executada o Framework Mosquitto para promover a vuorovaikutus kautta MQTT entre o servidor local e o servidor princip. Ei linkkiä https://www.digitalocean.com/community/questions/h… e possível encontrar um tutorial in como instalar or MQTT no Debian. O Linux -järjestelmän operatiivinen käyttöjärjestelmä ja Linux Linaro, Debian -pohjainen pohja. Ei linkkiä.

A Qualcomm Dragonboard 410c tarkasti kommunikoi com mezzanine para-vastaanotin informaationa coletadas no sensor e enviá-las para or servidor MQTT local or remoto. Käytä python- ja comunicação -sarjoja.

O código abaixo detalha este processo. A função readData envia bytes até que o Mezzanine faça uma leitura e devolva a resposta. Voit vastaanottaa a pospos, lê uma linha inteira do do serial que deverá estar no formato "S (código do sensor):(valor do sensor)". Após a leitura, separa o código do valor e retorna.

tuoda sarja ser = sarja. sarja ('/dev/tty96B0', 115200)

def readData (ser):

kun ser.inWaiting () == 0: ser.write ([0])

txt = ''

kun taas True: c = ser.read () if c == '\ n': break elif c == '\ r': jatka

txt = txt + c

dados = txt.split (":")

palauta isät

dados = readData (ser)

Com os dados recebidos, e possível publicar no servidor MQTT. Comunicação com o servidor é feita utilizando a biblioteca paho. O código abaixo se conecta a um servidor e, através da função publicar, publica no servidor com o tópico riittävä.

tuo paho.mqtt.client nimellä paho SERVIDOR_LOGIN = "" SERVIDOR_SENHA = "" SERVIDOR_ENDERECO = "localhost"

asiakas = paho. Client ()

client.username_pw_set (SERVIDOR_LOGIN, SERVIDOR_SENHA) client.connect (SERVIDOR_ENDERECO, 1883) client.loop_start ()

julkinen (dados, cli):

kokeile: julkaista_nimi = '' jos isä [0] == 'S1': julkaise_nimi = "/qualcomm/umidade" elif dados [0] == 'S2': julkaise_nimi = "/qualcomm/temperatura" elif dados [0] = = 'S3': julkaisunimi = "/qualcomm/luminosidade" elif dados [0] == 'S4': julkaisunimi = "/qualcomm/luzvisivel" elif dados [0] == 'S5': julkaisunimi = "/qualcomm/infravermelho "elif dados [0] == 'S6': public_name ="/qualcomm/ultravioleta "else: return Väärä

kun taas cli.publish (julkaisunimi, isät [1]) [0]! = 0:

pass tulosta julkaisun_nimi+"="+isät [1]

kun cli.loop ()! = 0:

kulkea

paitsi:

kulkea

O código complete pode ser visto no arquivo "mezzanine_mqtt.py".

Yhteydenpito kommunikointipalvelun tai Dragonboard -palvelun kanssa, jossa on palveluntarjoaja, joka käyttää 3G -yhteyttä, käyttää 3G -modeemia tai käyttää HSUPA -USB -muistitikkua MF 190, joka käyttää TIM -operaattoria.

Hälytysjärjestelmä, tai järjestelmä, joka sisältää palvelimen PABX Asterisc. Semper que é välttämätön emitir um alerta, tai servidor é responseavel por enviar uma chamada de voz ou uma mensagem de texto para o system de emergência da região. Asenna tai Asterisc-puheseoksen linkki (https://www.howtoforge.com/tutorial/how-to-install-asterisk-on-debian/).

Vaihe 3: Placa Mezzanine Com Sensores

Placa Mezzanine Com Sensores
Placa Mezzanine Com Sensores

Três Sensores se conectam com or Mezzanine: luminosidade, luz solar ja lämpötila ja umidade.

I) Valonanturi

O -anturi LDR é um led ativado pela luminosidade que incide sobre ele. A leitura é feita através da porta analógica A0.

Leitura do -anturi: ldr = analogRead (LDRPIN) /10.0

II) Aurinkoanturi "Grove - Sunlight Sensor"

Este um-anturi monikanavainen havainto luz ultravioletti, infra-vermelho ja luz visível.

Biblioteca:

Käytä biblioteka -näyttölaitteita, joissa on linkki abaixoon, conectamos tai sensor através da porta I2C -laitteeseen. Leitura ja feita da seguinte maneira:

SI114X SI1145 = SI114X (); mitätön asennus () {SI114X SI1145 = SI114X (); }

void loop () {

vl = SI1145. ReadVisible ();

ir = SI1145. ReadIR ();

uv = lattia ((kelluva) SI1145. ReadUV ()/100);

}

III) Lämpötila- ja kosteusanturi

"Grove - Lämpötila- ja kosteusanturi Pro" https://wiki.seeed.cc/Grove-Temperature_and_Humidi… Este -anturi ja ilmaisimen lämpötila ja kosteussuhde.

Biblioteca:

Conectamos este sensor and porta analógica A0 and utilizamos or seguinte código para leitura:

DHT dht (DHTPIN, DHTTYPE);

void setup () {

dht.begin (); }

void loop () {

h = dht.readHumidity ();

t = dht.readTemperature ();

}

Para juntar a leitura dos 3 sensores no Mezzanine, criamos uma máquina de estados, on cada estado ja response of por uma leitura. Como são 6 leituras no total, teremos 6 estados, organizado da seguinte forma:

int STATE = 0;

void loop () {

kytkin (STATE) {

tapaus 0:… tauko;

tapaus 5:

… tauko;

}

TILA = (TILA+1)%6;

}

Parhaat evitaatiot ja tarvittavat suoritukset sekä Qualcomm DragonBoard 410c -laitteen vastaanottaminen tiedoksi. Para isto, utilizamos uma espera ocupada:

void loop () {while (! Serial.available ()) delay (10); while (Serial.available ()) Serial.read ();

}

Cada leitura de sensor ja enviada individualmento após a leitura através da função sendSensorData. Esta função recebe o código do sensor (inteiro), o dado a ser enviado e o último dado utilizado. Katso, miten mudanças na leitura ela é enviada. Hauska dtostrf -muunnos kaksoiskappaleesta. Já a função sprintf format the string para ser enviada pela serial com função Serial.println.

char sendBuffer [20], temp [10]; void sendSensorData (int sensorCode, double data, double lastData) {if (data == lastData) return; dtostrf (data, 4, 2, lämpötila); sprintf (sendBuffer, "S%d:%s", sensorCode, temp); Serial.println (sendBuffer); } void loop () {… tapaus 0: h = dht.readHumidity (); sendSensorData (1, h, lastH); viimeinen H = h; tauko; …}

O código complete pode ser visto no arquivo "sensores.ino".

Vaihe 4: Sensor De Alagamento Utilizando NodeMCU

Anturi De Alagamento Utilizando NodeMCU
Anturi De Alagamento Utilizando NodeMCU
Anturi De Alagamento Utilizando NodeMCU
Anturi De Alagamento Utilizando NodeMCU
Anturi De Alagamento Utilizando NodeMCU
Anturi De Alagamento Utilizando NodeMCU

O NodeMCU käyttää fazer a leitura do nível da água, utilizando um sensor de fácil criação. Utilizando um pedaço de aproximadamente 30cm de um cabo de par trançado, quatro fios foram dispostos. O prosesso de eletrólise cria um resistor virtal quando o dispositivo é inundado.

Paikka tai desenvolvimento do código, fori utiladaada and IDE do Arduino com as bibliotecas: Pubsub-client (https://pubsubclient.knolleary.net/) ESP8266 (https://github.com/esp8266/Arduino).

O código complete pode ser visto no arquivo "sensorAlagamento.ino".

Vaihe 5: Kojelauta

Kojelauta
Kojelauta

A Dashboard on tärkein objektiivinen organisaatio ja esitysmusiikki, joka sisältää tietotekniikan tiedot ja sensores coletados, dando a eles um design more interativo, all trazer informationçes a respeito de tarkka turissticos de diversos pontos da cidade e do trânsito local. Käytetään HTML5 -tekniikan tekniikkaa, joka seuraa desenvolvimentoa.

Suositeltava: