Format de fichier macro
Dans cette section, les données enregistrées .hrpr Nous allons vous donner plus de détails sur le format des fichiers macro.
enregistré .hrpr Lorsque l'on ouvre le fichier, une série de champs d'en-tête s'affiche, suivie des données de fonctionnement enregistrées, classées par pas de temps.
L'en-tête contient les clés suivantes :
FORMAT_VERSION:.hrprSpécifiez la version du format de fichier.PROGRAM_NAME: Indiquez le chemin d'accès complet du fichier.\et/des séparateurs mélangés ou des séquences de//Cela n'a aucune incidence sur l'interprétation du fichier.DATE: Permet de spécifier la date à laquelle l'enregistrement a été créé.SAMPLE_RATE: Permet de spécifier la fréquence d'enregistrement. «HARP » signifie 100 échantillons par seconde (100 Hz) et l'enregistre.POSITION_LEADER: Utilisé comme repère de position pendant l'enregistrement Inverse3 Identifie l'appareil.ORIENTATION_LEADER: Utilisé comme référence de posture pendant l'enregistrement VerseGrip ou bien Ruko Identifie l'appareil.FOLLOWERS: Affiche la liste des appareils connectés figurant dans l'historique. Par exemple,cg_0は Groupe témoin 0 et les valeurs entre crochets indiquent les emplacements des éléments suivants au sein de ce groupe de contrôles.DESCRIPTION: Enregistre une description sous forme de texte libre de votre choix, associée à l'enregistrement.
Après l'en-tête, les données d'activité enregistrées sont stockées dans le format décrit dans le tableau ci-dessous.
| Champ | Signification | Exemple |
|---|---|---|
| N# | Numéro de cadre | N1 N169 |
| t# | L'heure sous forme d'horodatage Unix en millisecondes | t1788878409547 |
| {...} | Conserve une image. Chaque ligne de suivi se termine par ,. Pour lire le fichier, au moins un bloc complet est nécessaire. | {cg_0::Follower(0): ... cg_0::Follower(1): ...} |
| X Y Z | Coordonnées de position des outils en mètres | X 0,1183887 Y -0,0375092 Z 0,1076392 |
| rW rX rY rZ | Orientation de l'outil représentée par des quaternions | rW 0,1575889 rX -0,160 rY 0,973 rZ -0,051 |
| Fa#.##### | Vitesse linéaire (vitesse d'avance). Unité : m/s | F0.0010804 F0.0150 |
| Fa#.##### | Vitesse angulaire (vitesse d'avance). Unité : rad/s | Fa0,2586200 Fa1,0053328 |
| J6[#,#,#,#,#,#] | Angles d'articulation en radians | J6[0,403 ; 0,157 ; 1,000 ; -0,936 ; 0,214 ; 0,977] |
| JV6[#,#,#,#,#,#] | Vitesse de rotation | JV6[0,000 0,000 0,000 0,000 0,000 0,000] |
Comment interpréter les lignes
- Les lignes contenant les commandes X,YetZ font se déplacer le robot vers la position correspondante en coordonnées cartésiennes absolues.
- Les coordonnées sont (omission) Dans ce cas, le robot conserve la valeur actuelle de cet axe.
- Par exemple, si la valeur X est omise dans la commande, seuls les axes spécifiés (tels que Y ou Z ) seront mis à jour lors de la lecture, tandis que la position actuelle sur l'axe X sera conservée.
- Ce format de fichier a été conçu de manière intentionnellement souple, ce qui permet de n'inclure dans chaque ligne que les axes et les valeurs nécessitant une modification.
- existant
.hrprSi vous souhaitez modifier un fichier,Enregistrer sous Utilisez cette fonction pour conserver le fichier d'origine, puis enregistrez la macro modifiée en tant que version distincte.
Exemple
Forme
Dans l'exemple suivant, la vidéo enregistrée, qui contient des informations d'en-tête et un échantillon d'action enregistré, .hrpr Voici un extrait du fichier de macros :
(FORMAT_VERSION: 1)
(PROGRAM_NAME: C:\Users\demo\Documents\user\projects\demo\raw//2026-8-14_12-13-19.hrpr)
(DATE: 2026/09/14)
(SAMPLE_RATE: 100)
(POSITION_LEADER: 051D)
(ORIENTATION_LEADER: 1451)
(FOLLOWERS:
cg_0::Follower(0): Mecademic Industrial Robotics SERIAL (arm);
cg_0::Follower(1): Mecademic Industrial Robotics PARALLEL (end_effector);
)
(DESCRIPTION: a story of two machines)
N1 t1789402399210 {
cg_0::Follower(0): X0.1183887 Y0.0375092 Z0.1076392 rW0.1575889 rX-0.160 rY0.973 rZ-0.051 F0.0008606 Fa0.9414008 J6[0.403,0.157,1.000,-0.936,0.214,0.977] JV6[0.000,0.000,0.000,0.000,0.000,0.000] ,
cg_0::Follower(1): J1[4.800] ,
}
...
Hauteur Z de sécurité
Dans cet exemple, la ligne N4 à un seul Axe Z Nous allons vous montrer comment ajouter une commande permettant de déplacer le robot vers une position Z spécifiée sans modifier les autres axes.
Les valeurs des axes omis étant conservées, seule l'axe Z est mis à jour lors de cette étape.
N1 t1 {
0: X0.184 Y0.004 Z0.141 rW0.0498 rX-0.032 rY0.998 rZ-0.024 F0.00200 Fa0.005
}
N2 t10 {
0: X0.184 Y0.022 Z0.141 rW0.0498 rX-0.032 rY0.998 rZ-0.024
}
N3 t20 {
0: X0.184 Y0.022 Z-0.052 rW0.049 rX-0.032 rY0.998 rZ-0.024
}
N4 t31 {
0: Z0.600
}
N5 t41 {
0: X-0.005 Y0.022 Z-0.6 rW0.049 rX-0.032 rY0.998 rZ-0.024 F0.00010 Fa0.400
}
N6 t51 {
0: X-0.005 Y-0.054 Z0.000 rW0.049 rX-0.032 rY0.998 rZ-0.024
}
Déplacement XY
Dans cet exemple, nous allons montrer comment combiner les commandesX et Y pour faire se déplacer le robot uniquement le long de ces deux axes.
ligne N5 Dans ce cas, seules les valeurs des axes X et Y sont mises à jour. Tous les axes omis conservent leurs valeurs actuelles.
N1 t1 {
0: X0.184 Y0.004 Z0.141 rW0.0498 rX-0.032 rY0.998 rZ-0.024 F0.00200 Fa0.005
}
N2 t10 {
0: X0.184 Y0.022 Z0.141 rW0.0498 rX-0.032 rY0.998 rZ-0.024
}
N3 t20 {
0: X0.184 Y0.022 Z-0.052 rW0.049 rX-0.032 rY0.998 rZ-0.024
}
N4 t31 {
0: X0.184 Y0.022 Z-0.600 rW0.049 rX-0.032 rY0.998 rZ-0.024 F0.00010 Fa0.400
}
N5 t41 {
0: X-0.005 Y0.022
}
N6 t51 {
0: X-0.005 Y-0.054 Z0.000 rW0.049 rX-0.032 rY0.998 rZ-0.024
}
Optimisation des macros
L'exemple suivant présente une macro optimisée dans laquelle seules les valeurs à modifier ont été incluses dans chaque commande.
- Tout au long de la séquence, la posture du robot reste inchangée.
- La première commande déplace le robot vers la position cible exacte en utilisant la vitesse d'avance spécifiée.
N2Bon, alors Axe Y Seuls ces éléments seront mis à jour.N3etN4Bon, alors Axe Z Seuls ces éléments seront mis à jour.N5Bon, alors Axe X Mettez à jour et modifiez la vitesse d'avance.N6Bon, alors Axe Y et Axe Z Mettre à jour les deux.
En omettant les valeurs qui ne doivent pas être modifiées, les macros deviennent plus concises, plus lisibles et plus faciles à modifier.
N1 t1 {
0: X0.184 Y0.004 Z0.141 rW0.0498 rX-0.032 rY0.998 rZ-0.024 F0.00200 Fa0.005
}
N2 t10 {
0: Y0.022
}
N3 t20 {
0: Z-0.052
}
N4 t31 {
0: Z-0.600
}
N5 t41 {
0: X-0.005 F0.00010 Fa0.400
}
N6 t51 {
0: Y-0.054 Z0.000
}