Metrology.NET®

Detailed Overview

Metrology.NET® is a new modular approach to metrology automation and data management. It’s designed to be a system of systems, bridging the gap between the multiverses of software tools we currently use in the calibration lab. Using the Lego® analogy, the heart of Metrology.NET® is the connector layer between each Lego®; the standardized connector layer that joins each block to the other, allowing the user to build and reconfigure “pieces parts” of software blocks into their total solution.

Our goal in creating Metrology.NET® was not to build yet another calibration platform. Our goal, as a software company, was to get all of our IP contained in our automated calibration procedures into a single silo. We wanted to continue to support our customers using Fluke’s MET/CAL®, Edison’s MUDCATS, Microsoft’s .NET® and various other platforms, but our problem was the support and maintenance of all the software in all the platforms. Already being the most efficient software automation company in the industry, our only option was to get all of our IP into one platform.

As we went through the discovery process, we realized the best solution was not to build complex conversion tools. NO! The best solution was to completely retool our automation into smaller pieces. It was going to be costly, but worth the effort for several reasons:

  1. Integration: Metrology.NET® is designed to be integrated with metrology software tools.
  2. Stages: Migration to Metrology.NET® is done in stages, meaning no loss of revenue or production—every system we have can continue to run, as is, until it is upgraded. Over time, each island of metrology software can be upgraded and integrated into the bigger system.
  3. Reuse: As new tools are built, tested and added to the Metrology.NET® system, they are available to all procedures and applications adapted to Metrology.NET®.
  4. Adaptable: Because the system is designed to be abstract, it is easily adapted to new standards, hardware and measurement techniques. It allows support for the unknown based on a set of know communication rules.
  5. Independence: The real power of Metrology.NET® is its platform and language independence. This allows you to use the best tool for the job, as well as leverage software and samples provided by the manufacturer.
  6. The Future: Metrology.NET® was designed to be timeless, merging the past with the present. Its message based architecture allows for easy integration of existing software, as well as platforms of the future.

User Interface Clients Unlike most systems, Metrology.NET® allows the technician to control and interact with the system from several different types of clients. User access to the system will be controlled through the data servers from any computer or device that supports HTML.
SMART-Flow


Agents The data collection engines of Metrology.NET® are comprised of intelligent agents, designed to operate semi-autonomously. They are designed to download a set of test points, execute them locally and push the data back to the Metrology.NET® data servers. These “agents” perform all of the actions required to collect the data for each test point.

Each agent module knows how to control the equipment (assets) to which they are physically connected. As the heart of the system, agents are programmed to specifically employ the hardware they are connected to and make the accurate measurements. Agents contain the knowledge of how to perform specific metrology tests and can be written in any language.

To be 100% reusable, agents perform three types of tasks:

  1. Test Process Drivers are designed to process test points controlling both the UUT and all the standards. They are designed to be the worker bees of the calibration lab. They pull test points from a service, execute them and save the results back to the service.
  2. Measurement Drivers are designed to perform specific measurement tasks. They receive commands through a message, perform the task and then return the results to the calling tool via message. Each driver is designed to perform high level metrology functions, controlling one or more standards.
  3. Command Drivers are the low level drivers that interact directly with the hardware. They are implemented with command messaging and operate similar to the measurement drivers.

Because Metrology.NET® interacts with each type of driver, individually based on its interface, there are no specific requirements for its individual implementation. Ideally, the drivers should be written where the Test Process Drivers call the Measurement Drivers who intern Command Drivers; but with Metrology.NET® does not require and specific implementation.


Services Metrology.NET® requires services for the agents and clients to consume. The main service is the data server, where the test points, work orders and results are stored and maintained. Agents interact with the data service using a standardized REST based communications standard and JSON packages.JSON-REST-HTTP-300x136

The data server will serve as the Metrology Bus Controller, where all the agents register themselves and all the processes they support. Other systems can request information about the test processes and agents they would like to utilize. Agents can then connect to the agents and consume their services and test processes.