JP2021005809A - 通信装置、プログラム、及び制御方法 - Google Patents
通信装置、プログラム、及び制御方法 Download PDFInfo
- Publication number
- JP2021005809A JP2021005809A JP2019119016A JP2019119016A JP2021005809A JP 2021005809 A JP2021005809 A JP 2021005809A JP 2019119016 A JP2019119016 A JP 2019119016A JP 2019119016 A JP2019119016 A JP 2019119016A JP 2021005809 A JP2021005809 A JP 2021005809A
- Authority
- JP
- Japan
- Prior art keywords
- information
- communication device
- printer
- predetermined signal
- communication
- 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
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
【課題】無線信号の送信電力を適切に設定すること。【解決手段】所定の信号を無線によって送信する通信装置は、所定の信号の送信に用いられる送信電力に関する値を少なくとも含んだ教師データが用いられた機械学習によって得られたモデルに、通信装置の状態に関する情報が入力された結果に基づき、送信電力に関する値を特定し、特定された送信電力に関する値に基づいて、所定の信号を無線によって送信する。【選択図】図16
Description
本発明は、無線信号の送信電力制御技術に関する。
近年、低電力での無線通信が可能な無線通信規格として、Bluetooth(登録商標) Low Energy(BLE)規格が知られている。BLEでは、ペリフェラルの役割で動作する装置が自装置を周囲の他の装置に発見させるためのアドバタイジング(アドバタイズ信号の送信)を行う。一方、セントラルの役割で動作する装置が、アドバタイジングを行っている装置を発見し、その装置に接続する。そして、これらの接続が確立された装置間で無線通信が行われる。特許文献1には、ペリフェラルが、自装置が送信したアドバタイズ信号をセントラルが検出できないこと等に基づいて、セントラルから一定時間コネクション要求を受信しなかった場合、アドバタイズ信号の送信電力を徐々に高くする技術が記載されている。
無線信号の送信電力を徐々に増やす手法では、情報の伝達に要する時間が長期化してしまう場合がある。一方、無線信号の送信電力を常時最大とすると、消費電力が増加し、又は、干渉が増えてしまうことが想定される。
本発明は、無線信号の送信電力を適切に設定する技術を提供する。
本発明の一態様による通信装置は、所定の信号を無線によって送信する通信装置であって、前記所定の信号の送信に用いられる送信電力に関する値を少なくとも含んだ教師データが用いられた機械学習によって得られたモデルに、前記通信装置の状態に関する情報が入力された結果に基づき、前記送信電力に関する値を特定する特定手段と、前記特定された前記送信電力に関する値に基づいて、前記所定の信号を無線によって送信する送信手段と、を有する。
本発明によれば、無線信号の送信電力を適切に設定することができる。
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
本実施形態の通信装置及び端末装置について説明する。通信装置として、本実施形態では、複写サービス、FAXサービス、印刷サービスを提供可能なマルチファンクションプリンタ(以後、MFP)を例示しているが、これに限定されない。通信装置として、情報処理装置と通信を行うことが可能な装置であれば、種々のものを適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等を適用可能である。また、複写機やファクシミリ装置、スマートフォン、携帯電話、PC、タブレット端末、PDA、デジタルカメラ、音楽再生デバイス、ストレージ、プロジェクタ、スマートスピーカ等、印刷以外のサービスを提供可能な装置にも適用可能である。なお、スマートスピーカとは、ユーザが発する音声に従って、同一のネットワークに存在する機器に対して処理を指示したり、ユーザが発する音声に対応して、ネットワークを介して取得した情報をユーザに通知したりするための装置である。その他、単一の機能を備えるシングルファンクションプリンタ(以後、SFP)も適用可能である。また端末装置として、本実施形態ではスマートフォンを例示している。なお、本発明を適用可能な端末装置は、スマートフォンに限定されず、前述の通信装置と通信可能な装置であれば良い。例えば、端末装置として、デジタルカメラ、携帯電話、パーソナルコンピュータ(PC)、タブレット端末、PDA(Personal Digital Assistant)等を適用可能である。
(システム構成)
図1に、本実施形態における処理システム100の構成例を示す。処理システム100は、クラウドサーバ200、エッジサーバ300、及び、各種のデバイス400を含んで構成される。これらのサーバ及び各種デバイスは、一例において、ローカルエリアネットワーク102およびインターネット104を介して接続される。デバイス400は、ネットワーク接続が可能な各種通信装置を含み、例えば、端末装置であるスマートフォン500、通信装置であるプリンタ600、パーソナルコンピュータやワークステーションなどのクライアント端末700、及び、デジタルカメラ800などを含む。なお、デバイス400は、これらの種類に限られず、例えば、通信機能を含んだ、冷蔵庫、テレビ、エアコンなどの家電製品等であってもよい。これらのデバイス400は、例えば、ローカルエリアネットワーク102を介して相互に接続され、ローカルエリアネットワーク102に設置されているルータ103を介してインターネット104に接続することができる。ここで、ルータ103は、ローカルエリアネットワーク102とインターネット104とを接続する機器として図示されているが、これに限られない。例えば、ルータ103は、ローカルエリアネットワーク102を構成する無線LANのアクセスポイントであってもよい。また、ルータ103は、有線のローカルエリアネットワーク102とインターネット104とを接続しながら、アクセスポイント機能によって無線のローカルエリアネットワーク102を構成してもよい。
図1に、本実施形態における処理システム100の構成例を示す。処理システム100は、クラウドサーバ200、エッジサーバ300、及び、各種のデバイス400を含んで構成される。これらのサーバ及び各種デバイスは、一例において、ローカルエリアネットワーク102およびインターネット104を介して接続される。デバイス400は、ネットワーク接続が可能な各種通信装置を含み、例えば、端末装置であるスマートフォン500、通信装置であるプリンタ600、パーソナルコンピュータやワークステーションなどのクライアント端末700、及び、デジタルカメラ800などを含む。なお、デバイス400は、これらの種類に限られず、例えば、通信機能を含んだ、冷蔵庫、テレビ、エアコンなどの家電製品等であってもよい。これらのデバイス400は、例えば、ローカルエリアネットワーク102を介して相互に接続され、ローカルエリアネットワーク102に設置されているルータ103を介してインターネット104に接続することができる。ここで、ルータ103は、ローカルエリアネットワーク102とインターネット104とを接続する機器として図示されているが、これに限られない。例えば、ルータ103は、ローカルエリアネットワーク102を構成する無線LANのアクセスポイントであってもよい。また、ルータ103は、有線のローカルエリアネットワーク102とインターネット104とを接続しながら、アクセスポイント機能によって無線のローカルエリアネットワーク102を構成してもよい。
デバイス400のそれぞれは、有線LANと無線LANとのいずれでルータ103と接続してもよい。例えば、プリンタ600やクライアント端末700は有線LANでルータ103と接続し、スマートフォン500やデジタルカメラ800は無線LANでルータ103と接続するように構成されてもよい。デバイス400のそれぞれ及びエッジサーバ300は、ルータ103を介して接続されたインターネット104を経由して、クラウドサーバ200と相互に通信することができる。また、エッジサーバ300とデバイス400のそれぞれは、ローカルエリアネットワーク102を介して相互に通信可能でありうる。また、それぞれのデバイス400は、ローカルエリアネットワーク102を介して相互に通信可能でありうる。また、スマートフォン500とプリンタ600は、近距離無線通信101によって通信可能である。近距離無線通信101は、例えば、Bluetooth(登録商標)規格やNFC規格に準拠した無線通信でありうる。また、スマートフォン500は、携帯電話回線網105とも接続され、この携帯電話回線網105を介してクラウドサーバ200と通信可能である。なお、図1の構成例は一例に過ぎず、処理システム100は、異なる構成を有してもよい。例えば、上述の例では、ルータ103がアクセスポイント機能を有しうると説明したが、ルータ103と異なるアクセスポイントが含まれてもよい。また、エッジサーバ300とデバイス400のそれぞれとの間の接続は、ローカルエリアネットワーク102を用いる態様以外の態様で行われてもよい。例えば、無線LAN以外に、LPWA(Low Power Wide Area)、ZigBee(登録商標)、Bluetooth(登録商標)、又は近距離無線通信などの無線通信や、USBなどの有線接続や赤外線通信などが用いられてもよい。
本実施形態では、プリンタ、複合機等の画像処理装置が、Bluetooth Low Energy(BLE)による無線通信を介して、その画像処理装置を使用しているクライアント等に装置の故障やエラー状態等の画像処理装置の状態を通知する。一例として、スマートフォン500がセントラルとして動作し、プリンタ600がペリフェラルとして動作するものとする。この場合、プリンタ600は、アドバタイズ信号を間欠的にブロードキャスト送信する。そして、スマートフォン500は、そのアドバタイズ信号を検出することにより、周囲にプリンタ600が存在することを認識することができる。スマートフォン500は、アドバタイズ信号を検出したことに基づいて、その信号の送信元であるプリンタ600とのBLEによる無線接続を確立する。そして、スマートフォン500は、プリンタ600が有する能力(機能)を問い合わせて、その機能を実行することができる。例えば、プリンタ600は、印刷ジョブを実行可能な状態である場合、能力の情報として、印刷機能を有すること、及び印刷ジョブを実行可能な状態であることをスマートフォン500へ通知しうる。スマートフォン500は、そのプリンタ600との間でBLEによる無線接続を確立して、問い合わせによりプリンタ600が印刷ジョブを実行可能であることを認識する。そして、スマートフォン500は、その認識の結果に基づいて、プリンタ600に対して印刷ジョブを送信することにより、プリンタ600に印刷を実行させることができる。なお、スマートフォン500は、例えば、プリンタ600が印刷機能を有するものの、エラーが発生していることなどを、能力情報を取得することによって認識し、エラーが発生しているプリンタ600に対して印刷ジョブを送らないようにすることもできる。
一方、スマートフォン500は、プリンタ600から送信されたアドバタイズ信号の受信強度が不十分である場合、そのアドバタイズ信号を検出できない場合がある。この場合、プリンタ600は、スマートフォン500との接続を確立することができないため、自装置においてエラーが発生したこと等の状態の変化の発生をスマートフォン500に認識させることができない。このとき、プリンタ600は、一定時間にわたってスマートフォン500からコネクション要求が来ない場合に、アドバタイズ信号の送信電力を徐々に強くすることにより、スマートフォン500に、そのアドバタイズ信号を検出させることができる。しかしながら、例えばユーザがネットワーク経由でプリンタと離れた場所から印刷している際に緊急性の高いエラーが発生した場合などにおいて、アドバタイズ信号の送信電力を徐々に増加させていると、ユーザに対して適時に情報を通知することができない。これに対して、アドバタイズ信号の送信電力を最初から最大電力とすることにより、情報がユーザに通知されるまでの時間を短縮することができる。しかしながら、送信電力が小さいアドバタイズ信号であっても十分な電力でスマートフォン500に到達する場合などに不必要に送信電力を最大とすると、消費電力や他の信号への干渉が増加してしまう。このため、本実施形態では、プリンタ600が、自装置の状態に応じて送信信号の適切な送信電力を決定するようにする。以下では、このような処理を行うための各装置の構成と処理の流れについて説明する。
(装置構成)
図2に、クラウドサーバ200及びエッジサーバ300の構成例を示す。ここでは、クラウドサーバ200とエッジサーバ300とが共通のハードウェア構成を有するものとし、以下では、特に区別する必要がない場合には、これらをまとめてサーバと呼ぶ。なお、これらのサーバは共通の構成を有しなくてもよい。例えば、クラウドサーバ200には後述のGPU217が搭載され、エッジサーバ300にはこのGPU217が搭載されなくてもよい。また、それぞれのサーバにおいて、各機能部の性能が異なっていてもよい。
図2に、クラウドサーバ200及びエッジサーバ300の構成例を示す。ここでは、クラウドサーバ200とエッジサーバ300とが共通のハードウェア構成を有するものとし、以下では、特に区別する必要がない場合には、これらをまとめてサーバと呼ぶ。なお、これらのサーバは共通の構成を有しなくてもよい。例えば、クラウドサーバ200には後述のGPU217が搭載され、エッジサーバ300にはこのGPU217が搭載されなくてもよい。また、それぞれのサーバにおいて、各機能部の性能が異なっていてもよい。
サーバは、装置全体の制御を行うメインボード210と、ネットワーク接続ユニット201と、ハードディスクユニット202とを含んで構成される。メインボード210は、例えば、CPU211、プログラムメモリ213、データメモリ214、ネットワーク制御回路215、ハードディスク制御回路216、及び、GPU217を含んで構成される。なお、これらのブロックは、内部バス212を介して相互に通信可能に構成される。ここで、CPUは、Central Processing Unitの頭字語であり、GPUは、General Processing Unitの頭字語である。CPU211、GPU217、プログラムメモリ213等によって、サーバのコンピュータが形成される。CPU211は、内部バス212を介して接続されているプログラムメモリ213に格納されている制御プログラムと、データメモリ214の内容とに従って各種処理を実行する。例えば、CPU211は、ネットワーク制御回路215を介してネットワーク接続ユニット201を制御することで、サーバをインターネット104やローカルエリアネットワーク102などのネットワークと接続させ、他の装置との通信を行わせる。また、例えば、CPU211は、ハードディスク制御回路216を経由して接続されたハードディスクユニット202を制御することにより、データの読み書きを実行することができる。ハードディスクユニット202には、プログラムメモリ213にロードして使用されるオペレーティングシステムや、サーバの制御ソフトウェアが格納される。また、ハードディスクユニット202には、各種のデータも格納される。GPU217は、各種演算処理をCPU211の代わりに実行することができる。GPU217は、データをより多く並列処理することにより、効率的な演算を行うことができる。このため、GPU217は、ディープラーニングのような学習モデルを用いて複数回に渡り学習を行う場合に用いられることが有効である。このため、本実施形態では、後述の学習部251による処理にはCPU211に加えてGPU217が用いられるものとする。例えば、学習モデルを含む学習プログラムを実行する場合に、CPU211とGPU217とが協働して演算を行うことにより学習を行う。なお、学習部251の処理には、CPU211とGPU217とのいずれか一方のみが用いられてもよい。また、後述の推論部351の処理にも、学習部251と同様にGPU217が用いられてもよい。なお、高速演算処理のために、GPU217に代えて又はこれに加えて、FPGA(フィールドプログラマブルゲートアレイ)やASIC(特定用途向け集積回路)が用いられてもよい。
図3は、スマートフォン500の外観構成の例を示している。スマートフォン500は、セルラ通信網などによる通信機能の他に、カメラや、ネットブラウザ、メール機能などを搭載した多機能型の携帯電話のことである。このため、スマートフォン500は、例えば、セルラ通信網(公衆回線網)に接続するためのアンテナ及び通信回路を含んだ回線接続ユニット503を含みうる。また、スマートフォン500は、所定距離内にいる通信相手の近距離無線通信ユニットと近距離無線通信を行うためのアンテナ及び回路を含んだ近距離無線通信ユニット501を有する。近距離無線通信は、例えば、NFCやBluetooth規格に準拠した通信である。本実施形態では、近距離無線通信ユニット501は、Bluetooth4.0規格のうちのBluetoothクラシックとBLEとの両方をサポートしているものとする。スマートフォン500は、さらに、無線LANを利用してローカルエリアネットワーク102と接続して通信を行うためのアンテナ及び回路を含んだ無線LANユニット502を有しうる。無線LANユニット502は、例えば、IEEE802.11規格シリーズのうちのいずれかの規格をサポートしているものとする。なお、近距離無線通信ユニット501、無線LANユニット502、及び回線接続ユニット503は、スマートフォン500に内蔵されており、外観からは視認できなくてもよい。
スマートフォン500は、LCD(液晶ディスプレイ)方式の表示機構とタッチパネル方式の操作機構を兼ね備えたタッチパネルディスプレイ504を有する。タッチパネルディスプレイ504は、例えば、スマートフォン500の前面に設けられる。スマートフォン500は、例えば、タッチパネルディスプレイ504上にボタン状の操作パーツを表示し、ユーザによるその操作パーツへのタッチ操作を検出することによって、ユーザ操作を受け付ける。なお、他の形式でユーザ操作が受け付けられてもよい。スマートフォン500は、さらに、自装置の電源のオン/オフのユーザ操作を受付可能な電源ボタン505を有する。なお、図3の構成は一例に過ぎず、スマートフォン500は、これら以外の特徴部分を有してもよいし、これらの一部の構成を有しなくてもよい。
図4に、スマートフォン500の内部構成例を示す。スマートフォン500は、装置全体の制御を行うメインボード510と、上述の無線LANユニット502、近距離無線通信ユニット501、及び、回線接続ユニット503とを含んで構成される。メインボード510は、例えば、CPU511、プログラムメモリ513、データメモリ514、無線LAN制御回路515、近距離無線通信制御回路516、回線制御回路517、操作部制御回路518、カメラ519、及び不揮発性メモリ521を含む。なお、これらの機能部は、内部バス512を介して相互に通信可能に構成される。CPU511は、内部バス512を介して接続されているROM形態のプログラムメモリ513に格納されている制御プログラムと、RAM形態のデータメモリ514に格納されている情報の内容とに基づいて、各種処理を実行する。例えば、CPU511は、無線LAN制御回路515を介して無線LANユニット502を制御することで、他の通信端末装置との無線LAN通信をスマートフォン500に実行させる。また、CPU511は、近距離無線通信制御回路516を介して近距離無線通信ユニット501を制御することによって、他の近距離無線通信端末との接続及びデータの送受信をスマートフォン500に実行させる。また、CPU511は、回線制御回路517を介して回線接続ユニット503を制御することで、携帯電話回線網105への接続と通話やデータ送受信とを、スマートフォン500に実行させる。さらに、CPU511は、操作部制御回路518を制御することによって、タッチパネルディスプレイ504に所望の表示を行わせ、ユーザからの操作を受け付ける。また、CPU511は、カメラ519を制御して画像を撮影させることができ、撮影によって得られた画像をデータメモリ514中の画像メモリ520に格納させることができる。また、撮影によって得られた画像に加えて又はこれに代えて、携帯電話回線網105、ローカルエリアネットワーク102、近距離無線通信101等を通じて外部から取得した画像を画像メモリ520に格納してもよい。また、画像メモリ520等のスマートフォン500の内部に格納されている画像やその他の情報が外部に送信されうる。不揮発性メモリ521は、フラッシュメモリ等で構成され、電源をオフされた後にも継続して保存されるべきデータを格納する。例えば、電話帳データ、各種通信接続情報、過去に接続したデバイス情報、保存しておきたい画像データ、またはスマートフォン500の各種機能を実現するアプリケーションソフトウェアなどの一部または全部が不揮発性メモリ521に格納される。
図5(A)及び図5(B)は、プリンタ600の外観構成の例を示している。本実施形態では、プリンタ600が、プリンタ、スキャナ、及びその他の機能を兼ね備えたマルチファンクションプリンタ(MFP)である例を示している。図5(A)は、プリンタ600の全体外観構成の例を表している。図5(A)において、原稿台601は、ガラス状の透明な台であり、原稿をのせてスキャナで読み取る時に使用される。原稿台圧板602は、スキャナで読み取りが行われる際に原稿が浮かないように原稿台に押しつけ、外光がスキャナユニットに入らないようにするために用意されたカバーである。印刷用紙挿入口603は、様々なサイズの用紙がセットされる挿入口である。ここにセットされた用紙は、一枚ずつ印刷部に搬送され、所望の印刷が行われた後に印刷用紙排出口604から排出される。図4(B)はプリンタ600上面の外観構成の例を示している。原稿台圧板602の上部には、操作パネル605および近距離無線通信ユニット606が配置されている。近距離無線通信ユニット606は、近距離無線通信を行うためのアンテナ及び回路を含んだユニットであり、所定距離内にいる通信相手の近距離無線通信ユニットと通信を行うことができる。なお、近距離無線通信ユニット606は、Bluetooth4.0規格に準拠する通信機能であり、少なくともBLEでの通信をサポートしているものとする。無線LANユニット607は、無線LANを用いて(例えばローカルエリアネットワーク102に接続して)通信を行うためのアンテナ及び回路を含んで構成されたユニットである。なお、近距離無線通信ユニット606及び無線LANユニット607は、プリンタ600に内蔵され、外観からは視認できなくてもよい。
図6に、プリンタ600の内部構成例を示す。プリンタ600は装置全体の制御を行うメインボード610と、上述の操作パネル605、近距離無線通信ユニット606、及び、無線LANユニット607とを含んで構成される。メインボード610は、例えば、CPU611、プログラムメモリ613、データメモリ614、スキャナ615、印刷部617、無線LAN制御回路618、近距離無線通信制御回路619、及び操作部制御回路620を含む。なお、これらの機能部は、内部バス612を介して相互に通信可能に構成される。CPU611は、例えば、マイクロプロセッサ形態をとりうる。ただし、これに限られず、任意の形態のプロセッサがCPU611として用いられうる。CPU611、プログラムメモリ613等によって、プリンタ600のコンピュータが形成される。CPU611は、例えば、内部バス612を介して接続されているROM形態のプログラムメモリ613に格納されている制御プログラムと、RAM形態のデータメモリ614に格納されている情報の内容とに従って、各種処理を実行する。また、CPU611は、スキャナ615を制御してプリンタ600に原稿を読み取らせ、データメモリ614中の画像メモリ616に格納させる。また、CPU611は、印刷部617を制御して、データメモリ614中の画像メモリ616の画像を記録媒体に印刷させることができる。さらに、CPU611は、無線LAN制御回路618を介して無線LANユニット607を制御することにより、プリンタ600に他の通信端末装置と無線LAN通信を行わせる。また、CPU611は、近距離無線通信制御回路619を介して近距離無線通信ユニット606を制御することによって、プリンタ600に、他の近距離無線通信端末との接続の検知やデータの送受信を行わせうる。CPU611は、操作部制御回路620を制御することによって操作パネル605にプリンタ600の状態の表示や機能選択メニューの表示を行わせ、ユーザからの操作を受け付けさせる。操作パネル605にはバックライトが備えられており、CPU611は、操作部制御回路620を介してバックライトの点灯、消灯を制御することができる。CPU611は、プリンタ600が使用されていない間などにおいて、バックライトを消灯させることによって、プリンタ600の消費電力を抑えることができる。
図7に、処理システム100の機能分担の例を示す。本実施形態では、機械学習に基づいて、スマートフォン500やプリンタ600等のデバイス400において無線信号を送信する際の電波強度(送信電力)の決定等を行う。このため、図7では、この機械学習における学習と推論のそれぞれを実行する部分の機能を抽出して図示している。なお、例えば、各装置上で動作するオペレーティングシステムや各種ミドルウェア、メンテナンスのためのアプリケーション等、その他の機能については図示及び説明を省略する。
クラウドサーバ200は、収集されたデータに基づいて学習用データを生成して学習モデルを生成するための処理を実行する。このために、クラウドサーバ200は、学習用データ生成部250、学習部251、及び、学習モデル252を含む。学習用データ生成部250は、外部から受信したデータから、学習部251が処理可能な学習用データを生成する。学習用データは、学習部251の入力データXと、学習の結果の正解を示す教師データTとの組み合わせである。学習部251は、学習用データ生成部250から受け取った学習用データを用いて、学習モデル252に対する学習を実行する。学習モデル252は、学習部251で行った学習の結果を蓄積する。ここでは、学習モデル252が、ニューラルネットワークとして実現されるものとする。ニューラルネットワークでは、各ノード間の重み付けパラメータが最適化されることにより、入力データの分類や評価値の決定を行うことができる。蓄積された学習モデル252は、エッジサーバ300に学習済モデルとして配信され、エッジサーバ300における推論処理に用いられる。
エッジサーバ300は、学習用データの生成に用いられるデータの収集と収集したデータのクラウドサーバ200への提供や、デバイス400から収集されたデータと、クラウドサーバ200から提供された学習モデル252とを用いた推論処理とを実行する。このために、エッジサーバ300は、データ収集・提供部350、推論部351、及び、学習済モデル352を含む。データ収集・提供部350は、デバイス400から受信したデータや、エッジサーバ300から収集したデータを、学習に用いるためのデータ群としてクラウドサーバ200へ送信する。推論部351は、デバイス400から送られるデータについて、学習済モデル352を用いて推論を実行し、その結果をデバイス400に返送する。デバイス400から送られるデータは、推論部351の入力データXとなるデータである。学習済モデル352は、推論に用いられるモデルであり、学習モデル252と同様にニューラルネットワークとして実現されるものとする。ただし、後述のように、学習済モデル352は、学習モデル252と同一のものであってもよいし、学習モデル252から抽出された学習モデル252の一部であってもよい。学習済モデル352は、クラウドサーバ200で蓄積されて配信された学習モデル252の全部または推論に必要な一部が格納される。
デバイス400は、アプリケーション部450、データ送受信部451を備える。アプリケーション部450は、デバイス400において実行する各種の機能を実現するモジュールであり、機械学習による学習・推論の仕組みを利用するモジュールである。データ送受信部451は、エッジサーバ300に学習または推論を依頼するモジュールである。学習時には、アプリケーション部450からの依頼により学習に用いるデータをエッジサーバ300のデータ収集・提供部350へ送信する。また、推論時には、アプリケーション部450からの依頼により推論に用いるデータをエッジサーバ300へ送信し、その結果を受信してアプリケーション部450に返す。
なお、図7では、クラウドサーバ200で学習した学習モデル252をエッジサーバ300に学習済モデル352として配信し、推論に利用する場合の例を示したが、これに限られない。すなわち、学習と推論とのそれぞれを、クラウドサーバ200、エッジサーバ300、デバイス400のいずれにおいて実行するかは、ハードウェア資源の配分や計算量、データ通信量の大小に応じて決定されうる。また、これら資源の配分や計算量、データ通信量の増減に応じて、役割の分担が動的に変更されてもよい。図7のように、学習と推論を行う主体が異なる場合、推論側は、推論で使用するロジックや学習済モデル352の容量を削減することができ、また、高速に推論を実行することができるように構成されうる。同様に、学習側についても、相対的にロジックを低容量化し、高速な処理を実行することができる。
図8(A)及び図8(B)に、学習時における学習モデル252及び推論時における学習済モデル352をそれぞれ利用する際の入出力データの関係の例を示す。図8(A)において、入力データX801は、学習モデル252の入力層のデータである。入力データX801を機械学習モデルである学習モデル252を用いて認識した結果として出力データY803が出力される。学習時には、入力データX801の認識結果の正解データとして教師データT802が与えられるため、出力データY803と教師データT802とを、損失関数804に与えることにより、認識結果の正解からのずれ量L805が得られる。多数の学習用データに対してずれ量L805が小さくなるように、学習モデル252中のニューラルネットワークのノード間の結合重み付け係数等が更新される。機械学習のアルゴリズムとしては、例えば、誤差逆伝搬法が用いられうる。誤差逆伝搬法は、上述のずれ量が小さくなるように、各ニューラルネットワークのノード間の結合重み付け係数等を調整する手法である。なお、機械学習のアルゴリズムとして、最近傍法、ナイーブベイズ法、決定木、サポートベクターマシンなどが用いられてもよい。また、ニューラルネットワークを利用して、学習するための特徴量、結合重み付け係数を自ら生成する深層学習(ディープラーニング)が用いられてもよい。本実施形態では、これらのアルゴリズムのうち利用できるものが用いられるものとする。図8(B)において、入力データX801は、学習済モデル352の入力層のデータである。入力データX801を機械学習モデルである学習済モデル352を用いて認識した結果として、出力データY803が出力される。推論時には、この出力データY803を推論結果として利用する。なお、推論時の学習済モデル352は、学習時の学習モデル252と同等のニューラルネットワークであってもよいし、推論で必要な部分のみを抽出したものであってもよい。これによって学習済モデル352のデータ量の削減や、推論時のニューラルネットワーク処理時間の短縮を図ることができる。
(処理の概要)
続いて、プリンタ600がBLEでスマートフォン500と通信する際に、プリンタ600の近距離無線通信ユニット606によって信号が送信される際に設定すべき電波強度を、機械学習に基づいて推定する手法について説明する。プリンタ600は、設置された場所から移動しないものとする。一方、スマートフォン500は、スマートフォン500を所持するユーザの移動に伴って移動する。このため、スマートフォン500を所持するユーザの位置の変動要因を機械学習することによって、プリンタ600が信号を送信する際に設定すべき電波強度を推定する。なお、プリンタ600が移動機能を持つ自走式のプリンタである場合、自走式のプリンタとスマートフォンの位置関係を変動させる要因を機械学習することによって、信号が送信される際に設定すべき電波強度を推定してもよい。また、スマートフォン500が移動機能を持つ自走式のスマートフォンであった場合、プリンタや自走式のスマートフォンの位置関係を変動させる要因を機械学習することによって、信号が送信される際に設定すべき電波強度を推定してもよい。また、プリンタ600、スマートフォン500の双方が自走式でも同様に、自走式のプリンタや自走式のスマートフォンの位置関係を変動させる要因を機械学習することによって、信号が送信される際に設定すべき電波強度の推定を行ってもよい。
続いて、プリンタ600がBLEでスマートフォン500と通信する際に、プリンタ600の近距離無線通信ユニット606によって信号が送信される際に設定すべき電波強度を、機械学習に基づいて推定する手法について説明する。プリンタ600は、設置された場所から移動しないものとする。一方、スマートフォン500は、スマートフォン500を所持するユーザの移動に伴って移動する。このため、スマートフォン500を所持するユーザの位置の変動要因を機械学習することによって、プリンタ600が信号を送信する際に設定すべき電波強度を推定する。なお、プリンタ600が移動機能を持つ自走式のプリンタである場合、自走式のプリンタとスマートフォンの位置関係を変動させる要因を機械学習することによって、信号が送信される際に設定すべき電波強度を推定してもよい。また、スマートフォン500が移動機能を持つ自走式のスマートフォンであった場合、プリンタや自走式のスマートフォンの位置関係を変動させる要因を機械学習することによって、信号が送信される際に設定すべき電波強度を推定してもよい。また、プリンタ600、スマートフォン500の双方が自走式でも同様に、自走式のプリンタや自走式のスマートフォンの位置関係を変動させる要因を機械学習することによって、信号が送信される際に設定すべき電波強度の推定を行ってもよい。
図9は、近距離無線通信を概略的に説明する図である。プリンタ600は、特定の端末とネットワーク接続をすることなくアドバタイズ信号(アドバタイズパケット)を周囲に送信する、BLEのペリフェラルとして動作することができる。スマートフォン500は、BLEの中心ノードであり、アドバタイズ信号を検出し、そのアドバタイズ信号の送信元のペリフェラルとして動作する装置と接続することが可能なセントラルとして動作する。スマートフォン500は、例えば、印刷ジョブをプリンタ600に送信することができる。スマートフォン500は、到来時の電波強度が所定の値以上の信号を受信することができる。なお、ここでの「受信」は、信号に含まれるデータの復調・復号に成功することを意味する。スマートフォン500は、例えば、プリンタ600から放射された電波の減衰量が所定レベル以下であり、到来時の信号の電波強度が所定値以上となるような、エリア900の範囲内において、そのプリンタ600からのアドバタイズ信号を受信することができる。また、BLEのアドバタイズ信号は、その信号の送信電力に関する情報が含まれるため、セントラルは、アドバタイズ信号を受信した際の受信電力とその情報とから電波レベルの減衰量を特定して、ペリフェラルとのおおよその距離を特定することができる。
図10は、近距離無線通信ユニット501/近距離無線通信ユニット606の概略構成を示すブロック図である。以下では、近距離無線通信ユニット606を例に挙げて説明する。図10の構成は、例えばBluetooth(登録商標)での通信専用の回路及びプログラム等によって実現されうる。インタフェース(I/F1001)は、プリンタ600の近距離無線通信制御回路619と接続するためのインタフェースである。I/F1001は、例えば、データメモリ614に記憶されている情報を取得することができる。本実施形態では、I/F1001を介して、プリンタ600の状態に関する情報をメインボード610から取得する。マイコン1002は、データのサンプリングや無線通信の処理を行うマイクロプロセッサである。このマイコンには、RAMとフラッシュメモリが搭載されている。無線通信回路1003は、無線通信チップ、水晶振動子、インダクタンス、コンデンサなどで構成され、無線信号の受信及び送信を行う。操作スイッチ1004は、待機状態での電力をオン、オフするスイッチである。電池1005は、一次電池、二次電池が挙げられる。電源回路1006は、電池1005からの電力をより効率的に供給するための電圧調整などを行う回路である。
マイコン1002は、例えばI/F1001を介して取得したプリンタ600の状態の情報に応じて、後述のように、アドバタイズ信号に装置状態情報を含めるかを決定し、無線通信回路1003を介してそのアドバタイズ信号を送信することができる。また、マイコン1002は、無線通信回路1003を介して接続要求信号が受信されたかを監視して、接続処理を行うように無線通信回路1003を制御することができる。さらに、マイコン1002は、例えばアドバタイズ信号が周囲の端末に受信されているか否かを接続要求信号が受信されたかに応じて判定し、その判定結果に応じて、無線通信回路1003から送信されるアドバタイズ信号の送信電力を制御することもできる。このように、近距離無線通信ユニット606内部の処理は、マイコン1002が統括的に行うことができ、プリンタ600の装置の電源がオフとなっていても、近距離無線通信ユニット606が独自に通信を行うことができる。なお、近距離無線通信ユニット606が、周囲の端末から接続要求を受信したことに応じて、I/F1001を介して、プリンタ600本体へ、電源をオンとするようにコマンドを送信するようにしてもよい。これにより、プリンタ600は、通常時は電源をオフとしながら、印刷等を行いたい端末が周囲に存在することをBLEによって検出した場合にオンとなるような制御を行うことができる。
近距離無線通信ユニット606は、後述の通り、設定可能な所定の時間間隔でアドバタイズ信号を送信し、自身の存在を周囲の他の装置が検出できるようにする。そして、近距離無線通信ユニット606は、そのアドバタイズ信号を検出した他の装置(例えばスマートフォン500)からの接続要求を受信することによって、その装置との通信を行うことができる。なお、近距離無線通信ユニット606は、BLEの規格に従って、通信速度は低いものの、低電力で通信を行うことができるため、例えば電池1005がボタン電池等の比較的容量が小さい電池であっても、長時間にわたって通信することができる。なお、ユーザは、操作スイッチ1004を通じて近距離無線通信ユニット606の通信機能をオフとすることができ、近距離無線通信ユニット606は、ユーザが通信機能をオンとした場合においてのみ通信を行うようにすることができる。近距離無線通信ユニット606は、電源オン状態になったことに基づいて、初期化処理を行ってアドバタイジング状態へと移行し、上述のように定期的なアドバタイズ信号の送信を行う。
図11は、近距離無線通信ユニット606が周辺にブロードキャストするアドバタイズ信号(アドバタイズ信号)の構成例を示す図である。アドバタイズ信号は、図11に示すように、2バイトのヘッダとペイロードとを含んで構成される。ヘッダ領域は、パケットのタイプやペイロードの大きさ情報等を格納する領域である。ペイロード領域は、デバイス名や搭載プロファイル情報の他、パケットの送信電力(Tx Power)、装置状態に関する情報(装置状態情報)等を格納することができる領域である。装置状態に関する情報としては、状態の種類ごとにビットが割り当てられており、その割り当てられたビットが0又は1に設定されることで、装置の状態を表すことができる。状態の種類の詳細については後述する。装置状態に関する情報は、例えば、装置状態に変化があったことを示す情報(装置状態の変化を示す情報)と、通常状態であることを示す情報との少なくともいずれかを含みうる。なお、装置状態に関する情報は、通常以外の状態、すなわち、装置状態に変化があった場合のみアドバタイズ信号に含められてもよい。言い換えれば、装置状態が「通常」の場合は、アドバタイズ信号に装置状態に関する情報が含められないようにしてもよい。アドバタイズ信号を受信したBLEに対応する通信装置は、受信したパケットの受信信号強度とそのパケットに格納されているTx Powerの値とから伝搬損失を特定することができる。そして、その通信装置は、この特定した伝搬損失の値から、アドバタイズ信号を送信した装置との間のおおよその距離を(例えば距離の2乗又は3.5乗に比例して減衰するなどの環境に応じた伝搬モデルに基づいて)推定することができる。
図12は、近距離無線通信ユニット606によって周辺にブロードキャストされるアドバタイズ信号を概説する図である。Tx1208は、アドバタイズ信号の送信区間を表している。プリンタ600は、Tx1208の間に、送信回路を動作させることにより、所定のパケット(アドバタイズ信号)を送信する。Rx1209は、アドバタイズ信号に対する通信相手(例えば、スマートフォン500)からの応答(接続要求)を待機する待機区間を表す。プリンタ600は、Rx1209において、受信回路の電源をONとすることにより、通信相手からの応答を受付可能な状態に切り替える。そして、プリンタ600は、所定時間が経過した後、すなわち、Rx1209の待機区間以外では、受信回路の電源をOFFとすることにより、応答を受け付けない状態に切り替える。このTx1208とRx1209は、1つのチャネルA1205において設定され、そのチャネルA1205におけるTx1208とRx1209とでアドバタイズ時間1201が規定される。チャネルA1205と同様に、別のチャネルB1206、チャネルC1207が存在し、プリンタ600は、決定された数のチャネルにおいて、TxとRxとを繰り返し実行する。例えば、BLE規格では、37、38、及び39チャネルがアドバタイズ信号チャネルに割り当てられ、本実施形態では、チャネルA1205、チャネルB1206、及びチャネルC1207がこれらのチャネルに対応する。Active区間1202は、プリンタ600がTxとRxによる送受信を行っている区間である。省電力区間1203は、TxとRxによる送受信が行われない区間である。省電力区間1203が長くなるほど、近距離無線通信ユニット606の消費電力が抑制される。このように、アドバタイズ信号をブロードキャストしてから、それに対する応答を所定時間だけ待機した後、次のアドバタイズ信号をブロードキャストするまでの所定時間間隔1204をアドバタイズ間隔という。
図13は、プリンタ600からブロードキャストされたアドバタイズ信号を、携帯端末等の他の装置が受信可能となる領域を示している。なお、図13は、プリンタ600が3段階の送信電力でアドバタイズ信号を送信した場合を示している。領域1300は、プリンタ600が3段階のうち最も弱い第1の送信電力でアドバタイズ信号をブロードキャストした場合に、他の装置がそのパケットを受信できる領域を示している。ここで、パケットを受信できる領域とは、情報を誤りなく取り出すことができる程度の受信電力でアドバタイズ信号を受信できる領域を示している。言い換えれば、領域1300は、プリンタ600が第1の送信電力でアドバタイズ信号をブロードキャストした場合に、そのアドバタイズ信号に含まれる情報を通信相手に確実に伝達することができる領域を示している。なお、実際の電波伝搬環境では、ほとんどの場合、遮蔽物の有無や反射波の影響により、パケットを受信可能な領域は領域1300のような真円の領域ではなくなるが、図13では、簡単のため真円によってパケットを受信可能な領域を示している。また、プリンタ600に搭載される近距離無線通信ユニット606の種類によって、同じ電力で送信された信号が届く範囲が異なりうる。図13の例では、プリンタ600が第1の送信電力でアドバタイズ信号を送信している間は、スマートフォン500が領域1300の範囲内に存在しない。このため、スマートフォン500は、アドバタイズ信号から機器情報や状態情報等の情報を取得することができない。同様に、プリンタ600が第2の送信電力でアドバタイズ信号を送信してもスマートフォン500が領域1301の範囲内に存在しないため、スマートフォン500は、アドバタイズ信号から機器情報や状態情報等の情報を取得することができない。そして、プリンタ600が第3の送信電力でアドバタイズ信号を送信した場合、スマートフォン500が領域1302の範囲内に存在するため、スマートフォン500は、アドバタイズ信号から機器情報や状態情報等の情報を取得することができる。
本実施形態では、スマートフォン500に届けるべき情報が発生した場合、例えば、プリンタ600の状態に(エラー等の)変化が生じた場合等に、早期にスマートフォン500へアドバタイズ信号が届くように、機械学習を用いて送信出力制御を行う。なお、アドバタイズ信号が届く領域を小さくするほど、アドバタイズ信号の送信に必要な電力(送信電力)は小さくなる。すなわち、プリンタ600は、必要以上にアドバタイズ信号が届く領域を大きくしないことにより、消費電力の増大を防ぐことができる。このため、本実施形態では、一例において、スマートフォン500へアドバタイズ信号が届くと推定される送信電力のうち、最小の送信電力が、プリンタ600によるアドバタイズ信号の送信に使用されるべき送信電力として特定されうる。また、プリンタ600は、特に届けるべき情報がない状態でアドバタイズ信号を送信する場合には、最も弱い第1の送信電力でアドバタイズ信号を送信し続ける。これにより、通知すべき情報がスマートフォン500に届く確率を高めながら、通信に必要な電力を低くすることが可能となる。送信できる領域は、例えば、領域1300は半径5m以内、領域1301は半径25m以内、領域1302は50m以内である。このように、本実施形態では、プリンタ600が、電波の送信電力(電波強度)を切り替えることにより、必要な情報を適時に他の装置(例えばスマートフォン500)へ通知しながら、不必要な送信電力の増大を防ぐことができる。なお、本実施形態では、電波強度を3段階で切り替え可能としているが、これに限られない。例えば、5段階で電波強度を変更可能であってもよく、この場合、電波が届く範囲も5段階の領域として特定されうる。
図14に、本実施形態に係るプリンタ600によるアドバタイズ信号の送信電力に関する学習時の学習モデル252の入出力の例を示す。図14に示す通り、学習の入力データXとしては、スマートフォン500を所持するユーザの位置の変動要因である、プリンタの状態・情報1400及び時刻に関する情報1401のデータを使用する。
プリンタの状態・情報1400は、例えば、ジョブ状態、通信設定情報、エラー状態などを含む。ジョブ状態は、例えば、プリンタ600がいずれの種類のジョブを実行している状態であるかを示す情報である。言い換えれば、ジョブ状態は、プリンタ600において実行されているジョブの種類を示す情報である。例えば、プリンタ600がコピージョブを実行中の場合、ユーザは操作パネル605を利用してコピーを行うためプリンタ600の近くにいる可能性が高いことが想定される。また、同様に、プリンタ600がPCスキャンジョブを実行中の場合、ユーザがスキャン原稿を原稿台601にセットする必要があるため、ユーザはプリンタ600の近くにいる可能性が高いことが想定される。一方、プリンタ600がPCプリントジョブを実行中の場合、ユーザが遠くのPCから印刷を指示可能であるため、ユーザの位置がプリンタ600から遠く離れている可能性があることが想定される。通信設定情報は、例えば、プリンタ600がいずれの種類の通信方式を用いている状態であるかを示す情報である。言い換えれば、通信設定情報は、プリンタ600において利用されている通信方式の種類を示す情報である。プリンタ600が、無線LANユニット607を用いて通信を行っている場合、ユーザが無線LANの届く範囲内からプリンタ600を利用可能であるため、ユーザの位置がプリンタ600から遠く離れている可能性があることが想定される。一方、プリンタ600が不図示のUSBユニットを用いて通信を行っている場合、ユーザはプリンタ600の近くにいる可能性があることが想定される。ユーザがプリンタ600の近くにいる場合は、電波強度が微弱であってもそのユーザのスマートフォン500に電波が十分な電力で届くことが想定される。一方、ユーザがプリンタ600の近くにいない場合は、電波強度が一定以上でなければそのユーザのスマートフォン500に電波が十分な電力で届かないことが想定される。また、ユーザがプリンタ600の近くにいる場合には、プリンタ600とスマートフォン500との間の電波環境が安定して良好であることが推定されるため、スマートフォン500が見つかるまでの経過時間は短いことが想定される。なお、プリンタ600は、プリンタ600が送信したアドバタイズ情報を受信したスマートフォン500からそのアドバタイズ情報に対する応答を受信することで、スマートフォン500を見つけることができる。そのためスマートフォン500が見つかるまでの経過時間とは、プリンタ600がアドバタイズ情報の送信を開始してから、そのアドバタイズ情報に対する応答をスマートフォン500から受信するまでの時間に相当する。一方、ユーザがプリンタ600の近くにいない場合には、プリンタ600とスマートフォン500との間の電波環境が安定していない場合が想定され、スマートフォン500が見つかるまでの経過時間が長くなることもありうる。このため、ジョブ状態及び通信設定情報は、使用すべき電波強度や端末が見つかるまでの経過時間の変動要因となるため、入力データとする。
エラー状態は、プリンタ600がいずれの種類のエラーが発生している状態であるかを示す情報である。言い換えれば、エラー状態は、プリンタ600において発生しているエラーの種類を示す情報である。エラー状態は、ユーザの位置が変動する要因ではないが、電波強度を決定するための変動要因となるため、本実施形態では入力データとして利用される。例えば、用紙切れエラー、インクロー警告、インクなしエラーなど複数のエラー状態があるが、エラーによって、ユーザに通知するかどうかの緊急度が異なる。用紙切れエラーは、印刷用紙挿入口603に用紙がないエラー状態の場合に発生するが、プリンタ600が印刷状態である場合には、印刷を続行することができないため、緊急度が高いエラーと言える。一方、同じ用紙切れエラーであっても、プリンタ600が印刷状態でない場合には、次に印刷するまでに用紙が補充されていれば問題がないため、緊急度の低いエラーと言える。また、インクロー警告も、印刷を続行することができるため、緊急度の低いエラーと言える。一方、インクなしエラーは、印刷を続行することができないため、緊急度が高いエラーと言える。このように、エラーの種類やプリンタの状態によってエラーの緊急度が異なり、緊急度の高いエラーをできるだけ迅速にユーザへ通知することができるように、電波強度が決定されうる。
時刻に関する情報1401は、例えば、学習済みモデルへのデータ入力時の時刻等の情報を含む。プリンタ600がオフィスに設置されている場合、勤務時間はユーザがプリンタ600の近くにいる可能性が高いことが想定される。一方、昼休みの時間や夜間はユーザがプリンタ600の近くにいる可能性が低いことが想定される。また、プリンタ600が家庭に設置されている場合、夜間にユーザがプリンタ600の近くにいる可能性が高いことが想定される。なお、プリンタがオフィスに設置されているか家庭に設置されているかは、プリンタの状態・情報1400のプリンタ情報に含まれうる。このため、これらの情報の組み合わせによって、ユーザがプリンタ600の近くにいる可能性が変動しうる。
教師データTとして、電波強度1402とスマートフォン500が見つかるまでの経過時間1403とが使用される。そして、プリンタの状態・情報1400と時刻に関する情報1401とを入力としてその時点での最適な電波強度が推定されて分類され、教師データTとなる電波強度1402とスマートフォン500が見つかるまでの経過時間1403とのずれ量Lが算出される。そして、そのずれ量Lが最小となるような学習により、学習モデル252が更新される。
図15に、本実施形態に係るプリンタ600によるアドバタイズ信号の送信電力に関する推論時の学習済モデル352の入出力の例を示す。図15に示すように、推論の入力データXとして、プリンタの状態・情報1400と時刻に関する情報1401とが使用される。例えば、プリンタ600は、推論のために、プリンタの状態・情報1400と時刻に関する情報1401との情報送信処理を実行する。学習済モデル352による推論の結果として得られる出力データYは、アドバタイズ信号の送信時に使用すべき電波強度の推定結果と、スマートフォン500が見つかるまでの経過時間の推定結果となる。プリンタ600は、例えばこの推論の情報受信処理を実行する。プリンタ600は、この推論に基づいて、アドバタイズする際の電波強度でアドバタイズ信号を送信するようにし、その後にアドバタイズ信号の送信が継続される期間に関するタイムアウト時間としてスマートフォン500が見つかるまでの経過時間を使用する。これによれば、プリンタ600は、プリンタやスマートフォン500の状態に応じて、適切な送信電力を設定することができ、相対的に短時間でスマートフォン500からの接続要求を受信することができるようになる。
(処理の流れ)
続いて、各装置における処理の流れの例について説明する。図16に、プリンタ600によって実行される処理の流れの例を示す。図16の処理は、例えば、マイコン1002が、自装置に備えられたRAM等に記憶されたプログラムを実行することにより実現されうる。プリンタ600は、エラー等の装置の状態変化がない間は、設定可能な時間間隔で、かつ、例えば最も弱い電力などの一定電力で、自身の存在を通知するためのアドバタイズ信号を送信し続ける。このときのアドバタイズ信号が送信される時間間隔は、例えば、エラー等の装置の状態変化があった際のアドバタイズ信号が送信される時間間隔よりも長い時間間隔に設定される。なお、この場合、プリンタ600は、スマートフォン500等の周囲の端末からの接続要求を受信しなかったとしても、送信するアドバタイズ信号の電力を変更しない。なお、本実施形態では、自身の存在を通知するためのアドバタイズ信号は、所定の時間間隔で送信し続けると説明したが、これに限定されない。例えば、プリンタ600は、スタンバイ中や動作中のみ、自身の存在を通知するためのアドバタイズ信号を送信してもよいし、自身の存在を通知するためのアドバタイズ信号は送信しないようにしてもよい。すなわち、図16の処理が開始される時点では、プリンタ600は、アドバタイズ信号を送信していなくてもよい。そして、プリンタ600は、後述する装置状態の変化が生じたことに応じて、アドバタイズ信号の送信を開始してもよい。また、図16の処理は、図10の操作スイッチ1004によって電力がオンとされている場合にのみ、実行されてもよい。
続いて、各装置における処理の流れの例について説明する。図16に、プリンタ600によって実行される処理の流れの例を示す。図16の処理は、例えば、マイコン1002が、自装置に備えられたRAM等に記憶されたプログラムを実行することにより実現されうる。プリンタ600は、エラー等の装置の状態変化がない間は、設定可能な時間間隔で、かつ、例えば最も弱い電力などの一定電力で、自身の存在を通知するためのアドバタイズ信号を送信し続ける。このときのアドバタイズ信号が送信される時間間隔は、例えば、エラー等の装置の状態変化があった際のアドバタイズ信号が送信される時間間隔よりも長い時間間隔に設定される。なお、この場合、プリンタ600は、スマートフォン500等の周囲の端末からの接続要求を受信しなかったとしても、送信するアドバタイズ信号の電力を変更しない。なお、本実施形態では、自身の存在を通知するためのアドバタイズ信号は、所定の時間間隔で送信し続けると説明したが、これに限定されない。例えば、プリンタ600は、スタンバイ中や動作中のみ、自身の存在を通知するためのアドバタイズ信号を送信してもよいし、自身の存在を通知するためのアドバタイズ信号は送信しないようにしてもよい。すなわち、図16の処理が開始される時点では、プリンタ600は、アドバタイズ信号を送信していなくてもよい。そして、プリンタ600は、後述する装置状態の変化が生じたことに応じて、アドバタイズ信号の送信を開始してもよい。また、図16の処理は、図10の操作スイッチ1004によって電力がオンとされている場合にのみ、実行されてもよい。
図16の処理において、プリンタ600は、まず、自装置において所定の状態の変化があったことを特定する(S1601)。プリンタ600は、例えば、インク切れ、用紙切れ、紙詰まり等の印刷ができないエラー状態が生じた場合や、プリンタ600を利用することとなるユーザによる対処が要求される事象が発生した場合に、装置状態の変化があったと特定する。また、プリンタ600は、スキャナやファクスにおけるエラー状態が生じた場合や、その他のユーザに速やかに通知すべき状態となった場合に、装置状態の変化があったと特定しうる。ユーザに速やかに通知すべき状態は、例えば、スキャナによるスキャンが完了した状態、スキャンした後の原稿が残ったままとなっている状態、及び、ファクスの送信が失敗した状態などを含む。また、ユーザに速やかに通知すべき状態は、インクの残量が少ない状態(インクLow状態)等のエラー前段階の状態を含みうる。なお、「エラー前段階」とは、所定の状態を示す値が予め設定した閾値を超えた状態であるが、エラーには至っていない状態を指す。また、プリンタ600は、プリンタ600の設定値が変更された場合に、装置状態に変化があったと特定しうる。例えば、プリンタ600は、自動電源ONの有効無効設定がユーザによって変更された場合や、サイレント設定がユーザによって変更された場合に、装置状態に変化があったと特定しうる。このように、S1601では、プリンタ600の機能の状態が変化したことが特定される。また、プリンタ600は、自装置の通信状況に関する状態変化を特定してもよい。例えば、プリンタ600は、自装置の無線LAN設定の有効無効設定がユーザによって変更された場合や、無線LANのダイレクト接続のクライアント数に変化があった場合に、装置状態に変化があったことを特定しうる。なお、プリンタ600の状態の変化は、周囲の端末(例えば、スマートフォン500)に通知すべき状態の変化であればよく、上述のものに限られない。プリンタ600の状態の変化は、マイコン1002が、I/F1001を介して、プリンタ600が備える各部位のステータスを確認することによって、又は、CPU611からの通知に従って、特定されうる。なお、プリンタ600は、例えば通常の動作に支障のない範囲の温度変化など周囲の端末に通知する必要のない状態の変化については、S1601での装置状態の変化として特定しなくてもよい。すなわち、プリンタ600は、周囲の端末に通知すべき所定の状態変化についてのみ、特定するようにしてもよい。
プリンタ600は、装置状態の変化を特定すると、エッジサーバ300へ、アドバタイズ信号の送信電力及びスマートフォン500が発見されるまでの経過時間との推論を依頼するための信号(推論依頼)を送信する。なお、推論依頼には、例えば、学習済モデル352を用いた推論において入力データとして用いられる各種情報が含まれうる。そして、プリンタ600は、エッジサーバ300から、エッジサーバ300による推論により得られた電波強度の推定結果とスマートフォン500が発見されるまでの経過時間の推定結果の情報を受信する(S1602)。プリンタ600は、電波強度の推定結果を、アドバタイズ信号の送信時の電波強度の初期値として設定し、スマートフォン500が見つかるまでの経過時間の推定結果を、アドバタイズ信号の送信が継続される期間に関するタイムアウト時間として設定する。
その後、プリンタ600は、アドバタイズ信号の送信時間カウントをリセットする(S1603)。すなわち、送信時間カウントが初期値(例えば「0」)に設定され、アドバタイズ信号の送信が継続されている期間を測定するための準備が行われる。続いて、プリンタ600は、S1602で設定された電波強度でのアドバタイズ信号の送信を開始する(S1604)。すなわち、プリンタ600は、S1604において、状態の変化が特定される前までの例えば一定の電力でアドバタイズ信号を送信し続ける状態での動作を終了し、変化した状態に少なくとも基づいて設定された送信電力でのアドバタイズ信号の送信を開始する。そして、プリンタ600は、周囲の端末と既に接続を確立しているか否かを確認する(S1605)。すなわち、プリンタ600が送信したアドバタイズ信号に対して、周囲の端末から接続要求を受信して、接続が確立されたか否かが確認される。プリンタ600は、既に接続が確立している場合(S1605でYES)、アドバタイズ信号を他の端末が受信したことを認識し、続いて、アドバタイズ信号の送信を中断する指示があったか否かを確認する(S1611)。そして、プリンタ600は、中断指示があった場合(S1611でYES)、アドバタイズ信号の送信を停止する(S1612)。一方、プリンタ600は、中断指示がなかった場合(S1611でNO)には、処理をS1604に戻してアドバタイズ信号の送信を継続する。
プリンタ600は、S1605において周囲の端末と接続を確立していないと判定した場合(S1605でNO)、周囲の端末からの信号が到来するのを待ち受ける(S1606)。すなわち、プリンタ600は、アドバタイズ信号に対する応答を待ち受ける。そして、プリンタ600は、周囲の端末から接続要求が到来したか否かを確認する(S1607)。プリンタ600は、接続要求が到来したことを確認した場合(S1607でYES)に接続処理を実行する(S1608)。また、プリンタ600は、アドバタイズ信号をスマートフォン500が受信できたと判定し、クラウドサーバ200での学習を行うために、エッジサーバ300に学習依頼を送信する(S1608)。この時、教師データTとして、接続要求を受信した時点でアドバタイズ信号の送信に使用していた電波強度と、周囲の端末が発見された時点までの経過時間とを示す情報を、エッジサーバ300を経由してクラウドサーバ200へ、送信する。その後、プリンタ600は、アドバタイズする情報を変更する(S1609)。すなわち、プリンタ600は、送信するアドバタイズ信号を切り替える。S1609では、例えば、他のユーザが使用中であることを示す情報を含むアドバタイズ信号に切り替える。スマートフォン500は、この情報の変更後のアドバタイズ信号を受け取ると、タッチパネルディスプレイ504に「XXさんがコネクションし、対応中です」等の情報を表示しうる。その後、プリンタ600は、セッションを解除し(S1610)、処理をS1611へ進める。S1611以降の処理については、上述の通りである。
なお、プリンタ600の周囲に存在するスマートフォン500は、例えば、プリンタ600から通知されたエラーを画面に表示すると共に、そのエラーにどのように対応するかのユーザへの問い合わせや、エラーの解消を促す通知をする。そして、スマートフォン500は、ユーザによるエラー解除のための操作に応じて、プリンタ600への接続のための接続要求を送信する。ユーザによるエラーの解除のための操作は、例えば、エラーの自動回復を指示するアイコンの押下や、インク切れのエラーに対応してインクの交換を行った後にスマートフォン500においてインク交換を済ませたことを示す操作を行うことを含む。なお、本実施形態では、ユーザが状態変化の通知を受けたにもかかわらずエラー解除のための操作を実行しない場合、スマートフォン500は、アドバタイズ信号を受信してその中に含まれる情報を取得しても、接続要求をプリンタ600へ送信しなくてもよい。
設定可能な電波強度のレベルは、2段階以上の設定値や、アナログ値による設定値など様々な形態によって規定されうるが、本実施形態では、例えば図13を用いて説明したような、3段階の「弱」「中」「強」の電波強度の設定が用いられうるものとする。この場合、S1602で取得された電波強度の推定結果が「弱」の場合は、プリンタ600から半径5mの範囲以外には、電波が、アドバタイズ信号から情報を抽出できる程度の十分な電力で届かない。このため、プリンタ600から5m以内にその電波を受信することができる端末が存在しない場合には、プリンタ600が送信した情報を、その端末へと伝達することはできない。周囲の端末のいずれもが電波を受信できない場合、プリンタ600が周囲の端末と既に接続を確立していることはない(S1605でNO)。また、この場合には、接続要求がスマートフォン500から送信されることもないため、プリンタ600において接続要求が受信されることもない(S1607でNO)。この場合、プリンタ600は、アドバタイズ信号の送信を開始してからS1602で設定したタイムアウト時間を経過したか否かを確認する(S1613)。
プリンタ600は、タイムアウト時間を経過していないと判定した場合(S1613でNO)、処理をS1604に戻して、アドバタイズ信号の送信を継続する。一方、プリンタ600は、タイムアウト時間を経過したと判定した場合(S1613でYES)、現在の電波強度の設定値が「弱」であるか否かを確認する(S1614)。なお、プリンタ600は、タイムアウト時間を経過したと判定した場合、現在のプリンタ600の状態や現在の時間に対応する教師データを修正して学習済モデル352における学習を再度実行するように、エッジサーバ300に依頼してもよい。そして、プリンタ600は、電波強度が「弱」に設定されていると判定した場合(S1614でYES)、電波強度の設定を「中」に変更する(S1615)。そして、プリンタ600は、処理をS1603に戻し、アドバタイズ信号の送信時間カウントをリセットする。一方、プリンタ600は、電波強度が「弱」に設定されていないと判定した場合(S1614でNO)、電波強度の設定値が「中」であるか否かを確認する(S1616)。そして、プリンタ600は、電波強度が「中」に設定されていると判定した場合(S1616でYES)、電波強度の設定を「強」に変更する(S1617)。そして、プリンタ600は、処理をS1603に戻し、アドバタイズ信号の送信時間カウントをリセットする。一方、プリンタ600は、電波強度が「中」に設定されていないと判定した場合(S1616でNO)、電波強度の設定値が「強」であるか否かを確認する(S1618)。このときに、プリンタ600がアドバタイズ信号が電波強度「強」で送信されていると判定した場合(S1618でYES)、接続要求が到来しないままにタイムアウト時間が経過したこととなる。この場合、プリンタ600は、接続要求なしエラーを出力して処理を終了する(S1619)。一方、プリンタ600は、電波強度の設定が「弱」「中」「強」のいずれでもないと判定した場合(S1618でNO)、電波強度不明エラーを出力して処理を終了する(S1620)。
なお、プリンタ600は、接続要求なしエラー等のエラーで処理が終了した場合は、アドバタイズ信号で送信しようとした情報を、無線LANユニット607等の他の通信機能を用いて送信するようにしてもよい。また、プリンタ600は、エラーで処理が終了した場合には、所定の時間待機した後に、再度、図16の処理を繰り返し実行してもよい。これにより、必要な情報が周囲の装置に通知される確率をさらに向上させることができる。なお、本実施形態では、プリンタ600の装置状態に変化があった場合(S1601)に、アドバタイズ信号を送信するものとしたが、装置状態が異常状態から正常状態に変化した場合には、このような処理を行わないようにしうる。言い換えれば、正常状態から異常状態に変化した場合など、ユーザへの通知が必要となる所定の変化が生じた場合にのみ、上述の処理を行うようにしてもよい。また、図16の処理を実行中に、装置状態が正常状態に戻った場合は、図16の処理を終了するようにしてもよい。例えば、プリンタ600において紙詰まりが発生した場合に、周囲に端末が存在しなくても、近くに存在した人物がその紙詰まりを直すことがある。このような場合には、通知すべき「紙詰まりが発生したこと」が解消するため、周囲の端末へその情報が通知されなくてもよくなる。また、プリンタ600は、例えば、インク切れが発生した後に、ユーザによってインクカートリッジの交換が行われたか否かを認識することができる。プリンタ600は、インクカートリッジの交換があったことを認識した場合に、インク切れが生じたことを示す情報を周囲の端末へ通知する必要がなくなる。このため、異常状態から正常状態へと移行した場合には、プリンタ600は、状態変化に基づく送信電力でのアドバタイズ信号の送信を終了し、通常時の低電力での装置情報のアドバタイズ信号の送信を開始しうる。すなわち、プリンタ600は、周囲の端末へ特に通知すべき情報がなくなった場合には、電波強度の設定を初期値の「弱」に戻して、例えば装置情報を含むが状態情報を含まないアドバタイズ信号を送信してもよい。
なお、本実施形態では、S1602で取得した、推定された電力でのアドバタイズ信号の送信を開始した後、推定されたスマートフォン500が見つかるまでの経過時間が経過しても接続要求がなかった場合に、徐々に送信電力を上げると説明したがこれに限定されない。例えば、プリンタ600は、推定された電力でのアドバタイズ信号の送信を開始した後にタイムアウト時間が経過したことに応じて処理を終了してもよい。また、プリンタ600は、タイムアウト後に、処理をS1602へ移し、再度推論依頼を行ってもよい。
続いて、図17を用いて、エッジサーバ300によって実行される処理の流れの例について説明する。図17の処理は、例えば、エッジサーバ300が起動されたことに応じて、エッジサーバ300のCPU211がハードディスクユニット202に格納されたプログラムを読み込んで実行することによって実現される。なお、図17は、エッジサーバ300の処理のうち、本実施形態に関連する部分のみを示しており、エッジサーバ300は、他の処理を実行してもよい。エッジサーバ300は、起動された後に初期化処理を実行し(S1701)、S1702からS1704において、外部から受信した命令をチェックし、受信した命令に応じた処理を実行する。エッジサーバ300は、プリンタ600からの学習依頼を受信したと判定した場合(S1702でYES)は、受信した学習依頼をクラウドサーバ200に送信する(S1705)。エッジサーバ300は、プリンタ600からの推論依頼を受信したと判定した場合(S1702でNO、S1703でYES)は、受信した推論依頼を実行する(S1706)。エッジサーバ300は、例えば、推論依頼と共に受信したプリンタの状態・情報1400と時刻に関する情報1401とを推論部351に送り、学習済モデル352を用いて推論を実行する。エッジサーバ300は、S1706の推論処理を完了すると、推論の結果を依頼元のプリンタ600に送信する(S1707)。エッジサーバ300は、クラウドサーバ200から学習済モデル配信を受信したと判定した場合(S1702及びS1703でNO、S1704でYES)は、受信した学習済モデルの情報を学習済モデル352に反映して記憶する(S1708)。これにより、エッジサーバ300は、それ以降の推論依頼に対しては更新された学習済モデル352を用いた推論を実行することができるようになる。
続いて、図18を用いて、クラウドサーバ200によって実行される処理の流れについて説明する。図18の処理は、例えば、クラウドサーバ200が起動されたことに応じて、クラウドサーバ200のCPU211がハードディスクユニット202に格納されたプログラムを読み込んで実行することによって実現される。なお、図18は、クラウドサーバ200の処理のうち、本実施形態に関連する部分のみを示しており、クラウドサーバ200は、他の処理を実行してもよい。クラウドサーバ200は、起動された後に初期化処理を実行し(S1801)、外部からの学習依頼が受信されるのを待ち受ける(S1802)。クラウドサーバ200は、外部からの学習依頼を受信した場合(S1802でYES)に、受信した学習依頼を学習用データ生成部250に送り、学習用データを生成する(S1803)。そして、クラウドサーバ200は、生成した学習用データに基づいて学習を実行する(S1804)。クラウドサーバ200は、例えば、学習用データを学習部251に送り、学習モデル252に対する学習を実行する。学習結果は、学習モデル252に反映され、蓄積される(S1805)。クラウドサーバ200は、学習結果の蓄積を終えると、学習モデル252からエッジサーバ300へ配信する学習済モデル352を生成して、エッジサーバ300へ送信する(S1806)。なお、ここではクラウドサーバ200が学習依頼を受信するごとに学習を実行する場合について説明したが、これに限られない。学習の実行には一定の処理時間が必要であるため、クラウドサーバ200は、受信した学習依頼を蓄積しておき、学習依頼の受信と同期せずに学習を実行してもよい。また、学習が行われるたびに、エッジサーバ300への学習済モデル配信が行われる場合の例について説明したが、これに限られない。例えば、クラウドサーバ200において大量の学習が実行される場合には、学習の都度、学習済モデルを配信しなくてもよい。例えば、クラウドサーバ200は、学習済モデルを、定期的に、または、エッジサーバ300からの配信要求を受信したことに基づいて、配信するようにしてもよい。
以上のような処理により、エッジサーバ300とクラウドサーバ200を利用した機械学習に基づいて、プリンタ600がアドバタイズ信号を送信するのに適した電波強度とタイムアウト時間とを決定することができる。プリンタ600は、アドバタイズ信号を受信したスマートフォン500から接続要求を受信することによって、そのスマートフォン500がアドバタイズ信号を受信できていることを認識することができる。そして、その接続要求を受信した時点でのアドバタイズ信号の送信電力と接続要求を受信するまでの時間とを教師データとして再学習を行うことにより、学習モデルの高精度化を図ることができる。また、プリンタ600は、装置状態に変化が生じた場合には、周囲の端末による接続要求の受信が確認できるまで又はエラーが解除するまで、推論によって得られた電波強度でのアドバタイズ信号の送信と接続要求の監視とを継続しうる。これにより、通知されるべき情報が、周囲の端末へ届く確率を向上させることができる。また、スマートフォン500は、プリンタ600の状態を適切なタイミングで受信することがき、エラー時の対処など最適なタイミングで行うことが可能となる。一方、プリンタ600は、例えば自装置の状態に変化がない場合には、接続要求が受信されなくてもアドバタイズ信号の電力を増やさずに(例えば最低値に)維持する。これにより、プリンタ600は、BLEによる通信の低電力性を担保しながら、通知すべき情報を可能な限り周囲の端末へと通知することが可能となる。
上述のようにして送信電力を制御することにより、スマートフォン500にアドバタイズ信号が届き、プリンタ600は、スマートフォン500とBLEによる接続を確立することができる。プリンタ600とスマートフォン500との間でBLEによる接続を介して実行される通信の内容は特に限定されないが、通信の一例を以下に示す。例えばプリンタ600は、BLEによる接続を介してスマートフォン500に対し、プリンタ600とWi−Fiで通信するための通信情報(SSID、パスワード等)を送信する。そして、スマートフォン500は、BLEによる接続を介して受信した通信情報を用いて、プリンタ600とWi−Fiによって接続する。そして、Wi−Fiによる接続を介して、プリンタ600に印刷ジョブを送信する。また、例えば、プリンタ600は、スマートフォン500から、外部アクセスポイント(無線ルータ等)と通信するための通信情報をBLEによる接続を介して受信する。そして、プリンタ600は、BLEによる接続を介して受信した通信情報を用いて、外部アクセスポイントとWi−Fiによって接続する。その外部アクセスポイントにスマートフォン500もWi−Fi接続しているならば、プリンタ600は、その外部アクセスポイントを介して、スマートフォン500から印刷ジョブを受信可能となる。
なお、本実施形態では、プリンタ600が、周囲のスマートフォン500がアドバタイズ信号を受信したか否かを、スマートフォン500から接続要求を受信したか否かによって確認する例について説明したが、他の方法によってこの確認が行われてもよい。例えば、アドバタイズ信号を受信したスマートフォン500が、BLE以外の通信機能によってプリンタ600にアクセスし、そのアドバタイズ信号を受信できたことをプリンタ600に通知してもよい。この場合、プリンタ600は、そのアクセスによって、スマートフォン500がアドバタイズ信号を受信できたと判定し、図16の処理を終了又は一時停止することができる。
また、本実施形態では、通常状態と、通常とは異なる状態(状態変化が発生した状態)とで、BLE通信におけるアドバタイズ信号の内容及び送信電力を変更するものとしたが、これに限定されない。例えば、装置に状態変化が発生した状態となった場合のみ、アドバタイズ信号をブロードキャストするようにしてもよい。
また、本実施形態では、BLEに基づく手法について説明したが、プリンタ600は、所定の信号を送信して、その所定の信号を周囲の装置が受信したことが分かる任意の通信システムにおいて、上述の手法を適用することができる。すなわち、プリンタ600は、装置状態の変化などの所定の情報を通知するための所定の信号を送信する際に、機械学習に基づいて特定された送信電力を使用し、その信号が周囲の装置に受信されたかを判定しうる。このとき、プリンタ600は、所定の情報以外の情報を送信する場合には、低い送信電力での信号の送信を継続する。そして、プリンタ600は、所定の情報を送信する必要がある場合に、その低電力での信号の送信を停止し、機械学習に基づいて特定された送信電力での所定の信号の送信を開始する。すなわち、プリンタ600は、信号の送信に係る電力を通常時には低く抑えながら、必要な情報を送る際には機械学習に基づいて特定された送信電力での信号送信を許容する。これにより、プリンタ600は、低電力での通信を行いながら、通知すべき情報を最適な電力で可能な限り周囲の端末へと通知することが可能となる。
なお、上述の例では、プリンタ600の状態・情報と時刻に関する情報を入力として、電波強度とスマートフォン500が見つかるまでの経過時間を示す時間情報とを推論するための機械学習を行う例を示したが、これに限られない。例えば、電波強度のみが推論されるように、機械学習が行われてもよい。この場合、例えば上述のタイムアウト時間は一定時間としうる。また、例えば、機械学習によって得られたモデルを用いて、送信電力が「強」「中」「弱」のそれぞれに設定された場合に、端末が見つかるまでの経過時間を推定するようにしてもよい。これにより、例えば、送信対象の情報ごとに端末が見つかるまでの経過時間の要求値を定めておくことで、その経過時間の要求を満たすことができる送信電力を決定することができる。また、これら以外の観点で、送信電力や、タイムアウト時間の設定が行われてもよい。
また、上述の例では、学習済モデル352を用いた推論がエッジサーバ300によって実行され、推論結果がプリンタ600に送信される例を示したが、この形態に限定されない。例えば、プリンタ600自体が学習モデル352を有しており、プリンタ600自体が学習済モデル352を用いた推論を実行してもよい。なおプリンタ600には予め学習モデル352がプログラムとして搭載されていてもよいし、プリンタ600が無線ネットワーク等を介して、エッジサーバ300等の他の装置から学習モデル352を受信してもよい。
また、上述の例では、プリンタ600の状態が変化した場合に、学習済モデル352を用いた推論により、アドバタイズ信号の送信電力の特定が行われる形態を説明したが、この形態に限定されない。プリンタ600の状態が変化していなくとも、任意のタイミングで、アドバタイズ信号の送信電力の特定が行われてもよい。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
プロセッサまたは回路は、中央演算処理装置(CPU)、マイクロプロセッシングユニット(MPU)、グラフィクスプロセッシングユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートウェイ(FPGA)を含みうる。また、プロセッサまたは回路は、デジタルシグナルプロセッサ(DSP)、データフロープロセッサ(DFP)、またはニューラルプロセッシングユニット(NPU)を含みうる。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
100:処理システム、200:クラウドサーバ、300:エッジサーバ、500:スマートフォン、600:プリンタ、501:近距離無線通信ユニット、503:回線接続ユニット、511:CPU、606:近距離無線通信ユニット、611:CPU、250:学習用データ生成部、251:学習部、252:学習モデル、350:データ収集・提供部、351:推論部、352:学習済モデル、450:アプリケーション部、451:データ送受信部
Claims (29)
- 所定の信号を無線によって送信する通信装置であって、
前記所定の信号の送信に用いられる送信電力に関する値を少なくとも含んだ教師データが用いられた機械学習によって得られたモデルに、前記通信装置の状態に関する情報が入力された結果に基づき、前記送信電力に関する値を特定する特定手段と、
前記特定された前記送信電力に関する値に基づいて、前記所定の信号を無線によって送信する送信手段と、
を有することを特徴とする通信装置。 - 前記モデルに入力される前記通信装置の状態に関する情報は、前記通信装置において実行されているジョブに関する情報、前記通信装置において利用されている通信方式に関する情報、及び前記通信装置において発生しているエラーに関する情報のうち少なくとも1つを含むことを特徴とする請求項1に記載の通信装置。
- 前記モデルに、時刻に関する情報がさらに入力された結果に基づき、前記送信電力に関する値が特定されることを特徴とする請求項1又は2に記載の通信装置。
- 前記モデルを得るための機械学習に用いられる前記教師データには、前記所定の信号が送信されてから、前記所定の信号を受信した端末装置から送信される応答が受信されるまでの時間に関する情報がさらに含まれ、
前記モデルに、前記通信装置の状態に関する情報が入力された結果に基づき、前記所定の信号が送信されてから、前記所定の信号を受信した前記端末装置から送信される応答が受信されるまでの時間に関する時間情報が特定されることを特徴とする請求項1乃至3のいずれか1項に記載の通信装置。 - 前記モデルに、時刻に関する情報がさらに入力された結果に基づき、前記時間情報が特定されることを特徴とする請求項4に記載の通信装置。
- 前記特定された前記送信電力に関する値に基づいて、前記所定の信号が、間欠的に送信され、
前記所定の信号の間欠的な送信が開始されてから、前記特定された前記時間情報に対応する時間が経過したにもかかわらず、前記所定の信号を受信した前記端末装置から送信される応答が受信されない場合、前記所定の信号の間欠的な送信に用いられる前記送信電力が強められることを特徴とする請求項4又は5に記載の通信装置。 - 前記所定の信号を受信した端末装置から、前記所定の信号に対する応答を受信する受信手段と、
前記所定の信号に対する応答が受信された場合、前記端末装置と前記通信装置との間の無線接続を確立する接続手段と、をさらに有することを特徴とする請求項1乃至6のいずれか1項に記載の通信装置。 - 前記無線接続を介して、所定の通信を実行する実行手段と、をさらに有することを特徴とする請求項7に記載の通信装置。
- 前記所定の通信は、前記無線接続に用いられている通信方式と異なる通信方式により前記通信装置と通信するための通信情報を前記端末装置に送信する処理を含むことを特徴とする請求項8に記載の通信装置。
- 前記所定の通信は、前記無線接続に用いられている通信方式と異なる通信方式によりアクセスポイントと通信するための通信情報を前記端末装置から受信する処理を含むことを特徴とする請求項8又は9に記載の通信装置。
- 前記モデルに入力される情報を、前記モデルを有するサーバに送信する情報送信手段と、
前記モデルに前記通信装置の状態に関する情報が入力された結果を、前記サーバから受信する情報受信手段と、をさらに有し、
前記サーバから受信された前記結果に基づき、前記送信電力に関する値が特定されることを特徴とする請求項1乃至10のいずれか1項に記載の通信装置。 - 前記通信装置の状態が変化したことに基づいて、前記送信電力に関する値が特定されることを特徴とする請求項1乃至11のいずれか1項に記載の通信装置。
- 前記所定の信号は、Bluetooth Low Energyによって送信される信号であることを特徴とする請求項1乃至12のいずれか1項に記載の通信装置。
- 印刷を実行する印刷手段をさらに有することを特徴とする請求項1乃至13のいずれか1項に記載の通信装置。
- 所定の信号を無線によって送信する通信装置に備えられたコンピュータに、
前記所定の信号の送信に用いられる送信電力に関する値を少なくとも含んだ教師データが用いられた機械学習によって得られたモデルに、前記通信装置の状態に関する情報が入力された結果に基づき、前記送信電力に関する値を特定させ、
前記特定された前記送信電力に関する値に基づいて、前記所定の信号を無線によって送信させる、
プログラム。 - 前記モデルに入力される前記通信装置の状態に関する情報は、前記通信装置において実行されているジョブに関する情報、前記通信装置において利用されている通信方式に関する情報、及び前記通信装置において発生しているエラーに関する情報のうち少なくとも1つを含むことを特徴とする請求項15に記載のプログラム。
- 前記モデルに、時刻に関する情報がさらに入力された結果に基づき、前記送信電力に関する値が特定されることを特徴とする請求項15又は16に記載のプログラム。
- 前記モデルを得るための機械学習に用いられる前記教師データには、前記所定の信号が送信されてから、前記所定の信号を受信した端末装置から送信される応答が受信されるまでの時間に関する情報がさらに含まれ、
前記モデルに、前記通信装置の状態に関する情報が入力された結果に基づき、前記所定の信号が送信されてから、前記所定の信号を受信した前記端末装置から送信される応答が受信されるまでの時間に関する時間情報が特定されることを特徴とする請求項15乃至17のいずれか1項に記載のプログラム。 - 前記モデルに、時刻に関する情報がさらに入力された結果に基づき、前記時間情報が特定されることを特徴とする請求項18に記載のプログラム。
- 前記特定された前記送信電力に関する値に基づいて、前記所定の信号が、間欠的に送信され、
前記所定の信号の間欠的な送信が開始されてから、前記特定された前記時間情報に対応する時間が経過したにもかかわらず、前記所定の信号を受信した前記端末装置から送信される応答が受信されない場合、前記所定の信号の間欠的な送信に用いられる前記送信電力が強められることを特徴とする請求項18又は19に記載のプログラム。 - 前記プログラムは、前記コンピュータに、さらに、
前記所定の信号を受信した端末装置から、前記所定の信号に対する応答を受信させ、
前記所定の信号に対する応答が受信された場合、前記端末装置と前記通信装置との間の無線接続を確立させる、ことを特徴とする請求項15乃至20のいずれか1項に記載のプログラム。 - 前記プログラムは、前記コンピュータに、さらに、前記無線接続を介して、所定の通信を実行させる、ことを特徴とする請求項21に記載のプログラム。
- 前記所定の通信は、前記無線接続に用いられている通信方式と異なる通信方式により前記通信装置と通信するための通信情報を前記端末装置に送信する処理を含むことを特徴とする請求項22に記載のプログラム。
- 前記所定の通信は、前記無線接続に用いられている通信方式と異なる通信方式によりアクセスポイントと通信するための通信情報を前記端末装置から受信する処理を含むことを特徴とする請求項22又は23に記載のプログラム。
- 前記プログラムは、前記コンピュータに、さらに、
前記モデルに入力される情報を、前記モデルを有するサーバに送信させて、
前記モデルに前記通信装置の状態に関する情報が入力された結果を、前記サーバから受信させ、
前記サーバから受信された前記結果に基づき、前記送信電力に関する値が特定されることを特徴とする請求項15乃至24のいずれか1項に記載のプログラム。 - 前記通信装置の状態が変化したことに基づいて、前記送信電力に関する値が特定されることを特徴とする請求項15乃至25のいずれか1項に記載のプログラム。
- 前記所定の信号は、Bluetooth Low Energyによって送信される信号であることを特徴とする請求項15乃至26のいずれか1項に記載のプログラム。
- 前記プログラムは、前記コンピュータに、さらに、印刷を実行させる、ことを特徴とする請求項15乃至27のいずれか1項に記載のプログラム。
- 所定の信号を無線によって送信する通信装置によって実行される制御方法であって、
前記所定の信号の送信に用いられる送信電力に関する値を少なくとも含んだ教師データが用いられた機械学習によって得られたモデルに、前記通信装置の状態に関する情報が入力された結果に基づき、前記送信電力に関する値を特定することと、
前記特定された前記送信電力に関する値に基づいて、前記所定の信号を無線によって送信することと、
を含むことを特徴とする制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019119016A JP2021005809A (ja) | 2019-06-26 | 2019-06-26 | 通信装置、プログラム、及び制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019119016A JP2021005809A (ja) | 2019-06-26 | 2019-06-26 | 通信装置、プログラム、及び制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021005809A true JP2021005809A (ja) | 2021-01-14 |
Family
ID=74099488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019119016A Pending JP2021005809A (ja) | 2019-06-26 | 2019-06-26 | 通信装置、プログラム、及び制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021005809A (ja) |
-
2019
- 2019-06-26 JP JP2019119016A patent/JP2021005809A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11316988B2 (en) | Communication apparatus using an advertising signal, method of controlling the same, and storage medium | |
US20210329134A1 (en) | Information processing apparatus enabling communication settings to be made with ease, method of controlling information processing apparatus, and storage medium | |
US10270685B2 (en) | Communication apparatus, control method therefor, and computer-readable storage medium | |
CN107025083B (zh) | 信息处理装置及其控制方法以及通信系统的控制方法 | |
US10887750B2 (en) | Communication apparatus and control method for the same | |
US20160261760A1 (en) | Electronic device, communication mode control method, and communication mode control program | |
EP2784667A1 (en) | Function executing apparatus, non-transitory storage medium storing instructions executable by the function executing apparatus, and method of controlling the function executing apparatus from an external device connected to the function executing apparatus | |
JP2013187566A (ja) | ネットワークシステム、情報処理装置、スキャナ装置、及び通信方法 | |
US20180006746A1 (en) | Communication apparatus, control method, and non-transitory computer-readable storage medium | |
JP6179778B2 (ja) | 画像形成システム、画像形成装置、端末、プログラム | |
JP2021027412A (ja) | 通信装置とその制御方法及びプログラム、学習済モデルと通信システム及び制御方法 | |
JP7536843B2 (ja) | 通信装置、制御方法、及びプログラム | |
US10271368B2 (en) | Communication apparatus having parallel wireless connection, communication method, and non-transitory computer-readable storage medium | |
CN110611904B (zh) | 控制方法、信息处理设备和非暂时性计算机可读存储介质 | |
US9230204B2 (en) | Image forming apparatus and method of reducing power consumption of communication module | |
KR102663265B1 (ko) | 전자 장치 및 전자 장치의 nan 기반의 통신 제어 방법 | |
JP2021005809A (ja) | 通信装置、プログラム、及び制御方法 | |
US10306455B2 (en) | Communication apparatus, communication method, and non-transitory computer-readable storage medium | |
JP2017144627A (ja) | 画像形成装置及びその制御方法、プログラム | |
US12101751B2 (en) | Communication apparatus, control method, and computer-readable storage medium | |
JP2024128353A (ja) | データ処理システム、情報処理装置、携帯通信装置、制御方法、及びプログラム | |
JP2021007191A (ja) | 処理装置、プログラム | |
JP2024128354A (ja) | データ処理システム、情報処理装置、携帯通信装置、制御方法、及びプログラム | |
JP2005033614A (ja) | 電話システム,電話端末,端末装置およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20210103 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210113 |