Installiamo Venus OS su Raspberry Pi e realizziamo la centralina di gestione del nostro van Volkswagen T4 senza Victron Energy Cerbo GX

20 dicembre 2022

Quest'oggi trattiamo un argomento da veri Nerd :D

In molti ci avete chiesto come abbiamo realizzato la centralina di gestione del nostro Vaniglia.

Ebbene, ecco qui la guida dettagliata.

Venus OS su Raspberry Pi o Victron Energy Cerbo GX?

Per chi non fosse appassionato di faidate o ci capisse poco di elettronica e pc, Victron Energy mette a disposizione una soluzione completa: l'unità Cerbo GX.
Nasce già con il sistema operativo pre-installato, configurato e pronto all'uso.

Cerbo gx

Lo si può trovare qui:
https://amzn.to/3FhTsGv

Mentre lo schermo touch da 5 pollici qui:
https://amzn.to/3uAcMKv

Quindi perchè non l'abbiamo acquistato?

Il prezzo prima di tutto, al momento il Cerbo GX si trova a circa 250 euro, mentre lo schermo più piccolo da 5" (esiste anche il 7") a circa 250 euro, che sommati non sono proprio "bruscolini".

In secondo luogo: la nerdaggine.

E' una brutta bestia, lo sappiamo, ma la voglia di realizzare qualcosa di artigianale, in faidate, che si possa modificare e migliorare, è più forte di qualsiasi altra cosa, probabilmente anche del mero risparmio :D

Procuriamoci un Raspberry Pi

Innanzitutto, ci serve un Raspberry Pi ed una scheda Micro SD.
Noi abbiamo usato un "vecchio" 3B+, ma consigliamo di utilizzare la versione 4 o 5, da 2 GB di memoria.

Su Amazon si possono trovare le varie versioni di Raspberry Pi subito disponibili a questo link:
https://amzn.to/4ded8hk

Ci serve inoltre una scheda Micro SD (consigliamo Sandisk):
https://amzn.to/414qp4S

Raspberry pi

Acquistiamo lo schermo touch per il Raspberry Pi

Per poter comandare la centralina con comodità, abbiamo bisogno di uno schermo touch.

Scegliamo quello ufficiale del Raspberry Pi, da 7".

Lo si può acquistare a questo link:
https://amzn.to/3F1S1fe

In caso quello ufficiale non fosse disponibile o si voglia risparmiare qualcosina, si possono acquistare i suoi cloni cinesi:
https://amzn.to/3sNbUnQ

Raspberry pi touch screen display

Noi abbiamo deciso di installare lo schermo distante dal Raspberry Pi, quindi ci siamo avvalsi di questi adattatori, che permettono di trasportare il segnale del Rpi Display tramite cavo HDMI:
https://amzn.to/3Hhq3iD

Se non sono disponibili dovrebbero essere compatibili anche questi:
https://amzn.to/3Y6ycw0

N.B.: questi adattatori servirebbero per estendere il segnale della camera, ma vanno benissimo anche per lo schermo ;-)

L'installazione è semplice, come si può vedere dal video, intorno al minuto 3:35, invece che utilizzare il collegamento sfruttando i Pin del Raspberry Pi e dello schermo, abbiamo collegato gli adattatori negli ingressi e uscite Rpi Display, collegati tramite un cavo HDMI, ed alimentato lo schermo tramite un cavo Micro Usb.

Ovviamente è indispensabile anche un cavo HDMI:
https://amzn.to/3iNExN2

Ed un cavo Micro Usb:
https://amzn.to/3BibYh0

Dotiamoci di relè compatibili con Raspberry Pi e Venus OS

Se vuoi sfruttare la possibilità di accendere o spegnere alcuni apparati a 12V, 24V o 230V tramite Venus OS, dovrai collegare dei relè al fidato Raspberry Pi.

Presta attenzione: non tutti i relè funzionano correttamente, dovrai acquistare quelli "High Level Trigger", ovvero con le uscite che si "attivano" mandando corrente (in questo caso 5V).

Noi abbiamo scelto un modello da 4 relè, che supporta 10A fino a 30V DC e 10A fino a 250V AC:
https://amzn.to/3FxhrCX

In alternativa si può acquistare questo modello, che ha un pin per l'impostazione del Level Trigger di ogni porta:
https://amzn.to/4bgxhPF

Sunfounder 4 channel relay

N.B.: attenzione all'acquisto dei relè, la maggioranza sono "Low Level Trigger", quindi in caso di dubbi consigliamo di utilizzare i nostri link qui sopra.

Indispensabili saranno anche alcuni cavetti "jumper wire" per collegare la scheda con i relè al Raspberry Pi:
https://amzn.to/3HhjH2x

Colleghiamo il Raspberry Pi ai relè ed allo schermo touch

Nel video dedicato, intorno al minuto 3:35 è possibile visionare tutti i collegamenti.

Come si evince dal video noi abbiamo preferito alimentare tutti gli apparati a 5V da un piccolo convertitore DC 12V/24V a 5V.
Anche la scheda relè è stata alimentata dal convertitore ed i soli relè sono stati connessi ai rispettivi GPIO del Raspberry Pi.

Ecco qui lo schema completo di come è realizzata la nostra centralina di gestione.

Schema centralina

Questo è un convertitore DC DC Step Down da 12V/24V a 5V da 10A 50W, che abbiamo usato molte volte con il Raspberry Pi 4 (o 3), non ancora testato con il 5:
https://amzn.to/3P5UZEm

Tobsun convertitore 24v 12v 5v

Abbiamo poi acquistato questo connettore usb femmina con morsettiera, dove abbiamo collegato il cavo di alimentazione del monitor touch:
https://amzn.to/3F96hDg

E questo cavo Micro Usb maschio con morsettiera per alimentare il Raspberri Pi 3B+ (o lo Zero 2W):
https://amzn.to/3XXDB8R

In caso di Raspberry Pi 4 o 5, al posto di quest'ultimo, va acquistato un cavo Usb-C maschio con morsettiera:
https://amzn.to/3UAe1Ul

Molto utili saranno anche alcuni connettori Wago:
https://amzn.to/3VSIFt8

I 4 relè li abbiamo collegati al Raspberry Pi come segue:
- relè 1 > Pin 40 / GPIO 21
- relè 2 > Pin 11 / GPIO 17
- relè 3 > Pin 13 / GPIO 27
- relè 4 > Pin 15 / GPIO 22

Per comodità ecco qui una immagine dei numeri di Pin e GPIO del Raspberry Pi.

Raspberry pi pinout gpio

Scarichiamo Venus OS

Una volta eseguiti tutti i collegamenti, procediamo con lo scaricamento del Venus OS.

Il sistema operativo Victron Energy è presente in due versioni, normale o large.

La large ha installati Node-RED e Signal K server, è quindi possibile una programmazione più personalizzata, però a scanso di un maggior consumo di risorse.

Più informazioni riguardo a questa versione si possono trovare qui:
https://www.victronenergy.com/live/venus-os:large

Per il momento ci accontentiamo della versione normale, ma è possibile passare alla versione large anche in seguito, senza dover rifare tutto il lavoro da capo.

A questo link si possono scaricare le versioni (large e normale) per Raspberry Pi 5:
https://updates.victronenergy.com/feeds/venus/release/images/raspberrypi5/

A questo link le versioni per Raspberry Pi 4:
https://updates.victronenergy.com/feeds/venus/release/images/raspberrypi4/

A questo link le versioni per Raspberry Pi 3, 2 o Raspberry Pi Zero 2W:
https://updates.victronenergy.com/feeds/venus/release/images/raspberrypi2/

Mentre a questo le versioni in beta testing:
https://updates.victronenergy.com/feeds/venus/candidate/images/

Da qui scarichiamo l'ultima versione di Venus OS normale disponibile in questo momento per il Raspberry Pi 5:
https://updates.victronenergy.com/feeds/venus/release/images/raspberrypi5/venus-image-raspberrypi5.wic.gz

Mentre per chi usa il Raspberry Pi 4:
https://updates.victronenergy.com/feeds/venus/release/images/raspberrypi4/venus-image-raspberrypi4.wic.gz

Per chi invece vuole usare un vecchio Raspberry Pi 3, 2 o il Raspberry Pi Zero 2W:
https://updates.victronenergy.com/feeds/venus/release/images/raspberrypi2/venus-image-raspberrypi2.wic.gz

Installiamo Venus OS nel Raspberry Pi

Utilizziamo Balena Etcher per installare l'immagine di Venus OS nella Micro SD.
Il software è multipiattaforma, quindi funziona sia su Windows, che su Linux, etc.

Inserite la Micro SD nel PC, aprite Balena Etcher, selezionate l'immagine di Venus OS, poi la Micro SD e cliccate su "Flash".

Flash venus os 01

Attendete che il software installi l'immagine e la verifichi.

Flash venus os 02

Una volta terminato il processo potete rimuovere la micro sd.

Flash venus os 03

Configuriamo Venus OS

Inseriamo la schedina Micro SD nel Raspberry Pi e lo alimentiamo.

In caso di Raspberry Pi 5 apparirà in automatico la schermata iniziale di Venus OS con la nuova Gui-V2.
Mentre in caso di Raspberry Pi 4 (o 3, o 2, o zero 2w) il sistema si avvierà con la Gui-V1 classica (ma qui sotto vi spiego come installare la nuova).

Non preoccupatevi se a schermo l'interfaccia apparirà stretchata oppure ruotata, o se il touch non risponderà alla perfezione, poi lo sistemeremo.


RASPBERRY PI 5

Innanzitutto impostiamo la lingua italiana:

Settings > General > Language > Italiano

Ci connettiamo poi alla rete Wi-Fi:

Impostazioni > Connettività > Wi-Fi > Connettersi alla rete desiderata cliccandoci sopra ed inserendo la password

Altrimenti se si preferisce la rete cablata, si può collegare il cavo di rete e poi si possono verificare le impostazioni qui:

Impostazioni > Connettività > Ethernet

Una volta connesso il Raspberry Pi si può visualizzare l'INDIRIZZO_IP assegnato nella pagina della rete prescelta (Wi-Fi o Ethernet).

Aprire quindi il browser sul vostro pc e digitare:

http://INDIRIZZO_IP

Si aprirà le Gui-V2 remota e per poterla visualizzare clicchiamo su "salta".

Abilitiamo l'accesso come Superutente:

Impostazioni > Generale > Accesso e Sicurezza > Livello di accesso

Con la riga "Utente e installatore" sottolineata di arancione, tenere premuta la freccia a destra della tastiera.
Apparirà il livello di accesso Superutente (in caso serva la password è ZZZ).

Confermare, tornare alla schermata precedente ed impostare una password di root:

Impostazioni > Generale > Accesso e Sicurezza > Password di root > impostare quello che si vuole

Abilitare SSH:

Impostazioni > Generale > Accesso e Sicurezza > Attiva SSH nella LAN > Abilitare

Riguardo al Raspberry Pi 5 è tutto qui, ora si può passare alla connessione dello schermo touch.


RASPBERRY PI 4, 3, 2, ZERO 2W

Innanzitutto impostiamo la lingua italiana:

Settings > Display & language > Language > Italiano

Ci connettiamo poi alla rete Wi-Fi:

Impostazioni > Wi-Fi > Connettersi alla rete desiderata cliccandoci sopra ed inserendo la password

Altrimenti se si preferisce la rete cablata, si può collegare il cavo di rete e poi si possono verificare le impostazioni qui:

Impostazioni > Ethernet

Una volta connesso il Raspberry Pi si può visualizzare l'INDIRIZZO_IP assegnato nella pagina della rete prescelta (Wi-Fi o Ethernet).

Aprire quindi il browser sul vostro pc e digitare:

http://INDIRIZZO_IP

Si aprirà le Gui-V2 remota e per poterla visualizzare clicchiamo su "salta".

Abilitiamo l'accesso come Superutente:

Impostazioni > Generale > Accesso e Sicurezza > Livello di accesso

Con la riga "Utente e installatore" sottolineata di arancione, tenere premuta la freccia a destra della tastiera.
Apparirà il livello di accesso Superutente (in caso serva la password è ZZZ).

Confermare, tornare alla schermata precedente ed impostare una password di root:

Impostazioni > Generale > Accesso e Sicurezza > Password di root > impostare quello che si vuole

Abilitare SSH:

Impostazioni > Generale > Accesso e Sicurezza > Attiva SSH nella LAN > Abilitare

In caso di Raspberry Pi 4 (o 3, o zero 2w) serve installare ed attivare la Gui-V2, quindi procediamo come segue.

Colleghiamoci al Raspberry Pi tramite SSH da un altro pc:

ssh root@INDIRIZZO_IP

Aggiorniamo i pacchetti:

opkg update

Installiamo le nuova gui-V2:

opkg install gui-v2

Cambiamo l'interfaccia attiva, abilitando la gui-v2:

opkg install start-gui-v2

Si aprirà le Gui-V2 locale e per poterla visualizzare clicchiamo su "salta".

Per tornare eventualmente alla vecchia interfaccia gui-v1:

opkg install start-gui-v1

Configuriamo lo schermo ufficiale touch DSI V1 7" per Raspberry Pi

Colleghiamoci al Raspberry Pi tramite SSH da un altro pc:

ssh root@INDIRIZZO_IP

Lo schermo touch ufficiale del raspberry di norma va ruotato di 180 gradi:

nano /u-boot/config.txt
[...]
sotto:
[all]
inserire:
lcd_rotate=2
disable_overscan=1
[...]

Salvare con: CTRL + x

Abilitiamo lo spegnimento dello schermo dopo X secondi:

echo "/sys/class/backlight/rpi_backlight/bl_power" > /etc/venus/blank_display_device

Impostiamo l'intensità di luce:

echo "/sys/class/backlight/rpi_backlight" > /etc/venus/backlight_device

Riavviamo il sistema:

shutdown -r now

Impostiamo l'intensità di luce desiderata:

Impostazioni > Generale > Display e Aspetto > Luminosità > Impostare tramite lo slider

Impostiamo il tempo di spegnimento:

Impostazioni > Generale > Display e Aspetto > Tempo di spegnimento display > 30 sec

Abilitiamo la visualizzazione di barca e camper e dei serbatoi:

Impostazioni > Display e lingua > Mostra panoramica imbarcazione e camper
Impostazioni > Display e lingua > Mostra panoramica serbatoi

Abilitiamo i Relè

Colleghiamoci al Raspberry Pi tramite SSH da un altro pc:

ssh root@INDIRIZZO_IP

Abilitiamo tutti e 4 i relè (di default ne è abilitato solo 1):

nano /etc/venus/gpio_list
[...]
# Relay 1 Pin 40 / GPIO 21
21 out relay_1
# Relay 2 Pin 11 / GPIO 17
17 out relay_2
# Relay 3 Pin 13 / GPIO 27
27 out relay_3
# Relay 4 Pin 15 / GPIO 22
22 out relay_4
[...]

Riavviamo il sistema:

shutdown -r now

Per configurare i relè si può andare in:

Impostazioni > Integrazioni > Relè

Si vedranno solo i primi due, in quanto gli altri si possono solo accendere e spegnere.

Mentre per cambiare i nomi ed eventualmente nasconderli:

Impostazioni > Dispositivi > Relè del dispositivo GX

Infine per utilizzarli basta cliccare sull'iconcina del comando in alto a sinistra del touch (la seconda, se avete un inverter nell'impianto).

Ora è possibile disattivare il Superutente se desiderato:

Impostazioni > Generale > Accesso e Sicurezza > Livello di accesso: Utente e installatore (la password è ZZZ)

Connettersi al cloud Victron Energy VRM

Attiviamo la pubblicazione dei dati e la possibilità di comandare il sistema dal cloud Victron Energy:

Impostazioni > VRM

Impostare il livello di accesso su Completo:

Impostazioni > VRM > Livello di accesso al portale VRM: Completo

Segnare l'ID portale VRM e registrarsi tramite il link sottostante oppure il QRcode.

Ci si può registrare ed accedere da:
https://vrm.victronenergy.com/login
Una volta eseguito l'accesso, cliccare su:

Aggiungi impianto > Cerbo GX / Cerbo-S GX > Inserire l'ID portale VRM, il nome dell'impianto e confermare con "Richiedi accesso"

Per terminare colleghiamo tutti i cavi usb delle interfacce di comunicazione Victron Energy provenienti dallo SmartShunt, dall'Inverter, dal Regolatore di Carica, etc., al Raspberry Pi e possiamo procedere alla loro configurazione come desiderato.

Colleghiamo ed impostiamo il Victron Energy GX Tank 140

Nel nostro caso abbiamo anche acquistato il Victron Energy GX Tank 140 che ci permetterà di vedere i livelli dei nostri serbatoi delle acque chiare e grigie:
https://www.victronenergy.it/panel-systems-remote-monitoring/gx-tank-140

Il GX Tank 140 si può acquistare qui:
https://amzn.to/3ORV8v3

Gx tank 140

Il sensore ha 4 canali, noi usiamo il 3 ed il 4 visto che sono auto-alimentati tramite la porta USB.
In caso non bastino, bisogna collegare una alimentazione ausiliaria tramite la porta Ext. Power.

Abbinato a questo abbiamo acquistato dall'Australia due sensori ad ultrasuoni, che possono essere quindi installati esternamente ai due serbatoi.

Eccoli qui (vi consigliamo di contattare il venditore, che spesso riserva offerte o spedizioni più vantaggiose):
https://www.safiery.com/ultrasonic-tank-level-bottom-sensor-no-penetration

Il collegamento è super semplice: nel cavo di ogni sensore sono presenti 4 fili crimpati con un connettore JST.
Rimuoviamo il connettore JST tagliando i fili e procediamo isolando il filo bianco visto che non ci servirà.
Prendiamo uno degli appositi morsetti a 3 fili in dotazione con il GX Tank 140 e partendo da sinistra verso destra inseriamo i fili: rosso, giallo, nero.
Connettiamo poi il morsetto nel nostro Channel 3.

Ripetiamo la stessa operazione anche per l'altro sensore e lo colleghiamo al Channel 4.

Inseriamo il cavo usb del GX Tank 140 nel nostro raspberry e tramite lo schermo touch lo configuriamo.

Abilitiamo le entrate desiderate dallo schermo touch:

Impostazioni > Integrazioni > Entrate analogiche > GX Tank ... input X (abilitare quelli desiderati nella lista)

Ora dentro il menu principale si trovano le entrate abilitate e si possono configurare.
Noi per esempio abbiamo abilitato la 3 e la 4 e tramite il menu principale le abbiamo chiamate Acqua e Scarico.

Rinominiamo il nostro primo sensore:

Acqua > Dispositivo
[...]
Nome: Acqua
[...]

Configuriamo il nostro primo sensore:

Acqua > Configurazione
[...]
Capacità: XL
Tipo di sensore: Tensione
Valore sensore a vuoto: 0.0V
Valore sensore a pieno: (bisogna riempire il serbatoio, vedere "Valore sensore" ed impostarla qui)
Tipo di fluido: Acqua dolce
Unità volume: Litro
Forma personalizzata: non impostata
Tempo medio: 10s (o 20s)
Valore sensore: è il valore letto al momento
Allarme livello basso: non impostato
Allarme livello alto: non impostato
[...]

Procediamo nella stessa maniera per gli altri sensori.

Nella pagine ora appariranno i due serbatoi, sia nella "panoramica imbarcazione e camper" che nella "panoramica serbatoi".

Connettiamo i sensori di temperatura Ruuvi Tag e comandiamo i relè

Come anticipato nell'articolo del riscaldamento a pavimento, per controllare le temperature nei vari ambienti, ci siamo avvalsi di un paio di sensori Ruuvi Tag.

I sensori Ruuvi Tag si possono acquistare qui:
https://amzn.to/4qdva7m

Ruuvitag

Si possono abilitare dallo schermo touch:

Impostazioni > Integrazioni > Sensori Bluetooth > Attiva > attivare
Impostazioni > Integrazioni > Sensori Bluetooth > Scansione continua > attivare

Una volta abilitati quelli prescelti consiglio di disattivare la Scansione continua:

Impostazioni > Integrazioni > Sensori Bluetooth > Scansione continua > disattivare

Ora, volendo, possiamo anche comandare i nostri eventuali primi due relè, tramite la temperatura rilevata dai sensori Ruuvi Tag:

Impostazioni > Integrazioni > Relè > Funzione (Relè X) > Temperatura
Impostazioni > Integrazioni > Relè > Regole di controllo della temperatura

Conclusioni

Il tutorial termina qui, speriamo di essere stati chiari ed aver spiegato tutto nel migliore dei modi.

Non abbiamo trattato la configurazione degli apparati tramite lo schermo touch in maniera approfondita visto che ognuno è libero di impostare a proprio piacimento i vari parametri e quello che va bene a noi potrebbe NON andar bene per qualcun altro.

Per ogni dubbio o domanda puoi contattarci nei commenti dei video oppure tramite la pagina Contattaci.

Condividi

Potrebbero interessarti