Frage:
Was ist die "detaillierte Formatklassifizierung" der ISO 6983 (G-Code-Spezifikation)
Adrian Maire
2018-08-11 20:43:00 UTC
view on stackexchange narkive permalink

Für die Entwicklung eines CNC-Systems lese ich "ISO 6983-1: 2009".

Darin gibt es mehrere Verweise auf das, was sie als "detaillierte Formatklassifizierung" bezeichnen, die ich nur schwer verstehen kann:

Es soll eine Klassifizierung der Daten in einem Block verwendet werden um die Programmierdetails für eine System- und Maschinenkonfiguration anzugeben. Dies wird als detaillierte Formatklassifizierung bezeichnet und ist in Anhang C beschrieben.

...

In der detaillierten Formatklassifizierung ist keine Auslassung anzugeben (siehe Anhang C).

...

Die Anzahl der Ziffern wird durch die detaillierte Formatklassifizierung angegeben (siehe Anhang C).

...

Es scheint, dass diese "detaillierte Formatklassifizierung" eine Art Definition des Computers ist, auf dem das Programm ausgeführt wird. In diesem Fall verstehe ich jedoch nicht, warum dies Teil des Programms ist und nicht einige Werte des Steuerungssystems.

Meine Frage lautet: Was genau ist diese "detaillierte Formatklassifizierung"? P. >

  • Ist es Teil des Programms?
  • Was ist der Zweck?

enter image description here

Detaillierte Informationen befinden sich in jeder Zeilenfolge, zum Beispiel ist N01 die Anzahl der Zeilenbefehle, dann ist N02 die andere Zeilenfolge, dann N03; Der Benutzer oder die Schnittstelle zum Erstellen seines eigenen Codes bestimmt, ob die Zeilennummernbefehle eins nach dem anderen oder 10 nach 10 sind, um sie manuell in andere Zeilenbefehle wie S-Parameter, M03- und M04-Funktionen einzufügen, um andere Mechanismen zu aktivieren oder zu deaktivieren Der G-Code-Generator kann das nicht. Diese Befehlszeilen N01 bis N9999999. Wenn eine ISO aufgerufen wird, soll die Art und Weise, wie ein Verfahren oder eine Anweisung dokumentiert wird, standardisiert werden. Auf diese Weise kann jeder, der den Code kennt, ihn leicht lesen.
@FernandoBaltazar Bitte antworten Sie nicht über Kommentare. Machen Sie eine vollständige Antwort.
@Trish: Sein Kommentar IMO beantwortet die Frage nicht, deshalb ist es ein Kommentar und keine Antwort. Oder verstehe ich das falsch?
Es ist mehr als nur ein Kommentar, sondern ein Antwortversuch.
@Trish Dies ist ein Hinweis zum Lesen der detaillierten ISO-6983-Klassifizierung und kein Versuch, die vollständige Frage zu beantworten. Ein Tipp gibt normalerweise eine Richtung vor, in die die Leute gehen wollen. Aber wenn die Leute, die fragen, keine Ahnung von ISO-Standards und Programmierung haben, werden sie den Hinweis nicht verstehen. wahrscheinlich werden sie kommentieren, dass die Antwort keine Antwort hat und ich eine Abstimmung bekommen könnte. Auch mein Kommentar legt nahe, dass dies Teil des Programms und des Zwecks gemäß seinen Fragen ist.
Zur Verdeutlichung: Die Frage bezieht sich speziell auf Anhang C: "Detaillierte Formatklassifizierung". Mit anderen Worten, ich kann G-Code lesen / schreiben und habe ein anständiges Wissen über Normungseinheiten wie ISO. Der Kommentar von @FernandoBaltazar, scheint mir das allgemeine G-Code- und ISO-Thema mehr als den "Anhang C" anzusprechen. Zum Beispiel ist G02 normalerweise für eine Kreisbewegung, aber in diesem Fall zeigt x + 053 nicht die relative / absolute Position an, sondern die Anzahl der Stellen links / rechts vom Dezimalzeichen?
@AdrianMaire: D Eine vorherige Linie sollte die Position des neuen Lochs haben. Wenn angezeigt wird, ist die Position absolut, wenn nicht, ist die Position relativ. Die Bewegungen +053 sind relativ zur Position. Gott sei Dank können Sie Gcode lesen und schreiben.
@FernandoBaltazar Fürchte dich nicht vor den Abstimmungen. Sie haben die Wahl, jede Antwort zu löschen, die zu viele Abstimmungen erhält oder sich als falsch herausstellt. Antworten in Kommentaren, die sich in Diskussionen verwandeln, sind schlecht und können nicht bearbeitet werden (und ich denke in diesem Fall sind sie tatsächlich falsch).
Einer antworten:
Sean Houlihane
2018-08-14 00:06:17 UTC
view on stackexchange narkive permalink

Dies ist einfach die formalisierte Definition der Syntax, sodass ein Parser geschrieben werden kann, um jeden legalen G-Code zu interpretieren. Ohne dies gibt es Unklarheiten - nicht in der allgemeinen Operation, sondern in den Grenzen dessen, was "legal" ist und was abgelehnt werden sollte.

Nehmen Sie das Beispiel X + 053 , Dies ist keine Position von 53 Einheiten, sondern:

  • Adresse X
  • Vorzeichen erforderlich (in dieser Implementierung)
  • Führende Nullen können weggelassen werden.
  • Bis zu 5 Größenordnungen vor der Dezimalstelle
  • Bis zu 3 Stellen Genauigkeit nach der Dezimalstelle

Dies bedeutet, dass X von +99999.999 bis -99999.999 reichen kann - eine Interpretation, die mit der Aussprache am Ende der Seite übereinstimmt.

Wie im Text angedeutet, ist es möglich um verschiedene Zahlensysteme mit fester Genauigkeit zu verwenden (denken Sie an die Verwendung von ganzzahligen Millimetern anstelle von Dezimalmetern) und auch am höchstwertigen Bit zu verankern, damit 001 00100.000 darstellen könnte. Es kann hilfreich sein, sich daran zu erinnern, dass diese Spezifikationen in den Tagen dedizierter Hardware und nicht für Allzweckcomputer entwickelt wurden, als das tragbare Standardspeichermedium ~ 600 kB enthielt, und sich auf tatsächliche Maschinen beziehen, die lange zuvor entwickelt wurden.

"Die zweite Ziffer gibt die Anzahl der Dezimaldekaden vor dem Dezimalzeichen an." Dies scheint nicht die übliche Bedeutung der Adresse zu sein: z. X + 053 zeigt normalerweise die Position / das Inkrement zu X53 an, nicht, dass 5 Dezimalstellen vor dem Dezimalzeichen stehen. Verstehe ich das völlig falsch?
Darüber hinaus ist das Format bereits in Kapitel 5 formalisiert.
Meine Antwort wurde aktualisiert, um jetzt zu erklären, dass ich weiß, was los ist ...
Danke für deine Antwort. Aber warum ist diese Syntax erforderlich, warum sollte ein X + 053 erfunden werden, wenn es sagen könnte: "Das System muss angeben / dokumentieren, ob führende Nullen weggelassen werden können."
Es wird nicht angegeben, ob führende Nullen weggelassen werden können, sondern es wird eine internationale Notation für die Erfassung des verwendeten Zahlensystems angegeben - geschrieben ~ 50 Jahre nach Beginn der Entwicklung dieser Codes. Stellen Sie sich vor, Sie möchten, dass eine moderne Maschine alten G-Code verbraucht. Sie benötigen eine klare Methode, um _how_ zu definieren, um ihn zu analysieren.
Tut mir leid, dass ich etwas langsam bin, um es zu bekommen. Wo würdest du dieses `%: / DS N03 G02 X + 053..` schreiben? In Ihrem G-Code-Programm? Ist es eine Einstellung in der Benutzeroberfläche des Geräts? Vielleicht ein "# define" in der Parser-Implementierung?
Ich bin nicht sicher, ob dieser Code jemals direkt in maschinenlesbarer Form verwendet werden sollte. Das nächste (glaube ich) wäre das #define für den Parser. Betrachten Sie es als ähnlich wie die LOCALE-Einstellungen.
Lassen Sie uns [diese Diskussion im Chat fortsetzen] (https://chat.stackexchange.com/rooms/81644/discussion-between-adrian-maire-and-sean-houlihane).


Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 4.0-Lizenz, unter der er vertrieben wird.
Loading...