Application
Configuration
La configuration de l'application smartCORE se compose des éléments suivants
- le fichier de configuration système (statique)
smartcore.json - le fichier de configuration de mesure (dynamique)
smartcore_dynamic.json
Dans les deux cas, le format JSON est utilisé.
Fichier de configuration système
Le fichier de configuration système smartcore.json contient d'une part les paramètres propres à l'application smartCORE et d'autre part les configurations de tous les modules système (voir la section Configuration des modules).
Paramètres de l'application
Le tableau suivant liste tous les paramètres de l'application
| Section | Paramètre | Obligatoire | Type de données | Plage de valeurs recommandée | Défaut | Description |
|---|---|---|---|---|---|---|
| log | loggingtype | Non | STRING | "Both", "Console", "File" | "File" | Mode d'enregistrement des messages d'erreur et des avertissements |
| log | filepath | Non | STRING | chemin de répertoire valide et accessible en écriture | "/sdi/log/" | Répertoire de stockage des fichiers journaux |
| log | maxFileCount | Non | INT | 1 - | 10 | Nombre maximal de fichiers journaux existants |
| log | maxFileSize | Non | INT | 1 - | 1024000 (1000 kB) | Taille maximale d'un fichier journal |
| scpi | port | Non | INT | 1 - | 5024 | Port TCP/IP du serveur SCPI intégré |
| - (niveau supérieur) | namespaceSeparator | Non | STRING | "." | Séparateur pour la représentation des hiérarchies de canaux | |
| - (niveau supérieur) | timeout | Non | INT | 1 - | 10000 (10 s) | Timeout pour le chargement des modules système |
Configuration système typique
En général, la configuration système contient le module configautoload,
qui charge la configuration de mesure, ainsi que le module SCPI, qui fournit une interface SCPI.
{
"log":{
"loggingtype":"Both",
"filepath":"/sdi/log/"
"maxFileCount":10,
"maxFileSize":1024000
},
"scpi":{
"port":5024
},
"namespaceSeparator":".",
"timeout":10000,
"plugins":[
"configautoload",
"scpi"
],
"modules":[
{
"module":"configautoload",
"factory":"configautoload",
"config":{
"once":true,
"configfilename":"smartcore_dynamic.json"
}
}
]
}
Fichier de configuration de mesure
Le fichier de configuration de mesure smartcore_dynamic.json, ou celui spécifiable dans le module configautoload sous configfilename - voir ci-dessus,
contient, outre le paramètre timeout connu de la configuration système, uniquement la configuration des modules de mesure (voir Configuration des modules).
Le fichier de configuration de mesure peut donc être considéré comme un complément du fichier de configuration système. Il faut toutefois noter que d'abord tous les modules de la configuration système sont instanciés, et seulement ensuite ceux de la configuration de mesure. De plus, l'ordre d'instanciation des modules au sein des deux configurations n'est pas défini.
Configuration des modules
La configuration des modules, aussi bien pour les modules système que pour les modules de mesure, s'effectue au moyen de deux paramètres
- la liste des classes de modules (-factories), sous la forme du tableau JSON
plugins - la liste des instances de modules, sous la forme du tableau JSON
modules
Alors que le tableau des classes de modules contient uniquement les noms de toutes les factories utilisées sous forme de chaînes de caractères, les entrées du tableau des instances de modules sont des objets JSON de la forme
{
"module":"ModuleInstance",
"factory":"modulefactory",
"config":{
< Module Configuration Parameters >
}
}