Simple end to end streamed Single Page Application that minimize processing time using non-blocking asynchronous I/O and visualization time by pushing real-time events to a time series chart.
An automated advanced manufacturing equipment attaches a lens on an optical engine (a PCB with microelectronics that drives a laser).
The equipment accepts a tray of optical engines with attached lens. The machine takes 8 pictures of the attached lens at various angles and compares them against a reference after the process. The machine assigns a score (from 0 to 100) based on the slight variances in measurements between the actual image and reference. The higher the score, the closer the result is to the desired specifications. The MRSI_VISION.log file stores these results.
The events column of the "human-parsed-log.xlsx" contains the image and the results of its score. Each image file name represents a unique "measurement". So 8 unique measurements (images) and their resulting scores. Each series in the chart plot its own measurement. The catch is that, an engineer can update the set of 8 images when a batch is done. (Meaning, a given set of 8 will be in effect for a period of time than another 8 might be introduced in the log. You can distinguish this change by time increments).
Each image-set/series can simply be labelled using their image filenames but you can refer to the “filename-mappings.csv” to map them to nice names.
This solution works as follow:
- Upload a log file onto a web service/app.
- Parse and extract the scores from the raw log file.
- Generates a visualization that plots the scores onto a time series graph.
npm install
node bin/www
- In Google Chrome open: http://localhost:3000.
- Choose test data file "MRSI_VISION.LOG" located in the doc folder.
- Click the Upload button.
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request :D
This experiment is released under the MIT License.