Getting Started

GitHub PyPI DockerHub YouTube

DOIscientific DOIsoftware DOIdataset


SMIA is a software that implements an AAS-compliant Digital Twin (DT) that is based on a flexible manufacturing-centered ontology.

SMIA main logo

The features of the SMIA approach include:

  • free & open-source

  • standardized approach (compliant with consolidated standards: AAS, CSS, FIPA, OWL, etc.)

  • Ontology-based

  • easily customizable and extendable

  • self-configuration at software startup

  • containerized solution

Important

The SMIA software is developed as part of scientific research. If you use SMIA in scientific works, please cite the following articles.

Scientific contribution

E. Hurtado, A. Burgos, A. Armentia, and O. Casquero, Self-configurable Manufacturing Industrial Agents (SMIA): a standardized approach for digitizing manufacturing assets, Journal of Industrial Information Integration, vol. 47, p. 100915, Sept. 2025, doi: 10.1016/j.jii.2025.100915

Software contribution

E. Hurtado, I. Sarachaga, A. Armentia, and O. Casquero, An open-source reference framework for the implementation of type 3 Asset Administration Shells, Software Impacts, vol. 27, p. 100807, Apr. 2026, doi: 10.1016/j.simpa.2025.100807

Quick Start

New to SMIA? This section will guide you through getting started with the software quickly and easily.

1. Easy installation

SMIA provides open-source code, as well as various installation methods. We recommend using the pip package manager, which allows you to install it with a single command:

pip install smia

Learn more: Installation Guide

2. Configuration of CSS-enriched AAS Model

SMIA self-configures from a valid CSS-enriched AAS model. For its generation, it is recommended the AASX Package Explorer editor (learn how to install and configure it on the Installation Guide).

Learn how to generate valid models: AAS Development Guide

Tip

If you need to extend SMIA with increased autonomy (or add your own code), you can can refer to the SMIA Extension Guide.

3. Seamless deployment: Environment Builder

To automatically create deployment environments, we recommend using the dedicated SMIA Environment Builder tool, which is part of this documentation platform.

This tool generates valid SMIA deployment environments based on your choices (local environments, or virtualized environments using Docker Compose or Kubernetes). It allows you to attach AASX models for asset digitization through SMIA and to select the necessary infrastructure.

Access it from: SMIA Environment Builder

Tip

Especially for local environments, you can also follow the SMIA Start-up Guide.

4. SMIA in operation

SMIA agents are designed to be part of distributed systems, communicating via standardized FIPA-SMIACL messages. To verify that the SMIA agents are functioning properly, you can analyze directly the console or use one of the following tools:

  • SMIA Operator: extended agent that offers a graphical web interface to discover SMIA agents, and view their CSS-related information, and request CSS-related executions (completely abstracts the necessary FIPA-SMIACL interactions).

    Learn more: SMIA ecosystem: SMIA Operator.

  • SMIA PE: extended agent with autonomy to interpret and automatically execute flexible BPMN workflows.

    Learn more: SMIA ecosystem: SMIA PE.

  • Direct communication: Interact programmatically using FIPA-SMIACL messages when extending SMIA (see SMIA Extension Guide).

5. Recommended Next Steps

To learn more about the SMIA approach:

  • Guided Tutorial: Follow the Step-by-step tutorials to achieve comprehensive implementation cases.

  • Extend SMIA: Read the SMIA Extension Guide to add new logic: custom agent capabilities, services, or asset connections.

  • Analyze Use Cases: Check SMIA Use Cases to see real-world applications

  • Explore the Ecosystem: Look into the SMIA ecosystem for additional resources and tools available.

Documentation project structure

The SMIA project documentation repository is structured as follows:

SMIA User Guide: these guides helps with the usage of SMIA software and related tools.

SMIA Use Cases: these pages detail all the use cases developed within the SMIA approach.

SMIA Environment Builder: This page provides a tool for automating valid SMIA deployment environments.

API documentation: the entire documented source code of SMIA software.

Glossary: the glossary shows the list of terms relating to the SMIA approach.

Contributing: shows the different ways to contribute to the SMIA approach.

About the Project: general information about the SMIA approach (e.g. contact information).

Recommended Links: information related to SMIA approach is available in this section.

Code of Conduct: the definition of community standards for the participation of the contributors.

Release Notes: notes about all the releases and pre-releases of SMIA software development.

Additional resources

There are some additional resources offered within the SMIA approach. All of these resources are available in the GitHub repository.

AAS ontology reader

This tool contains the source code of a reader capable of analyzing an AAS model based on a given OWL ontology.

AASX Package Explorer Resources

This tool contains the JSON files to extend the AASX Package Explorer software with the Capability-Skill-Service (CSS) model.

CSS-SMIA ontology model

This tool contains the ontology for the Capability-Skill-Service (CSS) model in an OWL file. It also provides some ExtendedClasses implemented in Python.

SMIA Operator Agent

This tool provides a SPADE agent with an easy-to-use graphical interface. This agent enables to automatically discover available SMIA instances and their corresponding CSS-enriched information, as well as to request the execution of specific capabilities and assign them to the appropriate agents.