I am currently working on a project of real time monitoring, control and optimisation of a system (SCADA), in an Internet of Things context. The acquisition of the data and the control of the assets will be done through REST api and notifications from an IoT platform (Cumulocity or Predix, not sure yet), itself collecting measures from the sensors and sending operations to the equipment.
The server application will then control the state of the system, set alarms, and make optimised decisions (plannings for the equipment for instance).
In order to test the behaviour of the system, the response to a decision and finding a good optimisation solution, I plan to also make a simulation of the system (maybe even a simulation of the real-time measures).
Finally, an HMI in Angular JS will be provided to the user for him to enter the user input data, follow the current state of the system/alarms and its history, and be notified of the decisions made.
I am not sure of the computation needed, but the simulation will probably be quite heavy, and the optimisation solution may be a bit heavy too.
A company would usually implement such an application in C, and it could also be done in Python (fast development is also needed), but I was thinking of doing it with Node.js. I found a JS library for discrete event simulation, Sim.js, but I don't know if this could handle a complex system simulation.
In short, do you see any reason why not use Node.js for that ? Does something alike has already been done, in IoT monitoring for instance ?
Thanks a lot for your help,
Layvier