Contenu personnalisé
Forkez les modèles et templates intégrés ou écrivez depuis zéro. Utilisez le registre local ~/.miravo/ et les couches de résolution de contenu.
Créez des modèles et templates personnalisés en forçant le contenu intégré ou en écrivant depuis zéro.
Résolution de contenu
Section intitulée « Résolution de contenu »Miravo résout les modèles et templates à travers trois couches par ordre de priorité :
- Répertoire courant — Fichiers
.twin.yamlet.miravo.yamldans le répertoire de travail - Registre local —
~/.miravo/registry/local/{models,templates}/ - Intégré — Livré avec Miravo via le package
@miravo/content
Un modèle dans le répertoire courant remplace le même nom dans le registre local, qui remplace le contenu intégré.
Forker le contenu intégré
Section intitulée « Forker le contenu intégré »La commande miravo fork copie le contenu intégré dans le registre local pour personnalisation.
Forker un modèle
Section intitulée « Forker un modèle »miravo fork model centrifugal-pumpCrée ~/.miravo/registry/local/models/centrifugal-pump.twin.yaml. Éditez ce fichier pour personnaliser les paramètres, membres, générateurs, défaillances ou cycle de vie.
Forker un template et ses modèles
Section intitulée « Forker un template et ses modèles »miravo fork template smart-factoryCopie le template et tous les modèles référencés dans le registre local.
Forker les modèles uniquement
Section intitulée « Forker les modèles uniquement »miravo fork template smart-factory --models-onlyCopie uniquement les modèles référencés par le template, pas le fichier template lui-même.
Écraser l’existant
Section intitulée « Écraser l’existant »Par défaut, fork ignore les fichiers qui existent déjà. Utilisez --force pour écraser :
miravo fork model centrifugal-pump --forceÉcrire depuis zéro
Section intitulée « Écrire depuis zéro »Modèle personnalisé
Section intitulée « Modèle personnalisé »Créez un fichier .twin.yaml dans votre répertoire de travail ou registre local :
schema_version: "2"model: name: my-sensor description: "Custom temperature/humidity sensor"
parameters: temp_center: type: float default: 22.0 unit: degC
members: temperature: kind: variable data_type: Double access: read unit: degC generator: type: noise center: "$param.temp_center" stddev: 0.3
humidity: kind: variable data_type: Double access: read unit: "%RH" generator: type: mean-reverting-noise mean: 45 tau: 20 sigma: 2Template personnalisé
Section intitulée « Template personnalisé »Créez un fichier .miravo.yaml :
kind: MiravoTemplateversion: "1"name: "My Custom Plant"description: "Custom sensor array"
namespace: enterprise: MyCompany site: test-lab
areas: - name: floor-1 lines: - name: zone-a twins: - model: my-sensor count: 10 variation: 0.1
settings: tick_interval_ms: 1000 time_multiplier: 1Exécutez-le :
miravo start --template ./my-plant.miravo.yamlStructure du registre local
Section intitulée « Structure du registre local »~/.miravo/ registry/ local/ models/ # Fichiers .twin.yaml personnalisés templates/ # Fichiers .miravo.yaml personnalisés state/ # Snapshots de simulation persistés daemon/ # Registre des processus en arrière-planLe répertoire de base est configurable avec MIRAVO_HOME :
MIRAVO_HOME=/data/miravo miravo startValider sans exécuter
Section intitulée « Valider sans exécuter »Utilisez --dry-run pour valider un template et ses modèles référencés sans démarrer la simulation :
miravo start --template ./my-plant.miravo.yaml --dry-runCela détecte les erreurs de schéma, les modèles manquants, les références de paramètres invalides et les problèmes d’ordre des membres.