Eine echtzeitorientierte Sprache?
Was ist Echtzeit?
Zunächst müssen wir definieren, was Echtzeit bedeuten.
Natürlich hängt es davon ab, wie Ihr Werkzeug in der physischen Umgebung funktioniert reine Echtzeit konnte nicht effektiv durchgeführt werden, vor allem, weil es viele Abhängigkeiten von Dritten geben wird.
Wenn Sie mit Hilfe von Mikrocontrollern wie arduino wird die zu verwendende Sprache durch die Hardware begrenzt, aber bei komplexeren Dingen wie Raspberry Pi ist die Sprachauswahl sehr groß.
Granularität
Das hängt davon ab, was Sie messen und womit Sie arbeiten:
- Wettertemperaturen eine Lektüre alle 10 Minuten könnte ausreichen
- Größe oder Gewicht der Personen eine oder vielleicht vier am Tag lesen
- Serverstatus zwischen 1 Sekunde für die Fehlersuche und ca. 1 Stunde für einen ruhigen, unwichtigen Sekundärserver.
- Anzahl der Atomkollisionen : etwas Feineres...
Ereignisbasiertes Lesen
Die richtige (bessere) Art der Datenerfassung basiert auf Wertänderungsereignis ... wenn das Gerät es zulässt.
Ihr Werkzeug muss nicht Umfrage Werte vom Gerät, aber das Gerät muss Werte an Ihr Tool senden, wenn sie sich ändern.
Dies könnte durch die Verwendung einer Hardwareunterbrechung Trigger oder durch Verwendung von Port-Protokollen wie RS-232 auf einer seriellen Schnittstelle lauschen, zum Beispiel.
Überwachung der Umgebung
Der letzte Punkt, vor dem gewarnt werden muss, ist wie der rechtmäßige Nutzer mit .
Wenn Sie ein eigenständiges Gerät bauen, wie Roboter können Sie Grafikbibliotheken verwenden, um mit dem Touchscreen zu interagieren.
Wenn Sie einen webbasierten Monitor entwickeln, müssen Sie bedenken, dass der Client ein alter 800x600 monochromen Bildschirm, mit schlechter Internetverbindung und kleinem Prozessor... Aber je nach Endziel, wenn Sie mit Kunden interagieren, könnten Sie für starke Hardware und starke Internetverbindungen sorgen. Auf jeden Fall muss man auf Verbindungsverluste und Verzögerungen bei der Kommunikation zwischen Server und Client achten. Es gibt meist Abhängigkeiten von Drittanbietern.
Welche Programmiersprache?
Von dort aus ist die Auswahl an Sprachen groß und hängt eindeutig von folgenden Faktoren ab
- Ihr Wissen.
- gewünschte Granularität (natürlich auch ereignisbasiert)
- die Zeit, die Sie für die Erstellung des Werkzeugs benötigen (Geld;)
- Verzögerung, Mitarbeiter...
- Art des Geräts
- Art der Überwachung
- einige andere politische Gründe
Sie können eine Echtzeit-Überwachungsmaschine aufbauen, indem Sie bash y sql nur, ich habe hochentwickelte Motoren gesehen, die unter postgresql nur... Ich habe persönlich einen webbasierten Solarenergie-Monitor gebaut, indem ich perl , mysql y javascript .