Processing MTConnect data using Azure IoT hub, Stream Analytics, Azure Functions and Power BI live reports

MTConnect is a protocol designed for the exchange of data between shop floor equipment and software applications used for monitoring and data analysis. This gives rise to a possibility of having an internet of things architecture for shop floor machine data processing and further analysis. In this post, we will discuss and implement a possible architecture for ingesting data from multiple CNC lathe machines in an Azure IoT hub, process it with Azure Stream Analytics and use Azure Table Storage, Power BI streaming datasets and Azure Service Bus Queue as data sinks. Further, we will process queue messages using an Azure Function App.

SOLID Principles

SOLID principles or the "first five principles" of object-oriented programming were named by Robert C. Martin and define very helpful guidelines for designing maintainable, extendable and testable code. In this post we will go through each of the SOLID principles and discuss them in detail using an actual example.

Factory Pattern Instantiations

One of the advantages of factory patterns is the flexibility they provide in terms of declaring the information required to instantiate a factory. In this post we will look at some of the methods of factory instantiation using config file, discuss their usage scenarios and also discuss how the DbProviderFactories decides which DbProviderFactory to instantiate.