【文献】
[キヤノフアクス]電話で通話中に何もしていないのにFAXに切り替わり電話が切れた(FAX),CANON Q&A(よくあるご質問), [online],2001年 3月 8日,[令和2年5月15日検索], <URL: https://faq.canon.jp/app/answers/detail/a_id/8049/>
【文献】
FAX通信の基礎知識〜第2回 フェーズ1:“呼”の設定〜,モバイル faximo 活用法ブログ,2012年 1月16日,[令和2年5月15日検索], <URL: https://faximo.wordpress.com/2012/01/16/about_fax-02/>
【文献】
FAX通信の基礎知識〜第3回 フェーズ2:伝送速度や機能の交渉〜,モバイル faximo 活用法ブログ,2012年 1月16日,[令和2年5月15日検索], <URL: https://faximo.wordpress.com/2012/01/16/about_fax-03/>
(58)【調査した分野】(Int.Cl.,DB名)
前記通信開始信号は、信号強度が0から時間経過とともに漸次増加した後に0にむかって漸次減少する正弦波信号を有する波束を複数含む信号列を有する信号である、請求項1または2に記載のデータ通信システム。
前記通信モード遷移部は、前記通信開始信号内の前記正弦波信号を有する波束の有る区間を「1」とするとともに無い区間を「0」とすることにより、前記通信開始信号を複数ビットのデータに変換する変換部と、前記変換された複数ビットのデータが予め定められた値を示すか否か判別する判別部と、を有し、前記予め定められた値を示すと判別された場合に、前記通信モードに遷移する、請求項3に記載のデータ通信システム。
前記通信本体信号送信部は、前記通信開始信号の送信後に前記第1の音響インタフェースを介して承諾応答信号を受信した後、前記通信本体信号を、前記第1の音響インタフェースを介して送信し、
前記通信モード遷移部は、前記通信モードに遷移するときに、前記第2の音響インタフェースを介して前記承諾応答信号を送信する、
請求項1乃至4のいずれか一項に記載のデータ通信システム。
【発明を実施するための形態】
【0012】
以下、本発明を実施するための形態について図面を参照しながら詳細に説明する。
図1は、本発明の実施形態に係る音響インタフェースを用いた汎用データ通信システムのシステム構成例を示す図であり、端末装置であるスマートフォン100と音響装置である電子楽器110がオーディオケーブル10によって接続された構成を有する。
【0013】
スマートフォン100は、CPU(セントラルプロセッシングユニット:中央演算処理装置)101、メモリ102、外部記憶装置103、タッチパネルディスプレイ104、オーディオインタフェース105、通信インタフェース106、及び可搬記録媒体107aが挿入される可搬記録媒体駆動装置107を有し、これらがバス108によって相互に接続された構成を有する。スマートフォン100の構成は、端末装置を実現できるコンピュータの一例であり、そのようなコンピュータはこの構成に限定されるものではない。
【0014】
CPU101は、当該コンピュータ全体の制御を行う。メモリ102は、プログラムの実行、データ更新等の際に、外部記憶装置103(或いは可搬記録媒体107a)に記憶されている通信信号送信処理プログラムを含む各種制御プログラム又はデータを一時的に格納するRAM等のメモリである。CUP101は、プログラムをメモリ102に読み出して実行することにより、全体の制御を行う。
【0015】
タッチパネルディスプレイ104は、ユーザによるタッチ入力操作を検出し、その検出結果をCPU101に通知する。また、タッチパネルディスプレイ104は、CPU101の制御によって送られてくるデータを表示する。
【0016】
外部記憶装置103は、例えば半導体ディスク記憶装置である。主に各種データやプログラムの保存に用いられる。
【0017】
オーディオインタフェース105(第1の音響インタフェース)は、例えばイヤホン出力回路及び端子であり、オーディオケーブル10に、一般的なオーディオ信号(音響信号)を出力するほか、本実施形態では特に、通信信号を出力することができる。
【0018】
通信インタフェース106は、スマートフォン100の一般機能としての電話通話を行ったり、例えばWiFiや4G/LTEの通信回線を接続するための装置である。
【0019】
可搬記録媒体駆動装置107は、USBメモリ、SDカード、又はコンパクトフラッシュ等の可搬記録媒体107aを収容するもので、外部記憶装置103の補助の役割を有する。
【0020】
本実施形態によるスマートフォン100は、後述する
図4のフローチャートで例示される通信信号送信処理プログラムをCPU101が実行することで実現される。そのプログラムは、例えば外部記憶装置103や可搬記録媒体107aに記録して配布してもよく、或いは通信インタフェース106によりネットワークから取得できるようにしてもよい。
【0021】
次に、電子楽器110は、CPU111、ROM(リードオンリーメモリ)112、RAM(ランダムアクセスメモリ)113、音源LSI(大規模集積回路)114、鍵盤や操作スイッチなどの演奏/操作スイッチ部115と各々の出力が接続されるGPIO(ジェネラルパーパスインプットアウトプット)116、DAC/増幅器117、スピーカ部118、及びオーディオインタフェース119(第2の音響インタフェース)を備え、これらがシステムバス120によって相互に接続された構成を有する。電子楽器110の構成は、音響装置を実現できるハードウェア構成の一例であり、そのようなハードウェア構成はこの構成に限定されるものではない。
【0022】
CPU111は、電子楽器110全体の制御を行う。ROM112は、発音制御プログラムや後述する
図5、
図6のフローチャートで例示される通信信号受信処理プログラムを記憶する。RAM113は、プログラムの実行時に、データを一時的に格納する。
【0023】
演奏/操作スイッチ部115の各演奏状態及び操作状態は、GPIO116を介してCPU111に読み込まれた後、音源LSI114に送られる。
【0024】
音源LSI114は、例えばDSP(デジタルシグナルプロセッサ)、ASIC(Application Specific Integrated Circuit)、又はFPGA(Field Programable Array)である。音源LSI114の機能は、CPU111のソフトウェア機能によって実現されてもよい。
【0025】
音源LSI114から出力された楽音波形データは、CPU111からシステムバス118を介してDAC/増幅器117においてデジタル信号の楽音波形データからアナログ信号の楽音波形信号に変換されて増幅された後、スピーカ部118を介して放音される。
【0026】
オーディオインタフェース119は、例えばオーディオライン入出力回路及び端子であり、オーディオケーブル10から、一般的なオーディオ信号(音響信号)を入力し、それをDAC/増幅器117からスピーカ部118を介して出音するほか、本実施形態では特に、出音動作を行わずに通信信号を受信してCPU111にて処理することができる。
【0027】
以上の構成を有する汎用データ通信システムの概略の動作について、まず説明する。本実施形態において、電子楽器110のスピーカ部118から出音する状態を「通常モード」と呼ぶ。スピーカ部118から出音せず汎用データ通信を実行してよい状態を「通信モード」と呼ぶ。本実施形態においては、スマートフォン100の側は「送信機器」として動作し、電子楽器110の側は「受信機器」として動作する。なお、電子楽器110の側からスマートフォン100の側に対して、承諾応答信号を送信することは可能である。承諾応答信号の通信応答の方式については、どのような方法でもよいため、詳述しない。スマートフォン100から電子楽器110に向かって、オーディオ信号として流すデータ通信信号を、通信信号と呼ぶ。
【0028】
前述したように、従来から、電子楽器110において、オーディオインタフェース105から入力する信号を、そのままオーディオ原信号としてスピーカ等から出音する場合と、スピーカ等からは出音せずにCPU111において通信信号として処理する場合とをどのように切り替えるかという課題がある。切替方式としては、一般的に下記の2点がまず考えられる。
【0029】
方式A.ユーザ操作によって切り替える。
方式B.通信用の信号を受け取ったら切り替える。
【0030】
しかし、上記方式A及び方式Bはそれぞれ、下記のような短所が存在する。
短所A.操作ミスで切替えを忘れる懸念がある。
短所B.切替え前の信号については発音してしまう。
【0031】
即ちまとめると、下記のようになる。
問題α:通信信号をスピーカ等から出音すると騒音等の問題がある。
問題β:通信信号がスピーカ等から出音されるケースを回避することができない。
【0032】
αとβは、どちらかが解決すればもう片方も解決するというものである。本実施形態においては、問題αを軽減化することによって解決を図る。まず問題αについてであるが、通信信号の出音が大きなポップノイズとなる原因として、下記のものが挙げられる。
【0033】
原因1.S/N比を稼ぐために、信号の振幅が大きい。
原因2.通信速度を上げるために、信号の周波数が高い。
【0034】
逆に言えば、通信信号の振幅および周波数を下げれば、スピーカ等から出音しても問題にならなくなる。しかし、単純にそのように信号を変更すると、
・信号の振幅を下げると、通信のエラー率が高まる
・信号の周波数を下げると、通信速度が下がる
といったことになり、オーディオ信号通信の有用性が低くなってしまう。
【0035】
そこで、本実施形態ではまず、通信信号を、通信開始を送信機器であるスマートフォン100の側から受信機器である電子楽器110の側に伝える信号である通信開始信号と、データの本体を示す信号である通信本体信号とに分ける。
【0036】
通信開始信号は、電子楽器110のスピーカ部118から出音しても騒音や故障といった問題が発生しないような音響特性を有する信号とする。
図2は、通信開始信号の波形例を示す図である。
図2の波形例では、通信開始信号は、信号強度が0から時間経過とともに漸次増加し所定時間経過後に0にむかって漸次減少する正弦波信号からなる波束を複数含む信号列となっている。このように、通信開始信号の波形は、無用に高周波を含まないように、矩形波や鋸歯状波のような波形ではなく、例えば正弦波のような波形をフェードイン/フェードアウトした波束を使用する。通信開始信号の振幅はS/N比を考慮しつつ小さくする。具体的な振幅はエラー率とのトレードオフで決定する。通信開始信号の周波数は低くする。具体的な周波数は通信速度とのトレードオフで決定するが、通信開始信号は通信開始時にのみ使用するため、低通信速度で問題ない。通信開始信号の具体的な周波数の例としては、低帯域(〜100Hz辺り)から選ぶ、といったことが挙げられる。これらは、通信開始信号のあくまでも一例であって、受信機器である電子楽器110の側で解析可能であれば、通常楽音のようなものを使用してもよい。
【0037】
図3は、通信本体信号の波形例を示す図である。このように、通信本体信号は、大振幅の高周波信号であってよい。そのため通信全体としては、高速に通信ができる。
【0038】
スマートフォン100の側では、オーディオインタフェース105からオーディオケーブル10に、必ず通信開始信号を送った後に、通信本体信号を送るようにする。電子楽器110の側では、通常モード時に、オーディオインタフェース119がオーディオケーブル10から通信開始信号を受信すると、CPU111は、その通信開始信号を通常のオーディオ信号としてDAC/増幅器117を介してスピーカ部118から出音するが、前述したように、この信号は出音しても支障のないような音響特性に設定されているので問題はない。電子楽器110において、通常モード時に、オーディオインタフェース119がオーディオケーブル10から通信開始信号を受信した場合、CPU111は、自動的に通信モードに遷移する。このとき、CPU111は、DAC/増幅器117の動作を停止することにより、スピーカ部118への出音を停止する。その後、CPU111は、オーディオインタフェース119がオーディオケーブル10から受信する通信本体信号を解釈し、その解釈に基づく処理を実行する。
【0039】
図4は、スマートフォン100のCPU101が実行する通信信号送信処理の例を示すフローチャートである。この処理は、スマートフォン100のユーザがタッチパネルディスプレイ104から所定の通信アプリにタップすることにより、CPU101が、例えば外部記憶装置103からメモリ102に読み込んだ通信信号送信処理プログラムを起動し実行する動作である。
【0040】
まず、CPU101は、
図2に例示される通信開始信号を、オーディオインタフェース105からオーディオケーブル10に送信する(ステップS401)。通信開始信号の仕様の詳細については、後述する。
【0041】
次に、CPU101は、オーディオインタフェース105がオーディオケーブル10から承諾応答信号を受信したか否かを判定する(ステップS402)。
【0042】
ステップS402の判定がNOならば、CPU101は、承諾応答待ちの状態がタイムアウトしたか否かを判定する(ステップS403)。
【0043】
ステップS403の判定がNOならば、CPU101は、ステップS402の判定処理に戻る。
【0044】
ステップS402とS403の繰返し処理で、承諾応答待ちの状態がタイムアウトすることによりステップS403の判定がYESになったら、CPU101は、タッチパネルディスプレイ104にタイムアウトのエラーメッセージを表示して、送信処理を終了する。
【0045】
ステップS402とS403の繰返し処理において、承諾応答信号が受信されることによりステップS402の判定がYESになったら、CPU101は、
図3に例示される通信本体信号を、一定サイズずつ、オーディオインタフェース105からオーディオケーブル10に送信する(ステップS404)。
【0046】
ステップS404の送信処理の後、CPU101は、オーディオインタフェース105がオーディオケーブル10からエラー応答信号を受信したか否かを判定する(ステップS405)。
【0047】
ステップS405の判定がNOならば、CPU101は、出力すべき通信本体信号がまだあるか否かを判定する(ステップS406)。
【0048】
ステップS406の判定がYESならば、CPU101は、ステップS404の処理に戻って、通信本体信号の送信処理を継続する。
【0049】
ステップS406の判定がNOになったら、CPU101は、CPU101は、タッチパネルディスプレイ104に、送信完了のメッセージを表示して、送信処理を終了する。
【0050】
ステップS404からS406の繰返し処理で、エラー応答が受信されることによりステップS405の判定がYESになったら、CPU101は、タッチパネルディスプレイ104にタイムアウトのエラーメッセージを表示して、送信処理を終了する。
【0051】
図5は、電子楽器110のCPU111が実行する通信信号受信周期処理の例を示すフローチャートである。この処理は、電子楽器110のCPU111が、周期的に例えばROM112からRAM113に読み込んだ通信信号受信周期処理プログラムを起動し実行する動作である。
【0052】
CPU111はまず、オーディオインタフェース119がオーディオケーブル10から通信開始信号を受信したか否かを判定する(ステップS501)。この処理の詳細は、
図6のフローチャートを用いて後述する。
【0053】
次に、ステップS501の判定がNOならば、CPU111は、オーディオインタフェース119がオーディオケーブル10から通信本体信号を受信したか否かを判定する(ステップS502)。
【0054】
ステップS502の判定もNOならば、CPU111は、そのまま今回の周期における通信信号受信周期処理プログラムを終了する。
【0055】
ステップS501の判定がYESならば、CPU111は、現在のモードが通信モードであるか否かを判定する(ステップS502)。
【0056】
最初は通常モードであるため、ステップS502の判定はNOとなる。この場合、CPU111は、現在のモードを通信モードに移行させる(ステップS503)。現在のモードは、例えばRAM113にモード変数として記憶させればよい。ステップS502の判定がYESの場合には、CPU111は、ステップS503の処理はスキップする。
【0057】
続いて、CPU111は、オーディオインタフェース119からオーディオケーブル10に、承諾応答信号を送信する(ステップS504)。その後、CPU111は、今回の周期の通信信号受信周期処理プログラムを終了する。
【0058】
ステップS501の判定がNOとなった後、ステップS505の判定がYESになった場合、CPU111は、現在のモードが通信モードであるか否かを判定する(ステップS506)。
【0059】
現在のモードが通信モードになっていることによりステップS506の判定がYESならば、CPU111は、オーディオインタフェース119がオーディオケーブル10から受信した通信本体信号を必要に応じて復号して解釈し、その解釈の結果に応じた制御処理を実行する(ステップS507)。その後、CPU111は、今回の周期の通信信号受信周期処理プログラムを終了する。
【0060】
現在のモードが通信モードになっていないことによりステップS506の判定がNOならば、CPU111は、エラー応答信号を、オーディオインタフェース119からオーディオケーブル10に送信する(ステップS508)。その後、CPU111は、今回の周期の通信信号受信周期処理プログラムを終了する。
【0061】
次に、
図5のステップS501に関連する通信開始信号の処理の詳細について説明する。
図2に例示したように、本実施形態による通信開始信号は、低い周波数のサイン波をフェードイン/アウトさせたものを1ビットとし、さらにそれを並べたものである。この1ビットを表現する信号列をここでは波束と呼ぶことにする。フェードイン(信号強度が0から漸次増加してゆく状態)とフェードアウト(信号強度が0にむかって漸次減少してゆく状態)の速度は同じ、即ち、波束は振幅最大値の時点を基準として前後対称であるものとする。
【0062】
波束をフェードイン/アウトさせる理由は、無音部から急に振幅の大きなサイン波を出力するとその境界が高周波となってしまうため、フェードイン/アウトすることにより高周波の発生を抑えられるからである。
【0063】
スマートフォン100の側でのCPU101による通信開始信号の出力方法について説明する。通信開始信号は予め送信機器であるスマートフォン100の側と受信機器である電子楽器110の側で取り決めた、Nビットの定数データ列を表現するものとする。よって、以下の説明では、Nビットのデータ列を出力する方法について説明する。一つの波束辺りの時間長は予め決まっているものとする。この時間長さをlengthとする。一つの波束内での最大振幅は、ある決まった閾値threshを越えるものとする。CPU101は、最初にスタートビットとして、1波束分の信号を出力する。その波束の先頭からlength後、最初の1ビットのデータが「1」である場合は、CPU101は、同じく1波束分の信号を更に出力する。一方、最初の1ビットのデータが「0」である場合は、CPU101は、lengthの間、信号は出力しない。即ち無音状態である。CPU101は、その次の1ビットのデータが「1」である場合は同じく1波束出力、「0」であればlength間無音とする。CPU101がこれを合計N回繰り返すと、Nビットのデータ列が出力できる。
【0064】
次に、電子楽器110の側でのCPU111による
図5のステップS501での通信開始信号の検出方法について説明する。CPU111は、入力信号の解析を、入力信号のサンプリングに同期した割込みで行うものとする。
図6は、
図5のステップS501において実行される通信開始信号検出処理の詳細例を示すフローチャートである。入力信号の形状(lengthや振幅、フェードイン/アウトの速度など)は予め分かっているものとする。
【0065】
まず、CPU111は、RAM113に記憶されている通信開始信号受信済み判定フラグの論理値が真になっているか否かを判定する(ステップS601)。通信開始信号受信済み判定フラグの論理値が真になると、
図5のステップS501の判定がYESになる。
【0066】
最初は、ステップS601の判定はNOとなるため、CPU111は、今回の入力信号瞬時値をRAM113上の変数signalに取得する(ステップS602)。
【0067】
次に、CPU111は、現在の検出モードを示すRAM113上の変数modeの値を判定する(ステップS603)。
【0068】
変数modeの値の初期値は「WAIT」であるため、CPU111は、ステップS604を実行する。ステップS604において、CPU111は、ステップS602で抽出したsignalの値がthreshを超えたか否かを判定する。
【0069】
ステップS604の判定がNOならば、CPU111は、そのまま
図6のフローチャートで示される
図5のステップS501の通信開始信号検出処理を終了する。この時点ではRAM113上の通信開始信号受信済み判定フラグの論理値はまだ偽であるため、
図5のステップS501の判定はNOになる。
【0070】
ステップS604の判定がYESになると、CPU111は、RAM113上の変数modeを「ACTIVE」に変更し、現在何ビット目の判定かを示すRAM113上の変数bitに1を格納し、RAM113上の変数overに「NO」を格納し、RAM113上の変数timeに現在時刻を格納し、RAM113上の変数dataに「0」を格納する(ステップS605)。入力信号の瞬時値signalが最初にthreshを越えた場合、それは前述したスタートビットが入力されている最中であるとする。即ち、変数modeが「WAIT」の状態でステップS604の判定がYESとなってステップS605が実行される状態は、スタートビットが入力されている最中の状態である。ステップS605の後、CPU111は、
図6のフローチャートで示される
図5のステップS501の通信開始信号検出処理を終了する。この時点ではRAM113上の通信開始信号受信済み判定フラグの論理値はまだ偽であるため、
図5のステップS501の判定はNOになる。
【0071】
ステップS605の処理が終了すると、CPU111の通信開始信号検出処理は、スタートビットの波束に続く第1ビット目の波束を判別する処理になる。入力信号の全体的な振幅(音量)は、入力信号のソース(スマートフォン100など)での設定によって変化し得るため、入力信号の瞬時値signalがthreshを超えるタイミングが、スタートビットのどの時点かは不明である。しかし、前述したように、スタートビットの波束の形状は前後対象であるため、最大振幅時点はその中央時刻となる。よって、時刻time(=変数timeの値)から(time+length/2)までの期間は、スタートビット内であると言える。また、lengthは各ビットで同じであるため、通信開始信号の波束の各ビットの判別期間は、以下の如くとなる。
【0072】
(time+length×1)
〜(time+length/2+length×1) :第1ビット
(time+length×2)
〜(time+length/2+length×2) :第2ビット
・・・
(time+length×N)
〜(time+length/2+length×N) :第Nビット
【0073】
以上の論理より、入力信号の瞬時値signalが最初にthreshを超えたタイミング(ステップS605の実行タイミング)から波形の記録を開始し、上記の各ビットの期間内の入力信号の瞬時値signalを観測し、その間、signalがthreshを超えた区間については対応するビット値は「1」、超えなければ対応するビット値は「0」と判定することにより、データを検出することができる。この処理を実現するのが、
図6のステップS603からS614の一連の処理である。
【0074】
即ち、CPU111は、ステップS605が実行されてスタートビットの波束が検出された後に、再度ステップS603の判定が実行されると、その判定は「ACTIVE」となる。この結果、CPU111は、現在時刻が(time+length×bit)よりも後か否かを判定する(ステップS606)。ここで、「time」はRAM113上の変数timeの値であり、「bit」はRAM113上の変数bitの値である。変数timeの値は、前回signalがlengthを超えたときの時刻を保持し、変数bitは現在検出しようとしている波束が通信開始信号の何ビット目にあたるかを示している。
【0075】
ステップS606の判定がNOならば、まだ変数bitが示すビットの判断期間に入っていないため、CPU111は、
図6のフローチャートで示される
図5のステップS501の通信開始信号検出処理を終了する。この時点ではRAM113上の通信開始信号受信済み判定フラグの論理値はまだ偽であるため、
図5のステップS501の判定はNOになる。
【0076】
ステップS606の判定がYESになったら、CPU111は、現在時刻が(time+length/2+length×bit)よりも前か否かを判定する(ステップS607)。
【0077】
ステップS607の判定がYESとなる期間で、CPU111は、ステップS602で抽出したsignalの値がthreshを超えたか否かを判定する(ステップS608)。
【0078】
ステップS608の判定がNOならば、CPU111は、そのまま
図6のフローチャートで示される
図5のステップS501の通信開始信号検出処理を終了する。この時点ではRAM113上の通信開始信号受信済み判定フラグの論理値はまだ偽であるため、
図5のステップS501の判定はNOになる。
【0079】
ステップS608の判定がYESになると、CPU111は、RAM113上の変数overに「YES」を格納する(ステップS609)。変数overは、期間中に入力信号の瞬時値がthreshを超えたか否かを「YES」又は「NO」で示している。ステップS609で変数overに「YES」が設定されることにより、その期間中に波束が存在したことが表示される。その後、CPU111は、
図6のフローチャートで示される
図5のステップS501の通信開始信号検出処理を終了する。この時点ではRAM113上の通信開始信号受信済み判定フラグの論理値はまだ偽であるため、
図5のステップS501の判定はNOになる。
【0080】
その後、期間が経過してステップS607の判定がNOになると、CPU111は、RAM113上の変数dataにおける変数bitが示すビット位置の値を、変数overに「YES」がセットされていればその期間中に波束が存在したのでビット値として「1」をセットし、「NO」がセットされたままであれば期間中に波束が存在しなかったのでビット値として「0」をセットする(ステップS610)。
【0081】
その後、CPU111は、変数bitの値を+1インクリメントし、変数overの値を「NO」にリセットする(ステップS611)。
【0082】
その後、CPU111は、変数bitの値が通信開始信号のビット長Nを超えたか否かを判定する(ステップS612)。
【0083】
ステップS612の判定がNOならば、CPU111は、
図6のフローチャートで示される
図5のステップS501の通信開始信号検出処理を終了する。この時点ではRAM113上の通信開始信号受信済み判定フラグの論理値はまだ偽であるため、
図5のステップS501の判定はNOになる。
【0084】
ステップS612の判定がYESになると、CPU111は、RAM113上の変数dataが示す値が、スマートフォン100と電子楽器110の間で予め取り決めた定数データの値と合致するか否かを判定する(ステップS613)。
【0085】
ステップS613の判定がNOならば、CPU111は、
図6のフローチャートで示される
図5のステップS501の通信開始信号検出処理を終了する。最終的にRAM113上の通信開始信号受信済み判定フラグの論理値は偽のままとなるため、
図5のステップS501の判定はNOになる。
【0086】
ステップS613の判定がYESになると、CPU111は、RAM113上の通信開始信号受信済み判定フラグの論理値を真にする(ステップS614)。CPU111は、
図6のフローチャートで示される
図5のステップS501の通信開始信号検出処理を終了する。この時点で最終的にRAM113上の通信開始信号受信済み判定フラグの論理値が真となるため、
図5のステップS501の判定がYESになって通信開始信号が検出されたことになる。
【0087】
以上の制御処理により、本実施形態により前述した問題αを軽減化することが可能となる。即ち、必ず通信開始信号を受け取ってから通信信号の本体が送られてくるようにすることで、オーディオ信号通信による騒音、スピーカ等の故障、使用者の聴覚へのダメージなどの恐れを軽減することが可能となる。
【0088】
上述の実施形態において、通信モードを解除して通常モードに戻すためには、例えば通信モードの最後に、通信本体信号として通信モードを解除する命令を送ればよい。電子楽器110のCPU111は、この命令を受信したときに、通信モードを解除して通常モードに戻り、DAC/増幅器117をオンにしてスピーカ部118からの出音が可能な状態に戻せばよい。
【0089】
上述の説明は、音響装置が電子楽器110である場合について説明したが、音響装置は電子楽器110に限る必要はなく、一般的なオーディオ機器等であってもよい。また、端末装置もスマートフォン100に限られず、他のタブレット端末やパソコン等であってもよい。
【0090】
以上の実施形態に関して、更に以下の付記を開示する。
(付記1)
音響信号を入出力可能な第1の音響インタフェースと、
前記データ通信の開始時に、信号強度が時間経過に伴ってに増減する正弦波信号の波束を複数個含む信号列を有する通信開始信号を、前記第1の音響インタフェースを介して送信する通信開始信号送信部と、
前記通信開始信号の送信後に、通信本体信号を、前記第1の音響インタフェースを介して送信する通信本体信号送信部と、
を備えた端末装置と、
音響信号を入出力可能な第2の音響インタフェースと、
前記第2の音響インタフェースを介して入力される前記音響信号に基づいた音響音を生成する音響部と、
前記第2の音響インタフェースを介して前記通信開始信号を受信した場合に、通信モードに遷移すとともに、前記第2の音響インタフェースからの信号に基づいた音響音の生成を停止するように前記音響部を制御する通信モード遷移部と、
前記通信モードに遷移後に、前記第2の音響インタフェースを介して入力される前記通信本体信号を解釈し、当該解釈に基づく処理を実行する通信本体信号解釈実行部と、
を備えた音響装置と、
を有するデータ通信システム。
(付記2)
前記通信開始信号は、信号強度が0から時間経過とともに漸次増加した後に0にむかって漸次減少する正弦波信号を有する波束を複数含む信号列である、付記1に記載のデータ通信システム。
(付記3)
前記通信モード遷移部は、前記通信開始信号内の前記正弦波信号を有する波束の有る区間を「1」とするとともに無い区間を「0」とすることにより、前記通信開始信号を複数ビットのデータに変換する変換部と、前記変換された複数ビットのデータが予め定められた値を示すか否か判別する判別部と、を有し、前記予め定められた値を示すと判別された場合に、前記通信モードに遷移する、付記2に記載のデータ通信システム。
(付記4)
前記通信本体信号送信部は、前記通信開始信号の送信後に前記第1の音響インタフェースを介して承諾応答信号を受信した後、前記通信本体信号を、前記第1の音響インタフェースを介して送信し、
前記通信モード遷移部は、前記通信モードに遷移するときに、前記第2の音響インタフェースを介して前記承諾応答信号を送信する、
付記1乃至3のいずれかに記載のデータ通信システム。
(付記5)
音響信号を入出力可能な第1の音響インタフェースを有する端末装置と、前記音響信号を入出力可能な第2の音響インタフェース及び前記第2の音響インタフェースを介して入力される前記音響信号に基づいた音響音を生成する音響部を有する音響装置との間でデータ通信を行うための方法であって、
前記端末装置において、前記データ通信の開始時に、信号強度が時間経過とともに増減する正弦波信号の波束を複数含む信号列を有する通信開始信号を、前記第1の音響インタフェースを介して送信し、
前記端末装置において、前記通信開始信号の送信後に、通信本体信号を、前記第1の音響インタフェースを介して送信し、
前記音響装置において、前記第2の音響インタフェースから前記通信開始信号を受信した場合に、通信モードに遷移するとともに前記第2の音響インタフェースからの信号に基づいた音響音の生成を停止するように前記音響部を制御し、
前記通信モードに遷移後に、前記第2の音響インタフェースを介して受信される前記通信本体信号を解釈し、当該解釈に基づく処理を実行する、
ことを特徴とするデータ通信方法。
(付記6)
端末装置と音響装置との間でデータ通信を行うシステムに用いられる前記端末装置であって、
音響信号を入出力可能な第1の音響インタフェースと、
前記データ通信の開始時に、信号強度が時間経過とともに増減する正弦波信号の波束を複数含む信号列を有する通信開始信号を前記第1の音響インタフェースを介して送信する通信開始信号送信部と、
前記通信開始信号の送信後に、通信本体信号を前記第1の音響インタフェースを介して送信する通信本体信号送信部と、
を備える端末装置。
(付記7)
端末装置と音響装置との間でデータ通信を行うシステムに用いられる前記音響装置であって、
音響信号を入出力可能な第2の音響インタフェースと、
前記第2の音響インタフェースを介して入力される前記音響信号に基づいた音響音を生成する音響部と、
前記第2の音響インタフェースから前記通信開始信号を受信した場合に、通信モードに遷移するとともに前記第2の音響インタフェースからの信号に基づいた音響音の生成を停止するように前記音響部を制御する通信モード遷移部と、
前記通信モードに遷移後に、前記第2の音響インタフェースから受信される前記通信本体信号を解釈し、当該解釈に基づく処理を実行する通信本体信号解釈実行部と、
を備えることを特徴とする音響装置。
(付記8)
音響信号を入出力可能な第1の音響インタフェースを有する端末装置と音響装置との間でデータ通信を行うシステムに用いられる前記端末装置のコンピュータに、
前記汎用データ通信の開始時に、信号強度が時間経過とともに増減する正弦波信号の波束を複数含む信号列を有する通信開始信号を前記第1の音響インタフェースを介して送信するステップと、
前記通信開始信号の送信後に、通信本体信号を前記第1の音響インタフェースを介して送信するステップと、
を実行させるためのプログラム。
(付記9)
端末装置と、音響信号を入出力可能な第2の音響インタフェース及び前記第2の音響インタフェースを介して入力される前記音響信号に基づいた音響音を生成する音響部を有する音響装置との間でデータ通信を行うシステムに用いられる前記音響装置のコンピュータに、
前記第2の音響インタフェースを介して前記通信開始信号を受信した場合に、通信モードに遷移するとともに前記第2の音響インタフェースからの信号に基づいた音響音の生成を停止するように前記音響部を制御するステップと、
前記通信モードに遷移後に、前記第2の音響インタフェースを介して受信される前記通信本体信号を解釈し、当該解釈に基づく処理を実行するステップと、
を実行させるためのプログラム。