Industrial Monitor - Raspberry Pi Monitor (svart) et nærbilde av et kretskort

HMI-prototyper

raskt og billig

Innebygd programvareutvikling

Profesjonelle løsninger

Innebygd programvare er dataprogramvare, skrevet for å kontrollere maskiner eller enheter som vanligvis ikke tenkes på som datamaskiner, vanligvis kjent som innebygde systemer.
Den er vanligvis spesialisert for den spesielle maskinvaren som den kjører på, og har tids- og minnebegrensninger.

Innebygd programvare Raspberry Pi - Yocto bygge Raspberry Pi 4 i et docker-miljø et skjermbilde av en datamaskin

Prosjektet gir et fleksibelt sett med verktøy og et rom der innebygde utviklere over hele verden kan dele teknologier, programstabler, konfigurasjoner og beste praksis som kan brukes til å lage skreddersydde Linux-bilder for innebygde enheter og IoT-enheter, eller hvor som helst et tilpasset Linux OS er nødvendig.

Innebygd programvare Raspberry Pi - Yocto Raspberry tilpasset splash-skjerm med fremdriftslinje, en hvit lastestang med svart tekst

Normalt, hvis du oppretter ditt egendefinerte linuxbilde med Yocto for en Raspberry Pi, ønsker du også å vise en egendefinert splash-skjerm med en fremdriftslinje.

Embedded Software - Yocto boot bringebær til Qt-applikasjon, et skjermbilde av en datamaskin

I denne veiledningen gir vi deg informasjon om hvordan du konfigurerer et Yocto-prosjekt for å installere Qt og et Qt-demoprogram for en Raspberry Pi 4 og deretter starter dette Qt-demoprogrammet automatisk.

Innebygd programvare Raspberry Pi - Yocto - Raspberry - PIGPIO - Qt et skjermbilde av et dataprogram
Inkluder PIGPIO-bibliotek og Qt- verktøykjede

Konfigurer Yocto til å lage en tilpasset Linux for Raspberry Pi 4 med integrasjon av pigpio-bibliotek, Qt og en verktøykjede for krysskompilering.

Embedded Software - VisionFive - Mender - Yocto et skjermbilde av en datamaskin
Del 1 – Grunnleggende oppsett av Yocto-miljøet

Del 1 av en serie artikler om hvordan man konfigurerer et Yocto-miljø for å opprette Yocto Linux med integrasjon av en Mender-tjener.

Nylig måtte jeg utvikle en applikasjon (kiosksystem) for / på en Raspberry Pi 4. Det spesielle med det var at 2 touch-skjermer skulle kobles til via HDMI, som måtte roteres 90 grader mot høyre. Så portrettformater, 2 skjermer oppå hverandre.
Å rotere skjermen og ordne den oppå hverandre forårsaket ingen problemer, da dette lett er mulig via brukergrensesnittet - en "Raspbian Buster med skrivebord og anbefalt programvare" ble installert.

På grunn av hyppig skriving eller overskriving av data, påvirkes levetiden til et SD-kort.

For eksempel anbefales det å skrive midlertidige data (f.eks. sensorverdier for komparative beregninger) til en RAM-disk for applikasjoner som ofte inneholder midlertidige data (f.eks. sensorverdier for komparative beregninger) som ikke lenger er nødvendige etter en omstart.

Du kan også bruke USB-C-grensesnittet til Raspberry Pi 4, som normalt brukes til strømforsyning, som et vanlig USB-grensesnitt.
I dette tilfellet skal imidlertid Raspberry levere strøm via GPIO-pinnene.

Innebygd programvare Raspberry Pi - Qt på Raspberry Pi 4 et dataskjermbilde av en blå skjerm

Qt brukes ofte til å utvikle grafiske grensesnitt. Qt inneholder C ++ -biblioteker for å lage grafiske grensesnitt som kan kompileres på ulike operativsystemer.
Siden denne kompileringen krever mye datakraft, er det tilrådelig for prosessorer med relativt lite kraft å utføre utviklingen og kompileringen på en vertsdatamaskin og først deretter laste inn det ferdige programmet på måldatamaskinen.

Dette er en veiledning for installasjon av Raspberry Pi OS Lite på Compute Module 4. Som arbeidsdatamaskin bruker jeg Ubuntu 20, installert i en virtuell maskin.

Dette er en veiledning for krysskompilering av Qt 5.15.2 for Raspberry Pi 4 og installasjon på Compute Module 4. Det er en oppdatering av blogginnlegget mitt Qt på Raspberry Pi 4, med den forskjellen at denne gangen bruker jeg Raspberry Pi OS Lite.

Dette er en veiledning for å konfigurere Qt-Creator til å bruke krysskompilerte Qt-biblioteker for Raspberry Pi 4 og å lage applikasjoner for bringebær.

Embedded Software - Qt krysskompilere oppsettskript for Raspberry Pi 4 et skjermbilde av et dataprogram

På denne siden gir vi nedlastingslenker for skript for automatisk å sette opp krysskompilering på linux-vert og Raspberry Pi 4 og en beskrivelse av hvordan du bruker dem.

I denne bloggen vil jeg gjerne gi en liten Qt Quick-applikasjon (qml) som et eksempel på en Modbus-tilkobling over TCP / IP.
I Qt-eksemplene har jeg bare funnet QWidget-eksempler for Modbus-tilkoblinger, og etter nylig å ha opprettet en Qt Quick-applikasjon for dette, vil jeg gjerne gi en slanket versjon av den som et eksempel.

Hvis du har opprettet en Qt-applikasjon - eller et annet program - for Raspberry Pi 4, vil du ofte at applikasjonen skal kalles umiddelbart etter at du har startet Raspberry på nytt etter at applikasjonen er fullført.
Dette er ofte forsøkt med start skript som kan legges inn på ulike steder.
Det er imidlertid mer fornuftig å sette opp dette via systemd .

Oppgaven var å skrive en Qt Quick-applikasjon (GUI) for å laste opp ny firmware til en berøringskontroller.
Opplastingsprogramvaren ble levert av produsenten i et .exe program som laster en .bin-fil på berøringskontrolleren.
Jeg ønsket å bruke Qt-klassene "QProcess", som kan brukes til å ringe og kontrollere shell-applikasjoner. På Linux-siden hadde jeg allerede brukt dette med hell flere ganger - men på Windows fungerte det ikke først.

Innebygd programvare - HDMI Monitor Settings et skjermbilde av et dataprogram
Kontroller innstillinger for HDMI-monitor med ddcutil

Yocto-oppskrift for å installere ddcutil og kontrollere innstillinger for en HDMI-monitor via I2C.

Embedded Software - libgpiod en gul skjerm med svart tekst
Inkluder libgpiod i Yocto

Inkluder libgpiod-biblioteket i Yocto og bruk det i det innebygde systemet.