While I was working for Science [&] Technology: Vision B.V. my colleague approached me and asked me if I could go and talk to AkzoNobel. They just bought BASF Industrial Coatings and wanted to create a online tool to find Salcomix coatings. They wanted to find a way to do the mixing from this online tool with an Automated Dosing Unit (ADU). Therefore they approached us and eventually I ended up working on this project.
Because communicating with a device from a website is normally not possible, I had to use a tool that enabled this. This was called the Instrument Manager. Eventually I had to work on a new version that was more generic, could be used company-wide and contained multiple instruments (scales, spectrometers and ADUs) and was easily extendible with new devices. This was later named the Instrument Hub.
The whole system consisted of three major components, namely the ADU Driver, Instrument Manager and the Website.
Via the website a customer could browse and search for a certain color. This website was created using the Angular framework and Typescript. It returned a formula which could then be used for mixing. However, normally you cannot communicate with hardware devices from a website. Therefore, the Instrument Manager was created and was running on the customer's computer as local server. The Instrument Manager was connected to the online tool via SignalR. The Instrument Manager contained a plugin to communicate with the driver via the Universal Dispenser Communication Protocol. I was responsible for the webpage communicating with the Instrument Manager, the parts of the Instrument Manager involving the communication with the ADU plugin and the ADU plugin itself.
Later I worked on a newer and better version of the Instrument Manager, namely the Instrument Hub. This program again acted as a server on the local machine. The difference with the old version is that this was more easily extendible with Dependency Injection and only contained the core functionalities of the devices and no logic, so projects could profit from each other when one had added a new device to the application. For this project I was also performing managing tasks.
See summary.
Go back
Show: All Projects
Show: Game Projects
Show: Software Projects