İçindekiler:

IN-FORMA: Bir Plataforma De Informações Sobre Sua Cidade: 5 Adım
IN-FORMA: Bir Plataforma De Informações Sobre Sua Cidade: 5 Adım

Video: IN-FORMA: Bir Plataforma De Informações Sobre Sua Cidade: 5 Adım

Video: IN-FORMA: Bir Plataforma De Informações Sobre Sua Cidade: 5 Adım
Video: Загадка Титаника : Как они могли не заметить айсберг?! Самая подробная история! 2024, Temmuz
Anonim
IN-FORMA: bir Plataforma De Informações Sobre Sua Cidade
IN-FORMA: bir Plataforma De Informações Sobre Sua Cidade

En iyi ev arama motorları, tek bir yere gitmeden önce, hiçbir kaderiniz yok mu?! Hayal edin, en iyi, tempolu bir tempoda gerçek bir sıcaklık değişimi, pontos de sua cidade, semper estando preparado para o que der e vier! Ou, então, evitar transitar pelos başlıca pontos de alagmento durante uma forte tempestade e, até mesmo, saber o índice de radiação UV antes de ir para uma praia o bu um parque para se proteger adequadamente contra os danos do. IN-FORMA Com a, tudo isso é possível em um só lugar! Você pode acompanhar o trânsito de uma determinada região e ver os principais pontos 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 exemplo, pode saber a condição dos ventos hiçbir momento para analizör bir melhor hora de sair de casa.

Bir IN-FORMA é bir mais nova plataforma web que bütünleşik çeşitli tipos de informações bir respeito da sua cidade. Sao espalhados ve çeşitli pontos ve região pontos da região sensörler de sıcaklık, pencere, ışık, giriş çıkışları, que fornecem em tempo yerel koşullar olarak gerçek. Além de contar com todos esses sensörler, bir platform biçimi conexão direta com o Google Maps, trazendo infoações sobre o trânsito ve localização, e pode conectar-se a outros systemas de mapeamento da região. Tüm platformlar için en uygun platformlar arasında, her şeyden önce, her şey dahil olmak üzere, her şey dahil olmak üzere, her şey dahil olmak üzere, her şeyin dahil olduğu bir platformda otomatik entegrasyon için para bütünleştirici bir talep.

Bir IN-FORMA, tümleşik bütünleştirici çeşitli türler için geçerli olan durumlar için geçerlidir. Inundações trazem muitos problemas à população, tanto de saúde pública, quanto Environmentais e Sociais. Bu nedenle, en iyi, en kötü ve en kötü kontrol sistemlerini kontrol edin. Tüm platformlarda, en büyük, en olası sabre o nível de agua nas ruas em değişkenler pontos da cidade, através de aparelhos ınstalados nas vias ou calçadas. Este sistemaé en aşırı uilidade em dias de chuva, pois informa os locais mais prejudicados pela agua, evitando que a população transite por estes. Além disso, o sistema de drenagem das ruas pode ser melhorado com os dados fornecidos pela plataforma, que Mostram o and agua ao longo do dia e os pontos críticos de alagmento da região.

Adım 1: Arquitetura Da Plataforma

Arquitetura Da Plataforma
Arquitetura Da Plataforma

Diversos dispositivos'un bir önerisi. MQTT protokolü aracılığıyla AWS'nin Amazon'dan yararlanmasına yönelik Dragonboard, dünyanın her yerindeki 96boards, com veya sunucuları, MQTT protokolü aracılığıyla sürekli iletişim için temel bir sistem temeline dayalı bir iletişim sistemidir.

Bir 96boards, tüm Atmel ATMEGA328, dijital ve dijital analizlerin kanıtlanması ve geliştirilmesi için, Qualcomm Dragonboard 410c iletişim sensörlerinin entegrasyonuna izin verir. Dragonboard ve I²C (Inter-Integrated Circuit) protokolünü uygulayan 96board'a giriş.

TCP/IP iletişim protokolleri için en uygun sunucular. API'nin kullanımına ilişkin herhangi bir hizmet sağlayıcısı yok, API'yi kullanma, değerlendirme ve değerlendirme olanakları, HTTP ve Restfull API'yi kullanma. Há, kapsayıcı, uma maneira, görselleştirme için basit bilgiler ve HTML5 için Dashboard baseada.

Adım 2: Placa Dragonboard

Placa Ejderha Tahtası
Placa Ejderha Tahtası

Bir Qualcomm Dragonboard 410c é um Environmente de desenvolvimento para prototipagem de projetos. Moto G'ye eşdeğer bir donanımsal donanım, Motorola'nın fabrikasyonu. Hiçbir desenvolvimento da plataforma ela foi utilizada como server veya yerel para o sistema yok. Nela é executada o Framework Mosquitto para promover bir interação MQTT giriş o sunucu yerel e o sunucu müdürü aracılığıyla. Bağlantı yok https://www.digitalocean.com/community/questions/h… MQTT'nin Debian olmaması için mümkün olan encontrar um öğretici. Linux Linaro, Debian'dan bağımsız olarak, ABD'de işletim sistemli bir sistemdir. Bağlantı yok https://www.embarcados.com.br/linux-linaro-alip-na… Qualcomm DragonBoard 410C ile Linux Linaro-ALIP kurulumunu mümkün kılan en kapsamlı eğitim.

Bir Qualcomm Dragonboard 410c kesin comunicar com o Ara kat para receber bilgi olarak coletadas sensör yok ve enviá-las para o sunucu MQTT yerel ve uzaktan. Utilizamos python e comunicação seri.

O código abaixo detalha este processo. Verileri okumanın envia bytes até que o Mezzanine faça uma leitura e devolva bir resposta. Ao bir yanıt alır, tüm serileri kontrol eder ve "S(código do sensor):(valor do sensor)" biçimi yoktur. Bir boş zaman, ayrı ayrı, valor ve retorna do valor ve retorna.

içe aktar seri ser = serial. Serial('/dev/tty96B0', 115200)

def readData(ser):

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

metin = ''

while True: c = ser.read() if c == '\n': break elif c == '\r': devam et

metin = metin + c

dados = txt.split(":")

babaları geri ver

dados = readData(ser)

Com os dados recebidos, é possível publicar sunucu yok MQTT. Bir comunicação com o servidor é feita utilizando a biblioteca paho. O código abaixo se conecta a um server e, através da função publicar, publica no server com o tópico yeterli.

paho.mqtt.client'i paho olarak içe aktar SERVIDOR_LOGIN = "" SERVIDOR_SENHA = "" SERVIDOR_ENDERECO = "localhost"

istemci = paho. Client()

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

def publicar(dados, cli):

deneyin: yayın_adı = '' if dados[0] == 'S1': yayın_adı = "/qualcomm/umidade" elif dados[0] == 'S2': yayın_adı = "/qualcomm/temperatura" elif dados[0] = = 'S3': yayın_adı = "/qualcomm/luminosidade" elif dados[0] == 'S4': yayın_adı = "/qualcomm/luzvisivel" elif dados[0] == 'S5': yayın_adı = "/qualcomm/infravermelho " elif dados[0] == 'S6': yayın_adı = "/qualcomm/ultraviyoleta" başka: False döndür

while cli.publish(yayın_adı, dados[1])[0] != 0:

pass printPublish_name+" = "+dados[1]

while cli.loop() != 0:

geçmek

hariç:

geçmek

O código komple pode servis visto no arquivo "mezzanine_mqtt.py".

3G, modem kullanımı ve 3G HSUPA USB Stick MF 190, TIM operadorasından yararlanıyor.

Diğer uyarılar, o sistema con um com um servior PABX Asterisc. Uyarılar için gerekli uyarıları, sunucuları ve hizmetleri en iyi şekilde değerlendirin. Para instalar o Asterisc você pode seguir o bağlantı (https://www.howtoforge.com/tutorial/how-to-install-asterisk-on-debian/).

Adım 3: Placa Ara Kat İletişim Sensörleri

Placa Ara Kat İletişim Sensörleri
Placa Ara Kat İletişim Sensörleri

Asma kat: luminosidade, luz solar e temperatura e umidade.

I) Sensör de luminosidade

O sensörü LDR é um led ativado pela luminosidade que incide sobre ele. Bir leitura é feita através da porta analógica A0.

Leitura do sensörü: ldr = analogRead(LDRPIN)/10.0

II) Sensör de luz güneş "Grove - Güneş Işığı Sensörü"

Este é um sensörü çok kanallı dedektör, ultraviyoleta, kızılötesi görüş açısı.

Biblioteca:

abaixo, conectamos veya porta I2C disponivel bağlantı sensörleri için bir biblioteca disponiv através kullanın. Bir leitura é feita da seguinte maneira:

SI114X SI1145 = SI114X(); geçersiz kurulum(){ SI114X SI1145 = SI114X(); }

boşluk döngüsü(){

vl = SI1145. ReadVisible();

ir = SI1145. ReadIR();

uv = zemin((yüzer)SI1145. ReadUV()/100);

}

III) Sıcaklık ve sıcaklık algılayıcısı

"Grove - Sıcaklık ve Nem Sensörü Pro" https://wiki.seeed.cc/Grove-Temperature_and_Humidi… Este sensör ve sıcaklık algılayıcısı.

Biblioteca:

Conectamos este sensor ve analógica A0 e utilizamos veya seguinte código para leitura:

DHT dht(DHTPIN, DHTTYPE);

geçersiz kurulum(){

dht.begin(); }

boşluk döngüsü(){

h = dht.readHumidity();

t = dht.readTemperature();

}

Para juntar a leitura dos 3 sensör yok Ara kat, criamos uma máquina de estados, onde cada estado é cevap por uma leitura. Como são 6 leituras toplam yok, teremos 6 estados, organizado da seguinte forma:

int DURUM = 0;

boşluk döngüsü(){

geçiş(STATE){

durum 0: … ara;

durum 5:

… kırmak;

}

DURUM = (STATE+1)%6;

}

Bir Qualcomm DragonBoard 410c'nin enformasyon olarak önceden hazırlanmış ve doğrulanmış yasal düzenlemeleri. Para isto, utilizamos uma espera ocupada:

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

}

SendSensorData'nın en iyi şekilde algılanması ve bireysel olarak değerlendirilmesi. Sensörü (inteiro) alma ve kullanma (enviado), o dado ve enviado e o último dado utilizado. Beklenmedik bir zaman dilimi için en uygun zaman dilimindesiniz. Çift para dizesinin bir função dtostrf dönüştürülmesi. Serial.println ile ilgili bir dizi dosya formatı.

char sendBuffer[20], temp[10];void sendSensorData(int sensorCode, double data, double lastData){ if(data == lastData) return; dtostrf(veri, 4, 2, sıcaklık); sprintf(sendBuffer, "S%d:%s", sensorCode, temp); Serial.println(sendBuffer); } void loop(){ … case 0: h = dht.readHumidity(); sendSensorData(1, h, lastH); sonH = h; kırmak; … }

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

Adım 4: Sensör De Alagamento Utilizando NodeMCU

Sensör De Alagamento Utilizando NodeMCU
Sensör De Alagamento Utilizando NodeMCU
Sensör De Alagamento Utilizando NodeMCU
Sensör De Alagamento Utilizando NodeMCU
Sensör De Alagamento Utilizando NodeMCU
Sensör De Alagamento Utilizando NodeMCU

O NodeMCU'nun temel kullanım alanlarından biri, her zaman için geçerlidir, algılayıcıdan yararlanır. 30 cm'den fazla olmayan, dörtlü bir foram disposto'dan faydalanır. O proseso de eletrólise cria um rezistör sanal quando o dispositivo é inundado.

Bir IDE için Arduino com'u bibliotecas olarak kullanın: Pubsub-client (https://pubsubclient.knolleary.net/) ESP8266 (https://github.com/esp8266/Arduino).

O código komple pode servis visto no arquivo "sensorAlagamento.ino".

Adım 5: Gösterge Tablosu

Gösterge Paneli
Gösterge Paneli

Bir Dashboard tem como başlıca objeleri organize etmek ve sunmak, melhor os conteúdos informativos dos sensores coletados, dando bir eles um design mais interativo, além trazer bilgições bir respeito de pontos turísticos de diversos pontos ve yerel cidade. Foi, bir teknoloji HTML5 para seu desenvolvimento'dan yararlanır.

Önerilen: