Zum Inhalt

Spezifikationen

Eine Spezifikation sagt, was verlangt ist: welche Abweichung an welchem Punkt zulässig ist, nach Herstellerangabe, Norm oder Kundenvereinbarung. Wie gemessen wird, steht im Prüfplan, wer abliest (Runner, Kamera, Prüfer), entscheidet der Messplatz. Die Kalibrierung setzt die drei beim Laden zusammen. Warum das getrennt ist, begründet das ADR Eine Spezifikation mit Optionen.

Eine Spezifikation, mehrere Optionen

Je Gerätetyp gibt es eine Spezifikation. Sie fasst alle Angaben zu diesem Typ zusammen und unterscheidet sie in Optionen:

Art Beispiel
Hersteller „Hersteller, 1 Jahr“ aus dem Datenblatt
Norm „Klasse A“ und „Klasse B“ nach DIN EN 60751
Kunde engere oder weitere Grenzen, die ein Kunde vereinbart hat
Verwendung „Kurzprüfung“ mit weniger Punkten am selben Gerät

Jede Zeile der Spezifikation trägt je Option eine eigene Toleranz oder wird von der Option nicht verwendet (leere Zelle). So stehen Hersteller, Norm und Kunde nebeneinander, und der Unterschied ist je Zeile sichtbar. Eine Option hat außerdem Intervall, Vertrauensfaktor k und eine Notiz, etwa den Abschnitt der Norm. Genau eine Option ist Standardoption.

Eine Kundenoption verweist auf den Kunden, statt ihn zu nennen. Sie erscheint nur bei Kalibrierungen dieses Kunden, und Export und KI-Abgleich nehmen sie nur mit, wenn sie ausdrücklich gewählt ist.

Wo Spezifikationen liegen

Ort Pfad Wirkung
Gerätetyp /v2/device-type/[id] → Tab Spezifikationen gilt für alle Geräte dieses Typs
Gerät /v2/inventory/[id] → Tab Spezifikationen nur für gerätebezogene Daten, etwa einen Werksprüfbericht

Eine Gerätespezifikation ersetzt die des Typs ganz, sobald sie eine freigegebene Revision hat. Es wird nichts zusammengeführt und nichts kopiert. Die Gerätesicht zeigt beide Karten und markiert, welche gilt.

Am Gerät steht außerdem die Standardoption dieses Geräts. Sie wird für seine Kalibrierungen vorbelegt; für ein Normal ist sie die Option, mit der seine Genauigkeit gerechnet wird.

Zeilen

Art Bedeutung
Band Toleranz für jeden Wert zwischen Anfang und Ende. Gibt nur eine Toleranz, verlangt keinen Prüfpunkt.
Punkt Toleranz für genau einen Wert. Jede Option, die die Zeile nutzt, verlangt diesen Prüfpunkt.
Abgeleitete Grenze Grenze einer abgeleiteten Größe, heute die Umkehrspanne zwischen steigender und fallender Ablesung.
Beitrag Unsicherheitsbeitrag, den das Gerät als Normal mitbringt, etwa die Homogenität eines Bads. Wert je Option als Halbbreite einer Rechteckverteilung.
Überschrift, Kommentar Text ohne Zahlen.

Die Felder einer Zeile:

Feld Bedeutung
Funktion Messfunktion aus dem Katalog, etwa Gleichspannung oder Temperatur. Ein Punkt des Plans findet die Zeile über Funktion, Einheit und Wert. Kennt der Katalog die Einheit nicht (etwa lx, dB, rpm, l/min), bleibt die Funktion leer, und der Punkt findet die Zeile über die Einheit; für eine Einheit des Katalogs ist die Funktion Pflicht.
Präfix / Einheit SI-Präfix und Einheitenzeichen getrennt, die Zahlen bleiben wie im Datenblatt. Wer mV als Einheit schreibt, bekommt beim Speichern Präfix m und Einheit V; Pegel und Skalen wie dB, dBm und °C sowie Einheiten wie min bleiben ungeteilt.
Bereich Messbereich, auf den der Prüfling gestellt wird, nicht der Prüfpunkt; Bezug von /-Termen.
Wert bzw. Anfang / Ende Der Punkt, oder die Grenzen des Bands mit Vorzeichen. „Betrag“ vergleicht 0 … 1000 V auch mit −500 V.
Modifier von / bis Zweiter Parameter, meist das Frequenzband einer Wechselgröße.
Auflösung Anzeigeauflösung in dieser Zeile, Bezug von D-Termen.
Toleranz je Option MET/CAL-Schreibweise: 0.05% 0.003U (Prozent vom Wert plus absolut in der Einheit der Zeile; U ist keine Digit-Zahl), 0.05% 3D (Digits), 0.1/ (Prozent vom Bereich, ohne Bereich vom Sollwert des Prüfpunkts, etwa bei einem Geber), ppm. 4 µm an einer Zeile in mm sind also 0.004U oder bei Auflösung 0,001 4D. Leer heißt: diese Option nutzt die Zeile nicht.
Fundstelle Woher die Zeile stammt: Seite des Datenblatts, beim MET/CAL-Import FSC, Schritt und Rolle wie 5500 1.003 · UUT Indicated. Nur zur Nachverfolgung, nie Teil einer Rechnung. Die Liste zeigt sie unter der Zeile.
Beispiel: Pt100, Optionen Klasse A, Klasse B, Kurzprüfung

Zeile                       Klasse A      Klasse B      Kurzprüfung
Band  −50 … 250 °C          0.15U 0.2%    0.3U 0.5%     0.3U 0.5%
Punkt   0 °C                0.15U         0.3U          0.3U
Punkt 100 °C                0.35U         0.8U          (nicht verwendet)

Eine Kalibrierung mit „Kurzprüfung“ verlangt hier nur den Punkt bei 0 °C; mit „Klasse A“ verlangt sie 0 °C und 100 °C, jeweils mit den Grenzen der Klasse A.

Entwurf, Freigabe, Revisionen

Eine Spezifikation ist ein gelenktes Dokument:

  • Bearbeitet wird nur der Entwurf (Entwurf bearbeiten oder Neuen Entwurf beginnen), höchstens einer je Spezifikation. Der Editor zeigt Zeilen und Optionen als Matrix.
  • Entwurf freigeben prüft den Inhalt (mindestens eine Option, Standardoption vorhanden, lesbare Toleranzen, keine zwei gleichen Punktzeilen in einer Option) und macht die Revision mit Person, Zeitpunkt und Inhalts-Hash unveränderlich. Sie gilt ab dann für neue Kalibrierungen.
  • Revisionen zeigt alle Stände; der Vergleich nennt je Option, was sich gegenüber der vorigen Revision geändert hat.
  • Eine freigegebene Revision wird zurückgezogen (mit Grund), nie gelöscht. Gelöscht wird nur ein Entwurf; eine Spezifikation ohne freigegebene Revision verschwindet mit ihm.
  • Mit dem Laborschalter Vier-Augen-Prinzip bei der Freigabe (Einstellungen › Kalibrierung › Spezifikationen) gibt nur frei, wer den Entwurf nicht zuletzt bearbeitet hat. Ab Werk aus.

Ein Entwurf zählt in keiner Prüfung. Kalibrierungen behalten die Revision, mit der sie geladen wurden, bis jemand ihre Option erneut übernimmt.

Wie eine Kalibrierung ihre Toleranzen bekommt

  1. Im Reiter Prüfschritte der Kalibrierung steht über dem Prüfplan, gegen welche Spezifikation und Option bewertet wird. Vorbelegt wird aus der Standardoption des Geräts, dann aus einer Option für den Kunden des Geräts, dann aus der Standardoption der Spezifikation. Gibt es nur eine Option, gilt sie von selbst. Sind mehrere wählbar und ist keine gewählt, lädt der Plan nicht (Fehler spec_no_choice): sonst käme er ohne Toleranzen und ohne die optionalen Punkte an, und das Neuladen nach der Wahl löschte erfasste Werte.
  2. Beim Laden des Plans friert calServer die Toleranzen ein. Eine Toleranz im Plan (am Schritt oder an seiner Gruppe) gewinnt; sie ist ein anderer Maßstab und wird auf dem Schein so gekennzeichnet. Sonst kommt sie aus der gewählten Option, mit Bereich und Auflösung derselben Zeile.
  3. Passt keine Zeile oder passen mehrere, bleibt der Punkt ohne Toleranz und damit ohne Urteil, nie mit der ersten Zeile. Die Messwerterfassung zeigt je Punkt die Herkunft („Spezifikation · Option“, „Plan“, „Plan (Gruppe)“, „Keine Toleranz“) und den Grund.
  4. Wird die Option nach dem Laden geändert, verlangt calServer, den Plan neu zu laden.

Was die Abschlussprüfung daraus macht, steht unter Freigabe › Spezifikationserfüllung.

Import und Export

Beides arbeitet mit dem JSON-Format calserver.specification, Version 2 (Optionen und Zeilen). Ein Export lässt sich unverändert wieder importieren, auch an einem anderen Gerätetyp. Version 1 (ein Blatt je Variante mit den alten Spalten) wird beim Import umgewandelt: ein Blatt wird eine Option.

  • Export: über das Menü einer Spezifikation, oder für eine einzelne Revision im Dialog Revisionen. Kundenoptionen gehen nur mit, wenn sie ausdrücklich angefordert sind.
  • Import: Importieren öffnet einen Dialog mit Datei-Auswahl oder Direkteingabe. Die Datei-Auswahl nimmt auch MET/CAL-Genauigkeitsdateien (.acc); calServer liest Kopf und Tabelle und stellt das Ergebnis als JSON ins Feld. Vorschau zeigt vorab, was je Eintrag passieren würde, ohne etwas zu schreiben.
Modus Verhalten
Neu anlegen legt die Spezifikation mit einem ersten Entwurf an; scheitert, wo Typ oder Gerät schon eine haben
Vorhandene überspringen lässt eine vorhandene Spezifikation unberührt
Vorhandene ersetzen schreibt den Inhalt in den Entwurf der vorhandenen Spezifikation; freigegebene Revisionen bleiben
Optionen ergänzen fügt die Optionen des Payloads in den Entwurf ein; gleiche Zeilen bekommen nur die neue Toleranz. Der Weg, eine ACC-Datei oder ein weiteres Datenblatt an einen Typ zu bringen, der schon eine Spezifikation hat

Importe aus Extraktion, MET/CAL oder ACC bleiben immer Entwurf, bis ein Mensch freigibt.

{
  "format": "calserver.specification",
  "version": 2,
  "specifications": [
    {
      "name": "Pt100 Widerstandsthermometer",
      "default_option": "class-b",
      "options": [
        { "key": "class-a", "name": "Klasse A", "kind": "standard", "note": "DIN EN 60751" },
        { "key": "class-b", "name": "Klasse B", "kind": "standard", "note": "DIN EN 60751" },
        { "key": "short", "name": "Kurzprüfung", "kind": "usage" }
      ],
      "rows": [
        { "key": "h1", "kind": "header", "description": "Temperatur" },
        { "key": "band", "kind": "band", "function": "temp", "unit": "°C",
          "range_start": -50, "range_end": 250,
          "tolerances": { "class-a": "0.15U 0.2%", "class-b": "0.3U 0.5%", "short": "0.3U 0.5%" } },
        { "key": "p0", "kind": "point", "function": "temp", "unit": "°C", "value": 0,
          "tolerances": { "class-a": "0.15U", "class-b": "0.3U", "short": "0.3U" } },
        { "key": "p100", "kind": "point", "function": "temp", "unit": "°C", "value": 100,
          "tolerances": { "class-a": "0.35U", "class-b": "0.8U" } }
      ]
    }
  ]
}

Der Schlüssel einer Option bleibt über Revisionen gleich; Kalibrierungen und Geräte verweisen auf ihn. IDs sind nicht Teil des Payloads, er ist zwischen Systemen übertragbar.

Aus dem MET/CAL-Import

Beim Import einer MET/CAL-Prozedur (einzeln oder als Projekt) werden ihre Messpunkte eine Option metcal-<prozedur> (Art Verwendung) im Entwurf der Spezifikation des gewählten Gerätetyps. Fehlt die Spezifikation, entsteht sie. Ein Prüfpunkt wird eine Punktzeile, auch ein negativer, und jede Zeile trägt ihre Fundstelle (FSC, Schritt, Rolle). Überschriften der Prozedur kommen mit, eine Überschrift ohne eigene Punkte als Klammer über die folgende Gruppe.

Ein erneuter Import derselben Prozedur ersetzt die Option im Entwurf. Ist die Option schon freigegeben, ersetzt der Import nichts stillschweigend, sondern fragt:

Wahl Was geschieht
Neue Version Die Option wird im Entwurf der nächsten Revision ersetzt. Bis dieser freigegeben ist, gilt die freigegebene Revision.
Weitere Option Die Messpunkte kommen als eigene Option mit neuem Namen daneben, ebenfalls im Entwurf.
Behalten Nichts wird importiert; das Ergebnis nennt die freigegebene Option. Nur im Projektimport, der einmal vorab für alle Pläne fragt.

Der Prüfplan aus dem Projektimport trägt kein tol, sobald seine Prozedur eine Option geworden ist (auch bei „Behalten“, denn dann ist die Option freigegeben): Die Toleranz kommt aus der gewählten Option, und bis zu deren Freigabe bewertet der Plan nichts. Im Plan gewönne tol immer über die Spezifikation, die Option käme nie zum Zug. Nur ohne Gerätetyp (kein Import der Spezifikation) oder wenn die Spezifikation nicht angelegt werden konnte, behält der Plan tol als einzigen Maßstab.

Dasselbe gilt für Bausteine aus dem Import: Bekommen alle Pläne, die eine Unterprozedur rufen, eine Option, trägt auch der Baustein kein tol. Rufen Pläne mit und ohne Option dieselbe Unterprozedur, wird sie kein Baustein, sondern bleibt in jedem Plan eingefügt, damit der Plan ohne Option sein tol behält.

Siehe calScript › MET/CAL-Import.

Bestände aus den alten Tabellen

Vor dem Optionsmodell lagen Spezifikationen in den Tabellen specification und specification_detail; V2 liest sie nicht mehr. Die V1→V2-Übernahme holt sie am Ende selbst in das Optionsmodell. Ein V2-System, das seine Blätter dort gepflegt hat (MET/CAL-Import, import_specifications vor dem 2026-11-02), übernimmt sie von Hand:

docker exec calserver-api-v2 php artisan specifications:adopt-v1          # Bericht, schreibt nichts
docker exec calserver-api-v2 php artisan specifications:adopt-v1 --apply  # übernimmt, fragt vorher

Je Kontext (Gerätetyp oder Gerät) entsteht eine Spezifikation, je Blatt eine Option. Ein Kontext, der in V2 schon eine Spezifikation hat, bleibt unberührt; die alten Tabellen werden nur gelesen.

Spezifikationen per MCP erzeugen

Werkzeug Zweck
describe_specification_format Optionen, Zeilenarten, Lookup- und Freigaberegeln, Import-Modi, Beispiel
query_specifications Bestand im Ziel-Kontext prüfen
get_specification Spezifikationen im Import-Format ausgeben
import_specifications Stapel schreiben, mit Modus und Trockenlauf
delete_specification Spezifikationen löschen, die nie freigegeben waren; eine freigegebene wird zurückgezogen, nicht gelöscht

Empfohlener Ablauf: erst describe_specification_format, dann query_specifications gegen den Ziel-Typ, dann import_specifications mit dry_run und schließlich ohne.

Schreibrechte

Schreibende MCP-Werkzeuge verlangen specification_edit bzw. specification_delete und sind zusätzlich über mcp.writes_enabled sowie den Demo-Modus abgesichert. Ein Trockenlauf funktioniert auch bei abgeschalteten Schreibzugriffen.

Prozedur erzeugen

Prozedur erzeugen im Menü legt aus den Punktzeilen einer Option einen Prüfplan am Gerätetyp an. Der Plan beschreibt nur das Verfahren und trägt keine Toleranzen; die kommen beim Laden aus der Option, die die Kalibrierung gewählt hat. Hat die Option keine Punktzeilen, wird je Band ein Punkt am Bereichsende vorgeschlagen. Siehe Prozeduren und Prüfschritte.

Berechtigungen

Operation Wirkung
specification_view Lesen, Revisionen, Vergleich und Export
specification_edit Anlegen, Entwurf bearbeiten und verwerfen, Importieren, Freigeben, Zurückziehen, Standardoption eines Geräts setzen
specification_delete Spezifikation löschen, die nie freigegeben war
calibration_edit Option einer Kalibrierung wählen
procedure_edit Prozedur aus Spezifikation erzeugen