Monitor przemysłowy - Monitor Raspberry Pi (czarny), zbliżenie płytki drukowanej

Prototypy HMI

szybki i niedrogi

Tworzenie oprogramowania wbudowanego

Profesjonalne rozwiązania

Oprogramowanie wbudowane to oprogramowanie komputerowe przeznaczone do sterowania maszynami lub urządzeniami, które nie są zwykle uważane za komputery, powszechnie znane jako systemy wbudowane.
Zwykle jest ono wyspecjalizowane dla konkretnego sprzętu, na którym działa oraz ma ograniczenia czasowe i pamięciowe.

Wbudowane oprogramowanie Raspberry Pi - Yocto buduje Raspberry Pi 4 w środowisku docker, zrzut ekranu komputera

Projekt zapewnia elastyczny zestaw narzędzi i przestrzeń, w której programiści systemów wbudowanych (embedded) na całym świecie mogą dzielić się technologiami, stosami oprogramowania, konfiguracjami i najlepszymi praktykami, które można wykorzystać do tworzenia dostosowanych obrazów Linux dla urządzeń wbudowanych i IOT lub wszędzie tam, gdzie potrzebny jest spersonalizowany system operacyjny Linux.

Wbudowane oprogramowanie Raspberry Pi - Yocto Raspberry niestandardowy ekran powitalny z paskiem postępu biały pasek ładowania z czarnym tekstem

Zazwyczaj kiedy tworzysz niestandardowy obraz linux z Yocto dla Raspberry Pi, chcesz również pokazać niestandardowy ekran powitalny z paskiem postępu.

Wbudowane oprogramowanie - Yocto boot raspberry to Qt application, zrzut ekranu komputera

W tym przewodniku zapewniamy informacje, jak skonfigurować projekt Yocto do instalacji Qt i aplikacji demonstracyjnej Qt dla Raspberry Pi 4, a następnie jak zrobić autostart tej aplikacji demonstracyjnej Qt.

Wbudowane oprogramowanie Raspberry Pi - Yocto - Malina - PIGPIO - Qt zrzut ekranu programu komputerowego
Dołącz bibliotekę PIGPIO i łańcuch narzędzi Qt

Skonfiguruj Yocto, aby stworzyć własną wersję systemu Linux dla Raspberry Pi 4 z integracją biblioteki pigpio, Qt i łańcuchem narzędzi do kompilacji krzyżowej.

Oprogramowanie wbudowane - VisionFive - Mender - Yocto zrzut ekranu komputera
Część 1 – Podstawowa konfiguracja środowiska Yocto

Część 1 serii artykułów, jak skonfigurować środowisko Yocto, aby utworzyć Yocto Linux z integracją klienta Mender.

Ostatnio musiałem opracować aplikację (system kioskowy) dla/na Raspberry Pi 4. Szczególną rzeczą było to, że 2 monitory dotykowe miały być podłączone przez HDMI, które musiały być obrócone o 90 stopni w prawo. Więc formaty portretowe, 2 monitory jeden na drugim.
Obracanie ekranu i układanie go jeden na drugim nie powodowało żadnych problemów, ponieważ jest to łatwo możliwe za pośrednictwem interfejsu użytkownika - zainstalowano "Raspbian Buster z pulpitem i zalecanym oprogramowaniem".

Ze względu na częste zapisywanie lub nadpisywanie danych wpływa to na żywotność karty SD.

Na przykład zaleca się zapisywanie danych tymczasowych (np. wartości czujników do obliczeń porównawczych) na dysku RAM w przypadku aplikacji, które często zawierają dane tymczasowe (np. wartości czujników do obliczeń porównawczych), które nie są już potrzebne po ponownym uruchomieniu.

Możesz także użyć interfejsu USB-C Raspberry Pi 4, który jest zwykle używany do zasilania, jako normalnego interfejsu USB.
W tym przypadku jednak Raspberry powinien dostarczać energię za pośrednictwem pinów GPIO.

Wbudowane oprogramowanie Raspberry Pi - Qt na Raspberry Pi 4 zrzut ekranu komputera niebieskiego ekranu

Qt jest często używany do tworzenia interfejsów graficznych. Qt zawiera biblioteki C ++ do tworzenia interfejsów graficznych, które mogą być kompilowane na różnych systemach operacyjnych.
Ponieważ kompilacja ta wymaga dużej mocy obliczeniowej, wskazane jest, aby procesory o stosunkowo niewielkiej mocy przeprowadzały prace deweloperskie i kompilacyjne na komputerze-hoście i dopiero wtedy ładowały gotową aplikację na komputer docelowy.

To jest przewodnik instalacji Raspberry Pi OS Lite na module obliczeniowym 4. Jako komputer roboczy używam Ubuntu 20, zainstalowanego na maszynie wirtualnej.

Jest to przewodnik do kompilacji krzyżowej Qt 5.15.2 dla Raspberry Pi 4 i instalowania go na module obliczeniowym 4. Jest to aktualizacja mojego postu na blogu Qt na Raspberry Pi 4, z tą różnicą, że tym razem używam Raspberry Pi OS Lite.

Jest to przewodnik do konfigurowania Qt-Creator do korzystania z krzyżowo skompilowanych bibliotek Qt dla Raspberry Pi 4 i tworzenia aplikacji dla Raspberry.

Oprogramowanie wbudowane - skrypty instalacyjne Qt cross compile dla Raspberry Pi 4 zrzut ekranu programu komputerowego

Na tej stronie udostępniamy linki do pobrania skryptów, aby automatycznie skonfigurować kompilację skrośną na Linux host i Raspberry Pi 4 oraz opis, jak z nich korzystać.

W tym blogu chciałbym przedstawić małą aplikację Qt Quick (qml) jako przykład połączenia Modbus przez TCP / IP.
W przykładach Qt znalazłem tylko przykłady QWidget dla połączeń Modbus, a po niedawnym utworzeniu do tego Qt Quick aplikacji, chciałbym podać jej odchudzoną wersję jako przykład.

Jeśli utworzyłeś aplikację Qt - lub jakąkolwiek inną aplikację - dla Raspberry Pi 4, często chcesz, aby aplikacja została wywołana natychmiast po ponownym uruchomieniu Raspberry po zakończeniu aplikacji.
Jest to często podejmowane za pomocą skryptów startowych, które można wprowadzić w różnych miejscach.
Jednak bardziej rozsądne jest ustawienie tego za pomocą systemd .

Zadanie polegało na napisaniu aplikacji Qt Quick (GUI) w celu przesłania nowego oprogramowania układowego do kontrolera dotykowego.
Oprogramowanie do przesyłania zostało dostarczone przez producenta w aplikacji .exe , która ładuje plik .bin na kontroler dotykowy.
Chciałem użyć klas Qt "QProcess", które mogą być używane do wywoływania i kontrolowania aplikacji powłoki. Po stronie Linuksa użyłem tego z powodzeniem kilka razy - ale na początku nie działało to w systemie Windows.

Oprogramowanie wbudowane - HDMI Monitor Settings zrzut ekranu programu komputerowego
Sterowanie ustawieniami monitora HDMI za pomocą ddcutil

Receptura Yocto na instalację ddcutil i zarządzanie ustawieniami monitora HDMI przez I2C.

Embedded Software - libgpiod żółty ekran z czarnym tekstem
Uwzględnij libgpiod w Yocto

Dołącz bibliotekę libgpiod do Yocto i użyj jej w swoim systemie wbudowanym.