Spisu treści:

Nabito [Open Socket V2]: inteligentny miernik do ładowania pojazdów elektrycznych: 10 kroków (ze zdjęciami)
Nabito [Open Socket V2]: inteligentny miernik do ładowania pojazdów elektrycznych: 10 kroków (ze zdjęciami)

Wideo: Nabito [Open Socket V2]: inteligentny miernik do ładowania pojazdów elektrycznych: 10 kroków (ze zdjęciami)

Wideo: Nabito [Open Socket V2]: inteligentny miernik do ładowania pojazdów elektrycznych: 10 kroków (ze zdjęciami)
Wideo: Происхождение человека: документальный фильм об эволюционном путешествии | ОДИН КУСОЧЕК 2024, Lipiec
Anonim
Image
Image
Co to robi?
Co to robi?

To jest drugi przewodnik po kompilacji dla Nabito [open socket], pierwszą wersję można znaleźć pod adresem: Nabito [open socket] v1

W tym wpisie na blogu wymieniam powody powstania tego projektu: pojazdy elektryczne nie mają sensu dla osób mieszkających w mieszkaniu

Co to jest?

Nabito - otwarte gniazdo to inteligentny licznik IoT z pomiarem energii elektrycznej, włączaniem/wyłączaniem wysokiego natężenia, czujnikiem NFC, autoryzacją użytkownika, możliwościami rozliczeń i zarządzaniem użytkownikami.

Projekt składa się z dwóch części: 1. skrzynki kontrolnej (urządzenia IoT) 2. frontendu/backendu aplikacji webowych, obie całkowicie open-source.

1. Skrzynka kontrolna składa się z części łatwych do zdobycia online i została zaprojektowana jako inteligentne, a jednocześnie niedrogie rozwiązanie do gniazdek elektrycznych na parkingach publicznych i prywatnych do powolnego ładowania pojazdów elektrycznych. Działa na Raspberry Pi Zero W i Arduino Nano.

2. Aplikacja internetowa działa na Ruby on Rails i jest dostępna jako open source na Github: https://github.com/sysdist/nabito-server Połączenie między boxem a aplikacją internetową odbywa się za pomocą protokołu MQTT.

Celem projektu jest opracowanie sieci ładowania o otwartym kodzie źródłowym, którą każdy mógłby zaadoptować, wdrożyć lub rozszerzyć.

Skrzynka kontrolna składa się z części łatwych do zdobycia online i została zaprojektowana jako inteligentne, a jednocześnie niedrogie rozwiązanie do gniazdek elektrycznych na parkingach publicznych i prywatnych do powolnego ładowania pojazdów elektrycznych.

Działa na komputerze jednopłytkowym Raspberry Pi Zero W (SCB). Całkowity koszt skrzynki kontrolnej to około 60 euro.

Nabito - gniazdo otwarte jest obecnie przeznaczone do ładowania na zwykłych gniazdkach, w Europie kontynentalnej jest to 230V i 10 -13A, czyli ok. 2,9kW ciągła. Ale koncepcja dotyczy każdego gniazdka, Euro, US czy UK lub innych, przyszłe wersje projektu obejmą również instalacje 2 i 3 fazowe.

Okular:

  • Napięcie jednofazowe: 230 V
  • ACMaks. prąd: 13 A
  • Moc: 2,9 kW
  • Rozmiar: 240x200x90mm
  • Interfejs: połączenie LAN RJ45 lub WIFI
  • Zgodność IP: IP55

Poniższy przewodnik po kompilacji nie jest kompletny, brakuje w nim niektórych schematów okablowania, niektórych kroków montażu itp.), Chciałem udostępnić go tak szybko, jak to możliwe, będę pracował nad jego stopniowym ulepszaniem, więc proszę, jeśli ten przewodnik po kompilacji nie pokryj wszystko, co musisz wiedzieć lub jeśli masz jakieś pytania, wyślij mi e-mail. Dzięki za zrozumienie.

Krok 1: Co to robi?

Co to robi?
Co to robi?

Projekt składa się z dwóch części, fizycznej skrzynki kontrolnej będącej rzeczą IoT (po stronie klienta) oraz aplikacji webowej, która nią steruje (po stronie serwera). Połączone funkcjonalności:

1. Włączanie/wyłączanie Dzięki przekaźnikowi sieciowemu i stycznikowi może włączać/wyłączać gniazdo wyjściowe w zależności od interakcji użytkownika.

2. Pomiar energii

Skrzynka kontrolna mierzy prąd AC i rejestruje zużycie energii. Standardowa funkcja dozowania. Pomiar energii odbywa się na użytkownika. Obecnie jest tylko monitoring prądu AC, brak monitoringu napięcia w tym momencie.

3. Uwierzytelnianie użytkownika

Musisz utworzyć konta użytkowników dla użytkowników, którzy będą korzystać z gniazd. Użytkownik autoryzuje poprzez odczytanie kodu QR lub za pomocą tagu NFC. Internetowy interfejs użytkownika umożliwia użytkownikom rejestrację, logowanie i korzystanie ze skrzynki kontrolnej lub tag NFC bezpośrednio włącza/wyłącza skrzynkę. Administrator może zatwierdzać i odrzucać użytkowników.

4. Rozliczenia

W oparciu o konfigurację gniazd administratora i cenę za 1kWh tworzone są rachunki dla poszczególnych użytkowników na podstawie ich zużycia energii. Rachunki miesięczne zostaną utworzone później dla wygody administratora.

Krok 2: Stosy sprzętu i oprogramowania

Stosy HW i SW
Stosy HW i SW
Stosy HW i SW
Stosy HW i SW
Stosy HW i SW
Stosy HW i SW
Stosy HW i SW
Stosy HW i SW

Stos sprzętowy:

  • Raspberry Pi Zero, 1szt, 11,32 €,
  • radiator, 1 szt, 1,2 €,
  • Czujnik NFC, 1 szt, 3,93 €
  • karta microSD 16GB, 1szt, 9,4 €,
  • Arduino Nano, 1 szt, 1,74 €,
  • Czujnik CT - YHDC 30A SCT013, 1szt, 4,28 €, https://www.aliexpress.com/item/KSOL-YHDC-30A-SCT013-0-100A-Non-inwazyjne-AC-New-Sensor-Split-Core- Current-Transformer-New/32768354127.html
  • ładowarka do telefonu komórkowego, 1 szt, 5 €, cena jest przybliżona, użyłem jednej z moich starych ładowarek dostarczonych z telefonem
  • Stycznik domowy AC 25A NO, 1szt, 4,79 €,
  • Przekaźnik sieciowy, 1 szt, 0,84 €
  • plastikowa puszka przyłączeniowa (S-box), 1szt, 5 €,
  • Przewody połączeniowe Dupont do niskich napięć, 1szt, 2,29 €,
  • Gniazdo IP54 230V Euro, 1 szt, 2 € kupione w lokalnym sklepie ze sprzętem
  • drobne części: gniazdo jack 3,5mm, kondensator 10uF, 2x rezystory 10kOhm, diody LED, kable, 1szt, 3€, do kupienia w lokalnym sklepie elektronicznym
  • Listwa zaciskowa 2-przewodowa Wago, 3 szt., 2 €, kupiona w lokalnym sklepie elektronicznym
  • 5-przewodowa listwa zaciskowa Wago, 2 szt., 2 €, kupiona w lokalnym sklepie elektronicznym
  • Kabel USB mini-micro (Arduino->RPi), 1 szt., 1,8 €, kupiony w lokalnym sklepie komputerowym

Całkowity koszt sprzętu: 60,59 € (70,40 $)

Stos SW:

  • Stos skrzynki kontrolnej:

    • Raspbian Linux (bazujący na Ubuntu), open source, 0 USD (cała chwała Linusowi Torvaldsowi + 20 tys. osób, które pracowały nad jądrem Linuksa + życzliwi ludzie stojący za Raspberry Pi i obrazem Raspbian Linux)
    • Node-RED, open source, 0 USD (życzliwi ludzie z IBM, którzy stoją za rozwojem Node-RED)
  • Stos aplikacji internetowej:

    • Aplikacja Nabito-server:
    • Ruby on Rails (RVM, Ruby, Gems), open source, 0
    • Postgres DB, open source, 0 $
    • Git, open source (więcej chwały Linusowi), $0
    • Protokół MQTT

Całkowity koszt stosu SW: 0 € (*THUMBS_UP*)

Krok 3: Skrzynka kontrolna: Konfiguracja oprogramowania

Skrzynka kontrolna: Konfiguracja oprogramowania
Skrzynka kontrolna: Konfiguracja oprogramowania
  1. Zainstaluj RASPBIAN STRETCH LITE (nie potrzebujemy wersji desktopowej) na Raspberry Pi Zero Whttps://www.raspberrypi.org/downloads/raspbian/
  2. skonfiguruj Raspbian do korzystania z lokalnej domowej sieci Wi-Fihttps://weworkweplay.com/play/automatically-connect-a-raspberry-pi-to-a-wifi-network/
  3. Zainstaluj Node-RED na Raspbianhttps://nodered.org/docs/hardware/raspberrypi
  4. Skopiuj przepływ Nabito Node-RED i wdróż gohttps://github.com/sysdist/nabito-client-node-red
  5. Edytuj domyślne ustawienia Node-RED.js i dodaj to do functionGlobalContext: relay: "OFF",

    box_status: "OFFLINE"

  6. Skonfiguruj swoich brokerów Node-RED MQTT w kierunku preferowanej instalacji serwera Nabito (lub w kierunku
  7. Uruchom ponownie węzeł-CZERWONY
  8. Sprawdź łączność MQTT w Node-RED

Część Arduino:

  1. Pobierz, skompiluj i prześlij ten szkic do Arduino Nanohttps://github.com/sysdist/nabito-arduino-nano.git
  2. Gotowe!;-)

Krok 4: Okablowanie: Kable sieciowe

Okablowanie: Kable sieciowe
Okablowanie: Kable sieciowe
Okablowanie: Kable sieciowe
Okablowanie: Kable sieciowe
Okablowanie: Kable sieciowe
Okablowanie: Kable sieciowe

Kable sieciowe AC zasilają:

  • Stycznik prądu przemiennego
  • Przekaźnik sieciowy
  • Przenośna ładowarka zasilająca Raspberry Pi i Arduino

Wyjście ze stycznika AC trafia do gniazda wyjściowego. Uziemienie ochronne jest podłączone od źródła zasilania do gniazda wyjściowego.

Raspberry Pi steruje przekaźnikiem sieciowym, a przekaźnik z kolei włącza/wyłącza stycznik.

Krok 5: Okablowanie: Arduino, czujnik CT, czujnik NFC

Okablowanie: Arduino, czujnik CT, czujnik NFC
Okablowanie: Arduino, czujnik CT, czujnik NFC

Połącz Arduino z czujnikiem CT zgodnie z poniższą instrukcją:

learn.openenergymonitor.org/electricity-mo…

Potrzebujesz:

  • Arduino (możesz użyć dowolnego Arduino: Uno, Nano, Mega, jak chcesz, o ile ma ADC)
  • Kondensator 10uF2x rezystory 10kOhm
  • Gniazdo żeńskie jack 3,5 mm
  • Czujnik CT 30A/1V
  • Czujnik PN532 (RFID/NFC)
  • mała płytka drukowana
  • małe przewody do połączeń

Przylutowałem Arduino Nano, kondensator, rezystory i gniazdo żeńskie do PCB zgodnie z powyższą instrukcją ze strony openenergymonitor.org.

Czujnik NFC jest podłączony do Arduino Nano przez SPI (piny na Arduino Nano: 10, 11, 12 i 13).

Arduino jest połączone z Raspberry Pi przez micro USB.

Krok 6: Okablowanie: Raspberry Pi

Okablowanie: Raspberry Pi
Okablowanie: Raspberry Pi
Okablowanie: Raspberry Pi
Okablowanie: Raspberry Pi

Podłącz Arduino do Raspberry Pi przez port USB, w ten sposób służy jako port szeregowy i zasilanie dla Arduino, powinno być mapowane do /dev/ttyUSB0.

Przekaźnik sieciowy jest podłączony przez piny 2 (5V), 6 (GND), 12 (GPIO).

Diody LED na panelu przednim są połączone za pomocą pinów 14 (GND), 16 (GPIO), 18 (GPIO)

Krok 7: Połącz wszystko razem

Połączenie wszystkiego razem
Połączenie wszystkiego razem
  1. Zacisnąć czujnik CT na linii zasilającej wychodzącej z przekaźnika sieciowego
  2. Podłącz źródło zasilania dla Raspberry Pi
  3. Przykręć pokrywę skrzynki przyłączeniowej
  4. I gotowe okablowanie/montaż!

Krok 8: Konfiguracja aplikacji internetowej

Konfiguracja aplikacji internetowej
Konfiguracja aplikacji internetowej

Aby uruchomić aplikację internetową, potrzebujesz serwera linux. Możesz albo:

  • uruchom serwer lokalnie na swoim komputerze PC/notebooku lub lokalnym serwerze Linux i skieruj okienko kontrolne [es] na swoją lokalną instalację
  • stwórz własną domenę i uruchom aplikację internetową jako stronę internetową
  • użyj https://Nabito.org (to nic nie kosztuje) do zarządzania skrzynkami kontrolnymi

Aplikacja Nabito-server działa na Ruby on Rails i jest open source:

Aby zainstalować i skonfigurować aplikację internetową, zapoznaj się z plikiem README.md projektu na Github.

Krok 9: Uruchamianie i testowanie

Bieganie i testowanie
Bieganie i testowanie

W przypadku konfiguracji lokalnej:

  1. Wdróż aplikację Nabito-server na lokalnym komputerze/notebooku
  2. Skonfiguruj brokera Mosquitto MQTT na swoim komputerze (lub dowolnego innego brokera MQTT według własnych preferencji)
  3. Podłącz skrzynkę kontrolną Nabito do lokalnej sieci Wi-Fi
  4. SSH do skrzynki i skieruj go do korzystania z brokera MQTT swojego komputera
  5. uruchom aplikację rails nabito-server
  6. podłączyć niewielkie obciążenie elektryczne (np. lampę stołową) do gniazdka sieciowego
  7. użyj aplikacji internetowej, aby uruchomić/zatrzymać gniazdo id 1, aby sprawdzić rzeczywiste i całkowite zużycie energii
  8. użyj tagu NFC (jeśli go masz), aby przełączyć gniazdo
  9. sprawdź rozliczenia za ostatnie użycie gniazdka
  10. Po udanych testach zacznij tworzyć własną sieć ładowania pojazdów elektrycznych
  11. Zysk;-)

Krok 10: Wnioski, problemy i mapa drogowa produktu

Wnioski, problemy i mapa drogowa produktu
Wnioski, problemy i mapa drogowa produktu

W tej wersji skrzynki kontrolnej Nabito udało mi się oddzielić skrzynkę kontrolną i aplikację internetową, zasadniczo tworząc projekt IoT (Internet of Things) z zarówno fizyczną rzeczą, która robi coś użytecznego, jak i aplikacją i usługą zaplecza, która zarządza rzecz fizyczna.

Cena pudełka nieco wzrosła w stosunku do poprzedniej wersji (wcześniej v1: 50€, v2 teraz: 60€), ponieważ dodałem stycznik ze względów bezpieczeństwa, aby obsługiwać wyższe wzmacniacze, a RPi jest nieco droższe niż płyty OrangePi.

MQTT jest używany jako główny protokół do rejestracji danych i sterowania skrzynką.

Od ostatniej wersji Nabito udało mi się rozwiązać większość problemów (Wifi, stycznik, przegrzanie procesora, zintegrowane gniazdko itp.). Jednak lista aktualnych problemów i możliwości rośnie dalej:

Zagadnienia:

  • Raspberry Pi Zero W to bardzo ładna płyta, z Wifi i Bluetooth oraz 2 pinami GPIO, ale mimo to procesor nagrzewa się do 34C na biegu jałowym, co może być problematyczne w ciepłym klimacie i miesiącach letnich przy bezpośrednim nasłonecznieniu
  • Uruchamianie Linuksa w skrzynce kontrolnej jest dobre do prototypowania, ale model produkcyjny tego produktu powinien prawdopodobnie działać na szczuplejszej płycie obsługującej TLS/SSL (chip ESP32 wygląda bardzo obiecująco)

Możliwości:

  • tworzyć wersje dla wyższych prądów (funkcjonalność taka sama, ale należy używać styczników o wyższym natężeniu i różnych czujników CT/modułów monitorowania energii)
  • tworzyć wersje na 2 i 3 fazy
  • zintegrować moduł monitora energii (np. Peacefair PZEM-004T Monitor energii)
  • migracja na ESP32 w celu zwiększenia wydajności energetycznej i cieplnej
  • integracja z chmurą AWS IOT i używanie certyfikatów klienta dla najlepszej konfiguracji bezpieczeństwa (obecnie używany jest tylko użytkownik/hasło MQTT)
  • zarządzaj certyfikatami i poświadczeniami MQTT z aplikacji internetowej (obecnie jest to ręcznie konfigurowane przez back-end)
  • dodaj mały panel LCD, aby prezentować informacje bezpośrednio na skrzynce kontrolnej Nabito
  • dodaj numpad, aby zapewnić interakcję przycisku z pudełkiem (możliwość przypięcia dla większego bezpieczeństwa)
  • zawierają dodatkowy termometr do monitorowania temperatury otoczenia pudełka

Jeśli podoba Ci się ten projekt lub masz jakieś pytania/komentarze, skontaktuj się ze mną pod adresem [email protected]

Strona internetowa z dystrybucją systemów: www.sysdist.com

Możesz mnie śledzić na: twitter.com/sysdistfb.com/sysdist

Miłego dnia i miłego robienia!--Stefan

Zalecana: