---
title: "W końcu osiągnąłem kolejny kamień milowy w automatyzacji ..."
publishDate: "2024-06-18T07:47:48.191Z"
description: "W końcu osiągnąłem kolejny kamień milowy w automatyzacji zarządzania energia w kamperze. Ostatnio przestałem dostawać napięcie na akumulatorze od alternatora - ..."
tags:
- diy
- elektronika
- microblog
- pl
- smartvan
- vanlife
language: "pl"
sourceUrl: "https://mastodon.com.pl/@knightdave/112636517953804787"
author: "Dawid"
draft: false
---
W końcu osiągnąłem kolejny kamień milowy w automatyzacji zarządzania energia w kamperze.
Ostatnio przestałem dostawać napięcie na akumulatorze od alternatora - niby alternator sprawny i podciągając przewód prosto od wyjścia alternatora do akumulatora wszystko działa - pewnie coś z wiązka.
Termin u mechanika dopiero za 2 tygodnie - wiec co tu robić?
Od dawna chodził mi po głownie pomysł, aby jeden separator napięcia (ładowarka lądująca z alternatora cześć mieszkalna) podłączyć odwrotnie i w razie zostawienia na dłużej samochodu lądować z solarów akumulator przedni.
Chciałbym widzieć na panelu dodatkowe przełączniki od ładowarek i potem przekręcając kluczyk stacyjki automatycznie włączyć ładowanie.
W przyszłości mógłbym to rozwinąć - i np. jeśli mam powyżej 80% stanu energii w części kamperowej, i załączyło się ładowanie z silnika, to zacznij grzać wodę w boilerze.
Niestety było kilka problemów żeby dojść do takiej automatyzacji:
- CerboGX ("mózg kampera") nie znal stanu silnika - czy pracuje czy jest wyłączony
- CerboGX ma tylko 2 wbudowane przekaźniki do kontrolowania innych urządzeń i już są podłączone do przetwornicy i boilera
- Mam płytkę z dodatkowymi 4rema przekaźnikami, ale jest niekompatybilna z pluginem do cerbo.
---
Najpierw wynalazłem w internecie schemat na którym z pomocą optoizolatora można podać sygnał w zależności od napięcia 12v w innym przewodzie.
Znalazłem odpowiedni bezpiecznik w samochodzie, który dostawał napięcie 12v po przekręceniu kluczyka stacyjki i puściłem od niego przewód od spodu samochodu aż po sam tył. Wykorzystałem otwory które już istniały idące do separatorów.
Podpiąłem izolator, podpiąłem cerbo - działa, skonfigurowałem input jako generator :D
Mam sygnał - na panelu pojawił się status silnika, co tez znaczy, ze mam do niego dostęp z poziomu NodeRed.
To było proste, teraz zacznie się prawdziwa zabawa z dodaniem przekaźników...
---
Wynalazłem repozytorium, które dodaje wsparcie dodatkowych przekaźników do cerbo. [github.com/Lucifer06/RemoteGPIO](https://github.com/Lucifer06/RemoteGPIO)
W skrócie - będziemy sterować zewnętrznym urządzeniem poprzez konwerter rs485-usb za pomocą protokołu modbus w zależności od stanu przełącznika w cerboGX (tego z panelu) słuchając stanu na systemowym dbus.
Wszystko jest w bibliotece, tylko... Nie do mojej chińskiej płytki. Do mojej płytki nawet niema dobrej dokumentacji - wszystko co tam było nie działało.
Zaczynam od reverse engineeringu - wysyłam rożne wartości na rożne "discrete input" i "input register". Po kilku dniach mam działający zestaw komend który włącza i wyłącza każdy z czterech przekaźników.
Teraz ten plugin do cerbo. Caly byl napisany w bashu i bardzo nie kompatybilny z tym co moja płytka oferowała (trust me). Proste dodanie innej komendy nie wchodziło w grę i musiałem to przepisać pod siebie.
Znalazlem bibliotekę do Pythona od Victrona, która załatwia sporo rzeczy za mnie. Wystarczywszy otworzyć obiekt, który słucha na danych ścieżkach z dbus i wywołuje handler przy zmianie statusu. Potem juz tylko kilka godzin ślęczenia na pymodbus i ustabilizowanie zapytań i wuala.
Wszystko wgrane do Cerbo, serwis podmieniony - przełączam na telefonie stan przekaźnika i słyszę charakterystyczny klik!
Na koniec zostało podłączenie przewodów sygnałowych z dwóch przekaźników do separatorów "Orion", uruchomienie automatyzacji w NodeRed i wszystko działa!
Przekręcam stacyjkę i po minucie (dodałem lekki delay jakbym tylko chciał szyby opuścić) załącza się ładowanie.
Co ja teraz zrobię z tym zaoszczędzonym czasem.