Real Time Logic bringt das immense Potential des Internets auf embedded Systeme. Es stehen vollständige Implementationen von einem Web-Applikations-Server und SSL/TSL Stack speziell für die Bedürfnisse von Embedded Systemen entwickelt, zur Verfügung. Geliefert wird die gesamte Systemsoftware im vollständigen Sourcecode.
Barracuda ist ein embedded Web- Applikations-Server der sich durch seine einfache Integration und seine Plug-In Architektur auszeichnet.
Mit Barracuda lassen sich einfach Monitor- und Steuerfunktionen für embedded Devices schnell realisieren. Der umfangreiche Funktionsumfang lässt quasi keine Wünsche mehr offen, das API ist wohl durchdacht und die Software ausgereift.
Das Plug-In basierte Barracuda Embedded Web Server SDK vereinfacht und verkürzt den Entwicklungszyklus für Geräte mit Bedarf an Remote-Management und / oder Anzeige erheblich.
Damit können sog. Full-Stack Web-Entwicker mit aktuellen Web-Technologien wie LSP, HTML, CSS, JavaScript und allem dazwichen wie z.B. Ajax, REST und WebSockets moderne Webseiten entwickeln ohne sich um die embedded Seite kümmern zu müssen. Den embedded Backend Teil übernimmt der Embedded Systems Engineer losgelöst davon.
Lassen Sie sich beraten, nutzen Sie unser Formular, wir melden uns umgehend bei Ihnen zurück. Oder rufen Sie an: +49 251 98729-0
NEWS
28.07.2020
Schnellere Firmware-Entwicklung mit dem Barracuda App Server
DIeser Beitrag zeigt wie einfach es ist mit dem Barracuda App Steuerlogik in einem FreeRTOS basiertem embeded System zu entwickeln. Und das ganz ohne Übersetzungsvorgänge oder Downloads von neuer Firmware während der Entwicklung.
Ohne C/C++ zu verwenden, zeigen wir auf, wie man interaktiv IoT-Firmware erstellt, die eine LED einschaltet und über einen Online-IoT-Dienst eine SMS versendet, wenn eine Taste gedrückt wird.
Die im Barracuda App Server enthaltene Hochsprache Lua eignet sich wirklich gut für die Ausführung auf eingebetteten Systemen, einschließlich Mikrocontrollern. Vielleicht haben Sie bereits andere Hochsprachen wie Python verwendet, dann werden Sie feststellen, dass Lua der Sprache Python sehr ähnlich ist. Im Allgemeinen haben Hochsprachen, einschließlich JavaScript, viel gemeinsam. Wir bezeichnen Lua gerne als Hochsprache und nicht als Skriptsprache, da der LUA-Code in Maschinencode übersetzt wird. Der Maschinencode wird jedoch auf einer virtuellen Lua-Maschine ausgeführt und nicht nativ auf dem Mikrocontroller. Sie werden feststellen, dass in LUA codierte Software schnell ist, wenn LUA richtig verwendet wird.
Der wirkliche Vorteil von Lua ergibt sich, wenn in C-Code implementierte Echtzeitmodule mit in Lua entworfener Steuerlogik gemischt werden. Die dynamische Natur von Lua ermöglicht es den Entwicklern, Steuercode in einem eingebetteten Gerät interaktiv zu testen, ohne neue Firmware zu erstellen und hochladen zu müssen.
Die Flexibilität von Lua zusammen mit seiner Fähigkeit, die Entwicklungszeit erheblich zu beschleunigen, kann jedem Unternehmen, das den Entwicklungprozesse optimieren möchte, sehr zugute kommen.
In dem folgenden Video-Tutorial werden wir aufzeigen, wie Lua die interaktive Entwicklungszeit eines IoT-fähigen Geräts ohne Bildschrim erheblich beschleunigen kann. Wir werden jedoch während des interaktiven Entwicklungsprozesses eine webbasierte IDE und den Barracuda App Server verwenden, um die Entwicklungszeit zu beschleunigen. Wenn die Entwicklung abgeschlossen ist, wird die webbasierte IDE entfernt und die endgültige, in Lua implementierte IoT-Anwendung wird als ZIP-Datei in das Firmware-Image eingebettet.
Software-Struktur auf dem embedded System
Von der interaktiven Entwicklung zum fertigen Produkt
Das folgende Video zeigt den gesamten Entwicklungsprozess von der schnellen interaktiven Entwicklung bis zur Erstellung der endgültigen Firmware-Version. Stellen Sie sicher, dass Sie sich das gesamte Video ansehen, um den Entwicklungsprozess zu verstehen!
Wir verwenden im Video-Tutorial unten ein ESP32, aber Lua kann auf den meisten eingebetteten Systemen laufen. Sie können dem Video-Tutorial mit Ihrem eigenen ESP32 folgen, wenn Sie den Barracuda App Server für ESP32 installieren.
Python mag der "König" des Desktops sein, aber Lua ist für embedded Systeme die beste Lösung. Das Hauptaugenmerk von Python liegt darauf, eine generische und einfach zu benutzende Kommandozeilen-Skriptsprache zu sein, während Lua als C-Bibliothek konzipiert ist, deren Hauptaugenmerk darauf liegt, einfach in ein größeres Programm integriert werden zu können. Lua findet sich in vielen Spielen wie World of Warcraft. Lua wurde traditionell ausgewählt, wenn es auf Geschwindigkeit und Kompaktheit ankommt. Entwickler finden Lua im Allgemeinen viel schneller und weniger ressourcenhungrig als Python. Ein Entwickler, der Python kennt, wird es leicht finden, Lua zu lernen, da beide Sprachen ähnlich sind.
Warum sollten Sie Lua in embedded Systemen verwenden?
Die Programmiersprachen C/C++ dominieren bei der Programmierung eingebetteter Systeme, aber Entwickler stoßen oft auf Probleme wie Pufferüberläufe, Speicherlecks und andere Speicherfehler. Mit LUA vermeiden Sie diese Probleme, insbesondere bei größeren Projekten, an denen viele Computerprogrammierer mit unterschiedlichen Fähigkeiten beteiligt sind.
LUA abstrahiert die Details für die zugrundeliegende Mikrocontroller-Hardware. Anstatt sich um die Bits und Bytes zu kümmern, greift ein Entwickler einfach auf Methoden eines peripheren Objekts zu, um die Hardware zu steuern. Die Hardwaresteuerung erfolgt über ein sogenanntes LUA-Binding. Die Abstraktion der Hardwareschicht ermöglicht es den Entwicklern, sich auf die Anwendungsspezifika und nicht auf die Funktionsweise der darunterliegenden Hardware zu konzentrieren.
SIe möchten LUA schnell erlernene, kein Problem. Hier unten auf der Webseite finden Se die Lektion "Learn Lua in 15 Minutes"