Sommario:

Nabito [Open Socket V2]: Smart Meter per la ricarica di veicoli elettrici: 10 passaggi (con immagini)
Nabito [Open Socket V2]: Smart Meter per la ricarica di veicoli elettrici: 10 passaggi (con immagini)

Video: Nabito [Open Socket V2]: Smart Meter per la ricarica di veicoli elettrici: 10 passaggi (con immagini)

Video: Nabito [Open Socket V2]: Smart Meter per la ricarica di veicoli elettrici: 10 passaggi (con immagini)
Video: Происхождение человека: документальный фильм об эволюционном путешествии | ОДИН КУСОЧЕК 2024, Luglio
Anonim
Image
Image
Che cosa fa?
Che cosa fa?

Questa è la seconda guida allo sviluppo di Nabito [open socket), la prima versione può essere trovata su: Nabito [open socket] v1

Elencherò le ragioni per la creazione di questo progetto in questo post sul blog: I veicoli elettrici sono inutili per le persone in appartamento

Che cos'è?

Nabito - la presa aperta è un contatore intelligente IoT con misurazione dell'elettricità, commutazione on/off ad alto amperaggio, sensore NFC, autorizzazione utente, capacità di fatturazione e gestione degli utenti.

Il progetto si compone di due parti: 1. control box (dispositivo IoT) 2. web app frontend/backend, entrambi completamente open-source.

1. La scatola di controllo è composta da parti facili da mettere in linea ed è progettata per essere una soluzione di presa elettrica intelligente ed economica per parcheggi pubblici e privati per la ricarica lenta dei veicoli elettrici. Funziona su Raspberry Pi Zero W e Arduino Nano.

2. La web app gira su Ruby on Rails ed è disponibile come open source su Github: https://github.com/sysdist/nabito-server La connessione tra il box e la web app avviene tramite protocollo MQTT.

L'obiettivo del progetto è sviluppare una rete di ricarica open source che chiunque possa adottare e implementare o estendere.

La scatola di controllo è composta da parti facili da mettere in linea ed è progettata per essere una soluzione di presa elettrica intelligente ed economica per parcheggi pubblici e privati per la ricarica lenta dei veicoli elettrici.

Funziona su computer a scheda singola Raspberry Pi Zero W (SCB). Il costo totale della centralina è di circa 60€.

Nabito - la presa aperta è attualmente progettata per la ricarica su prese ordinarie, nell'Europa continentale è 230V e 10 -13A, cioè cca. 2,9 kW continui. Ma il concetto si applica a qualsiasi presa, Euro, USA o Regno Unito o qualsiasi altro, le versioni future del progetto copriranno anche le installazioni a 2 e 3 fasi.

Specifiche:

  • Tensione monofase: 230 V
  • ACMax. corrente: 13 A
  • Potenza: 2,9 kW
  • Dimensioni: 240x200x90mm
  • Interfaccia: connessione LAN RJ45 o WIFI
  • Conformità IP: IP55

La seguente guida alla costruzione non è completa, mancano alcuni schemi elettrici, alcuni passaggi di assemblaggio, ecc.), Volevo pubblicarla il prima possibile, lavorerò per migliorarla gradualmente, quindi per favore, se questa guida alla costruzione non lo fa copri tutto ciò che devi sapere o se hai domande, inviami una mail. Grazie per la comprensione.

Passaggio 1: cosa fa?

Che cosa fa?
Che cosa fa?

Il progetto si compone di due parti, la scatola di controllo fisica che è una cosa IoT (lato client) e c'è un'applicazione Web che la controlla (lato server). Funzionalità combinate:

1. Accensione/spegnimento Con un relè di rete e un contattore può accendere/spegnere la presa di corrente in base all'interazione dell'utente.

2. Misurazione dell'energia

La scatola di controllo misura la corrente CA e registra il consumo di energia. Funzione di misurazione standard. La contabilizzazione dell'energia viene effettuata per utente. Attualmente esiste solo il monitoraggio della corrente CA, nessun monitoraggio della tensione a questo punto.

3. Autenticazione dell'utente

È necessario creare account utente per gli utenti che utilizzeranno il/i socket. L'utente autorizza leggendo il codice QR o utilizzando un tag NFC. L'interfaccia utente Web consente agli utenti di registrarsi, accedere e utilizzare la casella di controllo o il tag NFC accende/spegne direttamente la casella. L'amministratore può approvare, disapprovare gli utenti.

4. Fatturazione

In base alla configurazione della presa dell'amministratore e al prezzo per 1kWh, le bollette vengono create per i singoli utenti in base al loro consumo energetico. Le fatture mensili verranno create in seguito per comodità dell'amministratore.

Passaggio 2: stack HW e SW

Stack HW e SW
Stack HW e SW
Stack HW e SW
Stack HW e SW
Stack HW e SW
Stack HW e SW
Stack HW e SW
Stack HW e SW

Pila HW:

  • Raspberry Pi Zero, 1 pz, € 11,32,
  • dissipatore di calore, 1 pz, € 1,2,
  • Sensore NFC, 1 pz, € 3,93
  • scheda micro SD 16 GB, 1 pz, € 9,4,
  • Arduino Nano, 1 pz, € 1,74,
  • Sensore CT - YHDC 30A SCT013, 1 pz, € 4,28, https://www.aliexpress.com/item/KSOL-YHDC-30A-SCT013-0-100A-Non-invasive-AC-New-Sensor-Split-Core- Trasformatore di corrente-Nuovo/32768354127.html
  • caricatore per cellulare, 1 pz, € 5, il prezzo è approssimativo, ho usato uno dei miei vecchi caricabatterie in dotazione con un telefono
  • Contattore CA per uso domestico 25A NO, 1 pz, € 4,79,
  • Relè di rete, 1 pz, € 0,84,
  • scatola di giunzione in plastica (S-box), 1 pz, € 5,
  • Cavi di giunzione Dupont per basse tensioni, 1 pz, € 2,29,
  • Presa Euro IP54 230V, 1pz, 2€ acquistata in un negozio di ferramenta locale
  • piccole parti: jack femmina da 3,5 mm, condensatore 10uF, 2 resistori da 10kOhm, diodi LED, cavi, 1 pz, € 3, acquistati in un negozio di elettronica locale
  • Morsettiera Wago a 2 conduttori, 3 pezzi, 2 euro, acquistata in un negozio di elettronica locale
  • Morsettiera Wago a 5 conduttori, 2 pezzi, 2 euro, acquistata in un negozio di elettronica locale
  • Cavo USB da mini a micro (Arduino->RPi), 1 pz, € 1,8, acquistato in un negozio di computer locale

Costo HW totale: € 60,59 ($ 70,40)

pila SW:

  • Pila della scatola di controllo:

    • Raspbian Linux (basato su Ubuntu), open source, $ 0 (tutta gloria a Linus Torvalds + 20k persone che hanno lavorato sul kernel Linux + le persone gentili dietro l'immagine Raspberry Pi e Raspbian Linux)
    • Node-RED, open source, $ 0 (persone gentili di IBM che sono dietro lo sviluppo di Node-RED)
  • Stack di app Web:

    • App Nabito-server:
    • Ruby on Rails (RVM, Ruby, Gems), open source, $ 0
    • Postgres DB, open source, $ 0
    • Git, open source (più gloria a Linus), $ 0
    • Protocollo MQTT

Costo totale dello stack SW: €0 (*THUMBS_UP*)

Passaggio 3: la scatola di controllo: configurazione del software

La scatola di controllo: configurazione del software
La scatola di controllo: configurazione del software
  1. Installa RASPBIAN STRETCH LITE (non abbiamo bisogno della versione desktop) su Raspberry Pi Zero Whttps://www.raspberrypi.org/downloads/raspbian/
  2. configura Raspbian per utilizzare il Wi-Fi di casa localehttps://weworkweplay.com/play/automatically-connect-a-raspberry-pi-to-a-wifi-network/
  3. Installa Node-RED su Raspbianhttps://nodered.org/docs/hardware/raspberrypi
  4. Copia il flusso Nabito Node-RED e distribuiscilohttps://github.com/sysdist/nabito-client-node-red
  5. Modifica le impostazioni predefinite di Node-RED.js e aggiungi questo alla functionGlobalContext: relay: "OFF",

    box_status: "OFFLINE"

  6. Configura i tuoi broker MQTT Node-RED verso la tua installazione preferita del server Nabito (o verso
  7. Riavvia il nodo-RED
  8. Controlla la connettività MQTT in Node-RED

parte Arduino:

  1. Scarica, compila e carica questo sketch su Arduino Nanohttps://github.com/sysdist/nabito-arduino-nano.git
  2. Fatto!;-)

Passaggio 4: cablaggio: cavi di rete

Cablaggio: cavi di rete
Cablaggio: cavi di rete
Cablaggio: cavi di rete
Cablaggio: cavi di rete
Cablaggio: cavi di rete
Cablaggio: cavi di rete

I cavi di rete AC forniscono alimentazione a:

  • Contattore CA
  • Relè di rete
  • Caricatore mobile che alimenta Raspberry Pi e Arduino

L'uscita dal contattore CA va alla presa di corrente. La messa a terra di protezione è collegata dalla linea di alimentazione della sorgente alla presa di uscita.

Raspberry Pi controlla il relè di rete e il relè a sua volta accende/spegne il contattore.

Passaggio 5: cablaggio: Arduino, sensore CT, sensore NFC

Cablaggio: Arduino, sensore CT, sensore NFC
Cablaggio: Arduino, sensore CT, sensore NFC

Cablare Arduino con il sensore CT secondo il seguente manuale:

learn.openenergymonitor.org/electricity-mo…

Hai bisogno:

  • Arduino (puoi usare qualsiasi Arduino: Uno, Nano, Mega, quello che preferisci, purché abbia un ADC)
  • Condensatore da 10uF2 resistenze da 10kOhm
  • Presa jack femmina da 3,5 mm
  • Sensore TA 30A/1V
  • Sensore PN532 (RFID/NFC)
  • piccolo PCB
  • piccoli fili per i collegamenti

Ho saldato l'Arduino Nano, il condensatore, i resistori e il jack femmina al PCB secondo il manuale di cui sopra dal sito openenergymonitor.org.

Il sensore NFC è collegato ad Arduino Nano tramite SPI (pin su Arduino Nano: 10, 11, 12 e 13).

L'Arduino è collegato al Raspberry Pi tramite la micro USB.

Passaggio 6: cablaggio: Raspberry Pi

Cablaggio: Raspberry Pi
Cablaggio: Raspberry Pi
Cablaggio: Raspberry Pi
Cablaggio: Raspberry Pi

Collega Arduino al Raspberry Pi tramite la porta USB, in questo modo funge da porta seriale e alimentatore per Arduino, dovrebbe mappare su /dev/ttyUSB0.

Il relè di rete è collegato tramite i pin 2 (5V), 6 (GND), 12 (GPIO).

I LED del pannello frontale sono collegati tramite i pin 14 (GND), 16 (GPIO), 18 (GPIO)

Passaggio 7: cablaggio di tutto insieme

Cablare tutto insieme
Cablare tutto insieme
  1. Fissare il sensore TA sulla linea di rete in uscita dal relè di rete
  2. Collega la fonte di alimentazione per Raspberry Pi
  3. Avvitare il coperchio della scatola di giunzione
  4. E hai finito di cablare/assemblare!

Passaggio 8: configurazione dell'app Web

Configurazione dell'app Web
Configurazione dell'app Web

È necessario un server Linux per eseguire l'app Web. Puoi:

  • esegui il server localmente sul tuo PC/notebook o sul tuo server Linux locale e punta la casella di controllo [es] alla tua installazione locale
  • crea il tuo dominio ed esegui l'app web come un sito web
  • usa https://Nabito.org (è gratis) per gestire le tue scatole di controllo

L'app Nabito-server funziona su Ruby on Rails ed è open source:

Per l'installazione e la configurazione dell'app Web, fare riferimento al file README.md del progetto su Github.

Passaggio 9: esecuzione e test

Corsa e test
Corsa e test

Per la configurazione locale:

  1. Distribuisci l'app Nabito-server sul tuo PC/notebook locale
  2. Configura mosquitto MQTT broker sul tuo PC (o qualsiasi altro broker MQTT di tua preferenza)
  3. Collega la centralina Nabito al tuo WiFi locale
  4. SSH nella casella e indirizzalo all'utilizzo del broker MQTT del tuo PC
  5. avvia l'app rails nabito-server
  6. collegare un piccolo carico elettrico (es. una lampada da tavolo) alla presa di corrente
  7. utilizzare l'app web per avviare/arrestare la presa id 1 per verificare il consumo energetico effettivo e totale
  8. usa un tag NFC (se ne hai uno) per attivare il socket
  9. controlla la fatturazione per l'ultimo utilizzo della presa
  10. Dopo aver superato con successo i test, inizia a creare la tua rete di ricarica per veicoli elettrici
  11. Profitto;-)

Passaggio 10: conclusione, problemi e roadmap del prodotto

La conclusione, i problemi e la roadmap del prodotto
La conclusione, i problemi e la roadmap del prodotto

In questa versione della scatola di controllo Nabito sono riuscito a disaccoppiare la scatola di controllo e l'app Web essenzialmente creando un progetto IoT (Internet of Things) sia con la cosa fisica che fa qualcosa di utile sia con un'app e un servizio di back-end che gestisce il cosa fisica.

Il prezzo della scatola è leggermente aumentato rispetto all'ultima versione (v1 prima: € 50, v2 ora: € 60), perché ho aggiunto un contattore per motivi di sicurezza per servire amplificatori più alti e anche RPi è un po' più costoso delle schede OrangePi.

MQTT viene utilizzato come protocollo principale per la registrazione dei dati e il controllo della scatola.

Dall'ultima versione di Nabito, sono stato in grado di risolvere la maggior parte dei problemi (Wifi, contattore, surriscaldamento del processore, presa di corrente integrata, ecc.). Tuttavia, l'elenco dei problemi e delle opportunità attuali si amplia ulteriormente:

Problemi:

  • Raspberry Pi Zero W è una scheda molto bella, con WiFi e Bluetooth e 2 pin GPIO, ma il processore si riscalda fino a 34 °C quando è al minimo, il che potrebbe essere problematico in climi caldi e mesi estivi con luce solare diretta
  • L'esecuzione di Linux nella scatola di controllo è utile per la prototipazione, ma il modello di produzione di questo prodotto dovrebbe probabilmente funzionare su una scheda più snella che sia in grado di supportare TLS/SSL (il chip ESP32 sembra molto promettente)

Opportunità:

  • creare versioni per correnti più elevate (funzionalità identica, ma utilizzare contattori con ampere più alti e sensori TA/moduli di monitoraggio energia diversi)
  • creare versioni per 2 e 3 fasi
  • integrare il modulo di monitoraggio dell'energia (come il monitor Peacefair PZEM-004T Energy)
  • migrare a ESP32 per una maggiore potenza ed efficienza termica
  • integrarsi nel cloud AWS IOT e utilizzare i certificati client per la migliore configurazione della sicurezza (in questo momento viene utilizzato solo l'utente/password MQTT)
  • gestire i certificati e le credenziali MQTT dall'app Web (attualmente questo è configurato manualmente tramite il back-end)
  • aggiungi un piccolo pannello LCD per presentare le informazioni direttamente sulla scatola di controllo Nabito
  • aggiungi il tastierino numerico per fornire l'interazione dei pulsanti con la scatola (possibilità di pin per una maggiore sicurezza)
  • includere un termometro aggiuntivo per monitorare la temperatura ambiente della scatola

Se ti piace questo progetto o hai domande/commenti, non esitare a contattarmi all'indirizzo [email protected]

Sito Web distribuito dei sistemi: www.sysdist.com

Puoi seguirmi su: twitter.com/sysdistfb.com/sysdist

Buona giornata e buon lavoro!--Stefan

Consigliato: