İçindekiler:
- Adım 1: Arquitetura Da Plataforma
- Adım 2: Placa Dragonboard
- Adım 3: Placa Ara Kat İletişim Sensörleri
- Adım 4: Sensör De Alagamento Utilizando NodeMCU
- Adım 5: Gösterge Tablosu
Video: IN-FORMA: Bir Plataforma De Informações Sobre Sua Cidade: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
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
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
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
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
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
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:
Bir Denetleyiciyi Bir Öykünücüye Nasıl Kurulur, Çalıştırır ve Bağlar: 7 Adım
Bir Denetleyiciyi Bir Emülatöre Nasıl Kurulur, Çalıştırır ve Bağlarsınız: Hiç oturup genç bir oyuncu olarak çocukluğunuzu hatırladınız mı ve bazen geçmişin o eski mücevherlerini tekrar ziyaret edebilmeyi dilediniz mi? Bunun için bir uygulama var… daha spesifik olarak, program yapan bir oyuncu topluluğu var
Canon Eos için bir HP49G-Grafik-Hesap Makinesi-Bir-Aralığa Dönüştürme: 4 Adım
Canon Eos için HP49G-Graphing-Calculator-Into-an-Intervalomet: HP49GPor Abraham [email protected]://www.flickr.com /photos/cacholongo/Componentes gerekli:2n3904,Resistencia 2,2k;Diodo 1n4001,Cable de conexiÃÂ&su
ThingSpeak'teki Bir Kanal Bir Süre Güncellenmediğinde Bildirim E-postası Alın: 16 Adım
ThingSpeak'teki Bir Kanal Bir Süre Güncellenmediğinde Bildirim E-postası Alın: Arka plan hikayesi Dublin, İrlanda'ya yayılmış altı otomatik seram var. Özel yapım bir cep telefonu uygulaması kullanarak, her bir seradaki otomatikleştirilmiş özellikleri uzaktan izleyebilir ve bunlarla etkileşim kurabilirim. Kazanımı manuel olarak açabilir / kapatabilirim
Bir Arduino'yu Kitaplık Olmadan Kayan Bir Metin Görüntülemek İçin Başka Bir Arduino Kullanarak Programlamak: 5 Adım
Bir Arduino'yu Kitaplık Olmadan Kayan Bir Metni Görüntülemek için Başka Bir Arduino Kullanarak Programlama: Sony Spresense veya Arduino Uno o kadar pahalı değil ve çok fazla güç gerektirmez. Ancak projenizin güç, alan ve hatta bütçe kısıtlaması varsa Arduino Pro Mini kullanmayı düşünebilirsiniz. Arduino Pro Micro'nun aksine, Arduino Pro Mi
Yarım Saatten Daha Kısa Bir Sürede Bir Raspberry Pi ve bir RTL-SDR Dongle Kullanarak Yalnızca APRS RX Amatör Radyosu Oluşturun: 5 Adım
Bir Amatör Radyo APRS RX Sadece Yarım Saatten Daha Kısa Bir Sürede Bir Raspberry Pi ve bir RTL-SDR Dongle Kullanarak Igate Yapın: Lütfen bunun artık oldukça eski olduğunu, dolayısıyla bazı bölümlerin yanlış ve güncelliğini yitirdiğini unutmayın. Düzenlemeniz gereken dosyalar değişti. Size görüntünün en son sürümünü vermek için bağlantıyı güncelledim (lütfen sıkıştırmayı açmak için 7-zip kullanın) ancak tam bilgi için