2016-05-11 8 views
1

Ich arbeite derzeit an einem Projekt zur Echtzeitüberwachung, -steuerung und -optimierung eines Systems (SCADA) in einem Internet of Things-Kontext. Die Erfassung der Daten und die Kontrolle der Assets erfolgt über REST-API und Benachrichtigungen von einer IoT-Plattform (Cumulocity oder Predix, noch nicht sicher), die selbst Maßnahmen von den Sensoren sammelt und Operationen an die Ausrüstung sendet.Node.js für IoT-Überwachung, Optimierung und Systemsimulation

Die Server-Anwendung wird dann den Systemstatus steuern, Alarme setzen und optimierte Entscheidungen treffen (beispielsweise Planungen für die Ausrüstung).

Um das Verhalten des Systems, die Antwort auf eine Entscheidung und die Suche nach einer guten Optimierungslösung zu testen, plane ich auch eine Simulation des Systems (vielleicht sogar eine Simulation der Echtzeit-Messungen).

Schließlich wird dem Benutzer ein HMI in Angular JS zur Verfügung gestellt, damit er die Benutzereingabedaten eingeben, den aktuellen Zustand des Systems/der Alarme und seine Historie verfolgen und über die getroffenen Entscheidungen informiert werden kann.

Ich bin nicht sicher, ob die Berechnung benötigt, aber die Simulation wird wahrscheinlich ziemlich schwer sein, und die Optimierung Lösung kann auch ein bisschen schwer sein.

Ein Unternehmen würde in der Regel eine solche Anwendung in C implementieren, und es könnte auch in Python (schnelle Entwicklung wird auch benötigt), aber ich dachte daran, es mit Node.js zu tun. Ich habe eine JS-Bibliothek für die diskrete Ereignissimulation gefunden, Sim.js, aber ich weiß nicht, ob dies eine komplexe Systemsimulation behandeln könnte.

Kurz gesagt, sehen Sie einen Grund, warum Sie Node.js nicht dafür verwenden? Ist bereits etwas Ähnliches gemacht worden, zum Beispiel beim IoT-Monitoring?

Vielen Dank für Ihre Hilfe,

Layvier

+0

Meiner Meinung nach hat die Frage einen gewissen Wert und verdient kein Down-Voting. (Es sitzt in diesem Moment bei -2). – sg7

Antwort

0

Ihre Frage ist ein bisschen general, aber ich werde versuchen, hilfreich zu sein. Ich denke, dass Sie ein paar Dinge fragen:

  1. Ist node.js eine tragfähige Plattform für die Entwicklung/Skalierung
  2. Ist sim.js eine tragfähige Rahmen Simulation zu schaffen und gibt es Alternativen

Letztendlich Sie müssen entscheiden, was für Ihr Projekt wichtig ist.

Für die erste Frage gibt es viele Beispiele von node.js in Produktionssystemen verwenden. Wie gut funktioniert es umstritten und Anwendungsfall spezifisch sein kann, also werde ich verweise nur auf verwandte Fragen: How to decide when to use Node.js?

Für die zweite Frage, einige Dinge, die Sie wie sim in einem Rahmen aussehen könnte.js umfassen

a) wie viel aktiver Entwicklung ist

Sie können für die letzten Commit Datum im Quellcode (Vor 5 Jahren) buchen, getan: source on github

b) wie viel Unterstützung bietet die Gemeinschaft bieten

Sie für die Diskussion in der Gemeinde aussehen kann (5 Themen im Laufe der Jahre): google group

c) hat die Lizenz Arbeit f oder Ihre Anwendung

Die Lizenz ist LGPL nach simjs.com, die für Sie kann oder auch nicht: does the lgpl allow me to do this

Abhängig von der Plattform, die Sie verwenden möchten, kann es alternative simulierte Datenquellen, die Sie verwenden können, oder anpassen auf deine Bedürfnisse. Zum Beispiel Predix machinedata-simulator aber es gibt wahrscheinlich viele andere.

Hoffe, dass hilft ein bisschen.

0

Ja, Node.js ist ein großartiges schnelles Framework für SCADA.

Ist bei der IoT-Überwachung bereits etwas Ähnliches gemacht worden?

Ja!

a) Kommerziell wird node.js in myScada - voll entwickeltes SCADA-System verwendet!

b) Sie können auch Quellcode für SCADA/HMI Knotenmodul für node.js auf GitHub zu überprüfen: https://github.com/vytronics/vytronics.hmi

c) oder Probe HMI SCADA Projekt https://github.com/vytronics/vytronics.project - Multi-Plattform-Unterstützung von Raspberry Pi!