JP5202271B2 - スレーブ装置及びプログラム - Google Patents
スレーブ装置及びプログラム Download PDFInfo
- Publication number
- JP5202271B2 JP5202271B2 JP2008317789A JP2008317789A JP5202271B2 JP 5202271 B2 JP5202271 B2 JP 5202271B2 JP 2008317789 A JP2008317789 A JP 2008317789A JP 2008317789 A JP2008317789 A JP 2008317789A JP 5202271 B2 JP5202271 B2 JP 5202271B2
- Authority
- JP
- Japan
- Prior art keywords
- slave
- operation cycle
- master
- cycle
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Numerical Control (AREA)
Description
また、スレーブの動作周期とは、スレーブがマスタからの指令を受信してモータを駆動し、逆に応答情報をマスタに送信するまでの一連の動作に要する時間を指す。
なお以降の記述では、基本的に位置指令時の動作についてのみ述べ、現在位置を応答するときの動作は、データを送受する方向が異なる以外は位置指令時と同様の動作となるため説明を省略する。
そのときの動作を説明するにあたり、スレーブの一般的な構成を図4に示す。
また、スレーブ500は、制御対象物であるモータ300に接続されている。
スレーブ500において、502は、スレーブの動作周期を制御する周期制御部である。
また、503は、タイマ部である。
504は、ネットワーク400側から来る周期信号を監視して適宜スレーブの動作周期をリセットする周期リセット部である。
505は、タイマ部503から受け取るタイマ値からスレーブの周期を検出して他の処理部に伝える周期検出部である。
507は、ネットワーク側から来る周期信号を受信したり、スレーブとネットワーク間のデータの送受を行うネットワーク通信部である。
509は、ネットワーク通信部6から受信したデータを元にモータ300を駆動するモータ制御部である。
ネットワーク通信部507は受信した位置指令をスレーブの動作周期に同期してモータ制御部509に送り、これを受け取ったモータ制御部509は、その情報を元にモータ300を駆動する。
また、タイマ部503は、タイマ値を周期検出部505へ伝え、周期検出部505は、タイマ値を参照して、予めスレーブの動作周期として定めた時間が経過するごとに周期の開始タイミングを示す周期信号をモータ制御部509へ送る。
一方で、ネットワーク通信部507は、マスタの動作周期が一定時間経過するごとにマスタ200から周期リセット信号を受信し、これを周期制御部502内部の周期リセット部504に送る。
周期リセット部504は、周期リセット信号を受信したら周期検出部505にリセットするように指令を与え、これを受信した周期検出部505は、それまで自身で管理していたスレーブ500の動作周期の開始タイミングをリセットする。
ただし、この周期リセットは、マスタ200とスレーブ500の動作周期が一致していないシステムにおいては、マスタ200の動作周期とスレーブの動作周期が一致するタイミングでのみリセットすることが考えられる。
右方向が時刻の経過を表しており、マスタXの行はマスタ200の動作周期での位置指令、つまり図4におけるネットワーク通信部507がマスタ200の動作周期で位置指令を受信するタイミングおよび値の変化の例を示している。
また、スレーブYの行はスレーブ500の動作周期での位置指令、つまり図4におけるモータ制御部509がスレーブ500の動作周期で、ネットワーク通信部507から位置指令を受信するタイミングおよび値の変化の例を示している。
このスレーブYの位置指令の値は、スレーブの動作周期の開始時刻(周期ごとの四角の枠の左側の縦線の位置)の時点における、マスタXの動作周期での位置指令を参照したものである。
また、ΔTはスレーブの周期間における位置指令の差分を示している。
故に周期ごとのモータの回転数に差が出てしまい、回転ムラが発生してしまうといった課題がある。
所定のマスタ動作周期で動作するマスタ装置に接続され、前記マスタ動作周期と異なるスレーブ動作周期で所定の制御対象物の制御を行うスレーブ装置であって、
前記マスタ装置がマスタ動作周期単位で生成した前記制御対象物の制御のための数値である制御指令値を受信する受信部と、
前記マスタ動作周期と前記スレーブ動作周期とが一致するタイミングからの経過時間に基づいて、スレーブ動作周期ごとに、前記マスタ動作周期単位の制御指令値をスレーブ動作周期単位の数値に補正する指令値補正部と、
スレーブ動作周期ごとに、前記指令値補正部により補正された補正値を用いて前記制御対象物の制御を行う制御部とを有することを特徴とする。
本実施の形態に係るスレーブ装置の構成例を図1に示す。
マスタ200とスレーブ100は、動作周期が異なる。マスタ200の動作周期をマスタ動作周期といい、スレーブ100の動作周期をスレーブ動作周期という。
また、スレーブ100は、制御対象物であるモータ300に接続されている。
103は、タイマ部である。
104は、ネットワーク400側から来る周期信号を監視して適宜スレーブ100の動作周期をリセットする周期リセット部である。
105は、タイマ部103から受け取るタイマ値からスレーブの周期を検出して他の処理部に伝える周期検出部である。
106は、周期検出部105から受信する周期信号の回数をカウントして他の処理部に伝える周期カウンタ部である。
ネットワーク通信部107は、マスタ200がマスタ動作周期単位で生成したモータ300の制御のための数値である位置指令(制御指令値)を受信する。ネットワーク通信部107は、受信部及び送信部の例である。
データ補正部108は、マスタ動作周期とスレーブ動作周期とが一致するタイミングからの経過時間に基づいて、スレーブ動作周期ごとに、マスタ動作周期単位の位置指令をスレーブ動作周期単位の位置指令に補正する。データ補正部108は、前後のスレーブ動作周期間の補正値の差が略一定となる数値にて各スレーブ動作周期の補正値を算出する。
また、データ補正部108は、モータ300の現在の状態を示す数値であるモータの現在位置(状態値)をマスタ動作周期に適合するように補正する。つまり、データ補正部108は、マスタ動作周期とスレーブ動作周期とが一致するタイミングからの経過時間に基づいて、マスタ動作周期ごとに、スレーブ動作周期単位で取得されたモータの現在位置をマスタ動作周期単位の数値に補正する。データ補正部108は、前後のスレーブ動作周期間の差が略一定となる現在位置の値から各マスタ動作周期の補正値を算出する。
データ補正部108の補正値算出手順は後述する。
データ補正部108は、指令値補正部及び状態値補正値の例である。
モータ制御部109は、スレーブ動作周期ごとに、データ補正部108により補正された補正値を用いて制御対象物であるモータ300の制御を行う。
モータ制御部109は、制御部の例である。
ネットワーク通信部107は、受信した位置指令をデータ補正部108に送り、データ補正部108は位置指令を現在のスレーブ動作周期で最適な値に補正し、これをモータ制御部109に送る。
データ補正部108から補正値を受け取ったモータ制御部109は、補正値を元にモータ300を駆動する。
これらネットワーク通信部107、データ補正部108およびモータ制御部109の間の通信はスレーブの動作周期に同期して行われる。
タイマ部103は、タイマ値を周期検出部105へ伝え、周期検出部105は、タイマ値を参照して、予めスレーブ100の動作周期として定めた時間が経過するごとに周期の開始タイミングを示す周期信号を周期カウンタ部106、データ補正部108、およびモータ制御部109へ送る。
周期カウンタ部106は、周期の数をカウントする。
ここで、カウンタ値の上限をC_maxとし、C_maxの次は0としてカウントを繰り返す。
なお、C_maxの値は、マスタ200とスレーブ100の動作周期が一致するタイミングから、次に一致するタイミングまでに要するスレーブ動作周期の周期数から1を引いたものである。C_maxの値の詳細は、図2を参照して後述する。
この補正方法については、後ほど図2を用いて説明する。
一方で、ネットワーク通信部107は、マスタの動作周期が一定時間経過するごとにマスタ200から周期リセット信号を受信し、これを周期制御部102内部の周期リセット部104に送る。
周期リセット部104は、マスタ200とスレーブ100の動作周期が一致するタイミングで周期リセット信号を受信したときのみ、周期検出部105および周期カウンタ部に指令を与え、これを受信した周期検出部105は、それまで自身で管理していたスレーブの動作周期の開始タイミングをリセットし、また周期カウンタ部106はカウンタ値を0にリセットする。
データ補正部108では、マスタ200とスレーブ100の動作周期の開始時刻が一致する時点を基準として補正を行う。そのイメージを図2に示す。
図2において、TMはマスタの動作周期である。
TSはスレーブの動作周期である。
T_LCMは、TMとTSが一致する周期、つまりTMとTSの最小公倍数となる周期である。
また、TMおよびTSがそれぞれT_LCMまでに必要な周期数をそれぞれNM,NSとした場合、T_LCM=TM×NM=TS×NSの関係が成り立つ。
図2では、NM=4、NS=9のときの例を示している。
マスタ200におけるT1からT2までの周期の番号をX_k,X_k+1,X_k+2...X_k+mで表しており、各周期における位置指令の値をM_k,M_k+1,M_k+2...M_k+mで表す。
先にも述べたとおり、図2はNM=4であるときの例を示しているため、m=3となる。
また、X_k−1はX_kの前の周期の番号を示している。
図2は、NS=9であるときの例を示しているため、n=8となる。
なお、先の図1の説明にあった周期カウンタ部106でのカウンタの上限C_maxは上記nと等しい。
位置指令の補正値S_jは、スレーブ動作周期Y_jにおける基準値BS_jと調整値HS_jから求められ、S_j=BS_j+HS_jの関係式が成り立つものとする。
例えば、図2において、補正値S_l+1の基準値BS_l+1は、位置指令M_k−1である(最新の位置指令M_iはM_kであり、その1周期前の位置指令はM_k−1である)。
あるスレーブ動作周期Y_jでの位置指令の調整値HS_jは、スレーブ動作周期Y_jの開始時刻までにマスタ動作周期で受信した最新の位置指令M_i(同時進行マスタ動作周期X_iの位置指令)と、その1周期前の位置指令の値M_i−1、および補正変数PT_jから算出する。
関係式は、HS_j=(M_i−M_i−1)×PT_jとする。
よって、PT_j=(Ys_j−Xs_i)/TMで表される。
S_l+1=M_k−1+(M_k−M_k−1)×(Ys_l+1−Xs_k)/TM
S_l+2=M_k−1+(M_k−M_k−1)×(Ys_l+2−Xs_k)/TM
S_l+3=M_k+(M_k+1−M_k)×(Ys_l+3−Xs_k+1)/TM
S_l+4=M_k+(M_k+1−M_k)×(Ys_l+4−Xs_k+1)/TM
S_l+5=M_k+1+(M_k+2−M_k+1)×(Ys_l+5−Xs_k+2)/TM
S_l+6=M_k+1+(M_k+2−M_k+1)×(Ys_l+6−Xs_k+2)/TM
S_l+7=M_k+2+(M_k+3−M_k+2)×(Ys_l+7−Xs_k+3)/TM
S_l+8=M_k+2+(M_k+3−M_k+2)×(Ys_l+8−Xs_k+3)/TM
S_l+1=M_k−1+(M_k−M_k−1)×4/9
S_l+2=M_k−1+(M_k−M_k−1)×8/9
S_l+3=M_k+(M_k+1−M_k)×3/9
S_l+4=M_k+(M_k+1−M_k)×7/9
S_l+5=M_k+1+(M_k+2−M_k+1)×2/9
S_l+6=M_k+1+(M_k+2−M_k+1)×6/9
S_l+7=M_k+2+(M_k+3−M_k+2)×1/9
S_l+8=M_k+2+(M_k+3−M_k+2)×5/9
T_LCMの時間を1で表したとき、Ys_l+1=4/36,Xs_k=0/36,TM=9/36であるため、(Ys_l+1−Xs_k)/TM=(4/36−0/36)/9/36=4/9となる。
他のPT_jについても同様に求めることが可能である。
また、スレーブYの行はスレーブ100の動作周期での位置指令、つまり図1におけるモータ制御部109がスレーブ100の動作周期で、データ補正部108から位置指令を受信するタイミングおよび値の変化の例を示している。
また、ΔTはスレーブの動作周期間における位置指令の差分を示している。
故に周期ごとのモータの回転数に差が出ず、回転ムラが発生しない。
なお、図3では、スレーブYの値を小数点以下は省略して表記しているので、一部スレーブYとΔTの値が完全には一致していない箇所があるが、ΔTの値が一定であることには変わりない。
また、モータの回転ムラを回避することができるので、モータの消費電力を抑えることができ、また、モータを円滑に駆動させることができるので、モータの寿命を長くすることができる。
つまり、データ補正部108は、マスタ動作周期とスレーブ動作周期とが一致するタイミングからの経過時間に基づいて、マスタ動作周期ごとに、スレーブ動作周期単位で取得されたモータの現在位置をマスタ動作周期単位の数値に補正する。
マスタ動作周期単位の補正値の具体的な算出方法は、以下の通りである。
M_k=S_l−1+(S_l−S_l−1)×(Xs_k−Ys_l)/TM
M_k+1=S_l+1+(S_l+2−S_l+1)×(Xs_k+1−Ys_l+2)/TM
M_k+2=S_l+3+(S_l+4−S_l+3)×(Xs_k+2−Ys_l+4)/TM
M_k+3=S_l+5+(S_l+6−S_l+5)×(Xs_k+3−Ys_l+6)/TM
M_k+1=S_l+1+(S_l+2−S_l+1)×1/4
M_k+2=S_l+3+(S_l+4−S_l+3)×2/4
M_k+3=S_l+5+(S_l+6−S_l+5)×3/4
図6は、本実施の形態に示すスレーブ装置100のハードウェア資源の一例を示す図である。
なお、図6の構成は、あくまでもスレーブ装置100のハードウェア構成の一例を示すものであり、スレーブ装置100のハードウェア構成は図6に記載の構成に限らず、他の構成であってもよい。
CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード915、キーボード902、マウス903、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901などは、出力装置の一例である。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
スレーブ装置100の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
Claims (4)
- 所定のマスタ動作周期で動作するマスタ装置に接続され、前記マスタ動作周期と異なるスレーブ動作周期で所定の制御対象物の制御を行うスレーブ装置であって、
前記マスタ装置がマスタ動作周期単位で生成した前記制御対象物の制御のための数値である制御指令値を受信する受信部と、
前記マスタ動作周期と前記スレーブ動作周期とが一致するタイミングからの経過時間に基づいて、スレーブ動作周期ごとに、前記マスタ動作周期単位の制御指令値をスレーブ動作周期単位の数値に補正する指令値補正部と、
スレーブ動作周期ごとに、前記指令値補正部により補正された補正値を用いて前記制御対象物の制御を行う制御部とを有し、
前記指令値補正部は、
スレーブ動作周期Y_jごとに、スレーブ動作周期Y_jの開始時刻Ys_jと、スレーブ動作周期Y_jの開始時刻Ys_jよりも前に開始しており当該スレーブ動作周期Y_jと少なくとも部分的に同時進行している同時進行マスタ動作周期X_iの開始時刻Xs_iと、前記同時進行マスタ動作周期X_iにおける制御指令値M_iと、前記同時進行マスタ動作周期X_iの1つ前のマスタ動作周期における制御指令値M_i−1と、マスタ動作周期の周期時間TMとに基づき、
スレーブ動作周期Y_jごとに、
S_j=M_i−1+{(M_i−M_i−1)×(Ys_j−Xs_i)/TM}により、
各スレーブ動作周期の補正値S_jを算出することを特徴とするスレーブ装置。 - 前記指令値補正部は、
前後のスレーブ動作周期間の補正値の差が略一定となる数値にて各スレーブ動作周期の補正値を算出することを特徴とする請求項1に記載のスレーブ装置。 - 前記スレーブ装置は、
前記制御対象物としてモータを制御するサーボアンプであり、
前記受信部は、
モーションコントローラであるマスタ装置が生成した前記モータの位置を指示する制御指令値を受信し、
前記制御部は、
スレーブ動作周期ごとに、前記指令値補正部により補正された補正値を用いて前記モータの位置制御を行うことを特徴とする請求項1に記載のスレーブ装置。 - コンピュータを、請求項1に記載されたスレーブ装置として機能させることを特徴とするプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008317789A JP5202271B2 (ja) | 2008-12-15 | 2008-12-15 | スレーブ装置及びプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008317789A JP5202271B2 (ja) | 2008-12-15 | 2008-12-15 | スレーブ装置及びプログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2010140372A JP2010140372A (ja) | 2010-06-24 |
| JP5202271B2 true JP5202271B2 (ja) | 2013-06-05 |
Family
ID=42350447
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008317789A Active JP5202271B2 (ja) | 2008-12-15 | 2008-12-15 | スレーブ装置及びプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5202271B2 (ja) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6060384B2 (ja) * | 2013-03-19 | 2017-01-18 | パナソニックIpマネジメント株式会社 | モータ駆動装置 |
| JP6594268B2 (ja) * | 2016-07-25 | 2019-10-23 | 三菱電機株式会社 | モーション制御システム |
| JP7617050B2 (ja) * | 2022-01-25 | 2025-01-17 | 株式会社日立製作所 | 機器の制御装置、制御システム、及び制御方法 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05333931A (ja) * | 1992-05-28 | 1993-12-17 | Yokogawa Electric Corp | ロボット制御装置 |
| JP3988255B2 (ja) * | 1998-05-20 | 2007-10-10 | 株式会社安川電機 | 数値制御装置における位置指令方法および装置 |
| JP2006236243A (ja) * | 2005-02-28 | 2006-09-07 | Yaskawa Electric Corp | モーションコントロールシステムとその同期方法 |
-
2008
- 2008-12-15 JP JP2008317789A patent/JP5202271B2/ja active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2010140372A (ja) | 2010-06-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7711918B2 (en) | Apparatus and method for operating flash memory according to priority order | |
| US10632615B2 (en) | Servo driving method, apparatus, and robot thereof | |
| US9454505B2 (en) | Chip select (‘CS’) multiplication in a serial peripheral interface (‘SPI’) system | |
| US9389937B2 (en) | Managing faulty memory pages in a computing system | |
| US9436388B2 (en) | Memory access alignment in a double data rate (‘DDR’) system | |
| US9880607B2 (en) | Dynamically optimizing bus frequency of an inter-integrated circuit (‘I2C’) bus | |
| US7900096B2 (en) | Freeing a serial bus hang condition by utilizing distributed hang timers | |
| JP5202271B2 (ja) | スレーブ装置及びプログラム | |
| US7463993B2 (en) | Adaptive thermal-based frequency-bounds control | |
| US20150118017A1 (en) | Electronic device and fan controlling method | |
| CN111168688A (zh) | 一种机器人动作的回放方法及装置 | |
| US11599169B2 (en) | System and method of utilizing fans with information handling systems | |
| US20130126150A1 (en) | Fan control system and method | |
| US9043586B2 (en) | Memory training results corresponding to a plurality of memory modules | |
| JP5371569B2 (ja) | データ処理装置及び制御方法及びプログラム | |
| KR20110026578A (ko) | 시스템 메모리의 에러 보정 장치 및 방법 | |
| JPH06309265A (ja) | 情報処理装置におけるドライバプログラムの動的選択方法 | |
| US20090164765A1 (en) | Determining Thermal Characteristics Of Instruction Sets | |
| US20140189186A1 (en) | Memory bus attached input/output ('i/o') subsystem management in a computing system | |
| WO2019061875A1 (zh) | 一种电平转化器的时钟输入信号异常的处理方法 | |
| CN116302203A (zh) | 一种ras功能的配置方法、装置、电子设备和介质 | |
| WO2020003839A1 (ja) | 制御装置、制御装置の制御方法、情報処理プログラム、および記録媒体 | |
| JP7248044B2 (ja) | コントローラ、機器制御システム、時刻同期方法、および時刻同期プログラム | |
| JP6725243B2 (ja) | 応答制御装置及び応答制御方法、並びにコンピュータ・プログラム | |
| WO2015163219A1 (ja) | 制御装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110902 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121018 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121120 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121217 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130115 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130212 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5202271 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160222 Year of fee payment: 3 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |