Documentation

Arnodiqa est une application de bureau pour Windows. Cette documentation décrit chaque tâche dans l'application, avec les étapes, des captures d'écran et un court enregistrement. Pour les bancs de test sans écran et pour les pipelines, la ligne de commande est décrite sous Automatisation et CI.

Créer un projet, démarrer la mesure, la Trace avec un filtre, une trame avec ses signaux et un signal dans Graphics.

La fenêtre principale

Barre d'outilsMenu du projet, Start et Stop (F9, Échap), état et durée de la mesure, mode de travail (bus simulé, bus réel ou hors ligne), recherche de commandes (Ctrl+K), charge de bus par canal, aide et thème.
DesktopsAnalysis (Trace et Write), Messages, Signals (Graphics, Data, Statistics), Stimulation (Interactive Generator) et Project (explorateur de projet et Simulation Setup).
FenêtresWindow ajoute des fenêtres. Vous pouvez déplacer et ancrer les fenêtres ; Layout enregistre la disposition.
Fenêtre WriteMessages du système, des scripts (onglet Program) et des tests (onglet Test).
Barre d'étatÉtat, connexion au moteur (engine), nombre d'événements, événements par seconde, tampon et journalisation.

Les captures d'écran et les enregistrements suivent le thème de ce site. Cliquez sur une image pour l'agrandir.

Ouvrir un projet, créer un projet et ajouter une base de données

Un projet regroupe dans un seul fichier YAML les réseaux, les bases de données, le Measurement Setup, les panneaux (panels) et les nœuds de simulation.

  1. Sans projet chargé, Arnodiqa ouvre la page d'accueil (Start). New project présente les modèles, Examples les exemples et Recent projects les derniers projets utilisés.

    Ouvrir un projet, créer un projet et ajouter une base de données, étape 1Ouvrir un projet, créer un projet et ajouter une base de données, étape 1
  2. Cliquez en haut à gauche sur le menu du projet (le bouton portant le nom du projet ; sans projet, il affiche No project). Choisissez New project… pour créer un projet ou Open project… (Ctrl+O) pour ouvrir un fichier de projet existant (.yaml).

    Ouvrir un projet, créer un projet et ajouter une base de données, étape 2Ouvrir un projet, créer un projet et ajouter une base de données, étape 2
  3. Dans la boîte de dialogue New project, saisissez le nom du projet sous Name, choisissez le dossier du projet sous Folder (avec Browse…) et un modèle sous Template, par exemple Full demo (CAN FD, CAN, panel, diagnostics). Cliquez sur Create.

    Ouvrir un projet, créer un projet et ajouter une base de données, étape 3Ouvrir un projet, créer un projet et ajouter une base de données, étape 3
  4. Le projet est chargé et son nom apparaît dans la barre d'outils. Sur le desktop Project, l'explorateur de projet affiche les réseaux, les bases de données, le Measurement Setup, les panneaux et les nœuds de simulation ; le Simulation Setup se trouve à droite.

    Ouvrir un projet, créer un projet et ajouter une base de données, étape 4Ouvrir un projet, créer un projet et ajouter une base de données, étape 4
  5. Les bases de données du projet figurent sous Databases, ici powertrain.dbc pour PowerTrain et comfort.dbc pour Comfort. Le crayon à côté d'un fichier DBC ou LDF ouvre le Database Editor ; la corbeille retire la base de données du projet, le fichier lui-même est conservé.

    Ouvrir un projet, créer un projet et ajouter une base de données, étape 5Ouvrir un projet, créer un projet et ajouter une base de données, étape 5
  6. Pour ajouter une base de données, cliquez sur le + à droite de Databases ou sur le + à côté d'un réseau. Dans Add database, choisissez le réseau (ici Comfort), cliquez sur Choose… et sélectionnez un fichier DBC, LDF (pour un réseau LIN), ARXML ou FIBEX.

    Ouvrir un projet, créer un projet et ajouter une base de données, étape 6Ouvrir un projet, créer un projet et ajouter une base de données, étape 6
  7. Si le fichier se trouve hors du dossier du projet, choisissez Copy it into the project folder (une copie à côté du fichier de projet) ou Reference it where it is (le projet désigne le fichier par un chemin relatif, par exemple ../Shared databases/body_extra.dbc). Cliquez sur Add database.

    Ouvrir un projet, créer un projet et ajouter une base de données, étape 7Ouvrir un projet, créer un projet et ajouter une base de données, étape 7
  8. Arnodiqa enregistre puis recharge le projet : la base de données apparaît sous Databases pour Comfort, et Trace, Data et Graphics connaissent aussitôt ses messages.

    Ouvrir un projet, créer un projet et ajouter une base de données, étape 8Ouvrir un projet, créer un projet et ajouter une base de données, étape 8
Arnodiqa reconnaît un fichier FIBEX, mais ne le charge pas comme base de données d'un réseau ; un message vous l'indique lors de l'ajout.

Choisir le matériel ou utiliser le bus virtuel

Chaque réseau du projet est affecté à un canal : un canal d'une interface ou du bus virtuel.

  1. Sur le desktop Project, l'explorateur de projet indique sous Networks l'affectation de chaque réseau, par exemple → virtual vcan1 · Virtual CAN Bus. Cliquez sur l'icône Hardware configuration à droite de Networks.

    Choisir le matériel ou utiliser le bus virtuel, étape 1Choisir le matériel ou utiliser le bus virtuel, étape 1
  2. La fenêtre Hardware affiche sous Channel mapping le canal (colonne Hardware) et l'état de chaque réseau, et sous Interfaces, pour chaque pilote, s'il est disponible et quels canaux il a trouvés. Cliquez sur Rescan après avoir branché une interface.

    Choisir le matériel ou utiliser le bus virtuel, étape 2Choisir le matériel ou utiliser le bus virtuel, étape 2
  3. Pour chaque réseau, choisissez dans la liste sous Hardware un canal d'une interface connectée, un canal du bus virtuel (Virtual CAN 1 …) ou Virtual network (Comfort). L'affectation s'applique immédiatement ; cliquez sur Save project pour mettre à jour le fichier de projet.

    Choisir le matériel ou utiliser le bus virtuel, étape 3Choisir le matériel ou utiliser le bus virtuel, étape 3
  4. L'explorateur de projet affiche la nouvelle affectation à côté du réseau (→ virtual Comfort). Un canal introuvable au démarrage y apparaît comme not connected.

    Choisir le matériel ou utiliser le bus virtuel, étape 4Choisir le matériel ou utiliser le bus virtuel, étape 4

Démarrer et arrêter une mesure

La barre d'outils, la barre d'état et la fenêtre Statistics indiquent l'état de la mesure et la charge de bus.

  1. Cliquez sur Start dans la barre d'outils ou appuyez sur F9. La flèche à côté de Start propose Start measurement without logging.

    Démarrer et arrêter une mesure, étape 1Démarrer et arrêter une mesure, étape 1
  2. Pendant la mesure, l'état indique Running avec la durée de mesure, puis la charge de bus par canal. La Trace se remplit. La barre d'état en bas affiche le nombre d'événements, les événements par seconde et le remplissage du tampon.

    Démarrer et arrêter une mesure, étape 2Démarrer et arrêter une mesure, étape 2
  3. La charge de bus apparaît dans la barre d'outils et dans la barre d'état. La fenêtre Statistics du desktop Signals donne plus de détails : par canal Busload [%], Peak load [%], les trames par seconde et les compteurs de trames. Les trois affichages utilisent le même calcul sur une fenêtre d'une seconde.

    Démarrer et arrêter une mesure, étape 3Démarrer et arrêter une mesure, étape 3
  4. Arrêtez la mesure avec Stop ou Échap. La fenêtre Write affiche Measurement 1 stopped (user) after … s.

    Démarrer et arrêter une mesure, étape 4Démarrer et arrêter une mesure, étape 4

La Trace : modes, filtrage, signaux et export

La Trace affiche chaque trame et chaque événement de bus, décodés avec les bases de données du projet.

  1. La Trace se trouve sur le desktop Analysis. En mode Chronological, chaque événement occupe sa propre ligne, le plus récent en bas. Maximize, en haut à droite, agrandit la fenêtre à tout le desktop.

    La Trace : modes, filtrage, signaux et export, étape 1La Trace : modes, filtrage, signaux et export, étape 1
  2. Cliquez sur Fixed pour obtenir une ligne par message, mise à jour sur place. Abs et Rel sélectionnent le temps absolu ou relatif ; Espace met l'affichage en pause.

    La Trace : modes, filtrage, signaux et export, étape 2La Trace : modes, filtrage, signaux et export, étape 2
  3. Saisissez un filtre dans le champ de filtre (Ctrl+F), ici name:Engine. Exemples : 1A0 ou id:100-1FF (ID ou plage), ch:CAN2 ou ch:Comfort (canal ou réseau), dir:tx, type:fd, !name:Door (négation). Les termes se combinent ; l'info-bulle du champ donne la syntaxe complète.

    La Trace : modes, filtrage, signaux et export, étape 3La Trace : modes, filtrage, signaux et export, étape 3
  4. Deuxième exemple : ch:Comfort !name:Door affiche tous les messages du réseau Comfort sauf ceux dont le nom contient Door. La barre du bas indique filtered ; Échap dans le champ efface le filtre.

    La Trace : modes, filtrage, signaux et export, étape 4La Trace : modes, filtrage, signaux et export, étape 4
  5. Cliquez sur la flèche en début de ligne pour déplier la trame : chaque signal apparaît en dessous avec sa valeur physique, son unité et sa valeur brute.

    La Trace : modes, filtrage, signaux et export, étape 5La Trace : modes, filtrage, signaux et export, étape 5
  6. Le menu contextuel (clic droit) contient Export selected rows to log file… et Export shown events to log file… (tout ce que la fenêtre affiche avec le filtre en cours). Dans la boîte d'enregistrement, choisissez le nom et le type : BLF, ASC, MF4 ou PCAPNG.

    La Trace : modes, filtrage, signaux et export, étape 6La Trace : modes, filtrage, signaux et export, étape 6
  7. Après l'export, Arnodiqa indique le nombre d'événements écrits ; la fenêtre Write mentionne chaque fichier, ici trace.blf, trace.asc et trace.mf4.

    La Trace : modes, filtrage, signaux et export, étape 7La Trace : modes, filtrage, signaux et export, étape 7

Suivre des signaux dans Data et Graphics

Data affiche les valeurs actuelles des signaux, Graphics leur évolution dans le temps.

  1. Ouvrez le desktop Signals. Graphics et Data contiennent déjà des signaux issus des bases de données du projet.

    Suivre des signaux dans Data et Graphics, étape 1Suivre des signaux dans Data et Graphics, étape 1
  2. Dans la fenêtre Data, cliquez sur Add signals. Dans Add signals to Data window, recherchez par nom (ici OilTemp), cochez le signal (Espace) et cliquez sur Add 1 signal (Entrée). Vous pouvez aussi faire glisser un signal de la Trace vers la fenêtre.

    Suivre des signaux dans Data et Graphics, étape 2Suivre des signaux dans Data et Graphics, étape 2
  3. Procédez de même dans Graphics avec Add signals et démarrez la mesure (F9). Data affiche pour chaque signal la valeur actuelle, l'unité, la valeur brute et le min/max ; Graphics affiche l'évolution, avec la dernière valeur dans la liste des signaux.

    Suivre des signaux dans Data et Graphics, étape 3Suivre des signaux dans Data et Graphics, étape 3
  4. Après l'arrêt, la courbe reste affichée. Dans Graphics, la molette zoome et un glisser déplace la vue ; le menu contextuel exporte les trames vers un fichier journal ou les signaux au format CSV.

    Suivre des signaux dans Data et Graphics, étape 4Suivre des signaux dans Data et Graphics, étape 4

Envoyer des messages avec l'Interactive Generator

L'Interactive Generator envoie des trames une seule fois, périodiquement ou sur appui d'une touche.

  1. Le desktop Stimulation contient l'Interactive Generator avec des messages issus de la base de données du projet.

    Envoyer des messages avec l'Interactive Generator, étape 1Envoyer des messages avec l'Interactive Generator, étape 1
  2. Cliquez sur + CAN pour une trame CAN personnalisée ; From database ajoute un message de la base de données. Saisissez l'ID (ici 7E0) et les octets de données sous Raw Data ; pour un message de la base de données, modifiez les valeurs sous Signals.

    Envoyer des messages avec l'Interactive Generator, étape 2Envoyer des messages avec l'Interactive Generator, étape 2
  3. Démarrez la mesure. Send envoie la trame une fois. Réglez Trigger sur Periodic, saisissez la période en ms et cliquez sur Send : la trame est envoyée de façon cyclique et le bouton devient Stop.

    Envoyer des messages avec l'Interactive Generator, étape 3Envoyer des messages avec l'Interactive Generator, étape 3
  4. La Trace du desktop Analysis affiche les trames envoyées avec la direction Tx ; le filtre dir:tx id:7E0 n'affiche que cette trame.

    Envoyer des messages avec l'Interactive Generator, étape 4Envoyer des messages avec l'Interactive Generator, étape 4

Simulation de bus résiduel : nœuds et couche d'interaction

Le Simulation Setup affiche les nœuds simulés et l'état de leur couche d'interaction (Interaction Layer, IL).

  1. Le Simulation Setup se trouve sur le desktop Project ; vous pouvez aussi l'ouvrir avec Ctrl+K et New Simulation Setup window. Pour chaque réseau, vous voyez les nœuds avec leur type (IL = couche d'interaction), leur source et l'état de la couche d'interaction.

    Simulation de bus résiduel : nœuds et couche d'interaction, étape 1Simulation de bus résiduel : nœuds et couche d'interaction, étape 1
  2. Démarrez la mesure : les nœuds IL envoient leurs messages selon la base de données (Sending).

    Simulation de bus résiduel : nœuds et couche d'interaction, étape 2Simulation de bus résiduel : nœuds et couche d'interaction, étape 2
  3. Stop IL et Start IL, à droite de la ligne, arrêtent ou relancent la couche d'interaction d'un nœud pendant que la mesure continue.

    Simulation de bus résiduel : nœuds et couche d'interaction, étape 3Simulation de bus résiduel : nœuds et couche d'interaction, étape 3
  4. L'interrupteur de la colonne Active désactive complètement un nœud, par exemple pour laisser un vrai calculateur émettre à sa place. Pendant une mesure, ce réglage ne vaut que pour cette mesure ; lorsque la mesure est arrêtée, l'interrupteur modifie le projet.

    Simulation de bus résiduel : nœuds et couche d'interaction, étape 4Simulation de bus résiduel : nœuds et couche d'interaction, étape 4

Enregistrer, relire hors ligne et rejouer sur le bus

Les blocs de journalisation du Measurement Setup écrivent en BLF, ASC, MF4 ou PCAPNG. Un enregistrement peut être relu hors ligne à travers la même analyse qu'une mesure en direct, ou renvoyé sur le bus avec un bloc de rejeu (replay).

  1. Dans l'explorateur de projet, cliquez sur le crayon à côté de Measurement Setup. L'éditeur affiche le graphe qui va de Measurement source aux filtres, déclencheurs, blocs de journalisation et fenêtres. Pour un bloc de journalisation, la partie droite affiche File (avec des codes de champ tels que {MeasurementIndex}, bouton {…}), Format, New file after [MB] et le Logging trigger. Add block ajoute un bloc ; Apply et Save to project conservent la modification.

    Enregistrer, relire hors ligne et rejouer sur le bus, étape 1Enregistrer, relire hors ligne et rejouer sur le bus, étape 1
  2. Démarrez puis arrêtez la mesure. Chaque bloc de journalisation actif écrit son fichier dans le dossier du projet, ici logs/Demo vehicle_1.blf et, pour le bloc déclenché HighRpm, logs/high_rpm_001.asc. Pendant la mesure, la barre d'état affiche Logging avec le nombre d'événements. L'interrupteur à côté d'un bloc dans l'explorateur de projet active ou désactive la journalisation ; Start measurement without logging l'ignore pour une seule mesure.

    Enregistrer, relire hors ligne et rejouer sur le bus, étape 2Enregistrer, relire hors ligne et rejouer sur le bus, étape 2
  3. Dans le Measurement Setup, cliquez sur le bloc Measurement source. À droite, choisissez le mode de travail : Real bus (le matériel des réseaux), Simulated bus (tous les réseaux simulés, temps virtuel) ou Offline (relecture de fichiers journaux). Les blocs de rejeu figurent en dessous.

    Enregistrer, relire hors ligne et rejouer sur le bus, étape 3Enregistrer, relire hors ligne et rejouer sur le bus, étape 3
  4. Choisissez Offline, cliquez sur Add log file… et sélectionnez un ou plusieurs fichiers BLF, ASC, MF4 ou PCAPNG, ici l'enregistrement de l'étape 2.

    Enregistrer, relire hors ligne et rejouer sur le bus, étape 4Enregistrer, relire hors ligne et rejouer sur le bus, étape 4
  5. Le fichier journal apparaît sous Log files ; la case à cocher désactive temporairement une source, la corbeille la retire. Sous Speed, choisissez As fast as possible, Real time (with factor) (2 = deux fois plus lent) ou Animate (un événement par intervalle). Avec plusieurs fichiers, Order détermine leur fusion ; Skip to the first event et Start paused se trouvent sous Start.

    Enregistrer, relire hors ligne et rejouer sur le bus, étape 5Enregistrer, relire hors ligne et rejouer sur le bus, étape 5
  6. Cliquez sur Save to project (Apply applique la modification sans l'enregistrer). La barre d'outils affiche maintenant Offline et le bloc source offline · 1 file. Le même réglage est accessible via Ctrl+K avec Working mode: Offline (log files).

    Enregistrer, relire hors ligne et rejouer sur le bus, étape 6Enregistrer, relire hors ligne et rejouer sur le bus, étape 6
  7. Cliquez sur Start (F9) : Arnodiqa relit le fichier journal à travers la même analyse qu'une mesure en direct (Trace, Graphics, Statistics). À la fin du fichier, la mesure s'arrête d'elle-même ; en Real time, cela dure aussi longtemps que l'enregistrement.

    Enregistrer, relire hors ligne et rejouer sur le bus, étape 7Enregistrer, relire hors ligne et rejouer sur le bus, étape 7
  8. Pour renvoyer un enregistrement sur le bus pendant une mesure en ligne, choisissez Simulated bus ou Real bus et cliquez sur Add replay block… sous Replay blocks. Pour chaque bloc, choisissez le nom, Start at once, Original times ou Delayed, et Loop. Apply place le bloc dans le projet. Au démarrage suivant, le bloc envoie les trames du fichier. En mode hors ligne, les blocs de rejeu sont inactifs.

    Enregistrer, relire hors ligne et rejouer sur le bus, étape 8Enregistrer, relire hors ligne et rejouer sur le bus, étape 8

Diagnostic : console UDS et mémoire de défauts

Diagnostic Console et Fault Memory travaillent avec les calculateurs de diagnostic du projet, simulés ou réels.

  1. Ouvrez la Diagnostic Console avec Ctrl+K et New Diagnostic Console window, puis démarrez la mesure. Sélectionnez le calculateur sous ECU (ici DoorECU). Choisissez un service et une sous-fonction sous Service et cliquez sur Send, ou saisissez une requête en hexadécimal sous Raw.

    Diagnostic : console UDS et mémoire de défauts, étape 1Diagnostic : console UDS et mémoire de défauts, étape 1
  2. Saisissez par exemple 22 F1 90 (ReadDataByIdentifier, VIN) sous Raw et appuyez sur Entrée ou cliquez sur Send raw. L'historique affiche la requête, la réponse, le résultat et le temps de réponse ; cliquez sur une ligne pour voir les paramètres décodés. Une réponse négative affiche le NRC avec son nom.

    Diagnostic : console UDS et mémoire de défauts, étape 2Diagnostic : console UDS et mémoire de défauts, étape 2
  3. Ouvrez Fault Memory (Ctrl+K, New Fault Memory window) et cliquez sur Read (service 19 02 avec le masque d'état choisi dans la liste, par défaut All status bits (FF)). Pour chaque DTC, vous voyez le code SAE, le code, l'état et les bits d'état en colonnes ; en bas, les huit bits du DTC sélectionné sont détaillés.

    Diagnostic : console UDS et mémoire de défauts, étape 3Diagnostic : console UDS et mémoire de défauts, étape 3
  4. Clear all efface la mémoire de défauts (ClearDiagnosticInformation, 14 FF FF FF) ; confirmez avec Clear.

    Diagnostic : console UDS et mémoire de défauts, étape 4Diagnostic : console UDS et mémoire de défauts, étape 4
  5. Après l'effacement, Read relit les DTC : leur état a été réinitialisé.

    Diagnostic : console UDS et mémoire de défauts, étape 5Diagnostic : console UDS et mémoire de défauts, étape 5

Flasher un calculateur (ECU)

La fenêtre Flash exécute le programme de flashage d'un calculateur, avec la progression par étape et par bloc.

  1. Ouvrez la fenêtre Flash (Ctrl+K, New Flash window) et démarrez la mesure. Choisissez le calculateur, le fichier de firmware (par défaut celui du projet, ou via Browse…) et le format. La fenêtre affiche d'avance les blocs du fichier.

    Flasher un calculateur (ECU), étape 1Flasher un calculateur (ECU), étape 1
  2. Cliquez sur Flash (Ctrl+Entrée). La barre de progression, l'étape en cours, le bloc, le débit et le temps restant se mettent à jour. Cancel interrompt l'opération ; les étapes de nettoyage (clean-up) s'exécutent quand même.

    Flasher un calculateur (ECU), étape 2Flasher un calculateur (ECU), étape 2
  3. Le rapport final indique le résultat, la durée, le débit et les sommes de contrôle. Copy report copie le rapport ; en cas d'échec, il contient l'étape en échec et le NRC.

    Flasher un calculateur (ECU), étape 3Flasher un calculateur (ECU), étape 3

Ajouter et modifier des nœuds CAPL

Les programmes CAPL existants s'exécutent comme nœuds de simulation, à côté de la simulation de bus résiduel. Le CAPL Editor intégré vérifie le programme pendant la saisie.

  1. Sur le desktop Project, les nœuds CAPL figurent sous Simulation nodes, avec leur fichier source (.can) et leurs réseaux. Dans le Simulation Setup, leur type est CAPL ; le crayon ouvre le programme dans le CAPL Editor, la corbeille retire le nœud du projet et Add CAPL node en ajoute un.

    Ajouter et modifier des nœuds CAPL, étape 1Ajouter et modifier des nœuds CAPL, étape 1
  2. Le CAPL Editor affiche le programme avec coloration syntaxique et numéros de ligne. En haut à droite figurent les nœuds qui exécutent ce fichier (ici CaplGateway) ; No problems provient du même compilateur qu'au démarrage de la mesure et que arnodiqa capl check.

    Ajouter et modifier des nœuds CAPL, étape 2Ajouter et modifier des nœuds CAPL, étape 2
  3. Survolez un nom avec la souris pour obtenir des détails : pour une fonction CAPL, toutes ses formes avec leurs paramètres ; pour un message, l'ID, la longueur, le temps de cycle et les signaux ; pour un signal, la mise à l'échelle, l'unité et la value table.

    Ajouter et modifier des nœuds CAPL, étape 3Ajouter et modifier des nœuds CAPL, étape 3
  4. Arnodiqa vérifie le programme pendant la saisie : les erreurs sont soulignées d'une ligne ondulée rouge et signalées dans la marge, et le compteur de la barre d'outils indique le nombre d'erreurs et d'avertissements (cliquez dessus pour afficher la liste, ou Ctrl+Maj+M). Ici, totl est inconnu et il manque un point-virgule.

    Ajouter et modifier des nœuds CAPL, étape 4Ajouter et modifier des nœuds CAPL, étape 4
  5. Ctrl+Espace, ou simplement la saisie, affiche des propositions : variables, fonctions et fonctions CAPL, messages et signaux des bases de données du projet et, après @, les variables système. Entrée ou Tab valide le choix.

    Ajouter et modifier des nœuds CAPL, étape 5Ajouter et modifier des nœuds CAPL, étape 5
  6. Ctrl+S (ou Save) enregistre le fichier et recharge le nœud avec le nouveau programme. Pendant une mesure, Arnodiqa demande d'abord une confirmation ; la mesure en cours conserve l'ancien programme jusqu'au démarrage suivant.

    Ajouter et modifier des nœuds CAPL, étape 6Ajouter et modifier des nœuds CAPL, étape 6
  7. Pour ajouter un nœud, cliquez sur Add CAPL node dans le Simulation Setup ou sur le + à côté de Simulation nodes dans l'explorateur de projet. Saisissez un nom, choisissez les réseaux et un modèle (Empty node, Cyclic sender, Echo / gateway) ; le fichier devient capl/<nom>.can. Existing file utilise un fichier .can existant, dans le dossier du projet ou en dehors (copié ou désigné par un chemin relatif).

    Ajouter et modifier des nœuds CAPL, étape 7Ajouter et modifier des nœuds CAPL, étape 7
  8. Le nœud apparaît dans le Simulation Setup et son programme s'ouvre dans l'éditeur. Démarrez la mesure : les programmes CAPL s'exécutent et leur sortie write() s'affiche dans la fenêtre Write, onglet Program, précédée du nom du nœud. Enregistrez le projet pour conserver le nouveau nœud.

    Ajouter et modifier des nœuds CAPL, étape 8Ajouter et modifier des nœuds CAPL, étape 8

Exécuter des unités de test dans le Test Runner

Le Test Runner exécute les unités de test du projet sur le bus simulé et affiche le rapport dans l'application. Le résultat est identique à celui de arnodiqa test.

  1. Ouvrez le Test Runner avec Ctrl+K et New Test Runner window. À gauche figurent les unités de test du projet (les fichiers *.vtestunit.yaml sous tests/) avec leurs cas de test ; un arbre de test (*.vtesttree.yaml) apparaît avec ses groupes. La case à cocher détermine les unités exécutées.

    Exécuter des unités de test dans le Test Runner, étape 1Exécuter des unités de test dans le Test Runner, étape 1
  2. Cliquez sur une unité pour afficher ses détails : titre et description, fichier et sources CAPL (un clic les ouvre dans le CAPL Editor). Les touches fléchées parcourent l'arbre, Espace coche ou décoche, et Entrée ou Run this unit exécute l'unité sélectionnée.

    Exécuter des unités de test dans le Test Runner, étape 2Exécuter des unités de test dans le Test Runner, étape 2
  3. Cliquez sur Run (Ctrl+Entrée). Chaque unité s'exécute dans sa propre mesure sur le bus simulé ; le cas de test en cours affiche Running et les verdicts apparaissent dès qu'un cas de test se termine. Cancel interrompt l'exécution : l'unité en cours s'arrête et les suivantes sont ignorées.

    Exécuter des unités de test dans le Test Runner, étape 3Exécuter des unités de test dans le Test Runner, étape 3
  4. Après l'exécution, chaque cas de test porte son verdict (Pass, Fail, Inconclusive, Error) et sa durée en temps de mesure. En bas figurent le résumé et le code de sortie que arnodiqa test renvoie pour le même résultat, ici 1 : au moins un cas de test a échoué.

    Exécuter des unités de test dans le Test Runner, étape 4Exécuter des unités de test dans le Test Runner, étape 4
  5. Cliquez sur Report pour afficher le rapport HTML dans l'application, avec les informations de chaque unité et les étapes de chaque cas de test ; les cas de test en échec sont dépliés. Save HTML… enregistre le rapport.

    Exécuter des unités de test dans le Test Runner, étape 5Exécuter des unités de test dans le Test Runner, étape 5
  6. Export enregistre le rapport en HTML, en JUnit XML pour un serveur CI ou au format JSON canonique.

    Exécuter des unités de test dans le Test Runner, étape 6Exécuter des unités de test dans le Test Runner, étape 6
Le Test Runner lance toujours une unité de test complète ; les cas de test ne se lancent pas séparément.

LIN : schedule tables, esclaves et LIN dans la Trace

Un réseau LIN est défini par un fichier LDF ; Arnodiqa simule le maître et les esclaves et affiche les trames LIN et les événements de bus dans la Trace.

  1. Projet Body LIN créé à partir du modèle LIN cluster. L'explorateur de projet affiche le réseau LIN avec son débit, son maître, ses esclaves et ses schedule tables ; le Simulation Setup affiche les nœuds LIN avec leur rôle (maître ou esclave).

    LIN : schedule tables, esclaves et LIN dans la Trace, étape 1LIN : schedule tables, esclaves et LIN dans la Trace, étape 1
  2. Démarrez la mesure et choisissez une autre schedule table pour le réseau LIN dans le Simulation Setup. Le changement a lieu à la fin de la table en cours ; la ligne affiche running: ….

    LIN : schedule tables, esclaves et LIN dans la Trace, étape 2LIN : schedule tables, esclaves et LIN dans la Trace, étape 2
  3. Chaque esclave du LDF est un nœud simulé. Désactivez un esclave avec l'interrupteur de la colonne Active (ici RLS) pour laisser un vrai calculateur répondre à sa place. Pendant une mesure, ce réglage ne vaut que pour cette mesure ; Write affiche alors Node 'RLS' deactivated for this measurement.

    LIN : schedule tables, esclaves et LIN dans la Trace, étape 3LIN : schedule tables, esclaves et LIN dans la Trace, étape 3
  4. La Trace affiche les trames LIN sur le canal LIN1. Columns permet d'afficher les colonnes PID et Checksum. Filtres : bus:lin, type:lin, type:linerror (erreurs) et type:linbus (réveil, mise en veille, changement de schedule table).

    LIN : schedule tables, esclaves et LIN dans la Trace, étape 4LIN : schedule tables, esclaves et LIN dans la Trace, étape 4
  5. En mode Chronological, le filtre type:linbus affiche les événements de bus : ici les changements de schedule table, ainsi que le réveil et la mise en veille. type:linerror affiche les lignes d'erreur telles que No response ou Checksum error.

    LIN : schedule tables, esclaves et LIN dans la Trace, étape 5LIN : schedule tables, esclaves et LIN dans la Trace, étape 5
  6. Dans l'Interactive Generator du desktop Stimulation, sélectionnez une trame du LDF dans la section LIN. Set response publie la réponse en tant qu'esclave, Send header envoie l'en-tête en tant que maître.

    LIN : schedule tables, esclaves et LIN dans la Trace, étape 6LIN : schedule tables, esclaves et LIN dans la Trace, étape 6

J1939 Monitor et DTC

Le J1939 Monitor affiche les nœuds d'un réseau J1939, leurs codes de défaut actifs et la séquence des revendications d'adresse (address claims) et des transferts.

  1. Ouvrez le J1939 Monitor (Ctrl+K, New J1939 Monitor window) et démarrez la mesure. L'onglet Nodes affiche pour chaque adresse le NAME avec ses champs, l'instant de l'address claim et un résumé DM1.

    J1939 Monitor et DTC, étape 1J1939 Monitor et DTC, étape 1
  2. L'onglet DTC monitor affiche les témoins (MIL, RSL, AWL, PL) de chaque nœud et les DTC actifs issus de DM1 : SPN, FMI avec son texte et l'occurrence count.

    J1939 Monitor et DTC, étape 2J1939 Monitor et DTC, étape 2
  3. L'onglet Events affiche les address claims, les requêtes et réponses, ACK/NACK et les messages du protocole de transport. Request demande un PGN à une destination (hexadécimal) ; Clear active (DM11) et Clear previous (DM3) effacent les DTC.

    J1939 Monitor et DTC, étape 3J1939 Monitor et DTC, étape 3
Dans l'enregistrement, le calculateur moteur simulé active les deux DTC, comme le ferait un défaut réel.

Éditeur de bases de données : ajouter un signal

Le Database Editor modifie les fichiers DBC et LDF du projet, avec annulation et rétablissement, et contrôle pendant l'édition.

  1. Dans l'explorateur de projet, cliquez sur le crayon à côté de la base de données (ici powertrain.dbc). Le Database Editor affiche l'arborescence à gauche (nœuds, messages, signaux, value tables), le tableau au centre et les propriétés à droite.

    Éditeur de bases de données : ajouter un signal, étape 1Éditeur de bases de données : ajouter un signal, étape 1
  2. Cliquez sur un message dans l'arborescence (ici ABS_Status) : le centre affiche la disposition des bits, chaque signal sous forme de barre colorée, et en dessous les signaux dans un tableau.

    Éditeur de bases de données : ajouter un signal, étape 2Éditeur de bases de données : ajouter un signal, étape 2
  3. Cliquez sur + Signal au-dessus de la disposition des bits : le nouveau signal (1 bit) est placé à la première position libre, ici le bit 27. Nommez-le à droite sous Signal (ici BrakeLampOn) et réglez au besoin la longueur, l'ordre des octets, le facteur, l'unité et les récepteurs. Faites glisser la barre pour déplacer le signal, ou une extrémité pour modifier sa longueur ; les chevauchements sont marqués en rouge.

    Éditeur de bases de données : ajouter un signal, étape 3Éditeur de bases de données : ajouter un signal, étape 3
  4. Après l'enregistrement, Arnodiqa affiche Database saved et recharge le projet avec la nouvelle base de données ; la Trace décode aussitôt le nouveau signal. Ctrl+Z et Ctrl+Y (ou les flèches en haut à gauche) annulent ou rétablissent les modifications.

    Éditeur de bases de données : ajouter un signal, étape 4Éditeur de bases de données : ajouter un signal, étape 4

Autotest du matériel

L'autotest vérifie une interface et son pilote avec une paire de canaux, ou avec un seul canal en bouclage interne.

  1. Ouvrez la fenêtre Hardware (Ctrl+K, New Hardware window ou via l'explorateur de projet) et cliquez sur Self-test…. L'icône à côté d'un canal lance le test pour ce seul canal.

    Autotest du matériel, étape 1Autotest du matériel, étape 1
  2. Choisissez la configuration : Channel pair (deux canaux reliés par un câble) ou One channel, les canaux A et B, le débit, CAN FD et les contrôles. Sans matériel, Try on virtual channels exécute le test sur un bus virtuel.

    Autotest du matériel, étape 2Autotest du matériel, étape 2
  3. Cliquez sur Start self-test (Ctrl+Entrée). Chaque contrôle affiche son état et sa durée.

    Autotest du matériel, étape 3Autotest du matériel, étape 3
  4. Le résumé suit, avec les canaux (appareil, numéro de série, firmware, pilote). Dépliez un contrôle pour voir les valeurs mesurées et, en cas d'échec, la cause probable. Save HTML report enregistre le rapport.

    Autotest du matériel, étape 4Autotest du matériel, étape 4

Archive de support et dossier des journaux

Les journaux et les rapports de plantage restent sur l'ordinateur. Vous créez vous-même une archive de support et la transmettez par votre propre canal à support@arnodiqa.com.

  1. Cliquez sur le point d'interrogation (Help) en haut à droite. Le menu contient Open log folder, Create support bundle…, Debug logging until restart et About Arnodiqa. Les mêmes actions figurent dans Ctrl+K sous Help.

    Archive de support et dossier des journaux, étape 1Archive de support et dossier des journaux, étape 1
  2. Create support bundle… indique d'avance les fichiers placés dans l'archive zip et ce qui est délibérément omis. Choisissez la période couverte par les journaux et indiquez si le projet, le nom de l'ordinateur ou les numéros de série peuvent être inclus. Cliquez sur Save… et choisissez l'emplacement du fichier zip ; rien n'est envoyé.

    Archive de support et dossier des journaux, étape 2Archive de support et dossier des journaux, étape 2
  3. Open log folder ouvre dans l'Explorateur le dossier des fichiers journaux d'Arnodiqa ; une notification indique le chemin.

    Archive de support et dossier des journaux, étape 3Archive de support et dossier des journaux, étape 3

FAQ

Puis-je l'utiliser avec du matériel réel ?
Oui. Des backends existent pour PEAK PCAN-Basic, Vector XL, Kvaser CANlib, SLCAN et candleLight/gs_usb ; arnodiqa hw list et la fenêtre Hardware indiquent ce qui a été détecté. Arnodiqa utilise le pilote officiel du fabricant ; le Hardware Self-Test permet de vérifier une interface dans votre propre configuration. Voir hw list.
Puis-je simuler un bus résiduel ?
Oui. Sous simulation.restbus, chaque nœud du DBC devient un nœud de couche d'interaction, avec les types d'envoi, les temps de cycle et les valeurs initiales et inactives de la base de données. Excluez le calculateur testé avec exclude. Voir Format de projet.
Mon code CAPL existant fonctionnera-t-il ?
La VM de script exécute les programmes CAPL existants comme nœuds de simulation ou comme modules de test, y compris les fonctions de couche d'interaction, de diagnostic, de journalisation, de fichiers et de profils INI. Vérifiez un programme au préalable avec arnodiqa capl check. Le langage est implémenté à partir de nos propres spécifications.
Puis-je exécuter des tests en CI ?
Oui. arnodiqa test exécute les unités de test d'un projet sur le bus simulé, écrit des rapports en HTML, JSON et JUnit XML et renvoie un code de sortie conforme au verdict.
Les fichiers BLF sont-ils interchangeables avec CANoe/CANalyzer ?
Oui, pour les trames CAN et CAN FD et les trames d'erreur. Les variables système sont prises en charge en ASC.
Quelles plateformes ?
Arnodiqa fonctionne sous Windows 11 (x64).
Fonctionne-t-il sans Internet (environnements isolés) ?
Oui. Le moteur (engine) et la CLI n'établissent aucune connexion réseau, et cette documentation fonctionne hors ligne. L'installateur Windows, la licence (un fichier signé, sans activation) et l'extension VS Code fonctionnent sans Internet. Le SBOM et les mentions relatives aux composants tiers accompagnent chaque version. Voir Utilisation hors ligne.
Ai-je besoin d'un dongle ou d'un serveur de licences ?
Non. La licence est un fichier signé (*.arnlic) qu'Arnodiqa vérifie localement : pas de clé matérielle, pas d'activation, aucune connexion sortante. Des licences liées à un poste, des licences site et des licences en volume sont disponibles. Sans licence, Arnodiqa fonctionne 30 jours avec toutes les fonctions ; ensuite, la consultation, la relecture hors ligne, la conversion et l'export restent disponibles. Voir arnodiqa license et Tarifs.
Pourquoi YAML plutôt qu'un fichier de configuration binaire ?
Un projet YAML peut être versionné dans git. Une modification apparaît sous forme de diff lisible, que vous pouvez relire et résoudre lors d'un merge. Le JSON Schema signale les erreurs dès l'éditeur. L'index des mesures est stocké à part, de sorte que les exécutions ne modifient pas le projet.