@oimlsmart/primmel-packages 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +60 -0
- package/LICENSE +21 -0
- package/README.md +68 -0
- package/acme-cgm-200/model/cgm200.prl +284 -0
- package/acme-cgm-200/model/r144-map.prl +337 -0
- package/acme-cgm-200/package.primmel +39 -0
- package/acme-cgm-system/model/cgm-system.prl +125 -0
- package/acme-cgm-system/model/r144-map.prl +75 -0
- package/acme-cgm-system/model/sample-line.prl +42 -0
- package/acme-cgm-system/package.primmel +23 -0
- package/acme-lc500/model/lc500.prl +218 -0
- package/acme-lc500/model/passport.prl +43 -0
- package/acme-lc500/model/r60-map.prl +161 -0
- package/acme-lc500/model/twin-cert-map.prl +114 -0
- package/acme-lc500/package.primmel +35 -0
- package/acme-md3xx/model/md350.prl +317 -0
- package/acme-md3xx/model/r129-map.prl +346 -0
- package/acme-md3xx/package.primmel +49 -0
- package/acme-rs180/model/r91-map.prl +234 -0
- package/acme-rs180/model/rs180.prl +236 -0
- package/acme-rs180/package.primmel +47 -0
- package/ims-demo/model/ims.prl +23 -0
- package/ims-demo/model/isms-map.prl +60 -0
- package/ims-demo/model/qms-map.prl +73 -0
- package/ims-demo/package.primmel +42 -0
- package/isms-ref/model/isms.prl +34 -0
- package/isms-ref/package.primmel +35 -0
- package/iso-iec-17000/package.primmel +8 -0
- package/iso-iec-17000/terminology.prl +268 -0
- package/iso-iec-17025/package.primmel +10 -0
- package/iso-iec-17025/specification/requirements/lab.prl +474 -0
- package/iso-iec-17025/terminology.prl +72 -0
- package/iso-iec-17065/package.primmel +10 -0
- package/iso-iec-17065/specification/requirements/body.prl +446 -0
- package/iso-iec-17065/terminology.prl +103 -0
- package/iso-iec-17067/package.primmel +10 -0
- package/iso-iec-17067/specification/requirements/scheme-content.prl +300 -0
- package/iso-iec-17067/terminology.prl +24 -0
- package/oiml-cs/package.primmel +10 -0
- package/oiml-cs/specification/discrepancies.prl +26 -0
- package/oiml-cs/specification/requirements/cs.prl +515 -0
- package/oiml-cs-dataspace/.primmel-allowlist.prl +25 -0
- package/oiml-cs-dataspace/package.primmel +9 -0
- package/oiml-cs-dataspace/specification/dataspace.prl +73 -0
- package/oiml-cs-dataspace/specification/policies.prl +68 -0
- package/oiml-integrated-ref/model/probe-pairing.prl +71 -0
- package/oiml-integrated-ref/package.primmel +10 -0
- package/oiml-r129/.primmel-allowlist.prl +2 -0
- package/oiml-r129/evaluation/processes.prl +152 -0
- package/oiml-r129/evaluation/workflow.prl +48 -0
- package/oiml-r129/execution/forms/admin/adjustments-modifications.prl +30 -0
- package/oiml-r129/execution/forms/admin/checklist.prl +70 -0
- package/oiml-r129/execution/forms/admin/configuration.prl +31 -0
- package/oiml-r129/execution/forms/admin/equipment-info.prl +27 -0
- package/oiml-r129/execution/forms/admin/general-info.prl +63 -0
- package/oiml-r129/execution/forms/admin/identification.prl +49 -0
- package/oiml-r129/execution/forms/admin/sample-selection.prl +30 -0
- package/oiml-r129/execution/forms/admin/summary-results.prl +50 -0
- package/oiml-r129/execution/forms/emc/bursts.prl +88 -0
- package/oiml-r129/execution/forms/emc/esd.prl +66 -0
- package/oiml-r129/execution/forms/emc/low-voltage-battery.prl +58 -0
- package/oiml-r129/execution/forms/emc/rf-immunity-conducted.prl +59 -0
- package/oiml-r129/execution/forms/emc/rf-immunity-radiated.prl +59 -0
- package/oiml-r129/execution/forms/emc/surge.prl +61 -0
- package/oiml-r129/execution/forms/emc/voltage-dips.prl +62 -0
- package/oiml-r129/execution/forms/emc/voltage-variation.prl +58 -0
- package/oiml-r129/execution/forms/env/damp-heat-cyclic.prl +43 -0
- package/oiml-r129/execution/forms/env/damp-heat-steady.prl +50 -0
- package/oiml-r129/execution/forms/env/static-temperatures.prl +61 -0
- package/oiml-r129/execution/forms/shared/headers.prl +86 -0
- package/oiml-r129/execution/forms/tests/acoustics.prl +44 -0
- package/oiml-r129/execution/forms/tests/ambient-light.prl +46 -0
- package/oiml-r129/execution/forms/tests/construction-examination.prl +46 -0
- package/oiml-r129/execution/forms/tests/examination-checklist.prl +51 -0
- package/oiml-r129/execution/forms/tests/object-shape.prl +43 -0
- package/oiml-r129/execution/forms/tests/orientation-position.prl +31 -0
- package/oiml-r129/execution/forms/tests/repeatability.prl +65 -0
- package/oiml-r129/execution/forms/tests/speed-movement.prl +59 -0
- package/oiml-r129/execution/forms/tests/surface-characteristics.prl +44 -0
- package/oiml-r129/execution/forms/tests/warm-up-time.prl +35 -0
- package/oiml-r129/execution/subforms/dimension-measurement.prl +93 -0
- package/oiml-r129/layers.prl +50 -0
- package/oiml-r129/model/attributes.prl +243 -0
- package/oiml-r129/model/behaviors.prl +79 -0
- package/oiml-r129/model/capabilities.prl +29 -0
- package/oiml-r129/model/characteristics.prl +8 -0
- package/oiml-r129/model/conditions.prl +23 -0
- package/oiml-r129/model/instrument.prl +67 -0
- package/oiml-r129/model/state.prl +22 -0
- package/oiml-r129/model/twin.prl +23 -0
- package/oiml-r129/package.primmel +15 -0
- package/oiml-r129/payload/application.yaml +40 -0
- package/oiml-r129/payload/conditions-common-test.yaml +8 -0
- package/oiml-r129/payload/formulas-variants.yaml +33 -0
- package/oiml-r129/payload/promises.yaml +102 -0
- package/oiml-r129/payload/sample-data.yaml +300 -0
- package/oiml-r129/references.prl +306 -0
- package/oiml-r129/sources-prd/coverage.json +59 -0
- package/oiml-r129/sources-prd/r129-1.sentences.json +4238 -0
- package/oiml-r129/sources-prd/r129-2.sentences.json +1139 -0
- package/oiml-r129/sources-prd/r129-3.sentences.json +3809 -0
- package/oiml-r129/sources-prd/r129-4.sentences.json +1227 -0
- package/oiml-r129/specification/calculations.prl +83 -0
- package/oiml-r129/specification/conformance/disturbance-tests.prl +212 -0
- package/oiml-r129/specification/conformance/effect-tests.prl +70 -0
- package/oiml-r129/specification/conformance/examinations.prl +83 -0
- package/oiml-r129/specification/conformance/metrological-tests.prl +178 -0
- package/oiml-r129/specification/formulas.prl +9 -0
- package/oiml-r129/specification/requirements/electronic.prl +46 -0
- package/oiml-r129/specification/requirements/metrological.prl +83 -0
- package/oiml-r129/specification/requirements/object-limitations.prl +99 -0
- package/oiml-r129/specification/requirements/software.prl +57 -0
- package/oiml-r129/specification/requirements/technical.prl +134 -0
- package/oiml-r129/specification/symbols.prl +187 -0
- package/oiml-r129/specification/tables.prl +74 -0
- package/oiml-r129/terminology.prl +415 -0
- package/oiml-r129/value-types.prl +40 -0
- package/oiml-r144/.primmel-allowlist.prl +2 -0
- package/oiml-r144/entities/instrument.prl +360 -0
- package/oiml-r144/entities/test-execution.prl +228 -0
- package/oiml-r144/entities/workflow.prl +2075 -0
- package/oiml-r144/evaluation/processes.prl +152 -0
- package/oiml-r144/evaluation/workflow.prl +48 -0
- package/oiml-r144/execution/forms/sec-3-report/03-01-laboratory-info.prl +19 -0
- package/oiml-r144/execution/forms/sec-3-report/03-02-test-location.prl +14 -0
- package/oiml-r144/execution/forms/sec-3-report/03-03-manufacturer-info.prl +18 -0
- package/oiml-r144/execution/forms/sec-3-report/03-04-applicant-info.prl +19 -0
- package/oiml-r144/execution/forms/sec-3-report/03-05-type-identification.prl +80 -0
- package/oiml-r144/execution/forms/sec-3-report/03-06-type-composition.prl +31 -0
- package/oiml-r144/execution/forms/sec-3-report/03-07-visual-examination.prl +46 -0
- package/oiml-r144/execution/forms/sec-3-report/03-08-test-conclusions.prl +46 -0
- package/oiml-r144/execution/forms/sec-3-report/03-09-general-conclusion.prl +19 -0
- package/oiml-r144/execution/forms/sec-3-report/03-10-responsible-persons.prl +27 -0
- package/oiml-r144/execution/forms/sec-tests/ambient-pressure-test.prl +59 -0
- package/oiml-r144/execution/forms/sec-tests/bursts-mains-test.prl +52 -0
- package/oiml-r144/execution/forms/sec-tests/bursts-signal-test.prl +55 -0
- package/oiml-r144/execution/forms/sec-tests/cold-test.prl +48 -0
- package/oiml-r144/execution/forms/sec-tests/cross-sensitivity-test.prl +92 -0
- package/oiml-r144/execution/forms/sec-tests/damp-heat-test.prl +50 -0
- package/oiml-r144/execution/forms/sec-tests/documentation-examination.prl +52 -0
- package/oiml-r144/execution/forms/sec-tests/drift-test.prl +83 -0
- package/oiml-r144/execution/forms/sec-tests/dry-heat-test.prl +53 -0
- package/oiml-r144/execution/forms/sec-tests/error-determination.prl +37 -0
- package/oiml-r144/execution/forms/sec-tests/esd-test.prl +53 -0
- package/oiml-r144/execution/forms/sec-tests/flow-spillover-test.prl +83 -0
- package/oiml-r144/execution/forms/sec-tests/leakproofness-test.prl +41 -0
- package/oiml-r144/execution/forms/sec-tests/low-battery-test.prl +48 -0
- package/oiml-r144/execution/forms/sec-tests/power-reduction-test.prl +49 -0
- package/oiml-r144/execution/forms/sec-tests/power-supply-test.prl +57 -0
- package/oiml-r144/execution/forms/sec-tests/repeatability-test.prl +60 -0
- package/oiml-r144/execution/forms/sec-tests/response-time-test.prl +43 -0
- package/oiml-r144/execution/forms/sec-tests/rf-emf-test.prl +47 -0
- package/oiml-r144/execution/forms/sec-tests/shock-test.prl +50 -0
- package/oiml-r144/execution/forms/sec-tests/surge-test.prl +52 -0
- package/oiml-r144/execution/forms/sec-tests/vibration-test.prl +58 -0
- package/oiml-r144/execution/forms/sec-tests/warm-up-time-test.prl +69 -0
- package/oiml-r144/execution/forms/shared/headers.prl +132 -0
- package/oiml-r144/execution/subforms/cgm-point.prl +99 -0
- package/oiml-r144/layers.prl +44 -0
- package/oiml-r144/model/attributes.prl +679 -0
- package/oiml-r144/model/behaviors.prl +117 -0
- package/oiml-r144/model/capabilities.prl +99 -0
- package/oiml-r144/model/characteristics.prl +27 -0
- package/oiml-r144/model/conditions.prl +46 -0
- package/oiml-r144/model/instrument.prl +85 -0
- package/oiml-r144/model/state.prl +18 -0
- package/oiml-r144/model/twin.prl +25 -0
- package/oiml-r144/package.primmel +15 -0
- package/oiml-r144/payload/application.yaml +80 -0
- package/oiml-r144/payload/attributes-pair-list.yaml +18 -0
- package/oiml-r144/payload/conditions-common-test.yaml +74 -0
- package/oiml-r144/payload/formulas-variants.yaml +32 -0
- package/oiml-r144/payload/promises.yaml +118 -0
- package/oiml-r144/payload/sample-data.yaml +643 -0
- package/oiml-r144/references.prl +594 -0
- package/oiml-r144/sources-prd/coverage.json +114 -0
- package/oiml-r144/sources-prd/r144-1.sentences.json +2797 -0
- package/oiml-r144/sources-prd/r144-2.sentences.json +1627 -0
- package/oiml-r144/sources-prd/r144-3.sentences.json +838 -0
- package/oiml-r144/specification/calculations.prl +123 -0
- package/oiml-r144/specification/conformance/examination.prl +87 -0
- package/oiml-r144/specification/conformance/performance-tests.prl +755 -0
- package/oiml-r144/specification/formulas.prl +37 -0
- package/oiml-r144/specification/reference-materials.prl +87 -0
- package/oiml-r144/specification/requirements/controls.prl +51 -0
- package/oiml-r144/specification/requirements/metrological.prl +299 -0
- package/oiml-r144/specification/requirements/report.prl +35 -0
- package/oiml-r144/specification/requirements/technical.prl +455 -0
- package/oiml-r144/specification/symbols.prl +357 -0
- package/oiml-r144/specification/tables.prl +95 -0
- package/oiml-r144/specification/test-point-sets.prl +15 -0
- package/oiml-r144/terminology.prl +308 -0
- package/oiml-r144/value-types.prl +49 -0
- package/oiml-r60/.primmel-allowlist.prl +2 -0
- package/oiml-r60/entities/workflow.prl +2079 -0
- package/oiml-r60/evaluation/processes.prl +152 -0
- package/oiml-r60/evaluation/workflow.prl +48 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-01-authority-info.prl +76 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-02-synopsis.prl +20 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-03-01-examinations.prl +27 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-03-02-a-performance-general.prl +81 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-03-02-b-performance-digital.prl +104 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-04-01-manufacturer.prl +21 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-04-02-applicant.prl +44 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-04-03-testing-laboratories.prl +69 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-05-load-cell-type-info.prl +83 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-06-accessories.prl +41 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-07-sample-selection.prl +71 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-01-general-info.prl +103 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-02-performance-info.prl +66 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-03-digital-info.prl +35 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-04-photographs.prl +12 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-05-documentation.prl +27 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-06-inscriptions.prl +126 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-07-model-range.prl +143 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-09-12-previous-tests.prl +26 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-01-force-generating-system.prl +89 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-02-weights.prl +61 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-03-temperature-chamber.prl +96 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-04-climate-chamber.prl +96 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-05-indicator.prl +92 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-06-terminal.prl +86 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-07-barometric-pressure-meter.prl +62 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-08-thermometer.prl +62 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-09-moisture-analyser.prl +62 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-10-additional-test-equipment.prl +69 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/04-10-11-remarks.prl +11 -0
- package/oiml-r60/execution/forms/sec-4-evaluation-report/test-usage-matrix.prl +85 -0
- package/oiml-r60/execution/forms/sec-5-examination/documentation-examination.prl +53 -0
- package/oiml-r60/execution/forms/sec-5-examination/marking-examination.prl +104 -0
- package/oiml-r60/execution/forms/sec-5-examination/software-examination.prl +86 -0
- package/oiml-r60/execution/forms/sec-5-examination/suitability-examination.prl +56 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/barometric-pressure.prl +176 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/bursts.prl +129 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/conducted-emc.prl +170 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/creep-dr.prl +327 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/emc-susceptibility.prl +115 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/esd.prl +224 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/humidity-ch.prl +300 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/humidity-sh.prl +235 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/initial-tests.prl +129 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/load-cell-errors.prl +280 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/load-test.prl +29 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/performance-test-summary.prl +82 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/power-voltage.prl +166 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/repeatability.prl +189 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/short-time-power.prl +98 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/span-stability.prl +242 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/surge.prl +142 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/temperature-mdlo.prl +180 -0
- package/oiml-r60/execution/forms/sec-6-performance-tests/warm-up-time.prl +207 -0
- package/oiml-r60/execution/forms/shared/headers.prl +255 -0
- package/oiml-r60/execution/subforms/load-test-row.prl +55 -0
- package/oiml-r60/execution/subforms/test-procedures.prl +33 -0
- package/oiml-r60/layers.prl +46 -0
- package/oiml-r60/model/attributes.prl +642 -0
- package/oiml-r60/model/behaviors.prl +165 -0
- package/oiml-r60/model/capabilities.prl +57 -0
- package/oiml-r60/model/characteristics.prl +27 -0
- package/oiml-r60/model/conditions.prl +50 -0
- package/oiml-r60/model/instrument.prl +96 -0
- package/oiml-r60/model/processes.prl +54 -0
- package/oiml-r60/model/state.prl +22 -0
- package/oiml-r60/model/twin.prl +16 -0
- package/oiml-r60/package.primmel +16 -0
- package/oiml-r60/payload/annexes-part4.yaml +122 -0
- package/oiml-r60/payload/application.yaml +83 -0
- package/oiml-r60/payload/conditions-common-test.yaml +121 -0
- package/oiml-r60/payload/formulas-variants.yaml +55 -0
- package/oiml-r60/payload/promises.yaml +224 -0
- package/oiml-r60/payload/sample-data.yaml +5025 -0
- package/oiml-r60/payload/symbols-formula-notes.yaml +21 -0
- package/oiml-r60/references.prl +549 -0
- package/oiml-r60/sources-prd/coverage.json +740 -0
- package/oiml-r60/sources-prd/r60-1.sentences.json +2173 -0
- package/oiml-r60/sources-prd/r60-2.sentences.json +2961 -0
- package/oiml-r60/sources-prd/r60-3.sentences.json +4212 -0
- package/oiml-r60/sources-prd/r60-a.sentences.json +3361 -0
- package/oiml-r60/specification/calculations.prl +318 -0
- package/oiml-r60/specification/conformance/class-specific.prl +1120 -0
- package/oiml-r60/specification/conformance/electronic.prl +483 -0
- package/oiml-r60/specification/conformance/examination.prl +183 -0
- package/oiml-r60/specification/conformance/metrological.prl +478 -0
- package/oiml-r60/specification/constraints.prl +58 -0
- package/oiml-r60/specification/formulas-used.prl +43 -0
- package/oiml-r60/specification/formulas.prl +20 -0
- package/oiml-r60/specification/requirements/class-specific.prl +655 -0
- package/oiml-r60/specification/requirements/classification.prl +114 -0
- package/oiml-r60/specification/requirements/electronic.prl +222 -0
- package/oiml-r60/specification/requirements/metrological.prl +381 -0
- package/oiml-r60/specification/requirements/technical.prl +146 -0
- package/oiml-r60/specification/symbols.prl +599 -0
- package/oiml-r60/specification/tables.prl +182 -0
- package/oiml-r60/specification/test-sequences.prl +72 -0
- package/oiml-r60/terminology.prl +920 -0
- package/oiml-r60/value-types.prl +46 -0
- package/oiml-r91/.primmel-allowlist.prl +3 -0
- package/oiml-r91/entities/instrument.prl +359 -0
- package/oiml-r91/entities/workflow.prl +2075 -0
- package/oiml-r91/evaluation/processes.prl +152 -0
- package/oiml-r91/evaluation/workflow.prl +48 -0
- package/oiml-r91/execution/forms/evidence-file.prl +41 -0
- package/oiml-r91/execution/forms/report-evaluation/appraisal.prl +30 -0
- package/oiml-r91/execution/forms/report-evaluation/checklist-summary.prl +43 -0
- package/oiml-r91/execution/forms/report-evaluation/checklist.prl +76 -0
- package/oiml-r91/execution/forms/report-evaluation/configuration-samples.prl +22 -0
- package/oiml-r91/execution/forms/report-evaluation/corrective-actions.prl +24 -0
- package/oiml-r91/execution/forms/report-evaluation/descriptions.prl +47 -0
- package/oiml-r91/execution/forms/report-evaluation/evaluation-identification.prl +219 -0
- package/oiml-r91/execution/forms/report-evaluation/test-report-summary.prl +33 -0
- package/oiml-r91/execution/forms/report-general/adjustments.prl +12 -0
- package/oiml-r91/execution/forms/report-general/alignment-aiming.prl +17 -0
- package/oiml-r91/execution/forms/report-general/checking-facility.prl +17 -0
- package/oiml-r91/execution/forms/report-general/configuration.prl +12 -0
- package/oiml-r91/execution/forms/report-general/identification.prl +216 -0
- package/oiml-r91/execution/forms/report-general/indications-controls.prl +17 -0
- package/oiml-r91/execution/forms/report-general/sealing.prl +21 -0
- package/oiml-r91/execution/forms/report-general/software-description.prl +26 -0
- package/oiml-r91/execution/forms/report-general/summary-environmental.prl +35 -0
- package/oiml-r91/execution/forms/report-general/summary-tests.prl +35 -0
- package/oiml-r91/execution/forms/report-general/test-equipment.prl +36 -0
- package/oiml-r91/execution/forms/report-general/test-interface.prl +16 -0
- package/oiml-r91/execution/forms/report-tests/01-01-field-test.prl +84 -0
- package/oiml-r91/execution/forms/report-tests/01-02-statistical-analysis.prl +76 -0
- package/oiml-r91/execution/forms/report-tests/01-03-image-evidence.prl +30 -0
- package/oiml-r91/execution/forms/report-tests/02-01-dynamic-performance.prl +92 -0
- package/oiml-r91/execution/forms/report-tests/02-02-speed-linearity.prl +23 -0
- package/oiml-r91/execution/forms/report-tests/02-03-distance-linearity.prl +67 -0
- package/oiml-r91/execution/forms/report-tests/02-04-angle-linearity.prl +59 -0
- package/oiml-r91/execution/forms/report-tests/03-01-dry-heat-operating.prl +38 -0
- package/oiml-r91/execution/forms/report-tests/03-02-dry-heat-storage.prl +48 -0
- package/oiml-r91/execution/forms/report-tests/03-03-cold-operating.prl +40 -0
- package/oiml-r91/execution/forms/report-tests/03-04-cold-storage.prl +48 -0
- package/oiml-r91/execution/forms/report-tests/03-05-damp-heat-cyclic.prl +40 -0
- package/oiml-r91/execution/forms/report-tests/03-06-water.prl +48 -0
- package/oiml-r91/execution/forms/report-tests/03-07-sand-and-dust.prl +48 -0
- package/oiml-r91/execution/forms/report-tests/03-08-salt-mist.prl +48 -0
- package/oiml-r91/execution/forms/report-tests/03-09-vibration-random.prl +40 -0
- package/oiml-r91/execution/forms/report-tests/03-10-mechanical-shock.prl +48 -0
- package/oiml-r91/execution/forms/report-tests/03-11-dc-mains-voltage-variation.prl +40 -0
- package/oiml-r91/execution/forms/report-tests/03-12-ripple-on-dc-mains.prl +47 -0
- package/oiml-r91/execution/forms/report-tests/03-13-ac-mains-voltage-variation.prl +40 -0
- package/oiml-r91/execution/forms/report-tests/03-14-ac-mains-frequency-variation.prl +40 -0
- package/oiml-r91/execution/forms/report-tests/03-15-dc-mains-voltage-dips.prl +46 -0
- package/oiml-r91/execution/forms/report-tests/03-16-ac-mains-voltage-dips.prl +46 -0
- package/oiml-r91/execution/forms/report-tests/03-17-ac-mains-frequency-harmonics.prl +47 -0
- package/oiml-r91/execution/forms/report-tests/03-18-vlf-lf-disturbances.prl +46 -0
- package/oiml-r91/execution/forms/report-tests/03-19-bursts-ac-dc-mains.prl +44 -0
- package/oiml-r91/execution/forms/report-tests/03-20-surges-ac-dc-mains.prl +45 -0
- package/oiml-r91/execution/forms/report-tests/03-21-bursts-signal-lines.prl +45 -0
- package/oiml-r91/execution/forms/report-tests/03-22-surges-signal-lines.prl +46 -0
- package/oiml-r91/execution/forms/report-tests/03-23-ac-mains-magnetic-field.prl +45 -0
- package/oiml-r91/execution/forms/report-tests/03-24-conducted-rf-common-mode.prl +46 -0
- package/oiml-r91/execution/forms/report-tests/03-25-rf-electromagnetic-fields.prl +49 -0
- package/oiml-r91/execution/forms/report-tests/03-26-electrostatic-discharges.prl +47 -0
- package/oiml-r91/execution/forms/report-tests/03-27-internal-battery-low-voltage.prl +40 -0
- package/oiml-r91/execution/forms/report-tests/03-28-road-vehicle-battery.prl +40 -0
- package/oiml-r91/execution/forms/report-tests/03-29-transient-supply-lines.prl +47 -0
- package/oiml-r91/execution/forms/report-tests/03-30-transient-other-lines.prl +45 -0
- package/oiml-r91/execution/forms/report-tests/03-31-battery-cranking.prl +45 -0
- package/oiml-r91/execution/forms/report-tests/03-32-load-dump.prl +47 -0
- package/oiml-r91/execution/forms/report-tests/03-33-acceleration.prl +66 -0
- package/oiml-r91/execution/forms/report-tests/03-34-further-influence.prl +60 -0
- package/oiml-r91/execution/forms/report-tests/03-35-installation-alignment.prl +29 -0
- package/oiml-r91/execution/forms/report-tests/04-01-doppler-radar.prl +43 -0
- package/oiml-r91/execution/forms/report-tests/04-02-range-finding.prl +42 -0
- package/oiml-r91/execution/forms/report-tests/04-03-average-speed.prl +41 -0
- package/oiml-r91/execution/forms/report-tests/04-04-fixed-distance.prl +40 -0
- package/oiml-r91/execution/forms/report-tests/04-05-image-based.prl +41 -0
- package/oiml-r91/execution/forms/report-tests/04-06-across-road.prl +42 -0
- package/oiml-r91/execution/forms/report-tests/05-01-moving-field-test.prl +29 -0
- package/oiml-r91/execution/forms/report-tests/05-02-ego-field-test.prl +57 -0
- package/oiml-r91/execution/forms/report-tests/05-03-moving-traffic-simulation.prl +31 -0
- package/oiml-r91/execution/forms/report-tests/06-01-software-general.prl +25 -0
- package/oiml-r91/execution/forms/report-tests/06-02-software-protection.prl +25 -0
- package/oiml-r91/execution/forms/report-tests/06-03-software-hardware-support.prl +24 -0
- package/oiml-r91/execution/forms/report-tests/06-04-software-separation.prl +25 -0
- package/oiml-r91/execution/forms/report-tests/06-05-software-maintenance.prl +24 -0
- package/oiml-r91/execution/forms/report-tests/07-general-remarks.prl +11 -0
- package/oiml-r91/execution/forms/shared/header-a.prl +63 -0
- package/oiml-r91/execution/subforms/software-matrix-row.prl +30 -0
- package/oiml-r91/execution/subforms/speed-measurement-row.prl +38 -0
- package/oiml-r91/layers.prl +46 -0
- package/oiml-r91/model/artifacts.prl +29 -0
- package/oiml-r91/model/attributes.prl +698 -0
- package/oiml-r91/model/behaviors.prl +142 -0
- package/oiml-r91/model/capabilities.prl +88 -0
- package/oiml-r91/model/characteristics.prl +27 -0
- package/oiml-r91/model/conditions.prl +37 -0
- package/oiml-r91/model/instrument.prl +147 -0
- package/oiml-r91/model/state.prl +22 -0
- package/oiml-r91/model/twin.prl +17 -0
- package/oiml-r91/package.primmel +14 -0
- package/oiml-r91/payload/application.yaml +201 -0
- package/oiml-r91/payload/conditions-common-test.yaml +19 -0
- package/oiml-r91/payload/promises.yaml +142 -0
- package/oiml-r91/payload/sample-data.yaml +464 -0
- package/oiml-r91/references.prl +72 -0
- package/oiml-r91/sources-prd/coverage.json +106 -0
- package/oiml-r91/sources-prd/r91-1.sentences.json +4696 -0
- package/oiml-r91/sources-prd/r91-2.sentences.json +2067 -0
- package/oiml-r91/sources-prd/r91-3.sentences.json +5210 -0
- package/oiml-r91/sources-prd/r91-4.sentences.json +474 -0
- package/oiml-r91/specification/calculations.prl +26 -0
- package/oiml-r91/specification/conformance/influence-disturbance.prl +1792 -0
- package/oiml-r91/specification/conformance/metrological.prl +906 -0
- package/oiml-r91/specification/formulas.prl +10 -0
- package/oiml-r91/specification/requirements/class-specific.prl +308 -0
- package/oiml-r91/specification/requirements/metrological.prl +176 -0
- package/oiml-r91/specification/requirements/technical.prl +173 -0
- package/oiml-r91/specification/symbols.prl +323 -0
- package/oiml-r91/specification/tables.prl +136 -0
- package/oiml-r91/terminology.prl +535 -0
- package/oiml-r91/value-types.prl +26 -0
- package/oiml-smart-core/entities/comments.prl +101 -0
- package/oiml-smart-core/entities/cs-operations.prl +492 -0
- package/oiml-smart-core/entities/cs-participants.prl +470 -0
- package/oiml-smart-core/entities/engagement.prl +323 -0
- package/oiml-smart-core/entities/instrument.prl +359 -0
- package/oiml-smart-core/entities/module-b.prl +214 -0
- package/oiml-smart-core/entities/operated-schemes.prl +141 -0
- package/oiml-smart-core/entities/parties.prl +429 -0
- package/oiml-smart-core/entities/payment-records.prl +92 -0
- package/oiml-smart-core/entities/verification.prl +187 -0
- package/oiml-smart-core/entities/workflow.prl +2075 -0
- package/oiml-smart-core/evaluation/roles.prl +65 -0
- package/oiml-smart-core/evaluation/state-machines.prl +1157 -0
- package/oiml-smart-core/package.primmel +10 -0
- package/oiml-smart-core/specification/competence-kinds.prl +64 -0
- package/oiml-smart-core/specification/constraints.prl +40 -0
- package/oiml-smart-core/specification/invariants.prl +90 -0
- package/oiml-smart-core/specification/predicates.prl +116 -0
- package/oiml-smart-module-emc-disturbances/package.primmel +10 -0
- package/oiml-smart-module-env-iec60068/package.primmel +10 -0
- package/oiml-smart-module-examination-docs/package.primmel +10 -0
- package/oiml-smart-module-reference-materials/package.primmel +10 -0
- package/oiml-smart-module-report-headers/package.primmel +10 -0
- package/oiml-smart-module-software-d31/package.primmel +10 -0
- package/oiml-smart-module-specimen-governance/entities/test-execution.prl +228 -0
- package/oiml-smart-module-specimen-governance/package.primmel +10 -0
- package/oiml-twin-cert/documents/tw-1/document.yaml +454 -0
- package/oiml-twin-cert/evaluation/roles.prl +15 -0
- package/oiml-twin-cert/execution/forms/probe-creep.prl +179 -0
- package/oiml-twin-cert/execution/forms/probe.prl +99 -0
- package/oiml-twin-cert/execution/forms/static-conformance.prl +50 -0
- package/oiml-twin-cert/model/attributes.prl +243 -0
- package/oiml-twin-cert/model/behaviors.prl +8 -0
- package/oiml-twin-cert/model/characteristics.prl +18 -0
- package/oiml-twin-cert/model/monitors.prl +16 -0
- package/oiml-twin-cert/package.primmel +16 -0
- package/oiml-twin-cert/specification/conformance/twin-fidelity.prl +176 -0
- package/oiml-twin-cert/specification/requirements/twin-fidelity.prl +137 -0
- package/oiml-twin-cert/specification/symbols.prl +36 -0
- package/oiml-twin-cert/terminology.prl +8 -0
- package/oimlsmart-primmel-packages-0.1.0.tgz +0 -0
- package/package.json +17 -0
- package/qms-ref/model/qms.prl +31 -0
- package/qms-ref/package.primmel +38 -0
- package/quarry-belt-scale/model/ops.prl +115 -0
- package/quarry-belt-scale/package.primmel +36 -0
|
@@ -0,0 +1,906 @@
|
|
|
1
|
+
conformance_class /conf/examinations {
|
|
2
|
+
title "Examinations (R 91-2, 2/3 + R 91-1, 8.1)"
|
|
3
|
+
name "Documentation and visual examinations"
|
|
4
|
+
target /req/metrological
|
|
5
|
+
subject "SpeedMeter"
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
conformance_test /conf/examinations/documentation-inspection {
|
|
9
|
+
name "Documentation and visual inspection"
|
|
10
|
+
purpose "Verify documentation completeness and conformity of markings/sealing with R 91-1, 7.11-7.14."
|
|
11
|
+
method "Inspection of type documentation, housing markings, sealing means and manual against R 91-1 clauses 7.11-7.14 and 8.1.1."
|
|
12
|
+
type Inspection
|
|
13
|
+
kind performance
|
|
14
|
+
reference { doc "urn:oiml:pub:r:91-1:2025" clause "8.1.1" }
|
|
15
|
+
targets { /req/technical/sealing-inscriptions /req/technical/manual /req/technical/metrological-protection }
|
|
16
|
+
variables {
|
|
17
|
+
variable documentation { type object source declared }
|
|
18
|
+
}
|
|
19
|
+
acceptance_criteria {
|
|
20
|
+
type composite
|
|
21
|
+
pass_if "complete"
|
|
22
|
+
criterion complete { target /req/technical/sealing-inscriptions pass_if "ocl{documentation_present and markings_conform}" }
|
|
23
|
+
}
|
|
24
|
+
report_rows { inscriptions-markings verification-marks }
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
conformance_test /conf/examinations/vehicle-identification {
|
|
28
|
+
name "Vehicle identification certainty"
|
|
29
|
+
purpose "Verify measured speed cannot be attributed to the wrong vehicle."
|
|
30
|
+
method "Scenario review and image-evidence checks incl. detection-field gating and evidence-file content (R 91-1, 6.6)."
|
|
31
|
+
type Inspection
|
|
32
|
+
kind performance
|
|
33
|
+
reference { doc "urn:oiml:pub:r:91-1:2025" clause "6.6" }
|
|
34
|
+
targets { /req/metrological/vehicle-identification }
|
|
35
|
+
acceptance_criteria {
|
|
36
|
+
type composite
|
|
37
|
+
pass_if "no_misattribution"
|
|
38
|
+
criterion no_misattribution { target /req/metrological/vehicle-identification pass_if "ocl{evidence_file_complete and detection_field_gated}" }
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
conformance_test /conf/examinations/rated-operating-conditions {
|
|
43
|
+
name "Rated operating conditions declaration review"
|
|
44
|
+
purpose "Verify the manufacturer-declared rated operating conditions meet the R 91-1, 6.16 Table 1 minimums and that the 6.17 declaration (environment classes, power supply reference values) driving the test levels of the influence factor and disturbance tests is complete (R 91-2, clause 6)."
|
|
45
|
+
method "Review the type documentation against R 91-1, 6.16 Table 1 (ambient temperature −10…+50 °C; relative humidity up to 95 % condensing; random vibration 10–150 Hz, 7 m/s²; supply and battery voltage intervals D–H; storage −25…+70 °C) and the 6.17 declaration of climatic (H1/H2/H3, 6.17.1), mechanical (M2/M3, 6.17.2) and electromagnetic (E2/E3, 6.17.3) environment classes plus power supply reference values. Test levels are specified by the manufacturer in the documentation and checked and approved by the testing laboratory (R 91-2, clause 6)."
|
|
46
|
+
type Inspection
|
|
47
|
+
kind performance
|
|
48
|
+
reference { doc "urn:oiml:pub:r:91-1:2025" clause "6.16" }
|
|
49
|
+
targets { /req/metrological/operating-conditions-minimum /req/metrological/operating-conditions-declared }
|
|
50
|
+
guidance "Environment classes (R 91-1, 6.17.1–6.17.3) are declared here and select the severity variants of the /conf/influence and /conf/disturbances tests; they have no classification-dimension or attribute home yet (see the header of influence-disturbance.yaml)."
|
|
51
|
+
variables {
|
|
52
|
+
variable environment_classes_declared { type boolean source declared description "Climatic (H1/H2/H3), mechanical (M2/M3) and electromagnetic (E2/E3) environment classes stated per R 91-1, 6.17.1–6.17.3" }
|
|
53
|
+
variable supply_reference_declared { type boolean source declared description "Power supply reference values stated per R 91-1, 6.17 e" }
|
|
54
|
+
}
|
|
55
|
+
acceptance_criteria {
|
|
56
|
+
type composite
|
|
57
|
+
pass_if "ocl{minimum_ranges_met and conditions_declared}"
|
|
58
|
+
criterion minimum_ranges_met { target /req/metrological/operating-conditions-minimum pass_if "ocl{operating_temp_min <= -10 and operating_temp_max >= 50 and storage_temp_min <= -25 and storage_temp_max >= 70}" description "Declared operating/storage temperature intervals cover the R 91-1, 6.16 minimums" }
|
|
59
|
+
criterion conditions_declared { target /req/metrological/operating-conditions-declared pass_if "ocl{environment_classes_declared and supply_reference_declared}" description "6.17 declaration complete (environment classes + power supply reference values)" }
|
|
60
|
+
}
|
|
61
|
+
report_rows { climatic-class mechanical-class electromagnetic-class }
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
conformance_test /conf/examinations/technical-examination {
|
|
65
|
+
name "Indication, modes and test interface examination"
|
|
66
|
+
purpose "Functional examination of the indication and control rules (7.2), the manual-measurement result hold and inhibit (7.2.1), the modes of operation incl. the protected test mode with results identical to enforcement mode (7.8.2), and the test interface (7.9)."
|
|
67
|
+
method "Documentation review and functional observation of the EUT (R 91-2, 8): indications and controls unambiguous and not confusable with the speed value; manual measurement result indicated with local time (1 s resolution), held with further measurements inhibited until cleared (7.2.1); standby/enforcement/test modes distinct, test mode protected and documented (7.8); test interface reads measurement signals/data incl. high-resolution and ego values at full resolution and accepts inserted test signals (7.9)."
|
|
68
|
+
type Inspection
|
|
69
|
+
kind performance
|
|
70
|
+
reference { doc "urn:oiml:pub:r:91-1:2025" clause "7.2" }
|
|
71
|
+
targets { /req/technical/indication-rules /req/technical/result-manual /req/technical/modes /req/technical/test-interface }
|
|
72
|
+
variables {
|
|
73
|
+
variable examination { type object source declared }
|
|
74
|
+
}
|
|
75
|
+
acceptance_criteria {
|
|
76
|
+
type composite
|
|
77
|
+
pass_if "conform"
|
|
78
|
+
criterion conform { target /req/technical/indication-rules pass_if "ocl{documentation_present and markings_conform}" }
|
|
79
|
+
}
|
|
80
|
+
report_rows { enforcement-mode test-mode }
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
conformance_test /conf/examinations/evidence-file-examination {
|
|
84
|
+
name "Evidence file recording and storage examination"
|
|
85
|
+
purpose "Verify automatic evidence-file recording for automatic measurements (7.2.2), the evidence-file content (7.3 items a-l) and the secure medium-term storage incl. integrity/authenticity software protection and private-key secrecy (7.4)."
|
|
86
|
+
method "Documentation review and functional observation (R 91-2, 8): evidence files recorded and stored automatically after each automatic measurement (7.2.2) with all relevant information (7.3); storage secure for approx. three months; software protection secures integrity and authenticity; the private key is not readable except by the cryptographic routines (7.4)."
|
|
87
|
+
type Inspection
|
|
88
|
+
kind performance
|
|
89
|
+
reference { doc "urn:oiml:pub:r:91-1:2025" clause "7.4" }
|
|
90
|
+
targets { /req/technical/result-automatic /req/technical/evidence-file /req/technical/evidence-storage }
|
|
91
|
+
variables {
|
|
92
|
+
variable examination { type object source declared }
|
|
93
|
+
}
|
|
94
|
+
acceptance_criteria {
|
|
95
|
+
type composite
|
|
96
|
+
pass_if "conform"
|
|
97
|
+
criterion conform { target /req/technical/evidence-file pass_if "ocl{evidence_file_complete}" }
|
|
98
|
+
}
|
|
99
|
+
result_forms { evidence-file }
|
|
100
|
+
produces_artifacts { enforcement-evidence-file }
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
conformance_test /conf/examinations/checking-facility-verification {
|
|
104
|
+
name "Checking facility and self-check verification"
|
|
105
|
+
purpose "Verify the self-checking facility (7.5): self-check at switch-on and at least once per day during automatic measurements; type N (manual) / type I (automatic) facility per OIML D 11; independent frequency source covering the whole measurement chain; error message and measurement inhibit on detected faults — and the self-check MPE of ±1 % for ALL simulated speeds, i.e. also below 100 km/h."
|
|
106
|
+
method "Functional testing per R 91-2, 6.4 — the dry-heat (operating), cold (operating) and DC/AC voltage variation tests include the testing of the corresponding checking facilities, and the test report states if and how they were tested. Self-check error measured against the independent frequency source's simulated speed."
|
|
107
|
+
type Testing
|
|
108
|
+
kind performance
|
|
109
|
+
reference { doc "urn:oiml:pub:r:91-1:2025" clause "7.5" }
|
|
110
|
+
targets { /req/technical/checking-facilities /req/metrological/checking-facilities }
|
|
111
|
+
variables {
|
|
112
|
+
variable simulated_speed { type number unit "km/h" source measured description "Simulated speed produced by the checking facility's independent frequency source (7.5)" }
|
|
113
|
+
variable indicated_speed { type number unit "km/h" source measured }
|
|
114
|
+
variable self_check_error { type number unit "km/h" source derived derivation "ocl{indicated_speed - simulated_speed}" }
|
|
115
|
+
}
|
|
116
|
+
design {
|
|
117
|
+
specimens {
|
|
118
|
+
continuity same_eut
|
|
119
|
+
rules { eut-continuity modification-retest }
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
acceptance_criteria {
|
|
123
|
+
type composite
|
|
124
|
+
pass_if "self_check_within_mpe"
|
|
125
|
+
criterion self_check_within_mpe { target /req/technical/checking-facilities pass_if "ocl{abs(self_check_error) <= 0.01 * abs(simulated_speed)}" description "Self-check MPE ±1 % for all simulated speed values, i.e. also below 100 km/h (R 91-1, 7.5) — R 91's only pure-relative, tierless error limit" }
|
|
126
|
+
}
|
|
127
|
+
report_rows { checking-facilities }
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
conformance_test /conf/examinations/aiming-device-examination {
|
|
131
|
+
name "Aiming device and mobile alignment examination"
|
|
132
|
+
purpose "Verify the aiming device robustness and the manufacturer's orientation-verification procedure (7.7; accuracy of the aiming device per R 91-2, 7.1.f/7.6.a), and the mobile-meter alignment-parameter confirmation at each start-up (7.6)."
|
|
133
|
+
method "Documentation review of the verification procedure in the manual plus functional verification of the aiming device's orientation retention under disturbances (7.7); for mobile speed meters, check the user is requested to confirm the alignment parameter values after each start-up before enforcement is possible, and that correct alignment can be checked during and after the measurement (7.6)."
|
|
134
|
+
type Inspection
|
|
135
|
+
kind performance
|
|
136
|
+
reference { doc "urn:oiml:pub:r:91-1:2025" clause "7.7" }
|
|
137
|
+
targets { /req/technical/aiming-device /req/technical/alignment-confirmation }
|
|
138
|
+
variables {
|
|
139
|
+
variable examination { type object source declared }
|
|
140
|
+
}
|
|
141
|
+
acceptance_criteria {
|
|
142
|
+
type composite
|
|
143
|
+
pass_if "conform"
|
|
144
|
+
criterion conform { target /req/technical/aiming-device pass_if "ocl{documentation_present}" }
|
|
145
|
+
}
|
|
146
|
+
report_rows { aiming-device aiming-device-accuracy }
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
conformance_test /conf/examinations/across-road-examination {
|
|
150
|
+
name "Across-the-road reference marking and cosine verification"
|
|
151
|
+
purpose "Verify the reference point and centre line are evident or clearly indicated on the housing, and that the manual states whether cosine compensation is parameter- and/or measurement-based (6.8); for parameter-based compensation, review the manufacturer's procedure to retrospectively verify the parameters used in each measurement (6.8)."
|
|
152
|
+
method "Visual inspection of the housing markings and documentation review of the cosine-parameter verification procedure (R 91-1, 6.8; R 91-2, 3)."
|
|
153
|
+
type Inspection
|
|
154
|
+
kind performance
|
|
155
|
+
reference { doc "urn:oiml:pub:r:91-1:2025" clause "6.8" }
|
|
156
|
+
targets { /req/category-across-road/reference-marking /req/category-across-road/cosine-verification }
|
|
157
|
+
applicability {
|
|
158
|
+
cosine_compensation: [across-the-road]
|
|
159
|
+
}
|
|
160
|
+
variables {
|
|
161
|
+
variable examination { type object source declared }
|
|
162
|
+
}
|
|
163
|
+
acceptance_criteria {
|
|
164
|
+
type composite
|
|
165
|
+
pass_if "conform"
|
|
166
|
+
criterion conform { target /req/category-across-road/reference-marking pass_if "ocl{markings_conform and documentation_present}" }
|
|
167
|
+
}
|
|
168
|
+
report_rows { category-tests across-the-road }
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
conformance_test /conf/examinations/redundancy-review {
|
|
172
|
+
name "Measuring-process redundancy and sensor monitoring review"
|
|
173
|
+
purpose "Verify the measuring process has sufficient redundancy to detect failures with influence on the speed measurement (6.20, incl. the NOTE's insufficient-redundancy examples) and, for fixed-distance speed meters, that the sensor signals at the detection points are continuously monitored (6.12)."
|
|
174
|
+
method "Design review of the redundancy concept against single-element failure (6.20) and functional observation of the continuous sensor-signal monitoring at the detection points (6.12)."
|
|
175
|
+
type Inspection
|
|
176
|
+
kind performance
|
|
177
|
+
reference { doc "urn:oiml:pub:r:91-1:2025" clause "6.20" }
|
|
178
|
+
targets { /req/metrological/redundancy /req/category-fixed-distance/sensor-monitoring }
|
|
179
|
+
variables {
|
|
180
|
+
variable examination { type object source declared }
|
|
181
|
+
}
|
|
182
|
+
acceptance_criteria {
|
|
183
|
+
type composite
|
|
184
|
+
pass_if "conform"
|
|
185
|
+
criterion conform { target /req/metrological/redundancy pass_if "ocl{documentation_present}" }
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
conformance_test /conf/examinations/durability-assessment {
|
|
190
|
+
name "Durability assessment"
|
|
191
|
+
purpose "Estimate the durability error — durability tests or other methods (R 91-1, 8.1.4.e); a possible solution is permanent compliance with 6.1–6.17 over 24 months or the maximum interval between subsequent verifications, whichever is longer (6.19 NOTE)."
|
|
192
|
+
method "Review of the manufacturer's substantiation of metrological-characteristic stability over the period of use (6.19), by durability tests or other estimation methods (8.1.4.e)."
|
|
193
|
+
type Inspection
|
|
194
|
+
kind durability
|
|
195
|
+
reference { doc "urn:oiml:pub:r:91-1:2025" clause "8.1.4" }
|
|
196
|
+
targets { /req/metrological/durability }
|
|
197
|
+
variables {
|
|
198
|
+
variable examination { type object source declared }
|
|
199
|
+
}
|
|
200
|
+
acceptance_criteria {
|
|
201
|
+
type composite
|
|
202
|
+
pass_if "conform"
|
|
203
|
+
criterion conform { target /req/metrological/durability pass_if "ocl{documentation_present}" }
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
conformance_class /conf/linearities {
|
|
208
|
+
title "Linearity tests (R 91-2, 5.3-5.6 + 6.7)"
|
|
209
|
+
name "Speed/distance/angle linearity at reference conditions"
|
|
210
|
+
target /req/metrological
|
|
211
|
+
subject "SpeedMeter"
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
conformance_test /conf/linearities/speed-linearity {
|
|
215
|
+
name "Speed linearity test (traffic simulation)"
|
|
216
|
+
purpose "Verify the linearity error limit (R 91-1, 6.5) across the measuring interval at reference conditions."
|
|
217
|
+
method "Traffic-simulated speed series across the interval at reference simulation conditions (5.4 a-d: nominal measurement angle, isolated cuboid 5 m car, zero acceleration, straight trajectory); high-resolution speed values are used for the evaluation; >= 10 speed values before and after the influence/disturbance tests (design.counts; the R 91-3 \"500, 50 or 5\" gloss is annotated as source_discrepancy in tables.yaml measurement_counts)."
|
|
218
|
+
type Testing
|
|
219
|
+
kind performance
|
|
220
|
+
obligation conditional
|
|
221
|
+
obligation_note "Optional as a laboratory test (R 91-1, 8.1.4.b), but mandatory as the before/after anchor of every influence factor and disturbance run (R 91-2, 5.4: carried out before and after the influence factor and disturbance tests)."
|
|
222
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "5.4" }
|
|
223
|
+
targets { /req/metrological/linearity-limit }
|
|
224
|
+
variables {
|
|
225
|
+
variable reference_speed { type number unit "km/h" source measured }
|
|
226
|
+
variable high_res_speed { type number unit "km/h" source measured }
|
|
227
|
+
variable speed_error_high_res { type number unit "km/h" source derived derivation "ocl{abs(high_res_speed - reference_speed)}" }
|
|
228
|
+
variable measurement_count { type integer source declared }
|
|
229
|
+
}
|
|
230
|
+
observables {
|
|
231
|
+
observable speed_error_high_res { quantity_kind speed unit "km/h" as "linearity error per test point" }
|
|
232
|
+
}
|
|
233
|
+
design {
|
|
234
|
+
counts {
|
|
235
|
+
count linearity { min 10 clause "5.4" note ">= 10 speed values within the specified measuring interval, before and after the influence factor and disturbance tests" }
|
|
236
|
+
count simulator_velocities { min 10 clause "6.3" note "the traffic simulator must simulate >= 10 velocity values inside the EUT's measurement range" }
|
|
237
|
+
}
|
|
238
|
+
specimens {
|
|
239
|
+
continuity same_eut
|
|
240
|
+
rules { eut-continuity modification-retest }
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
acceptance_criteria {
|
|
244
|
+
type composite
|
|
245
|
+
pass_if "within_linearity_limit"
|
|
246
|
+
criterion within_linearity_limit { target /req/metrological/linearity-limit pass_if "ocl{abs(speed_error_high_res) <= lookupMPE(reference_speed, 'linearity', 1.0)}" }
|
|
247
|
+
}
|
|
248
|
+
report_rows { laboratory-tests-traffic-simulation speed-linearity-test }
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
conformance_test /conf/linearities/distance-linearity {
|
|
252
|
+
name "Distance linearity test"
|
|
253
|
+
purpose "Verify distance indication accuracy across the distance interval (error limits specified by the manufacturer, 5.5)."
|
|
254
|
+
method "Verify distance indication accuracy across the distance interval."
|
|
255
|
+
type Testing
|
|
256
|
+
kind performance
|
|
257
|
+
obligation optional
|
|
258
|
+
obligation_note "Metrological laboratory tests by traffic simulation (R 91-2, 5) are optional in the type-evaluation programme (R 91-1, 8.1.4.b)."
|
|
259
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "5.5" }
|
|
260
|
+
targets { /req/metrological/distance-angle-indication }
|
|
261
|
+
applicability {
|
|
262
|
+
working_principle: [range-finding, image-based, average-speed]
|
|
263
|
+
}
|
|
264
|
+
variables {
|
|
265
|
+
variable test_distance { type number unit "m" source measured }
|
|
266
|
+
variable reference_distance { type number unit "m" source measured description "Reference distance measured by reference equipment (d_ref)" }
|
|
267
|
+
variable distance_error { type number unit "m" source derived derivation "ocl{abs(test_distance - reference_distance)}" }
|
|
268
|
+
variable distance_limit { type number unit "m" source declared description "Error limit specified by the manufacturer (5.5)" }
|
|
269
|
+
}
|
|
270
|
+
design {
|
|
271
|
+
counts {
|
|
272
|
+
count linearity { min 10 clause "5.5" note ">= 10 distances of the specified distance interval; simulated vehicle at standstill, measurement angle 0°" }
|
|
273
|
+
}
|
|
274
|
+
specimens {
|
|
275
|
+
continuity same_eut
|
|
276
|
+
rules { eut-continuity modification-retest }
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
acceptance_criteria {
|
|
280
|
+
type composite
|
|
281
|
+
pass_if "distance_accurate"
|
|
282
|
+
criterion distance_accurate { target /req/metrological/distance-angle-indication pass_if "ocl{abs(distance_error) <= distance_limit}" }
|
|
283
|
+
}
|
|
284
|
+
report_rows { laboratory-tests-traffic-simulation distance-linearity-test }
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
conformance_test /conf/linearities/angle-linearity {
|
|
288
|
+
name "Angle linearity test (optional)"
|
|
289
|
+
purpose "OPTIONAL test (5.6) — reveal the accuracy of the angle measurements of the EUT under static conditions."
|
|
290
|
+
method "Simulated vehicle at standstill (0 km/h) at a typical distance of the specified distance interval; >= 10 angles of the specified angle interval; error limits specified by the manufacturer."
|
|
291
|
+
type Testing
|
|
292
|
+
kind performance
|
|
293
|
+
obligation optional
|
|
294
|
+
obligation_note "The angle linearity test is optional (R 91-2, 5.6: 'The purpose of the optional angle linearity test')."
|
|
295
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "5.6" }
|
|
296
|
+
targets { /req/metrological/distance-angle-indication }
|
|
297
|
+
applicability {
|
|
298
|
+
cosine_compensation: [across-the-road]
|
|
299
|
+
}
|
|
300
|
+
variables {
|
|
301
|
+
variable test_angle { type number unit "deg" source measured }
|
|
302
|
+
variable reference_angle { type number unit "deg" source measured description "Reference angle measured by reference equipment (α_ref)" }
|
|
303
|
+
variable angle_error { type number unit "deg" source derived derivation "ocl{abs(test_angle - reference_angle)}" }
|
|
304
|
+
variable angle_limit { type number unit "deg" source declared description "Error limit specified by the manufacturer (5.6)" }
|
|
305
|
+
}
|
|
306
|
+
design {
|
|
307
|
+
counts {
|
|
308
|
+
count linearity { min 10 clause "5.6" note ">= 10 angles of the specified angle interval; simulated vehicle at standstill, distance a typical value of the distance interval" }
|
|
309
|
+
}
|
|
310
|
+
specimens {
|
|
311
|
+
continuity same_eut
|
|
312
|
+
rules { eut-continuity modification-retest }
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
acceptance_criteria {
|
|
316
|
+
type composite
|
|
317
|
+
pass_if "angle_accurate"
|
|
318
|
+
criterion angle_accurate { target /req/metrological/distance-angle-indication pass_if "ocl{abs(angle_error) <= angle_limit}" optional true description "The whole angle linearity test is OPTIONAL (R 91-2, 5.6); error limits are specified by the manufacturer" }
|
|
319
|
+
}
|
|
320
|
+
report_rows { laboratory-tests-traffic-simulation angle-linearity-test }
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
conformance_test /conf/linearities/alignment-misalignment {
|
|
324
|
+
name "Installation and alignment of sensor and camera"
|
|
325
|
+
purpose "Verify misalignment error ≤ ±0.5 % over the declared alignment intervals."
|
|
326
|
+
method "Sweep alignment parameters across declared intervals; compare against reference."
|
|
327
|
+
type Testing
|
|
328
|
+
kind performance
|
|
329
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "6.7" }
|
|
330
|
+
targets { /req/category-across-road/alignment-error }
|
|
331
|
+
applicability {
|
|
332
|
+
cosine_compensation: [across-the-road]
|
|
333
|
+
}
|
|
334
|
+
variables {
|
|
335
|
+
variable speed_error { type number unit "km/h" source derived derivation "ocl{abs(indicated_speed - reference_speed)}" }
|
|
336
|
+
}
|
|
337
|
+
design {
|
|
338
|
+
specimens {
|
|
339
|
+
continuity same_eut
|
|
340
|
+
rules { eut-continuity modification-retest }
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
acceptance_criteria {
|
|
344
|
+
type composite
|
|
345
|
+
pass_if "misalignment_within_limit"
|
|
346
|
+
criterion misalignment_within_limit { target /req/category-across-road/alignment-error pass_if "ocl{abs(speed_error) / reference_speed <= 0.005}" }
|
|
347
|
+
}
|
|
348
|
+
report_rows { installation-alignment }
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
conformance_class /conf/field {
|
|
352
|
+
title "Field and simulation tests (R 91-2, 4/5)"
|
|
353
|
+
name "Metrological field tests (real traffic) and traffic simulation"
|
|
354
|
+
target /req/metrological
|
|
355
|
+
subject "SpeedMeter"
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
conformance_test /conf/field/stationary-field-test {
|
|
359
|
+
name "Stationary metrological field test (real traffic)"
|
|
360
|
+
purpose "Primary conformity experiment for stationary speed meters and moving meters in stationary mode: verify every measurement against the MPE of R 91-1, 6.4 under real traffic (R 91-2, 4.6, shared-risk decision rule). For moving speed meters the stationary-mode availability and the stationary-limits equivalence of R 91-1, 6.15.2 (including the automatic switching / measurement inhibition alternative) are verified in the same programme."
|
|
361
|
+
method "Field test in real traffic (4.2). Reference speed meter (preferably automatic) with U(k=2) <= 0.6 km/h up to 100 km/h and 0.6 % above (4.5); larger reference uncertainty only with guarded-acceptance compensation (OIML G 1-106, 8.3.2). At least 500 valid measurements (automatic) or 100 (manual) (4.4); lower only with statistical justification. Per-measurement MPE check (4.6); relief cases: along-the-road cosine correction (a) and truncation-vs-rounding (b). Optional statistical analysis per 4.7 (bins of 50 km/h; m ± 5σ within MPE). Image-evidence assignment verified per 4.8."
|
|
362
|
+
type Testing
|
|
363
|
+
kind field
|
|
364
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "4" }
|
|
365
|
+
targets { /req/metrological/mpe-stationary /req/metrological/measuring-intervals /req/metrological/indicated-speed /req/category-moving/stationary-mode }
|
|
366
|
+
guidance "R 91-3 forms 1.1–1.3 are the report format for this test (phase 2). Counts: design.counts (registry: measurement_counts table, incl. the 4.4 statistical-justification override). Reference-meter budget tiers: profiles.uncertainty_budgets (task 10). Guarded acceptance (4.5, larger reference uncertainty): acceptance.rule guarded with guard_band (task 10)."
|
|
367
|
+
applicability {
|
|
368
|
+
mode_of_use: [stationary, moving]
|
|
369
|
+
}
|
|
370
|
+
variables {
|
|
371
|
+
variable indicated_speed { type number unit "km/h" source measured }
|
|
372
|
+
variable reference_speed { type number unit "km/h" source measured description "Reference speed meter value, used unrounded with sufficient significant digits" }
|
|
373
|
+
variable reference_uncertainty { type number unit "km/h" source declared description "Expanded uncertainty (k=2) of the reference speed meter per 4.5" }
|
|
374
|
+
variable measurement_count { type integer source declared description "Valid measurements: >= 500 automatic / >= 100 manual (4.4)" }
|
|
375
|
+
variable speed_error { type number unit "km/h" source derived derivation "ocl{indicated_speed - reference_speed}" }
|
|
376
|
+
variable errors { type collection unit "km/h" source derived derivation "ocl{measurements->collect(m | m.indicated_speed - m.reference_speed)}" description "Error series over the valid measurements — the basis of the 4.7 statistical analysis" }
|
|
377
|
+
}
|
|
378
|
+
preconditions {
|
|
379
|
+
precondition reference-uncertainty-budget { check "ocl{reference_uncertainty <= if reference_speed <= 100 then 0.6 else 0.006 * reference_speed endif}" description "Reference speed meter U(k=2) budget (4.5; canonical tier encoding: profiles.uncertainty_budgets.reference_field_meter); violation invalidates unless guarded-acceptance compensation applies (G 1-106, 8.3.2)" }
|
|
380
|
+
precondition count-sufficient { check "ocl{measurement_count >= 100}" description "Minimum valid measurements (4.4: >= 500 automatic, >= 100 manual; manual floor enforced here; the automatic floor yields to the acceptance.statistics count_override with a passing statistical analysis)" }
|
|
381
|
+
}
|
|
382
|
+
design {
|
|
383
|
+
counts {
|
|
384
|
+
count field_automatic { min 500 clause "4.4" note "automatic measurements; fewer only with a statistical analysis of errors (4.7)" override { condition statistical_analysis by evaluator} }
|
|
385
|
+
count field_manual { min 100 clause "4.4" note "manual measurements; fewer only with a statistical analysis of errors (4.7)" override { condition statistical_analysis by evaluator} }
|
|
386
|
+
}
|
|
387
|
+
schedule {
|
|
388
|
+
constraints {
|
|
389
|
+
"real traffic; not congested (avg speed >= 80 % of uncongested avg; temporal distance > 1.8 s) (4.3)"
|
|
390
|
+
"min/typical/max distances from EUT to vehicles; >= 3 installation conditions if alignment intervals are specified (4.1)"
|
|
391
|
+
"speed coverage from minimum specified speed to maximum legal motorway limit (4.2; speeds below 40 km/h may be covered by validated simulator instead)"
|
|
392
|
+
"speeds above the legal limit per 4.9 (protected environment or validated simulator)"
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
specimens {
|
|
396
|
+
continuity same_eut
|
|
397
|
+
rules { eut-continuity modification-retest }
|
|
398
|
+
}
|
|
399
|
+
field {
|
|
400
|
+
site_selection "Real traffic, at several test sites as needed (4.2): speed coverage from the minimum specified speed to the maximum legal motorway limit (speeds below 40 km/h may be covered by a validated complete traffic simulator), different motor-vehicle types in typical traffic, a motorway with at least two lanes per driving direction with regular overtaking, and a road with at least two lanes with opposite-direction traffic; roads straight or above the EUT's specified minimum curve radius."
|
|
401
|
+
traffic_conditions "Not congested during the measurement (4.3): average vehicle speed above 80 % of the normal (uncongested) average and average temporal distance between vehicles on the same lane above 1.8 s."
|
|
402
|
+
reference_meter { description "Reference speed meter, preferably performing automatic measurements (4.5); its measurement section overlaps the EUT's as much as possible, aligned centrally (4.1); reference values used unrounded with sufficient significant digits (R 91-1, 6.3 NOTE)." uncertainty_budget reference_field_meter }
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
acceptance {
|
|
406
|
+
rule shared_risk
|
|
407
|
+
statistics { method error_distribution on_basis_of errors permits count_override }
|
|
408
|
+
}
|
|
409
|
+
acceptance_criteria {
|
|
410
|
+
type composite
|
|
411
|
+
pass_if "within_mpe_all"
|
|
412
|
+
criterion within_mpe_all { target /req/metrological/mpe-stationary pass_if "ocl{abs(speed_error) <= lookupMPE(reference_speed, 'stationary', 1.0)}" description "Every measurement within MPE (R 91-1, 6.4; shared-risk rule per 4.6)" }
|
|
413
|
+
criterion statistics_optional { target /req/metrological/mpe-stationary pass_if "ocl{abs(mean(errors)) + 5 * stddev(errors) <= lookupMPE(reference_speed, 'stationary', 1.0) and m_sigma_coverage(errors, mean(errors), 5) >= 0.999}" optional true description "Optional statistical analysis (4.7): the m ± 5σ interval of the error distribution within the MPE (bin-wise per 50 km/h in the source; series-level form), with >= 99.9 % of errors inside m ± 5σ — a passing analysis is also the 4.4 statistical justification permitting fewer measurements (acceptance.statistics count_override)" }
|
|
414
|
+
}
|
|
415
|
+
report_rows { metrological-field-test maximum-permissible-error statistical-analysis-of-errors assignment-to-image-evidence }
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
conformance_test /conf/field/moving-field-test {
|
|
419
|
+
name "Moving metrological field test (real traffic)"
|
|
420
|
+
purpose "Verify MPE for moving measurements with real traffic (R 91-2, 4)."
|
|
421
|
+
method "Field test per R 91-2 clause 4 — site selection, traffic conditions, N measurements (R 91-3), reference speed meter, error statistics; above-limit speeds per 4.9."
|
|
422
|
+
type Testing
|
|
423
|
+
kind field
|
|
424
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.7.1" }
|
|
425
|
+
targets { /req/category-moving/mpe-moving }
|
|
426
|
+
applicability {
|
|
427
|
+
mode_of_use: [moving]
|
|
428
|
+
}
|
|
429
|
+
variables {
|
|
430
|
+
variable reference_speed { type number unit "km/h" source measured }
|
|
431
|
+
variable indicated_speed { type number unit "km/h" source measured }
|
|
432
|
+
variable measurement_count { type integer source declared }
|
|
433
|
+
}
|
|
434
|
+
observables {
|
|
435
|
+
observable speed_error { quantity_kind speed unit "km/h" as "moving measurement error distribution" }
|
|
436
|
+
}
|
|
437
|
+
design {
|
|
438
|
+
counts {
|
|
439
|
+
count moving_field { min 200 clause "7.7.1" note ">= 200 valid measurements of the reference vehicle under various traffic conditions, incl. curved streets; fewer only when the EUT allows measurements in a few well-defined traffic conditions" }
|
|
440
|
+
}
|
|
441
|
+
specimens {
|
|
442
|
+
continuity same_eut
|
|
443
|
+
rules { eut-continuity modification-retest }
|
|
444
|
+
}
|
|
445
|
+
field {
|
|
446
|
+
site_selection "On the road under real traffic conditions (7.7.1), including curved streets — the EUT shall give no valid speed value when the measurement is done outside its specified limits."
|
|
447
|
+
traffic_conditions "Various traffic conditions (7.7.1); the reference vehicle shall generally not brake abruptly or accelerate strongly during the measurements."
|
|
448
|
+
reference_meter { description "An ego speed meter installed on a second (reference) vehicle (7.7.1); the EUT measurements are compared to the synchronous reference speed value." uncertainty_budget moving_field_reference }
|
|
449
|
+
}
|
|
450
|
+
}
|
|
451
|
+
acceptance_criteria {
|
|
452
|
+
type composite
|
|
453
|
+
pass_if "within_mpe_moving"
|
|
454
|
+
criterion within_mpe_moving { target /req/category-moving/mpe-moving pass_if "ocl{abs(speed_error) <= lookupMPE(reference_speed, metrological_class, 1.0)}" }
|
|
455
|
+
}
|
|
456
|
+
report_rows { moving-speed-meters moving-field-test }
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
conformance_test /conf/field/ego-field-test {
|
|
460
|
+
name "Metrological field test of the ego speed meter"
|
|
461
|
+
purpose "Verify the ego speed meter MPE (R 91-1, 6.15.3) on the road for all tested speed values; the reference ego speed keys the relative tier (R 91-1, 3.5.2 NOTE)."
|
|
462
|
+
method "Road test of the EUT's ego speed meter installed per the user manual against a suitable reference for the test-vehicle speed (7.7.2); the ego-wheel adjustment factor validity (6.15.3 Note 1) is checked in the same programme."
|
|
463
|
+
type Testing
|
|
464
|
+
kind field
|
|
465
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.7.2" }
|
|
466
|
+
targets { /req/category-moving/ego-speed /req/category-moving/ego-adjustment }
|
|
467
|
+
applicability {
|
|
468
|
+
mode_of_use: [moving]
|
|
469
|
+
}
|
|
470
|
+
test_subject {
|
|
471
|
+
component: "ego_speed_meter"
|
|
472
|
+
description: "The ego speed meter as its own test subject (R 91-1, 3.2.2 + 3.2.5 NOTE: an instrument that is PART OF the moving speed meter, with its own MPE per 6.15.3 and fault limit per 6.18.1). Performed separately from the moving-speed-meter tests per R 91-2, 7.7.3."
|
|
473
|
+
}
|
|
474
|
+
variables {
|
|
475
|
+
variable ego_speed { type number unit "km/h" source measured }
|
|
476
|
+
variable reference_ego_speed { type number unit "km/h" source measured description "Reference for the speed of the test vehicle (7.7.2: U(k=2) <= 0.2 km/h <=100 km/h, 0.2 % above; larger only with guarded-acceptance compensation)" }
|
|
477
|
+
variable ego_speed_error { type number unit "km/h" source derived derivation "ocl{abs(ego_speed - reference_ego_speed)}" }
|
|
478
|
+
}
|
|
479
|
+
design {
|
|
480
|
+
specimens {
|
|
481
|
+
continuity same_eut
|
|
482
|
+
rules { eut-continuity modification-retest }
|
|
483
|
+
}
|
|
484
|
+
field {
|
|
485
|
+
site_selection "On the road (7.7.2); the EUT is installed on a test vehicle according to the user manual."
|
|
486
|
+
traffic_conditions "Road test of the ego speed meter; the MPE of R 91-1, 6.15.3 shall be met for all tested speed values (7.7.2)."
|
|
487
|
+
reference_meter { description "A suitable reference for the speed of the test vehicle (7.7.2); a larger uncertainty is permitted only with guarded-acceptance compensation in the MPE (OIML G 1-106, 8.3.2)." uncertainty_budget ego_reference }
|
|
488
|
+
}
|
|
489
|
+
}
|
|
490
|
+
acceptance_criteria {
|
|
491
|
+
type composite
|
|
492
|
+
pass_if "within_mpe_ego"
|
|
493
|
+
criterion within_mpe_ego { target /req/category-moving/ego-speed pass_if "ocl{abs(ego_speed_error) <= lookupMPE(reference_ego_speed, 'ego', 1.0)}" }
|
|
494
|
+
}
|
|
495
|
+
report_rows { moving-speed-meters ego-field-test }
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
conformance_test /conf/field/dynamic-performance {
|
|
499
|
+
name "Dynamic performance test (traffic simulation)"
|
|
500
|
+
purpose "Verify the dynamic response against the stationary MPE (R 91-1, 6.4) under simulated field conditions — measurement-angle distribution and vehicle-shape effects included (5.3)."
|
|
501
|
+
method "Traffic simulation replicating the metrological field test (5.3); integer speed values govern (R 91-1, 6.3)."
|
|
502
|
+
type Testing
|
|
503
|
+
kind simulation
|
|
504
|
+
obligation optional
|
|
505
|
+
obligation_note "Metrological laboratory tests by traffic simulation (R 91-2, 5) are optional in the type-evaluation programme (R 91-1, 8.1.4.b)."
|
|
506
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "5.3" }
|
|
507
|
+
targets { /req/metrological/mpe-stationary /req/metrological/relevant-speed-values }
|
|
508
|
+
variables {
|
|
509
|
+
variable reference_speed { type number unit "km/h" source measured description "Simulated reference speed on the identical measurement section as used by the EUT (5.3)" }
|
|
510
|
+
variable indicated_speed { type number unit "km/h" source measured }
|
|
511
|
+
variable test_acceleration { type number unit "m/s2" source measured }
|
|
512
|
+
variable measurement_count { type integer source declared }
|
|
513
|
+
variable speed_error { type number unit "km/h" source derived derivation "ocl{indicated_speed - reference_speed}" }
|
|
514
|
+
variable errors { type collection unit "km/h" source derived derivation "ocl{measurements->collect(m | m.indicated_speed - m.reference_speed)}" description "Error series over the valid simulation measurements — basis of the field-test statistical methods (5.3 → 4.7)" }
|
|
515
|
+
}
|
|
516
|
+
design {
|
|
517
|
+
counts {
|
|
518
|
+
count dynamic_performance { min 500 clause "5.3" note ">= 500 valid simulation measurements; the same MPE and statistical methods as the metrological field test apply" }
|
|
519
|
+
}
|
|
520
|
+
schedule {
|
|
521
|
+
constraints {
|
|
522
|
+
"simulated speeds uniformly random over the full specified measuring interval; accelerations uniformly random over [-1.5, +1.5] m/s² (5.3)"
|
|
523
|
+
"simulator validated against the metrological field test with the same device in the same measuring interval (5.3)"
|
|
524
|
+
"both driving directions if the EUT measures approaching and departing vehicles (5.3)"
|
|
525
|
+
}
|
|
526
|
+
}
|
|
527
|
+
specimens {
|
|
528
|
+
continuity same_eut
|
|
529
|
+
rules { eut-continuity modification-retest }
|
|
530
|
+
}
|
|
531
|
+
simulation {
|
|
532
|
+
simulator_kind complete
|
|
533
|
+
signal "Simulates the conditions of the metrological field test as closely as possible, including a possible distribution and variation of the measurement angle and possible vehicle-shape-related effects (5.3); one of the installation conditions tested in the field tests is simulated."
|
|
534
|
+
uncertainty_budget simulator
|
|
535
|
+
validation "The simulator shall be validated by comparing the results of the simulation to the results of the metrological field test using the same device in the same measuring interval (5.3)."
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
acceptance {
|
|
539
|
+
rule shared_risk
|
|
540
|
+
statistics { method error_distribution on_basis_of errors permits count_override }
|
|
541
|
+
}
|
|
542
|
+
acceptance_criteria {
|
|
543
|
+
type composite
|
|
544
|
+
pass_if "within_mpe_all"
|
|
545
|
+
criterion within_mpe_all { target /req/metrological/mpe-stationary pass_if "ocl{abs(speed_error) <= lookupMPE(reference_speed, 'stationary', 1.0)}" description "Every simulation measurement within the stationary MPE (R 91-1, 6.4; the field-test decision rule of 4.6 applies per 5.3)" }
|
|
546
|
+
criterion statistics_optional { target /req/metrological/mpe-stationary pass_if "ocl{abs(mean(errors)) + 5 * stddev(errors) <= lookupMPE(reference_speed, 'stationary', 1.0) and m_sigma_coverage(errors, mean(errors), 5) >= 0.999}" optional true description "Optional statistical analysis (5.3 → 4.7): m ± 5σ of the error distribution within the MPE" }
|
|
547
|
+
}
|
|
548
|
+
report_rows { laboratory-tests-traffic-simulation dynamic-performance-test }
|
|
549
|
+
}
|
|
550
|
+
|
|
551
|
+
conformance_test /conf/field/acceleration-test {
|
|
552
|
+
name "Acceleration test (traffic simulation)"
|
|
553
|
+
purpose "Verify the stationary MPE (R 91-1, 6.4) under the stronger acceleration bands not typical of field tests ([-5,-1.5] and [+1.5,+5] m/s², 6.5)."
|
|
554
|
+
method "Simulation with minimized influence quantities; the INTEGER speed values from the EUT are used to calculate the errors (6.5); the errors shall fulfil the MPE for stationary measurements (R 91-1, 6.4)."
|
|
555
|
+
type Testing
|
|
556
|
+
kind simulation
|
|
557
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "6.5" }
|
|
558
|
+
targets { /req/metrological/mpe-stationary }
|
|
559
|
+
variables {
|
|
560
|
+
variable reference_speed { type number unit "km/h" source measured }
|
|
561
|
+
variable indicated_speed { type number unit "km/h" source measured }
|
|
562
|
+
variable test_acceleration { type number unit "m/s2" source declared description "Applied simulated acceleration within [-5,-1.5] or [+1.5,+5] m/s² (6.5)" }
|
|
563
|
+
variable speed_error { type number unit "km/h" source derived derivation "ocl{indicated_speed - reference_speed}" }
|
|
564
|
+
}
|
|
565
|
+
design {
|
|
566
|
+
schedule {
|
|
567
|
+
constraints {
|
|
568
|
+
"accelerations in [-5, -1.5] m/s² and [+1.5, +5] m/s² with all other influence quantities minimized; a partial traffic simulator is sufficient (6.5)"
|
|
569
|
+
"the simulated reference speed is evaluated on a measurement section overlapping the EUT's as much as possible (6.5)"
|
|
570
|
+
}
|
|
571
|
+
}
|
|
572
|
+
specimens {
|
|
573
|
+
continuity same_eut
|
|
574
|
+
rules { eut-continuity modification-retest }
|
|
575
|
+
}
|
|
576
|
+
simulation {
|
|
577
|
+
simulator_kind partial
|
|
578
|
+
signal "Simulated vehicles accelerating within [-5, -1.5] m/s² and [+1.5, +5] m/s² with all other influence quantities minimized (6.5); a partial traffic simulator is sufficient; the integer speed values from the EUT are used to calculate the errors."
|
|
579
|
+
uncertainty_budget simulator
|
|
580
|
+
validation "The simulated reference speed is evaluated on a measurement section overlapping the EUT's measurement section as much as possible (6.5); the simulator's uncertainty budget is the 5.2 budget."
|
|
581
|
+
}
|
|
582
|
+
}
|
|
583
|
+
acceptance {
|
|
584
|
+
rule shared_risk
|
|
585
|
+
}
|
|
586
|
+
acceptance_criteria {
|
|
587
|
+
type composite
|
|
588
|
+
pass_if "within_mpe_all"
|
|
589
|
+
criterion within_mpe_all { target /req/metrological/mpe-stationary pass_if "ocl{abs(speed_error) <= lookupMPE(reference_speed, 'stationary', 1.0)}" description "Errors under the acceleration bands within the stationary MPE (R 91-1, 6.4, per 6.5)" }
|
|
590
|
+
}
|
|
591
|
+
report_rows { acceleration-test }
|
|
592
|
+
}
|
|
593
|
+
|
|
594
|
+
conformance_class /conf/category-doppler-radar {
|
|
595
|
+
title "Doppler-radar tests (R 91-2, 7.1)"
|
|
596
|
+
name "Doppler-radar specific tests"
|
|
597
|
+
target /req/category-doppler-radar
|
|
598
|
+
subject "SpeedMeter"
|
|
599
|
+
applicability {
|
|
600
|
+
working_principle: [doppler-radar]
|
|
601
|
+
}
|
|
602
|
+
}
|
|
603
|
+
|
|
604
|
+
conformance_test /conf/category-doppler-radar/frequency-spectrum {
|
|
605
|
+
name "Frequency spectrum and stability"
|
|
606
|
+
purpose "Verify frequency spectrum and stability per urn:oiml:pub:r:91-2:2025#clause-7.1."
|
|
607
|
+
method "Verify frequency spectrum and stability per urn:oiml:pub:r:91-2:2025#clause-7.1."
|
|
608
|
+
type Testing
|
|
609
|
+
kind performance
|
|
610
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.1" }
|
|
611
|
+
targets { /req/category-doppler-radar/frequency-spectrum /req/category-doppler-radar/spectrum-stability }
|
|
612
|
+
design {
|
|
613
|
+
specimens {
|
|
614
|
+
continuity same_eut
|
|
615
|
+
rules { eut-continuity modification-retest }
|
|
616
|
+
}
|
|
617
|
+
}
|
|
618
|
+
report_rows { category-tests doppler-radar carrier-frequency }
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
conformance_test /conf/category-doppler-radar/beam-width {
|
|
622
|
+
name "Beam width measurement"
|
|
623
|
+
purpose "Verify beam width measurement per urn:oiml:pub:r:91-2:2025#clause-7.1."
|
|
624
|
+
method "Verify beam width measurement per urn:oiml:pub:r:91-2:2025#clause-7.1."
|
|
625
|
+
type Testing
|
|
626
|
+
kind performance
|
|
627
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.1" }
|
|
628
|
+
targets { /req/category-doppler-radar/beam-width }
|
|
629
|
+
design {
|
|
630
|
+
specimens {
|
|
631
|
+
continuity same_eut
|
|
632
|
+
rules { eut-continuity modification-retest }
|
|
633
|
+
}
|
|
634
|
+
}
|
|
635
|
+
report_rows { category-tests doppler-radar antenna-pattern }
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
conformance_test /conf/category-doppler-radar/power-spectrum {
|
|
639
|
+
name "Emitted power and side lobes"
|
|
640
|
+
purpose "Verify emitted power and side lobes per urn:oiml:pub:r:91-2:2025#clause-7.1."
|
|
641
|
+
method "Verify emitted power and side lobes per urn:oiml:pub:r:91-2:2025#clause-7.1."
|
|
642
|
+
type Testing
|
|
643
|
+
kind performance
|
|
644
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.1" }
|
|
645
|
+
targets { /req/category-doppler-radar/side-lobe }
|
|
646
|
+
design {
|
|
647
|
+
specimens {
|
|
648
|
+
continuity same_eut
|
|
649
|
+
rules { eut-continuity modification-retest }
|
|
650
|
+
}
|
|
651
|
+
}
|
|
652
|
+
report_rows { category-tests doppler-radar eirp }
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
conformance_class /conf/category-range-finding {
|
|
656
|
+
title "Range-finding tests (R 91-2, 7.2)"
|
|
657
|
+
name "Range-finding specific tests"
|
|
658
|
+
target /req/category-range-finding
|
|
659
|
+
subject "SpeedMeter"
|
|
660
|
+
applicability {
|
|
661
|
+
working_principle: [range-finding]
|
|
662
|
+
}
|
|
663
|
+
}
|
|
664
|
+
|
|
665
|
+
conformance_test /conf/category-range-finding/wavelength {
|
|
666
|
+
name "Operating wavelength"
|
|
667
|
+
purpose "Verify operating wavelength per urn:oiml:pub:r:91-2:2025#clause-7.2."
|
|
668
|
+
method "Verify operating wavelength per urn:oiml:pub:r:91-2:2025#clause-7.2."
|
|
669
|
+
type Testing
|
|
670
|
+
kind performance
|
|
671
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.2" }
|
|
672
|
+
targets { /req/category-range-finding/wavelength }
|
|
673
|
+
design {
|
|
674
|
+
specimens {
|
|
675
|
+
continuity same_eut
|
|
676
|
+
rules { eut-continuity modification-retest }
|
|
677
|
+
}
|
|
678
|
+
}
|
|
679
|
+
report_rows { category-tests range-finding }
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
conformance_test /conf/category-range-finding/pulse-stability {
|
|
683
|
+
name "Pulse characteristic stability"
|
|
684
|
+
purpose "Verify pulse characteristic stability per urn:oiml:pub:r:91-2:2025#clause-7.2."
|
|
685
|
+
method "Verify pulse characteristic stability per urn:oiml:pub:r:91-2:2025#clause-7.2."
|
|
686
|
+
type Testing
|
|
687
|
+
kind performance
|
|
688
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.2" }
|
|
689
|
+
targets { /req/category-range-finding/pulse-stability }
|
|
690
|
+
design {
|
|
691
|
+
specimens {
|
|
692
|
+
continuity same_eut
|
|
693
|
+
rules { eut-continuity modification-retest }
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
report_rows { category-tests range-finding pulse-repetition-rate }
|
|
697
|
+
}
|
|
698
|
+
|
|
699
|
+
conformance_test /conf/category-range-finding/beam-width {
|
|
700
|
+
name "Beam width / FOI and radiance"
|
|
701
|
+
purpose "Verify the beam width / field-of-view characteristics (7.2.c-d) and the maximum specified distance together with the viewfinder provision (R 91-1, 6.11)."
|
|
702
|
+
method "Determine the beam width, secondary beams if applicable, and the relevant characteristics of the field of view (7.2.c-d); verify the maximum specified distance against the distance where the beam width exceeds 1.5 m and the ≥ 2× viewfinder magnification for distances over 600 m (R 91-1, 6.11)."
|
|
703
|
+
type Testing
|
|
704
|
+
kind performance
|
|
705
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.2" }
|
|
706
|
+
targets { /req/category-range-finding/beam-width /req/category-range-finding/max-distance-viewfinder }
|
|
707
|
+
design {
|
|
708
|
+
specimens {
|
|
709
|
+
continuity same_eut
|
|
710
|
+
rules { eut-continuity modification-retest }
|
|
711
|
+
}
|
|
712
|
+
}
|
|
713
|
+
report_rows { category-tests range-finding beam-width }
|
|
714
|
+
}
|
|
715
|
+
|
|
716
|
+
conformance_class /conf/category-fixed-distance {
|
|
717
|
+
title "Fixed-distance tests (R 91-2, 7.4)"
|
|
718
|
+
name "Fixed-distance specific tests"
|
|
719
|
+
target /req/category-fixed-distance
|
|
720
|
+
subject "SpeedMeter"
|
|
721
|
+
applicability {
|
|
722
|
+
working_principle: [fixed-distance]
|
|
723
|
+
}
|
|
724
|
+
}
|
|
725
|
+
|
|
726
|
+
conformance_test /conf/category-fixed-distance/detection-point-distance {
|
|
727
|
+
name "Detection point distance accuracy"
|
|
728
|
+
purpose "Verify detection point distance accuracy per urn:oiml:pub:r:91-2:2025#clause-7.4."
|
|
729
|
+
method "Verify detection point distance accuracy per urn:oiml:pub:r:91-2:2025#clause-7.4."
|
|
730
|
+
type Testing
|
|
731
|
+
kind performance
|
|
732
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.4" }
|
|
733
|
+
targets { /req/category-fixed-distance/detection-point-distance }
|
|
734
|
+
design {
|
|
735
|
+
specimens {
|
|
736
|
+
continuity same_eut
|
|
737
|
+
rules { eut-continuity modification-retest }
|
|
738
|
+
}
|
|
739
|
+
}
|
|
740
|
+
report_rows { category-tests fixed-distance trigger-point-distance }
|
|
741
|
+
}
|
|
742
|
+
|
|
743
|
+
conformance_test /conf/category-fixed-distance/redundancy {
|
|
744
|
+
name "Redundancy verification"
|
|
745
|
+
purpose "Verify redundancy verification per urn:oiml:pub:r:91-2:2025#clause-7.4."
|
|
746
|
+
method "Verify redundancy verification per urn:oiml:pub:r:91-2:2025#clause-7.4."
|
|
747
|
+
type Testing
|
|
748
|
+
kind performance
|
|
749
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.4" }
|
|
750
|
+
targets { /req/category-fixed-distance/redundancy }
|
|
751
|
+
design {
|
|
752
|
+
specimens {
|
|
753
|
+
continuity same_eut
|
|
754
|
+
rules { eut-continuity modification-retest }
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
report_rows { category-tests fixed-distance }
|
|
758
|
+
}
|
|
759
|
+
|
|
760
|
+
conformance_class /conf/category-average-speed {
|
|
761
|
+
title "Average speed tests (R 91-2, 7.3)"
|
|
762
|
+
name "Average speed specific tests"
|
|
763
|
+
target /req/category-average-speed
|
|
764
|
+
subject "SpeedMeter"
|
|
765
|
+
applicability {
|
|
766
|
+
working_principle: [average-speed]
|
|
767
|
+
}
|
|
768
|
+
}
|
|
769
|
+
|
|
770
|
+
conformance_test /conf/category-average-speed/time-synchronisation {
|
|
771
|
+
name "Time synchronisation between detection fields"
|
|
772
|
+
purpose "Verify the robustness of the time synchronisation mechanism (7.3.a) and that the time-measurement MPE of 0.3 % is fulfilled with vehicle detection and image recording included (7.3.b) — image evidence and time stamps at all detection fields (R 91-1, 6.13)."
|
|
773
|
+
method "Verify time synchronisation between detection fields per urn:oiml:pub:r:91-2:2025#clause-7.3."
|
|
774
|
+
type Testing
|
|
775
|
+
kind performance
|
|
776
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.3" }
|
|
777
|
+
targets { /req/category-average-speed/time-synchronisation /req/category-average-speed/image-time-evidence }
|
|
778
|
+
variables {
|
|
779
|
+
variable time_sync_error { type number unit "%" source measured }
|
|
780
|
+
}
|
|
781
|
+
design {
|
|
782
|
+
specimens {
|
|
783
|
+
continuity same_eut
|
|
784
|
+
rules { eut-continuity modification-retest }
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
acceptance_criteria {
|
|
788
|
+
type composite
|
|
789
|
+
pass_if "sync_within_limit"
|
|
790
|
+
criterion sync_within_limit { target /req/category-average-speed/time-synchronisation pass_if "ocl{abs(time_sync_error) <= 0.3}" }
|
|
791
|
+
criterion image_evidence_at_all_fields { target /req/category-average-speed/image-time-evidence pass_if "ocl{evidence_file_complete}" description "Image evidence and time stamp recorded at ALL detection fields (R 91-1, 6.13); the time-measurement MPE is verified with vehicle detection and image recording included (R 91-2, 7.3.b)" }
|
|
792
|
+
}
|
|
793
|
+
report_rows { category-tests average-speed time-synchronisation-robustness time-measurement-mpe }
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
conformance_test /conf/category-average-speed/detection-field-size {
|
|
797
|
+
name "Detection field size measurement"
|
|
798
|
+
purpose "Determine the maximum size of the detection field, even at varying speeds (7.3.c), against the limit of 0.5 % of the minimum section distance (R 91-1, 6.13)."
|
|
799
|
+
method "Measurement of the detection field size at the entry and exit detection fields at varying vehicle speeds (7.3.c); the minimum distance between entry and exit points is verified in the same programme (7.3.d)."
|
|
800
|
+
type Testing
|
|
801
|
+
kind performance
|
|
802
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.3" }
|
|
803
|
+
targets { /req/category-average-speed/detection-field-size }
|
|
804
|
+
variables {
|
|
805
|
+
variable detection_field_size { type number unit "m" source measured }
|
|
806
|
+
variable section_distance_min { type number unit "m" source declared }
|
|
807
|
+
}
|
|
808
|
+
design {
|
|
809
|
+
specimens {
|
|
810
|
+
continuity same_eut
|
|
811
|
+
rules { eut-continuity modification-retest }
|
|
812
|
+
}
|
|
813
|
+
}
|
|
814
|
+
acceptance_criteria {
|
|
815
|
+
type composite
|
|
816
|
+
pass_if "field_size_within_limit"
|
|
817
|
+
criterion field_size_within_limit { target /req/category-average-speed/detection-field-size pass_if "ocl{detection_field_size <= 0.005 * section_distance_min}" description "Detection field size ≤ 0.5 % of the minimum section distance (R 91-1, 6.13)" }
|
|
818
|
+
}
|
|
819
|
+
report_rows { category-tests average-speed detection-field-size entry-exit-distance }
|
|
820
|
+
}
|
|
821
|
+
|
|
822
|
+
conformance_class /conf/category-image-based {
|
|
823
|
+
title "Image-based tests (R 91-2, 7.5)"
|
|
824
|
+
name "Image-based specific tests"
|
|
825
|
+
target /req/category-image-based
|
|
826
|
+
subject "SpeedMeter"
|
|
827
|
+
applicability {
|
|
828
|
+
working_principle: [image-based]
|
|
829
|
+
}
|
|
830
|
+
}
|
|
831
|
+
|
|
832
|
+
conformance_test /conf/category-image-based/image-quality {
|
|
833
|
+
name "Image quality and position marking"
|
|
834
|
+
purpose "Verify image quality and position marking per urn:oiml:pub:r:91-2:2025#clause-7.5."
|
|
835
|
+
method "Verify image quality gating and vehicle-position marking on the image evidences (R 91-1, 6.14), the minimum illumination and maximum fog density (7.5.c), and review the manufacturer-specified vehicle positions and their distances used to determine the speed (6.14 position distances)."
|
|
836
|
+
type Testing
|
|
837
|
+
kind performance
|
|
838
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "7.5" }
|
|
839
|
+
targets { /req/category-image-based/image-quality /req/category-image-based/position-marking /req/category-image-based/position-distances }
|
|
840
|
+
design {
|
|
841
|
+
specimens {
|
|
842
|
+
continuity same_eut
|
|
843
|
+
rules { eut-continuity modification-retest }
|
|
844
|
+
}
|
|
845
|
+
}
|
|
846
|
+
report_rows { category-tests image-based minimum-illumination }
|
|
847
|
+
}
|
|
848
|
+
|
|
849
|
+
conformance_class /conf/software {
|
|
850
|
+
title "Software examinations (R 91-2, 8)"
|
|
851
|
+
name "Software examinations per OIML D 31"
|
|
852
|
+
target /req/metrological
|
|
853
|
+
subject "SpeedMeter"
|
|
854
|
+
}
|
|
855
|
+
|
|
856
|
+
conformance_test /conf/software/software-examination {
|
|
857
|
+
name "Software examination (mandatory + optional levels)"
|
|
858
|
+
purpose "Software evaluation per R 91-2, 8 — identification, protection, maintenance/re-configuration per OIML D 31."
|
|
859
|
+
method "Software evaluation per R 91-2, 8 — identification, protection, maintenance/re-configuration per OIML D 31."
|
|
860
|
+
type Inspection
|
|
861
|
+
kind software-examination
|
|
862
|
+
obligation mandatory
|
|
863
|
+
obligation_note "Software tests are programme item (f) of R 91-1, 8.1.4; R 91-2, 8.3: the 8.3.1-8.3.3 items are mandatory, 8.3.4/8.3.5 optional (item levels in design.software.items)."
|
|
864
|
+
reference { doc "urn:oiml:pub:r:91-2:2025" clause "8" }
|
|
865
|
+
targets { /req/technical/software }
|
|
866
|
+
guidance "Examination level A (R 91-2, 8.2 — OIML D 31 normal examination level); evaluation methods AD (analysis of documentation and design evaluation), VFTM (functional testing of metrological functions), VFTSw (functional testing of software functions) per D 31, 7.3.2. The 30-item obligation/method matrix of 8.3.1-8.3.5 is structured in design.software.items: items 1-8 mandatory (8.3.1-8.3.3, D 31 6.2.x), items 9-28 optional (8.3.4, D 31 6.3.x), items 29-30 optional (8.3.5, D 31 6.3.8)."
|
|
867
|
+
design {
|
|
868
|
+
software {
|
|
869
|
+
level A
|
|
870
|
+
items {
|
|
871
|
+
item 1 { name "Software identification" d31 "6.2.1" obligation mandatory methods { AD VFTSw } clause "8.3.1" }
|
|
872
|
+
item 2 { name "Correctness of algorithms and functions" d31 "6.2.2" obligation mandatory methods { AD VFTM } clause "8.3.1" }
|
|
873
|
+
item 3 { name "Evidence and prevention of intervention" d31 "6.2.3" obligation mandatory methods { AD VFTSw } clause "8.3.2" }
|
|
874
|
+
item 4 { name "Prevention of misuse" d31 "6.2.4" obligation mandatory methods { AD VFTSw } clause "8.3.2" }
|
|
875
|
+
item 5 { name "Demands on the user" d31 "6.2.5" obligation mandatory methods { AD VFTSw } clause "8.3.2" }
|
|
876
|
+
item 6 { name "Detection of significant defects" d31 "6.2.6.1" obligation mandatory methods { AD VFTSw } clause "8.3.3" }
|
|
877
|
+
item 7 { name "Durability protection" d31 "6.2.6.2" obligation mandatory methods { AD VFTSw } clause "8.3.3" }
|
|
878
|
+
item 8 { name "Time stamps" d31 "6.2.7" obligation mandatory methods { AD VFTSw } clause "8.3.3" }
|
|
879
|
+
item 9 { name "Separation of components" d31 "6.3.2.1" obligation optional methods { AD } clause "8.3.4" }
|
|
880
|
+
item 10 { name "Separation of modules" d31 "6.3.2.2" obligation optional methods { AD } clause "8.3.4" }
|
|
881
|
+
item 11 { name "Shared indication" d31 "6.3.3" obligation optional methods { AD VFTM/VFTSw } clause "8.3.4" }
|
|
882
|
+
item 12 { name "Storage of data" d31 "6.3.4" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
883
|
+
item 13 { name "The measurement data stored shall be accompanied by all relevant information necessary for future legally relevant use" d31 "6.3.4.2" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
884
|
+
item 14 { name "The stored measurement data shall be protected by software means to guarantee the authenticity, integrity and correctness of the information concerning the speed measurement" d31 "6.3.4.3" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
885
|
+
item 15 { name "Automatic storing" d31 "6.3.4.4" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
886
|
+
item 16 { name "Data transmission" d31 "6.3.5" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
887
|
+
item 17 { name "The measurement data transmitted shall be accompanied by all relevant information necessary for future legally relevant use" d31 "6.3.5.2" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
888
|
+
item 18 { name "The transmitted data shall be protected by software means to guarantee the authenticity, integrity and, if necessary, correctness of the information concerning the speed of measurement" d31 "6.3.5.3" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
889
|
+
item 19 { name "Transmission delay or interruption" d31 "6.3.5.4" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
890
|
+
item 20 { name "Compatibility of operating systems and hardware" d31 "6.3.6.2" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
891
|
+
item 21 { name "Hardware interfaces not equipped with a protective software interface shall not be able to inadmissibly influence the legally relevant software part" d31 "6.3.6.2" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
892
|
+
item 22 { name "Secure boot process, where needed to ensure protection of the legally relevant software part" d31 "6.3.6.3.1" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
893
|
+
item 23 { name "The combination of the legally relevant software part and the operating system shall ensure enough resources for the operation of the legally relevant application" d31 "6.3.6.4" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
894
|
+
item 24 { name "Protection during use" d31 "6.3.6.5" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
895
|
+
item 25 { name "Communication with the legally relevant software part shall be made via protective interfaces" d31 "6.3.6.6" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
896
|
+
item 26 { name "Identification and traceability" d31 "6.3.6.7" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
897
|
+
item 27 { name "The manufacturer shall identify the suitable hardware and software environment; minimum resources and a suitable configuration necessary for correct functioning shall be declared" d31 "6.3.6.8" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
898
|
+
item 28 { name "Technical means shall be provided in the legally relevant software to prevent operation if the minimum resources or a suitable configuration are not met" d31 "6.3.6.9" obligation optional methods { AD VFTSw } clause "8.3.4" }
|
|
899
|
+
item 29 { name "Verified update" d31 "6.3.8.3" obligation optional methods { AD } clause "8.3.5" }
|
|
900
|
+
item 30 { name "Traced update" d31 "6.3.8.4" obligation optional methods { AD VFTSw } clause "8.3.5" }
|
|
901
|
+
}
|
|
902
|
+
}
|
|
903
|
+
}
|
|
904
|
+
report_rows { software-examination software-general-requirements software-protection software-hardware-support software-separation-interfaces software-maintenance-reconfiguration software-identification intervention-prevention measurement-software-protection }
|
|
905
|
+
}
|
|
906
|
+
|