Da raspibo.
Qui la foto
|
|
Centralina livello 1
|
Centralina generale (?) gestione segnali
|
Repository: ancora no
|
Centralina livello 1
Prima e sommaria descrizione
Centralina di controllo segnali.
Dove arrivano i segnali utenze e vengono smistati.
Come inizio si dovrebbe evolvere subito nella centralina di allarme (ma le idee sono ancora confuse --Dave4rp)
Hardware e Software
- Hardware
- Raspberry Pi 3, perche` completa di WiFi e Bluetooth
- Software
- MQTT Broker (Mosquitto), perche` in grado di dialogare con la maggior parte dei componenti (Arduino, ESP8266, eccetera)
- Redis, perche` servira` un database di appoggio e manipolazione per alcuni dati, e perche` servira` una struttura dati "manipolabile" (dovremo poter aggiungere e togliere "campi:valori" ad una "chiave", e aggiungere/togliere chiavi a delle liste, ecc. ecc.)
- Nginx, non si puo` fare senza web server
- ... e poi non so cos'altro
- Script cgi
- javascript
- ...
Descrizione
I 'segnali' arrivano sempre (?) a "MQTT broker", vengono manipolati se necessario, ed inseriti nel database Redis.
Dal database Redis sono di nuovo letti/scritti/modificati/manipolati ed inviati:
- e/o
- in report (testo, grafico, audio, video, ...)
- e/o
- alla centralina di allarme CentRed
- e/o
- reinviati a MQTT broker
- e/o
- inviati ad altre centraline livello 1
- e/o
- ...
Dati di livello 1 (bozza)
Tipo
|
- Temperatura
- PIR
- Finecorsa
- Proximity
- Livello
- Rele`
- Termostato
- Valvola
- Motore
- ...
|
Descrizione
|
Breve (?) descrizione del segnale
|
TipoIO
|
- I (Input/Ingresso)
- O (Output/Uscita)
|
Segnale
|
- Analogico
- Digitale
- Testo
- I2C
- SPI
- ...
|
PosizioneS
|
- Cucina1
- Camera2
- Bagno1
- ...
|
Utenza/ITEM
|
(solo esempi, tutta da definire)
- 1
- 2
- 3
- ..
- Up
- Down
- Left
- Right
- (altro ?)
- ...
|
AreaAllarme
|
(solo esempi, tutta da definire)
- P2Ext
- int
- ext
- numero
- lettera
- ...
|
UM (Unita` di Misura)
|
- °C
- V (tensione)
- A (assorbimento)
- ...
|
ValoreMin
|
- 10 (temperatura)
- 0 (binari/digitali)
|
ValoreMax
|
- 40 (temperatura)
- 1 (binari/digitali)
|
Allarme
|
- 0
- 1
- Min
- Max
- Min,Max
- off((oppure casella vuota ?))
- ...
|
Chiave primaria dati di livello 1
Mi riferisco alla chiave univoca d'inserimento dei dati in Redis.
Sicuramente deve essere univoca, nella versione minima, sara` cosi` composta:
PosizioneC:PosizioneP:PosizioneS:Utenza
Al vaglio, un'eventuale codice di questo tipo:
TipoIO:Tipo:PosizioneC:PosizioneP:PosizioneS:Utenza
AreaAllarme
Con tutta probabilita`, sara` una "lista", generata da utente, dove inserire le utenze che faranno capo a quella determinata area di allarme, quindi, non sara` presente nel "record" di livello 1 (?)