• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Fajniejszy wyświetlacz graficzny do Ardu?
#11
Jeśli nie chcesz rzeźbić wszystkiego od zera to kupujesz terminal PC za 50-200zł, albo RP4-5, 2GB jest na styk, 4GB RAM daje luz, instalujesz Home Assistant, w rozdzielni przy liczniku swój dwukierunkowy z RS485, z HA do ESP wgrywasz wsad do ESPHome z odpowiednim YAML, masz bilans całego domu. Przez moduły z ESPHome można zbierać dane z falowników solanych po interfejsie RS232/RS485 i na bieżąco zbierać je w HA, wyświetlać w panelu energia. Poszczególne urządzenia w domu, gniazdka, światło można połączyć przez Zigbee dzięki czemu nie zapycha sie WIFI. Wszystkie logi są zbierane i obrazowane na wykresach dla wybranego przedziału, typowo dziennie, tygodniowo, miesięcznie, kwartalnie, rocznie. Dalej można rzeźbić i integrować w HA swoje urządzenia z Aduino i komunikować je przez WIFI i MQTT. Do ESP jest też wiele gotowych profili do obsługi różnych czujników, LCD, przekaźników z wykorzystaniem TASMOTA. Są gotowce by włączyć w HA urządzenia znanych marek jak LG, Samsung, Tuya, wiele takich integracji można sobie dorobić wg wstępnie przygotowanych wsadów podobnie jak dla Arduino. Tak powstaje system zarządzania budynkiem BMS. Potem do tego można robić automatyzacje przez wbudowane w HA narzędzia lub NODE RED, ruch włącza światło w określonych godzinach, sterujesz termostatami, ogrzewaniem, klimą, jak jest za dużo energii lub napięcia od PV to włącza się grzałka CWU, jak czujnik zalania wykryje wilgoć na podłodze to zamknie główny zawór wody, albo sam zrobisz to zdalnie gdy zapomnisz przed wyjazdem na wakacje, granicą jest tylko wyobraźnia. Home assistant jest oparty o języki skryptowe, co mnie mocno wkurza, bo nowe rzeczy do nauki, ale jest też DOMOTICZ bardziej oparty na C++, no ale po roku to już mi się nie chce wszystkiego wywracać i zaczynać od nowa.
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
#12
Ogólnie rzecz biorąc niezbyt da się użyć tabletu tylko jako wyświetlacza do jakiejkolwiek płytki Arduino opartej o Atmela.
Powodem są zbyt mała ilość pamięci RAM i Flash oraz prawdopodobnie zbyt niska przepustowość transmisji poprzez Bluetooth.

Analizując bardzo pobieżnie:
Monochromatyczny wyświetlacz full HD 16:9 ma 2 073 600 pikseli (2 Mega piksele), dla każdego piksela potrzeba jeden bit pamięci (rezygnujemy ze sterowania jasnością) co oznacza że potrzebujemy 2Mb, czyli 259 200 bajtów czyli w zaokrągleniu przyjmijmy 260kB pamięci. Ani RAM tyle nie ma aby to generować dynamicznie, ani flash aby odczytywać z pamięci bitmapę i nakładać na nią w locie coś innego.

Kolejnym problemem jest prędkość transmisji, zapewne komunikacja z modułem BT odbywa się poprzez USART. Jak już wiemy, traktując tablet tylko jako wyświetlacz musimy przesłać 260kB danych aby zapełnić cały ekran o rozdzielczości full HD. Aby zrobić to w sekundę, potrzebujemy prędkości 260kB/s, tymczasem Atmega oferuje max ok. 1Mb/s czyli jakieś 120kB/s - ponad połowę mniej więc przesłanie całego obrazu zajmie ponad 2s.
Aby obraz na wyświetlaczu był płynny należałoby przesyłać co najmniej 25 obrazów na sekundę, tymczasem my przesyłamy 1 obraz na 2 sekundy. Smile
Mowa póki co o rozdzielczości FHD 16:9 czyli 1920x1080 i obrazie monochromatycznym bez sterowania głębią "koloru" czyli w tym przypadku szarości, a Kolega na filmiku obiecuje 8k (ok. 33 Mpix) i jeszcze pracę z dotykiem.

Do FHD trzeba byłoby użyć SPI a nie USART do przesyłania danych ale to i tak nie ma sensu bo Atmega nie ma wystarczającej ilości pamięci zarówno RAM jak i Flash, a mówimy tylko o pamięci potrzebnej do wyświetlenia monochromatycznego obrazu, a przecież pamięć potrzebna jest jeszcze do normalnej pracy, akwizycji i obróbki danych.
Dlatego nie da się traktować tabletu tylko jako wyświetlacza dla modułu Arduino opartego o Atmegę.
W ogóle używanie wyświetlaczy o dużych rozdzielczościach z takimi procesorami nie jest możliwe bez względu na to czy to będzie tablet czy sam wyświetlacz.

Takie rozwiązanie jest możliwe tylko gdy to np. tablet czy inny komputer o wystarczającej mocy obliczeniowej i zasobach sprzętowych będzie sercem systemu, a Arduino tylko prostym interfejsem wykonującym pomiary i wysyłającym je dalej do obróbki i wyświetlenia. Tyle tylko że wówczas tablet nie jest wyświetlaczem do Arduino, tylko Arduino jest modułem pomiarowym do tabletu. Smile
Dodatkowo aby pomiary miały sens, trzeba je wykonywać zgodnie ze sztuką, czyli zachować stałe interwały czasowe pomiędzy pomiarami, a następnie wyniki uśrednić i dopiero w takiej postaci wysłać do dalszej obróbki i wyświetlenia.
Dlaczego tak? Załóżmy że chcemy mierzyć napięcie sieci 230V i odświeżać wynik co 10s, wpadamy na światły pomysł - mierzymy co 10s, wysyłamy i z głowy - przez 10s Arduino odpoczywa. Nic bardziej mylnego - jeśli w chwili pomiaru napięcie w sieci wynosi 230V, następnie przez 9s nie ma napięcia i potem znów się pojawi to co zobaczymy na wykresie? Linię prostą, a przecież przez 9s nie było napięcia!
Dokładnie taki sam błąd wystąpi gdy będziemy prezentowali wyniki tylko w postaci suchych liczb.
Gdy pomiary będziemy wykonywali zgodnie ze sztuką, czyli mierzyli np. co 1s, uśredniali 10 pomiarów, a następnie wyświetlali, to fakt zaniku napięcia 230V będzie widoczny na wykresie ponieważ pierwsza próbka będzie miała 230V, a 9 następnych 0V więc średnia wyjdzie 23V i taką wartość odczytamy z wykresu albo zobaczymy w postaci liczbowej.
Wprawdzie to nie 0V, ale i tak widać że coś się wydarzyło.

Takie rzeczy niestety musi wiedzieć konstruktor/programista zanim w ogóle weźmie się za tworzenie czegokolwiek i pisanie programu. Sztuczna inteligencja jak widać jest w tym przypadku bezużyteczna. Ona nie wie, że programista tworzy program który nie ma sensu. Programista chciał kod, to go dostał i tyle.
Kolega podszedł to tematu od końca - zaczął tworzyć program do rozwiązania które w ogóle nie ma racji bytu w tej formie i jeszcze uzyskał "obiecujące" wyniki. Smile
Dlatego jestem spokojny zarówno o swoją pracę, jak i Kolegów programistów.
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości