JP2022118613A - Device and ID determination method - Google Patents
Device and ID determination method Download PDFInfo
- Publication number
- JP2022118613A JP2022118613A JP2021015263A JP2021015263A JP2022118613A JP 2022118613 A JP2022118613 A JP 2022118613A JP 2021015263 A JP2021015263 A JP 2021015263A JP 2021015263 A JP2021015263 A JP 2021015263A JP 2022118613 A JP2022118613 A JP 2022118613A
- Authority
- JP
- Japan
- Prior art keywords
- serial communication
- communication network
- slave
- slave device
- response
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 29
- 230000004044 response Effects 0.000 claims abstract description 80
- 238000004891 communication Methods 0.000 claims abstract description 62
- 238000005516 engineering process Methods 0.000 abstract description 2
- 239000007788 liquid Substances 0.000 description 83
- 239000000976 ink Substances 0.000 description 51
- 230000015654 memory Effects 0.000 description 34
- 230000006870 function Effects 0.000 description 28
- 238000011144 upstream manufacturing Methods 0.000 description 22
- 230000007246 mechanism Effects 0.000 description 21
- 230000005540 biological transmission Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 10
- 239000013256 coordination polymer Substances 0.000 description 9
- 230000002093 peripheral effect Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 238000003825 pressing Methods 0.000 description 5
- 101150079344 ACT4 gene Proteins 0.000 description 4
- HEFNNWSXXWATRW-UHFFFAOYSA-N Ibuprofen Chemical compound CC(C)CC1=CC=C(C(C)C(O)=O)C=C1 HEFNNWSXXWATRW-UHFFFAOYSA-N 0.000 description 4
- 101100056774 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ARP3 gene Proteins 0.000 description 4
- 230000003213 activating effect Effects 0.000 description 4
- 101150026261 ACT7 gene Proteins 0.000 description 3
- 101100434207 Arabidopsis thaliana ACT8 gene Proteins 0.000 description 3
- 101100434208 Arabidopsis thaliana ACT9 gene Proteins 0.000 description 3
- 102100031102 C-C motif chemokine 4 Human genes 0.000 description 3
- 101100490404 Dibothriocephalus dendriticus ACT6 gene Proteins 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 238000010438 heat treatment Methods 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 238000013021 overheating Methods 0.000 description 3
- 101150024393 ACT5 gene Proteins 0.000 description 2
- 101000908384 Bos taurus Dipeptidyl peptidase 4 Proteins 0.000 description 2
- 101100000858 Caenorhabditis elegans act-3 gene Proteins 0.000 description 2
- 102100026620 E3 ubiquitin ligase TRAF3IP2 Human genes 0.000 description 2
- 101710140859 E3 ubiquitin ligase TRAF3IP2 Proteins 0.000 description 2
- 101000777470 Mus musculus C-C motif chemokine 4 Proteins 0.000 description 2
- 101100492334 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ARP1 gene Proteins 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 101100215339 Arabidopsis thaliana ACT11 gene Proteins 0.000 description 1
- 101100215341 Arabidopsis thaliana ACT12 gene Proteins 0.000 description 1
- 101100054773 Caenorhabditis elegans act-2 gene Proteins 0.000 description 1
- 101100108071 Dictyostelium discoideum act10 gene Proteins 0.000 description 1
- 101100217138 Mus musculus Actr10 gene Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
Images
Abstract
Description
本発明の実施形態は、デバイスおよびID決定方法に関する。 Embodiments of the present invention relate to devices and ID determination methods.
複数の機器を接続する方式の1つとしてデイジーチェーンが知られている。例えば、1台のコントローラで複数の周辺機器を制御しようとする場合に、コントローラに半二重シリアル通信経路を介して周辺機器をマルチドロップ接続することにより、デイジーチェーンが形成される。一例として、インクジェットプリンタで使用される複数の周辺機器または基板等を1台のコントローラにより一括制御する用途が挙げられる。このような用途では、機器または基板の小型化により実装スペースが限られることが多い。このため、外来ノイズの影響を受けにくいシリアル通信規格、例えばRS485等に準拠した差動インタフェースがしばしば用いられる。 A daisy chain is known as one of methods for connecting a plurality of devices. For example, when one controller is intended to control a plurality of peripheral devices, a daisy chain is formed by multi-drop connecting the peripheral devices to the controller via a half-duplex serial communication path. One example is an application in which a single controller collectively controls a plurality of peripheral devices or substrates used in an inkjet printer. In such applications, mounting space is often limited due to the miniaturization of devices or substrates. For this reason, a differential interface conforming to a serial communication standard such as RS485, which is less susceptible to external noise, is often used.
ここで、1台のコントローラ(マスタデバイス)が制御対象の周辺機器等(スレーブデバイス)にコマンドを送信する場合、コマンドの宛先として各スレーブデバイスに割り付けられた固有のID(識別子、identification/identifier)を指定する必要がある。一般に、スレーブデバイスに固有のIDを割り付けるには、RS485等のシリアル通信規格に準拠したコマンド通信経路とは別に専用の通信経路を用意し、スレーブデバイスのメモリにIDを書き込む必要がある。 Here, when one controller (master device) transmits a command to a peripheral device to be controlled (slave device), a unique ID (identification/identifier) assigned to each slave device is used as the destination of the command. must be specified. Generally, in order to assign a unique ID to a slave device, it is necessary to prepare a dedicated communication path in addition to a command communication path conforming to a serial communication standard such as RS485 and write the ID to the memory of the slave device.
多数のスレーブデバイスを設置した後で、専用の通信経路を介して各スレーブデバイスにID書き込みを行う作業はきわめて煩雑である。一方で、各スレーブデバイスの設置前に個別にIDを書き込む場合、ユーザ等が各スレーブデバイスのIDを管理する必要があるとともに、識別シールを貼る作業のような追加コストも発生する。 After installing a large number of slave devices, it is extremely troublesome to write an ID to each slave device via a dedicated communication path. On the other hand, if the IDs are written individually before installation of each slave device, the user or the like needs to manage the ID of each slave device, and additional costs such as the task of attaching an identification sticker are incurred.
実施形態が解決しようとする課題は、シリアル通信ネットワークに接続されるデバイスへのID割当てを容易にする技術を提供することである。 A problem to be solved by the embodiments is to provide a technique for facilitating ID assignment to devices connected to a serial communication network.
実施形態によれば、シリアル通信ネットワークに接続可能なデバイスは、生成部と、取得部と、決定部と、を有する。生成部は、シリアル通信ネットワークにおいて使用可能なIDを用いて、シリアル通信ネットワークに接続された他デバイスへの応答要求を生成し、出力する。取得部は、当該応答要求に対する他デバイスからの応答に基づいて、シリアル通信ネットワークにおける上記使用可能なIDの割当状況に関する情報を取得する。決定部は、割当状況に関する情報をもとに自デバイスに割り当てるべきIDを決定する。 According to an embodiment, a device connectable to a serial communication network comprises a generator, an acquirer and a determiner. The generator uses an ID that can be used in the serial communication network to generate and output a response request to another device connected to the serial communication network. The acquisition unit acquires information about the assignment status of the usable IDs in the serial communication network based on the response from the other device to the response request. The decision unit decides an ID to be assigned to the own device based on the information about the assignment status.
以下、図面を参照して、一実施形態について説明する。なお、以降、説明済みの要素と同一または類似の要素には同一または類似の符号を付し、重複する説明については基本的に省略する。例えば、複数の同一または類似の要素が存在する場合に、各要素を区別せずに説明するために共通の符号を用いることがある。 An embodiment will be described below with reference to the drawings. Elements that are the same as or similar to elements that have already been explained are denoted by the same or similar reference numerals, and overlapping explanations are basically omitted. For example, when there are multiple identical or similar elements, common reference numerals may be used to describe each element without distinction.
[一実施形態]
(構成)
(1)システム
図1は、一実施形態に係るデバイスを含むシステム1000の一例を示す図である。このシステム1000は、1台のマスタデバイス300と、N台のスレーブデバイス101,102,103,104・・・(以下、総称して「スレーブデバイス100」とも言う)と、を含む。スレーブデバイス100は、マスタデバイス300に半二重シリアル通信経路CPを介してマルチドロップ接続される。システム1000は、通信ネットワークと言い換えることもできる。一実施形態に係るデバイスは、スレーブデバイス100として実現される。
[One embodiment]
(Constitution)
(1) System FIG. 1 is a diagram illustrating an example of a
マスタデバイス300は、スレーブデバイス100にコマンド(制御信号)を送信し、スレーブデバイス100の動作を制御し、またはスレーブデバイス100からの応答に基づいてスレーブデバイス100の状態を把握する。マスタデバイス300は、例えば、パーソナルコンピュータ、PLC(Programmable Logic Controller)、IoTゲートウェイ等により構成され得る。マスタデバイス300は、親機と言い換えることもできる。
The
スレーブデバイス100は、マスタデバイス300からコマンドを受信し、受信したコマンドに応じて動作し、またはマスタデバイス300に応答を送信する。スレーブデバイス100は、子機と言い換えることもできる。スレーブデバイス100は、例えば、インク循環式プリンタのインクジェットヘッドの各々に接続されるインク循環装置であり、マスタデバイス300としてのコントローラから受信したコマンドに基づき、インク循環装置に接続されたポンプまたはヒータ等を制御し得る。このようなインク循環装置については以下で説明する。
The
一実施形態では、スレーブデバイス100は、通常モード(第1動作モード)と疑似マスタモード(第2動作モード)とを含む複数の動作モードで動作可能に構成される。通常モードでは、スレーブデバイス100はスレーブデバイスとして動作する。疑似マスタモードでは、スレーブデバイス100は、疑似的にマスタデバイスとして動作し、半二重シリアル通信バス上にぶら下がる他のスレーブデバイス100をスキャンして、システム1000におけるIDの割当状況に関する情報を把握し、自デバイスに割り当てるべきIDを決定する。ここでは、スキャンとは、システム1000内で使用可能なIDを用いて他のスレーブデバイス100に応答要求を送信し、当該応答要求に対する応答の有無を判定することを言う。スキャンを含む疑似マスタモードの動作についても以下で詳細に説明する。
In one embodiment,
図1のようなシステム1000で半二重シリアル通信を行う場合、マスタデバイス300がスレーブデバイス100にコマンドを送信し、コマンドを受信したスレーブデバイス100がマスタデバイス300に応答することにより、双方向の通信が成立する。一対多の通信方式であるため、各スレーブデバイス100には固有のIDが割り当てられ、マスタデバイス300は、送信するコマンドに宛先スレーブデバイス100のID(宛先ID)を付加することによって、コマンドの宛先を指定する。したがって、システム1000内でIDは重複しないように管理される必要がある。
When performing half-duplex serial communication in the
図1では、マスタデバイス300に「ID=1」が割り当てられ、第1のスレーブデバイス101に「ID=2」、第2のスレーブデバイス102に「ID=3」、第3のスレーブデバイス103に「ID=4」、・・・第Nのスレーブデバイス104に「ID=N+1」が割り当てられている。マスタデバイス300は、ID=2,3,・・・N+1を用いることにより各スレーブデバイス100をコマンドの宛先として指定することができる。
In FIG. 1, "ID=1" is assigned to the
なお、コマンド通信が可能であれば必ずしもマスタデバイス300にIDが割り当てられる必要はない。それは、半二重シリアル通信バス上に、ひとつのマスタデバイス300が接続される状況を想定しているので、マスタデバイス300側で受信するコマンド形態に、マスタデバイス300のIDが不要な場合もあるからである。マスタデバイス300にIDが割り当てられない場合、第1のスレーブデバイス101に「ID=1」、第2のスレーブデバイス102に「ID=2」、・・・第Nのスレーブデバイス104に「ID=N」が割り当てられる。
Note that an ID does not necessarily need to be assigned to the
マスタデバイス300がコマンドを送信すると、コマンドはスレーブデバイス100間で次々にリレーされ、すべてのスレーブデバイス100により受信される。スレーブデバイス100は、固有のIDに基づいて、受信したコマンドが自デバイス宛てか否かを判別する。半二重シリアル通信では、マスタデバイス300は、送信が終わったら送信機能をいったん無効化し、受信機能を有効化して、スレーブデバイス100からの応答の受信を待つ。このように、スレーブデバイス100は、通常、自律的に送信を開始せず、自デバイス宛てのコマンドを受け取った場合にのみアクションを起こす。
When the
(2)スレーブデバイス
図2は、一実施形態に係るスレーブデバイス100の構成の一例を示す図である。
スレーブデバイス100は、MCU(Micro Controller Unit)110と、不揮発性メモリ120と、RS485トランシーバブロック130と、スイッチ140と、抵抗150と、を備える。MCU110、不揮発性メモリ120、RS485トランシーバブロック130、スイッチ140および抵抗150は、バス等を介して互いに接続される。
(2) Slave Device FIG. 2 is a diagram showing an example of the configuration of the
The
MCU110は、スレーブデバイス100の動作を統括的に制御するプロセッサの一例である。MCU110は、データ受信端子rxd、データ送信端子txdおよびチップセレクト端子selectを介してRS485トランシーバブロック130との間で信号を送受信する。MCU110は、RAM等の内蔵メモリを備え得る。MCU110は、あらかじめ決められたプログラム(ファームウェア等)を実行することにより後述する種々の機能を実現する。MCU110によって実現される機能のうちの一部は、ハードウェア回路により実現されるものであってもよい。この場合、MCU110は、ハードウェア回路により実行される機能を制御し得る。
The
不揮発性メモリ120は、例えば、SPI-ROM、EEPROM(登録商標)、FLASH等であり、スレーブデバイス100の種々の機能を実現するためのプログラムやデータを記憶する記憶媒体である。不揮発性メモリ120は、書き換え不可の不揮発性メモリと書き換え可能な不揮発性メモリとを含み得る。不揮発性メモリ120は、MCU110の内蔵の不揮発性メモリ部として実現されてもよい。一実施形態では、不揮発性メモリ120には、あらかじめ、スレーブデバイス100の動作に必要なプログラムとシステム予約パラメータとが書き込まれる。システム予約パラメータは、システム1000に関する予約パラメータであり、当該スレーブデバイス100に割り当てられたIDと、マスタデバイス300に接続可能なスレーブデバイス100の最大数N(以下、「最大接続台数N」とも言う)(例えば、「N=10」)と、を含む。出荷状態では、各スレーブデバイス100にはデフォルト設定のID(例えば、「ID=2」)が設定され得る。システム予約パラメータはまた、マスタデバイス300のIDを含み得る。
The
RS485トランシーバブロック130は、送信回路と、受信回路と、ケーブル端子と、を含み、RS485規格に準拠したケーブルを用いた半二重シリアル通信経路CPにより、マスタデバイス300および他のスレーブデバイス100との間で信号を送受信する。一実施形態では、半二重シリアル通信経路CPとして、容易に接続可能な形状を有するマイクロUSBケーブルが使用される。ただし、これは一例にすぎず、他の規格を用いた通信回路が使用されてもよい。
The
スイッチ140は、例えば、タクタイルスイッチ等の機械式スイッチであり、MCU110とGNDとの間に接続される。抵抗150は、いわゆるプルアップ抵抗であり、MCU110と図示しない電圧源との間に接続される。例えば、スイッチ140が開放された状態(OFF)では、抵抗150を介して電圧源からのHIGH信号がMCU110に入力され、スイッチ140がユーザ等により押下されると(ON)、MCU110にLOW信号が入力される。
The
一実施形態では、スレーブデバイス100の起動時(例えば、図示しない起動ボタンの押下による)に、スイッチ140がONであるかOFFであるかに応じて、スレーブデバイス100の動作モードが設定され得る。スイッチ140がOFFの状態でスレーブデバイス100が起動された場合、MCU110は、HIGH信号の入力を受けて、不揮発性メモリ120に記憶された第1プログラムを読み出し、通常の動作モード(「通常モード」と称する)で動作する。一方、スイッチ140を押しながらスレーブデバイス100を起動するなど、スイッチ140がONの状態でスレーブデバイス100が起動された場合、MCU110は、LOW信号の入力を受けて、不揮発性メモリ120に記憶された第2プログラムを読み出し、後述する「疑似マスタモード」で動作する。すなわち、スレーブデバイス100は、スイッチ140を介してユーザ等の操作を受けて、動作モードを切り替えることができる。スイッチ140は、スレーブデバイス100の設置時には不便とならず、また不用意に押されないように構成され得る。スイッチ140はまた、機械式スイッチに限定されず、NFC(Near Field Communication:近距離無線通信)カード等の非接触媒体を用いたスイッチ、または感光センサを用いた光学式スイッチ等で代替されてもよい。
In one embodiment, the operation mode of the
図3は、一実施形態に係るスレーブデバイス100の機能構成の一例を示す図である。
スレーブデバイス100は、制御部111と、記憶部121と、インタフェース部131と、を備える。
FIG. 3 is a diagram showing an example of the functional configuration of the
The
インタフェース部131は、外部から受け取った信号を制御部111に渡し、制御部111から受け取った信号を外部に出力する機能を有する。インタフェース部131は、上述のRS485トランシーバブロック130またはスイッチ140等により実現される。インタフェース部131は、受信部132と、送信部133と、入力部134と、出力部135と、を備え得る。受信部132は、例えばRS485トランシーバブロック130の受信回路によって実現され、マスタデバイス300または他のスレーブデバイス100からの信号を受信する機能を有する。送信部133は、例えばRS485トランシーバブロック130の送信回路によって実現され、マスタデバイス300または他のスレーブデバイス100に信号を送信する機能を有する。入力部134は、例えば、上述のスイッチ140や電圧源によって実現され、HIGHまたはLOWの入力信号を受け取って制御部111に渡す機能を有する。入力部134はまた、図示しない入力デバイス(キーパッド等)から操作入力を受け取る機能を有し得る。出力部135は、例えば図示しないディスプレイやスピーカ等によって実現され、ユーザ等に提示すべきデータを出力する機能を有する。
The
記憶部121は、上述した不揮発性メモリ120およびMCU110の協働により実現される。記憶部121は、プログラム記憶部122と、パラメータ記憶部123と、を備える。
The
プログラム記憶部122は、スレーブデバイス100を動作させるために実行される種々のプログラムを記憶する。例えば、プログラム記憶部122は、スレーブデバイス100の起動時に実行される起動プログラムと、スレーブデバイス100を通常モードで動作させる第1プログラムと、スレーブデバイス100を疑似マスタモードで動作させる第2プログラムと、を記憶する。
パラメータ記憶部123は、システム予約パラメータを記憶する。システム予約パラメータは、自デバイスのIDと、マスタデバイス300の最大接続台数Nと、マスタデバイス300のIDと、を含み得る。自デバイスのIDは、デフォルト設定されたIDまたは更新されたIDである。システム1000では、最大接続台数Nに応じた数のIDが使用される。したがって、最大接続台数Nは、システム(通信ネットワーク)1000において使用可能なIDに関する情報と言い換えることができる。
The
制御部111は、上述したMCU110および不揮発性メモリ120の協働により実現される。制御部111は、判別部112と、スレーブ機能部113と、生成部114と、取得部115と、決定部116と、更新部117と、を備える。
The
判別部112は、例えば、スレーブデバイス100の起動時にMCU110が起動プログラムを実行することによって実現される。判別部112は、入力部134から入力信号を受け取り、そのLOW/HIGH(またはスイッチ140のON/OFF)に応じて、スレーブデバイス100が通常モードで起動されたか疑似マスタモードで起動されたかを判別する。
The
スレーブ機能部113は、例えば、判別部112によって通常モードで起動されたと判別された場合に、MCU110が第1プログラムを実行することによって実現される。スレーブ機能部113は、通常モードにおいて通常のスレーブデバイスとしての機能全般を担う。
The
生成部114、取得部115、決定部116および更新部117は、例えば、判別部112によって疑似マスタモードで起動されたと判別された場合に、MCU110が第2プログラムを実行することによって実現される。
The
生成部114は、他のデバイスへの応答要求を生成し、生成した応答要求を送信部133に出力する機能を有する。応答要求は、宛先IDとスキャン用のコマンドとを含む。送信部133は、生成部114から受け取った応答要求を、シリアル通信経路CPを介して隣接するスレーブデバイス100に送信する。一実施形態では、生成部114は、まずパラメータ記憶部123に記憶されたシステム予約パラメータとしてマスタデバイス300の最大接続台数Nおよびマスタデバイス300のID(例えば「ID=1」)を読み出す。そして、生成部114は、マスタデバイス300のIDを除く、システム1000において使用可能なすべてのIDを宛先IDとして用いて、応答要求を生成する。
The
取得部115は、送信した応答要求に対する応答を監視し、システム1000における使用可能なIDの割当状況に関する情報を取得する。ここでは、割当状況に関する情報とは、各IDが、他のスレーブデバイス100のいずれかに割当て済みか、またはいずれのスレーブデバイス100にも割り当てられていない(未割当て)か、の情報を言う。一実施形態では、取得部115は、受信部132を介して他のスレーブデバイス100から応答が受信された場合には、当該応答に含まれる応答元ID(または送信した応答要求中の宛先ID)が割当て済みと判別し、応答が受信されない場合には送信した応答要求中の宛先IDが未割当てと判別することによって、上記割当状況に関する情報を取得する。
決定部116は、取得部115によって取得された割当状況に関する情報に基づき、他のスレーブデバイス100に割り当てられていない未割当てIDの中から、自デバイスに割り当てるべきIDを決定する。一例として、決定部116は、未割当てIDの中で最も数の小さいIDを、自デバイスに割り当てるべきIDとして決定する。
The determining
更新部117は、決定部116によって決定されたIDにより、パラメータ記憶部123に記憶された自デバイスのIDを更新する。更新部117はさらに、リブート要求を出力する。更新部117からリブート要求が出力されると、制御部111は、実行中のすべてのプログラムを終了し、スレーブデバイス100をリブート(再起動)させる。
The updating
(3)マスタデバイス
マスタデバイス300は、スレーブデバイス100と同様に、プロセッサと、メモリと、トランシーバブロックと、を備え得る。プロセッサは、マスタデバイス300の動作を統括的に制御する。プロセッサは、典型的にはCPU(Central Processing Unit)またはGPU(Graphics Processing Unit)であるが、MCU、FPGA(Field Programmable Gate Array)、DSP(Digital Signal Processor)、またはその他の汎用もしくは専用プロセッサ等であってもよい。メモリは、RAM等の揮発性メモリと、ROM等の不揮発性メモリと、を含む。マスタデバイス300の不揮発性メモリは、スレーブデバイス100の不揮発性メモリ120と同様、システム予約パラメータ(最大接続台数Nおよび自デバイスのIDを含む)を記憶し得る。
(3) Master Device The
(動作)
一実施形態に係るデバイスは、システム1000において後述するID決定動作(ID決定方法)を実行可能なスレーブデバイス100である。ID決定動作は、システム1000からマスタデバイス300が切断された状態で、新たに接続されたスレーブデバイス100を疑似マスタモードで起動させることによって実行される。なお、システム1000内のすべてのスレーブデバイス100がID決定動作を実行可能なスレーブデバイス100である必要はない。
(motion)
A device according to one embodiment is a
例えば、まず複数のスレーブデバイス100が電源OFFの状態でシステム1000内の所定の位置に設置される。設置後、マスタデバイス300は接続せずに、複数のスレーブデバイス100のうち2台のスレーブデバイス100が半二重シリアル通信経路CPを介して接続される。そして、接続された2台のスレーブデバイス100のうち、ID書換えを実行させたいスレーブデバイス100のスイッチ140を押しながら起動させることによって、当該スレーブデバイス100を疑似マスタモードで起動させる。もう1台のスレーブデバイス100は、通常モードで(スイッチ140を押さずに)起動される。
For example, first, a plurality of
疑似マスタモードで起動されたスレーブデバイス100(以下、「疑似マスタデバイス」とも言う)は、疑似的にマスタデバイスの振舞いをする。疑似マスタデバイスは、システム1000において使用可能なIDを用いて、半二重シリアルバス上にぶら下がるスレーブデバイス100を順次スキャンし、各IDの割当状況を把握する。疑似マスタデバイスは、空いているID(未割当てID)の中から自デバイスに割り当てるべきIDを決定する。疑似マスタデバイスは、あらかじめシステム予約された(例えばデフォルト設定)IDから、決定されたIDへと、不揮発性メモリ120に記憶された情報を書き換える処理を行う。疑似マスタデバイスは、書き換え後にリブートすることによって、ID書換え処理を完了する。すなわち、リブートされたスレーブデバイス100は、不揮発性メモリ120から書き換え後のIDを読み込んで通常起動し、システム1000に再接続する。新たなスレーブデバイス100を追加する場合、上記手順を繰り返すことによって、追加するスレーブデバイス100のID書換えを自動で実行させることができる。このようなID書換え動作は、システム1000の初期接続時のみならず、メンテナンスや故障等でスレーブデバイス100を交換するときにも実行することができる。
A
図4は、一実施形態に係るスレーブデバイス100による動作の一例を示すフローチャートである。
ACT1は、例えば判別部112によって実行され得る。ACT1として、判別部112は、スレーブデバイス100の起動時に設定された動作モードを判別する。入力部134から受け取る入力信号がLOW(スイッチ140がON)の場合、判別部112は、疑似マスタモードが設定されていると判別し、スレーブデバイス100はACT2~ACT11を実行する。一方、入力部134から受け取る入力信号がHIGH(スイッチ140がOFF)の場合、判別部112は、通常モードが設定されていると判別し、スレーブデバイス100はACT12を実行する。
FIG. 4 is a flowchart illustrating an example of operations by the
ACT1 may be executed by the
ACT2は、例えば生成部114によって実行され得る。ACT2として、生成部114は、パラメータ記憶部123から、システム予約パラメータ(パラメータ)を読み出す。一例として、生成部114は、システム予約パラメータとして、自デバイスのID(例えばID=2)と、マスタデバイス300の最大接続台数Nと、マスタデバイス300のID(例えばID=1)と、を読み出す。この例では、システム100において使用可能なIDは、ID=2,3,4,・・・N,N+1である。
ACT2 may be performed by the
ACT3は、例えば生成部114によって実行され得る。ACT3として、生成部114は、読み出したパラメータに基づき、応答要求に用いる宛先IDを設定する。一例として、生成部114は、マスタデバイス300のID(ID=1)を除いた最小のIDを用いて「宛先ID=2」と設定する。このようにマスタデバイス300に意図的にIDを割り当てることによって、システム仕様上、疑似マスタモードで起動されたスレーブデバイス100が、最大接続台数Nに対してどのIDをスキャンにおいて除外するべきかを明確にすることができる。またACT3における任意の処理として、疑似マスタモードで起動されたスレーブデバイス100は、自デバイスのIDを暫定的に「ID=1」に書き換えることができる。
ACT3 may be performed by the
ACT4は、例えば生成部114によって実行され得る。ACT4として、生成部114は、応答要求「“宛先ID”+“送信コマンド”」を生成し、送信部133に出力して、半二重シリアル通信経路CPへと送信させる。送信コマンドの一例は、「ステータス確認」コマンドである。例えば、応答要求「“2”+“ステータス確認”」を受け取ったスレーブデバイス100は、自デバイスのIDが「2」の場合、「ステータス確認」コマンドに対する所定の応答を返す。
ACT4 may be performed by the
ACT5は、例えば取得部115によって実行され得る。ACT5として、取得部115は、送信された応答要求に対する他のスレーブデバイス100からの応答を監視する。応答が受信された場合(YES)、スレーブデバイス100はACT6を実行する。応答が受信されない場合(NO)、スレーブデバイス100はACT7を実行する。
ACT5 may be performed by the
ACT6は、例えば取得部115によって実行され得る。ACT6として、取得部115は、応答が受信された場合に、当該応答に含まれる応答元ID(または送信した応答要求中の宛先ID)を割当て済みIDとして記憶部121等に記憶する。
ACT6 may be performed by the
ACT7は、例えば取得部115によって実行され得る。ACT7として、取得部115は、応答が受信されない場合に、送信した応答要求中の宛先IDを未割当てIDとして記憶部121等に記憶する。
ACT7 may be performed by the
ACT8は、例えば生成部114によって実行され得る。ACT8として、生成部114は、使用可能なすべてのIDを用いたスキャンが終了したか否かを判定する。例えば、生成部114は、直前に応答要求の生成に使用した宛先IDが「N+1」に等しい場合、スキャン終了と判定し、そうでない場合、スキャンが終了していないと判定する。スキャン終了と判定される場合(YES)、スレーブデバイス100はACT10を実行する。スキャンが終了していないと判定される場合(NO)、スレーブデバイス100はACT9を実行する。
ACT8 may be performed by the
ACT9は、例えば生成部114によって実行され得る。ACT9として、生成部114は、宛先IDの設定値をインクリメント(ID=ID+1)し、再びACT4~ACT8を実行する。
ACT9 may be performed by the
ACT10は、例えば決定部116によって実行され得る。ACT10として、決定部116は、取得部115によって取得された割当状況に関する情報を読み出し、自デバイスに割り当てるべきIDを決定する。割当状況に関する情報は、各IDが割当て済みと判別されたか未割当てと判別されたかの情報を含む。決定部116は、一例として、未割当てと判別されたIDのうち最小のIDを自デバイスのIDとして決定する。
ACT11は、例えば更新部117によって実行され得る。ACT11として、更新部117は、決定されたIDで記憶部121に記憶された自デバイスのIDを書き換え(更新し)、リブート要求を出力する。更新部117からリブート要求が出力されると、制御部111は、実行中のすべてのプログラムを終了し、スレーブデバイス100を再起動させる。
ACT12は、例えばスレーブ機能部113によって実行され得る。ACT12として、スレーブ機能部113は、通常モードで通常のスレーブデバイスの動作を実行する。通常モードの動作は、システム1000の管理者等によって任意に設定されてよい。一例として、スレーブ機能部113は、シリアル通信経路CPを介して隣接デバイスから受け取った信号を反対側の隣接デバイスに渡し、自デバイス宛てのコマンドを受信した場合にのみ所定のアクションを起こすように動作する。
図5は、一実施形態に係るスレーブデバイス100によって送受信されるコマンドの一例を示す図である。疑似マスタモードで動作するスレーブデバイス100(疑似マスタデバイス)は、応答要求「“宛先ID”+“送信コマンド”」を生成する。ここでは、宛先IDは2桁で表され、送信コマンドとして「ステータス確認」が用いられるものとする。疑似マスタデバイスは、送信後、送信回路を無効化し、受信回路を有効化して、所定の待ち時間だけ待機する。宛先IDに該当するスレーブデバイス100がシステム1000内にある場合、当該スレーブデバイス100が応答「“応答元ID”+“応答コマンド”」を生成し、送信する。応答が受信された場合、疑似マスタデバイスは、受信した応答に含まれる応答元ID(送信した応答要求に含まれる宛先ID)を「ID割当て済み」と判別する。宛先IDに該当するスレーブデバイス100がシステム1000内に存在しない場合、応答は受信されずにタイムアウトし、疑似マスタデバイスは、再び送信回路を有効化する。この場合、疑似マスタデバイスは、応答要求に使用した宛先IDが「未割当て」と判別し、宛先IDの値をインクリメントしてスキャンを継続する。
FIG. 5 is a diagram illustrating an example of commands transmitted and received by the
図5の第1回目のスキャンでは、ACT4に関して述べたように、疑似マスタデバイスは、応答要求「“02”+“ステータス確認”」を生成し、シリアル通信経路CPに送信した。この応答要求に対し、疑似マスタデバイスは、システム1000内のいずれかのスレーブデバイス100から応答「“02”+“OK”」を受信した。この結果、疑似マスタデバイスは、「ID=02」は割当て済みと判断した。
In the first scan of FIG. 5, the pseudo-master device generated a response request ““02”+“status confirmation”” and sent it to the serial communication path CP, as described with respect to ACT4. In response to this response request, the pseudo master device received a response ““02”+“OK”” from any
図5の第2回目のスキャンでは、応答要求「“03”+“ステータス確認”」に対して応答「“03”+“OK”」が受信された。そのため疑似マスタデバイスは「ID=03」も割当て済みと判断した。続いて第3回目のスキャンでは、応答要求「“04”+“ステータス確認”」に対して応答が受信されず、タイムアウトした。そのため疑似マスタデバイスは「ID=04」を未割当てIDと判断した。同様に、疑似マスタデバイスは、IDを1ずつインクリメントしてスキャンを繰り返した。第N回目のスキャンでは「ID=N+1」を用いた応答要求に対する応答が受信されず、疑似マスタデバイスは「ID=N+1」を未割当てと判断した。これで、使用可能なすべてのID(2,3,4・・・,N+1)を用いたスキャンが終了した。 In the second scan of FIG. 5, the response "03"+"OK" was received in response to the response request "03"+"status check". Therefore, the pseudo master device determined that "ID=03" was also assigned. Subsequently, in the third scan, no response was received for the response request ““04”+“status confirmation”” and timed out. Therefore, the pseudo master device judged "ID=04" to be an unassigned ID. Similarly, the pseudo master device incremented the ID by 1 and repeated scanning. In the Nth scan, no response to the response request using "ID=N+1" was received, and the pseudo master device determined that "ID=N+1" was unassigned. This completes the scan using all available IDs (2, 3, 4..., N+1).
図5の例では、未割当てIDのうち最小のものが「ID=04」である。したがって、疑似マスタデバイスは、「ID=04」を自デバイスに割り当てるべきIDと決定し、メモリを書き換え、リブートして、ID書換え動作を終了する。スキャンの結果、未割当てIDが存在しない場合、疑似マスタデバイスは、ユーザに注意喚起するため、例えば出力部135を介して光や音によるアラートを発してもよい。
In the example of FIG. 5, the smallest unassigned ID is "ID=04". Therefore, the pseudo master device determines "ID=04" as the ID to be assigned to itself, rewrites the memory, reboots, and ends the ID rewriting operation. As a result of scanning, if there is no unassigned ID, the pseudo master device may issue an alert, for example by light or sound, via the
図6は、一実施形態に係るID決定方法の過程の第1の例を示す。
図6では、2台のスレーブデバイス100が半二重シリアル通信経路CPを介して接続されている。マスタデバイス300が接続から切り離された状態で、第1のスレーブデバイス101(ID=2)が通常モードで起動され、第2のスレーブデバイスが疑似マスタデバイス201として起動されたものとする。このとき、図4のACT3に関して述べたように、疑似マスタデバイス201のメモリに格納されたIDは、任意に、デフォルトID(ID=2)からマスタデバイス用のID(ID=1)に暫定的に書き換えられる。次いで、疑似マスタデバイス201は、上記のように半二重シリアル通信ネットワーク内をスキャンし、自デバイスに割り当てるべきID(例えば、ID=3)を決定し、メモリを書き換え、リブートする。
FIG. 6 shows a first example of an ID determination method process according to an embodiment.
In FIG. 6, two
図7は、一実施形態に係るID決定方法の過程の第2の例を示す。
図7は、図6の疑似マスタデバイス201がリブート後に通常モードで起動された様子を、スレーブデバイス201として示す。スレーブデバイス201の不揮発性メモリ120に記憶された自デバイスのIDは、「ID=3」に書き換えられている。
FIG. 7 illustrates a second example of an ID determination method process according to an embodiment.
FIG. 7 shows, as a
図8は、一実施形態に係るID決定方法の過程の第3の例を示す。
図8は、図7のスレーブデバイス201に対して新たな第3のスレーブデバイスが接続され、疑似マスタデバイス202として起動された様子を示す。疑似マスタデバイス202は、デフォルトID(ID=2)からマスタデバイス用のID(ID=1)に暫定的に書き換えられている。この後、疑似マスタデバイス202は、図6に関して説明したのと同様に、シリアル通信ネットワーク内をスキャンし、自デバイスに割り当てるべきID(例えばID=4)を決定し、自動で書換えを行うことができる。このように、最大N台のスレーブデバイスまで、自動ID書換えを繰り返し実行させることができる。なお、図6~図8の例では、第1のスレーブデバイス101は、疑似マスタモードで動作しないデバイスであってもよい。
FIG. 8 illustrates a third example of an ID determination method process according to an embodiment.
FIG. 8 shows how a new third slave device is connected to the
(適用例)
一実施形態に係るデバイスおよびID決定方法は、多種多様な用途に適用可能である。一例として、一実施形態に係るデバイスは、循環式の液体吐出ヘッドからインク滴を吐出させて記録媒体に画像を形成するインクジェットプリンタにおけるヘッド周辺機器として実現され得る。同様に一実施形態に係るID決定方法は、ヘッド周辺機器のIDを決定するために用いられ得る。このような適用例について以下で簡単に説明する。
(Application example)
A device and ID determination method according to an embodiment is applicable to a wide variety of applications. As an example, the device according to one embodiment can be implemented as head peripheral equipment in an inkjet printer that forms an image on a recording medium by ejecting ink droplets from a circulating liquid ejection head. Similarly, an ID determination method according to an embodiment can be used to determine the ID of a head peripheral. Examples of such applications are briefly described below.
図9は、上述した循環式液体吐出ヘッドを用いるインクジェットプリンタ1の概略を説明するための側面図である。インクジェットプリンタ1は、複数の液体吐出装置10と、ヘッド支持機構11と、ヘッド駆動機構12と、媒体支持機構13と、プリンタ制御装置14とを備える。
FIG. 9 is a side view for explaining the outline of the
ヘッド支持機構11は、複数の液体吐出装置10を矢印Aの方向に並列するように支持する。ヘッド駆動機構12は、ヘッド支持機構11によって矢印Aの方向に並列に指示された複数の液体吐出装置10を矢印Aの方向に往復移動させる。媒体支持機構13は、ヘッド駆動機構12により矢印Aの方向に往復移動する複数の液体吐出装置10と対向する位置にて、記録媒体Sを矢印Aの方向とは直交する方向に移動可能に支持する。プリンタ制御装置14は、ヘッド駆動機構12を含むインクジェットプリンタ1の構成要素の動作を制御する。
The
液体吐出装置10は、液体吐出ヘッド20と液体循環装置30とを一体に備える。液体吐出装置10は、ヘッド駆動機構12により矢印Aの方向に往復移動しながら、液体である例えばインクIを液体吐出ヘッド20から吐出することで、媒体支持機構13により支持された記録媒体Sに所望の画像を形成する。
The
複数の液体吐出装置10は、複数の色、例えばシアンインク、マゼンタインク、イエロインク、ブラックインク、ホワイトインクを、それぞれ吐出する。複数の液体吐出装置10は、それぞれ使用するインクが異なるものの同じ構成である。なお、使用するインクIの色あるいは特性は限定されない。たとえばホワイトインクに換えて、透明光沢インク、赤外線または紫外線を照射したときに発色する特殊インク等を吐出するようにしてもよい。
A plurality of
図10は、液体吐出装置10の液体吐出ヘッド20と液体循環装置30との構成を説明するための模式図である。液体吐出ヘッド20は、インクの供給口21と排出口22とを備える。液体吐出ヘッド20は、供給口21から供給されたインクが排出口から排出されるように、液体吐出ヘッド20の内部にインク流路を形成する。
FIG. 10 is a schematic diagram for explaining the configuration of the
液体吐出ヘッド20は、インク流路の中途部に複数の圧力室を配置する。液体吐出ヘッド20は、インク流路を通じて各圧力室にインクを供給する。液体吐出ヘッド20は、圧力室毎にノズルとアクチュエータとを備える。ノズルは、対応する圧力室と連通する。アクチュエータは、対応する圧力室の容積を変位させる。液体吐出ヘッド20は、アクチュエータの作用により圧力室の容積が変位することによって、その圧力室内のインクIがその圧力室と連通するノズルから吐出される。液体吐出ヘッド20は、ノズルから吐出されなかった各圧力室内のインクを排出口22から排出する。
The
液体循環装置30は、液体吐出ヘッド20の上部において、例えば金属製の連結部品により液体吐出ヘッド20と一体的に連結される。液体循環装置30は、上流タンク31と、下流タンク32と、補給タンク33と、循環ポンプ34と、補給ポンプ35とを備える。上流タンク31、下流タンク32および補給タンク33は、同一種類のインクを貯留するためのものである。循環ポンプ34は、下流タンク32に貯留したインクを上流タンク31へと送液するためのものである。補給ポンプ35は、補給タンク33に貯留したインクを上流タンク31へと送液するためのものである。
The liquid circulating
液体循環装置30は、第1管路361、第2管路362、第3管路363、および第4管路364を有する。第1管路361は、上流タンク31と液体吐出ヘッド20の供給口21とを連結する管路である。第2管路362は、液体吐出ヘッド20の排出口22と下流タンク32とを連結する管路である。第3管路363は、下流タンク32と上流タンク31とを連結する管路である。第4管路364は、補給タンク33と上流タンク31とを連結する管路である。
The
上流タンク31に貯留したインクは、第1管路361を通って液体吐出ヘッド20の供給口21へと送液され、液体吐出ヘッド20の内部に形成されたインク流路を通る。インク流路を通って液体吐出ヘッド20の排出口22から排出されたインクは、第2管路362を通って下流タンク32へと送液され、下流タンク32に貯留される。下流タンク32に貯留したインクは、循環ポンプ34の作用により第3管路363を通って上流タンク31へと送液され、上流タンク31に戻る。
Ink stored in the upstream tank 31 is sent to the
このように、第1管路361、第2管路362および第3管路363は、液室である上流タンク31と液体吐出ヘッド20との間で、液体であるインクを循環させる管路、いわゆる循環路36を構成する。
In this manner, the
液体吐出装置10は、循環路36を循環するインクを液体吐出ヘッド20から吐出する。このため、上流タンク31に貯留されるインクは減る。インクが少なくなると、補給タンク33に貯留されているインクが、補給ポンプ35の作用により第4管路364を通って上流タンク31へと送液され、上流タンク31に補給される。
The
液体循環装置30は、上流タンク31および下流タンク32の各内部にそれぞれ液位センサ41,42を設ける。液位センサ41は、上流タンク31内のインク量を検出する。液位センサ42は、下流タンク32内のインク量を検出する。プリンタ制御装置14は、液位センサ41,42の検出結果を基に、適宜、補給ポンプ35を制御して、補給タンク33内のインクを上流タンク31へと補給する。プリンタ制御装置14は、補給タンク33内のインクを上流タンク31へと補給することで、循環路36を循環するインクの量を適正量に調整する。
The
液体循環装置30は、上流タンク31および下流タンク32にそれぞれ圧力センサ43,44を設ける。圧力センサ43は、上流タンク31内の圧力を検出する。圧力センサ44は、下流タンク32内の圧力を検出する。液体循環装置30は、圧力調整機構45を備える。圧力調整機構45は、上流タンク31および下流タンク32の大気開放、あるいは下流タンク32の加圧および減圧をする。プリンタ制御装置14は、圧力センサ43,44の検出結果を基に、適宜、圧力調整機構45を制御して、循環路36の圧力を調整する。プリンタ制御装置14は、循環路36の圧力を調整することで、液体吐出ヘッド20におけるノズルのインク圧力を調整する。
The
液体循環装置30は、第1管路361の中途部にヒータ51を設ける。ヒータ51は、第1管路361内を流れるインクを加温するためのものである。液体循環装置30は、ヒータ51に第1温度センサ52を設ける。第1温度センサ52は、ヒータ51の温度を検出するためのものである。また、液体循環装置30は、第2管路362の中途部に第2温度センサ53を設ける。第2温度センサ53は、第2管路362を流れるインクの温度を検出するためのものである。プリンタ制御装置14は、第2温度センサ53の検出結果を基に、ヒータ51の通電オン,オフを制御して、循環路36を流れるインクの温度を適正値に調整する。また、プリンタ制御装置14は、第1温度センサ52の検出結果を基に、ヒータ51の過加熱を防止する。
The
図11は、プリンタ制御装置14の要部回路構成を示すブロック図である。プリンタ制御装置14は、プロセッサ61、ROM(Read Only Memory)62、RAM(Random Access Memory)63、タイマ64、操作パネル65、通信インタフェース66、モータ67および液体吐出装置インタフェース68を備える。プリンタ制御装置14は、プロセッサ61と、ROM62、RAM63、タイマ64、操作パネル65、通信インタフェース66、モータ67および液体吐出装置インタフェース68とを、システムバス69で接続する。システムバス69は、アドレスバス、データバス等を含む。
FIG. 11 is a block diagram showing the main circuit configuration of the
プロセッサ61は、オペレーティングシステムおよびアプリケーションプログラムに従って、インクジェットプリンタ1としての各種の機能を実現するべく各部を制御する。
The
ROM62は、上記のオペレーティングシステムおよびアプリケーションプログラムを記憶する。ROM62は、プロセッサ61が各部を制御するための処理を実行する上で必要なデータを記憶する場合もある。
RAM63は、プロセッサ61が処理を実行する上で必要なデータを記憶する。またRAM63は、プロセッサ61によって情報が適宜書き換えられるワークエリアとしても利用される。ワークエリアは、印刷データが展開される画像メモリを含む。
The
タイマ64は、時間を計時する。
操作パネル65は、操作部と表示部とを有する。操作部は、電源キー、エラー解除キー等のファンクションキーを配置したものである。表示部は、インクジェットプリンタ1の種々の状態を表示可能なものである。
A
The
通信インタフェース66は、LAN(Local Area Network)等のシステムを介して接続されるクライアント端末から印刷データを受信する。通信インタフェース66は、例えばインクジェットプリンタ1にエラーが発生したとき、エラーを通知する信号をクライアント端末等に送信する。
モータ67は、ヘッド支持機構11および媒体支持機構13の駆動源である。
The
A
液体吐出装置インタフェース68は、プロセッサ61と複数の液体吐出装置10との間で送受信される信号を中継する。プロセッサ61から液体吐出装置10へと送信される信号は、液体吐出ヘッド20の駆動を制御する信号、液体循環装置30における循環ポンプ34、補給ポンプ35、圧力調整機構45およびヒータ51の各駆動を制御する信号等である。液体吐出装置10からプロセッサ61へと送信される信号は、液体循環装置30における液位センサ41,42、圧力センサ43,44および第1,第2温度センサ52,53の検出信号等である。
The
かかる構成において、プロセッサ61は、少なくともインク加温制御611としての機能と、過加熱監視制御612としての機能を有する。これらの機能は、液体吐出装置10毎に設けられる。これらの機能は、ROM62に記憶されるプログラムによって実現される。
In such a configuration, the
以上のようなインクジェットプリンタ1において、例えば、スレーブデバイス100は、液体吐出ヘッド20に接続される液体循環装置30として実現され、マスタデバイス300は、プリンタ制御装置14として実現される。プリンタ制御装置14と液体循環装置30は、半二重シリアル通信によりデイジーチェーン接続される。液体循環装置30は、プリンタ制御装置14からのコマンドに従って、循環ポンプ34、補給ポンプ35またはヒータ51等の動作を制御することができる。
In the
初期設置時には、液体循環装置30のIDは出荷状態(デフォルトID)のままである。マスタデバイスとスレーブデバイスが1対1の場合、このような出荷状態のIDのままでも半二重シリアル通信が可能である。しかし、スレーブデバイスを増設する場合、スレーブデバイスごとに異なるIDを割り当てる必要があり、半二重シリアル通信のコマンドによりIDチェンジ等の機能を設けるか、半二重シリアル通信とは別の専用経路でID書換えが必要となる。インクジェットプリンタ1は、1色のインクに複数の液体吐出ヘッド20を使用することがあり、5色であれば液体吐出ヘッド20の数はその5倍になる。液体吐出ヘッド20ごとに液体循環装置30が設置されるので、設置のたびにIDを割り当て、書換えを行うのは非常に煩雑である。
At the time of initial installation, the ID of the
そこで、上述したように、マスタデバイス300としてのプリンタ制御装置14をいったん切り離して、2台の液体循環装置30を接続し、一方を通常モードで起動させ、一方を疑似マスタモードで起動させる。疑似マスタモードで起動された液体循環装置30は、不揮発性メモリに格納された専用ファームウェア(第2プログラム)を実行する。当該液体循環装置30は、疑似マスタデバイスとして、システム予約された最大接続台数Nを読み出し、N台分のID(ID=2,3,・・・N+1)を使用してスキャンを行い、他の液体循環装置30に割り当てられていないIDの中から自デバイスに割り当てるべきIDを決定し、自デバイスのIDを自動で書き換える。その後、新たな液体循環装置30を接続し、疑似マスタモードで起動させることによって、自動ID書換えを繰り返し実行させることができる。
Therefore, as described above, the
(効果)
以上詳述したように、一実施形態では、マスタデバイス300(コントローラ等)にスレーブデバイス100(周辺機器等)をマルチドロップ接続したシリアル通信ネットワーク1000において、スレーブデバイス100のみを接続した状態で、順次、追加するスレーブデバイス100を疑似マスタモードで起動させる。スレーブデバイス100は、ユーザ等が例えばスイッチ140を押しながら起動させることによって疑似マスタモードで起動される。疑似マスタモードで起動されたスレーブデバイス100は、専用ファームウェアを実行し、ID決定方法を実行する。ID決定方法は、シリアル通信ネットワークにおいて使用可能なIDを用いて他のデバイスに応答要求を生成し、出力し、応答要求に対する応答に基づいてIDの割当状況に関する情報を取得し、取得した情報に基づいて自デバイスに割り当てるべきIDを決定する。さらに、疑似マスタモードで起動されたスレーブデバイス100は、決定されたIDで自デバイスの不揮発性メモリを書き換える処理を行う。
(effect)
As described in detail above, in one embodiment, in a
このように、一実施形態によれば、シリアル通信ネットワークに接続されるデバイスが自動で自デバイスに割り当てるべきIDを決定できるので、シリアル通信ネットワークに接続されるデバイスへのID割当てを容易にする技術を提供することができる。 As described above, according to one embodiment, a device connected to a serial communication network can automatically determine an ID to be assigned to the device itself. Therefore, a technology for facilitating ID assignment to a device connected to the serial communication network. can be provided.
[他の実施形態]
なお、この発明は上記実施形態に限定されるものではない。例えば、スレーブデバイス100が備える各機能部を、複数の装置に分散配置し、これらの装置が互いに連携することにより処理を行うようにしてもよい。また各機能部は、回路を用いることで実現されてもよい。回路は、特定の機能を実現する専用回路であってもよいし、プロセッサのような汎用回路であってもよい。
[Other embodiments]
In addition, this invention is not limited to the said embodiment. For example, each functional unit included in the
さらに、以上で説明した動作(ACT1~ACT12)は、図示した順序に限定されるものではない。いくつかの動作の順序が入れ替えられてもよいし、いくつかの動作が同時並行で実施されてもよい。 Furthermore, the operations (ACT1-ACT12) described above are not limited to the illustrated order. Some operations may be reordered and some operations may be performed concurrently.
疑似マスタモードで起動されたスレーブデバイス100が、まず、マスタデバイス300が接続されていないことを確認する動作を実行するようにしてもよい。例えば、まず「ID=1」を用いた応答要求を送信し、これに対して応答が受信された場合には、光や音によるアラートを発してユーザに注意喚起するようにしてもよい。
The
以上で記載した手法は、計算機(コンピュータ)に実行させることができるプログラム(ソフトウェア手段)として、例えば磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD-ROM、DVD、MO等)、半導体メモリ(ROM、RAM、フラッシュメモリ等)等の記録媒体(記憶媒体)に格納し、また通信媒体により伝送して頒布することもできる。なお、媒体側に格納されるプログラムには、計算機に実行させるソフトウェア手段(実行プログラムのみならずテーブル、データ構造も含む)を計算機内に構成させる設定プログラムをも含む。上記装置を実現する計算機は、記録媒体に記録されたプログラムを読み込み、また場合により設定プログラムによりソフトウェア手段を構築し、このソフトウェア手段によって動作が制御されることにより上述した処理を実行する。なお、本明細書でいう記録媒体は、頒布用に限らず、計算機内部あるいはネットワークを介して接続される機器に設けられた磁気ディスク、半導体メモリ等の記憶媒体を含むものである。 The method described above can be executed by a computer (computer) as a program (software means), such as a magnetic disk (floppy (registered trademark) disk, hard disk, etc.), an optical disk (CD-ROM, DVD, MO, etc.) , semiconductor memory (ROM, RAM, flash memory, etc.) or other recording medium (storage medium), or can be transmitted and distributed via a communication medium. The programs stored on the medium also include a setting program for configuring software means (including not only execution programs but also tables and data structures) to be executed by the computer. A computer that implements the above apparatus reads a program recorded on a recording medium, and in some cases, constructs software means by a setting program, and executes the above-described processes by controlling the operation of the software means. The term "recording medium" as used herein is not limited to those for distribution, and includes storage media such as magnetic disks, semiconductor memories, etc. provided in computers or devices connected via a network.
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。 While several embodiments of the invention have been described, these embodiments have been presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and modifications can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the scope of the invention described in the claims and equivalents thereof.
1…インクジェットプリンタ、10…液体吐出装置、11…ヘッド支持機構、12…ヘッド駆動機構、13…媒体支持機構、14…プリンタ制御装置、20…液体吐出ヘッド、21…供給口、22…排出口、30…液体循環装置、31…上流タンク、32…下流タンク、33…補給タンク、34…循環ポンプ、35…補給ポンプ、36…循環路、41,42…液位センサ、43,44…圧力センサ、45…圧力調整機構、51…ヒータ、52…第1温度センサ、53…第2温度センサ、61…プロセッサ、64…タイマ、65…操作パネル、66…通信インタフェース、67…モータ、68…装置インタフェース、69…システムバス、100,101,102,103,104…スレーブデバイス、111…制御部、112…判別部、113…スレーブ機能部、114…生成部、115…取得部、116…決定部、117…更新部、120…不揮発性メモリ、121…記憶部、122…プログラム記憶部、123…パラメータ記憶部、130…トランシーバブロック、131…インタフェース部、132…受信部、133…送信部、134…入力部、135…出力部、140…スイッチ、150…抵抗、201,202…疑似マスタデバイス、300…マスタデバイス、361…第1管路、362…第2管路、363…第3管路、364…第4管路、611…インク加温制御、612…過加熱監視制御、1000…システム。
REFERENCE SIGNS
Claims (5)
前記シリアル通信ネットワークにおいて使用可能なIDを用いて、前記シリアル通信ネットワークに接続された他デバイスへの応答要求を生成し出力する生成部と、
前記応答要求に対する前記他デバイスからの応答に基づいて、前記シリアル通信ネットワークにおける前記使用可能なIDの割当状況に関する情報を取得する取得部と、
前記割当状況に関する情報をもとに自デバイスに割り当てるべきIDを決定する決定部と
を備える、デバイス。 A device connectable to a serial communication network,
a generation unit that generates and outputs a response request to another device connected to the serial communication network using an ID that can be used in the serial communication network;
an acquisition unit that acquires information about the allocation status of the usable IDs in the serial communication network based on the response from the other device to the response request;
and a determining unit that determines an ID to be assigned to the own device based on the information about the assignment status.
前記生成部は、前記シリアル通信ネットワークにおいて使用可能なIDの各々を宛先として付した前記応答要求を生成して出力し、
前記取得部は、前記応答要求に対する前記スレーブデバイスからの応答の有無に基づいて、前記割当状況に関する情報を取得する、
請求項1に記載のデバイス。 The serial communication network includes a slave device capable of transmitting a response to the response request when receiving a response request to which the ID of the device itself is attached as a destination,
The generation unit generates and outputs the response request to which each ID usable in the serial communication network is attached as a destination,
The acquisition unit acquires information about the allocation status based on whether or not the slave device has responded to the response request.
A device according to claim 1 .
前記シリアル通信ネットワーク内で前記スレーブデバイスに前記応答要求を送信可能なマスタデバイスとして動作する、第2動作モードと、
を有する、請求項2に記載のデバイス。 a first mode of operation, operating as the slave device within the serial communication network;
a second mode of operation operating as a master device capable of transmitting said response request to said slave device within said serial communication network;
3. The device of claim 2, comprising:
前記シリアル通信ネットワークにおいて使用可能なIDを用いて、前記シリアル通信ネットワークに接続された他デバイスに応答要求を生成し出力することと、
前記応答要求に対する前記他デバイスからの応答に基づいて、前記シリアル通信ネットワークにおける前記使用可能なIDの割当状況に関する情報を取得することと、
前記割当状況に関する情報をもとに自デバイスに割り当てるべきIDを決定することと
を含むID決定方法。
An identity determination method performed by a device connectable to a serial communication network, comprising:
generating and outputting a response request to another device connected to the serial communication network using an ID that can be used in the serial communication network;
Acquiring information about the allocation status of the usable IDs in the serial communication network based on the response from the other device to the response request;
and determining an ID to be assigned to the own device based on the information about the assignment status.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021015263A JP2022118613A (en) | 2021-02-02 | 2021-02-02 | Device and ID determination method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021015263A JP2022118613A (en) | 2021-02-02 | 2021-02-02 | Device and ID determination method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022118613A true JP2022118613A (en) | 2022-08-15 |
Family
ID=82840007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021015263A Pending JP2022118613A (en) | 2021-02-02 | 2021-02-02 | Device and ID determination method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022118613A (en) |
-
2021
- 2021-02-02 JP JP2021015263A patent/JP2022118613A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101859235B (en) | System having plurality of memory devices and data transfer method for the same | |
JP4123739B2 (en) | Identification system and identification method for printing recording material container | |
US11123981B2 (en) | Printhead nozzle addressing | |
EP1717041B1 (en) | Access to printing material container | |
CN101856912B (en) | Memory device and system including memory device electronically connectable to host circuit | |
JP6840592B2 (en) | Inkjet head control device and inkjet printer | |
CN107257737A (en) | Printed material print cartridge | |
JP4066980B2 (en) | Printing recording material container | |
JP2022118613A (en) | Device and ID determination method | |
US7113294B2 (en) | Ink jet recording apparatus and controlling method with selective clock signal supply | |
US20030107611A1 (en) | Ink jet printer and method of reducing maximum driving current of ink cartridge | |
JP6506620B2 (en) | Recording apparatus and recording head temperature control method | |
JP7129874B2 (en) | PRINTING SYSTEM AND PRINTING SYSTEM MANAGEMENT METHOD | |
JP4269128B2 (en) | Printer control apparatus, printer control method, and medium on which printer control program is recorded | |
JP2007524530A (en) | Method for periodically giving the latest status from a printer and printer capable of periodically giving the latest status | |
JP2008052438A (en) | Information processor, printing device, information processing method and program | |
KR102359331B1 (en) | Substrate processing system, storage medium and method of registering new device | |
JP2014083846A (en) | Method of suppressing light emission of ink cartridge, control unit, substrate, ink cartridge and imaging apparatus | |
TW201831783A (en) | Fluid pump actuation on a fluid ejection device | |
WO2003069430A2 (en) | Storage of total ink drop fired count in an imaging device | |
US20210283907A1 (en) | Configuring communication interfaces of fluid ejection devices | |
WO2022086539A1 (en) | Logic circuitry | |
CN106515220A (en) | Ink supply control method and system | |
JP2024041530A (en) | Inkjet head and head control circuit | |
US20200307227A1 (en) | Image-Recording Device Issuing Notification Concerning Quantity of Liquid in Tank |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20230104 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20231114 |