Thinking of my previous blog about our long-term customer in the oil and gas industry got me walking down memory lane regarding other customers, this time one in building automation, which I was involved with in the early days of Objectivity.
This customer has a long history with Objectivity during which it has grown through various corporate and technology acquisitions in several different countries. Although their automation system has evolved over time, Objectivity/DB has remained as the persistent object store at the heart of it.
The system monitors networks of sensors for heating, air conditioning and ventilation, fire detection, intrusion, and other equipment. The main goals of the system are the following: provide investment protection well into the future while protecting past investments; support expanding needs as new technology trends in information, communication and building automation emerge; and ensure compatibility across a wide range of equipment from many different suppliers. Deployments of the system range from single buildings to large distributed campuses and airports.
Objectivity/DB’s object model support is ideally suited for storing and managing the complex configurations of equipment, sensors, and all the network connections between them. Support of object versions helps manage the individual pieces of equipment as they evolve over time. Direct support of connections between equipment and sensors in the network, modeled as associations in the database, allow for very rapid navigational queries, such as how are devices connected together? What is the shortest path between any two devices? Equipment configurations, typically modeled as hierarchies, are easily stored as objects and associations in the database, supporting rapid alarm and configuration management.
The original system was designed to run on Windows workstations and written in C++. Objectivity/DB’s C++ API and Data Definition Language were a good fit for this requirement. Objectivity/DB’s distributed architecture supports both distributed processing and data, another good fit for this system’s distributed nature.
One of the reasons why this customer chose an object-oriented approach was the fact that the data (objects) that represent the equipment and sensors will contain many variants, so inheritance and polymorphism play a big part in the development of the system.
Although this system has been around for twenty years, it remains modern by evolving to keep pace with acquisitions and new technologies. Over the years Objectivity has categorized these types of systems as monitor, analyze, respond systems; however, today they would certainly fit the definition within the Industrial Internet of Things. Different terms, but the same concept, with Objectivity continuing the lead the way in innovation.
Corporate VP of Product