Diferència entre revisions de la pàgina «Nodes sensors (motes) i passarel·les (gateways)»

De binefa.com
Salta a la navegació Salta a la cerca
m
Línia 32: Línia 32:
  
 
[[Ús de les dades generades pels sensors LoRaWAN i arquitectura del sistema. Rubí 2020]]
 
[[Ús de les dades generades pels sensors LoRaWAN i arquitectura del sistema. Rubí 2020]]
 +
 +
 +
= Exemples de sistemes IoT complets =
 +
[http://binefa.com/index.php?title=%C3%9As_de_les_dades_generades_pels_sensors_LoRaWAN_i_arquitectura_del_sistema._Rub%C3%AD_2020 Ús de les dades generades pels sensors LoRaWAN i arquitectura del sistema. Rubí 2020]
 +
 +
= Accés remot a dispositius sense sistema operatiu =
 +
[http://binefa.com/index.php?title=16_/_5_/_2020_-_Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP Introducció a la placa IoT-02] ([https://binefa.cat/training/adtelecom/20201105/IoT-02_11_modbus_bme280.zip Codi del microprogramari instal·lat per defecte a la placa] i el [https://github.com/jordibinefa/IoT-02/tree/master/codes/IoT-02_11_modbus_bme280 mateix codi a GitHub]).
 +
 +
[https://wiki.binefa.cat/index.php?title=MQTT_i_MQTTS MQTT i MQTTS]
 +
 +
= Accés remot a dispositius amb sistema operatiu =
 +
Hi ha tres formes bàsiques d'accedir a un dispositiu remot amb sistema operatiu:
 +
 +
== Configurant l'enrutador ==
 +
Cal configurar els ports d'entrada i el redireccionament a IP i ports dels dispositius a la xarxa local remota. Per tenir accés cal tenir un nom de domini o una IP pública estàtica.
 +
 +
=== Amb IP pública estàtica ===
 +
[https://queadslcontratar.com/guias/contratar-ip-fija Preus orientatius d'una IP fixa]
 +
 +
=== Amb IP pública dinàmica ===
 +
Es pot conèixer la IP del propi enrutador a través del propi enrutador o a partir de serveis remots. Una manera és fer servir [http://www.adsl4ever.com/ip/ alguna pàgina gratuïta amb publicitat] o [http://binefa.net/ip/index.php serveis propis allotjats a un servidor remot]
 +
 +
[https://stackoverflow.com/questions/3003145/how-to-get-the-client-ip-address-in-php Exemple de codi PHP] per a saber la IP del client que s'hi connecta:
 +
 +
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
 +
    $ip = $_SERVER['HTTP_CLIENT_IP'];
 +
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
 +
    $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
 +
} else {
 +
    $ip = $_SERVER['REMOTE_ADDR'];
 +
}
 +
 +
Es poden fer servir serveis de DNS per a IP dinàmiques:
 +
 +
[http://www.duckdns.org/ Duck DNS]
 +
 +
[https://www.noip.com/free no-ip]
 +
 +
== Sense configurar l'enrutador ==
 +
 +
=== Implementant un túnel invers ===
 +
 +
[https://binefa.cat/IoT/RPi/tunelSshInvers_RPi.pdf Implementació d'un túnel SSH invers]
 +
 +
[https://wiki.binefa.cat/index.php?title=Pr%C3%A0ctica_de_connexi%C3%B3_remota_a_una_Raspberry_Pi Pràctica de connexió remota a una Raspberry Pi]
 +
 +
=== Fent servir xarxes vituals privades (VPN) ===
 +
 +
Ús de [http://zerotier.com/ ZeroTier]: [https://binefa.cat/IoT/vpn/zerotier/zerotier_01.pdf Configuració d'una VPN emprant ZeroTier]
 +
 +
[https://www.jabenitez.com/2018/10/01/instalar-un-servidor-vpn-en-raspberry-pi-con-openvpn/ Servidor OpenVPN a una Raspberry Pi]
 +
 +
= Serveis al núvol =
 +
 +
- Un servidor privat virtual propi: [https://www.ovhcloud.com/en/vps/ OVH], [https://www.digitalocean.com/pricing/ DigitalOcean]
 +
 +
- Serveis propietaris: [https://aws.amazon.com/pricing/ AWS], [https://cloud.google.com/pricing/list Google Cloud], [https://azure.microsoft.com/en-us/pricing/calculator/ Azure]
 +
  
 
= Pràctiques =
 
= Pràctiques =

Revisió del 15:27, 22 març 2021

Definicions

Nodes sensors

  • Un node sensor es basa en un microcontrolador, un ordinador mínim de consum i preu molt baix.
  • L'ordinador mínim monitora un o més sensors. Hi ha tot tipus de sensors: sensors de temperatura, llum, so, posició, acceleració, vibració, estrès, pes, pressió, humitat, etc.
  • L'ordinador mínim es connecta al món exterior amb un enllaç de ràdio. Els enllaços de ràdio més comuns permeten que un node sensor transmeti a distàncies per sota dels 100 metres. El consum d'energia, la grandària i el cost són les barreres per a poder assolir distàncies més llargues. És un concepte fonamental que els nodes sensors siguin de mida petita (i un cost minúscul associat), per tant, la part de ràdio també és petita i de baixa potència. Les tècniques per a superar l'abast de 100 metres sacrifiquen característiques com la freqüència de mostratge (cada quan es fa una lectura del sensor o conjunt de sensors).


Nodes sensors

Pols intel·ligent

Passarel·les

Passarel·la

Computació a la vora (edge) i al núvol (cloud)

Tècniques de comunicació

Portadora a 2,4GHz

WiFi, BlueTooth, ZigBee

Protocol MQTT

Introducció a MQTT

MQTT i MQTTS

¿Qué es MQTT? Su importancia como protocolo IoT (Luis Llamas, 17 / 4 / 2019)

Portadora subgiga

LPWAN (LoRa, SigFox, NB-IoT)

Ús de les dades generades pels sensors LoRaWAN i arquitectura del sistema. Rubí 2020


Exemples de sistemes IoT complets

Ús de les dades generades pels sensors LoRaWAN i arquitectura del sistema. Rubí 2020

Accés remot a dispositius sense sistema operatiu

Introducció a la placa IoT-02 (Codi del microprogramari instal·lat per defecte a la placa i el mateix codi a GitHub).

MQTT i MQTTS

Accés remot a dispositius amb sistema operatiu

Hi ha tres formes bàsiques d'accedir a un dispositiu remot amb sistema operatiu:

Configurant l'enrutador

Cal configurar els ports d'entrada i el redireccionament a IP i ports dels dispositius a la xarxa local remota. Per tenir accés cal tenir un nom de domini o una IP pública estàtica.

Amb IP pública estàtica

Preus orientatius d'una IP fixa

Amb IP pública dinàmica

Es pot conèixer la IP del propi enrutador a través del propi enrutador o a partir de serveis remots. Una manera és fer servir alguna pàgina gratuïta amb publicitat o serveis propis allotjats a un servidor remot

Exemple de codi PHP per a saber la IP del client que s'hi connecta:

if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
    $ip = $_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
    $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
    $ip = $_SERVER['REMOTE_ADDR'];
}

Es poden fer servir serveis de DNS per a IP dinàmiques:

Duck DNS

no-ip

Sense configurar l'enrutador

Implementant un túnel invers

Implementació d'un túnel SSH invers

Pràctica de connexió remota a una Raspberry Pi

Fent servir xarxes vituals privades (VPN)

Ús de ZeroTier: Configuració d'una VPN emprant ZeroTier

Servidor OpenVPN a una Raspberry Pi

Serveis al núvol

- Un servidor privat virtual propi: OVH, DigitalOcean

- Serveis propietaris: AWS, Google Cloud, Azure


Pràctiques

https://snap.berkeley.edu/snap/snap.html#open:https://raw.githubusercontent.com/pixavier/mqtt4snap/master/HelloWorld.xml

Documentació

Com funcionen els nodes sensors

OPEN MOTE B - IoT

Cas d'estudi

Ús de les dades generades pels sensors LoRaWAN i arquitectura del sistema. Rubí 2020