Makro-Dateiformat
In diesem Abschnitt werden die aufgezeichneten .hrpr Makro-Dateiformat.
Die Aufzeichnung öffnen .hrpr Wenn Sie die Datei öffnen, sehen Sie zunächst eine Reihe von Kopfzeilenfeldern, gefolgt von den aufgezeichneten Bewegungsdaten, die nach Zeitschritten geordnet sind.
Der Kopf enthält die folgenden Schlüssel:
FORMAT_VERSION: Festlegen.hrprVersion des Dateiformats.PROGRAM_NAME: Den vollständigen Pfad zum Speichern der Datei angeben. Gemischte Verwendung\und/Trennzeichen sowie Wiederholungen//Dies hat keinerlei Auswirkungen auf die Analyse der Datei.DATE: Geben Sie das Erstellungsdatum der Aufzeichnung an.SAMPLE_RATE: Legen Sie die Aufzeichnungshäufigkeit fest.HARP mit 100 Abtastpunkte pro Sekunde (100 Hz) Mit der Aufnahme beginnen.POSITION_LEADER: Wird während der Aufzeichnung als Hauptstandort verwendet Inverse3 Ausrüstung.ORIENTATION_LEADER: Kennzeichnung, die während der Aufzeichnung als Hauptendpunkt für die Körperhaltung dient VerseGrip oder Ruko Ausrüstung.FOLLOWERS: Listet die in der Aufzeichnung enthaltenen Endgeräte auf. Zum Beispiel:cg_0Finger Kontrollgruppe 0, wobei die Zahlen in eckigen Klammern die Steckplätze der Slaves innerhalb dieser Steuergruppe kennzeichnen.DESCRIPTION: Speichern Sie hier eine optionale Freitextbeschreibung zur Aufnahme.
Nach dem Header werden die aufgezeichneten Bewegungsdaten im in der folgenden Tabelle angegebenen Format gespeichert.
| Feld | Bedeutung | Beispiel |
|---|---|---|
| N# | Bildnummer | N1 N169 |
| t# | Unix-Zeitstempel in Millisekunden | t1788878409547 |
| {...} | Enthält einen Datenframe. Jede Zeile endet mit einem Komma. Die Datei muss mindestens einen vollständigen Datenblock enthalten, damit sie wiedergegeben werden kann. | {cg_0::Follower(0): ... cg_0::Follower(1): ...} |
| X Y Z | Koordinaten der Werkzeugposition, Einheit: Meter | X 0,1183887 Y -0,0375092 Z 0,1076392 |
| rW rX rY rZ | Werkzeuglage, dargestellt als Quaternion | rW 0,1575889 rX -0,160 rY 0,973 rZ -0,051 |
| F#.##### | Liniengeschwindigkeit (Vorschubgeschwindigkeit), Einheit: m/s | F0.0010804 F0.0150 |
| Fis.##### | Winkelgeschwindigkeit (Vorschubgeschwindigkeit), Einheit: rad/s | Fa0,2586200 Fa1,0053328 |
| J6[#,#,#,#,#,#] | Gelenkwinkel in Radiant | J6[0,403; 0,157; 1,000; -0,936; 0,214; 0,977] |
| JV6[#,#,#,#,#,#] | Gelenkgeschwindigkeit | JV6[0,000 0,000 0,000 0,000 0,000 0,000] |
Erläuterung der Zeilen
- Zeilen mit den Befehlen X,Y und Z bewegen den Roboter an die entsprechenden absoluten kartesischen Positionen.
- Wird eine Koordinate weggelassen, behält der Roboter den aktuellen Wert dieser Achse bei.
- Wenn beispielsweise das Xin dem Befehl weggelassen wird, werden bei der Wiedergabe nur die angegebenen Achsen (z. B. Y und Z) aktualisiert, während die aktuelle X-Position beibehalten wird.
- Dieses Dateiformat ist relativ flexibel gestaltet und erlaubt es, dass jede Zeile nur die Achsen oder Werte enthält, die geändert werden sollen.
- Vorhandene bearbeiten
.hrprVerwenden Sie beim Erstellen von Dokumenten bitte Als … speichern Behalten Sie die Originaldatei bei und erstellen Sie eine separate Version für das geänderte Makro.
Beispiel
Format
Das folgende Beispiel zeigt einen aufgezeichneten .hrpr Ein Teil der Makrodatei, der Kopfdaten und aufgezeichnete Bewegungsdaten enthält:
(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] ,
}
...
Sicherheit Z Höhe
Dieses Beispiel zeigt, wie man in der N4 Eine Zeile hinzufügen Z-Achse Befehl, mit dem der Roboter an die angegebene Z-Position bewegt wird, ohne dass dabei die anderen Achsen verändert werden.
Da die ausgelassenen Achsenwerte beibehalten werden, wird in diesem Schritt nur die Z-Achse aktualisiert.
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
}
Entlang der XY-Achse verschieben
Dieses Beispiel zeigt, wie die Befehle „X“ und „Y“ kombiniert werden können, damit sich der Roboter ausschließlich entlang dieser beiden Achsen bewegt.
In der N5 Gut, es werden nur die Werte der X- und Y-Achse aktualisiert. Alle nicht genannten Achsen behalten ihre aktuellen Werte bei.
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
}
Makros optimieren
Das folgende Beispiel zeigt ein optimiertes Makro, in dem jede Anweisung nur die Werte enthält, die geändert werden müssen.
- Während der gesamten Abfolge bleibt die Haltung des Roboters unverändert.
- Der erste Befehl bewegt den Roboter mit der vorgegebenen Vorschubgeschwindigkeit in die vollständige Zielposition.
N2Nur aktualisieren Y-Achse。N3undN4Nur aktualisieren Z-Achse。N5Aktualisierung X-Achse und die Geschwindigkeit weiter zu verbessern.N6Gleichzeitig aktualisieren Y-Achse und Z-Achse。
Durch das Weglassen der Werte, die sich nicht geändert haben, bleiben Makros kompakter und lassen sich leichter lesen und bearbeiten.
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
}