(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-12
(45)【発行日】2024-11-20
(54)【発明の名称】情報読取装置
(51)【国際特許分類】
H04R 3/00 20060101AFI20241113BHJP
G10K 15/04 20060101ALI20241113BHJP
【FI】
H04R3/00 310
G10K15/04 304A
(21)【出願番号】P 2021077855
(22)【出願日】2021-04-30
【審査請求日】2023-12-04
(31)【優先権主張番号】P 2021031001
(32)【優先日】2021-02-26
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】501428545
【氏名又は名称】株式会社デンソーウェーブ
(74)【代理人】
【識別番号】110000110
【氏名又は名称】弁理士法人 快友国際特許事務所
(72)【発明者】
【氏名】鈴木 竜輔
(72)【発明者】
【氏名】木村 明広
【審査官】▲徳▼田 賢二
(56)【参考文献】
【文献】特開2018-101194(JP,A)
【文献】特開2010-239603(JP,A)
【文献】特開2015-195446(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04R 3/00
G10K 15/04
(57)【特許請求の範囲】
【請求項1】
情報読取装置であって、
前記情報読取装置の周囲で発生する周囲音を検出するセンサと、
スピーカと、
情報を読み取る読取部と、
前記情報の読み取りが完了する場合に、前記情報の読み取りが完了したことを通知する通知音を前記スピーカに出力させる第1の出力制御部と、
前記センサによって検出された前記周囲音の強さが基準値を上回る場合に、前記通知音の周波数を予め設定されている第1の周波数から前記第1の周波数とは異なる第2の周波数に変更する周波数変更部であって、前記第2の周波数は、前記周囲音のうち、特定の強さを下回る強さを有する特定の周波数帯域に含まれる、前記周波数変更部と、
を備える、情報読取装置。
【請求項2】
前記通知音の強さは、予め設定されている第1の強さであり、
前記周波数変更部は、前記周囲音の前記第1の周波数における強さが前記第1の強さを上回る場合に、前記周囲音の強さが前記基準値を上回ったと判断して、前記通知音の周波数を、前記第1の強さである前記特定の強さを下回る強さを有する前記特定の周波数
帯域に含まれる前記第2の周波数に変更し、
前記周囲音の前記第1の周波数における強さが前記第1の強さを下回る場合に、前記周囲音の強さが前記基準値を下回っていると判断し、
前記周囲音の強さが前記基準値を下回っていると判断される場合に、前記通知音の周波数は前記第2の周波数に変更されない、請求項1に記載の情報読取装置。
【請求項3】
前記センサは、前記周囲音から、前記通知音の前記第1の周波数を含む、予め設定されている周波数帯域に対する特定の周波数スペクトルを検出する、請求項2に記載の情報読取装置。
【請求項4】
前記通知音の前記第1の強さが、前記周囲音の前記第2の周波数における強さを下回る場合に、前記通知音の強さを前記第1の強さから前記第1の強さを上回る第2の強さに変更する強さ変更部をさらに備える、請求項2または3に記載の情報読取装置。
【請求項5】
前記強さ変更部は、前記通知音の前記第2の強さのラウドネスレベルが、前記第1の強さのラウドネスレベルと同等となるように前記通知音の強さを変更する、請求項4に記載の情報読取装置。
【請求項6】
前記周囲音の周波数スペクトルから、予め設定されている複数の周波数に対応する複数の成分を取得する取得部と、
取得済みの前記複数の成分のうち、最小の強さに対応する成分の周波数を前記第2の周波数として決定する決定部と、
をさらに備える、請求項1から5のいずれか一項に記載の情報読取装置。
【請求項7】
前記第1の出力制御部は、特定のパターンで前記通知音を繰り返し出力可能に構成されており、
前記周囲音の強さが前記基準値を上回る場合に、前記特定のパターンを、予め設定されている第1のパターンから、前記第1のパターンとは異なる第2のパターンに変更するパターン変更部をさらに備える、請求項1から6のいずれか一項に記載の情報読取装置。
【請求項8】
前記スピーカとは異なる出力装置と、
前記第2の周波数を有する前記通知音を前記スピーカに出力させることに加えて、音声とは異なる方法による通知を前記出力装置に出力させる第2の出力制御部と、
をさらに備える、請求項1から7のいずれか一項に記載の情報読取装置。
【請求項9】
前記第2の出力制御部は、
前記第2の周波数における前記周囲音の強さが、前記通知音の強さの最大値を上回る場合に、音声とは異なる方法による前記通知を前記出力装置に出力させ、
前記第2の周波数における前記周囲音の強さが、前記最大値を下回る場合に、前記出力装置は動作しない、請求項8に記載の情報読取装置。
【請求項10】
前記センサは、所定の時間に亘って前記周囲音を検出し、
前記周波数変更部は、前記所定の時間のうちの特定のタイミングにおいて、特定の閾値を上回る強さを有するピーク音が発生し、かつ、前記特定の周波数帯域が、前記ピーク音の周波数であるピーク周波数を少なくとも1個含む場合に、前記特定の周波数帯域のうち、前記ピーク周波数を除く残り周波数の中から、前記第2の周波数を選択する、請求項1から9のいずれか一項に記載の情報読取装置。
【請求項11】
前記周波数変更部は、前記特定の周波数帯域のうち、最小の強さを有する特定の部分帯域が前記ピーク周波数を1個も含まない場合に、前記特定の周波数帯域のうち、最小の強さを有する周波数を前記第2の周波数として選択する、請求項10に記載の情報読取装置。
【請求項12】
前記特定の周波数帯域は、複数個の部分帯域を含み、
前記周波数変更部は、前記ピーク周波数が、前記複数個の部分帯域のうちの第1の部分帯域であって、最小の強さを有する前記第1の部分帯域に含まれる場合に、前記複数個の部分帯域のうち、前記第1の部分帯域の次に小さい強さを有する第2の部分帯域に含まれる周波数を前記第2の周波数として選択する、請求項10又は11に記載の情報読取装置。
【請求項13】
前記特定の周波数帯域は、複数個の部分帯域を含み、
前記周波数変更部は、前記ピーク周波数が、前記複数個の部分帯域のうちの第1の部分帯域に含まれる場合に、前記複数個の部分帯域のうち、前記第1の部分帯域から所定の周波数だけ離れた第2の部分帯域に含まれる周波数を前記第2の周波数として選択する、請求項10又は11に記載の情報読取装置。
【請求項14】
前記周波数変更部は、他の情報読取装置が前記周囲に存在する場合に、前記他の情報読取装置が第3の周波数を有する通知音を利用していることを示す周波数情報を利用して、前記通知音の周波数を前記第1の周波数から前記周波数情報によって示される前記第3の周波数とは異なる前記第2の周波数に変更する、請求項1から9のいずれか一項に記載の情報読取装置。
【請求項15】
前記周波数変更部は、前記他の情報読取装置が前記周囲に存在しないことに起因して、前記周波数情報が存在しない場合に、前記特定の周波数帯域のうち、最小の強さを有する周波数を前記第2の周波数として選択する、請求項14に記載の情報読取装置。
【請求項16】
前記特定の周波数帯域は、複数個の部分帯域を含み、
前記周波数変更部は、前記第3の周波数が、前記複数個の部分帯域のうちの第1の部分帯域であって、最小の強さを有する前記第1の部分帯域に含まれる場合に、前記複数個の部分帯域のうち、前記第1の部分帯域の次に小さい強さを有する第2の部分帯域に含まれる周波数を前記第2の周波数として選択する、請求項14又は15に記載の情報読取装置。
【請求項17】
前記特定の周波数帯域は、複数個の部分帯域を含み、
前記周波数変更部は、前記第3の周波数が、前記複数個の部分帯域のうちの第1の部分帯域に含まれる場合に、前記複数個の部分帯域のうち、前記第1の部分帯域から所定の周波数だけ離れた第2の部分帯域に含まれる周波数を前記第2の周波数として選択する、請求項14又は15に記載の情報読取装置。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書が開示する技術は、情報を読み取る情報読取装置に関する。
【背景技術】
【0002】
特許文献1には、周囲音に応じて着信音量を調整する携帯端末が開示されている。携帯端末は、周囲の音声信号を収集し、その音声信号を分析する。携帯端末は、上記の分析に基づいて、携帯端末が騒音のある場所(例えば道路)に置かれている判断すると、着信音量を大きくする。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の携帯端末では、着信音量が過度に大きくなると、ユーザが不快に感じるおそれがある。本明細書では、ユーザの不快感を軽減するための技術を提供する。
【課題を解決するための手段】
【0005】
本明細書が開示する情報読取装置は、前記情報読取装置の周囲で発生する周囲音を検出するセンサと、スピーカと、情報を読み取る読取部と、前記情報の読み取りが完了する場合に、前記情報の読み取りが完了したことを通知する通知音を前記スピーカに出力させる第1の出力制御部と、前記センサによって検出された前記周囲音の強さが基準値を上回る場合に、前記通知音の周波数を予め設定されている第1の周波数から前記第1の周波数とは異なる第2の周波数に変更する周波数変更部であって、前記第2の周波数は、前記周囲音のうち、特定の強さを下回る強さを有する特定の周波数帯域に含まれる、前記周波数変更部と、を備えてもよい。
【0006】
上述の情報読取装置は、周囲音の強さが基準値を上回る場合に、通知音の周波数を第1の周波数から第2の周波数に変更する。第2の周波数は、特定の強さを下回る強さを有する特定の周波数帯域、即ち、周囲音のうちの比較的静かな周波数帯域に含まれる。このため、第2の周波数に変更された通知音は、周囲音に埋もれず、ユーザに聞き取りやすくなる。通知音の周波数が、ユーザが聞き取りやすい周波数帯域に含まれる周波数に変更されるので、通知音の強さを変更しなくても、情報の読み取りの完了をユーザに通知することができる。また、仮に、通知音の強さを変更する場合であっても、通知音の周波数を変更することで、通知音の強さの変更を最小限に抑えることができる。以上より、通知音が過度に大きくならないため、ユーザの不快感を軽減することができる。
【0007】
前記通知音の強さは、予め設定されている第1の強さであり、前記周波数変更部は、前記周囲音の前記第1の周波数における強さが前記第1の強さを上回る場合に、前記周囲音の強さが前記基準値を上回ったと判断して、前記通知音の周波数を、前記第1の強さである前記特定の強さを下回る強さを有する前記特定の周波数領域に含まれる前記第2の周波数に変更し、前記周囲音の前記第1の周波数における強さが前記第1の強さを下回る場合に、前記周囲音の強さが前記基準値を下回っている判断し、前記周囲音の強さが前記基準値を下回っていると判断される場合に、前記通知音の周波数は前記第2の周波数に変更されなくてもよい。
【0008】
例えば、周囲音の強さの平均値が第1の強さを上回る場合に、周囲音の強さが基準値を上回ると判断する比較例が想定される。この比較例では、周囲音の第1の周波数(即ち通知音の周波数)における強さが通知音の第1の強さを下回るにも関わらず、平均値が第1の強さを上回る場合に、通知音の周波数が変更される。周囲音の第1の周波数における強さが通知音の第1の強さを下回る場合には、通知音がユーザに聞こえる可能性がある。上記の比較例では、通知音がユーザに聞こえるにも関わらず、通知音の周波数が変更されるので、ユーザが戸惑う可能性がある。上述した構成によれば、周囲音の第1の周波数における強さである周囲音強さが第1の強さを下回る場合に、通知音の周波数が変更されない。ユーザが戸惑うことを抑制することができる。
【0009】
前記センサは、前記周囲音から、前記通知音の前記第1の周波数を含む、予め設定されている周波数帯域に対する特定の周波数スペクトルを検出してもよい。
【0010】
上述した構成によると、予め設定されている周波数帯域以外の周波数帯域に対する周波数スペクトルの検出を省略することができる。センサの処理負荷を低減することができる。
【0011】
上述の情報読取装置は、前記通知音の前記第1の強さが、前記周囲音の前記第2の周波数における強さを下回る場合に、前記通知音の強さを前記第1の強さから前記第1の強さを上回る第2の強さに変更する強さ変更部をさらに備えてもよい。
【0012】
第2の周波数に変更された通知音の強さが、第2の周波数における周囲音を下回る場合には、ユーザが第2の周波数の通知音を聞き取り難い可能性がある。上述した構成によると、通知音の強さが大きくなり、通知音がユーザに聞き取りやすくなる。
【0013】
前記強さ変更部は、前記通知音の前記第2の強さのラウドネスレベルが、前記第1の強さのラウドネスレベルと同等となるように前記通知音の強さを変更してもよい。
【0014】
上述した構成によると、通知音の強さの変更の前後において、ラウドネスレベルが同等であるので、通知音の強さが大きくなっても、ユーザの感じる音の大きさが変化することを抑制することができる。
【0015】
上述の情報読取装置は、前記周囲音の周波数スペクトルから、予め設定されている複数の周波数に対応する複数の成分を取得する取得部と、取得済みの前記複数の成分のうち、最小の強さに対応する成分の周波数を前記第2の周波数として決定する決定部と、をさらに備えてもよい。
【0016】
上述した構成によると、予め設定されている複数の周波数以外の周波数の分析を省略することができる。周波数スペクトルの全ての周波数を分析する構成と比較して、情報読取装置の処理負荷を低減することができる。
【0017】
前記第1の出力制御部は、特定のパターンで前記通知音を繰り返し出力可能に構成されており、前記周囲音の強さが前記基準値を上回る場合に、前記特定のパターンを、予め設定されている第1のパターンから、前記第1のパターンとは異なる第2のパターンに変更するパターン変更部をさらに備えてもよい。
【0018】
上述した構成によると、通知音のパターンをさらに変更して、ユーザの通知音の聞き取りを促すことができる。
【0019】
上述の情報読取装置は、前記スピーカとは異なる出力装置と、前記第2の周波数を有する前記通知音を前記スピーカに出力させることに加えて、音声とは異なる方法による通知を前記出力装置に出力させる第2の出力制御部と、をさらに備えてもよい。
【0020】
上述の構成によると、異なる方法による通知と通知音の周波数の変更とを組み合わせて、ユーザが情報の読み取りの完了を認識する可能性を高めることができる。
【0021】
前記第2の出力制御部は、前記第2の周波数における前記周囲音の強さが、前記通知音の強さの最大値を上回る場合に、音声とは異なる方法による前記通知を前記出力装置に出力させ、前記第2の周波数における前記周囲音の強さが、前記最大値を下回る場合に、前記出力装置は動作しなくてもよい。
【0022】
例えば、第2の周波数における周囲音の強さに関わらず、音声とは異なる方法による通知を出力装置に出力させる比較例が想定される。例えば、第2の周波数における周囲音の強さが通知音の強さの最大値を下回る場合では、ユーザが通知音を認識する可能性が高い。上記の比較例では、ユーザが通知音を認識する可能性が高い場合であっても、出力装置が動作する。これに対して、上述した構成によると、第2の周波数における周囲音の強さが、通知音の最大値を下回る場合に、即ち、通知音の強さを最大値まで大きくすれば、ユーザが通知音を認識する可能性が高い状況において、出力装置が動作しない。出力装置を不必要に動作させることを抑制することができる。
【0023】
前記センサは、所定の時間に亘って前記周囲音を検出してもよい。その場合、前記周波数変更部は、前記所定の時間のうちの特定のタイミングにおいて、特定の閾値を上回る強さを有するピーク音が発生し、かつ、前記特定の周波数帯域が、前記ピーク音の周波数であるピーク周波数を少なくとも1個含む場合に、前記特定の周波数帯域のうち、前記ピーク周波数を除く残り周波数の中から、前記第2の周波数を選択してもよい。
【0024】
例えば、第2の周波数がピーク周波数と一致すると、ユーザは、ピーク音を情報読取装置の通知音と勘違いする可能性がある。上記の構成によれば、情報読取装置は、第2の周波数としてピーク周波数とは異なる周波数を選択する。第2の周波数がピーク周波数と一致することが抑制される。ユーザが、ピーク音を情報読取装置の通知音と勘違いすることを抑制することができる。
【0025】
前記周波数変更部は、前記特定の周波数帯域のうち、最小の強さを有する特定の部分帯域が前記ピーク周波数を1個も含まない場合に、前記特定の周波数帯域のうち、最小の強さを有する周波数を前記第2の周波数として選択してもよい。
【0026】
上述の構成によれば、最も静かな周波数帯で通知音が出力される。ユーザは、通知音を容易に認識することができる。
【0027】
前記特定の周波数帯域は、複数個の部分帯域を含んでもよい。前記周波数変更部は、前記ピーク周波数が、前記複数個の部分帯域のうちの第1の部分帯域であって、最小の強さを有する前記第1の部分帯域に含まれる場合に、前記複数個の部分帯域のうち、前記第1の部分帯域の次に小さい強さを有する第2の部分帯域に含まれる周波数を前記第2の周波数として選択してもよい。
【0028】
第2の周波数は、最小の強さを有する、最も静かな第1の部分帯域内から選択されるのがよい。しかし、第1の部分帯域がピーク周波数を含む場合には、通知音の周波数がピーク周波数に近くなり、ユーザがピーク音を通知音と勘違いする可能性がある。上記の構成によれば、第1の部分帯域の次に静かな第2の部分帯域から第2の周波数を選択することができるとともに、通知音の周波数がピーク周波数から離れ、ユーザがピーク音を通知音と勘違いすることを抑制することができる。
【0029】
前記特定の周波数帯域は、複数個の部分帯域を含んでもよい。その場合、前記周波数変更部は、前記ピーク周波数が、前記複数個の部分帯域のうちの第1の部分帯域に含まれる場合に、前記複数個の部分帯域のうち、前記第1の部分帯域から所定の周波数だけ離れた第2の部分帯域に含まれる周波数を前記第2の周波数として選択してもよい。
【0030】
例えば、ピーク周波数を含む第1の部分帯域内の周波数を第2の周波数として選択すると、通知音の周波数がピーク周波数に近くなり、ユーザがピーク音を通知音と勘違いする可能性がある。上記の構成によれば、通知音の周波数がピーク周波数から離れ、ユーザがピーク音を通知音と勘違いすることを抑制することができる。
【0031】
前記周波数変更部は、他の情報読取装置が前記周囲に存在する場合に、前記他の情報読取装置が第3の周波数を有する通知音を利用していること示す周波数情報を利用して、前記通知音の周波数を前記第1の周波数から前記周波数情報によって示される前記第3の周波数とは異なる前記第2の周波数に変更してもよい。
【0032】
例えば、第2の周波数が他の情報読取装置の通知音の第3の周波数と一致すると、ユーザは、他の情報読取装置の通知音を自身の情報読取装置の通知音と勘違いする可能性がある。上記の構成によれば、情報読取装置は、第2の周波数として第3の周波数とは異なる周波数を選択する。第2の周波数が第3の周波数と一致することが抑制される。ユーザが、他の情報読取装置の通知音を自身の情報読取装置の通知音と勘違いすることを抑制することができる。
【0033】
前記周波数変更部は、前記他の情報読取装置が前記周囲に存在しないことに起因して、前記周波数情報が存在しない場合に、前記特定の周波数帯域のうち、最小の強さを有する周波数を前記第2の周波数として選択してもよい。
【0034】
上述の構成によると、他の情報読取装置が情報読取装置の周囲に存在しない場合に、情報読取装置は、最小の強さを有する周波数を第2の周波数として選択する。最も静かな周波数帯で通知音が出力され、ユーザは、通知音を容易に認識することができる。
【0035】
前記特定の周波数帯域は、複数個の部分帯域を含んでもよい。その場合、前記周波数変更部は、前記第3の周波数が、前記複数個の部分帯域のうちの第1の部分帯域であって、最小の強さを有する前記第1の部分帯域に含まれる場合に、前記複数個の部分帯域のうち、前記第1の部分帯域の次に小さい強さを有する第2の部分帯域に含まれる周波数を前記第2の周波数として選択してもよい。
【0036】
第2の周波数は、最小の強さを有する、最も静かな第1の部分帯域内から選択されるのがよい。しかし、第1の部分帯域が他の情報読取装置の第3の周波数を含む場合には、通知音の周波数が第3の周波数に近くなり、ユーザが他の情報読取装置の通知音を自身の情報読取装置の通知音と勘違いする可能性がある。上記の構成によれば、第1の部分帯域の次に静かな第2の部分帯域から第2の周波数を選択することができるとともに、通知音の周波数が第3の周波数から離れ、ユーザが第3の周波数を自身の情報読取装置の通知音と勘違いすることを抑制することができる。
【0037】
前記特定の周波数帯域は、複数個の部分帯域を含んでもよい。その場合、前記周波数変更部は、前記第3の周波数が、前記複数個の部分帯域のうちの第1の部分帯域に含まれる場合に、前記複数個の部分帯域のうち、前記第1の部分帯域から所定の周波数だけ離れた第2の部分帯域に含まれる周波数を前記第2の周波数として選択してもよい。
【0038】
例えば、第3の周波数を含む第1の部分帯域内の周波数を第2の周波数として選択すると、自身の情報読取装置の通知音の周波数が他の読取装置の通知音の第3の周波数に近くなり、ユーザが他の読取装置の通知音を自身の情報読取装置の通知音と勘違いする可能性がある。上記の構成によれば、自身の情報読取装置の通知音の周波数が第3の周波数から離れ、ユーザが他の読取装置の通知音を自身の情報読取装置の通知音と勘違いすることを抑制することができる。
【0039】
本明細書が開示する技術の詳細とさらなる改良は以下の「発明を実施するための形態」にて説明する。
【図面の簡単な説明】
【0040】
【
図1】実施例のコード読取装置の正面側の斜視図を示す。
【
図2】実施例のコード読取装置の背面側の斜視図を示す。
【
図3】実施例のコード読取装置のブロック図を示す。
【
図4】マイクが収集した周囲音N1の波形の一例を示す。
【
図5】周囲音N1の周波数スペクトルS1の一例を示す。
【
図6】第1実施例の制御部が実行する処理のフロー図を示す。
【
図7】第2実施例の制御部が実行する処理のフロー図を示す。
【
図9】第3実施例の制御部が実行する処理のフロー図を示す。
【
図10】第4実施例の制御部が実行する処理のフロー図を示す。
【
図11】第5実施例の制御部が実行する処理のフロー図を示す。
【
図12】第5実施例における周波数帯域Fbの拡大図を示す。
【
図13】候補周波数Xnにおける音圧の経時的変化を示す。
【
図14】第6実施例のコード読取装置のブロック図を示す。
【
図15】第6実施例のコード読取装置と、周辺のコード読取装置と、の概略図を示す。
【
図16】第6実施例の制御部が実行する処理のフロー図を示す。
【
図17】第6実施例における周波数帯域Fbの拡大図を示す。
【発明を実施するための形態】
【0041】
(コード読取装置10の構成;
図1、
図2、
図3)
図1、
図2、
図3に示される本実施例に係るコード読取装置10は、情報コード(例えばバーコード)に記録されているデータを読み取るための装置である。コード読取装置10は、表示部12と、操作部14と、通知灯16と、振動部18と、スピーカ20と、撮像部30と、マイク32と、制御部40と、を備える。なお、
図1、
図2には、XYZ座標系が記載されている。また、振動部18、スピーカ20、及び、制御部40は、コード読取装置10の内部に配置されている。
図1、
図2では、各部18、40は、コード読取装置10の表面に隠れて見えない。
【0042】
表示部12は、様々な情報を表示するためのディスプレイである。操作部14は、複数個のキーを備える。ユーザは、操作部14を操作することによって、様々な指示をコード読取装置10に入力することができる。なお、表示部12は、ユーザから指示を受け付けるタッチパネル(即ち操作部)としても機能してもよい。
【0043】
通知灯16は、情報コードの読み取りが完了したことをユーザに通知する発光手段である。通知灯16は、例えば、LEDである。
図1に示すように、通知灯16は、コード読取装置10の正面側(即ち表示部12が配置されている側)に配置されている。
【0044】
振動部18は、コード読取装置10を振動させる装置である。振動部18は、いわゆるバイブレーション機能を実現する装置である。スピーカ20は、情報コードの読み取りが完了したことをユーザに通知する通知音を出力する装置である。
【0045】
撮像部30は、発光部30aと、受光部30bと、を備える。発光部30aは、情報コードを照らす照明光を発光可能な部位である。発光部30aは、例えば、LEDである。受光部30bは、発光部30aによる照射光の反射光を受光可能な部位である。受光部30bは、反射光を集光するレンズと、当該レンズによって集光された光を電気信号(例えば画像データ)に変換するイメージセンサと、を含む。撮像部30は、例えば、カメラである。なお、変形例では、発光部30aは、レーザを走査して情報コードに照射するレーザ光源であり、受光部30bは、当該レーザの反射レーザを受光する素子であってもよい。
【0046】
マイク32は、コード読取装置10の周囲に発生する周囲音N1を収集する装置である。
【0047】
図2に示すように、撮像部30は、コード読取装置10の背面側に配置されている。ユーザは、コード読取装置10の背面側を情報コードに向けることにより、情報コードの読み取りをコード読取装置10に実行させることができる。
【0048】
制御部40は、CPU42と、メモリ44と、を備える。CPU42は、メモリ44に記憶されているプログラム50に従って様々な処理を実行する。メモリ44は、揮発性メモリ、不揮発性メモリ等によって構成される。
【0049】
制御部40は、例えば、操作部14の操作に応じて、撮像部30を起動し、情報コードを撮像部30に撮像させる。そして、制御部40は、撮像済みの情報コードに記録されたデータを読み取り、当該データを出力する。例えば、制御部40は、当該データによって表される読み取り結果(例えば文字列)を表示部12に表示させる。また、制御部40は、当該データを外部の装置(例えばサーバ)に送信する。
【0050】
制御部40は、情報コードの読み取りが完了する場合に、情報コードの読み取りが完了したことを通知する通知音をスピーカ20に出力させる。ユーザは、通知音を聞いて、情報コードの読み取りの完了を認識することができる。また、制御部40のメモリ44には、通知音に関する設定情報が記憶されている。設定情報は、通知音を出力するパターンを示すパターン情報、通知音の強さ、及び、通知音の周波数、を含む。設定情報は、例えば、コード読取装置の出荷段階において予め設定されている。設定情報は、ユーザによって変更可能である。本実施例では、通知音の周波数は、出荷段階における初期周波数F1であり、通知音の強さは、初期通知音強さP1である。「強さ」の単位は、デシベルである。なお、「強さ」の単位は、デシベルに限らず、例えば、音圧の単位であるパスカルであってもよい。
【0051】
(周囲音N1の検出方法;
図4、
図5)
マイク32によって計測される周囲音N1は、
図4に示されるように、時刻Tに対する振幅Aの変化を示す波形として検出される。マイク32は、検出した波形を電気信号に変更し、制御部40(
図3参照)に供給する。制御部40は、マイク32から取得した電気信号から、周波数スペクトルS1を検出する。周波数スペクトルS1は、周囲音N1を、周波数Fごとに分解した強さPの分布である。
【0052】
コード読取装置10が使用される環境下では、様々な周波数の音が発生し得る。そのため、周囲音は、幅広い周波数帯域を有する。しかし、制御部40は、通知音の初期周波数F1を中心とした周波数帯域Fa対する周波数スペクトルS1を検出する。周波数帯域Faは、初期周波数F1が設定される際に予め設定される。この構成によれば、周波数帯域Fa以外の周波数帯域に対する周波数スペクトルの分析を省略することができる。周波数スペクトルを検出する制御部40の処理負荷を低減することができる。
【0053】
図5に示されるように、例えば、周囲音N1の周波数スペクトルS1は、周波数Fが比較的高い領域(すなわち、
図5の右側)では、その強さPが小さい。一方、周波数Fが比較的低い領域(すなわち、
図5の左側)では、その強さPが大きい。このように、周囲音N1の強さPは、その周波数Fに応じて変化する。なお、
図5のグラフは、一例に過ぎず、例えば、周波数Fが低い領域で強さPが小さく、周波数Fが高い領域で強さPが大きくてもよい。
【0054】
(第1実施例の制御部40が実行する処理;
図6)
図6を参照して、コード読取装置10の制御部40によって実行される処理を説明する。
図6の処理は、コード読取装置10の電源がONされた後に定期的に実行される。なお、変形例では、
図6の処理は、ユーザの操作に応じて実行されてもよい。
【0055】
S2では、制御部40は、マイク32によってコード読取装置10の周囲の周囲音N1(
図4参照)を収集する。続くS4では、制御部40は、周波数スペクトルS1(
図5参照)を検出する。
【0056】
続くS6では、制御部40は、S4で検出した周波数スペクトルS1から、通知音の初期周波数F1に対応する周囲音の強さPnを取得する(
図5参照)。そして、制御部40は、取得済みの強さPnが通知音の初期通知音強さP1以上であるのか否かを判断する。
【0057】
制御部40は、周囲音N1の強さPnが初期通知音強さP1以上であると判断する場合(S6でYES)に、S8に進む。一方、制御部40は、強さPnが初期通知音強さP1より小さいと判断する場合(S6でNO)に、S8以降の処理をスキップして、
図6の処理を終了する。
【0058】
S8では、制御部40は、周囲音N1の周波数スペクトルS1から、通知音の初期通知音強さP1より小さい強さを有する周波数帯域Fb(
図5参照)を特定する。そして、制御部40は、特定済みの周波数帯域Fbの中から、最小の強さPmに対応する最小周波数F2を取得する。
【0059】
続くS10では、制御部40は、通知音の設定情報のうちの周波数を初期周波数F1からS8で取得した最小周波数F2に変更する。S10の処理が終了すると、
図6の処理が終了する。
【0060】
(本実施例の効果)
本実施例の構成によれば、コード読取装置10は、周囲音N1の初期周波数F1における強さPnが、通知音の初期通知音強さP1以上である場合(
図6のS6でYES)に、通知音の周波数を初期周波数F1から最小周波数F2に変更する(S10)。
図5に示されるように、最小周波数F2は、通知音の初期通知音強さP1より小さい強さを有する周波数帯域Fb、即ち、周囲音のうちの比較的静かな周波数帯域に含まれる。このため、最小周波数F2に変更された通知音は、周囲音N1に埋もれず、ユーザに聞き取りやすくなる。通知音の周波数が、ユーザが聞き取りやすい周波数帯域Fbに含まれる最小周波数F2に変更されるので、通知音の強さを初期通知音強さP1から変更しなくても、情報コードの読み取りの完了をユーザに通知することができる。例えば、通知音の周波数を変えず、通知音の強さを周囲音N1の初期周波数F1における強さPn以上の強さまで変更する比較例が想定される。この比較例では、ユーザは、過大な強さを有する通知音を不快に感じ得る。本実施例の構成によれば、通知音の強さを初期通知音強さP1から変更しないので、ユーザの不快感を軽減することができる。
【0061】
例えば、
図6のS6において、周囲音N1の強さの平均値が通知音の初期通知音強さP1以上であるのか否かを判断する比較例が想定される。コード読取装置10は、周囲音N1の強さの平均値が通知音の初期通知音強さP1以上であると判断する場合に、S8以降の処理に進む。この比較例では、周囲音N1の初期周波数F1における強さが初期通知音強さP1以上でないにも関わらず、周囲音の平均値が初期通知音強さP1以上である場合に、通知音の周波数が変更される。周囲音の初期周波数F1における強さが初期通知音強さP1より小さい場合には、通知音がユーザに聞こえる可能性がある。上記の比較例では、通知音がユーザに聞こえるにも関わらず、通知音の周波数が変更されるので、ユーザが戸惑う可能性がある。本実施例の構成によれば、周囲音N1の初期周波数F1における強さPnが通知音の初期通知音強さP1より小さい場合(S6でNO)に、通知音の周波数が変更されない。ユーザが戸惑うことを抑制することができる。なお、変形例では、上記の比較例の構成を採用してもよい。この比較例では、周囲音N1の強さの平均値が、「周囲音の強さ」の一例である。
【0062】
また、本実施例では、
図6の処理が終了した後、制御部40は、メモリ44内のパターン情報に含まれる初期パターンで通知音を出力する。即ち、通知音のパターンは変更されない。このため、ユーザは、通知音の周波数が変更されたとしても、通知音のパターンが変更されないので、通知音を聞いて、情報コードの読み取りの完了を認識することができる。
【0063】
(対応関係)
コード読取装置10が、「情報読取装置」の一例である。マイク32及び
図6のS2、S4の処理を実行する制御部40が、「センサ」の一例である。スピーカ20が、「スピーカ」の一例である。撮像部30を利用して情報コードを読み取る制御部40が、「読取部」の一例である。初期通知音強さP1が、「基準値」の一例であるとともに、「特定の強さ」及び「第1の強さ」の一例である。初期周波数F1が、「第1の周波数」の一例である。最小周波数F2が、「第2の周波数」の一例である。周波数帯域Fbが、「特定の周波数帯域」の一例である。
【0064】
(第2実施例の制御部40が実行する処理;
図7)
第2実施例の制御部40は、
図6を参照して説明した処理に加え、
図7のS11~S14の処理をさらに実行する。
図7のS2からS10までの処理は、上述した
図6と同様の処理である。S10で通知音に最小周波数F2を設定した後、制御部40は、さらにS11において、設定情報のパターン情報に含まれる通知音を出力するパターンを、初期パターンから別のパターン(以下では「二次パターン」と記載)に変更する。その後、制御部40は、S12において、初期通知音強さP1が周囲音の最小強さPm以下であるか否かを判断する。
【0065】
制御部40は、初期通知音強さP1が周囲音の最小強さPm以下であると判断する場合(S12でYES)に、S14に進む。一方、制御部40は、初期通知音強さP1が周囲音の最小強さPmより大きいと判断する場合(S12でNO)に、S14の処理をスキップして、
図7の処理を終了する。
【0066】
S14では、制御部40は、通知音の強さを、初期通知音強さP1から、二次通知音強さP2に変更する。二次通知音強さP2は、周囲音N1の最小強さPmより大きい強さである。すなわち、二次通知音強さP2は、初期通知音強さP1より大きい。また、二次通知音強さP2は、周囲音N1の初期周波数F1における初期周囲音強さPnより小さい値に設定される。S14処理が終了すると、
図7の処理が終了する。
【0067】
本実施例の構成によると、
図7の処理が終了した後において、制御部40は、変更済みの二次パターンの通知音をスピーカ20から出力する。これにより、周波数に加え、通知音のパターンを初期パターンから二次パターンにさらに変更して、ユーザの通知音の聞き取りを促すことができる。
【0068】
また、初期通知音強さP1が最小強さPmより大きい場合(
図7のS12でNO)、通知音は、周囲音に埋もれにくい。そのため、通知音がユーザに聞き取りやすい。一方、コード読取装置10の周囲の騒音が比較的大きく、初期通知音強さP1が最小強さPm以下である場合(S12でYES)には、ユーザが最小周波数F2の通知音を聞き取り難い可能性がある。本実施例の構成によると、通知音の強さを初期通知音強さP1から二次通知音強さP2に変更することで、周囲音N1の最小強さPmが比較的に大きい場合であっても、通知音がユーザに聞き取りやすくなる。また、本実施例の制御部40は、通知音の周波数を最小周波数F2に変更し、通知音の強さを、初期周囲音強さPnより小さい二次通知音強さP2に変更する。通知音の周波数を変更しないで通知音の強さを初期周囲音強さPnより大きくする構成と比べて、通知音の強さの変更を最小限に抑えることができる。その結果、通知音が過度に大きくならないため、ユーザの不快感を軽減することができる。
【0069】
(対応関係)
初期通知音強さP1が、「第1の強さ」の一例である。二次通知音強さP2が、「第2の強さ」の一例である。初期パターンが、「第1のパターン」の一例である。二次パターンが、「第2のパターン」の一例である。
図7のS11の処理を実行する制御部40、
図7のS14の処理を実行する制御部40が、それぞれ、「パターン変更部」、「強さ変更部」の一例である。
【0070】
(等ラウドネス曲線L1;
図8)
図8は、例えば、ラウドネスレベル「40phon」における等ラウドネス曲線L1を示す。等ラウドネス曲線L1に示されるように、ユーザにとって大きさ40phonで認識される強さPは、その音の周波数Fに応じて変化する。別言すれば、周波数Fが異なる場合、強さPが同じであっても、ユーザは、違う大きさの音として認識することがある。
【0071】
(第3実施例の制御部40が実行する処理;
図9)
第3実施例の制御部40は、メモリ44(
図3参照)内に所定のラウドネスレベルの等ラウドネス曲線L1を記憶している。
図9には、第3実施例の制御部40が実行する処理が記載されているが、S2からS14までの処理は、S11の処理を実行しない点を除き、
図7の第2実施例の処理と同様である。
【0072】
S20において、制御部40は、メモリ44内の等ラウドネス曲線L1を利用して、S14で変更された二次通知音強さP2に調整する。具体的には、制御部40は、メモリ44内の等ラウドネス曲線L1から、最小周波数F2に対応する強さPLを特定する。そして、制御部40は、二次通知音強さP2を特定済みの強さPLに調整する。これにより、最小周波数F2に変更された後の通知音のラウドネスレベルが、初期周波数F1の通知音に予め設定されている通知音のラウドネスレベルと同等となる。
【0073】
本実施例の構成によると、通知音の強さの変更の前後において、ラウドネスレベルが同等であるので、通知音の強さが大きくなっても、ユーザの感じる音の大きさが変化することを抑制することができる。
図2のS14及びS20の処理を実行する制御部40が、「強さ変更部」の一例である。また、制御部40は、初期通知音強さP1が周囲音の最小強さPmより大きいと判断する場合(S12でNO)も、S20で通知音のラウドネスレベルを調整する。これにより、通知音の周波数を最小周波数F2に変更されても、ユーザの感じる音の大きさが変化することを抑制することができる。
【0074】
(第4実施例の制御部40が実行する処理;
図10)
図10を参照して、第4実施例の制御部40が実行する処理について説明する。なお、
図10のS2からS12までの処理は、
図9の第3実施例の処理と同様である。第4実施例の制御部40は、メモリ44内に、最大強さPthを記憶している。ここで、最大強さPthは、通知音の強さの最大値である。最大強さPthより大きい強さの通知音は、ユーザに不快感を生じさせるおそれがある。
【0075】
制御部40は、初期通知音強さP1が周囲音の最小強さPm以下であると判断する場合(S12でYES)に、S24において、通知音の強さを、メモリ44内の最大強さPthを上限とする二次通知音強さP2に変更する。例えば、最大強さPthが、周囲音の最小強さPmより大きい場合には、二次通知音強さP2は、最大強さPthより小さく周囲音の最小強さPmより大きい中間の強さに決定される。また、例えば、最大強さPthが、周囲音の最小強さPm以下である場合には、二次通知音強さP2は、最大強さPthに決定される。
【0076】
続くS30では、制御部40は、最小周波数F2における周囲音の最小強さPmが、通知音の最大強さPth以上か否かを判断する。
【0077】
制御部40は、周囲音の最小強さPmが、通知音の最大強さPth以上であると判断する場合(S30でYES)に、S32に進む。一方、制御部40は、周囲音の最小強さPmが、通知音の最大強さPthより小さいと判断する場合(S30でNO)に、S32の処理をスキップして、
図10の処理を終了する。
【0078】
S32では、制御部40は、コード読取装置10の振動部18(
図2参照)の設定を、「OFF」から「ON」に変更する。「OFF」は、情報コードの読み取りが完了した場合に振動部18を動作させない設定である。一方、「ON」は、情報コードの読み取りが完了した場合に振動部18を動作させる設定である。振動部18の設定は、デフォルトでは「OFF」を示す。また、振動部18の設定は、例えば、コード読取装置10の電源がOFFされる場合に、「OFF」に戻る。これにより、コード読取装置10(
図1参照)が、音声とは異なる振動による通知を出力することが可能となる。S32の処理が終了すると、
図10の処理が終了する。
【0079】
周囲音の最小強さPmが通知音の最大強さPth以上であると判断する場合(S30でYES)には、周囲音N1の強さが大きいため、通知音のみによって、ユーザに読取完了を認識させることが困難である。
図10の処理が終了した後、制御部40は、通知音を出力するとともに、振動部18(
図3参照)を振動させる。これにより、振動による通知と通知音の周波数の変更とを組み合わせて、周囲音N1が大きい中であっても、通知音の強さを最大強さPth以上に大きくすることなく、ユーザが情報の読み取りの完了を認識する可能性を高めることができる。
【0080】
また、例えば、最小周波数F2における周囲音N1の最小強さPmに関わらず、振動による通知を振動部18に出力させる比較例が想定される。例えば、最小周波数F2における周囲音N1の最小強さPmが通知音の最大強さPthより小さい場合では、通知音の強さを最小強さPmより大きく調整することで、ユーザが通知音を認識する可能性が高い。上記の比較例では、ユーザが通知音を認識する可能性が高い場合であっても、振動部18が動作する。これに対して、本実施例の構成によると、最小周波数F2における周囲音N1の最小強さPmが、通知音の最大強さPthより小さい場合(S30でNO)に、即ち、通知音の強さを最大強さPthまで大きくすれば、ユーザが通知音を認識する可能性が高い状況において、振動部18が動作しない。振動部18を不必要に動作させることを抑制することができる。
【0081】
(対応関係)
振動部18、振動部18を振動させることが、それぞれ、「出力装置」、「音声とは異なる方法」の一例である。
【0082】
(第5実施例の制御部40が実行する処理;
図11)
図11を参照して、第5実施例の制御部40が実行する処理について説明する。
【0083】
本実施例では、所定の領域(例えば、倉庫)において、複数個のコード読取装置10が利用される。例えば、複数個のコード読取装置10のうちの第1のコード読取装置が通知音を出力すると、複数個のコード読取装置10のうちの第2のコード読取装置が、第1のコード読取装置の通知音を周囲音として収集する(例えば後述する
図11のS2)。当該通知音は、比較的短い時間に亘って出力される。第2のコード読取装置は、当該通知音を、周囲音におけるピーク音として収集する。
【0084】
図11のS2、S4は、
図6の第1実施例の処理と同様である。ここで、本実施例では、S4において検出された周波数スペクトルS1は、メモリ44に記憶される。メモリ44には、過去のタイミングから現在のタイミングまでの間で検出された複数個の周波数スペクトルS1が記憶される。過去のタイミングから現在のタイミング迄の時間(以下、「記憶時間」と記載)は、例えば、10秒である。記憶時間に亘る複数個の周波数スペクトルS1のうちの、特定のタイミングにおける周波数スペクトルS1は、ピーク音のデータを含み得る。
【0085】
S6は、
図6の第1実施例の処理と同様である。即ち、本実施例でも、制御部40は、S6において、S4で検出した周波数スペクトルS1から、通知音の初期周波数F1に対応する周囲音の強さPnを取得する(
図5参照)を取得する。なお、変形例では、制御部40は、メモリ44内の複数個の周波数スペクトルS1の平均を算出してもよい。当該平均は、記憶時間に亘る周波数の平均的な周波数スペクトルに相当する。そして、制御部40は、平均的な周波数スペクトルから通知音の初期周波数F1に対応する周囲音の強さPnを取得してもよい。
【0086】
制御部40は、周囲音N1の強さPnが初期通知音強さP1以上であると判断する場合(S6でYES)に、S40に進む。一方、制御部40は、周囲音N1の強さPnが初期通知音強さP1より小さいと判断する場合(S6でNO)に、S40以降の処理をスキップして、
図11の処理を終了する。
【0087】
S40において、制御部40は、S4で検出した周波数スペクトルS1のうちの、周波数帯域Fb(
図5参照)について、メモリ44内の複数個の周波数スペクトルS1の平均(以下では、「平均スペクトル」と記載)を算出する。そして、
図12に示されるように、制御部40は、平均スペクトルを、10個の部分帯域に分割する。部分帯域のそれぞれは、ユーザが隣接する部分帯域同士を識別可能な周波数の幅(例えば、100hertz)を有する。制御部40は、部分帯域のそれぞれから、候補周波数を特定する。具体的には、制御部40は、周波数帯域Fbのうち、最小の強さPmaを有する周波数を含む部分帯域を、部分帯域A1として選択する。制御部40は、選択済みの部分帯域A1から、最小の強さPmaを有する周波数を候補周波数X1として特定する。次いで、制御部40は、周波数帯域Fbのうち、候補周波数X1の次に小さい強さを有する周波数X2を含む部分帯域を、部分帯域A2として特定し、当該周波数X2を候補周波数X2として特定する。このように、制御部40は、部分帯域を識別するカウント値nを、強さの小さい候補周波数を有する部分帯域から順番に付していく。同様に、候補周波数を識別するカウント値nを、強さの小さい候補周波数から順番に付していく。本ケースでは、部分帯域A1~A10のそれぞれについて、候補周波数X1~X10が特定される。なお、部分帯域の個数及び候補周波数の個数は、10個に限らず、例えば、3個、12個等であってもよい。また、変形例では、S40におけるカウント値の付与と候補周波数の特定の方法は、後述する第6実施例の
図16のS60と同様であってもよい。
【0088】
続くS42において、制御部40は、部分帯域A1~A10から1個の候補周波数を選択し、選択済みの部分帯域Anにおけるピーク強さPp(詳細は後述)が、選択済みの部分帯域Anにおける平均スペクトルの強さPxと閾値強さPdの和より小さいか否かを判断する。具体的には、制御部40は、最初に、部分帯域Anから特定した第1の周波数において、当該周波数のピーク強さPpが、当該周波数の平均スペクトルの強さPxと閾値強さPdの和より小さいか否かを判断する。ついで、制御部40は、部分帯域Anから特定した第2の周波数において、当該周波数のピーク強さPpが、当該周波数の平均スペクトルの強さPxと閾値強さPdの和より小さいか否かを判断する。すなわち、制御部40は、部分帯域A1から特定した複数の周波数のそれぞれについて、当該周波数のピーク強さPpが当該周波数の平均スペクトルの強さPxと閾値強さPdの和より小さいか否かを判断する。なお、制御部40は、部分帯域A1から、1hertzごとに周波数を特定してもよいし、5hertzごとに周波数を特定してもよいし、10hertzごとに周波数を特定してもよい。
【0089】
制御部40は、部分帯域Anから特定した複数の周波数のいずれかにおいて、当該周波数のピーク強さPpが、当該周波数の平均スペクトルの強さPxと閾値強さPdの和以上である場合に、部分帯域Anにおけるピーク強さPpが部分帯域Anにおける平均スペクトルの強さPxと閾値強さPdの和以上であると判断する。一方、制御部40は、部分帯域Anから特定した複数の周波数の全てにおいて、当該周波数のピーク強さPpが、当該周波数の平均スペクトルの強さPxと閾値強さPdの和より小さい場合に、部分帯域Anにおけるピーク強さPpが部分帯域Anにおける平均スペクトルの強さPxと閾値強さPdの和より小さいと判断する。なお、本実施例では、S42において、制御部40は、候補周波数X1~X10のうち、最小の強さを有する候補周波数X1(
図12参照)を最初に選択する。
【0090】
図13を参照して、ピーク強さPpについて説明する。部分帯域Anのうちのいずれかの周波数において、後述するタイミングTpの前後の時間帯では、ピーク音が発生していない。当該時間帯における周波数の強さは、平均スペクトルの強さPx付近で小さく変化しながら推移する。一方、タイミングTpでは、ピーク音が発生する。タイミングTpにおける強さは、瞬間的にピーク強さPpまで上昇する。ここで、ピーク音が発生するタイミングTpの長さは、記憶時間に比して極めて短い。タイミングTpは、例えば、数ミリ秒程度の長さである。このため、ピーク音の発生が平均スペクトルに与える影響は小さい。
【0091】
タイミングTpの前後の時間帯では、周囲音の強さは、強さPxと閾値強さPdの和より小さい。一方、タイミングTpでは、周囲音の強さは、強さPxと閾値強さPdの和以上である。別言すれば、ピーク音が発生した場合に、ピーク強さPpは、平均スペクトルの強さPxから閾値強さPdを上回る強さとなる。
【0092】
閾値強さPdは、ユーザのピーク音の認識の有無を判断するための閾値である。閾値強さPdは、コード読取装置10の周辺で発生し得るピーク音(例えば、周辺に位置する他のコード読取装置の通知音等)の種類、強さ等に応じて設定される。ピーク音の強さが強いほど、ユーザは、ピーク音を認識し易い。ユーザがピーク音を認識すると、ユーザは、当該ピーク音を、ユーザ自身が操作するコード読取装置10の通知音と勘違いする可能性がある。
【0093】
制御部40は、部分帯域Anにおけるピーク強さPpが、部分帯域Anにおける平均スペクトルの強さPxと閾値強さPdの和以上であると判断する場合(S42でNO)に、ユーザがピーク音を認識すると推定し、S44の処理をスキップしてS50に進む。
【0094】
続くS50において、制御部40は、S42で選択された部分帯域Anのカウント値n(即ち現在のカウント値n)が、S40で特定した部分帯域A1からA10の個数「10」と一致するか否かを判断する。制御部40は、現在のカウント値nが、個数「10」と一致しないと判断する場合(S50でNO)に、S52に進む。S52では、制御部40は、現在のカウント値nを1だけインクリメントする。制御部40は、S52が終了すると、S42に戻り、インクリメント後のカウント値nに対応する他の部分帯域(例えばA2)を選択する。
【0095】
制御部40は、現在のカウント値nが個数「10」と一致する場合(S50でYES)、S54に進む。S54において、制御部40は、カウント値を「1」に設定する。S56では、制御部40は、通知音の設定情報のうちの周波数を、初期周波数F1から、部分帯域A1に含まれており、最小の強さPmaを有する周波数である候補周波数X1に変更する。S56が終了すると、
図11の処理が終了する。
【0096】
本実施例では、制御部40は、S56において通知音の周波数が変更される場合において、通知音がスピーカ20から出力されるときに、さらに、振動部18(
図3参照)を振動させる。例えば、通知音の周波数がピーク音の周波数と近い場合であっても、振動部18の振動によってユーザが情報の読み取りの完了を認識する可能性を高めることができる。なお、変形例では、振動部18の振動を省略可能である。また、さらなる変形例では、振動部18に代えて、通知灯16を動作させてもよい。
【0097】
また、制御部40は、部分帯域Anにおけるピーク強さPpが、部分帯域Anにおける平均スペクトルの強さPxと閾値強さPdの和より小さいと判断する場合(S42でYES)に、ユーザがピーク音を認識しないと推定し、S44に進む。
【0098】
S44では、制御部40は、選択済みの部分帯域Anから、候補周波数Xnを特定する。続くS46では、制御部40は、通知音の設定情報のうちの周波数を、初期周波数F1から特定済みの候補周波数Xnに変更する。これにより、候補周波数Xnを有する通知音が、スピーカ20から出力される。また、本実施例では、S56において通知音の周波数が変更される場合にも、通知音の出力に加えて、振動部18が振動する。振動部18の振動によってユーザが情報の読み取りの完了を認識する可能性を高めることができる。なお、変形例では、振動部18の振動を省略可能であり、振動部18に代えて、通知灯16を動作させてもよい。
【0099】
(本実施例の効果)
本実施例のコード読取装置10は、部分帯域An(例えば、部分帯域A1)におけるピーク強さPpが、平均スペクトルの強さPxと閾値強さPdとの和以上である場合(
図11のS42でNO)に、部分帯域Anを除く残りの部分帯域A2~A10に含まれる候補周波数X2~X10から、通知音の周波数を選択する。これにより、コード読取装置10は、ピーク音に近い周波数(すなわち、部分帯域A1に含まれる周波数)とは異なる周波数を、通知音の周波数に設定することができる。その結果、通知音の周波数が、ピーク音の周波数と一致することが抑制される。ユーザが、ピーク音を通知音と勘違いすることを抑制することができる。
【0100】
また、本実施例のコード読取装置10では、制御部40は、最小の強さPmaを含む部分帯域に対してカウント値n=「1」を付し、部分帯域A1からS42の処理を実行する。例えば、部分帯域A1において、ピーク音が発生しない場合に、制御部40は、通知音の周波数を最小の強さPmaを有する候補周波数X1に設定する(カウント値n=「1」において実行されるS44、S46)。最も静かな周波数帯で通知音が出力されるため、ユーザは、通知音を容易に認識することができる。
【0101】
通知音の周波数は、最小の強さを有する、最も静かな部分帯域A1内から選択されるのがよい。しかし、部分帯域A1において閾値強さPdを上回るピーク音が発生する場合には、通知音の周波数が当該ピーク音の周波数に近くなり、ユーザが当該ピーク音を通知音と勘違いする可能性がある。本実施例の構成によれば、コード読取装置10は、部分帯域A1において閾値強さPdを上回る強さを有するピーク音が発生したと推測される場合(S42でNO)に、部分帯域A1の次に小さい強さを有する部分帯域A2について、S42の判断を実行する。そして、例えば、コード読取装置10は、部分帯域A2において閾値強さPdを上回る強さを有するピーク音が発生していないと推測される場合(S42でYES)に、通知音の周波数を部分帯域A1の次に小さい強さを有する部分帯域A2内の候補周波数X2に設定する(S44)。部分帯域A1の次に静かな部分帯域A2から通知音の周波数を選択することができるとともに、通知音の周波数がピーク音の周波数から離れ、ユーザがピーク音を通知音と勘違いすることを抑制することができる。
【0102】
(対応関係)
マイク32及び
図11のS2、S4、S40の処理を実行する制御部40が、「センサ」の一例である。閾値強さPdを上回る強さを有するピーク音の周波数が、「ピーク周波数」の一例である。記憶時間が、「所定の時間」の一例である。タイミングTpが、「特定のタイミング」の一例である。閾値強さPdが「特定の閾値」の一例である。10個の部分帯域A1~A10が、「複数個の部分帯域」の一例である。候補周波数X1が含まれる部分帯域A1が、「第1の部分帯域」の一例である。候補周波数X2が含まれる部分帯域A2が、「第2の部分帯域」の一例である。最小の強さPmaが、「最小の強さ」の一例である。
【0103】
(第6実施例のコード読取装置10aの構成;
図14、15)
図14に示されるように、第6実施例のコード読取装置10aは、
図3で説明した第1実施例のコード読取装置10の構成に加え、さらに、通信インターフェース60を備える。以下では、インターフェースのことを「I/F」と記載する。コード読取装置10aは、通信I/F60を介して、他のデバイスと無線通信を実行する。
【0104】
通信I/F60は、Wi-Fi(登録商標)等の無線LANを利用した通信を実行するためのI/Fである。
図15に示されるように、コード読取装置10aは、通信I/F60と無線LANを形成可能なルータ100とを介して、他のコード読取装置10b、10cと、無線通信を実行することができる。他のコード読取装置10b、10cは、コード読取装置10aの周辺(例えば、同じ所定の領域)で別のユーザによって操作される装置である。他のコード読取装置10b、10cは、コード読取装置10aと同様の構造を有する。なお、変形例では、コード読取装置10aは、無線LANとは異なる他の通信方式(例えば、Bluetooth(登録商標))を利用して、他のコード読取装置10b、10cと無線通信を実行してもよいし、有線回線を利用して、他のコード読取装置10b、10cと通信を実行してもよい。
【0105】
(第6実施例の制御部40が実行する処理;
図16)
図16を参照して、第6実施例の制御部40が実行する処理について説明する。
図16のS2からS6までの処理は、
図6の第1実施例の処理と同様である。制御部40は、周囲音N1の強さPnが初期通知音強さP1以上であると判断する場合(S6でYES)に、S60に進む。一方、制御部40は、周囲音N1の強さPnが初期通知音強さP1より小さいと判断する場合(S6でNO)に、S60以降の処理をスキップして、
図16の処理を終了する。
【0106】
S60では、制御部40は、周波数スペクトルS1のうちの、周波数帯域Fb(
図5参照)を10個の部分帯域に分割する。制御部40は、部分帯域のそれぞれから、候補周波数を特定する。制御部40は、周波数帯域Fbのうち、最小の強さPmtを有する周波数を含む部分帯域を、部分帯域A1として選択する。制御部40は、選択済みの部分帯域A1から、最小の強さPmtを有する周波数を候補周波数X1として特定する。次いで、制御部40は、部分帯域A1から最も離れた部分帯域を、部分帯域A2として特定する。制御部40は、特定済みの部分帯域A2に含まれる最小の強さを有する周波数を、候補周波数X2として特定する。次いで、制御部40は、部分帯域A2の次に部分帯域A1から離れた部分帯域を、部分帯域A3として特定する。制御部40は、特定済みの部分帯域A3に含まれる最小の強さを有する周波数を、候補周波数X3として特定する。第6実施例の制御部40は、最小の強さPmtを有する部分帯域A1を基準として、部分帯域A1から離れた部分帯域にカウント値を順番に付していく。そして、制御部40は、部分帯域A1~A10の順に、候補周波数X1~X10を特定する。なお、変形例では、S60におけるカウント値の付与と候補周波数の特定の方法は、第5実施例の
図11のS40と同様であってもよい。
【0107】
続くS62では、制御部40は、通信I/F60を介して、他のコード読取装置10b、10c(
図15参照)のそれぞれから、通知音周波数を受信したか否かを判断する。ここで、通知音周波数は、他のコード読取装置(例えば10b)設定されている通知音の周波数を示す。このため、通知音周波数を受信しない場合(S62でNO)、他のコード読取装置10b、10cがコード読取装置10aの周囲に存在しないと推定される。この場合、制御部40は、S56において、通知音の周波数を、候補周波数X1に設定する。先に述べたように、候補周波数X1は、周波数帯域Fbのうち、最小の強さPmtを有する。このような構成によれば、最も静かな周波数帯で通知音が出力され、ユーザは、通知音を容易に認識することができる。なお、変形例では、通知音周波数の受信が失敗する場合に、制御部40は、通知音の周波数を周波数帯域Fbのうちの任意の周波数に設定してもよい。
【0108】
通知音周波数を受信した場合(S62でYES)、S64では、制御部40は、部分帯域A1~A10から1個の部分帯域を選択し、S62で受信した通知音周波数が、選択済みの部分帯域Anに含まれるか否かを判断する。本実施例では、S64において、制御部40は、候補周波数X1~X10のうち、最小の強さPmtを有する部分帯域A1を最初に選択する。
【0109】
制御部40は、受信済みの1個以上の通知音周波数のうちのいずれかが選択済みの部分帯域Anに含まれると判断する場合(S64でYES)に、S66以降の処理をスキップして、S50に進む。S50~S56の処理は、
図11の第5実施例と同様である。すなわち、制御部40は、全ての部分帯域A1~A10について、受信済みの1個以上の通知音周波数のうちのいずれも含まない部分帯域が特定されるまで、S64の判断をカウント値の順番で繰り返す。
【0110】
制御部40は、受信済みの1個以上の通知音周波数のうちのいずれも、選択済みの部分帯域Anに含まれないと判断する場合(S64でNO)に、当該部分帯域An内の周波数が、他のコード読取装置10b、10cの通知音として利用されていないと判断する。この場合、制御部40は、S66において、当該部分帯域Anから候補周波数Xnを特定する。S68は、
図11のS46と同様である。
【0111】
(本実施例の効果)
例えば、コード読取装置10aの通知音の周波数が他のコード読取装置10bの通知音の周波数と一致すると、ユーザは、他のコード読取装置10bの通知音をコード読取装置10aの通知音と勘違いする可能性がある。また、
図16の処理が実行されずコード読取装置(例えば10a)が、周囲音に応じて通知音の周波数を変更する場合には、同じ所定の領域内で利用される複数のコード読取装置10a、10b、10cのそれぞれの通知音の周波数は、近い周波数帯となることが予想される。本実施例の構成によれば、コード読取装置10aは、通知音の周波数として他のコード読取装置10bから受信した通知音周波数とは異なる周波数を選択する(
図16のS64でNO)。コード読取装置10aの通知音の周波数が他のコード読取装置10bの通知音の周波数と一致することが抑制される。ユーザが、他のコード読取装置10bの通知音をコード読取装置10aの通知音と勘違いすることを抑制することができる。
【0112】
先に述べたように、本実施例のコード読取装置10aは、部分帯域A1~A10を特定する際に、部分帯域A1から離れた部分帯域から順番にカウント値を付す。その結果、仮に部分帯域A1が通知音周波数を含む場合(S64でYES)、残りの部分帯域A2~A10のうち、通知音周波数を含む部分帯域A1から比較的離れた部分帯域A2に対してS64の処理が実行される。例えば、
図17に示されるように、部分帯域A2は、部分帯域A1から、少なくとも4個の部分帯域に含まれる周波数だけ離れている。例えば、部分帯域A2に含まれる候補周波数X2が通知音の周波数として設定された場合に、候補周波数X2は、他のコード読取装置(例えば10b)で利用されている周波数帯(すなわち、部分帯域A1)から比較的離れた周波数である。通知音の周波数が他のコード読取装置10b、10cで利用されている周波数に近い周波数帯から選択される構成に比して、ユーザが他のコード読取装置10b、10cの通知音をコード読取装置10aの通知音と勘違いすることを抑制することができる。
【0113】
(対応関係)
マイク32及び
図11のS2、S4、S60の処理を実行する制御部40が、「センサ」の一例である。1個以上の通知音周波数が、「周波数情報」の一例である。他のコード読取装置10b、10cが、それぞれ、「他の情報読取装置」の一例である。他のコード読取装置(例えば10b)の通知音の周波数が、それぞれ、「第3の周波数」の一例である。最小の強さPmtが、「最小の強さ」の一例である。
図17において部分帯域A1と部分帯域A2との差分の周波数が、「所定の周波数」の一例である。
【0114】
以上、本明細書で開示する技術の具体例を説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【0115】
(変形例1)制御部40は、周囲音N1の有する周波数帯域の全域において周波数スペクトルを検出してもよい。本変形例では、「特定の周波数スペクトル」を省略可能である。
【0116】
(変形例2)その場合、制御部40は、周囲音N1の周波数スペクトルから、予め設定されている複数の周波数に対応する複数の強さを取得し、そのうちの最小の強さに対応する周波数を最小周波数F2として設定してもよい。予め設定されている複数の周波数以外の周波数の分析を省略することができる。周囲音N1の周波数スペクトルの全ての周波数を分析する構成と比較して、制御部40の処理負荷を低減することができる。
【0117】
(変形例3)第4実施例の制御部40は、
図10のS12、S24、S30の処理を実行せずに、S32で振動部の設定を「OFF」から「ON」に変更してもよい。その場合、制御部40は、通知音の強さを、初期通知音強さP1に設定してもよいし、最大強さPthに設定してもよい。
【0118】
(変形例4)第4実施例の制御部40は、
図10のS30の処理を省略して振動部18を振動させてもよい。本変形例では、「最大値」を省略可能である。
【0119】
(変形例5)制御部40は、
図10のS32で、振動部18に代えて、通知灯16を動作させてもよい。本変形例では、通知灯16が、「出力装置」の一例である。
【0120】
(変形例6)「読取部」は、撮像部30を利用して情報コードを読み取る制御部40に限らず、例えば、非接触型のリーダを利用して非接触型のメモリタグ(例えばRFIDタグ、NFCタグ)に記憶されている情報を読み取る制御部であってもよい。また、他の変形例では、「読取部」は、撮像部30を利用して撮像した画像に対する文字認識を実行して、当該画像内の文字列を示す情報を読み取る制御部であってもよい。
【0121】
(変形例7)第5実施例では、部分帯域識別するカウント値nは、強さの小さい候補周波数を有する部分帯域から順番に付される。これに代えて、カウント値は、周波数の昇順(又は降順)に基づいて付されてもよい。本変形例では、最小の強さを有する部分帯域(例えば
図12のA1)が、閾値強さPdを上回るピーク音の周波数を含まない場合であっても、通知音の周波数として最小の強さを有する部分帯域とは異なる部分帯域内の周波数が選択され得る。
【0122】
(変形例8)第5実施例では、平均スペクトルは、10個の部分帯域A1~A10に分割されなくてもよいし、第6実施例では、周波数帯域Fbは、10個の部分帯域A1~A10に分割されなくてもよい。本変形例では、「複数個の部分帯域」を省略可能である。
【0123】
(変形例9)第5実施例の制御部40は、周波数帯域Fbにおける周波数スペクトルS1を複数の部分帯域に分割する前にピーク音を算出してもよい。その場合、制御部40は、算出済みのピーク音を基準として部分帯域を設定してもよい。制御部40は、算出済みのピーク音を中心として、識別可能な周波数の幅を有する部分帯域を設定してもよい。本変形の構成によれば、ピーク音の周波数が、隣接する部分帯域の境界付近に位置することを防止することができる。これにより、例えば、ある部分帯域においてピーク音が発生した場合に、当該ある部分帯域と隣接する部分帯域の候補周波数に通知音の周波数を設定しても、通知音の周波数がピーク音の周波数から離れやすい。
【0124】
(変形例10)第6実施例では、複数個のコード読取装置10a、10b、10cは、それぞれ、サーバと通信可能であってよい。その場合、当該サーバは、複数個のコード読取装置10a、10b、10cのそれぞれについて、当該コード読取装置で利用されている通知音の周波数を記憶していてもよい。例えば、コード読取装置10aは、サーバから他のコード読取装置(例えば、10b)で利用されている通知音の周波数を受信して、通知音の周波数を、サーバから受信した周波数以外の周波数に設定してもよい。さらなる変形例では、コード読取装置10aは、サーバから他のコード読取装置で利用されている通知音の周波数以外の候補の周波数を受信して、通知音の周波数を、サーバから受信した候補の周波数に設定してもよい。本変形例では、サーバに記憶されている周波数が、「周波数情報」の一例である。
【0125】
なお、本明細書における「上回る」は、比較する対象の値を含む場合(すなわち、対象の値以上)と、比較する対象の値を含まない場合(すなわち、対象の値より大きい)と、のどちらかを示す概念である。
【0126】
以上、本発明の具体例を詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成し得るものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【0127】
10 :コード読取装置
12 :表示部
14 :操作部
16 :通知灯
18 :振動部
20 :スピーカ
30 :撮像部
30a :発光部
30b :受光部
32 :マイク
40 :制御部
42 :CPU
44 :メモリ
50 :プログラム
F1 :初期周波数
F2 :最小周波数
Fa、Fb :周波数帯域
L1 :等ラウドネス曲線
N1 :周囲音
P1 :初期通知音強さ
P2 :二次通知音強さ
S1 :周波数スペクトル
A1~A10:部分帯域
Tp :タイミング
Pma :最小平均強さ
Pmt :最小の強さ