loading experience

Avalonia UI

Avalonia su Linux embedded: interfacce per pannelli e macchinari

Applicazioni .NET a schermo intero su schede Linux, senza ambiente desktop, per pannelli operatore e dispositivi industriali.

Avalonia su Linux embedded: interfacce per pannelli e macchinari

Molti dispositivi industriali hanno uno schermo touch e una scheda Linux: pannelli operatore, chioschi, strumenti di misura. Avalonia può disegnare l'interfaccia direttamente sullo schermo, senza un ambiente desktop, mantenendo C# e XAML.

Si sviluppa sul PC e si distribuisce sulla scheda senza cambiare codice.
Si sviluppa sul PC e si distribuisce sulla scheda senza cambiare codice.

Avvio senza desktop

Il pacchetto per il framebuffer di Linux permette di avviare l'applicazione disegnando direttamente tramite DRM o framebuffer, con input da touch screen.

public static class Program
{
    public static int Main(string[] args)
    {
        var builder = BuildAvaloniaApp();

        // sul pannello: nessun desktop, si disegna direttamente sullo schermo
        if (args.Contains("--drm"))
            return builder.StartLinuxDrm(args);

        // sul PC di sviluppo: finestra normale
        return builder.StartWithClassicDesktopLifetime(args);
    }

    public static AppBuilder BuildAvaloniaApp() =>
        AppBuilder.Configure<App>().UsePlatformDetect().LogToTrace();
}

Lo stesso progetto gira in finestra sul PC dello sviluppatore e a schermo intero sul dispositivo: si sviluppa e si prova in modo comodo, si distribuisce sulla scheda.

Pubblicazione per ARM

dotnet publish -c Release -r linux-arm64 --self-contained true -p:PublishAot=true

Con Native AOT l'applicazione si avvia in fretta anche su processori modesti e non richiede il runtime .NET installato sulla scheda.

Progettare per il campo

  • Touch: pulsanti grandi, niente interazioni che richiedono il passaggio del mouse.
  • Leggibilità: contrasto alto e caratteri grandi, perché la luce in reparto è imprevedibile.
  • Robustezza: avvio automatico come servizio di sistema e riavvio in caso di errore.
  • Aggiornamenti: un meccanismo di aggiornamento remoto sicuro, pensato fin dall'inizio.

Unito ai protocolli industriali come OPC UA e Modbus, Avalonia permette di realizzare interfacce macchina moderne con le stesse competenze usate per i gestionali.

Commenti (0)

Nessun commento ancora.

Lascia un commento