Compilation et vérification sans matériel
Utilisez cette page pour modifier le code source et vérifier l’implémentation. Pour une installation ordinaire, suivez l’image publiée outil de programmatione . Construire un binaire brut ne remplace pas la production et la validation d’une image codée et d’un manifeste correspondant.
Chaîne d’outils et commandes
Installez arm-none-eabi-gcc, Make, Python 3 et un compilateur hôte C prenant en charge AddressSanitizer/UndefinedBehaviorSanitizer. Exécutez à partir de la racine du référentiel dans un environnement doté de ces outils :
make
make verify
Pour une chaîne d’outils ARM en dehors de PATH :
make verify ARM_PREFIX=/path/to/toolchain/bin/arm-none-eabi-
Remplacez /path/to/toolchain/bin/ par son emplacement réel. Le Makefile racine délègue à firmware/ . Les sorties du micrologiciel vont à build/motor-release/ et les tests natifs à build/host/ . Ces commandes ne flashent pas le matériel.
Vérifier la couverture
| Commande | Portée |
|---|---|
npm test / PowerShell npm.cmd test |
Pilote Node.js, contrôleur partagé et outils utilisant du matériel simulé |
make verify |
Construction du micrologiciel, régressions C, contrats de registre/stockage et disposition des images |
tools/flash/.venv/bin/python -m unittest discover -s tools/flash/tests -v |
Clignotant et réparation en usine avec des appareils série simulés |
npm run test:driver-package |
Emballage et installation du pilote avec cache npm disponible |
Le chemin Python dans le tableau concerne macOS/Linux ; utilisez tools\flash\.venv\Scripts\python.exe sous Windows. Les tests de la visionneuse nécessitent ses dépendances Python 3.12 distinctes ; le répertoire de test est tools/simulation/test et le répertoire d’importation est tools/simulation .
Les tests logiciels n’établissent pas la précision du bras, le comportement thermique sous charge réelle ou les gains moteur appropriés. Les tests de différences matérielles sont une opération distincte : ils peuvent déplacer des moteurs et remplacer des modèles de paramètres/réinitialisation. Ne les remplacez pas par des diagnostics stationnaires sur un bras assemblé.
Disposition de la mise en œuvre
| Annuaire | Objectif |
|---|---|
firmware/app/ |
Coordination, exécution, Extension et services de périphérique |
firmware/core/ |
Contrôle, détection, protocole, registres et stockage |
firmware/platform/gd32f130/ |
Pilotes matériels, démarrage, script de liaison et code du fournisseur |
firmware/tests/ |
Régressions C et vérifications Python |
host/servo-driver/ |
Encodage et transport de paquets |
host/arm-control/ |
Sessions, profils, gravité et nettoyage |
tools/ |
Paramètres, programmation du firmwares, poses, téléopération, réglage, diagnostic et visualisation |
Conservez l’attribution et les licences du fournisseur. Un changement de contrat filaire nécessite des mises à jour coordonnées du micrologiciel, du pilote, des tests, de la version du protocole et de la documentation.
Limites actuelles
Les contrôles logiciels ne remplacent pas les essais sur le mécanisme réel. La protection de la température utilise des lectures brutes dont la stabilité doit encore être validée. La charge, les gains, l’étalonnage et les limites mécaniques doivent être vérifiés pour l’assemblage particulier. Les limitations des images publiées sont répertoriées dans les notes de version v0.1-preview .
Accueil de la documentation · Révision source : a995f77 . Extension 9.0 .

