Python and "real time data processing"
This application prototype deals with real-time data monitoring
Made with Python/ Qt it is a skelleton for human-machine interface
For the UI using the popular pyQtgraph for fast data plotting
In the real life application this setup would require additional libraries for reading specific DAQ hardware
This amount of data is preferably handled via ethernet connection protocol (410 Mbit/s)
Monitoring app description
It is convenient to replace hardware related process within self-generated data stream(Demo Data)
higher sampling frequencies..tested up to 10kHz on multiple channels generated by real HW-modules worked fine
moreover multiple operations within the single thread, such as FFT or signal multiplications inclusive did the job flawlessly
It has been tested up to 50 FFT algorithms performed per application timer step of 100msec
I keep the window length on 27k values per channel, which in turns gives 2 Mb of Data/Channel: which means 10Mb is shown at any moment
This is a demanding task for the CPU therefore it runs locally
- General HMI Interface would consit out of several modules, here is the basic steup proposal
- (1) Connection settings: usually there for communication for hardware modules
- (2) Monitoring setup: additional paramteres which can be set in order to ajdust monitoring process
- (3) Status/Info/Logging window
- (4) KPI value reading
- (5) Real time data plotting