JP7127434B2 - 情報処理装置および情報処理装置の制御方法 - Google Patents

情報処理装置および情報処理装置の制御方法 Download PDF

Info

Publication number
JP7127434B2
JP7127434B2 JP2018162175A JP2018162175A JP7127434B2 JP 7127434 B2 JP7127434 B2 JP 7127434B2 JP 2018162175 A JP2018162175 A JP 2018162175A JP 2018162175 A JP2018162175 A JP 2018162175A JP 7127434 B2 JP7127434 B2 JP 7127434B2
Authority
JP
Japan
Prior art keywords
information
identification information
network
cpu
storage 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
Application number
JP2018162175A
Other languages
English (en)
Other versions
JP2020035242A (ja
Inventor
大 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2018162175A priority Critical patent/JP7127434B2/ja
Priority to CN201910796280.4A priority patent/CN110874342B/zh
Priority to US16/555,861 priority patent/US11226780B2/en
Publication of JP2020035242A publication Critical patent/JP2020035242A/ja
Application granted granted Critical
Publication of JP7127434B2 publication Critical patent/JP7127434B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1238Secure printing, e.g. user identification, user rights for device usage, unallowed content, blanking portions or fields of a page, releasing held jobs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1209Improving or facilitating administration, e.g. print management resulting in adapted or bridged legacy communication protocols, e.g. emulation, protocol extension
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1231Device related settings, e.g. IP address, Name, Identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1293Printer information exchange with computer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は、外部装置とネットワークを介して接続可能な情報処理装置および情報処理装置の制御方法に関する。
特許文献1には、複数台のUSB機器と接続されると共に、ネットワークを介してPCと接続されたデバイスサーバーであって、USB機器がシリアル番号を備えていない場合、デバイスサーバーのデバイスサーバー情報と、デバイスサーバーとUSB機器を接続するインターフェース情報と、USB機器の機器情報と、に基づいて、USB機器の識別情報を生成する技術が開示されている。
一方、ネットワーク通信に対応していないUSB機器等の内部機器を、外部装置からネットワークを介して制御する方法として、CPUボード等の制御機器を、外部装置と内部機器との間に介在させる方法が知られている。
特開2013-109466号公報
ネットワーク通信に対応していない内部機器を、外部装置からネットワークを介して制御する場合、内部機器に対応する識別情報を制御機器に付与する必要がある。特許文献1の技術では、内部機器に識別情報を付与することはできるが、制御機器に、内部機器に対応する識別情報を付与することはできない。もちろん、ユーザーが手入力により、内部機器に対応する識別情報を制御機器に付与することも考えられるが、手間がかかる。
本発明の情報処理装置は、外部装置とネットワークを介して通信可能であり、制御部を有する制御機器と、制御機器とネットワークとは異なる通信方式で通信可能であり、機器情報を有する内部機器と、を備え、制御部は、内部機器から機器情報を取得し、取得した機器情報に基づいて内部機器に対応する識別情報生成し、ネットワークを介して、外部装置から内部機器に対する照会要求を受信すると、生成した識別情報を示す第1応答情報を外部装置に送信する。
本発明の情報処理装置の制御方法は、外部装置とネットワークを介して通信可能であり、制御部を有する制御機器と、制御機器とネットワークとは異なる通信方式で通信可能であり、機器情報を有する内部機器と、を備えた情報処理装置の制御方法であって、内部機器から機器情報を取得し、取得した機器情報に基づいて内部機器に対応する識別情報を生成し、ネットワークを介して、外部装置から内部機器に対する照会要求を受信すると、生成した識別情報を示す第1応答情報を外部装置に送信する。
ネットワークシステムのブロック図である。 BIOSメニューの一例を示す図である。 BIOS処理を示すフローチャートである。 図3に続くフローチャートである。 Auto Fill処理を示すフローチャートである。 図5に続くフローチャートである。 第1応答処理を示すフローチャートである。 第2応答処理を示すフローチャートである。
以下、一実施形態に係る情報処理装置および情報処理装置の制御方法について、添付図面を参照して説明する。図1は、ネットワークシステムSYのブロック図である。ネットワークシステムSYは、情報処理装置1と、ネットワークNWを介して情報処理装置1と接続された外部装置100と、を備える。
情報処理装置1は、特に用途を限定しないが、例えば、会計処理を行うPOS(Point of Sale System)端末として機能する。また、外部装置100は、例えば、POS端末を管理するPOSサーバーとして機能する。この場合、外部装置100は、情報処理装置1から取得した会計情報に基づいて、レシート印刷データやクーポン印刷データを生成し、生成したこれらの印刷データを情報処理装置1に送信するなどの処理を行う。
ネットワークNWは、例えばインターネット網である。また、外部装置100は、例えばWebサーバー装置、PC(Personal Computer)またはタブレット端末である。
情報処理装置1は、CPU(Central Processing Unit)ボード10と、プリンター20と、ディスプレー30と、キーボード40と、マウス50と、HDD(Hard Disk Drive)60と、を備える。CPUボード10は、「制御機器」の一例である。また、プリンター20は、「内部機器」および「USB機器」の一例である。また、HDD60は、「第2記憶部」の一例である。なお、情報処理装置1のプリンター20以外の構成、すなわち、CPUボード10、ディスプレー30、キーボード40、マウス50およびHDD60は、例えばPCである。
プリンター20は、例えば、レシートやクーポンを印刷するレシートプリンターである。また、プリンター20は、ネットワーク通信に対応していないことを前提とする。本実施形態のネットワークシステムSYは、このプリンター20を外部装置100から制御するため、プリンター20と外部装置100との間にCPUボード10を介在させた構成となっている。
CPUボード10は、第1USBポート11と、USBコントローラー12と、ネットワークポート13と、ネットワークコントローラー14と、第1フラッシュメモリー15と、CPU16(プロセッサー)と、を備える。第1フラッシュメモリー15は、「第1記憶部」の一例である。また、CPU16は、「制御部」の一例である。なお、図1において、ネットワークポート13は、「NWポート」と表記し、ネットワークコントローラー14は、「NWコントローラー」と表記する。
第1USBポート11は、CPUボード10がプリンター20とUSB通信を行うためのポートである。第1USBポート11は、プリンター20の第2USBポート21と接続される。つまり、CPUボード10とプリンター20の間の通信方式はUSB通信規格に対応したものである。USBコントローラー12は、CPU16の命令に基づき、USB通信を制御する。
ネットワークポート13は、CPU16が外部装置100とネットワーク通信を行うためのポートである。ネットワークポート13は、外部装置100の不図示のネットワークポートと接続される。なお、CPUボード10と外部装置100は、SMNP(Simple Network Management Protocol)に基づいて通信が行われる。SNMPは、「所定の通信プロトコル」の一例である。ネットワークコントローラー14は、CPU16の命令に基づき、ネットワーク通信を制御する。ネットワークコントローラー14は、例えばネットワークカードとしてCPUボード10に実装される。
第1フラッシュメモリー15は、BIOS(Basic Input / Output System)およびSMBIOS情報を記憶する。BIOSは、CPUボード10の起動時に実行されるプログラムである。CPU16は、第1フラッシュメモリー15からBIOSを読み出して実行し、CPUボード10に接続された各種ハードウェアの初期化や、HDD60内のOS(Operating System)の読み出しおよび起動、などを行う。
SMBIOS情報は、BIOS情報、システム情報およびUUID(Universally Unique Identifier)など、SMBIOSで定義される各種情報を含む。例えば、BIOS情報は、BIOSの設定値を含む。また、システム情報は、プリンター20に対応する識別情報を含む。この識別情報は、プリンター20から取得したUSBデバイスディスクリプターを用いて生成される。詳細については、後述する。
CPU16は、バス70を介して、ディスプレー30、キーボード40、マウス50およびHDD60と接続され、これらのハードウェアを制御する。また、CPU16は、これらのハードウェアと協働して、BIOSの起動により実行されるBIOS処理や、プリンター20および外部装置100との通信処理など、各種処理を制御する。
プリンター20は、第2USBポート21と、プリンターエンジン22と、第2フラッシュメモリー23と、CPU(プロセッサー)を有するプリンターコントローラー24と、を備える。第2USBポート21は、プリンター20がCPUボード10とUSB通信を行うためのポートである。プリンターエンジン22は、印刷ヘッド、用紙搬送機構、用紙切断機構などの印刷機構を含み、プリンターコントローラー24の制御下で、レシート用紙などの印刷媒体に印刷を行う。
第2フラッシュメモリー23は、プリンターエンジン22を制御するファームウェアとUSBデバイスディスクリプターを記憶する。USBデバイスディスクリプターは、「機器情報」の一例である。USBデバイスディスクリプターは、「iManufacturer」、「iProduct」、「iSerial Number」などを含む。
プリンターコントローラー24のCPUは、第2フラッシュメモリー23からファームウェアを読み出して実行し、CPUボード10からの印刷命令にしたがい、プリンターエンジン22に印刷を実行させる。また、プリンターコントローラー24は、CPUボード10からの情報要求にしたがい、第2フラッシュメモリー23に記憶されているUSBデバイスディスクリプターを読み出して、CPUボード10に送信する。
ディスプレー30は、BIOSメニューM(図2参照)など、各種情報を表示する。キーボード40およびマウス50は、BIOSメニューMの操作など、ユーザーによる各種操作に用いられる。
HDD60は、OS、SMBIOSプログラムおよびSNMPエージェントプログラムを記憶する。SMBIOSプログラムおよびSNMPエージェントプログラムは、「所定の通信プロトコルに基づく通信を実現するための通信プログラム」の一例である。
OSは、CPU16が実行する基本ソフトウェアである。SMBIOSプログラムは、CPU16がSMBIOS情報の読み取りや書き込みを行うために用いられる。また、SNMPエージェントプログラムは、CPU16がSNMPに基づくネットワーク通信を行うために用いられる。なお、特に図示しないが、外部装置100には、SNMPエージェントプログラムに対応するSNMPマネージャープログラムが記憶される。外部装置100は、このSNMPマネージャープログラムによりSNMPマネージャーとして機能し、SNMPエージェントとなる情報処理装置1を管理する。
上記の構成により、CPUボード10のCPU16は、BIOS処理の一部として実行されるAuto fill処理(図5および図6参照)において、プリンター20に対し、USBデバイスディスクリプターを要求する。CPU16は、プリンター20から返信されたUSBデバイスディスクリプターを、第1フラッシュメモリー15の所定の記憶領域に記憶する。CPU16は、SMBIOSプログラムを用いて、第1フラッシュメモリー15に記憶されたUSBデバイスディスクリプターから、プリンター20に対応する識別情報を生成し、SMBIOS情報の一部として記憶する。
また、CPU16は、外部装置100からプリンター20に対する照会要求を受信すると、SMBIOS情報の一部として記憶されている識別情報を示す第1応答情報を外部装置100に送信する(図7参照)。この識別情報は、外部装置100が、CPUボード10を介してプリンター20を制御するために必要な情報である。また、CPU16は、外部装置100からプリンター20に対する通信要求を受信すると、SMBIOS情報の一部として記憶されている識別情報を示す第2応答情報を外部装置100に送信する(図8参照)。
また、CPU16は、外部装置100からXML(Extensible Markup Language)形式の印刷データを受信した場合、XML形式の印刷データを解析して、プリンター20のファームウェアで実行可能な印刷命令である文字コードや画像データ、コマンドに変換する。CPU16は、変換後の印刷命令を、プリンター20に送信する。
図2は、BIOSメニューMの一例を示す図である。BIOSメニューMは、ユーザーの操作にしたがって、ディスプレー30に表示される。BIOSメニューMは、SMBIOSメニューM1と、SMBIOS Auto fillメニューM2と、を含む。
SMBIOSメニューM1は、Product Nameの情報81と、Serial Numberの情報82と、UUIDの情報83と、を表示する。ここで、Product Nameの情報81と、Serial Numberの情報82が、プリンター20に対応する識別情報に相当する。また、UUIDの情報83は、ネットワークコントローラー14のMAC(Media Access Control)アドレスを用いて生成される情報である。
SMBIOS Auto fillメニューM2は、Auto fill nowボタン84と、Auto fill on bootの情報85と、Target USB Portの情報86と、Product suffixの情報87と、S/N conversionの情報88と、を表示する。
Auto fill nowボタン84は、ユーザーが手動でAuto fill処理を実行させる場合に選択されるボタンである。Auto fill nowボタン84が選択されると、SMBIOS情報が更新され、情報処理装置1が再起動される。
Auto fill on bootの情報85としては、"Enabled"と"Disabled"のいずれかが選択される。"Enabled"が選択された場合、所定の条件を満たすとAuto fill処理を実行する。また、"Disabled"が選択された場合、所定の条件を満たす場合でもAuto fill処理を実行しない。所定の条件とは、後述する図3のS02でNoとなり、S03でYesとなる条件である。
Target USB Portの情報86は、第1USBポート11のポート名である。Product suffixの情報87は、識別情報の一部となるProduct Nameの情報81を生成する際の接尾辞である。例えば、CPU16は、プリンター20から取得したUSBデバイスディスクリプターの「iProduct」が「TM-T1234」である場合であって、Product suffixの情報87が「-DT2」の場合、「iProduct」の後にProduct suffixの情報87を付加した「TM-T1234-DT2」を、Product Nameの情報81として生成する。
S/N conversionの情報88としては、"Enabled"と"Disabled"のいずれかが選択される。"Enabled"が選択された場合、プリンター20から取得したUSBデバイスディスクリプターの「iSerial Number」に対しシリアル番号変換処理を行って、識別情報の一部となるSerial Numberの情報82を生成する。図2の例では、シリアル番号変換処理が行われた場合を示している。シリアル番号変換処理は、所定の変換規則にしたがって、USBデバイスディスクリプターの「iSerial Number」をSerial Numberの情報82に変換する。また、S/N conversionの情報88として"Disabled"が選択された場合、USBデバイスディスクリプターの「iSerial Number」に対しシリアル番号変換処理を行うことなく、「iSerial Number」をそのままSerial Numberの情報82とする。
図3および図4は、BIOS処理を示すフローチャートである。BIOS処理は、第1フラッシュメモリー15に記憶されているBIOSに基づいて、CPU16により実行される処理である。CPU16は、BIOSが起動されると、Auto fill on bootの情報85が"Enabled"であるか否かを判別する(S01)。CPU16は、Auto fill on bootの情報85が"Enabled"ではないと判定した場合(S01:No)、S06に進む。
CPU16は、Auto fill on bootの情報85が"Enabled"であると判定した場合(S01:Yes)、「Auto fill loop guard flag」が設定されているか否かを判別する(S02)。この「Auto fill loop guard flag」は、Auto fill処理を実行しても、Product Nameの情報81と、Serial Numberの情報82が空文字列(空白)の場合、すなわち、これらの情報が入力されていない状態の場合に無限ループとなることを防ぐためのフラグである。
CPU16は、「Auto fill loop guard flag」が設定されていると判定した場合(S02:Yes)、S06に進み、「Auto fill loop guard flag」が設定されていないと判定した場合(S02:No)、Product Nameの情報81とSerial Numberの情報82がいずれも空文字列であるか否かを判別する(S03)。CPU16は、Product Nameの情報81とSerial Numberの情報82がいずれも空文字列ではないと判定した場合(S03:No)、すなわちProduct Nameの情報81とSerial Numberの情報82の少なくとも一方が入力された状態であると判定した場合は、S06に進む。
CPU16は、Product Nameの情報81とSerial Numberの情報82がいずれも空文字列であると判定した場合(S03:Yes)、Auto fill処理(図5および図6参照)を実行する(S04)。その後、CPU16は、「Auto fill loop guard flag」を設定し(S05)、S01に戻る。
図4に示すように、CPU16は、ユーザーがBIOSメニューM(図2参照)を表示するための操作を行ったか否かを判別する(S06)。CPU16は、ユーザーがBIOSメニューMを表示するための操作を行っていないと判定した場合(S06:No)、BIOS処理を終了する。また、CPU16は、ユーザーがBIOSメニューMを表示するための操作を行ったと判定した場合(S06:Yes)、BIOSメニューMを表示する(S07)。
CPU16は、BIOSメニューMにおいて、ユーザーがAuto fill nowボタン84を選択したか否かを判別する(S08)。CPU16は、ユーザーがAuto fill nowボタン84を選択したと判定した場合(S08:Yes)、Auto fill処理を実行し(S09)、S01に戻る。また、CPU16は、ユーザーがAuto fill nowボタン84を選択していないと判定した場合(S08:No)、ユーザーがSMBIOSメニューM1を手動で編集したか否かを判別する(S10)。CPU16は、ユーザーがSMBIOSメニューM1を手動で編集したと判定した場合(S10:Yes)、SMBIOS情報を更新して情報処理装置1を再起動し(S11)、S12に進む。
CPU16は、ユーザーがBIOSメニューMを終了するための操作を行ったか否かを判別し(S12)、終了するための操作を行っていないと判定した場合は(S12:No)、S08に戻る。また、CPU16は、ユーザーがBIOSメニューMを終了するための操作を行ったと判定した場合は(S12:Yes)、BIOSメニューMを終了し(S13)、BIOS処理を終了する。なお、CPU16は、BIOS処理の終了後、OSを起動する。
図5および図6は、Auto fill処理を示すフローチャートである。Auto fill処理は、図3のS04および図4のS09に相当するサブフローチャートである。CPU16は、Auto fill処理を開始すると、Target USB Portの値を取得し(S21)、プリンター20がTarget USB Port、すなわち第1USBポート11に接続されているか否かを判別する(S22)。
CPU16は、プリンター20がTarget USB Portに接続されていないと判定した場合(S22:No)、Product Nameの情報81とSerial Numberの情報82を空文字列にして(S23)、S34に進む。また、CPU16は、プリンター20がTarget USB Portに接続されていると判定した場合(S22:Yes)、USBデバイスディスクリプターの「iProduct」を取得する(S24)。
CPU16は、USBデバイスディスクリプターの「iProduct」を取得できたか否かを判別し(S25)、取得できたと判定した場合(S25:Yes)、「iProduct」の後にProduct suffixの情報87を付加し、Product Nameの情報81を設定する(S26)。ここで、「Product Nameの情報81を設定する」とは、SMBIOSのデータ構造にProduct Nameの情報81を入力し、SNBIOS情報として記憶させることを意味する。また、CPU16は、USBデバイスディスクリプターの「iProduct」を取得できなかったと判定した場合(S25:No)、Product suffixの情報87を空文字列にする(S27)。なお、USBデバイスディスクリプターの「iProduct」を取得できない場合としては、プリンター20が故障している場合や、プリンター20に「iProduct」が記憶されていない場合、などが考えられる。
図6に示すように、CPU16は、S26またはS27の後、USBデバイスディスクリプターの「iSerial Number」を取得する(S28)。CPU16は、USBデバイスディスクリプターの「iSerial Number」を取得できたか否かを判別し(S29)、取得できなかったと判定した場合(S29:No)、Serial Numberの情報82を空文字列にし(S30)、S34に進む。USBデバイスディスクリプターの「iSerial Number」を取得できない場合としては、プリンター20が故障している場合や、プリンター20に「iSerial Number」が記憶されていない場合、などが考えられる。また、CPU16は、USBデバイスディスクリプターの「iSerial Number」を取得できたと判定した場合(S29:Yes)、S/N conversionの情報88が"Enabled"であるか否かを判別する(S31)。
CPU16は、S/N conversionの情報88が"Enabled"であると判定した場合(S31:Yes)、プリンター20から取得したUSBデバイスディスクリプターの「iSerial Number」に対しシリアル番号変換処理を行い(S32)、Serial Numberの情報82を設定する(S33)。つまり、「iSerial Number」に対してシリアル番号変換処理を行った情報を、SNBIOS情報の一部として記憶する。また、CPU16は、S/N conversionの情報88が"Enabled"ではないと判定した場合(S31:No)、「iSerial Number」に対してシリアル番号変換処理を行うことなく、Serial Numberの情報82を設定する(S33)。つまり、USBデバイスディスクリプターの「iSerial Number」を、そのままSNBIOS情報の一部として記憶する。その後、CPU16は、ネットワークコントローラー14のMACアドレスを用いてUUIDを生成し、UUIDの情報83を設定して(S34)、Auto fill処理を終了する。
図7は、第1応答処理を示すフローチャートである。第1応答処理は、図3および図4に示したBIOS処理が実行された後、外部装置100からの照会要求に基づいて実行される処理である。ここで、「照会要求」とは、プリンター20に対応する識別情報の送信要求を意味する。CPU16は、ネットワークNWを介して、外部装置100からプリンター20に対する照会要求を受信すると(S41:Yes)、SMBIOSプログラムを用いて、第1フラッシュメモリー15からSMBIOS情報を読み出し、識別情報を取得する(S42)。つまり、CPU16は、識別情報として、Auto fill処理で設定されたProduct Nameの情報81およびSerial Numberの情報82を取得する。
また、CPU16は、SNMPエージェントプログラムを用いて、取得した識別情報をSNMPで利用可能な形式に変換し、変換済み識別情報を生成する(S43)。CPU16は、変換済み識別情報に、ヘッダーおよびフッターを付加して第1応答情報を生成し(S44)、生成した第1応答情報を外部装置100に送信する(S45)。外部装置100は、第1応答情報を受信し、プリンター20に対応する識別情報を取得することで、以後、プリンター20の制御が可能となる。
図8は、第2応答処理を示すフローチャートである。第2応答処理は、図7に示した第1応答処理の後、外部装置100からの通信要求に基づいて実行される処理である。CPU16は、ネットワークNWを介して、外部装置100からプリンター20の通信要求を受信すると(S51:Yes)、SMBIOSプログラムを用いて、第1フラッシュメモリー15からSMBIOS情報を読み出し、識別情報を取得する(S52)。また、CPU16は、SNMPエージェントプログラムを用いて、取得した識別情報をSNMPで利用可能な形式に変換し、変換済み識別情報を生成する(S53)。CPU16は、変換済み識別情報に、ヘッダーおよびフッターを付加して第2応答情報を生成し(S54)、生成した第2応答情報を外部装置100に送信する(S55)。
以上説明したとおり、本実施形態によれば、ネットワーク通信に対応しておらず、情報処理装置1の内部に収納され、情報処理装置1の一部として一体的に構成されたプリンター20を、外部装置100からネットワークNWを介して制御する場合において、CPUボード10が、プリンター20から取得したUSBデバイスディスクリプターに基づいて、プリンター20に対応する識別情報を生成するため、ユーザーの手を煩わせることなく、CPUボード10に識別情報を付与することができる。
また、BIOSの設定値が記憶される第1フラッシュメモリー15に識別情報を記憶させるため、情報処理装置1のOSが変更された場合でも、識別情報を変更する必要がない。また、HDD60に識別情報を記憶させると、HDD60が取り外された場合に識別情報を付与し直す必要があるが、第1フラッシュメモリー15に識別情報を記憶させるため、そのような問題がない。
また、第1フラッシュメモリー15に識別情報を記憶させるため、プリンター20がCPUボード10に接続されていない場合でも、外部装置100に応答することができる。また、外部装置100に応答する際は、SMBIOSプログラムを用いてSMBIOS情報を読み出し、SNMPエージェントプログラムを用いてSNMPに基づく通信を行うため、汎用のプログラムを用いて本実施形態を実現することができる。
また、CPUボード10は、第1フラッシュメモリー15に識別情報が記憶されていないと判定した場合(図3のS03でYesと判定した場合)に、Auto Fill処理を実行して識別情報を生成するため、CPUボード10の初回起動時や、ユーザーがBIOSメニューMで意図的に識別情報を削除した場合に、CPUボード10に識別情報を付与することができる。また、第1フラッシュメモリー15に識別情報が記憶されていると判定した場合は、Auto Fill処理を実行しないため、誤って識別情報が変更されることがない。
上記の実施形態によらず、以下の変形例を採用可能である。
[変形例1]
上記の実施形態では、CPUボード10が生成した識別情報を、SMBIOS情報の一部として第1フラッシュメモリー15に記憶したが、SMBIOS情報以外の情報を識別情報として記憶してもよい。例えば、SNMPのMIB情報を識別情報として記憶してもよい。この場合、MIB情報のsysDescrとして、USBデバイスディスクリプターの「iProduct」に、Product suffixの情報87を付加した情報を記憶し、MIB情報のchassisIdとして、「iSerial Number」を記憶してもよい。
また、識別情報を、例えばHDD60など、第1フラッシュメモリー15以外の記憶装置に記憶してもよい。また、識別情報を記憶する記憶装置は、必ずしも情報処理装置1内に存在しなくてもよく、CPUボード10が通信可能な装置内に存在してもよい。
[変形例2]
上記の実施形態では、「所定の通信プロトコルに基づく通信を実現するための通信プログラム」として、SMBIOSプログラムおよびSNMPエージェントプログラムを例示したが、必ずしも両プログラムを用いる必要はない。例えば、HDD60に記憶されたOS上で動作する所定のアプリケーションプログラムにより、SMBIOS情報の読み取りおよび書き込みを行ってもよい。また、SNMP以外の通信プロトコルを用いて、CPUボード10と外部装置100が通信を行う構成でもよい。
[変形例3]
また、上記の実施形態では、CPU16は、SMNPエージェントプログラムに基づいて、SMBIOS情報が記憶されている記憶領域から識別情報を読み出したが、他の方法で識別情報を取得してもよい。例えば、CPU16は、第1フラッシュメモリー15の所定の記憶領域にアクセスして、USBデバイスディスクリプターを取得し、取得したUSBデバイスディスクリプターに基づいて識別情報を生成し、生成した識別情報を取得してもよい。つまり、CPU16は、外部装置100から照会要求や通信要求を受信したとき、一次情報となる所定の記憶領域内のUSBデバイスディスクリプターを用いて識別情報を生成してもよいし、二次情報となるSMBIOS情報を読み出してもよい。
[変形例4]
上記の実施形態では、USBデバイスディスクリプターの「iProduct」に、Product suffixの情報87を付加したProduct Nameの情報81と、「iSerial Number」に基づくSerial Numberの情報82と、を識別情報としたが、識別情報の生成アルゴリズムは、これに限らない。例えば、「iProduct」に、Product suffixの情報87と、「iSerial Number」と、を付加した情報や「iManufacturer」を、Product Nameの情報81としてもよい。このように、USBデバイスディスクリプターの各情報を利用し、所定の生成アルゴリズムに基づいて、識別情報を生成してもよい。
[変形例5]
また、上記の実施形態では、BIOSを用いて識別情報を生成したが、プリンター20を制御するデバイスドライバーなどのアプリケーションプログラムを用いて識別情報を生成してもよい。この場合、アプリケーションプログラムは、HDD60に記憶される。
[変形例6]
上記の実施形態では、CPUボード10とプリンター20が、USB通信規格に基づいて通信する場合を例示したが、他の通信規格に基づいて通信する構成でもよい。例えば、CPUボード10とプリンター20が、RS-232などのシリアル通信規格に基づいて通信する構成でもよい。
[変形例7]
上記の実施形態では、「内部機器」としてプリンター20を例示したが、プリンター20に限らず、他の機器を用いてもよい。例えば、情報処理装置1がPOS端末である場合、スキャナー、表示機器、キーボード、キャッシュドロワーなどを「内部機器」として用いてもよい。また、1台のCPUボード10に、複数の機器が接続される構成でもよい。
[変形例8]
上記の実施形態では、「制御機器」としてCPUボード10を例示したが、CPUボード10に限らず、他の機器を用いてもよい。例えば、各種集積回路やインターフェースボードを「制御機器」として用いてもよい。
[変形例9]
上記の実施形態では、CPU16は、第1フラッシュメモリー15に識別情報が記憶されていないと判定した場合に、Auto Fill処理を実行して識別情報を生成したが、CPUボード10の初回起動時以降は、識別情報を書き換え不能としてもよい。
[その他の変形例]
上記の各実施形態および各変形例に示した情報処理装置1の各処理を実行する方法、情報処理装置1の各処理を実行するためのプログラム、またそのプログラムを記録したコンピューター読み取り可能な記録媒体も、発明の権利範囲に含まれる。また、各実施形態および各変形例を組み合わせた構成としてもよい。その他、ハードウェアとソフトウェアの協業により情報処理装置1の各処理を実現するなど、発明の要旨を逸脱しない範囲で、適宜変更が可能である。
[付記]
以下、情報処理装置1および情報処理装置1の制御方法について付記する。
情報処理装置1は、外部装置100とネットワークNWを介して通信可能であり、制御部16を有する制御機器10と、制御機器10とネットワークNWとは異なる通信方式で通信可能であり、機器情報を有する内部機器20と、を備え、制御部16は、内部機器20から機器情報を取得し、取得した機器情報に基づいて内部機器20に対応する識別情報を生成し、ネットワークNWを介して、外部装置100から内部機器20に対する照会要求を受信すると、生成した識別情報を示す第1応答情報を外部装置100に送信する。
情報処理装置1の制御方法は、外部装置100とネットワークNWを介して通信可能であり、制御部16を有する制御機器10と、制御機器10とネットワークNWを介さず通信可能であり、機器情報を有する内部機器20と、を備えた情報処理装置1の制御方法であって、内部機器20から機器情報を取得し、取得した機器情報に基づいて内部機器20に対応する識別情報を生成し、ネットワークNWを介して、外部装置100から内部機器20に対する照会要求を受信すると、生成した識別情報を示す第1応答情報を外部装置100に送信する。
この構成によれば、ネットワーク通信に対応していない内部機器20を、外部装置100からネットワークNWを介して制御する場合において、制御機器10が、内部機器20から取得した機器情報に基づいて、内部機器20に対応する識別情報を生成するため、ユーザーの手を煩わせることなく、制御機器10に識別情報を付与することができる。
上記の情報処理装置1において、制御機器10は、BIOSの設定値が記憶される第1記憶部15を有し、制御部16は、生成した識別情報を第1記憶部15に記憶させることが好ましい。
この構成によれば、BIOSの設定値が記憶される第1記憶部15に識別情報を記憶させるため、情報処理装置1のOSが変更された場合でも、識別情報を変更する必要がない。また、HDD60など、取り外し可能な記憶装置に識別情報を記憶させると、記憶装置が取り外された場合に識別情報を付与し直す必要があるが、BIOSの設定値が記憶される第1記憶部15に識別情報を記憶させるため、そのような問題がない。また、制御機器10内に識別情報を記憶させるため、内部機器20が接続されていない場合でも、外部装置100に応答することができる。
上記の情報処理装置1において、第1記憶部15とは異なる第2記憶部60を備え、制御部16は、所定の通信プロトコルに基づく通信を実現するための通信プログラムを、第2記憶部60から読み出して実行し、ネットワークNWを介して、外部装置100から内部機器20に対する通信要求を受信すると、第1記憶部15に記憶されている識別情報を所定の通信プロトコルで利用可能な形式の第2応答情報に変換し、第2応答情報を外部装置100に送信することが好ましい。
この構成によれば、BIOSの設定値が記憶される第1記憶部15とは異なる第2記憶部60に記憶されている通信プログラムを用いて、プロトコル変換および外部装置100との通信を行うことができる。これにより、使用する通信プログラムが、第1記憶部15に記憶可能なものに制約されることがない。
上記の情報処理装置1において、制御機器10と内部機器20の間の通信方式はUSB通信規格に対応したものであり、内部機器20は、USB機器であり、機器情報は、USBデバイスディスクリプターであり、通信プログラムは、SMBIOSプログラムおよびSNMPエージェントプログラムの少なくとも一方を含むことが好ましい。
この構成によれば、ネットワーク通信に対応していないUSB機器を、外部装置100からネットワークNWを介して制御することができる。また、制御機器10は、SMBIOSプログラムおよびSNMPエージェントプログラムの少なくとも一方を用いて、外部装置100に第2応答情報を送信することができる。
上記の情報処理装置1において、制御部16は、少なくとも、制御機器10の初回起動時に、識別情報を生成することが好ましい。
この構成によれば、少なくとも、制御機器10の初回起動時に、制御機器10に識別情報を付与することができる。
上記の情報処理装置1において、制御部16は、制御機器10の起動時に、第1記憶部15に識別情報が記憶されているか否かを判別し、第1記憶部15に識別情報が記憶されていないと判定した場合、識別情報を生成し、第1記憶部15に識別情報が記憶されていると判定した場合、機器情報を生成しないことが好ましい。
この構成によれば、第1記憶部15に識別情報が記憶されていないと判定した場合に、識別情報を生成するため、初回起動時や、ユーザーが意図的に識別情報を削除した場合に、制御機器10に識別情報を付与することができる。また、第1記憶部15に識別情報が記憶されていると判定した場合は、識別情報を生成しないため、誤って識別情報が変更されることがない。
上記の情報処理装置1において、内部機器20は、印刷機構22を有することが好ましい。
この構成によれば、内部機器20としてネットワークNWに対応していないプリンター20を一体的に構成した情報処理装置1に適応できる。外部装置100からネットワークNWを介して情報処理装置1に印刷データを送って印刷することができる。
1…情報処理装置、10…CPUボード、11…第1USBポート、12…USBコントローラー、13…ネットワークポート、14…ネットワークコントローラー、15…第1フラッシュメモリー、20…プリンター、21…第2USBポート、22…プリンターエンジン、23…第2フラッシュメモリー、24…プリンターコントローラー、30…ディスプレー、40…キーボード、50…マウス、60…HDD、70…バス。

Claims (7)

  1. 外部装置とネットワークを介して通信可能であり、BIOSの設定値が記憶される第1記憶部と、制御部を有する制御機器と、
    前記制御機器と前記ネットワークとは異なる通信方式で通信可能であり、機器情報を有する内部機器と、を備え、
    前記制御部は、
    前記内部機器から前記機器情報を取得し、取得した前記機器情報に基づいて前記内部機器に対応する識別情報を生成し、生成した前記識別情報を前記第1記憶部に記憶させ、
    前記ネットワークを介して、前記外部装置から前記内部機器に対する照会要求を受信すると、生成した前記識別情報を示す第1応答情報を前記外部装置に送信することを特徴とする情報処理装置。
  2. 前記第1記憶部とは異なる第2記憶部を備え、
    前記制御部は、
    所定の通信プロトコルに基づく通信を実現するための通信プログラムを、前記第2記憶部から読み出して実行し、
    前記ネットワークを介して、前記外部装置から前記内部機器に対する通信要求を受信すると、前記第1記憶部に記憶されている前記識別情報を前記所定の通信プロトコルで利用可能な形式の第2応答情報に変換し、前記第2応答情報を前記外部装置に送信することを特徴とする請求項に記載の情報処理装置。
  3. 前記制御機器と前記内部機器の間の通信方式はUSB通信規格に対応したものであり、
    前記内部機器は、USB機器であり、
    前記機器情報は、USBデバイスディスクリプターであり、
    前記通信プログラムは、SMBIOSプログラムおよびSNMPエージェントプログラムの少なくとも一方を含むことを特徴とする請求項に記載の情報処理装置。
  4. 前記制御部は、
    少なくとも、前記制御機器の初回起動時に、前記識別情報を生成することを特徴とする請求項1ないしのいずれか1項に記載の情報処理装置。
  5. 前記制御部は、
    前記制御機器の起動時に、前記第1記憶部に前記識別情報が記憶されているか否かを判別し、前記第1記憶部に前記識別情報が記憶されていないと判定した場合、前記識別情報を生成し、前記第1記憶部に前記識別情報が記憶されていると判定した場合、前記機器情報を生成しないことを特徴とする請求項ないしのいずれか1項に記載の情報処理装置。
  6. 前記内部機器は、印刷機構を有することを特徴とする請求項1ないしのいずれか1項に記載の情報処理装置。
  7. 外部装置とネットワークを介して通信可能であり、BIOSの設定値が記憶される第1記憶部と、制御部を有する制御機器と、
    前記制御機器と前記ネットワークとは異なる通信方式で通信可能であり、機器情報を有する内部機器と、を備えた情報処理装置の制御方法であって、
    前記内部機器から前記機器情報を取得し、取得した前記機器情報に基づいて前記内部機器に対応する識別情報を生成し、生成した前記識別情報を前記第1記憶部に記憶させ、
    前記ネットワークを介して、前記外部装置から前記内部機器に対する照会要求を受信すると、生成した前記識別情報を示す第1応答情報を前記外部装置に送信することを特徴とする情報処理装置の制御方法。
JP2018162175A 2018-08-30 2018-08-30 情報処理装置および情報処理装置の制御方法 Active JP7127434B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018162175A JP7127434B2 (ja) 2018-08-30 2018-08-30 情報処理装置および情報処理装置の制御方法
CN201910796280.4A CN110874342B (zh) 2018-08-30 2019-08-27 信息处理装置及信息处理装置的控制方法
US16/555,861 US11226780B2 (en) 2018-08-30 2019-08-29 Information processing apparatus and control method of information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018162175A JP7127434B2 (ja) 2018-08-30 2018-08-30 情報処理装置および情報処理装置の制御方法

Publications (2)

Publication Number Publication Date
JP2020035242A JP2020035242A (ja) 2020-03-05
JP7127434B2 true JP7127434B2 (ja) 2022-08-30

Family

ID=69641129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018162175A Active JP7127434B2 (ja) 2018-08-30 2018-08-30 情報処理装置および情報処理装置の制御方法

Country Status (3)

Country Link
US (1) US11226780B2 (ja)
JP (1) JP7127434B2 (ja)
CN (1) CN110874342B (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005020391A (ja) 2003-06-26 2005-01-20 Toshiba Corp 電子機器
US20070095906A1 (en) 2005-10-27 2007-05-03 Camilleri Mark A Configuration management and asset tracking method and system
JP2014102621A (ja) 2012-11-19 2014-06-05 Brother Ind Ltd 通信中継プログラム、通信中継装置、及び、画像処理装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4464029B2 (ja) * 2001-04-19 2010-05-19 キヤノン株式会社 情報処理方法および制御プログラムおよび情報処理装置および周辺装置および応答方法および代理応答装置およびネットワークシステム
JP5803600B2 (ja) 2011-11-18 2015-11-04 サイレックス・テクノロジー株式会社 デバイス識別装置
JP5808732B2 (ja) * 2012-12-28 2015-11-10 京セラドキュメントソリューションズ株式会社 画像形成システム並びにこれを構成する画像形成装置及び情報処理装置
JP6874405B2 (ja) * 2017-02-07 2021-05-19 株式会社リコー 情報処理装置、プログラム、システム
JP2019204230A (ja) * 2018-05-22 2019-11-28 東芝テック株式会社 画像処理システム及び携帯型情報処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005020391A (ja) 2003-06-26 2005-01-20 Toshiba Corp 電子機器
US20070095906A1 (en) 2005-10-27 2007-05-03 Camilleri Mark A Configuration management and asset tracking method and system
JP2014102621A (ja) 2012-11-19 2014-06-05 Brother Ind Ltd 通信中継プログラム、通信中継装置、及び、画像処理装置

Also Published As

Publication number Publication date
US11226780B2 (en) 2022-01-18
JP2020035242A (ja) 2020-03-05
CN110874342A (zh) 2020-03-10
US20200073605A1 (en) 2020-03-05
CN110874342B (zh) 2024-02-02

Similar Documents

Publication Publication Date Title
US11989462B2 (en) Information processing apparatus, method, and a non-transitory storage medium, receives first print settings information supports the internet printing protocol (IPP) and further receives second print settings that does not support the internet printing protocol (IPP) from printer
US8773691B2 (en) Printing control apparatus, printing control method, and storage medium
US8780388B2 (en) Printing apparatus, server, printing system, control method for printing apparatus, and storage medium storing control program therefor
US9086826B2 (en) Information processing apparatus, method for controlling the same, and storage medium
JP2017173892A (ja) 情報処理装置、プログラム及び印刷システム
US20220357901A1 (en) Image forming apparatus, control method, and storage medium
JP2009015750A (ja) ネットワークシステムおよびプログラム
JP2009015748A (ja) ネットワークシステムおよびプログラム
JP4458884B2 (ja) デバイス構成情報の取得方法及び情報処理装置
JP7127434B2 (ja) 情報処理装置および情報処理装置の制御方法
US20230146770A1 (en) Storage medium, information processing apparatus, control method, and system
US11226779B2 (en) Printing system and control method
US8892796B2 (en) Image forming apparatus and control method thereof
JP5957982B2 (ja) 機器連携システム、情報処理装置、及び機器連携プログラム
JP2005157686A (ja) 印刷制御装置、印刷制御方法およびコンピュータプログラム
JP2002287931A (ja) 情報処理装置および印刷制御装置およびプルプリント印刷システムおよび情報処理方法およびデータ処理方法および記憶媒体並びにプログラム
JP6278063B2 (ja) 機器連携システム、情報処理装置、及び機器連携プログラム
KR20140097998A (ko) 인쇄 제어 장치, 인쇄 제어 방법, 및, 인쇄 시스템
US20230144820A1 (en) Printing apparatus and control method
US20230251806A1 (en) Storage medium, information processing apparatus, and control method
JP6260682B2 (ja) プリンターおよびプリンターの制御方法
JP6206521B2 (ja) 印刷制御スクリプトおよびクライアント端末の制御方法
JP4996494B2 (ja) ファクシミリデータ送信プログラムおよびファクシミリデータ送信方法
US20060033949A1 (en) Output device identification apparatus, control program for identifying the output device and method for identifying the output device
JP2002163083A (ja) ネットワーク・プリンタ管理方法、印刷システムおよび情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210817

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220425

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220524

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220705

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: 20220719

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220801

R150 Certificate of patent or registration of utility model

Ref document number: 7127434

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150