サイトトップへこのカテゴリの一覧へ

T 7335:2005  

(1) 

まえがき 

この規格は,工業標準化法第12条第1項の規定に基づき,日本医用光学機器工業会(JMOIA)/財団法人

日本規格協会(JSA)から,工業標準原案を具して日本工業規格を制定すべきとの申出があり,日本工業標準

調査会の審議を経て,厚生労働大臣及び経済産業大臣が制定した日本工業規格である。 

制定に当たっては,日本工業規格と国際規格との対比,国際規格に一致した日本工業規格の作成及び日

本工業規格を基礎にした国際規格原案の提案を容易にするために,ISO 16284:2001,Ophthalmic optics−

Information interchange for ophthalmic optical equipmentを基礎として用いた。 

また,令和2年10月26日,産業標準化法第17条又は第18条の規定に基づく確認公示に際し,産業標

準化法の用語に合わせ,規格中“日本工業規格”を“日本産業規格”に改めた。 

この規格の一部が,技術的性質をもつ特許権,出願公開後の特許出願,実用新案権,又は出願公開後の

実用新案登録出願に抵触する可能性があることに注意を喚起する。厚生労働大臣,経済産業大臣及び日本

産業標準調査会は,このような技術的性質をもつ特許権,出願公開後の特許出願,実用新案権,又は出願

公開後の実用新案登録出願にかかわる確認について,責任はもたない。 

JIS T 7553には,次に示す附属書がある。 

附属書A(規定)レコードラベル 

附属書B(参考)パックト2進フォーマットの例 

附属書C(参考)CRCの計算 

附属書1(参考)JISと対応する国際規格との対比表 

T 7335:2005  

目 次 

ページ 

序文 ··································································································································· 1 

1. 適用範囲 ························································································································ 1 

2. 引用規格 ························································································································ 1 

3. 定義 ······························································································································ 1 

3.1 一般 ···························································································································· 1 

3.2 特殊文字 ······················································································································ 2 

3.3 データの種類 ················································································································ 2 

3.4 メッセージ ··················································································································· 2 

3.5 レコード ······················································································································ 3 

3.6 セション ······················································································································ 3 

3.7 タイムアウト ················································································································ 3 

4. 概要 ······························································································································ 3 

5. 要求事項 ························································································································ 4 

5.1 レコード ······················································································································ 4 

5.2 基準点レコード ············································································································· 6 

5.3 ジェネレータレコード ···································································································· 6 

5.4 計測レコード ················································································································ 8 

5.5 パケット ····················································································································· 15 

6. セション ······················································································································· 18 

6.1 概要 ··························································································································· 18 

6.2 初期設定セション ········································································································· 19 

6.3 アップロードセション ··································································································· 27 

6.4 ダウンロードセション ··································································································· 29 

7. その他の要求事項 ··········································································································· 30 

7.1 RS−232C 通信パラメタ ······························································································· 30 

7.2 オペレータメッセージ ··································································································· 30 

7.3 一時的な装置タイプの変更······························································································ 30 

附属書A(規定)レコードラベル ··························································································· 31 

附属書B(参考)パックト2進フォーマットの例 ······································································· 48 

附属書C(参考)CRCの計算 ································································································ 55 

附属書1(参考)JISと対応する国際規格との対比表 ·································································· 56 

日本産業規格          JIS 

T 7335:2005 

眼鏡レンズ製造システム間の情報交換 

Ophthalmic optics− 

Information interchange for ophthalmic optical equipment 

序文 この規格は,2001年に第1版として発行されたISO 16284,Ophthalmic optics−Information interchange 

for ophthalmic optical equipmentを翻訳し,技術的内容を変更して作成した日本産業規格である。 

なお,この規格で側線又は点線の下線を施してある箇所は,原国際規格を変更している事項である。変

更の一覧表をその説明を付けて,附属書1(参考)に示す。 

備考 この規格は,眼鏡レンズ製造機器業者とソフトウェア製造業者との製品相互間のインタフェイ

スについて規定したものであり,次の内容を含む。 

・機器とコンピュータシステムとがデータ交換を行う方法 

・コンピュータシステムが機器側のパラメタを初期設定する方法 

・機器がコンピュータシステムを初期設定する方法 

・新しいインタフェイスを動的に定義する方法 

・情報交換で使用される標準レコード及び装置タイプの規定 

これらのことから,この規格は,新しいデータ要素の必要性に伴い,適時改正する必要がある。 

1. 適用範囲 この規格は,眼鏡レンズの製造に利用される機器とコンピュータシステムとの情報交換の

方法について規定する。 

備考 この規格の対応国際規格を,次に示す。 

なお,対応の程度を表す記号は,ISO/IEC Guide 21に基づき,IDT(一致している),MOD

(修正している),NEQ(同等でない)とする。 

ISO 16284:2001,Ophthalmic optics−Information interchange for ophthalmic optical equipment (MOD) 

2. 引用規格 次に掲げる規格は,この規格に引用されることによって,この規格の規定の一部を構成す

る。 

JIS T 7330 眼鏡レンズの用語 

備考 ISO 13666 Ophthalmic optics−Spectacle lenses−Vocabularyからの引用事項は,この規格の該

当事項と同等である。 

3. 定義 この規格で用いる主な用語の定義は,JIS T 7330で定められた用語及び定義並びに次の定義が

適用される。 

3.1 

一般  

T 7335:2005  

3.1.1 

装置(device) 眼鏡レンズ製造情報をコンピュータシステムと送受信する機器。 

3.1.2 

ホスト(host) 装置と眼鏡レンズ製造情報を送受信するコンピュータシステム。 

3.1.3 

ジョブ(job) 眼鏡レンズの製造指示。 

3.1.4 

ダウンロード(download) ホスト側データを装置に伝送すること。 

3.1.5 

アップロード(upload) 装置側データをホストに伝送すること。 

3.2 

特殊文字  

3.2.1 

コード分離子(code separator) 装置レコード内のコードを区切る特殊文字。 

3.2.2 

CRCポジション文字(CRC position character) データレコードの終わりの位置とパケット内に

ある選択可能なCRCレコードの開始の位置とを示す特殊文字。 

3.2.3 

終了文字(end character) パケットの終わりを示す特殊文字。 

3.2.4 

フィールド分離子(field separator) レコード内のフィールドを区切る特殊文字。 

3.2.5 

ラベル分離子(label separator) レコード内のレコードラベルを区切る特殊文字。 

3.2.6 

必すレコードフラグ(mandatory record flag) あるレコードが必すであることを示す特殊文字。 

3.2.7 

開始文字(start character) パケットの始まりを示す特殊文字。 

3.2.8 

レコード分離子(record separator) レコードを区切る特殊文字。 

3.2.9 

予約文字(reserved characters) 特別な機能のために設定された特殊文字。 

3.2.10 未定義なデータを示す文字(unknown data indicator) ホストには定義されていないデータを示

す装置側の特殊文字。 

3.2.11 ACK文字(ACK character) パケットの受信が成功したことを示す制御文字。 

3.2.12 NAK文字(NAK character) パケットの受信が失敗したことを示す制御文字。 

3.3 

データの種類  

3.3.1 

リミテッドデータ(limited data) 最大長が規定されているテキストデータ。 

3.3.2 

リテラルデータ(literal data) 最大長が規定され,この規格で設定されているテキストデータ。 

3.3.3 

数値データ(numeric data) 浮動小数点及び整数データ。 

3.3.4 

テキストデータ(text data) 意味をもたない記号列又は文字列。 

3.3.5 

整数データ(integer data) 整数の形式で表現されたデータ。 

3.3.6 

2進データ(binary data) 2進数の形式で表現されたデータ。 

備考 制御文字と区別するために特別な操作が必要である。 

3.4 

メッセージ  

3.4.1 

メッセージ(message) 構造が規定され,ホストと装置との間で送受信されるデータ。 

3.4.2 

確認メッセージ(confirmation message) パケットの受信側から送信され,転送が成功したこと

を示す1文字のメッセージ。 

3.4.3 

肯定応答(positive acknowledgement) メッセージの受信が成功したことを示す1文字のメッセ

ージ。 

3.4.4 

否定応答(negative acknowledgement) メッセージの受信が失敗したことを示す1文字のメッセ

ージ。 

3.4.5 

パケット(packet) 開始文字,一連のレコード,終了文字で構成されるメッセージ。 

3.4.5.1 

データパケット(data packet) 要求された情報を含むパケット。 

3.4.5.2 

リクエストパケット(request packet) セションを開始するためのパケット。 

3.4.5.3 

応答パケット(response packet) 状態情報を含むパケット。 

T 7335:2005  

3.5 

レコード  

3.5.1 

レコード(record) レコードラベル,ラベル分離子,又はフィールド分離子によって区切られ,

ゼロ以上のデータフィールド及びレコード分離子で構成されるデータ。 

3.5.2 

データフィールド(data field) レコード内の一つのデータ要素。 

3.5.3 

レコードラベル(record label) データを識別するため,この規格で規定された特殊文字を含ま

ない最大長8文字からなる文字列。 

3.5.4 

ASCIIレコード(ASCII record) ASCII文字で構成されるレコード。 

3.5.5 

2進レコード(binary record) 2進数で構成されるレコード。 

3.5.6 

キラルレコード(chiral record) レンズ又は眼のデータフィールドが,右用データ,左用データ

の順番で構成されるレコード。 

3.5.7 

CRCレコード(CRC record) 転送された文字に関してCCIT CRC-16によって算出された値を含

むレコード。 

3.5.8 

装置レコード(device record) ホストと装置との間でデータ交換され,特定のジョブデータを含

むレコード。 

3.5.9 

インタフェイスレコード(interface record) ホストと装置との間のインタフェイス用レコード。 

3.6 

セション  

3.6.1 

セション(session) 一つの命令又は仕事に関し,装置とホストとの間で転送される一連のメッセ

ージ。 

3.6.2 

初期設定セション(initialization session) 機器モデル,ソフトウェアバージョン,オペレータID

などの情報を装置からホストに送信するセション。 

3.6.2.1 

オートフォーマット初期設定(auto-format initialization) 装置が装置レコードを定義する初期

設定セション。 

3.6.2.2 

プリセット初期設定(preset initialization) 装置が識別データをホストに送信する初期設定セシ

ョン。 

3.6.3 

ダウンロードセション(download session) ホスト側から装置に情報が転送されるセション。 

3.6.4 

アップロードセション(upload session) 装置側からホストに情報が転送されるセション。 

3.6.5 

インフォメーションセション(INFO session) 装置によるジョブの完了を示す状態情報をアップ

ロードするためのリクエストパケット。 

3.6.6 

保守セション(MNT session) 特定の眼鏡レンズ製造機器業者用装置情報をアップロードするた

めのリクエストパケット。 

3.7 

タイムアウト  

3.7.1 

タイムアウト(timeout) ホスト又は装置がデータ受信まで待たなくてはならない時間を表す数

値であり,これ以降はタイムアウトとなる。 

3.7.1.1 

確認タイムアウト(confirmation timeout) 確認メッセージの受信に適用されるタイムアウト。 

3.7.1.2 

文字間タイムアウト(intercharacter timeout) データの中で連続する文字間の間隔に適用され

るタイムアウト。 

3.7.1.3 

パケットタイムアウト(packet timeout) パケットの受信に適用されるタイムアウト。 

4. 概要 装置とホストとのデータ交換のためにこの規格での運用は,次のように表される。 

T 7335:2005  

眼鏡レンズの製造機器(装置)は,次の内の一つの実施要求をコンピュータシステム(ホスト)に送る。 

− 装置,ソフトウェアの版番号,モデル番号などを識別する情報を初期設定する。 

− 眼鏡レンズ製造作業の際に保存及び/又は使用するための情報をホストにアップロードする。 

− 作業を進めるために装置に要求される情報をホストからダウンロードする。 

データ交換は二つの方法で初期設定することができる。装置が初期設定セションを始めるか,又はホス

ト側が特別なエラーの場合,通常の要求を拒否し,装置に初期設定セションを始めさせる。アップロード

の要求に対しては,ホストが要求を認識し,装置はホストにデータを送信する。ダウンロードの要求に対

しては,ホストは装置に要求されたデータを送信する。 

このデータ交換のための可変長パケットは一連のレコードから構成され,各々のレコードはデータとデ

ータを識別するラベルとを含んでいる。この規格は一連のラベルとラベルに関係するデータとを規定して

いるが,ラベルは将来必要に応じて拡張される。 

一つの製造作業に関連するパケットの交換はセションと呼ばれる。これらのセションの構造及びそれら

を構成するパケットのレコードがこの規格の内容とする。 

この規格ではホストと装置との間の接続がRS-232Cシリアル通信フォーマットで実施されることを想定

しているが,必要であれば,他のハードウェアプラットフォーム上でも実施できるように,仕様をこの規

格に組み入れることが望ましい。 

5. 要求事項  

備考 この規格の例では,読みやすさのために,レコード分離子は省略され,開始文字は別の行に置

き,CRCレコードは含まれていない場合がある。 

注釈はREMレコードとして記述する。注釈は角括弧([…])で示し,データの一部ではな

い。省略符号(“…”)は前項と同じタイプのデータが続くことを示すために使用している。 

読みやすくするために,空白がレコードとフィールド分離子との間に入れられているが,実

際のパケット内には入れる必要がない。次の規定では,リクエスト,応答及びデータパケット

を参照のこと。 

5.1 

レコード  

5.1.1 

インタフェイスレコード この規格は,一連のインタフェイスレコードを規定する。これらのレコ

ードには特定のジョブデータが含まれず,ホストと装置とがデータ交換のために使用する情報を含む。こ

れらは,附属書AのA.2に示す。 

5.1.2 

装置レコード この規格は,装置がジョブの作業のために必要なデータ要素を含むレコードを装置

レコードとして規定する。これらの装置レコードは附属書AのA.1に列挙されている。 

5.1.3 

プリセット装置タイプ この規格は特定の装置タイプに対して装置レコードを規定している。これ

らの装置タイプは附属書AのA.3に列挙されている。 

5.1.4 

必すレコード 必すレコードは必すレコードフラグ(*)を付けて表示されている。表示されてい

ないものは選択可能であるとみなされる。 

5.1.5 

未定義データがあるレコード ホストは,必すレコードを送信するよう要求された場合,情報がな

いデータフィールドすべてに情報がないことを示す“?”を付けてレコードを送信する。この場合,レコー

ドはキラルレコードの規則に従う。 

5.1.6 

未定義レコードラベルがあるレコード 認識できないラベルをもつレコードをホストが受信した

場合,そのレコードを無視する必要がある。 

T 7335:2005  

5.1.7 

試験レコード 製造機器業者が新しいレコードをこの規格に含めるために事前に試験する場合は,

そのレコードにアンダライン(ASCII“ ”10進数95)で始まるラベルを使用する。このレコードラベル

は最大長8文字とし,この規格に規定する特殊文字は含まれない。 

5.1.8 

予約文字  

5.1.8.1 

表1に規定された制御文字及び特殊文字は,転送データに表示されない。 

5.1.8.2 

予約文字は,ASCIIレコード内で使われ,テキストデータの中で使用される場合は二重引用符で

くくられる。 

5.1.8.3 

10進数32未満の予約文字を2進レコードで表現する場合は,次のエスケープ処理で二つの文字

を送信する方法が必要となる。最初の文字はエスケープ文字で,次に元の文字のハイビットをオンにした

文字が続く。すなわち,2番目の文字は,10進数の128(hex 0×80)とのOR演算の結果である。受信側は,

エスケープ文字を受信したら,エスケープ文字を捨て,次の文字のハイビットも除く。CRC値がある場合,

CRCパケットの処理をした後,上の処理を行う。 

備考 言い換えると,送信側はCRC値を算出する前に制御文字を符号化し,受信側はCRC値の算出

後にそれらの符号を制御文字に変換する。 

例 上のエスケープ処理前と処理後とのデータ(2進絶対値フォーマットで表した計測レコード) 

前: 

R=175  9  23  10  45  10 223  9  90  9 205  8  89  8 252   7 183   7 143   7 

  130  7 147   7 197   7  24  8 136  8  18  9 167  9  39  10  85  10  19  10 

  213  9 146   9  75   9  14  9 199  8 120  8  38  8 222   7 166   7 131   7 

  117  7 122   7 149   7 191  7 241  7  41  8  92  8 152   8 229   8  67   9<CR/LF> 

後: 

R=175  9  23 27 138 45 27 138 223 9 90 9 205 8 89  8 252   7 183   7 143   7 

  130  7 147   7 197   7  24  8 136  8  18  9 167  9  39 27 138 85 27 138 27 147 27 138 

  213  9 146   9  75   9  14  9 199  8 120  8  38  8 222   7 166   7 131   7 

  117  7 122   7 149   7 191  7 241  7  41  8  92  8 152   8 229   8  67   9<CR/LF> 

5.1.8.4 

リミテッドデータは10進数の32から127までのASCII文字であり,最大長は12文字とする。

このデータは二重の引用符(ASCII 10進数34)でくくられ,引用符を含んではならない。 

5.1.8.5 

テキストデータは,10進数で32から127までの定義付けされていないASCII文字であり,最大

長は80文字とする。このデータは二重の引用符(ASCII 10進数34)でくくられ,引用符を含んではなら

ない。 

5.1.8.6 

リテラルデータは,この規格で設定され,レコードタイプによって意味をもつ一連の文字とする。

レコード定義に明記されていない限り,最大長は12文字とする。このデータには予約文字及び二重の引用

符は含まれない。 

background image

T 7335:2005  

表 1 予約文字(制御文字と特殊文字) 

文字 

16進数 

10進数 

制御キー 

用途 

FS 

0×1C 

28 

^¥ 

制御文字 メッセージの始め 

GS 

0×1D 

29 

^] 

  〃   メッセージの終り 

DC1 

0×11 

17 

^Q 

  〃   予約済(XOFF) 

DC3 

0×13 

19 

^S 

  〃   予約済(XON) 

ACK 

0×06 

06 

^F 

  〃   肯定応答 

NAK 

0×15 

21 

^U 

  〃   否定応答 

ESC 

0×1B 

27 

^[ 

  〃   エスケープ 

RS 

0×1E 

30 

^^ 

  〃   CRC分離子 

SUB 

0×1A 

26 

^Z 

  〃   ファイルの終り 

CR 

0×0D 

13 

^M 

  〃   レコード分離子 

LF 

0×0A 

10 

^J 

  〃   レコード分離子 

0×3B 

59 

特殊文字 フィールド分離子 

0×3D 

61 

  〃   ラベル分離子 

0×40 

64 

  〃   予約済 

, 

0×2C 

44 

, 

  〃   コード分離子 

0×2A 

42 

  〃   必すレコードフラグ 

0×3F 

63 

  〃   未定義なデータを示す文字 

5.2 

基準点レコード  

5.2.1 

レコードは二つの基準点間の水平及び垂直距離を示している。 

5.2.2 

レコードラベル6文字のうち,最初の2文字は第1基準点,次の2文字は第2基準点,最後の2

文字は水平(IN)又は垂直(UP)の方向を示している。数値は第1基準点に対する第2基準点の位置を示

している。 

5.2.3 

正のINの値は第2基準点が第1基準点よりも鼻側にあることを示している。 

5.2.4 

負のINの値は第2基準点が第1基準点よりも耳側にあることを示している。 

5.2.5 

正のUPの値は第2基準点が第1基準点よりも上であることを示している。 

5.2.6 

負のUPの値は第2基準点が第1基準点よりも下であることを示している。 

表 2 基準点の識別子 

識別子 

基準点 

BC 

レンズブランク中心(レンズ素材の光学中心) 

FB 

フィニッシュブロック 

FC 

玉形中心 

OC 

光学中心 

SB 

サフェイスブロック 

SG 

小玉 

PM 

累進マーク 

5.3 

ジェネレータレコード  

5.3.1 

研削ジェネレータインタフェイスはジェネレータ装置の設定に必要となる様々なレコードを含む。 

この規格はどのジェネレータ装置でも利用できるように,プリセットレコード,特に補正に関するレコ

ードを規定している。ジェネレータ装置の中のレンズ位置はRNGH,RNGD,SAGRD,SAGBD(リング

の高さ,直径,リングの直径におけるレンズサグ,レンズブランクの直径におけるレンズサグ)フィール

ドから判断することができる。ジェネレータ装置の中には,上のレコードに関する特定の値を想定し,補

background image

T 7335:2005  

正を実施できないものもある。 

次の補正フィールドはこれらの調整に必要なデータを提供している。 

表 3 基準点レコード 

ラベル 

意味 

FBFCIN,FBFCUP 

フィニッシュブロックに対する玉形中心のIN・UP値 

FBSGIN,FBSGUP 

フィニッシュブロックに対する小玉端点のIN・UP値 

FBOCIN,FBOCUP 

フィニッシュブロックに対する光学中心のIN・UP値 

SBBCIN,SBBCUP 

サフェイスブロックに対するレンズブランク中心のIN・UP値 

BCSGIN,BCSGUP 

レンズブランク中心に対する小玉端点のIN・UP値 

BCOCIN,BCOCUP 

レンズブランク中心に対する光学中心のIN・UP値 

SBSGIN,SBSGUP 

サフェイスブロックに対する小玉端点のIN・UP値 

SBOCIN,SBOCUP 

サフェイスブロックに対する光学中心のIN・UP値 

SBFCIN,SBFCUP 

サフェイスブロックに対する玉形中心のIN・UP値 

SGOCIN/SGOCUP 

小玉端点に対する光学中心のIN・UP値 

FCSGIN/FCSGUP 

玉形中心に対する小玉端点のIN・UP値 

FCOCIN/FCOCUP 

玉形中心に対する光学中心のIN・UP値 

FBPMIN/FBPMUP 

フィニッシュブロックに対する累進マークのIN・UP値 

5.3.2 

BLKCMPはレンズの湾曲した接触面が,あるブロックのひずみから生じるジェネレータ装置の厚

さに対して必要な補正を示している。BLKBフィールドは,レンズとブロックとの接触面のカーブ差によ

るジェネレータの厚さ方向の補正を含み,BLKDフィールドはブロックの直径を含む。 

5.3.3 

ジョブに利用されるブロックがカーブをもたない場合,BLKBは必要ない。この場合,その数値は

IFRNTと等しくなる。 

5.3.4 

RNGCMPは,ブロックリングの高さ,直径,ホストへの情報及びジェネレータ装置に事前に設定

されている情報との差異から生じるジェネレータ装置の厚さ方向に対する補正を示している。 

5.3.5 

FINCMPは,スムージング,ポリッシュの際の仕上げしろのため,ジェネレータ装置の厚さ方向の

補正を示している。 

5.3.6 

THKCMPは,必要とされる厚さの補正に利用されるが,この規格ではレコードとして定義付けら

れていない。 

上記に列挙した厚さ補正フィールドはGTHK及びOTHKに適用される。 

5.3.7 

EECMPは,だ(楕)円収差補正が必要な場合のGCROS及びGCROSX値に補正すべきディオプト

リ量を示している。 

5.3.8 

ホストは,特定のジェネレータ装置に必要とされるすべての補正値を含んだ基本レコード及び補正

値をゼロの値とした補正レコードを送信することによって,ジェネレータ装置を制御することができる。 

例えば,GCROS及びEECMPの合計値をGCROSとして送り,ゼロの値をEECMPとして送る。 

5.3.9 

補正レコードでのゼロの値は,ホストがジェネレータ装置に設定済みの実行可能な補正を適用して

ほしくないということを示している。 

5.3.10 補正レコードの値がないことは,ジェネレータ装置が設定された補正を適用してはならないことを

示している。 

T 7335:2005  

5.3.11 プリズムと偏心 GPRVM及びGPRVAフィールドは,プリズムの大きさ及び方向を示している。

これらの値はプリズムに関与するRxプリズム,プリズムシニング,偏心のためのプリズムなどを含むす

べての値を示さなくてはならない。SBOCIN及びSBOCUPは,ブロック中心から光学中心までの水平及び

垂直距離を表す。REQタイプがGENの場合,プリズムと偏心とを1パケットで表現するために,RPRVM

及びRPRVAが使用される。それらは,SBOCIN/SBOCUPで表す偏心量を除いて研削されるプリズム量を

表し,偏心量はOTHKが使用される。詳細は,次のとおりとする。 

5.3.11.1 偏心をプリズムの形式で表現するとき,次のフィールドが一緒に利用される。 

GPRVM,GPRVA及びGTHK 

5.3.11.2 偏心を直接表現するとき,次のフィールドが一緒に利用される。 

RPRVM,RPRVA,SBOCIN/SBOCUP及びOTHK 

5.3.11.3 偏心をプリズムの形式で表現する5.3.11.1で解説した方法は,一般的な表現であり,その中で表

現されているレコードは,すべてのジェネレータ装置及びホストに対応する。 

偏心を直接表現する5.3.11.2に示すレコードは5.3.11.1に追加され,この方式に対応しないジェネレータ装

置は偏心フィールドを無視することができる。 

5.3.12 パッドの厚さ PADTHKレコードを含める場合,ジェネレータに研削されるLAPカーブはパッド

の厚さ補正を必要とする。GBASE/GCROS又はGBASEX/GCROSXで表示されているレンズのカーブには

補正してはいけない。ジェネレータカーブに対する補正,パッドの厚さの補正等は,ホストが判断する。 

5.3.13 カーブサイン 凹面のカーブは,負の数として表示し,凸面のカーブは正の数として表示する。こ

れはジェネレータ装置にとって,レンズカーブ及びラップカーブは反対の符号をもつことを示している。 

5.4 

計測レコード  

5.4.1 

計測データ このデータは,転送される計測の点数,半径は等角度で分割されているかどうか,計

測の方向,計測された内容を示すTRCFMTレコードから始まる。 

5.4.2 

半径データ 半径データは“R”レコード,サグデータは“Z”レコードに含まれている。半径デ

ータのための角度データは“A”レコード,サグデータはZAレコードに含まれている。 

ASCIIフォーマットでは,すべてのレコードは1行80文字制限規則に準ずるため,各測定には多数のR,

A,Z,ZAのレコードがあり得る。 

2進データには文字制限がなく,必要に応じてR,A,Z,ZAのレコードは1行となり,半径及びサグ

データは100倍値又は1 000倍値で表示される。 

例 半径データ 

a) ASCIIフォーマット 

      TRCFMT=1;400;E;R;F <CR/LF> 

      R=2479;2583;2605;2527;2394;2253;2137;2044;1975;1935<CR/LF> 

      R=1922;1939;1989;2072;2184;2322;2471;2599;2645;2579<CR/LF> 

      等… 

b) 2進フォーマット 

      TRCFMT=2;400;E;R;F<CR/LF> 

      R=<2進データ><CR/LF> 

T 7335:2005  

5.4.3 

等間隔でない半径データ これらがTRCFMTに設定される場合,角度データが必要となり,対応

する半径データの直後に表示される。角度データは一つ以上の“A”レコードに含まれ,半径データと同

じフォーマットで対応し表示される。角度データは100倍値で表示され,その範囲は0〜35999とする。 

備考 等間隔でない半径データの場合,角度データはサグデータの後でもよい。 

5.4.4 

ZFMT ZFMTレコードは,TRCFMTレコードと全く同じ定義がある。角度データが半径データに

同じ規則が適用されるように,サグデータにも角度データが適用される。 

5.4.5 “R”レコード これらはTRCFMTレコードの直後に表示され,すべての“R”レコードが一緒に

表示される。左右が指定された場合,左右のTRCFMTレコードをもっている。 

5.4.6 “Z”レコード これらはZFMTレコードの直後に表示され,すべての“Z”レコードが一緒に表示

される。左右が指定された場合,左右のTRCFMTレコードをもっている。 

5.4.7 “A”又はZAレコード これらが存在する場合,対応する“R”又は“Z”レコードの直後に表示

される。ZFMTレコード及び“Z”レコードは,対応するTRCFMT及び“R”レコードの直後に表示され

る。 

例 両眼の計測データ 

TRCFMT=1;400;U;R;F<CR/LF> 

R=2479;2583;2605;2527;2394;2253;2137;2044;1975;1935<CR/LF> 

R=1922;1939;1989;2072;2184;2322;2471;2599;2645;2579<CR/LF> 

… 

R=1909;1914;1941;1983;2033;2089;2140;2200;2277;2371<CR/LF> 

A=0;90;180;270;360;450;540;630;720;810<CR/LF> 

A=900;990;1080;1170;1260;1350;1440;1530;1620;1710<CR/LF> 

… 

A=35100;35190;35280;35370;35460;35550;35640;35730;35820;35910<CR/LF> 

ZFMT=1;100;U;R;F<CR/LF> 

Z=322;331;342;328;314;308;300;295;288;280<CR/LF> 

… 

Z=316;318;324;328;333;343;349;352;357;362<CR/LF> 

ZA=0;360;720;1080;1440;1800;2160;2520;2880;3240<CR/LF> 

… 

ZA=32400;32760;33120;33480;33840;34200;34560;34920;35280;35640<CR/LF> 

TRCFMT=1;400;U;L;F<CR/LF> 

R=2517;2450;2379;2318;2247;2168;2086;2014;1958;1923<CR/LF> 

R=1909;1914;1941;1983;2033;2089;2140;2200;2277;2371<CR/LF> 

… 

R=1922;1939;1989;2072;2184;2322;2471;2599;2645;2579<CR/LF> 

A=0;90;180;270;360;450;540;630;720;810<CR/LF> 

A=900;990;1080;1170;1260;1350;1440;1530;1620;1710<CR/LF> 

… 

A=35100;35190;35280;35370;35460;35550;35640;35730;35820;35910<CR/LF> 

ZFMT=1;100;U;R;F<CR/LF> 

10 

T 7335:2005  

Z=322;331;342;328;314;308;300;295;288;280<CR/LF> 

… 

Z=316;318;324;328;333;343;349;352;357;362<CR/LF> 

ZA=0;360;720;1080;1440;1800;2160;2520;2880;3240<CR/LF> 

… 

ZA=32400;32760;33120;33480;33840;34200;34560;34920;35280;35640<CR/LF> 

5.4.8 

フレーム測定 ホストへの計測データは,幾何学を中心としたデータとし,ホストが必要に応じて

偏心する。 

5.4.9 

計測データ これらは第1半径がゼロ度(極座標)になるように表示され,反時計方向に進む。角

度データが提供された場合,半径の始まりはゼロ又はゼロを超える最初の経線とする。 

5.4.10 眼の方向  

5.4.10.1 右又は左の眼の方向は,視力検定者が眼鏡を装着する人を見るように,左右の眼を定め,右眼の

データは鼻側から始まり,左眼のデータは耳側から始まる。 

5.4.10.2 眼の方向は初期設定で決定される。そうでない場合,トレーサからのリクエストパケットに規定

する。 

5.4.10.3 右眼(R)が指定された場合,装置は右眼の計測データを送信又は受信する。 

5.4.10.4 左眼(L)が指定された場合,装置は左眼の計測データを送信又は受信する。 

5.4.10.5 両眼(B)が指定された場合,装置は両眼の計測データを送信又は受信する。 

5.4.11 データ転送時の眼の方向  

5.4.11.1 TRCFMT又はZFMTレコードにR(右眼)が指定されている場合,右眼の測定とする。 

5.4.11.2 TRCFMT又はZFMTレコードにL(左眼)が指定されている場合,左眼の測定とする。 

5.4.11.3 Bはリクエスト又は初期設定パケットだけで使用され,データパケットには使用されない。両眼

のデータの含まれるデータパケットには,二つのTRCFMTレコードがあり,各々適切なレコードラベルが

使用される。 

5.4.12 ホスト及び装置 片眼だけのデータの送受信も可能とする。 

5.4.13 計測データの例 サグデータの表示において,データセットの中の最小数は正の数であり,フレー

ム又はレンズの前面から最も離れている地点を示す。この地点から他の地点への距離は,100分の1ミリ

メートル又は1 000分の1ミリメートル単位の正の値とする。 

備考1. 半径データのフォーマットとサグデータのフォーマットとを一致させることが望ましい。 

2. 次の計測データは,40ポイントの半径データの例であり,特定のフォーマットではなく,こ

の後の例で利用する半径の値である。 

    24.79,25.83,26.05,25.27,23.94,22.53,21.37,20.44,19.75,19.35, 

    19.22,19.39,19.89,20.72,21.84,23.22,24.71,25.99,26.45,25.79, 

    25.17,24.50,23.79,23.18,22.47,21.68,20.86,20.14,19.58,19.23, 

    19.09,19.14,19.41,19.83,20.33,20.89,21.40,22.00,22.77,23.71 

5.4.14 ASCII絶対値フォーマット このフォーマットでは,各半径は小数点を含むが,100分の1ミリメ

ートル単位の値を4けたの数字で表示している。各値はフィールド分離子(セミコロン)によって分けら

れ,データは1行80文字制限規則に準じ,“R”レコードは半径データセットに必要とされる。 

11 

T 7335:2005  

例 フォーマット#1 

ASCII絶対値で表示されている計測データ196バイトの半径データである(セミコロンを含む)。 

TRCFMT=1;400;E;R;F<CR/LF> 

R=2479;2583;2605;2527;2394;2253;2137;2044;1975;1935<CR/LF> 

R=1922;1939;1989;2072;2184;2322;2471;2599;2645;2579<CR/LF> 

R=2517;2450;2379;2318;2247;2168;2086;2014;1958;1923<CR/LF> 

R=1909;1914;1941;1983;2033;2089;2140;2200;2277;2371<CR/LF> 

5.4.15 2進絶対値フォーマット このフォーマットでは,各半径は100分の1ミリメートル単位の値を16

ビットの整数値で表示され,1データレコードに含まれる。また,このフォーマットでは初期設定時に各

半径を1 000分の1ミリメートル単位で指定することも出来る。このとき,各半径の値は16ビットの符号

なしタイプの整数値で表示する。 

備考 次の例は,各2進数8ビットは次のバイトから分離する一つ以上の小数点から表示されている。

セミコロンは各半径を分離するために利用されているが,セミコロン及び空白は実際の2進レ

コードの一部ではない。 

例 フォーマット#2-1 

次の例は,半径の単位を100分の1ミリメートルとしたものであり,エスケープ文字を含む86バ

イトの2進絶対値フォーマットである。最初の例がエスケープ処理前であり,2番目の例がエスケー

プ処理後で,エスケープは太文字で示す。 

TRCFMT = 2;40;E;R;F 

R=175  9; 23  10; 45  10;223  9; 90  9;205  8; 89  8; 

  252  7;183   7;143   7;130  7;147  7;197  7; 24  8; 

  136  8; 18   9;167   9; 39 10; 85 10; 19 10;213  9; 

  146  9; 75   9; 14   9;199  8;120  8; 38  8;222  7; 

  166  7;131   7;117   7;122  7;149  7;191  7;241  7; 

   41  8; 92   8;152   8;229  8; 67   9<CR/LF> 

TRCFMT = 2;40;E;R;F 

R=175  9; 23  27 138; 45  27 138;223  9; 90  9;205  8; 89  8; 

  252  7;183   7;143   7;130  7;147  7;197  7; 24  8; 

  136  8; 18   9;167   9; 39 27 138; 85 27 138; 27 147 27 138;213  9; 

  146  9; 75   9; 14   9;199  8;120  8; 38  8;222  7; 

  166  7;131   7;117   7;122  7;149  7;191  7;241  7; 

    41   8; 92   8;152   8;229  8; 67   9<CR/LF> 

background image

12 

T 7335:2005  

例 フォーマット#2-2 

次の例は,半径の単位を1 000分の1ミリメートルとしたものであり,エスケープ文字を含む2進絶

対値フォーマットである。最初の例がエスケープ処理前であり,2番目の例がエスケープ処理後で,

エスケープは太文字で示す。 

TRCFMT=2;40;E;R;F 

R=214  96;230  100;194  101;182   98;132   93;  2   88;122   83; 

  216  79; 38   77;150   75; 20   75;190   75;178   77;240   80; 

  80   85;180   90;134   96;134  101; 82  103;190  100; 82   98; 

  180  95;238   92;140   90;198   87;176   84;124   81;172   78; 

  124  76; 30   75;146   74;196   74;210   75;118   77;106   79; 

  154  81;152   83;240   85;242   88;158   92<CR/LF> 

TRCFMT=2;40;E;R;F 

R=214  96;230  100;194  101;182   98;132   93;  2   88;122   83; 

  216  79; 38   77;150   75; 20   75;190   75;178   77;240   80; 

   80  85;180   90;134   96;134  101; 82  103;190  100; 82   98; 

  180  95;238   92;140   90;198   87;176   84;124   81;172   78; 

  124  76; 27 158 75;146  74;196  74;210   75;118   77;106   79; 

  154  81;152   83;240   85; 242  88;158   92<CR/LF> 

5.4.16 2進差分フォーマット このフォーマットでは,フォーマット#2-1のように最初の半径は2バイト

整数で表示されているが,その後の半径は,現在の半径とその直前の半径との差をバイトで表示している。

その差分の値は通常−127から+127までであるが,差分が1バイトによって表示できない場合,次の半径

は絶対値の形式であるということを表示するために特別の値(16進数0×80)が利用される。そして絶対

値の直後に続く半径は,差分形式で表示される。 

例 フォーマット#3 

次の例は,エスケープ文字を含む54バイトの2進差分フォーマットである。最初の例がエスケープ

処理前であり,2番目の例がエスケープ処理後で,エスケープは太文字で示す。 

TRCFMT = 3;40;E;R;F 

R=175  9; 104;  22; -78;-128  90  9;-128 205  8;-116  -93; 

  -69; -40; -13;  17;  50;  83; 112;-128 18 9;-128 167 9; 

  -128  39  10;  46; -66; -62; -67; -71; -61; -71; -79; -82; 

  -72; -56; -35; -14;  5; 27; 42; 50; 56; 51; 60; 77; 94<CR/LF> 

TRCFMT = 3;40;E;R;F 

R=175  9; 104;  22; -78;-128  90  9;-128 205  8;-116  -93; 

  -69; -40; -13;  27 145;  50;  83; 112;-128 18 9;-128 167 9; 

  -128  39  27 138;  46; -66; -62; -67; -71; -61; -71; -79; -82; 

   -72; -56; -35; -14;  5; 27 155; 42; 50; 56; 51; 60; 77; 94<CR/LF> 

background image

13 

T 7335:2005  

5.4.17 パックト2進フォーマット このフォーマットでは三つのデータの種類が定義され,使用例を附属

書Bに示す。 

− 絶対値は,−327.67 mm〜+327.67 mmの範囲を示す値として16ビット(ワード)が利用される。 

− 差分では,−1.26 mm〜+1.27 mmの範囲を示す値として8ビット(バイト)が利用される。 

− 増分では,−0.07 mm〜+0.07 mmの範囲を示す値として4ビット(ニブル)が利用される。 

計測における第1半径は常に絶対値データタイプを利用して表示されるが,第1に続く半径は三つの形

式で表示することができ,各種類のために特別の値があり,データの中に続く半径が異なるデータタイプ

であることを示すために挿入される。これらは表4を参照。 

表 4 パックト・2進におけるデータタイプフラグ 

データタイプ 

16進 

10進 

動作 

ラベル 

ワード 

0x8000 

-32768 

絶対値から差分への変更 

AD 

バイト 

0x80 

-128 

差分から増分への変更 

DI 

バイト 

0x81 

-127 

差分から絶対値への変更 

DA 

ニブル 

0x8 

-8 

増分から差分への変更 

ID 

半径の計測は常に絶対値で表示することができ,その場合,半径の値は単に0.01 mm単位の値で符号化

され,16ビットを必要とする。これが全レコードに使用されたとき,2進絶対値フォーマットとは見分け

がつけられない。 

備考 次の例は半径の続きを利用している。 

   25.40,25.62,25.97,27.70,28.00,28.30,28.35,28.40,28.43 

例 半径は絶対値で示されている。 

 半径      算出方法          値   タイプ  サイズ 

最初の半径    (25.40 * 100)         2540  絶対値  ワード 

2番目の半径  (25.62 * 100)         2562  絶対値  ワード 

3番目の半径  (25.97 * 100)         2597  絶対値  ワード 

4番目の半径  (27.70 * 100)         2770  絶対値  ワード 

5番目の半径  (28.00 * 100)         2800  絶対値  ワード 

6番目の半径  (28.30 * 100)         2830  絶対値  ワード 

7番目の半径  (28.35 * 100)         2835  絶対値  ワード 

8番目の半径  (28.40 * 100)         2840  絶対値  ワード 

9番目の半径  (28.43 * 100)         2843  絶対値  ワード 

二つ続く半径の値の差が差分データタイプによって表示できる範囲にある場合,2番目の大きさはバイ

ト(8ビット)で表示することができる。ADフラグがデータに挿入され,続く半径は別の種類のフラグが

表れるまで差分形式で表示されていることを示している。 

例 半径は差分形式で示されている 

 半径      算出方法           値    タイプ  サイズ 

最初の半径     (25.40 * 100)          2540    絶対値    ワード 

AD Flag                              -32768    絶対値    ワード 

2番目の半径   (25.62-25.40 * 100)        22    差分      バイト 

14 

T 7335:2005  

3番目の半径   (25.97-25.62 * 100)        35    差分      バイト 

DA Flag                                -127    差分      バイト 

4番目の半径   (27.70 * 100)           2770    絶対値    ワード 

AD Flag                              -32768    絶対値    ワード 

5番目の半径   (28.00−27.70 * 100)       30    差分      バイト 

6番目の半径   (28.30−28.00 * 100)       30    差分      バイト 

7番目の半径   (28.35−28.30 * 100)        5    差分      バイト 

8番目の半径   (28.40−28.35 * 100)        5    差分      バイト 

9番目の半径   (28.43−28.40 * 100)        3    差分      バイト 

上の例では,第4の半径を表示するために絶対値に戻る必要がある。第4と第3との差(27.70−25.97

又は1.73)は差分形式を利用して表示できる範囲を超えている。 

二つ続く半径の差分値の差が増分データタイプによって表示できる範囲にある場合,第2の半径はニブ

ル(4ビット)で表示することができる。DIフラグがデータに挿入され,続く半径は別のIDフラグがデ

ータに表れるまで増分形式で表示されていることを示している。各増分値は現在の差分値に加算され,そ

の前の半径の絶対値に加算される。 

例 半径は増分形式で示されている 

 半径         算出方法                       値 

タイプ 

サイズ 

最初の半径 

(25.40 * 100) 

2540 

絶対値 ワード 

AD Flag 

-32768 

絶対値 ワード 

2番目の半径 

(25.62−25.40 * 100) 

22 

差分 

バイト 

3番目の半径 

(25.97−25.62 * 100) 

35 

差分 

バイト 

DA Flag 

-127 

差分 

バイト 

4番目の半径 

(27.70 * 100) 

2770 

絶対値 ワード 

AD Flag 

-32768 

絶対値 ワード 

5番目の半径 

(28.00−27.70 * 100) 

30 

差分 

バイト 

6番目の半径 

(28.30−28.00 * 100) 

30 

差分 

バイト 

7番目の半径 

(28.35−28.30 * 100) 

差分 

バイト 

DI Flag 

-128 

差分 

バイト 

8番目の半径 

((28.35−28.30)−(28.40−28.35)* 100) 

増分 

ニブル 

9番目の半径 

((28.40−28.35)−(28.43−28.40)* 100) 

−2 

増分 

ニブル 

フレームの形状は,通常,なだらかな弧で構成され,計測値の大半は大きい半径から表示されているた

め,初めの半径を除き全パケットには増分形式を利用して大半は表示することができる。 

例 フォーマット#4 

次の例は,エスケープ文字を含む56バイトのパックト2進フォーマットである。最初の例がエ

スケープ処理前で,絶対値半径フラグが太文字で示され,2番目の例がエスケープ処理後で,エ

スケープは太文字で示されている。 

TRCFMT = 4;40;E;R;F 

R=af 09 00 80 68 16 b2 81 5a 09 cd 

15 

T 7335:2005  

  08 00 80 8c a3 bb d8 f3 11 32 53 

  70 81 12 09 a7 09 27 0a 00 80 2e 

  be 80 4b c8 c3 b9 b1 80 d8 b8 c8 

  dd f2 05 1b 2a 32 80 6b 83 c4 d5 e0<CR/LF> 

TRCFMT = 4;40;E;R;F 

R=af 09 00 80 68 16 b2 81 5a 09 cd 

  08 00 80 8c a3 bb d8 f3 1b 91 32 53 

  70 81 12 09 a7 09 27 1b 8a 00 80 2e 

  be 80 4b c8 c3 b9 b1 80 d8 b8 c8 

  dd f2 05 1b 9b 2a 32 80 6b 83 c4 d5 e0<CR/LF> 

詳細は附属書Bのコード例を参照。 

5.4.18 2進フォーマットのための特別な注意点  

5.4.18.1 16ビットの2進データの第1バイトは下位バイト,第2バイトは上位バイトであるが,コンピュ

ータシステムの中には内部でスワップバイトしなくてはならないものもある。この例は,附属書Bのソー

スコードの例に示す。 

5.4.18.2 データのサイン符号に注意しなくてはならない。 

5.4.18.3 5.1.8.3に規定する予約文字の取扱いに注意する。 

5.4.18.4 2進データはラベル分離子の直後に開始し,レコード分離子の直前に終了するため,ASCIIデー

タとは異なり,不必要な空白は挿入しない。 

5.5 

パケット  

5.5.1 

パケットにおけるレコード順 すべてのパケットにおいて,REQ又はANSレコードが最初に表示

される。ジョブレコードは,初期設定されていないパケットのREQ又はANSレコードの直後に続く。計

測レコードは,TRCFMT,R,[A],[ZFMT],[Z],[ZA]の順とする。ここで,[ ]は任意レコードを

表す。例は5.4.7を参照。他のレコードの順序に関しては重要でない。 

5.5.2 

CRCレコード  

5.5.2.1 

どのパケットも最後のレコードとして,ホスト及び装置はパケットの内容を確認するためのレコ

ードを含む。CRCレコードを含むパケットに応答するホスト及び装置は,CRCレコードを含まなくてはな

らない。しかし,CRCを計算できない装置又はホストはCRCレコードを無視することができ,CRCレコ

ードの送信を必要としない。そのため,CRCレコード値を含まないパケットを受信する装置又はホストは,

エラーメッセージを返すことなくパケットを受信しなくてはならない。 

5.5.2.2 

CRCレコードは,レコードラベル(CRC),ラベル分離子,整数データフィールド及びレコード

分離子から構成される。 

5.5.2.3 

CRCフィールドの値は,附属書Cによって計算する。 

5.5.2.4 

CRCレコードがパケットに含まれている場合,〈RS〉文字の直後に表示される。〈RS〉文字は事

前レコードのためにレコード分離子の直後に表示される。つまり,パケットの最後のレコードとなり,CRC

レコードラベルの直後になる。CRCレコードが含まれていない場合,〈RS〉文字は〈GS〉文字の直前に表

示される。 

16 

T 7335:2005  

5.5.2.5 

CRC値は開始文字の後の(〈FS〉を含まない)メッセージ中のすべての文字から計算され,CRC

レコードのレコードラベル直前の〈RS〉文字までで計算される。 

例 パケットの一部はCRCの計算に利用されている。下線のデータはCRCの計算に利用されている。 

<FS>REQ = INI<CR/LF> 

DEV = GEN<CR/LF> 

VEN = IGC<CR/LF> 

MODEL = BLASTER1<CR/LF> 

MID = “IGC12345<CR/LF> 

<RS> 

CRC = 32199<CR/LF> 

<GS> 

5.5.3 

確認及びタイムアウト  

5.5.3.1 

確認メッセージ これはASCII ACK(10進数06)又はASCII NAK(10進数21)の1文字から

構成されている。受信側がパケットを正常に受信したと認識した場合は,送信側にACK(肯定応答)を転

送し,正常に受信していないと認識した場合は,NAK(否定応答)を転送する。送信側がNAKを受信し

た場合,3回まで送信を繰り返し,4回目のNAKを受信したときに送信側はエラーと判断しエラー処理を

行う(合計4回NAKの転送)。 

例 失敗したセション。メッセージを受信側が認識できない場合又は有効でないCRCをパケット内で

発見した場合,送信側は3回までやり直し,NAK(否定応答)を送る。 

装置                               ホスト 

<FS>REQ=12<CR/LF> 

JOB=”1234”<CR/LF> 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

                                   <NAK> 

<FS>REQ=12<CR/LF> 

JOB=”1234”<CR/LF> 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

                                   <NAK> 

<FS>REQ=12<CR/LF> 

JOB=”1234”<CR/LF> 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

                                   <NAK> 

17 

T 7335:2005  

<FS>REQ=12<CR/LF> 

JOB=”1234”<CR/LF> 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

                                   <NAK> 

備考 4回目の否定応答の後,装置は,エラーメッセージを表示する。ホストの応答がACK又はNAK

以外である場合,装置の“ホストからACK/NAK以外を受信しました”などの表示メッセージは,

パラメタの設定値の確認等に役立つこともある。 

5.5.3.2 

確認タイムアウト パケットの送信側は,確認メッセージを6秒間待つ。パケットの転送後,確

認を受信せずに6秒間が経過した場合,セションは中断され,送信側は適切なエラーメッセージを機器オ

ペレータに送り,この転送はやり直さない。 

5.5.3.3 

パケットタイムアウト 送信側がパケットを転送,ACK(肯定応答)を受信後に,受信側からの

応答パケットがある場合,12秒間待つ。受信側のパケットがその間に到着しない場合,セションは中断さ

れ,送信側は適切なエラーメッセージを機器オペレータに送り,この転送はやり直さない。 

5.5.3.4 

文字間タイムアウト パケットの受信中,最後の文字の受信から次の文字を受信するまで,5秒

超えて待つ場合,セションは中断され,送信側は適切なエラーメッセージを機器オペレータに送り,この

転送はやり直さない。 

5.5.3.5 

タイムアウト値 これらは初期設定セション中に設定できる。タイムアウトは秒で表示され,タ

イムアウトの範囲は2〜255秒とする。 

例 装置から計測データのアップロード時のタイムアウト 

注 文字間タイムアウト値は5秒だが,次の例には表示されていない。 

装置                                        ホスト 

<FS>REQ=TRC<CR/LF> 

JOB=”1234”<CR/LF> 

[Optional Interface Records] 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

最大6秒間待つ 

<ACK> 

最大12秒間待つ 

<FS>ANS=TRC<CR/LF> 

JOB=”1234”<CR/LF> 

STATUS=0<CR/LF> 

18 

T 7335:2005  

[Any Optional Interface Records that 

must be echoed] 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

最大6秒間待つ 

<ACK> 

最大12秒間待つ 

<FS>ANS=TRC<CR/LF> 

JOB=”1234”<CR/LF> 

[All Mandatory Records for TRC Packet] 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

最大6秒間待つ 

<ACK> 

最大12秒間待つ 

<FS>ANS=TRC<CR/LF> 

JOB=”1234”<CR/LF> 

STATUS=0<CR/LF> 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

最大6秒間待つ 

<ACK> 

6. セション  

6.1 

概要  

6.1.1 

セションは,装置とホストとの間のメッセージ交換から構成される。 

6.1.2 

すべてのセションは,装置がホストへリクエストパケットを転送することによって開始される。 

6.1.3 

一つのセションは,別のセションが開始される前に終了し,同時に多重処理はされない。 

6.1.4 

この規格は,三つのセションの範ちゅう(初期設定,アップロード,ダウンロード)を定義する。

これらのセション詳細は6.2〜6.4に規定する。 

6.1.5 

ホストは,セションが開始されていないとき,受信したパケットはリクエストパケットとして受信

する。受信したパケットが,リクエストタイプレコードとして完全でない場合は,状態コード18と共にリ

テラルデータ“ANS=ERR”をレコードに設定し,装置に返答する。 

6.1.6 

ジョブIDレコードは初期設定以外のすべてのパケットにおいて必すとする。 

ホストは受信したものと同じ形式で指定されたジョブIDレコードを返し,装置はリクエストパケットの

ジョブIDレコードと受信したジョブIDレコードとを照合する。 

background image

19 

T 7335:2005  

6.2 

初期設定セション  

6.2.1 概要 初期設定にはオートフォーマット及びプリセットの2種類があり,目的は次のとおりとする。 

a) セションの間,装置とホストとが継続的に情報を交換させること 

b) ホストが装置を確認する方法と装置への応答方法とを規定すること 

c) 装置がホストとのインタフェイス内に任意設定を確認すること 

例 計測フォーマット,タイムアウト値等 

これらは後のセション間に交換されるデータ量を最小化する特徴をももっている。 

オートフォーマット初期設定は,アップロード又はダウンロードセションにおけるデータパケット内の

装置レコードを装置が定義する。 

プリセット初期設定は,この規格でプリセット装置として定義されている装置の一つを識別する。両方

の初期設定はその他の情報交換に必要となる情報を提供する。 

起動されたとき,初期設定が可能なとき,又はホストが状態コード5(初期設定が必要)を含む応答パ

ケットを送信したときに装置は初期設定を行なう。ホストは初期設定ができない装置に状態コード5を送

信してはならない。 

6.2.2 

初期設定セションの構成 初期設定は次のメッセージ交換から構成される: 

a) 装置はリクエストタイプレコード=INIを含むリクエストパケットをホストに転送する。 

b) ホストは確認メッセージを装置に転送する。 

c) ホストは応答パケットを装置に転送する。 

d) 装置は確認メッセージをホストに転送する。 

ホストが状態=15(初期設定は提供されていない)をセットし応答パケット(ステップC)を送信

した場合,セションはこの時点で終了する。 

e) 装置はデータパケットをホストに転送する。 

f) 

ホストは確認メッセージを装置に転送する。 

g) ホストはデータパケットを装置に転送する。 

h) 装置は確認メッセージをホストに転送する。 

表 5 初期設定セション 

装置からの転送 

ホストからの転送 

リクエストパケット,REQ=<INI> 

確認 <ACK> 

応答パケット,ANS=<INI> 

確認 <ACK> 

データパケット,ANS=<INI> 

確認 <ACK> 

データパケット,ANS=<INI> 

確認 <ACK> 

6.2.3 

オートフォーマット及びプリセット初期設定に共通する要素  

6.2.3.1 

ホストからの応答パケット内の状態コードが0の場合,装置はオートフォーマット初期設定又は

プリセット初期設定を実行できるが,状態コードが14の場合は,装置はプリセット初期設定だけを実行で

きる。そのデータパケットに含まれるインタフェイスレコードはどちらの場合にも同じであり,これらの

レコードは,ホストが装置を識別するための役割を果たしている。 

20 

T 7335:2005  

プリセット初期設定の場合,これが装置のデータパケット全体を構成する。 

6.2.3.2 

装置は初期設定の間に追加設定されたパラメタを,リクエスト又はデータパケットに含めること

ができ,ホストはそれらのパラメタを初期設定の間にリセットしなくてはならない。装置が初期設定でセ

ットしたパラメタを変更する必要がある場合,新しい初期設定リクエストを送信しなくてはならない。 

6.2.3.3 

オートフォーマット又はプリセット初期設定を提供するホストは,リクエストIDを短時間に繰

り返して使用されないように割り当てて管理し,再開前に割り当てていたリクエストIDを再開後に別の

機器への割当てを避ける必要がある。 

6.2.3.4 

オートフォーマット及びプリセットの二種類の初期設定は同じリクエストパケットで初期設定

される。 

例1. 初期設定リクエストパケット 

<FS> 

REQ = INI 

<RS> 

<GS> 

例2. ホストが受信可能となる初期設定の種類を示す応答パケット 

<FS> 

ANS = INI 

STATUS = *初期設定用状態コード 

<RS> 

<GS> 

*初期設定用状態コードの値: 0,14,15  

例3. インタフェイスレコードを含む装置の初期設定データパケットの一部 

<FS> 

ANS = INI 

DEV = GEN 

VEN  = << IGC >> 

MODEL = << B16 >> 

MNAME = << Intergalactic Generator Co. Model 16 >> 

MID = << QB485M >> 

OPERID << JACK >> 

<RS> 

<GS> 

6.2.4 

オートフォーマット初期設定  

6.2.4.1 

ホストから状態コードが0の応答パケットを受信した場合,装置はデータパケット内のリクエス

ト定義を含むオートフォーマット初期設定を実施することができる。 

リクエスト定義は,定義を確認する装置タグと呼ばれるテキストフィールドを含むレコードラベルDEF,

各々にレコードラベル“D”及びレコードラベルリストで構成されるレコード数可変なレコードが続く。

1レコードラベルリストはラベル分離子とレコード分離子との間の最大文字数が80文字であり,最小のレ

コードラベルリスト数は1とする。より好ましい表現方法は80文字を超すことなく最大数の各レコードラ

ベルリストフィールドを置くことである。リクエスト定義はDEFレコードともにラベル化されている

21 

T 7335:2005  

ENDDEFで終了する。 

6.2.4.2 

装置は,必すとなるラベルをアスタリスク(*)で印す。ホストは必すとなるラベルで指示され

た値を認識しない場合,(?)マークを付けたデータフィールドをデータパケットのレコードに含める。 

6.2.4.3 

ホストは装置から送信された各リクエスト定義に整数のリクエストIDを割り当て,リクエスト

IDはホストからのデータパケットで装置に返される。装置はこのリクエストIDをセション開始時に利用

することができる。 

例1. 装置(この例はジェネレータ)がオートフォーマット初期設定を実施するデータパケット。 

装置タグは ”MYREQUEST”。 

<FS> 

ANS = INI 

DEV = GEN 

VEN = IGC 

MODEL = B16 

MNAME = << Intergalactic Generator Co. Model 16 >> 

MID = << QB485M >> 

OPERID = << JACK >> 

DEF = << MYREQUEST >> 

D = FRNT;BACK;GBASE;GCROS;GAX;GBASEX;GCROSX;SAGRD 

D = SAGBD;SAGCD;TIND;RNGH:RNGD;GTHK;LMATID;LAPM 

D = DIA;BCTHK;BETHK:CRIB;GPRVA;GPRVM;KPRVA;KPRVM;PIND 

ENDDEF = << MYREQUEST >> 

<RS> 

<GS> 

例2. リクエストIDが割り当てられたホストの初期設定データパケット。 

装置タグ ”MYREQUEST” に対し,ホストが1643のリクエストIDを割り当てた。 

<FS> 

ANS = INI 

STATUS = 0 

DEF = << MYREQUEST >>;1643 

REM = << I have assigned ʻ1643ʼ to ʻMYREQUESTʼ >> 

<RS> 

<GS> 

例3. 上で識別されたデータセットに対する装置のリクエストパケット 

<FS> 

REQ = 1643 

JOB “1234” 

<RS> 

<GS> 

例4. 上のリクエストに対してホストが応答したデータパケット 

<FS> 

22 

T 7335:2005  

ANS = 1643 

JOB = “1234” 

STATUS = 0 

DO = B 

FRNT = 6.21 ; 6,21 

BACK = -5.00 ; -5.00 

GBASE = 6.50 ; 6.75 

GCROS = 6.75 ; 7.00 

GAX = 135 ; 45 

GBASEX = 6.48 ; 6.76 

GCROSX = 6.76 ; 7.01 

SAGRD = 3.81 ; 3.81 

SAGBD = 4.50 ; 4.50 

SAGCD = 4.10 ; 4.10 

TIND = 1.53 ; 1.53 

DIA = 75.0 ; 75.0 

BCTHK = 15.0 ; 15.0 

BETHK = 17.0 ; 17.0 

CRIB = 70.0 ; 70.0 

GPRVA = 140.0 ; 46.5 

GPRVM = 2.4 ; 2.17 

KPRVA = ? ; ? 

KPRVM = ? ; ? 

PIND = 1.498 ; 1.498 

LMATID = 1 ; 1 

LAPM = -1 ; -1 

RNGH = 11.80 ; 11.80 

RNGD = 60.0 ; 60.0 

GTHK= 2.54 ; 2.52 

<RS> 

<GS> 

例5. エッジャーに関するオートフォーマット初期設定 

装置                            ホスト 

<FS>REQ=INI<CR/LF> 

<RS> 

<GS> 

<ACK> 

<FS>ANS=INI<CR/LF> 

STATUS=0; 

23 

T 7335:2005  

<RS> 

<GS> 

<ACK> 

<FS>ANS=INI<CR/LF> 

DEV = EDG<CR/LF> 

VEN = GC<CR/LF> 

MODEL = ELITE<CR/LF> 

TRCFMT = 4;400;E;R<CR/LF> 

TRCFMT = 1;400;E;R<CR/LF> 

INFO=1; 

DEF = << FIRSTREQ >><CR/LF> 

D = TRCFMT;*R;HBOX;VBOX;*CIRC;FCRV<CR/LF> 

ENDDEF = << FIRSTREQ >><CR/LF> 

<RS> 

<GS> 

<ACK> 

<FS>ANS=INI<CR/LF> 

STATUS=0<CR/LF> 

DEF = << FIRSTRQEQ >>;*number<CR/LF> 

TRCFMT = 4;400;E;R<CR/LF> 

INFO=0 

<RS> 

<GS> 

<ACK> 

*number = 装置によって次のリクエストで使用される番号 

6.2.5 

プリセット初期設定  

6.2.5.1 

ホストが装置に状態コード14を返答した場合又は状態コード0で装置がオートフォーマットを

提供していない場合,装置はプリセット初期設定を実施することができる。 

6.2.5.2 

装置のデータパケットは,装置タイプ,眼鏡レンズ製造機器業者及びモデルIDを含む。特にオ

ートフォーマット初期設定を提供していない装置の場合,装置の製造業者が種々の装置に要求されている

レコードを公表することが予測されているため,ホストは要求に応えるためにこの情報を利用することが

できる。ホストが事前に設定されている眼鏡レンズ製造機器業者及びモデルIDを認識しない場合,附属

書Aに示す装置ごとに規定されているレコードをすべて送信する。 

オペレータID,機器IDやシリアル番号などのインタフェイスレコードも利用可能な場合は含めなくて

はならない。 

装置タイプが“DNL”で,眼鏡レンズ製造機器業者及びモデルIDが認識されていない場合,ホストは

指定されたジョブIDに関する装置レコードすべてを送信する。 

24 

T 7335:2005  

6.2.5.3 

装置からのデータパケットにはリクエスト定義レコード(DEF)を含めてはならない。このレコ

ードがないことがプリセット初期設定を表す。 

6.2.5.4 

ホストからのデータパケットは,この後の装置からのリクエストのためにリクエストIDを含む。

しかし,次の例で示されているように,リクエスト定義がないため,装置タグはないが,フィールド分離

子はある。 

例 ホストがプリセット初期設定だけを提供するセション 

装置                           ホスト 

<FS>REQ=INI<CR/LF> 

<RS> 

<GS> 

<ACK> 

<FS>ANS=INI<CR/LF> 

STATUS=14;<<プリセット初期設定だけ>><CR/LF> 

<RS> 

<GS> 

<ACK> 

<FS>ANS=INI<CR/LF> 

DEV = TRC 

VEN = GC 

MODEL = FTX 

MNAME = << Company XYZʼs Tracer >> 

MID = << 24076 >> 

OPERID = << JILL >> 

TRCFMT = 1;400;E;R 

TRCFMT = 4;400;E;R 

[any other Optional Interface RECORDS]<RS> 

<GS> 

                                    <ACK> 

<FS>ANS=INI<CR/LF> 

STATUS = 0<CR/LF> 

DEF = ;1234 

TRCFMT = 4;400;E;R 

<RS> 

<GS> 

<ACK> 

6.2.6 

初期設定なし  

6.2.6.1 

両方のタイプの初期設定をホスト又は装置が提供しない場合,ホストから装置へ転送されるパラ

メタは,各セションの間,ホストから装置へ転送するデータパケットに含めなくてはならない。 

これは効率性があまり良くないため,お勧めしないが,ホスト及び装置のパラメタは,手動で同期させ

ておく。 

25 

T 7335:2005  

6.2.6.2 

装置のリクエストパケットは,ホストが装置に機器ID,オペレータID等の情報のレコードを返

すために,装置タイプ,眼鏡レンズ製造機器業者及びモデルレコードを含まなくてはならない。 

ホストがこのタイプのリクエストを受信し,眼鏡レンズ製造機器業者,モデルレコードを認識しないと

き,装置タイプのために定義されているレコードすべてを送信する。同じく,DNL装置タイプが規定され

ているとき,すべてのレコードをダウンロードする。 

例 初期設定が実施されていない装置のリクエストパケット 

<FS> 

REQ = GEN 

JOB = “1234” 

VEN = IGC 

MODEL = B16 

MNAME = << Intergalactic Generator Co. Model 16 >> 

MID = << QB485M >> 

OPERID = << JACK >> 

<RS> 

<GS> 

6.2.7 

初期設定のためのホストの最小限の処理 ホストは初期設定を提供しない場合でも,最小限,状態

コード15を含む応答パケットを返す。 

例 初期設定を提供しないホストとのセション 

装置                               ホスト 

<FS>REQ=INI<CR/LF> 

<RS> 

<GS> 

<ACK> 

<FS>ANS=INI<CR/LF> 

STATUS=15;<< 初期設定なし >><CR/LF> 

<RS> 

<GS> 

<ACK> 

6.2.8 

計測データを利用する装置のための特別な初期設定条件 ホストと装置との間の計測フォーマッ

トを取り決める必要があるが,取決めがない場合,ASCII絶対値フォーマットが利用される。装置は初期

設定データパケット又は初期設定されないリクエストパケットにおいて,一つ以上のTRCFMTレコードを

送信することによって,一つ以上の望ましいフォーマットを確認できる。各TRCFMTレコードは装置が優

先的に利用したいと思う順に計測の種類を規定する。ホストはどのTRCFMTレコードを提供し,実際に利

用するかという回答を返す(詳細は附属書AのA.4の状態コードの解説を参照)。 

サグデータフォーマットを決めるためにも同じ手法を利用する。ホストがサグデータを利用しないこと

もできる。その場合,ホストはサグデータを受信できないことを ”ZFMT=0”として返信する。この規格

に準じるASCII絶対値計測フォーマットはすべてのホスト及び装置で提供される。 

26 

T 7335:2005  

例1. 計測フォーマットを取り決めるための初期設定セション 

装置                               ホスト 

<FS>REQ=INI<CR/LF> 

<RS> 

<GS> 

                                    <ACK> 

<FS>ANS=INI<CR/LF> 

STATUS=14;<<プリセット初期設定だけ>><CR/LF> 

<RS> 

<GS> 

<ACK> 

<FS>ANS = INI<CR/LF> 

DEV = TRC<CR/LF> 

VEN = GC<CR/LF> 

MODEL = FTX<CR/LF> 

TRCFMT = 4;512;E;R<CR/LF> 

TRCFMT = 4;400;E;R<CR/LF> 

TRCFMT = 1;512;E;R<CR/LF> 

TRCFMT = 1;400;E;R<CR/LF> 

<RS> 

<GS> 

<ACK> 

<FS>ANS=INI<CR/LF> 

STATUS=0<CR/LF> 

TRCFMT=4;400;E;R<CR/LF> 

<RS> 

<GS> 

<ACK> 

例2. 装置が要求した計測フォーマットをホストが提供しない場合の初期設定セション 

装置                               ホスト 

<FS>REQ=INI<CR/LF> 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

<ACK> 

<FS>ANS=INI<CR/LF> 

STATUS=14;<<プリセット初期設定だけ>><CR/LF> 

<RS> 

background image

27 

T 7335:2005  

<GS> 

<ACK> 

<FS>ANS=INI<CR/LF> 

DEV=TRC 

VEN=GC 

MODEL = FTX 

TRCFMT = 1;400;E;R 

TRCFMT = 4;400;E;R 

TRCFMT = 1;512;E;R 

TRCFMT = 4;512;E;R 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

<ACK> 

<FS>ANS=INI<CR/LF> 

STATUS=529; << 400 ? 512 ? >><CR/LF> 

<RS> 

<GS> 

<ACK> 

6.3 

アップロードセション  

6.3.1 

アップロードセションは,次のメッセージ交換から構成される。 

a) 装置がホストにリクエストパケットを転送する 

b) ホストは装置に確認メッセージを転送する 

c) ホストは装置に応答パケットを転送する 

d) 装置はホストに確認メッセージを転送する 

e) 装置はホストにデータパケットを転送する 

f) 

ホストは装置に確認メッセージを転送する 

g) ホストは装置に応答パケットを転送する 

h) 装置はホストに確認メッセージを転送する 

表 6 アップロードセション 

装置からの転送 

ホストからの転送 

リクエストパケット,REQ=<Request> 

確認 <ACK> 

応答パケット,ANS=<Request> 

確認 <ACK> 

データパケット,ANS=<Request> 

確認 <ACK> 

応答パケット,ANS=<Request> 

確認 <ACK> 

28 

T 7335:2005  

6.3.2 

確認メッセージが否定応答(NAK)の場合,送信側は3回まで転送をやり直す。4回目の否定応答

(NAK)を受信した場合,セションは中止する。 

6.3.3 

アップロードセションはホストの応答パケットのフィールド値がゼロではない状態レコードを含

む場合も中止する。その場合,セションは装置の確認メッセージの後に終了する。 

6.3.4 

各アップロードセションの内容はリクエストタイプレコード(REQ)の内容によって判断される。

このとき,アップロードセションを示すプリセットリクエストタイプはTRC,INF,MNT,及び一般的な

UPLとする。 

例 アップロードセションの概要 

装置                                ホスト 

<FS>REQ=[*Device type]<CR/LF> 

JOB=”1234”<CR/LF> 

[Optional interface RECORDS] 

<RS> 

<GS> 

<ACK> 

<FS>ANS=[*Device type]<CR/LF> 

JOB=”1234”<CR/LF> 

STATUS=0<CR/LF> 

[any RECORDS that must be echoed] 

<RS> 

<GS> 

<ACK> 

<FS>ANS=[*Device type]<CR/LF> 

JOB=”1234”<CR/LF> 

[All Mandatory Records for *Device type Packet] 

<RS> 

<GS> 

<ACK> 

<FS>ANS=[*Device type]<CR/LF> 

JOB=”1234”<CR/LF> 

STATUS=0<CR/LF> 

<RS> 

<GS> 

<ACK> 

*Device type= TRC UPL INF MNT 及び初期設定時にホストが付けたリクエストID 

6.3.5 

一般的なアップロードセションであるリクエストタイプUPLは,装置がホストに定義されている

レコードをアップロードすることを規定している。この規格は,そのようなデータを受信したときにホス

トがとらなくてはならない処理を規定していない。 

備考 装置にダウンロードをできるホストがUPLリクエストでアップロードされたレコードをどう

29 

T 7335:2005  

するかは通常定義されていない。 

6.3.6 

INFは,リクエストパケット自体に伝達されるデータのすべてが含まれるため,特別な種類のアッ

プロードリクエストとなる。INFリクエストタイプは,リクエストタイプ,ジョブ,状態,CRC(任意)

及びモデルIDレコードだけを含む。ホストは,INFパケットに確認メッセージで回答する。 

例 INFアップロードセション,最初に装置はリクエストをする(この例ではGENリクエスト)。 

装置                                ホスト 

<FS> 

REQ=GEN<CR/LF> 

JOB=”1234”<CR/LF> 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

<ACK> 

<FS> 

ANS=GEN<CR/LF> 

JOB=”1234”<CR/LF> 

[Generator records…] 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

<ACK> 

そしてジェネレータが処理を終了したとき,その処理を通常に完了させたという表示を次のとおり送信

する。ホストは確認メッセージで回答する。 

<FS> 

REQ=INF<CR/LF> 

JOB=”1234”<CR/LF> 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

<ACK> 

6.3.7 

MNTは装置が機器の状態と構成情報とをホストに転送するリクエストとする。これは特別な種類

のアップロードリクエストである。この規格におけるMNTパケットの内容は,これを実施する装置の製

造業者に完全にゆだねられている。 

ホストはこの特徴をファイルに受信したレコードに保存することによって提供することができる。 

6.4 

ダウンロードセション  

6.4.1 

ダウンロードセションは,次のメッセージ交換から構成される。 

a) 装置がホストにリクエストパケットを転送する 

b) ホストが装置に確認メッセージを転送する 

c) ホストは装置にデータパケットを転送する 

background image

30 

T 7335:2005  

d) 装置はホストに確認メッセージを転送する 

表 7 ダウンロードセション 

装置からの転送 

ホストからの転送 

リクエストパケット,REQ=<Request> 

確認 <ACK> 

データパケット,ANS=<Request> 

確認 <ACK> 

6.4.2 

確認メッセージが否定応答(NAK)の場合,送信側は3回まで転送をやり直す。4回目の否定応答

(NAK)を受信した場合,セションは中止する。 

例 プリセットパケットダウンロードの概要。装置タイプはPTG,EDG,FBK,SBK,GEN,AGN,

DNL又は初期設定時にホストが付けたリクエストID。 

装置                               ホスト 

<FS>REQ=[Device Type]<CR/LF> 

JOB=”1234”<CR/LF> 

[Optional Interface Records] 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

<ACK> 

<FS>REQ=[Device Type]<CR/LF> 

JOB=”1234”<CR/LF> 

STATUS=0<CR/LF> 

DO=B<CR/LF> 

[All Mandatory Records for Device type Packet] 

<RS> 

CRC=Optional<CR/LF> 

<GS> 

<ACK> 

7. その他の要求事項  

7.1 

RS−232C 通信パラメタ 初期設定パラメタは9600 bps,8ビット,1ストップビット,パリティ

ーなしとし,ホスト及び装置はこれらを初期設定値にする。その他の設定は,担当者がその都度設定でき

る。フロー制御を実施する場合,RS-232C制御線を利用しなくてはならないが,ソフトウェアフロー制御

(XON・XOFF)はこの規格の下では実施されない。XON・XOFF文字は,特殊文字として定義する。 

7.2 

オペレータメッセージ 装置はオペレータにセションの進捗状況報告のメッセージを提供すること

が望ましい。すなわち,装置はリクエストパケットを転送するとき“リクエストを送っています”などの

表示をし,確認メッセージの受信後に“回答を待っています”などと表示を変更することである。 

7.3 

一時的な装置タイプの変更  

この規格は,装置からの起動を想定したものだが,ホストからの起動にも対応できるようにホストも一

時的に装置となることができる(附属書Aに規定)。 

background image

31 

T 7335:2005  

附属書A(規定)レコードラベル 

レコードラベル 

A.1 装置レコード 

A.1.1 表A.1は,この規格に準じるシステムの利用のために定義された装置レコードのすべてをアルファ

ベット順に並べている。 

“データタイプ”の欄は,各ラベルに関する文字の種類を表示している。 

A.1.1.1 フィールド分離子は,キラルレコードを識別する。 

A.1.1.2 フィールド分離子(セミコロン)がない場合は,一つの値だけを表示する。 

例 キラルレコードでない場合の表示 

ラベル タイプ 意味 

A.1.1.3 セミコロンが続く場合は,キラルデータが求められている。 

例えば,両眼のデータはないかもしれないが,分離子は存在する。 

例 キラルレコードの表示 

ラベル タイプ; 意味 

A.1.1.4 [ ]付セミコロンは,キラルデータ又は両眼データが求められる。 

セミコロン又は左眼データがない場合,値は両眼に適用される。 

例えば,一つの円周だけがある場合,両眼に適用できる。 

例 眼鏡キラルレコードの表示 

ラベル タイプ[;] 意味 

A.1.1.5 レコードフィールドに表示されるデータの種類の制限を示す。 

A.1.1.5.1 数値は,小数点を含む場合がある。 

A.1.1.5.2 整数は,小数点を含めない。 

A.1.1.5.3 テキスト及びリテラルフィールドは二重の括弧でくくられ,文字の値が32以上ものはこれらの

フィールドに現れる(例 = , @ * ? ;)。 

A.1.1.6 次の単位は表A.1に利用されている。 

− ミリメートル(mm) 

− ディオブトリ:使用される屈折率が指定されている。 

− 度 

表 A.1 装置レコード 

レコードラベル 

データタイプ 

意味 

整数,整数,... 

等間隔でない半径データのための角度データ(半径の計測角度) 

ACCN 

テキスト 

アカウントナンバー 

ACOAT 

テキスト[;] 

コートの種類 

ADD 

数値; 

多焦点,累進多焦点又はExレンズ の場合の加入度数(ディオブトリ) 

ADD2 

数値; 

第2加入度数(ディオブトリ) 

AVAL 

数値; 

セミフィニッシュトレンズブランクをブロックした状態で,チャックの中心
に位置する部分で測定するチャック面からレンズ面までの高さ 

AX 

数値; 

乱視軸度。0〜180度 

備考 これはジェネレータAXISのGAXとは異なる。 

background image

32 

T 7335:2005  

表 A.1 装置レコード(続き) 

レコードラベル 

データタイプ 

意味 

BACK 

±数値; 

レンズブランクの凹面カーブ 

BCOCIN 
BCOCUP 
 
 
 
 

±数値; 
 

レンズブランク中心に対する光学中心のIN・UP値(mm)。 
フレーム形状情報を利用できないアンカットレンズの場合,有効。 
+IN:光学中心がレンズブランク中心の鼻側にある。 
−IN:光学中心がレンズブランク中心の耳側にある。 
+UP:光学中心がレンズブランク中心の上側にある。 
−UP:光学中心がレンズブランク中心の下側にある。 

BCSGIN 
BCSGUP 
 
 
 
 

±数値; 
 
 
 
 
 

レンズブランク中心に対する小玉端点のIN・UP値(mm) 
例 製造業者が定めたレンズブランク中心に対する相対的な小玉端点位置 
+IN:小玉端点がレンズブランク中心の鼻側にある。 
−IN:小玉端点がレンズブランク中心の耳側にある。 
+UP:小玉端点がレンズブランク中心の上側にある。 
−UP:小玉端点がレンズブランク中心の下側にある。 

BCTHK 

数値; 

レンズブランクの中心厚(mm) 

BETHK 

数値; 

レンズブランクの縁厚(mm) 

BEVC 

数値; 

やげん曲線。ディオブトリ値(屈折率1.530)で示す。 

BEVP 
 

整数[;] 

ホストと装置との間で合意されているやげん指定。 
(例:0=フリーやげん,1=5:5,2=凸面ならい,etc) 

BLKB 

±数値; 

ブロックベースカーブ(ディオブトリ) 

BLKCMP 

±数値; 

ブロックカーブとレンズカーブとの違いを補正するためのジェネレータ厚
さ補正値 

BLKD 

数値; 

ブロック直径(mm) 

BLKTYP 
 

整数; 
 

ホストと装置との間で合意されているブロック表に基づくブロックタイプ
指定整数値。 
これは異なるブロックのタイプ又は材料の区別をつけるために利用するこ
とができる。 

BPRVA 

数値; 

BPRVMの方向(0〜360度)。 

BPRVM 
 

数値; 
 

セミフィニッシュトレンズブランクのプリズム量 
(角度又はディオブトリ。PINDレコードを参照) 

BRGSIZ 

整数 

パッド間距離 

BSIZ 
 

±数値[;] 
 

玉形幅:水平方向に適用されるサイズ値。 
このレコードを受け入れる装置は送信された値によってどのような形でも
サイズ変更できることが求められる。 

CIRC 

数値[;] 

周長 

COLR 

テキスト[;] 

レンズカラーの略語 

CPRVA 

数値; 

CPRVMの方向(0〜360度)。 

CPRVM 
 

数値; 
 

研磨のための補正プリズム量。プリズムは工具の軸からレンズを傾けるため
の補正値。 
GPRVMレコードも参照(角度又はディオブトリ。PINDレコードを参照)。 

CRIB 
 

±数値; 
 

丸め径(mm)。0は,丸める必要がないことを意味する。アンカットレンズ
を仕上げるために,正の値は丸め径を,負の値は(レンズブランク径から)
削り取る量を意味する。 

CSIZ 
 

±数値[;] 
 

周長サイズ。周長に対して適用するサイズ。 
このレコードを受け入れる装置は送信された値によってどのような形でも
サイズ変更できることが求められる。 

CYL 

±数値; 

Rx乱視度数(ディオブトリ)。 

background image

33 

T 7335:2005  

表 A.1 装置レコード(続き) 

レコードラベル 

データタイプ 

意味 

DBL 

数値; 

レンズ間距離(mm) 

DIA 

数値; 

レンズブランクの直径(mm) 

EECMP 

±数値; 

だ円誤差の補正量(TINDに基づくディオブトリ)この補正は,GCROSに適
用される。 

ELLH 

数値; 

クリビングだ円の高さ(mm)。だ円を描くためのCRIBレコードに利用され
ている。 

ETYP 
 
 

整数 
 
 

レンズエッジング加工の種類。 
1−やげん,2−縁なし,3−溝加工,4〜32−予備(今後の定義用),33〜127
−ホストと装置との間で定義される。 

EYESIZ 

整数 

玉形幅の表示値 

FBFCUP 
FBFCIN 
 
 
 
 

±数値; 
 
 
 
 
 

フィニッシュブロックに対する玉形中心のIN・UP値(mm) 
エッジャでの偏芯加工のためには,フィニッシュブロックに対して玉形中心
をずらすために用いる。 
+IN:玉形中心がフィニッシュブロックの鼻側にある。 
−IN:玉形中心がフィニッシュブロックの耳側にある。 
+UP:玉形中心がフィニッシュブロックの上側にある。 
−UP:玉形中心がフィニッシュブロックの下側にある。 

FBOCUP 
FBOCIN 
 
 
 
 

±数値; 
 
 
 
 
 

フィニッシュブロックに対する光学中心のIN・UP値(mm) 
単焦点と多重焦点のために使用することができる。 
+IN:光学中心がフィニッシュブロックの鼻側にある。 
−IN:光学中心がフィニッシュブロックの耳側にある。 
+UP:光学中心がフィニッシュブロックの上側にある。 
−UP:光学中心がフィニッシュブロックの下側にある。 

FBPMIN 
FBPMUP 

±数値; 
 

フィニッシュブロックに対する累進マークのIN・UP値(mm) 
+IN:累進マークがフィニッシュブロックの鼻側にある。 
−IN:累進マークがフィニッシュブロックの耳側にある。 
+UP:累進マークがフィニッシュブロックの上側にある。 
−UP:累進マークがフィニッシュブロックの下側にある。 

FBSGUP 
FBSGIN 
 
 
 
 
 

±数値; 
 
 
 
 
 
 

フィニッシュブロックに対する小玉端点のIN・UP値(mm) 
フィニッシュブロックに対する小玉端点の位置。単焦点での使用は,上に定
義されたFBOCUP/FBOCINと同じと仮定する。 
+IN:小玉端点がフィニッシュブロックの鼻側にある。 
−IN:小玉端点がフィニッシュブロックの耳側にある。 
+UP:小玉端点がフィニッシュブロックの上側にある。 
−UP:小玉端点がフィニッシュブロックの下側にある。 

FCOAT 

テキスト[;] 

コートの種類 

FCOCIN 
FCOCUP 
 
 
 
 

±数値; 
 
 
 
 
 

玉形中心に対する光学中心のIN・UP値(mm) 
玉形中心に対する光学中心の位置。 
+IN:光学中心が玉形中心の鼻側にある。 
−IN:光学中心が玉形中心の耳側にある。 
+UP:光学中心が玉形中心の上側にある。 
−UP:光学中心が玉形中心の下側にある。 

FCOL 

テキスト 

フレームのカラー名 

FCRV 

±数値[;] 

フロント角 

background image

34 

T 7335:2005  

表 A.1 装置レコード(続き) 

レコードラベル 

データタイプ 

意味 

FCSGIN 
FCSGUP 
 
 
 

±数値; 
 
 
 
 

玉形中心に対する小玉端点のIN・UP値(mm)玉形中心に対する小玉端点の
位置。 
+IN:小玉端点が玉形中心の鼻側にある。 
−IN:小玉端点が玉形中心の耳側にある。 
+UP:小玉端点が玉形中心の上側にある。 
−UP:小玉端点が玉形中心の下側にある。 

FINCMP 

±数値; 

この補正はGTHKに適用される。 

FLATA 

数値; 

垂直面(mm)。CRIBレコードと共に利用される。 

FLATB 

数値; 

水平面(mm)。CRIBレコードと共に利用される。 

FMAT 

テキスト 

フレームの素材(例:METL) 

FMFR 

テキスト 

フレームの製造業者 

FPD 

数値 

玉形中心間距離(mm) 

FPINB 

数値; 

前面面取りの幅(mm) (ゼロは面取りなし。) 

FRAM 

テキスト 

フレーム名 

FRNT 

±数値; 

度数計算のためのレンズブランクの実際のフロントカーブ(TIND ディオブ
トリ) 

FTTHK 

数値; 

ジェネレータでの荒すりのために設定する厚さ 

FTYP 

整数 

フレーム素材タイプ(整数)。0−未定義,1−プラスチック,2−メタル,3
−縁なし,4〜127−予約 

GAX 

数値; 

ジェネレータのための乱視軸0から180(度) 

GBASE 

±数値; 

ジェネレータベースカーブ(円形TINDディオブトリ) 

GBASEX 

±数値; 

ジェネレータベースカーブ(非円形TINDディオブトリ) 

GCROS 

±数値; 

ジェネレータクロスカーブ(円形TINDディオブトリ) 

GCROSX 

±数値; 

ジェネレータクロスカーブ(非円形TINDディオブトリ) 

GPRVA 

数値; 

GPRVMの方向 0〜360度 

GPRVM 
 

数値; 
 

ジェネレータに設定するプリズム量。 KPRVM及びCPRVMレコードも参照。
(度又はディオブトリPINDレコードを参照) 

GRVWD 

数値; 

溝掘りの幅(mm) 

GRVDP 

数値; 

溝掘りの深さ(mm) 

GTHK 

数値; 

サフェイスブロック中心のジェネレータ厚さ(mm) 

HBOX 

数値[;] 

玉形幅(mm) 

IFRNT 

±数値 

レンズブランクフロントカーブ。TINDにもとづきディオブトリカーブに変
換されたSAGRD 

IPD 

数値 

片眼の心取り点間距離(mm) 

KPRVA 

数値 

KPRVMの方向0〜360度 

KPRVM 

数値 

ブロックで発生するプリズム量(度又はディオブトリ,PINDレコード参照)。 

LAPBAS 

±数値; 

ラップベースカーブ(円形TINDディオブトリ) 

LAPBASX 

±数値; 

ラップベースカーブ(非円形TINDディオブトリ) 

LAPCRS 

±数値; 

ラップクロスカーブ(円形TINDディオブトリ) 

LAPCRSX 

±数値; 

ラップクロスカーブ(非円形TINDディオブトリ) 

LAPM 

整数; 

ラップの材質番号,ラップの材質番号表にアクセスするために装置とホスト
とで合意された数。ゼロ値は未定義として予約されている。 

LAPPRB 

整数; 

ラッププロービング方法。0−ホスト制御なし,1−通常プロービング,2−
RE-TRUEプロービング,3−プロービングなし 

background image

35 

T 7335:2005  

表 A.1 装置レコード(続き) 

レコードラベル 

データタイプ 

意味 

LENPRB 
 

整数; 
 

レンズプロービング方法。0−ホスト制御なし,1−プロービングなし,2−
オフセンタープロービング,3−オンセンタープロービング,4−プリカット
プロービング 

LIND 

数値; 

レンズ素材の屈折率 

LMATID 
 

整数; 
 

素材の番号。素材の番号表にアクセスするために装置とホストとで合意され
た数。ゼロ値は未定義として予約されている。 

LMATNAME 

テキスト[;] 

レンズ材質名,(GLASS,PLASTIC) 

LMATTYPE 
 

整数; 
 

素材のタイプ(整数)。0−未定義/無効,1−プラスチック,2−ポリカーボ
ネート,3−ガラス,4−パターン,5−高屈折率,6〜127−予約 

LMFR 

テキスト[;] 

レンズブランク製造業者 

LNAM 

テキスト[;] 

レンズ名。“SV”,“VX INFINITY” 

LSIZ 

数値; 

製造業者による公称レンズブランク直径(mm) 

LTYPE 

リテラル 

第1フィールド:SV,BI,PR,TR,OC 
第2フィールド:FT,CT,EX,RD,DS,QD 
第3フィールド:AS,LT 

組合せ 

レンズタイプ 

小玉タイプ 

レンズ前面の設計 

SV 

n/a 

AS,LT 

BI 

FT,CT,EX,RD 

AS,LT 

PR 

n/a 

n/a 

TR 

FT,EX 

n/a 

OC 

FT,RD 

DS,QD 

CTHICK 

数値; 

中心肉厚(mm 光学中心距離) 

LTYP 
 
 
 

リテラル[;] 
 
 
 

次の2文字コードを利用して構成されたレンズタイプ。レンズタイプは四つ
までのコードで表示され,各コードはカンマで分けられる。すなわち,非球
面二重焦点はAS,BIとして示される。AS−非球面,AT−Atoric(コンタク
トレンズ),BI−二重焦点,CT−カーブドトップ,DS−二重小玉,EX−Eラ
イン多重焦点,FT−フラットトップ,LT−レンチキュラー,PR−累進屈折
力,QD−四重焦点,SV−単焦点,TR−三重焦点 

MBASE 

±数値; 

レンズ前面の公称ベースカーブ(例2,4,6など) 

MBD 

数値; 

最小レンズブランク直径(mm) 

NPD 

数値; 

片眼の近用瞳孔間距離(mm) 

OCHT 

数値; 

フレームの下端からの垂直光学中心高さ 

OPC 

整数; 

10けたのOPCコード 

OPCF 

整数; 

フロントウェハー10けた製品コード 

OPCB 

整数; 

バックウェハー10けた製品コード 

OTHK 

数値; 

プリズム基準点のジェネレータ厚さ(mm)。SBOCIN/SBOCUPと一緒に利用
される。 

PATHK 

数値; 

パッドの厚さ(mm) 

CLIENT 

テキスト 

消費者又は顧客の名前 

PINB 

数値; 

面取りの幅(mm) (ゼロは面取りなし。) 

PIND 
 

数値; 
 

プリズム値がディオブトリで表示される場合のプリズム値の屈折率,又はプ
リズムが度で表示される値はゼロとなる。 

POLISH 

整数; 

鏡面加工。 
0:鏡面なし 
1:鏡面あり,面取り部の磨きあり 
2:鏡面なし,面取り部の磨きあり 

background image

36 

T 7335:2005  

表 A.1 装置レコード(続き) 

レコードラベル 

データタイプ 

意味 

PREEDGE 

整数; 

可能=1・不可能=0。ジェネレータによるレンズのプリエッジ 

PRVA 

数値; 

Rxプリズムベースセッティング。0から360度(JIS T7330 10.7参照) 

PRVM 

数値; 

Rxプリズムディオブトリ。光学中心で検査するエクイシングプリズムを含
んでいる。 

整数,整数,... 

半径データ 

RNGCMP 

±数値; 

プリズム又はブロックリングのための厚さ補正(mm)。この補正はGTHKに
適用。 

RNGD 

数値; 

リングの直径(mm) 

RNGH 

数値; 

リングの高さ(mm) 

RPRVA 

数値; 

RPRVMの方向0〜360度 

RPRVM 

数値; 

偏心のためのSBOCIN・SBOCUPレコードを利用するときにジェネレータで
使用するプリズム量 

RXNM 

テキスト 

RXの整理番号 

SAGBD 

±数値; 

レンズブランク直径におけるサグ(mm)。 クリビング前のレンズ前面の位
置 

SAGCD 

±数値; 

クリブ直径におけるサグ(mm)。 クリビング後のレンズ前面の位置 

SAGRD 

±数値; 

リング直径におけるサグ(mm)。機器の中のレンズ前面の位置を示す。 

SBBCUP 
SBBCIN 
 
 
 

±数値 
 
 
 
 

サフェイスブロックに対するレンズブランク中心のIN・UP値(mm) 
+IN:レンズブランク中心がサフェイスブロックの鼻側にある。 
−IN:レンズブランク中心がサフェイスブロックの耳側にある。 
+UP:レンズブランク中心がサフェイスブロックの上側にある。 
−UP:レンズブランク中心がサフェイスブロックの下側にある。 

SBEV 

数値; 

切削する面取量(mm) 

SBFCUP 
SBFCIN 
 
 
 

±数値; 
 
 
 
 

サフェイスブロックに対する玉形中心のIN・UP値(mm) 
+IN:玉形中心がサフェイスブロックの鼻側にある。 
−IN:玉形中心がサフェイスブロックの耳側にある。 
+UP:玉形中心がサフェイスブロックの上側にある。 
−UP:玉形中心がサフェイスブロックの下側にある。 

SBOCUP 
SBOCIN 
 
 
 

±数値; 
 
 
 
 

サフェイスブロックに対する光学中心のIN・UP値(mm) 
+IN:光学中心がサフェイスブロックの鼻側にある。 
−IN:光学中心がサフェイスブロックの耳側にある。 
+UP:光学中心がサフェイスブロックの上側にある。 
−UP:光学中心がサフェイスブロックの下側にある。 

SBSGUP 
SBSGIN 
 
 
 

±数値; 
 
 
 
 

サフェイスブロックに対する小玉端点のIN・UP値(mm) 
+IN:小玉端点がサフェイスブロックの鼻側にある。 
−IN:小玉端点がサフェイスブロックの耳側にある。 
+UP:小玉端点がサフェイスブロックの上側にある。 
−UP:小玉端点がサフェイスブロックの下側にある。 

SDEPTH 

数値; 

小玉縦幅(JIS T 7330 14.1.9の図3参照) 

SEGHT 

数値; 

小玉の高さ 

SGOCIN 
SGOCUP 
 
 

±数値; 
 
 

小玉端点に対する光学中心のIN・UP値(mm) 
小玉端点に対する光学中心の位置,多重焦点で使用できる。 
+IN:光学中心が小玉端点の鼻側にある。 
−IN:光学中心が小玉端点の耳側にある。 
+UP:光学中心が小玉端点の上側にある。 
−UP:光学中心が小玉端点の下側にある。 

SLBP 

数値; 

スラブオフプリズム(ディオブトリ) 

background image

37 

T 7335:2005  

表 A.1 装置レコード(続き) 

レコードラベル 

データタイプ 

意味 

SLHT 

数値; 

スラブオフライン高さ(フレーム下端から測定) 

SLDRP 

数値; 

スラブオフドロップ。SLHTと同様,アンカットレンズのために使用可能
(mm)。 

SPEED 
 

整数; 
 

装置とホストとの速度制御表にアクセスするために装置とホストとで合意
された整数値。 
ゼロ値は定義されていないことを意味する。 

SPH 

±数値; 

Rx球面度数(ディオブトリ) 

SVAL 
 

数値; 
 

チャック中央上の機械のレセプションチャックに相対的に計測された後に
発生するジェネレート後のレンズの厚さを示す値(セッティングバリュー) 

SWIDTH 

数値; 

小玉横幅(mm) 

THKA 

数値; 

最大の縁厚−THKPの方向(度) 

THKCMP 

±数値; 

はん用的な厚さ補正(mm)。この補正はGTHKに適用される。 

THKP 

数値; 

最大縁厚(mm) 

TH 

数値; 

最小縁厚の角度−THNPの方向(度) 

THNP 

数値; 

最小縁厚(mm) 

TIND 

数値; 

ジェネレータパケットにおけるすべてのディオブトリカーブのために利用
される屈折率 

TINT 

テキスト[;] 

染色の略号 

TPSIZ 

整数 

フレームのテンプル長さ 

TPTYP 

テキスト 

フレームのテンプルタイプ(縄巻き,長手等) 

TRCEYE 
 
 
 

整数 

計測する眼の識別 
0 - 未定義 
1 - 右眼計測 
2 - 左眼計測 
3 - 両眼計測 

VBOX 

数値[;] 

玉形高さ 

整数,整数,... 

サグデータ(Z方向の計測) 

ZA 

整数,整数,... 

サグデータの角度 

ZTILT 

数値[;] 

フロント傾斜角 

A.2 インタフェイスレコード 表A.2はこの規格に準じるシステムによって利用されるすべてのインタ

フェイスレコードの定義をアルファベット順に並べたものである。 

データフォーマットは表A.1と同じである。 

background image

38 

T 7335:2005  

表 A.2 インタフェイスレコード 

レコードラベル 

データタイプ 

意味 

ANS 

リテラル 
又は整数 

REQレコードに対する応答の種類。 
リクエストパケットに明記されているリクエストタイプに呼応するため,最
初のリクエストパケットを除き,すべてに必すである。 

CMD 

リテラル 

0:計測開始要求の命令 
 計測を開始し,成功時には計測データをホストに送信し,失敗時にはエラ
ー状態を返す。 
S:データ要求命令 
 トレーサ内部データを送信する。 
 CMD=S:0 計測データの要求 
 CMD=S:1 高さデータの要求 
 CMD=S:2 補正データの要求 
I:初期設定命令 
 機器の初期設定を行なう。 
W:調整データ書込み命令 
 調整データの書込みを行なう。 
A:キャリブレーション要求命令 
 CMD=A;yy.mm.dd 実行年月日 

CRC 

整数 

CRC値の確認(Cyclical-Redundancy Check)。この計算方法には附属書Cを参
照。 

リテラル;リテ
ラル; 

オートフォーマット初期設定のためのレコードラベル。 
DEFとENDDEFレコードと共に利用され,D=label;lavel;label<CR/LF>という
形式で,1又はそれ以上のラベルを含み,複数のDレコードはDEFレコード
とENDDEFレコードの間に記述する。装置は*をしるすことによって,そのレ
コードラベルリストの中で,そのレコードが必すであることを示す。これは,
装置が適切に機能するために必要なレコードをホストが確認するために利用
されている。 

DEF 

リミテッド;整
数; 

リクエスト定義。 
これは,装置からホストに転送された初期設定データパケットに使用され,
ホストによってリクエストIDを割り当てなくてはならないレコードリストの
開始を表示し,ENDDEFレコードによってリストを終了する。 
装置からの送信におけるレコードフォーマットは,次のとおりである。 
  DEF =  << Device tag  >><CR/LF> 
装置タグ(Device tag)は,リクエストタイプを識別するために,装置によっ
て使用されるリミテッド文字列である。 
ホストの初期設定データパケットのフォーマットは,次のとおりである。 
  DEF =  << Device tag  >>;request ID <CR/LF> 
装置が装置タグとして定義した一つのリクエストを使用するときに,リクエ
ストID(request ID)を使用する。装置タグは,プリセット初期設定が実施さ
れている場合,空白である。ホストは,装置によって転送された定義の要求ご
とにDEFレコードを送る。装置の初期設定データパケットでは“D”レコー
ド(レコードラベルリスト)はリクエスト定義レコード(DEF)の直後に続く。 

DEV 

リテラル 

装置タイプ。 
このレコードは表A.4に示し,装置の種類によって対応する装置レコードを規
定している。オートフォーマット初期設定にも利用され,データの行き先が
示される。これは,初期設定パケットに現れる。 

DO 

R|L|B|N 

このレコードは,ホストからのデータパケットに必すであり,処理されるレ
ンズを示す。 
R:右眼,L:左眼,B:両眼,N:なし 

background image

39 

T 7335:2005  

表 A.2 インタフェイスレコード(続き) 

レコードラベル 

データタイプ 

意味 

ENDDEF 

リミテッド 

リクエスト定義の終わり。 
DEFレコードによって開始するオートフォーマット初期設定の定義終了を表
す。 

HID 

リミテッド 

ホストID。 
リクエストパケットに任意に表示され,リクエストパケットで開始されたセシ
ョン中にホストから装置に送られるパケットに利用される。 

INFO 

整数 

インフォメーションパケット制御。 
これはホストがINFリクエストの転送を制御するために利用される。装置が
リクエスト又は初期設定パケットでINFO=1を表示するとき,ホストは
INFO=0と表示することによってINFリクエストを拒絶できる。 

JOB 

リミテッド 

ジョブ番号。 
ジョブIDともいう。ジョブIDは,初期設定以外のすべてのパケットに必す
である。装置は受け取ったパケットにおけるジョブIDとリクエストパケット
に指定した元のジョブIDと一致することを検証する。ホストは受け取ったフ
ォーマットと同じ形式でジョブIDを返す。ジョブIDを提供できないアップ
ロード装置は未定義データを示す文字(?)を転送する。 

MESG 

テキスト 

任意のテキストデータであり,メッセージの最大長はMSLレコードを使用す
る。 

MID 

リミテッド 

機器ID。 
これによって特定のホストに接続している特定の装置を識別する。 
初期設定又はリクエストパケットにおいて選択可能である。 

MNAME 

テキスト 

機器の名前。 
これは選択可能なテキストデータであり,ホストによって装置を確認するため
の利用者用の名前である。 

例 ACMEレンズジェネレータ モデル101 

MODEL 

リテラル 

機器モデル。 
製造機器業者によって提供され,この規格に組み入れられる。 
ホストが機器に送る適切な初期設定パラメタを判断するために利用される。初
期設定又はリクエストパケットにおいてプリセットリクエストを扱う上で選
択可能である。 

MSL 

整数 

初期設定レコードでメッセージの最大長を設定する。これによって装置はホス
トに,ある一定の長さのメッセージしか表示できないことを知らせる。 

OMAV 

MM.mm 

インタフェイスバージョン。 
これは,ホストがパケットの構造と装置のインタフェイスバージョンとを合わ
せるために利用されている。リクエスト又は初期設定パケットにおいて選択可
能である。インタフェイスバージョンの構造は“MM.mm”であり,MMはメ
ジャーバージョン,mmはマイナーバージョンを表す。ホスト及び装置の通信
機能に影響を与える可能性がある場合はメジャーバージョンが変更され,追加
レコードが定義されても,通信機能に影響を与えない場合はマイナーバージョ
ンが変更される。 

OPERID 

リミテッド 

オペレータID。 
これは,リクエスト又は初期設定パケットに選択可能として表示される。 

REM 

テキスト 

注釈。 
パケットに表示できるテキストデータである。ホスト又は装置は注釈にもとづ
き作動できない。注釈はセション間で送信者に戻すことはない。 

background image

40 

T 7335:2005  

表 A.2 インタフェイスレコード(続き) 

レコードラベル 

データタイプ 

意味 

REQ 

リテラル 
又は整数 

リクエストタイプ。 
ホストに対し,リクエストの種類を識別するためにリクエストパケットのレコ
ードには必すである。リクエストタイプは初期設定の間ホストから戻る表A.3
又はリクエストID番号の文字データから構成される。REQは最初のレコード
でなくてはならない。 

SN 

テキスト 

装置のシリアル番号。 
製造機器業者では装置を確認でき,サービス又は分析のために使用されると推
測できる。初期設定又はリクエストパケットにおいて選択可能である。 

STATUS 

整数;テキスト; 状態コード(A.4参照) 

TIMEOUT 

整数;整数;整数 このレコードは,TIMEOUT=確認,パケット,整数の形式をとり,初期設定

中にホストから装置に送信され,既定値のタイムアウト値を上書き修正する。
装置がそのような修正を許可しない場合,装置の資料には明記する必要があ
る。これを提供しない装置はこのレコードの受信によって,エラー状態を返信
してはならない。タイムアウト値は秒単位とし,2から255秒の間となる。 

TRCFMT 

整数;整数; 
U|E;R|L| 
B;F|P|D 

計測データフォーマット。 
TRCFMT=#;###;U|E;R|L|B;F|P|D 
a)第1フィールド:フォーマットの種類 

1. ASCII絶対値フォーマット 
2. 2進絶対値フォーマット 
3. 2進差分フォーマット 
4. パックト2進フォーマット 
5〜100 将来の標準フォーマット用 

b)第2フィールド:半径データの数(ポイント数) 
c)第3フィールド:半径の測定間隔 

E: 等間隔な角度 
U: 等間隔でない角度を示し,角度データAがRレコードに続く必要がある 

d)第4フィールド:眼の方向 

R: 右眼 
L: 左眼 
B: 両眼 

初期設定又はリクエストパケットでは,どちらの眼が含まれているかを示し,
データパケットでは,計測の方向を明記し,どの眼が計測されるかを示す。 
e)第5フィールド:計測物 

F: フレーム 
P: パターン 
D: デモレンズ 

初期設定では使用されず,アップロード,ダウンロードセションで使用される。 

TRCTYPE 

整数 

0: 装置からホスト方向 
1: ホストから装置方向 

TRCUNIT 

整数 

半径方向の計測データの単位。 
初期設定時にこのレコードラベルで単位指定が行われない場合は,100分の1
ミリメートル単位が初期設定値として選択される。 
0 - 未定義 
1 - 100分の1ミリメートル単位 
2 - 1000分の1ミリメートル単位 

background image

41 

T 7335:2005  

表 A.2 インタフェイスレコード(続き) 

レコードラベル 

データタイプ 

意味 

VEN 

リテラル 

眼鏡レンズ製造機器業者ID。 
装置の製造業者を識別するために,製造業者により選択された3文字が利用さ
れる。眼鏡レンズ製造機器業者IDが装置の初期設定データパケットに存在し
ない場合,ホストは装置にセットアップパラメタを転送できない。 

ZFMT 

整数;整数; 
U|E;R|L| 
B;F|P|D 

Z軸の計測データフォーマット。 
TRCFMTと同じ。 

表 A.3 リクエストタイプ(リテラルデータ) 

リクエストタイプ 

意味 

INI 

初期設定 

TRC 

フレームトレーサのアップロード 

PTG 

型取器へのダウンロード 

EDG 

エッジャへのダウンロード 

SBK 

サフェイスブロックへのダウンロード 

FBK 

フィニッシュブロックへのダウンロード 

AGN 

ラミネータへのダウンロード 

GEN 

ジェネレータへのダウンロード 

UPL 

はん用的なアップロード 

DNL 

はん用的なダウンロード 

MNT 

保守情報のアップロード 

ERR 

エラー回答 

INF 

情報のアップロード 

リクエストID(整数) 

プリセット初期設定又は,オートフォーマット初期設定によって決定されたID 

表 A.4 装置タイプ 

装置 

装置タイプ(リテラルデータ) 

フレームトレーサ 

TRC 

型取り器 

PTG 

レンズエッジャ 

EDG 

サフェイスブロッカ 

SBK 

フィニッシュブロッカ 

FBK 

ジェネレータ 

GEN 

オルタネートジェネレーティング装置 

AGN 

アップロード装置 

UPL 

ダウンロード装置 

DNL 

ホスト 

HST 

A.3 プリセットレコード 次のフォーマットは,すべてのプリセット定義に利用する。 

*LABEL  必す項目。常に送信する。ただし実際の転送には,*を送信しない。 

注釈 

計測データにおいて,実際の計測レコードは,使用したフォーマットに応じて送信される。 

LABEL  送信されていない場合,定義されていないと解釈する。 

LABEL2  装置が利用可能な場合,ホストから送信する。 

LABEL3  単焦点(LTYP=SV)のときは,送信しない。 

background image

42 

T 7335:2005  

表 A.5 プリセットフレームトレーサパケット 

レコードラベル 

意味 

*A 

等間隔でない半径データのための角度データ(半径の計測角度) 

BSIZ2 

玉形幅 

*CIRC 

周長 

CSIZ2 

周長サイズ 

*DBL 

レンズ間距離 

FCRV 

フロント角 

FTYP 

フレーム素材タイプ(整数) 

HBOX 

玉形幅 

*R 

半径データ 

*TRCFMT 

計測データのフォーマット 

VBOX 

玉形高さ 

サグデータ(Z方向の計測) 

ZA 

サグデータの角度 

ZFMT 

サグデータのフォーマット 

ZTILT 

フロント傾斜角 

表 A.6 型取り器パケット 

レコードラベル 

意味 

*A 

等間隔でない半径データのための角度データ(半径の計測角度) 

*R 

半径データ 

*TRCFMT 

計測データのフォーマット 

表 A.7 プリセットレンズエッジャパケット 

レコードラベル 

意味 

*A 

等間隔でない半径データのための角度データ(半径の計測角度) 

BEVC 

やげん曲線 

BEVP 

やげん指定 

BSIZ2 

玉形幅 

*CIRC 

周長 

CSIZ2 

周長サイズ 

*DBL 

レンズ間距離 

*DIA 

レンズブランクの直径 

*ETYP 

レンズエッジング加工の種類 

*FBFCIN,*FBFCUP 

フィニッシュブロックに対する玉形中心のIN・UP値 

FBSGIN3,FBSGUP3 

フィニッシュブロックに対する小玉端点のIN・UP値 

FCRV 

フロント角 

*FTYP 

フレーム素材タイプ(整数) 

*IPD 

片眼の心取り点間距離 

*LMATTYPE 

素材のタイプ(整数) 

LMATID2 

素材の番号(整数) 

*LTYP 

レンズタイプ 

*NPD 

片眼の近用瞳孔間距離 

*OCHT 

光学中心の高さ 

*PINB 

面取りの幅 

background image

43 

T 7335:2005  

表 A.7 プリセットレンズエッジャパケット(続き) 

レコードラベル 

意味 

*POLISH 

鏡面加工 

*R 

半径データ 

*SEGHT3  

小玉の高さ 

*TRCFMT 

計測データのフォーマット 

サグデータ(Z方向の計測) 

ZA 

サグデータの角度 

ZFMT 

サグデータのフォーマット 

ZTILT 

フロント傾斜角 

表 A.8 プリセットフィニッシュブロッカパケット 

レコードラベル 

意味 

*A 

等間隔でない半径データのための角度データ(半径の計測角度) 

*AX 

乱視軸度。0〜180度 

CYL 

Rx乱視度数 

*DBL 

レンズ間距離 

*DIA 

レンズブランクの直径 

*FBFCIN,*FBFCUP 

フィニッシュブロックに対する玉形中心のIN・UP値 

*FBOCIN,*FBOCUP 

フィニッシュブロックに対する光学中心のIN・UP値 

FBSGIN3,FBSGUP3 

フィニッシュブロックに対する小玉端点のIN・UP値 

*HBOX 

玉形幅 

*IPD 

片眼の心取り点間距離 

*LTYP 

レンズタイプ(整数) 

*NPD 

片眼の近用瞳孔間距離 

*OCHT 

光学中心の高さ 

*R 

半径データ 

SDEPTH3 

小玉縦幅 

SEGHT3 

小玉の高さ 

SGOCIN3,SGOCUP3 

小玉端点に対する光学中心のIN・UP値 

SPH 

Rx球面度数(ディオブトリ) 

SWIDTH 

小玉横幅 

*TRCFMT 

計測データのフォーマット 

*VBOX 

玉形高さ 

サグデータ(Z方向の計測) 

ZA 

サグデータの角度 

ZFMT 

サグデータのフォーマット 

表 A.9 プリセットサフェイスブロッカパケット 

レコードラベル 

意味 

*BACK 

レンズブランクの凹面カーブ 

BCSGIN3,BCSGUP3 

レンズブランク中心に対する小玉端点のIN・UP値 

*BCTHK 

レンズブランクの中心厚 

*BETHK 

レンズブランクの縁厚 

*BPRVA 

レンズブランクにおけるプリズムの方向 

*BPRVM 

レンズブランクにおけるプリズム量 

background image

44 

T 7335:2005  

表 A.9 プリセットサフェイスブロッカパケット(続き) 

レコードラベル 

意味 

*DIA 

レンズブランクの直径 

*FRNT 

レンズブランクの実際のフロントカーブ 

*GAX 

サフェイス機器のための乱視軸 

*GPRVA 

GPRVMの方向 

*GPRVM 

ジェネレータに設定するプリズム量 

*IFRNT 

レンズブランクフロントカーブ 

*KPRVA 

KPRVMの方向 

*KPRVM 

ブロックで発生するプリズム量 

*LTYP 

レンズタイプ(整数) 

*SAGRD 

リング直径におけるサグ 

*SBBCIN,*SBBCUP 

サフェイスブロックに対するレンズブランク中心のIN・UP値 

*SBFCIN,*SBFCUP 

サフェイスブロックに対する玉形中心のIN・UP値 

SBOCIN2,SBOCUP2 

サフェイスブロックに対する光学中心のIN・UP値 

SBSGIN3,SBSGUP3 

サフェイスブロックに対する小玉端点のIN・UP値 

SDEPTH3 

小玉縦幅 

SWIDTH3 

小玉横幅 

表 A.10 プリセットジェネレータパケット 

レコードラベル 

意味 

*AVAL 

セミフィニッシュトレンズブランクをブロックした状態で,チャックの中心に位置する
部分で測定するチャック面からレンズ面までの高さ 

*BACK 

レンズブランクの凹面カーブ 

*BCTHK 

レンズブランクの中心厚 

*BETHK 

レンズブランクの縁厚 

*BLKB 

ブロックベースカーブ 

*BLKCMP 

レンズとブロックのカーブとの違いを補正する厚さ 

*BLKD 

ブロック直径 

*BLKTYP 

整数値で表したブロックタイプ 

*CRIB 

クリブの直径 

*DIA 

レンズブランクの直径 

EECMP2 

だ円誤差の補正量 

*ELLH 

クリビングだ円の高さ 

FINCMP 

仕上げのための厚さ補正 

*FLATA 

クリブ縦平坦加工 

*FLATB 

クリブ横平坦加工 

*FRNT 

レンズブランクの実際のフロントカーブ 

*FTTHK 

ジェネレータでの荒すりのために設定する厚さ 

*GAX 

サフェイス機器のための乱視軸 

*GBASE 

ジェネレータベースカーブ(丸め あり) 

*GBASEX 

ジェネレータベースカーブ(丸め なし) 

*GCROS 

ジェネレータクロスカーブ(丸め あり) 

*GCROSX 

ジェネレータクロスカーブ(丸め なし) 

*GPRVA 

GPRVMの方向 

*GPRVM 

ジェネレータに設定するプリズム量 

background image

45 

T 7335:2005  

表 A.10 プリセットジェネレータパケット(続き) 

レコードラベル 

意味 

*GTHK 

サフェイスブロック中心のジェネレータ厚さ 

*IFRNT 

レンズブランクフロントカーブ 

*KPRVA 

KPRVMの方向 

*KPRVM 

ブロックで発生するプリズム量 

*LAPBAS 

ラップベースカーブ(丸めあり) 

*LAPBASX 

ラップベースカーブ(丸めなし) 

*LAPCRS 

ラップクロスカーブ(丸めあり) 

*LAPCRSX 

ラップクロスカーブ(丸めなし) 

LAPM2 

ラップの材質番号(整数) 

*LAPPRB 

ラッププロービング方法。 0−ホスト制御なし1−通常プロービング  2−RE-TRUE
プロービング,  4−プロービングなし 

*LENPRB 

レンズプロービング方法 

*LIND 

レンズ素材の屈折率 

*LAMATTYPE 

基本素材のタイプ(整数) 

*LMATID 

素材の番号(整数) 

*LSIZ 

製造業者による公称レンズブランク直径 

*LTYP 

レンズタイプ(整数) 

*OTHK 

プリズム基準点のジェネレータ厚さ 

PADTHK2 

パッドの厚さ 

*PIND 

プリズム値の屈折率 

*RNGD 

リングの直径 

RNGH 

リングの高さ 

RNGCMP2  

リングための厚さ補正 

RPRVA 

RPRVMの方向 

RPRVM 

偏心のためのSBOCIN・SBOCUPレコードを利用するときにジェネレータで使用す
るプリズム量 

*SAGBD 

レンズブランク直径におけるサグ 

*SAGCD 

クリブ直径におけるサグ 

*SAGRD 

リング直径におけるサグ 

*SBBCIN,*SBBCUP 

サフェイスブロックに対するレンズブランク中心のIN・UP値 

*SBEV 

切削する面取量 

SBOCIN2,SBOCUP2 

サフェイスブロックに対する光学中心のIN・UP値 

SPEED 

速度制御 

SVAL 
 

チャック中央上の機械のレセプションチャックに相対的に計測された後に発生する
ジェネレート後のレンズの厚さを示す値(セッティングバリュー) 

THKCMP 

はん用的な厚さ補正(mm)。この補正はGTHKに適用される。 

*TIND 

ジェネレータパケットにおけるすべてのディオブトリカーブのために利用される屈
折率 

background image

46 

T 7335:2005  

表 A.11 オルタネートジェネレーティング装置(ラミネーションシステム)パケット 

レコードラベル 

意味 

*AX 

乱視軸度。0〜180度 

*ADD 

加入度数(ディオブトリ) 

*CYL 

Rx乱視度数 

*FCOAT 

コートの種類 

*LIND 

レンズ素材の屈折率 

*LNAM 

レンズスタイル名 

*LSIZ 

製造業者による公称レンズブランク直径(mm) 

*LTYP 

レンズタイプ 

*OPCB 

バックウェハー10けた製品コード 

*OPCF 

フロントウェハー10けた製品コード 

*RXNM 

RXの整理番号 

*SPH 

Rx球面度数(ディオブトリ) 

表 A.12 保守情報パケット 

レコードラベル 

意味 

MID 

機器の識別子 

MODEL 

機器のモデル 

OPERID 

オペレータID 

SN 

機器の一連番号 

VEN 

玉形高さ 

表 A.13 処理状態パケット 

レコードラベル 

意味 

*JOB 

ジョブID 

*STATUS 

完成モードの表示(0=正常;19=障害) 

A.4 状態コード 状態コードの値は,表A.14に定義されており,それらは,エラー状態があるか否かを

示すために応答パケットにて送られる。このレコードの形式は,STATUS=<コード>;<意味>である。レコ

ードの第2フィールドはテキストで,エラーを文字で表現することができる。このレコードは,応答パケ

ットには必すである。リクエストに対する応答にてゼロでない状態コードの表示は,おおむね現在のセシ

ョンを中断させる。初期設定の間は例外で,状態コードは初期設定で使われる形式にて表示される。状態

コードの付加情報は,表A.15に定義され,エラー状態のより詳細な情報を提供するために,状態コードを

追加できる。現在の付加情報は,状態コード17に関するものである。ホストが状態コードのレコードに説

明を返した場合,装置は可能な限りそれを表示する。 

background image

47 

T 7335:2005  

表 A.14 状態コード 

状態コード 

意味 

 0 

エラーなし。 

 1 

ジョブが見つからない。 

 2 

データが保存できない。ジョブが保護されている。 

 3 

一般的にホスト又は装置によって定義され,説明フィールドがエラーを記述する。 

 4 

ジョブを処理できない(ホストシステムにてデータは利用可能だが,装置がリクエストを作るの
に適当でない)。 

 5 

初期設定が必要。これは通常では,オートフォーマット又はプリセット初期設定後にホストが再
起動した場合にホストから送られる。 

 6 

無効なジョブID。 

 7 

レコード欠落。欠落レコードのレコードラベルは,説明フィールドに表示される。 

 8 

ホストエラー。何らかの内部エラーのため,ホストがリクエストに応答できない。エラーは説明
フィールドに記述される。 

 9 

ホストと装置とが適合しない。 

10 

レコードのある値が範囲外。違反レコードは説明フィールドに記述される。 

11 

受信側が動作中。リクエストを一時的に実行できない。 

12 

同期例外。ホスト又は装置が同期のないパケットを受け取った場合,この状態コードとなり,双
方ともセションを中断する。そのようなパケットの受信側は送信側に確認メッセージを送る。 

13 

無効な初期設定。初期設定パケットに何か間違いがある。 

14 

オートフォーマット初期設定が提供されていない。これはプリセット初期設定はできるが,オー
トフォーマット初期設定のできないホストから送られる。これはプリセットフォーマット初期設
定を使うことを装置に知らせている。 

15 

初期設定が提供されていない。これはホストがどんなタイプの初期設定もできない場合に送られ
る。 

16 

無効なリクエスト。装置が作ったリクエストタイプをホストが確認できない場合に送られる。 

17 

提供されない計測フォーマット。これはホストが提供していない計測フォーマットを装置が使用
しようとした場合に送られる。状態コードの付加情報(表A.15参照)は,このエラー種類の正
確な表示を補助するために,エラーコードに追加されるだろう。 

18 

フォーマットエラー。この規格に合っていないデータを含んだパケットを装置又はホストが受信
した場合に送られる。 

19 

処理の失敗。これはINFリクエストだけに使われ,ジョブの完了を示すために,最後のリクエ
ストに関する一連の処理が完了したことを示すために装置からホストへ送る。この状況は処理が
正常に終了しなかったことを示す。 

表 A.15 状態コード17の付加情報 

付加情報の値 

説明 

 256 

使われた計測フォーマットは受けられない。 

 512 

使われたポイント数は受けられない。 

1024 

使われた半径モードは受けられない。 

備考 状態コードの付加情報は,16ビットワードの上位バイトのビットで表現され,情報を失うことなく結合され

る。 

下位バイトで表示可能な255の数値は一般的なエラー状態を表現でき,上位バイトの8ビットはこのデ

ータを細分化できる。現在の付加情報は,状態コード17だけに関している。この値は,他のコードと結合

して別の意味をもつことができる。 

48 

T 7335:2005  

附属書B(参考)パックト2進フォーマットの例 

この附属書は,本体及び附属書(規定)に関連する事柄を補足するもので,規定の一部ではない。 

次のコードは,本体5.4.16で規定したフォーマットについてデータのパック及びアンパックの実施方法

である。 

データをパックするためには,packit(src,dst,nradii)を呼び出す。”src”はパックされる整数配列のポイ

ンタ,”dst”はパックされたデータ(パックトデータ)が格納されるポインタ,”nradii”はデータセットの

要素の数とする。データをアンパックするためには,unpackit(dst,src,nradii)を呼び出す。”src”はアンパ

ックされるパックトデータのポインタ,”dst”がアンパックされたデータが格納される整数配列のポイン

タ,”nradii”はデータセットの要素の数とする。 

pack() 関数及びunpack() 関数は内部的に利用され,次の条件を守らなければならない。 

1バイト値をパックするとき,ニブルカウンタが偶数バイトバウンダリ領域にない場合,ニブルとして

の出力順は次のとおりとする。 

− バイトのハイニブルは出力バイトNのロウニブルに入る。 

− バイトのロウニブルは出力バイトN+1のハイニブルに入る。 

このことによってバイトダンプを見るときにバイトを正確に読むことができる。 

2バイト値をパックするとき,ニブルカウンタが偶数バイトバウンダリ領域にない場合,ニブルとして

の出力順は次のとおりとする。 

− 元のデータ: 0x1234 

− 80x86保存順:  

3412. ニブル3は最初,4,1,2と続く。 

ニブルカウンタが偶数バイトバウンダリ領域にある場合,同じニブル順が利用される。これは通常の

80x86保存順に対応する。 

処理の終わりで奇数のニブル結果となった場合,値0の1ニブルがデータの最後に追加される。 

/* グローバル変数 */ 
 
static unsigned char *outftp; 
static int ftpn=0; 
 
/************************************************************************************ 
pack() 関数 
 
入力: 
 i ‒ 出力バッファへパックする値。 
 n ‒ 取り上げるニブル数。 
 

49 

T 7335:2005  

出力: 
 outftpで指示されている出力バッファへパックしたデータを入力し,必要に応じてoutftpを更新する。 
グローバル変数: 
 なし 
スタティック変数: 
 outftp, ftpn 
 
ニブルを*outftpへパックし,パックしたニブルの数だけニブルカウンタftpnを増やす。 
 
pack()関数はこのモジュールにはプライベートで,packit()関数によって呼び出される。 
************************************************************************************/ 
void pack(i, n) 
 unsigned int i; 
 int n; 
 

#ifdef NOT̲80x86 
 if (n == 4) 
  swab(outftp, outftp, 2);  

/* 80x86形式に変換する */ 

#endif 
if ( !(ftpn & 1) ) 

/* ニブルカウンタは偶数指示? */ 


 if ( n > 1 ) 
 { 
  *outftp++ = (i & 0xff); 
  if ( n > 2 ) 
    *outftp++ = (i & 0xff00)>>8; 
 } 
 else 
 *outftp = i<<4; 

/* ハイニブルを初めにパックする */ 


else 

 if ( n > 1 ) 
 { 
  if ( n == 2 ) 
  { 
    *outftp++ |= (i & 0xf0)>>4;   

/* 次のバイトのハイニブルでロウニブルを埋める */ 

    *outftp = (i & 0x0f)<<4;      

/* ハイニブルをロウニブルで埋める */ 

  } 
  else 
  { 
    *outftp++ |= (i & 0x00f0)>>4;   

/* ニブル3を埋める */ 

    *outftp++ = (i & 0x000f)<<4 | (i & 0xf000)>>12; 

/* ニブル4と1を埋める */ 

    *outftp = (i & 0x0f00)>>4; 

/* ニブル2を埋める */ 

  } 

else 
 *outftp++ |= (i & 0x0f);   

/* ロウニブルを埋める */ 


ftpn+=n; 

 
/************************************************************************************ 
packit() 関数 
 

50 

T 7335:2005  

入力: 
 src 

  パックする整数へのポインタ。 

 dst 

  パックしたデータを保存しておくバッファ。 

 num 

  パックする整数の数 

出力: 
 パックしたデータを出力バッファ(dst)へ入れ,パックしたバイト数を返す。 
グローバル変数: なし 
スタティック変数:  outftp, ftpn 
 
整数データを出力バッファへパックする。 
pack()関数を呼び出す。 
************************************************************************************/ 
 
int  packit(src, dst, num) 
 int *src; 
 unsigned char *dst; 
 int num; 

 int   i; 
 int   state=16; 
 int   dr, d2r, dr1=0; 
 
 outftp = dst; 
 for (ftpn = 0, i = 0; i < num; i++) 
 { 
  if(!i) 
    dr = src [i]; 
  else  
    dr = src[i]-src[i-1]; 
  d2r = dr-dr1; 
  switch(state) 
  { 
    case 16; 
      if (dr<128 && dr>-128) 
      { 
         state = 8; 
         pack(0x8000), 4); 
         pack(dr, 2); 
      } 
      else 
      { 
         pack(src[i], 4); 
      } 
      break; 
   case 8; 
      if (dr>=128 || dr<=-127) 
      { 
         state = 16; 
         pack(0x81, 2); 
         pack(src[i], 4); 
      } 
      else 
         if (d2r<8 && d2r>-8) 
         { 
         state = 4; 
         pack(0x80, 2); 

51 

T 7335:2005  

         pack(d2r, 1); 
         } 
         else 
         { 
         pack(dr, 2); 
         } 
         break; 
   case 4; 
      if (d2r>=8 || d2r<=-8) 
      { 
         pack(0x8, 1); 
         if (dr>=128 || dr<=-127) 
         { 
            state = 16; 
            pack(0x81, 2); 
            pack(src[i], 4); 
         } 
         else 
         { 
            state = 8; 
            pack(dr, 2); 
         } 
      } 
      else 
      { 
      pack(d2r, 1); 
      } 
      break; 
  default; 
    return(-99); 
    braek; 
 } 
  dr1 = dr; 
 } 
 return (  (ftpn+1)>>1 ); 

/************************************************************************************ 
unpack() 関数 
 
入力: 
 i ‒ パックされたデータバッファからアンパックするニブル数。 
出力: 
 パックされたデータの16ビット整数値。 
グローバル変数: 
 なし 
スタティック変数: 
 outftp 
 
渡されたサイズを元にして,パックされたデータの次のニブル,バイト又はワードを 
返す。Z 8002ではバイトの順序が相違しているため,バイトの順序をスワップしてから 
ワードの値を返す。 
 
unpack()関数はこのモジュールにはローカルで,unpackit()関数によって呼び出される。 
************************************************************************************/ 
 
int unpack(i) 

52 

T 7335:2005  

 int i; 

 unsigned int j; 
 if ( !(ftpn & 1) )    

/* 偶数指示 */ 

 { 
  swith (i) 
  { 
     case 1; 
        j = (*outftp & 0xf0)>>4;      

/* 始めにハイニブルから一時記憶する */ 

        if ( j > 7 ) 
          j |= 0xfff0; 
        break; 
     case 2; 
        j = *outftp++;      

/* バイト全体を一時記憶 */ 

        if ( j > 127 ) 
          j |= 0xff00; 
        break; 
     case 4; 
      j = *outftp++;     

/* ロウバイトを始めに一時記憶する */ 

      j |= ((int)(*outftp++))<<8;  

/* ハイバイトとORをとって一時記憶する */; 

      break; 
  } 
 } 
 else       

/* バイトの途中から始まる場合 */ 

 { 
  j = ((*outftp++) & 0x0f);     

/* 始めにロウニブルから一時記憶する */ 

  swith (i) 
  { 
     case 1; 
      if ( j > 7 ) 
        j |= 0xfff0;     

/* 符号拡張 */ 

      break; 
     case 2; 
      j <<= 4;                        

/* ニブルを繰り上げる */ 

      j |= (*outftp++ & 0xf0)>>4;      

/* ハイニブルからロウニブルを取得する */ 

      if ( j > 127 ) 
        j |= 0xff00;     

/* 符号拡張 */ 

      break; 
     case 4; 
      j <<= 4                              /* ニブル3までシフトする */ 
      j |= (*outftp & 0xf0)>>4;             

/* ニブル4を追加してロウバイトを完成させる */ 

      j |= ((int)(*outftp & 0x0f))<<12;   

/* ニブル1を追加する */ 

      j |= (*outftp & 0xf0)<<4;             

/* ニブル2を追加する */ 

      break; 
  } 
 } 
 ftpn += i; 
#ifdef NOT̲80x86 
 if ( i == 4 ) 
     swab( (char *) j, (char *) j, 2);      

/* Z 8002形式に変換する */ 

#endif 
 return ( (int) j ); 

 
/************************************************************************************ 
unpackit() 関数 

53 

T 7335:2005  

 
入力: 
 src 

パックされたデータを含んでいる入力バッファへのポインタ。 

 dst 

出力バッファへのポインタ。 

 n 

アンパックする整数の数。 

出力: 
 出力バッファ(dst)の中のアンパックされたデータ。アンパックされたバイト数を返す。 
グローバル変数: 
 なし 
スタティック変数: 
 outftp 
 
パックされたデータをsrcからdstへアンパックする。unpackit()関数を呼び出す。 
 
************************************************************************************/ 
int  unpackit(dst, src, n) 
 int *dst; 
 unsigned char *src; 
 int n; 

 int state=16, size=4; 
 int i, dr=0, d2r=0, dr1=0, x; 
  
 outftp = src; 
 ftpn = 0; 
 for (i = 0; i < n; i++) 
 { 
  AGAIN; 
  x=unpack(size); 
  switch(state) 
  { 
    case 16; 
      if ( x == 0x8000 ) 
      { 
         state = 8; 
         size = 2; 
         goto AGAIN; 
      } 
      dst[i]=x; 
      if (i) 
         dr1 = x-dst{i-1}; 
      else 
         dr1 = x; 
      break; 
    case 8; 
      if ( (x & 0xff) == 0x80 ) 
      { 
         state = 4; 
         size = 1; 
         goto AGAIN; 
      } 
      if ( (x & 0xff) == 0x81 ) 
      { 
         state = 16; 
         size = 4; 
         goto AGAIN; 

54 

T 7335:2005  

      } 
      dr = x; 
      if (i) 
         dst[i] = dst[i-1]+dr; 
      else 
         dst[i] = dr; 
      dr1 = dr; 
      break; 
    case 4; 
      if ( (x & 0x0f) == 0x8 ) 
      { 
         state = 8; 
         size = 2; 
         goto AGAIN; 
      } 
      d2r = x; 
      dr = dr1+d2r; 
      dst[i] = dst[i-1]+dr; 
      dr1 = dr; 
      break; 
  } 
2 } 
return( outftp-src ); 

55 

T 7335:2005  

附属書C(参考)CRCの計算 

この附属書は,本体及び附属書(規定)に関連する事柄を補足するもので,規定の一部ではない。 

次は,CRC計算のアルゴリズムが示されているサブルーチンである。 

/************************************************************************************* 

CRC16 ‒ 16 bit CRC 
CCITT CRC-16 Cyclical Redundancy Check 
polynomial: X^16 + X^12 + X^5 + 1 
(XMODEMコミュケーションプロトコルで使用) 

*************************************************************************************/ 
union̲crc { 
 unsigned char b[2];  

/* 高位バイトは b[1], 低位バイトは b[0] */ 

 unsigned w; 

/* 値全体 */ 

 }; 
 
unsigned crc16(len, start̲crc, p) 
int len; 

/* pの長さ */ 

unsigned start̲crc;  

/* 開始の値,初期値はゼロ */ 

unsigned char *p; 

/* pointer to memory of which to calculate crc */ 


 union̲crc crc; 
 int i; 
 crc.w = start̲crc;  

/* CRC開始の値をセット */ 

 
 while (len-- > 0) 
 { 
  crc.b[1] ~= *p++;  

/* xor value of next byte into HIGH byte of CRC */ 

/* これは,80x86プロセッセー用 */ 

  for(i=0;i<8;++i) 
     if (crc.w & 0x8000) 

/* 高位ビットセット?? */ 

     { 
       crc.w <<= 1; 

/* 左へ一つシフト */ 

       crc.w  ^=0x01021 

/* XOR値=0x1021 */ 

     } 
     else 
     { 
       crc.w <<= 1; 

/* 左へ一つシフト */ 

     } 
 } 
 return (crc.w); 

 
次のコード部は,“Hello World!”に対するCRC値として“0cd3”(16進数)を印刷する。 
 char hello[] = “Hello World!”; 
 unsigned crc; 
 crc = crc16(strlen(hello), 0, hello); 
 printf(“%04x¥n”,crc); 

background image

56 

T 7335:2005  

附属書1(参考)JISと対応する国際規格との対比表 

JIS T 7335:2005 眼鏡レンズ製造システム間の情報交換 

ISO 16284:2001,Ophthalmic optics -- Information interchange for ophthalmic 
optical equipment 

(Ⅰ) JISの規定 

(Ⅱ) 国際
規格番号 

(Ⅲ) 国際規格の規定 

(Ⅳ) JISと国際規格との技術的差異の項目
ごとの評価及びその内容 
 表示箇所:本体,附属書 
 表示方法:点線の下線又は実線の側線 

(Ⅴ) JISと国際規格との技術的差異の
理由及び今後の対策 

項目 
番号 

内容 

項目 
番号 

内容 

項目ごと
の評価 

技術的差異の内容 

1. 適用範囲 

眼鏡レンズの製造機器とコン
ピュータシステムとの情報交
換の方法についての規定 

ISO 16284 1 

JISと同じ 

IDT 

2. 引用規格 

JIS T 7330 

ISO 13666:1998 
 

3. 定義 

ISOの52の用語を翻訳 

JISと同じ 

IDT 

4. 概要 

JISと同じ 

IDT 

5. 要求事項 

 
レコード 
基準点レコード 
基準点の識別子 
 
基準点レコード 
ジェネレータレコード 
計測レコード 
計測データ 
半径データ 
等間隔でない半径データ 
ZFMT 
“R”レコード 


5.1 
5.2 
表2 
 
表3 
5.3 
5.4 
5.4.1 
5.4.2 
5.4.3 
5.4.4 
5.4.5 

JISとほぼ同じ 
  
 
ISOに規定なし 
 
ISOに規定なし 

IDT 
IDT 
IDT 
MOD/追加 
 
MOD/追加 
IDT 
IDT 
IDT 
IDT 
IDT 
IDT 
IDT 

  
 
 
PMを追加 
 
FBPMIN,FBPMUPを追加 

  
  
  
累進マークの位置決めに必要。次回
ISO開催時に追加を申し入れる。 
累進マークの位置決めに必要。次回
ISO開催時に追加を申し入れる。 

5

6

T

 7

3

3

5

2

0

0

5

background image

57 

T 7335:2005  

(Ⅰ) JISの規定 

(Ⅱ) 国際
規格番号 

(Ⅲ) 国際規格の規定 

(Ⅳ) JISと国際規格との技術的差異の項目
ごとの評価及びその内容 
 表示箇所:本体,附属書 
 表示方法:点線の下線又は実線の側線 

(Ⅴ) JISと国際規格との技術的差異の
理由及び今後の対策 

項目 
番号 

内容 

項目 
番号 

内容 

項目ごと
の評価 

技術的差異の内容 

“Z”レコード 
“A”又はZAレコード 
フレーム測定 
計測データ 
眼の方向 
データ転送時の眼の方向 
ホスト及び装置 
計測データの例 
ASCII絶対値フォーマット 
2進絶対値フォーマット 
 
 
2進差分フォーマット 
パックト2進フォーマット 
 
 
 
 
 
 
 
2進フォーマットのための特
別な注意点 
パケット 

5.4.6 
5.4.7 
5.4.8 
5.4.9 
5.4.10 
5.4.11 
5.4.12 
5.4.13 
5.4.14 
5.4.15 
 
 
5.4.16 
5.4.17 
 
 
 
 
 
 
 
5.4.18 
 
5.5 

 
 
 
 
 
 
 
 
 
ISOに規定なし 

IDT 
IDT 
IDT 
IDT 
IDT 
IDT 
IDT 
IDT 
IDT 
MOD/追加 
 
 
IDT 
MOD/変更 
 
 
 
 
 
 
 
IDT 
 
IDT 

 
 
 
 
 
 
 
 
 
 
 
 
 
原文16ページ31行目の第
3半径の値は25.62ではな
く25.97であり,第4半径
との差は1.23となる。1.23
では1.28より小さいため,
前後の文章に矛盾を生じ
させないように,第4半径
の値を27.70とした。 

 
 
 
 
 
 
 
 
 
1 000分の1ミリメートル単位で測
定するフレームトレーサあり。次回
ISO開催時に追加を申し入れる。 

6. セション 

JISと同じ 

IDT 

 
 
 

5

7

T

 7

3

3

5

2

0

0

5

background image

58 

T 7335:2005  

(Ⅰ) JISの規定 

(Ⅱ) 国際
規格番号 

(Ⅲ) 国際規格の規定 

(Ⅳ) JISと国際規格との技術的差異の項目
ごとの評価及びその内容 
 表示箇所:本体,附属書 
 表示方法:点線の下線又は実線の側線 

(Ⅴ) JISと国際規格との技術的差異の
理由及び今後の対策 

項目 
番号 

内容 

項目 
番号 

内容 

項目ごと
の評価 

技術的差異の内容 

7. その他の要
求事項 
 
7.3 

 
RS−233C 通信パラメタ 
オペレータメッセージ 
一時的な装置タイプの変更 

 
7.1 
7.2 

JISとほぼ同じ 
 
 
ISOに規定なし 

IDT 
IDT 
IDT 
MOD/追加 

 
 
 
ホストからの起動への対
応を追加 

 
 
 
ホスト起動のシステムあり。次回
ISO開催時に追加を申し入れる。 

附属書A 
 

装置レコード 

A.1 

JISと同じ 

IDT 

レコードラベ
ル 

装置レコード 

表A.1 ISOに規定なし 

MOD/追加 
 
MOD/追加 
 
 
MOD/追加 
 
 
MOD/追加 
 
 
MOD/追加 
 
 
MOD/追加 
MOD/変更 
 
 
MOD/追加 

FBPMIN,FBPMUPを追加 
 
FPDを追加 
 
 
FPINBを追加 
 
 
GRVDPを追加 
 
 
GRVWDを追加 
 
 
LTYPEを追加 
POLISHを変更 
 
 
TRCEYEを追加 

累進マークの位置決めに必要。次回
ISO開催時に追加を申し入れる。 
玉形中心間距離を必要なシステム
あり。次回ISO開催時に追加を申
し入れる。 
前面面取幅を指定可能なシステム
あり。次回ISO開催時に追加を申
し入れる。 
溝掘りの深さを指定可能なシステ
ムあり。次回ISO開催時に追加を
申し入れる。 
溝掘りの幅を指定可能なシステム
あり。次回ISO開催時に追加を申
し入れる。 
2002年OMA総会での申入れ事項 
面取部だけの鏡面加工を指定可能
なシステムあり。次回ISO開催時
に追加を申し入れる。 
計測した眼の方向を指定するシス
テムあり。次回ISO開催時に追加
を申し入れる。 

5

8

T

 7

3

3

5

2

0

0

5

background image

59 

T 7335:2005  

(Ⅰ) JISの規定 

(Ⅱ) 国際
規格番号 

(Ⅲ) 国際規格の規定 

(Ⅳ) JISと国際規格との技術的差異の項目
ごとの評価及びその内容 
 表示箇所:本体,附属書 
 表示方法:点線の下線又は実線の側線 

(Ⅴ) JISと国際規格との技術的差異の
理由及び今後の対策 

項目 
番号 

内容 

項目 
番号 

内容 

項目ごと
の評価 

技術的差異の内容 

インタフェイスレコード 

A.2 

JISと同じ 

IDT 

インタフェイスレコード 

表A.2 JISと同じ 

ISOに規定なし 
 
 
 
JISと同じ 

IDT 
MOD/追加 
 
MOD/追加 
 
MOD/追加 

 
CMDを追加 
 
TRCTYPEを追加 
 
TRCUNITを追加 

 
ホスト起動への対応。次回ISO開催
時に追加を申し入れる。 
ホスト起動への対応。次回ISO開催
時に追加を申し入れる。 
1 000分の1ミリメートル単位への
対応。次回ISO開催時に追加を申し
入れる。 

リクエストタイプ (リテラル
データ) 

表A.3  

IDT 

装置タイプ 

表A.4 ISOに規定なし 

MOD/追加 

HSTを追加 

ホスト起動への対応。次回ISO開催
時に追加を申し入れる。 

プリセットレコード 

A.3 

JISと同じ 

IDT 

状態コード 

A.4 

JISと同じ 

IDT 

附属書B 

パックト2進フォーマットの
例 

JISと同じ 

IDT 

附属書C 

CRC計算 

JISと同じ 

IDT 

JISと国際規格との対応の程度の全体評価:MOD 

 
備考1. 項目ごとの評価欄の記号の意味は,次のとおりである。 

  ― IDT……………… 技術的差異がない。 
  ― MOD/追加……… 国際規格にない規定項目又は規定内容を追加している。 
  ― MOD/変更……… 国際規格の規定内容を変更している。 

2. JISと国際規格との対応の程度の全体評価欄の記号の意味は,次のとおりである。 

  ― MOD…………… 国際規格を修正している。 

5

9

T

 7

3

3

5

2

0

0

5