JP2022052901A - 無線通信装置、電子機器および無線通信方法 - Google Patents

無線通信装置、電子機器および無線通信方法 Download PDF

Info

Publication number
JP2022052901A
JP2022052901A JP2020159416A JP2020159416A JP2022052901A JP 2022052901 A JP2022052901 A JP 2022052901A JP 2020159416 A JP2020159416 A JP 2020159416A JP 2020159416 A JP2020159416 A JP 2020159416A JP 2022052901 A JP2022052901 A JP 2022052901A
Authority
JP
Japan
Prior art keywords
wireless communication
interval
communication
communication device
communication interval
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
Application number
JP2020159416A
Other languages
English (en)
Inventor
浩之 横山
Hiroyuki Yokoyama
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.)
Roland Corp
Original Assignee
Roland 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 Roland Corp filed Critical Roland Corp
Priority to JP2020159416A priority Critical patent/JP2022052901A/ja
Priority to EP21197075.1A priority patent/EP3975597B1/en
Priority to US17/482,462 priority patent/US20220093068A1/en
Publication of JP2022052901A publication Critical patent/JP2022052901A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0033Recording/reproducing or transmission of music for electrophonic musical instruments
    • G10H1/0083Recording/reproducing or transmission of music for electrophonic musical instruments using wireless transmission, e.g. radio, light, infrared
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/0033Recording/reproducing or transmission of music for electrophonic musical instruments
    • G10H1/0041Recording/reproducing or transmission of music for electrophonic musical instruments in coded form
    • G10H1/0058Transmission between separate instruments or between individual components of a musical system
    • G10H1/0066Transmission between separate instruments or between individual components of a musical system using a MIDI interface
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/201Physical layer or hardware aspects of transmission to or from an electrophonic musical instrument, e.g. voltage levels, bit streams, code words or symbols over a physical link connecting network nodes or instruments
    • G10H2240/211Wireless transmission, e.g. of music parameters or control data by radio, infrared or ultrasound
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/201Physical layer or hardware aspects of transmission to or from an electrophonic musical instrument, e.g. voltage levels, bit streams, code words or symbols over a physical link connecting network nodes or instruments
    • G10H2240/221Time division multiplexing, with different channels in different time slots, the data in the time slots may be in digital or analog form
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/201Physical layer or hardware aspects of transmission to or from an electrophonic musical instrument, e.g. voltage levels, bit streams, code words or symbols over a physical link connecting network nodes or instruments
    • G10H2240/225Frequency division multiplexing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/281Protocol or standard connector for transmission of analog or digital data to or from an electrophonic musical instrument
    • G10H2240/311MIDI transmission
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/171Transmission of musical instrument data, control or status information; Transmission, remote access or control of music data for electrophonic musical instruments
    • G10H2240/281Protocol or standard connector for transmission of analog or digital data to or from an electrophonic musical instrument
    • G10H2240/321Bluetooth

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

【課題】複数の他の無線通信装置とMIDIデータを送受信する場合でも、送受信タイミングが重なることを抑制し、MIDIデータを遅延なく送受信できる無線通信装置、電子機器および無線通信方法を提供すること。【解決手段】無線通信装置1Sで、無線通信装置1Mとのペア毎の通信間隔が異なる時間間隔に設定され、該当する無線通信装置1Mに送信される。よって、各ペアでMIDIデータを送受信するタイミングをずらすことができる。これにより、複数のペアでMIDIデータを送受信するタイミングが重なり、通信エラーとなるのを抑制できる。また、複数のペアでMIDIデータを送受信するタイミングが重なっても、次回以降はそれぞれ異なるタイミングとできる。よって、2以上のペアで送受信するタイミングが重なり続け、通信エラーが継続するのを抑制できるので、MIDIデータを遅延なく送受信できる。【選択図】図2

Description

本発明は、無線通信装置、電子機器および無線通信方法に関するものである。
特許文献1には、音響音楽機器2に接続される音響音楽機器用ドングル装置1(無線通信装置)が開示されている。音響音楽機器用ドングル装置1には無線手段20が設けられ、無線手段20によってMIDI方式の信号(MIDIデータ)を、携帯用電子機器8(他の無線通信装置)と無線で送受信し、送受信されたMIDI方式の信号を音響音楽機器2に入出力することで、音響音楽機器2と携帯用電子機器8との間でMIDI方式の信号を無線通信できる。また、音響音楽機器用ドングル装置1と携帯用電子機器8とは、所定の通信間隔(例えば6ms(ミリ秒))で無線通信されているので、MIDI方式の信号を遅延なく送受信することができる。
特開2015-179141号公報(例えば、図1,2)
ところで、スレーブモードが設定された1の無線通信装置(以下「スレーブ」という)と、マスターモードが設定された複数の無線通信装置(以下「マスター」という)とが設けられ、スレーブと1のマスターとでそれぞれペアを形成し、各ペア間でMIDIデータを送受信することがある。スレーブには無線通信を行うアンテナが1つのみ設けられるので、スレーブが同時に無線通信できるのは、1のマスターのみである。そこで、スレーブが各ペアの複数のマスターと無線通信するため、各マスターと無線通信するタイミングを時分割してずらす必要がある。そのための方式として、各ペアで無線通信を開始するタイミングをずらし、その後、各ペアがそれぞれ所定の通信間隔で無線通信することが挙げられる。これによって、複数のペアで無線通信するタイミングが重なるのを抑制することができる。
ここで、各無線通信装置には、CPUのクロックがそれぞれ別個に設けられ、該クロックによって無線通信するタイミングが決定されている。これらのクロックの間隔は略同一ではあるが、それぞれに個体差を有しているため、各無線通信装置のクロックの間隔は同期されない。よって、各ペアで無線通信を開始するタイミングをずらしても、クロックの間隔の個体差によって各ペアの無線通信するタイミングにずれが生じる。これによって、1のペアで無線通信するタイミングと、別のペアで無線通信するタイミングとが重なる場合がある。
この場合、スレーブには、複数のマスターから同時にMIDIデータが送信される。上記した通り、スレーブが同時に無線通信できるのは1のマスターのみなので、複数のペアで無線通信するタイミングが重なると、1のマスターからのMIDIデータは受信できる一方で、他のマスターからのMIDIデータは受信できない。これによって、他のマスターとは通信エラーとなってしまう。更に通信間隔を各ペアで全て同一にした場合、一度複数のペアで無線通信するタイミングが重なると、次の無線通信するタイミングがそれ以降でも連続して重なってしまう。これによって通信エラーが継続して発生し、MIDIデータの送受信が遅延する虞がある。
本発明は、複数の他の無線通信装置とMIDIデータを送受信する場合でも、送受信タイミングが重なることを抑制し、MIDIデータを遅延なく送受信できる無線通信装置、電子機器および無線通信方法を提供することを目的としている。
この目的を達成するために本発明の無線通信装置は、電子楽器に接続され、その電子楽器から入出力されるMIDIデータを、無線通信によってペアとなる他の無線通信装置と所定の通信間隔で送受信するものであり、前記ペアは複数の前記他の無線通信装置との間でそれぞれ形成され、前記ペア毎の通信間隔を、それぞれ異なった時間間隔に設定する通信間隔設定手段と、 その通信間隔設定手段で設定された通信間隔を、該当する前記他の無線通信装置に送信する通信間隔送信手段とを備えている。
本発明の電子機器は、本発明の無線通信装置を備えているものである。
また本発明の無線通信方法は、電子楽器に接続され、その電子楽器から入出力されるMIDIデータを、無線通信によってペアとなる他の無線通信装置と所定の通信間隔で送受信する無線通信装置で実行される方法であって、前記ペアは複数の前記他の無線通信装置との間でそれぞれ形成され、前記ペア毎の通信間隔を、それぞれ異なった時間間隔に設定する通信間隔設定ステップと、その通信間隔設定ステップで設定された通信間隔を、該当する前記他の無線通信装置に送信する通信間隔送信ステップとを備えている。
(a)は、一実施形態である無線通信装置の外観図であり、(b)は、電子楽器に接続した無線通信装置を表す図である。 (a)は、ペア毎の通信タイミングを説明する図であり、(b)は、送受信するタイミングが重なった場合のペア毎の通信タイミングを説明する図である。 無線通信装置の機能ブロック図である。 (a)は、無線通信装置の電気的構成を示すブロック図であり、(b)は、既定通信間隔テーブルを模式的に示す図であり、(c)は、通信管理テーブルを模式的に示す図である。 メイン処理のフローチャートである。 スレーブメイン処理のフローチャートである。 (a)は、通信間隔設定処理のフローチャートであり、(b)は、通信間隔調停処理のフローチャートである。 既定通信間隔使用設定処理のフローチャートである。 通信間隔送信処理のフローチャートである。 マスターメイン処理のフローチャートである。 (a)は、接続後処理のフローチャートであり、(b)は、通常処理のフローチャートである。
以下、好ましい実施例について、添付図面を参照して説明する。図1を参照して、本実施形態の無線通信装置1の概要を説明する。図1(a)は、無線通信装置1の外観図であり、図1(b)は、電子楽器100に接続した無線通信装置1を表す図である。
無線通信装置1はシンセサイザー等の電子機器である電子楽器100に接続され、電子楽器100で入出力されるMIDI(Musical Instrument Digital Interface)データを無線通信によって送受信する装置(電子楽器用通信装置)である。
無線通信装置1には、半透明の樹脂で形成される筐体2a,2bが設けられ、筐体2aには、入力端子3と、無線通信装置1の各部を制御する制御部4と、無線通信を行う無線モジュール5と、LED6と、ユーザからの指示を入力する操作ボタン7とが設けられる。入力端子3は、電子楽器100のMIDI出力端子102(図4(a)参照)に接続され、MIDI出力端子102から出力されるMIDIデータを入力する端子である。LED6は、点灯または消灯を行う出力装置である。
筐体2bには、無線通信装置1の各部に電力を供給する電池Bと、出力端子8とが設けられる。出力端子8は、電子楽器100のMIDI入力端子103(図4(a)参照)に接続され、MIDI入力端子103へMIDIデータを出力する端子である。筐体2aと筐体2bとは、ケーブルCで接続され、ケーブルCを介して筐体2aと筐体2bとの間で電力やデータが入出力される。例えば、筐体2bの電池Bからの電力が、ケーブルCを介して筐体2aへ供給され、筐体2aの無線モジュール5で受信したMIDIデータが、ケーブルCを介して筐体2bの出力端子8へ出力される。
本実施形態では、無線モジュール5には1つのアンテナ(図示せず)が設けられるので、無線通信装置1が同時にMIDIデータを送受信できるのは、1台の他の無線通信装置1とされる。なお、無線モジュール5は、1つのアンテナが設けられるものに限られず、2つ以上のアンテナが設けられても良い。
無線通信装置1には、複数の他の無線通信装置1が接続され、無線通信装置1とそれぞれの他の無線通信装置1との間でペアが形成される。無線通信装置1は、電子楽器100から入力されるMIDIデータをペアの他の無線通信装置1に無線通信で送信し、ペアの他の無線通信装置1から無線通信で受信したMIDIデータを電子楽器100に出力する。これにより、無線通信装置1に接続された電子楽器100と、他の無線通信装置1に接続された電子楽器100との間でMIDIデータを送受信することができる。以下、無線通信装置1と他の無線通信装置1とのペアのことを、単に「ペア」と略す。
ペアの無線通信装置1には、「マスターモード」と「スレーブモード」との2つの通信モードがそれぞれ設定される。具体的に、マスターモードは、主にスレーブモードの無線通信装置1へ指示を行う通信モードである。スレーブモードは、マスターモードの無線通信装置1からの指示を受けて、マスターモードの無線通信装置1へ指示に対する応答を送信する通信モードである。以下、マスターモードが設定された無線通信装置1のことを「無線通信装置1M」といい、スレーブモードが設定された無線通信装置1のことを「無線通信装置1S」という。
ペアの無線通信装置1において、まず無線通信装置1Mが無線通信装置1SへMIDIデータを送信し、その無線通信装置1Sは、無線通信装置1MからのMIDIデータの受信を受け、その無線通信装置1MにMIDIデータを送信する。これにより、ペア同士が同時に通信し合うことがないので、ペアによるMIDIデータの送受信を確実かつ効率良く行うことができる。
本実施形態では、1台の無線通信装置1Sに複数の無線通信装置1Mが接続され、無線通信装置1Sと無線通信装置1Mとの1対1のペア毎にMIDIデータが所定の通信間隔で送受信される。詳細は後述するが、本実施形態では、ペア毎の通信間隔がそれぞれ異なった時間間隔に設定される。これにより、複数のペアでMIDIデータを送受信するタイミングが重なり、連続して繰り返し通信エラーとなるのを抑制できる。次に、図2を参照して、ペア毎のMIDIデータの通信タイミングを説明する。
図2(a)は、ペア毎の通信タイミングを説明する図である。図2(a),(b)においては、無線通信装置1Sの通信タイミングを「スレーブ」が付した図で、その無線通信装置1Sとペアが形成されている4台の無線通信装置1Mの通信タイミングをそれぞれ「マスター#0~#3」を付した図で表している。以下、図2(a),(b)では、無線通信装置1Sのことを「スレーブ」といい、4台の無線通信装置1Mのことをそれぞれ「マスター#0~#3」という。
また、図2(a),(b)では、スレーブとマスター#0との送受信のタイミングを白抜きの矩形で表し、スレーブとマスター#1との送受信のタイミングを右上がりの斜線によるハッチングを付した矩形で表し、スレーブとマスター#2との送受信のタイミングを黒塗りの矩形で表し、マスター#3との送受信のタイミングを左上がりの斜線によるハッチングを付した矩形で表している。
図2(a)において、スレーブでは4台のマスター#0~#3とMIDIデータを送受信するため、マスター#0からマスター#3へと順次、無線通信するタイミングをずらしている。具体的には、時刻T1でスレーブとマスター#0とのペアがMIDIデータの送受信を行い、時刻T1後の時刻T2でスレーブとマスター#1とのペアがMIDIデータの送受信を行い、時刻T2後の時刻T3でスレーブとマスター#2とのペアがMIDIデータの送受信を行い、時刻T3後の時刻T4でスレーブとマスター#3とのペアがMIDIデータの送受信を行う。
その後、各ペアは、それぞれに設定された通信間隔毎にMIDIデータの送受信を行う。即ちスレーブとマスター#0とのペアは、時刻T1から時間Td1後の時刻T5でMIDIデータの送受信を行い、スレーブとマスター#1とのペアは、時刻T2から時間Td2後の時刻T6でMIDIデータの送受信を行い、スレーブとマスター#2とのペアは、時刻T3から時間Td3後の時刻T7でMIDIデータの送受信を行い、スレーブとマスター#3とのペアは、時刻T4から時間Td4後の時刻T8でMIDIデータの送受信を行う。
本実施形態では、それぞれのペアに設定されるMIDIデータの通信間隔である時間Td1~Td4が異なった時間間隔であって、時間Td1から時間Td4にかけて短い順、即ち時間Td1<時間Td2<時間Td3<時間Td4となるように設定される。これによって、時間Td1~Td4が同じ時間間隔の場合と比較して、各ペアにおいてMIDIデータを送受信するタイミングをずらすことができる。これにより、複数のペアでMIDIデータを送受信するタイミングが重なり、通信エラーとなるのを抑制できる。
ここで、各無線通信装置1においてMIDIデータを送受信するタイミングは、CPU50(図4(a)参照)に内蔵されるクロック(図示せず)によって決定されている。これらのクロックの間隔は略同一ではあるが、それぞれに個体差を有しているため、各無線通信装置1のクロックの間隔は同期されない。よって、上記のように、通信間隔が異なって設定されたスレーブ及びマスター#0~#3のペアであっても、MIDIデータの送受信を長期間続けると、無線通信装置1間でクロックのタイミングが合致し、複数のペアで送受信するタイミングが重なる場合がある。また、無線通信に通信障害が発生し、送受信するタイミングが遅延することでも複数のペアにおいて送受信するタイミングが重なる場合がある。このように、複数のペアで送受信するタイミングが重なった場合の動作を、図2(b)を参照して説明する。
図2(b)は、送受信するタイミングが重なった場合のペア毎の通信タイミングを説明する図である。図2(b)では、時刻T11にてスレーブ及びマスター#0のペアと、スレーブ及びマスター#1のペアとの送受信するタイミングが重なった場合を表している。上記した通り、無線通信装置1が同時にMIDIデータを送受信できるのは、1台の他の無線通信装置1とされる。よって、スレーブは、同時にMIDIデータが送信されるマスター#0及びマスター#1のうち、いずれかの1のマスターのMIDIデータを受信できる一方で、他の1のマスターのMIDIデータを受信できない。これによって、他のマスターとは通信エラーとなる。
このように他のマスターが通信エラーとなった直後における、スレーブとマスター#0とのペアで送受信するタイミングは、時刻T11から時間Td1後の時刻T14であり、次回のスレーブとマスター#1とのペアで送受信するタイミングは、時刻T11から時間Td2後の時刻T15である。ここで、時間Td2は、時間Td1よりも長い時間間隔が設定されているので、時刻T15は、時刻T14よりも後のタイミングとなる。
これによって、時刻T14でスレーブとマスター#0とのペアにおけるMIDIデータの送受信が行われ、その後の時刻T15でスレーブとマスター#1とのペアにおけるMIDIデータの送受信が行われる。即ち2以上のペアにおいてMIDIデータを送受信するタイミングが重なった場合でも、次回以降の送受信するタイミングをそれぞれのペアで異なるタイミングとできる。これにより、2以上のペアにおいて送受信するタイミングが重なり続け、通信エラーが継続するのを抑制できるので、MIDIデータを遅延なく送受信できる。
次に図3を参照して、無線通信装置1の機能を説明する。図3は、無線通信装置1の機能ブロック図である。図3に示すように、無線通信装置1は、通信間隔設定手段200と通信間隔送信手段201とを有する。通信間隔設定手段200は、他の無線通信装置1とのペア毎の通信間隔を、それぞれ異なった時間間隔に設定する手段であり、図4(a)で後述のCPU50で実現される。通信間隔送信手段201は、通信間隔設定手段200で設定された通信間隔を、該当する他の無線通信装置1に送信する手段であり、CPU50と無線モジュール5とで実現される。
無線通信装置1においては、他の無線通信装置1とのペア毎の通信間隔がそれぞれ異なった時間間隔に設定され、該当する他の無線通信装置1に送信される。よって、他の無線通信装置1とのペアの通信間隔をそれぞれ異ならせることができるので、他の無線通信装置1とのペアにおいてMIDIデータを送受信するタイミングをそれぞれずらすことができる。これにより、複数の他の無線通信装置1とのペアにおいてMIDIデータを送受信するタイミングが重なり、通信エラーとなるのを抑制できる。
また、2以上のペアにおいてMIDIデータを送受信するタイミングが重なった場合でも、次回以降の送受信するタイミングはそれぞれのペアで異なるタイミングとできる。これにより、2以上のペアにおいて送受信するタイミングが重なり続け、通信エラーが継続するのを抑制できるので、MIDIデータを遅延することなく送受信できる。
次に、図4を参照して無線通信装置1の電気的構成を説明する。図4(a)は、無線通信装置1の電気的構成を示すブロック図である。無線通信装置1には、上記した制御部4が設けられ、その制御部4には、CPU50と、フラッシュROM51と、RAM52とを有し、これらはバスライン53を介して入出力ポート54にそれぞれ接続されている。入出力ポート54には更に、上記した無線モジュール5、入力端子3、出力端子8、LED6及び操作ボタン7が接続される。
CPU10は、バスライン53により接続された各部を制御する演算装置である。フラッシュROM51は、CPU10により実行されるプログラムや固定値データ等を格納した書き換え可能な不揮発性の記憶装置であり、制御プログラム51aと、各ペアに設定される通信間隔の既定値が記憶される既定通信間隔テーブル51bとが記憶される。CPU50において制御プログラム51aが実行されると、図5のメイン処理が実行される。次に、図4(b)を参照して、既定通信間隔テーブル51bを説明する。
図4(b)は、既定通信間隔テーブル51bを模式的に示す図である。既定通信間隔テーブル51bには、「変更」が「可」の無線通信装置1Mとのペアで用いられる通信間隔が記憶される。即ち後述の通信管理テーブル52aにおいて、「変更」が「可」の無線通信装置1Mの現在通信間隔には、既定通信間隔テーブル51bに記憶されるいずれかの通信間隔が設定される。
既定通信間隔テーブル51bには、通信間隔として6ms、7ms、11ms及び13msが記憶される。このうち6msは、「変更」が「可」の無線通信装置1の初期通信間隔である。「変更」が「可」の無線通信装置1Mにおいては初期通信間隔が最短の通信間隔でもあるので、かかる初期通信間隔を通信間隔に設定可能とすることで、単位時間当たりにMIDIデータ送受信するタイミングを増加させることができる。これにより、MIDIデータを迅速に送受信できる。
既定通信間隔テーブル51bには、7ms、11ms及び13msといった素数に基づく通信間隔が記憶される。通信間隔が素数に基づくことで、ペアに設定される通信間隔同士の素因数を容易に異ならせることができる。これによって、素数に基づく通信間隔同士の最小公倍数は、同一の素因数を含む通信間隔同士の最小公倍数よりも大きくなる。従って、同一のタイミングで、複数のペアがMIDIデータの送受信を開始しても、その内のいずれかのペアの送受信が、同一のタイミングになるまで長期間を要する。これにより、複数のペアの送受信のタイミングが重なり、通信エラーとなるのを好適に抑制できる。
なお、既定通信間隔テーブル51bに記憶される素数に基づく通信間隔は7ms、11ms及び13msに限られず、無線通信装置1の初期通信間隔(6ms)より長ければ、これら以外の素数に基づく通信間隔が記憶されても良い。
また、既定通信間隔テーブル51bには、通信間隔として6ms、7ms、11ms及び13msが、時間間隔が短い順に記憶される。これによって、既定通信間隔テーブル51bから通信間隔が短い順に設定されるので、ペア毎の通信間隔をなるべく小さな時間間隔とすることができる。これにより、単位時間あたりにMIDIデータを送受信する頻度が高くなるので、MIDIデータの送受信を迅速に行うことができる。
図4(a)に戻る。RAM52は、CPU50が制御プログラム51aの実行時に各種のワークデータやフラグ等を書き換え可能に記憶するためのメモリであり、ペア毎に設定されている通信間隔等が記憶される通信管理テーブル52aが設けられる。図4(c)を参照して、通信管理テーブル52aを説明する。
図4(c)は、通信管理テーブル52aを模式的に示す図である。通信管理テーブル52aには、無線通信装置1Sとペアを形成する無線通信装置1M毎に、「ID」と、「変更」と、その無線通信装置1Mと接続しているか否かの状態を表す「接続状態」と、その無線通信装置1MとのMIDIデータの送受信に用いる通信間隔である「現在通信間隔」(単位:ms(ミリ秒))と、その無線通信装置1Mに設定されている通信間隔の初期値である「初期通信間隔」(単位:ms)とが対応付けられて記憶される。
IDは、無線通信装置1Mに設定されている固有の識別子である。無線通信装置1MのIDには、予め0~3のいずれかが設定されている。即ち本実施形態では、無線通信装置1Sとペアが形成される無線通信装置1Mは、最大4台とされる。なお、無線通信装置1Mの数は、4台に限られず、4台以上でも4台以下でも良い。
「変更」は、無線通信装置1Mにおいて通信間隔が変更可能か否かが記憶される。無線通信装置1Mには、通信間隔が変更可能なものと、不可能なものとが含まれ、「変更」には、通信間隔が変更可能な無線通信装置1Mには「可」が、通信間隔が変更不可能な無線通信装置1Mには「不可」が、それぞれ記憶される。
本実施形態では、無線通信装置1Sには、「変更」が「可」の無線通信装置1が用いられ、無線通信装置1Mには、「変更」が「可」または「不可」の無線通信装置1が用いられる。このうち、「変更」が「可」の無線通信装置1Mとのペアでは、後述の既定通信間隔テーブル51bに記憶される通信間隔がMIDIデータの送受信で用いられる通信間隔とされ、「変更」が「不可」の無線通信装置1Mとのペアでは、予め無線通信装置1Mに設定されている通信間隔(即ち通信管理テーブル52aの初期通信間隔)がMIDIデータの送受信で用いられる通信間隔とされる。
また、本実施形態において、「変更」が「可」の無線通信装置1の初期通信間隔は6msとされ、「変更」が「不可」の無線通信装置の初期通信間隔は6ms、9ms又は12msのいずれかとされる。なお、無線通信装置の初期通信間隔は6ms、9ms、12msに限られず、これら以上でも、これら以下でも良い。
通信管理テーブル52aの接続状態、変更、現在通信間隔および初期通信間隔の初期値は、それぞれ「未接続」、「不可」、「0ms」及び「0ms」とされる。無線通信装置1の電源投入直後や、他の無線通信装置1とのペアが解消された場合にこれらの初期値が設定される。
次に図5~図11を参照して、無線通信装置1のCPU50で実行されるメイン処理を説明する。図5は、メイン処理のフローチャートである。メイン処理は、無線通信装置1の電源投入後に実行される処理である。
メイン処理はまず、無線通信装置1に設定されている通信モードを確認する(S1)。S1の処理において、通信モードがスレーブモードの場合は(S1:スレーブ)、スレーブメイン処理を実行する(S2)。ここで、図6を参照してスレーブメイン処理を説明する。
図6は、スレーブメイン処理のフローチャートである。スレーブメイン処理はまず、データ送受信処理を行う(S10)。データ送受信処理では、無線通信装置1Mから受信したMIDIデータが、出力端子8を介して電子楽器100のMIDI入力端子103に送信される。また、入力端子3を介して電子楽器100のMIDI出力端子102から受信したMIDIデータが、ペア毎に設けられた送信用バッファ(図示せず)に記憶される。送信用バッファに記憶されたMIDIデータは、各ペアとの通信間隔毎に行われる送受信処理で該当するペアの無線通信装置1Mに送信される。また、データ送受信処理では、MIDIデータ以外の無線通信装置1Mからの通知やコマンドの送受信も実行される。
S10のデータ送受信処理の後、データ送受信処理によって無線通信装置1Mから通知やコマンドを受信したかを確認する(S11)。S11の処理において、無線通信装置1Mから通知やコマンドを受信した場合は(S11:Yes)、通知やコマンドと共に受信した無線通信装置1MのIDを取得する(S12)。
S12の処理の後、取得したIDを通信管理テーブル52aで参照し、該当するIDの接続状態が「未接続」かを確認する(S13)。S13の処理において、通信管理テーブル52aの該当するIDの接続状態が「未接続」の場合は(S13:Yes)、新たに接続される無線通信装置1Mから通知やコマンドを受信した場合なので、通信管理テーブル52aの該当するIDの接続状態を「接続中」に設定する(S14)。一方でS13の処理において、通信管理テーブル52aの該当するIDの接続状態が「接続中」の場合は(S13:No)、S14の処理をスキップする。
S13,S14の処理の後、無線通信装置1Mから、その機器が通信間隔を変更可能であることを通知する「変更可」通知を受信したかを確認する(S15)。なお「変更可」通知は、後述の接続後処理(図11(a))のS111の処理で、無線通信装置1Mから通知されるものである。S15の処理において、「変更可」通知を受信した場合は(S15:Yes)、通信管理テーブル52aにおけるS12の処理で取得したIDの「変更」を「変更可」に設定する(S16)。一方でS15の処理において、「変更可」通知を受信していない場合は(S15:No)、S16の処理をスキップする。
S15,S16の処理の後、無線通信装置1Mから通信間隔を受信したかを確認する(S17)。S17の処理において、通信間隔を受信した場合は(S17:Yes)、通信間隔設定処理(S18)を実行する。ここで、図7(a)を参照して、通信間隔設定処理を説明する。
図7(a)は、通信間隔設定処理のフローチャートである。通信間隔設定処理は、S17の処理で無線通信装置1Mから受信した通信間隔に基づきペア毎の通信間隔を設定し、設定された通信間隔を該当する無線通信装置1Mに送信する処理である。通信間隔設定処理は、上記の図6のS17の処理の後に実行される他、後述の図6のS20の処理の後にも実行される。
以下、通信間隔設定処理において「該当ID」とは、図6のS12の処理で取得されたIDをいう。また「対象通信間隔」とは、S17の処理の後に実行された場合はS17の処理で受信された通信間隔をいう。なお、S20の処理の後に実行された場合は、無線通信装置1Mとの接続が解除される場合であるので、対象通信間隔には通信間隔の初期値、即ち「0ms」が設定される。
通信間隔設定処理はまず、通信管理テーブル52aにおいて該当IDの初期通信間隔が0msであるかを確認する(S30)。通信管理テーブル52aにおいて初期通信間隔の初期値は0msであるので、初期通信間隔が0msかどうかを確認することで、該当IDの通信間隔が設定済みかどうかを確認する。
S30の処理において、通信管理テーブル52aにおいて取得したIDの初期通信間隔が0msである場合は(S30:Yes)、通信管理テーブル52aの該当IDの初期通信間隔および現在通信間隔に対象通信間隔を設定する(S31)。S31の処理の後、通信間隔調停処理(S32)を実行する。ここで、図7(b)を参照して、通信間隔調停処理を説明する。
図7(b)は、通信間隔調停処理のフローチャートである。通信間隔調停処理はまず、target_count及びtable_offsetに「0」を設定する(S40)。target_countは、通信間隔が変更可能な無線通信装置1Mの数を計数するカウンタ変数である。また、table_offsetは、ペアの通信間隔として、既定通信間隔テーブル51bの先頭に記憶される「6ms」を使用するか否かを設定するフラグ変数である。table_offsetに「0」が設定されている場合は、ペアの通信間隔に6msを使用する場合であり、table_offsetに「1」が設定されている場合は、ペアの通信間隔に6msを使用しない場合である。
S40の処理の後、既定通信間隔使用設定処理(S41)を実行する。ここで、図8を参照して、既定通信間隔使用設定処理を説明する。
図8は、既定通信間隔使用設定処理のフローチャートである。既定通信間隔使用設定処理はまず、カウンタ変数ixに1を設定する(S50)。カウンタ変数ixは、通信管理テーブル52aを参照する位置を示す変数である。S50の処理の後、通信管理テーブル52aのix番目の接続状態が「接続中」かを確認する(S51)。
S51の処理において、通信管理テーブル52aのix番目の接続状態が「接続中」である場合は(S51:Yes)、更に通信管理テーブル52aのix番目の「変更」が「可」かつ「初期通信間隔」が「6ms」であるかを確認する(S52)。S52において通信管理テーブル52aのix番目の「変更」が「可」かつ「初期通信間隔」が「6ms」の場合は(S52:Yes)、通信管理テーブル52aのix番目に該当する無線通信装置1Mが通信間隔を変更可能である機器であると判断できるので、target_countに1を加算する(S53)。
一方で、S52の処理において、通信管理テーブル52aのix番目の「変更」が「不可」または「初期通信間隔」が「6ms」以外ある場合は(S52:No)、更に通信管理テーブル52aのix番目の「初期通信間隔」が「6ms」、「9ms」又は「12ms」であるかを確認する(S54)。
S54の処理において、通信管理テーブル52aのix番目の「初期通信間隔」が「6ms」、「9ms」又は「12ms」である場合は(S54:Yes)、table_offsetに「1」を設定する(S55)。即ち通信管理テーブル52aのix番目の通信間隔が変更できない無線通信装置1Mとのペアでは、該無線通信装置1Mの初期通信間隔を用いる必要がある。
この場合に、該無線通信装置1Mの初期通信間隔が「6ms」、「9ms」又は「12ms」であるか、即ち既定通信間隔テーブル51bの素数以外の通信間隔である「6ms」の素因数である「2」及び/又は「3」から構成される、「6ms」、「9ms」又は「12ms」であるかが確認され、該当する場合はtable_offsetに「1」が設定される。
例えば、通信間隔が変更できない無線通信装置1Mとのペアの通信間隔が、初期通信間隔の「6ms」、「9ms」又は「12ms」が用いられている状態で、通信間隔が変更できる別のペアの通信間隔に「6ms」が設定されると、これらの通信間隔同士の最小公倍数に基づく通信間隔が「6ms」、「12ms」又は「18ms」となる。これによって、2のペアのMIDIデータを送受信するタイミングが重なり、通信エラーが頻繁に発生する虞がある。
そこで、通信管理テーブル52aに通信間隔が変更できない無線通信装置1Mが含まれる場合に、table_offsetに「1」が設定されることで、通信間隔が変更できるペアの通信間隔の設定から「6ms」が除外され、既定通信間隔テーブル51bの素数に基づく通信間隔が設定される。これにより、2以上のペアの通信間隔の組み合わせが「6ms」と素数、または素数同士となるので、通信間隔同士の最小公倍数を大きくできる。これにより、複数のペアで送受信のタイミングが重なり、通信エラーが発生するのを抑制できる。
通信管理テーブル52aのix番目の「接続状態」が「未接続」の場合は(S51:No)、S52~S55の処理をスキップする。また、通信管理テーブル52aのix番目の「初期通信間隔」が「6ms」、「9ms」又は「12ms」以外の場合は(S54:No)、S55の処理をスキップする。
S51,S53,S55の処理の後、カウンタ変数ixに1を加算する(S56)。S56の処理の後、カウンタ変数ixが4より大きいかを確認する(S57)。S57の処理において、カウンタ変数ixが4以下の場合は(S57:No)、S51以下の処理を繰り返し、カウンタ変数ixが4より大きい場合は(S57:Yes)、既定通信間隔使用設定処理を終了する。
図7(b)に戻る。S41の既定通信間隔使用設定処理の後、通信間隔送信処理(S42)を実行する。ここで、図9を参照して、通信間隔送信処理を説明する。
図9は、通信間隔送信処理のフローチャートである。通信間隔送信処理はまず、カウンタ変数iyに1を設定し、カウンタ変数izに1を設定する(S70)。iyは、通信管理テーブル52aを参照する位置を示す変数であり、izは、通信間隔送信処理で処理された、通信間隔が変更可能な無線通信装置1Mの数を計数するカウンタ変数である。
S70の処理の後、既定通信間隔テーブル51bの「iz+table_offset」番目の通信間隔を設定する(S71)。即ち通信管理テーブル52aに通信間隔を変更できない無線通信装置1Mが含まれておらず、通信間隔に6msを含めて設定する場合には、table_offsetに「0」が設定されているので、既定通信間隔テーブル51bの先頭である6msから順番に通信間隔が取得され、更新用通信間隔に設定される。一方、通信管理テーブル52aに通信間隔を変更できない無線通信装置1Mが含まれる場合には、table_offsetに1が設定されているので、通信間隔の取得において既定通信間隔テーブル51bの先頭の6msが除外される。これによって、既定通信間隔テーブル51bの2番目の通信間隔である7msから順番に通信間隔が取得され、更新用通信間隔に設定される。
S71の処理の後、通信管理テーブル52aのiy番目の現在通信間隔が更新用通信間隔と異なるかを確認する(S72)。S72の処理において、通信管理テーブル52aのiy番目の現在通信間隔が更新用通信間隔と異なる場合は(S72:Yes)、該当する無線通信装置1M、即ち通信管理テーブル52aのiy番目のIDの無線通信装置1Mに通信間隔を変更する旨を示す通信間隔変更コマンドを送信し、これと共に、更新用通信間隔を送信する(S73)。
これにより、無線通信装置1Sで設定された通信間隔が、ペアの無線通信装置1Mに送信される。送信された通信間隔は、後述の図11(b)の通常処理のS122の処理で無線通信装置1Mの通信間隔に設定される。
S72の処理において、通信管理テーブル52aのiy番目の現在通信間隔が更新用通信間隔と同一の場合は(S72:No)、S73の処理をスキップする。
S72,S73の処理の後、カウンタ変数izに1を加算する(S74)。S74の処理の後、カウンタ変数izがtarget_countより大きいかどうかを確認する(S75)。S75の処理において、カウンタ変数izがtarget_count以下の場合は(S75:No)、カウンタ変数iyに1を加算する(S76)。
S76の処理の後、カウンタ変数iyが4より大きいかを確認する(S77)。S77の処理においてカウンタ変数iyが4以下の場合は(S77:No)、S71以下の処理を繰り返す。S75の処理においてカウンタ変数izがtarget_countより大きい場合(S75:Yes)、または、S77の処理においてカウンタ変数iyが4より大きい場合は(S77:Yes)、通信間隔送信処理を終了する。
図7(b)に戻る。S42の通信間隔設定処理の後、通信間隔調停処理を終了する。
図7(a)に戻る。S30の処理において、通信管理テーブル52aにおいて取得したIDの初期通信間隔が0msではない場合は(S30:No)、通信管理テーブル52aの該当IDの現在通信間隔に対象通信間隔を設定する(S33)。
詳細は図11(b)で後述するが、図9のS74の処理で送信された通信間隔を無線通信装置1Mで受信した場合は、無線通信装置1Mは自機の通信間隔(即ち図11(b)における動作通信間隔)に受信した通信間隔を設定した上で、通信間隔の送信元である無線通信装置1Sに設定した通信間隔が送信される。無線通信装置1Mから送信された通信間隔が、S33の処理によって通信管理テーブル52aの現在通信間隔に設定されることで、現在通信間隔にペアで実際に用いられる通信間隔を設定できる。
S32,S33の処理の後、通信間隔設定処理を終了する。
図6に戻る。S17の処理において、通信間隔を受信していない場合は(S17:No)、S18の処理をスキップする。
S17,S18の処理の後、無線通信装置1Mから切断コマンドを受信したか、又は無線通信装置1Mとの通信が途絶えたことを検知したかを確認する(S19)。切断コマンドは、無線通信装置1Sとのペアを解消する際に無線通信装置1Mから送信されるコマンドである。また、無線通信装置1Mとの通信が途絶えた場合は、無線通信装置1Mが切断コマンドを送信することなく無線通信装置1Mの電源がオフされた場合や、無線通信装置1Mとの無線通信の状態が悪くなり、通信が途絶えた場合等、無線通信装置1Mとの無線通信が所定時間(例えば5秒間)以上できない場合とされる。
S19の処理において、切断コマンドを受信した場合、又は無線通信装置1Mとの通信が途絶えたことを検知した場合は(S19:Yes)、通信管理テーブル52aのS12の処理で取得したIDに該当する各値を初期化し(S20)、S18の通信間隔設定処理を実行する。これにより、1のペアが解消された場合に、残りのペアの通信間隔が再設定される。例えば、解消されたペアに最も短い通信間隔が設定されていた場合に、その最も短い通信間隔を他のペアに割り振ることができる。これにより、残りのペア毎の通信間隔を全体として小さいものに再設定できるので、残りのペアにおいてMIDIデータの送受信を迅速に行うことができる。
S11の処理において、無線通信装置1Mから通知やコマンドを受信していない場合(S12:No)、S19の処理において、切断コマンドを受信しておらず、かつ無線通信装置1Mとの通信が途絶えたことを検知していない場合(S19:No)、または、S20の処理後のS18の処理の後、S10以下の処理を繰り返す。
図5に戻る。S1の処理において、通信モードがマスターモードの場合は(S1:マスター)、マスターメイン処理(S3)を実行する。ここで、図10を参照して、マスターメイン処理を説明する。
図10は、マスターメイン処理のフローチャートである。マスターメイン処理はまず、動作通信間隔に、予め自機に設定されている初期通信間隔を設定する(S100)。動作通信間隔は、無線通信装置1Mが、無線通信装置1SとのMIDIデータの送受信に用いる通信間隔である。なお、このS100の処理は電源投入直後に一度だけ実行される。
S100の処理の後、無線通信装置1Sとの接続指示を取得し、かつ、スレーブと未接続であるかを確認する(S101)。本実施形態では、接続指示は、ユーザから操作ボタン7(図1参照)が操作された場合に取得される。S101の処理において、接続指示を取得し、かつ、スレーブと未接続である場合は(S101:Yes)、無線通信装置1Sとの接続処理を行う(S102)。一方で101の処理において、接続指示が取得されない場合、またはスレーブと接続済みの場合は(S101:No)、S102の処理をスキップする。
S101,S102の処理の後、無線通信装置1Sとの接続が完了したかを確認する(S103)。S103の処理において、スレーブモードの他の無線通信装置1との接続が完了した場合は(S103:Yes)、接続後処理(S104)を実行し、S103の処理において、無線通信装置1Sとの接続が完了していない場合は(S103:No)、S104の接続後処理をスキップする。ここで、図11(a)を参照して、S104の接続後処理を説明する。
図11(a)は、接続後処理のフローチャートである。接続後処理はまず、自機が通信間隔の変更が可能かどうかを確認する(S110)。S110の処理において、自機が通信間隔の変更が可能な場合は、無線通信装置1Sに通信間隔が「変更可」の旨の通知を行う(S111)。無線通信装置1Sでは、これを受けて図6のS15,S16の処理によって、通信管理テーブル52aにおいて該当する無線通信装置1Mが「変更可」に設定される。
S110の処理において、自機が通信間隔の変更が不可能な場合は(S110:No)、S111の処理をスキップする。S110,S111の処理の後、自機に予め設定されている初期通信間隔を無線通信装置1Sに送信する(S112)。S112の処理の後、接続後処理を終了する。
図10に戻る。S103,S104の接続後処理の後、スレーブと接続済みかを確認する(S105)。S105の処理において、スレーブと接続済みの場合は(S105:Yes)、通常処理(S106)を実行し、スレーブと接続されていない場合は(S105:No)、S106の通常処理をスキップする。ここで、図11(b)を参照して、S106の通常処理を説明する。
図11(b)は、通常処理のフローチャートである。通常処理はまず、データ送受信処理を実行する(S120)。マスターモードにおけるデータ送受信処理も、スレーブモードにおける図6のS10の処理と同様に、ペアの無線通信装置1Sから受信したMIDIデータを、出力端子8(図4(a)参照)を介して電子楽器100のMIDI入力端子103に送信し、入力端子3を介して電子楽器100のMIDI出力端子102から受信したMIDIデータを、送信用バッファ(図示せず)に記憶する。送信用バッファに記憶されたMIDIデータが、通信間隔毎に行われる送受信処理で無線通信装置1Sに送信される。データ送受信処理では、MIDIデータ以外の無線通信装置1Sからの通知やコマンドの送受信も実行される。
S120の処理の後、無線通信装置1Sから通信間隔変更コマンドを受信したか確認する(S121)。S121の処理において、通信間隔変更コマンドを受信した場合は(S121:Yes)、該コマンドと共に受信した通信間隔を動作通信間隔に設定し(S122)、設定された動作通信間隔を無線通信装置1Sに送信する(S123)。これによって、無線通信装置1Sで設定され、送信された通信間隔が、無線通信装置1Mで受信され、受信された通信間隔によってペアによるMIDIデータの送受信が行われる。
S121の処理において、通信間隔変更コマンドを受信しなかった場合は(S121:No)、S122,S123の処理をスキップする。S121,S123の処理の後、無線通信装置1Sから受信したその他のコマンドや通知に対する処理を行い(S124)、通常処理を終了する。
図10に戻る。S105,S106の処理の後、切断指示がされたかを確認する(S107)。本実施形態では、切断指示は、ユーザから操作ボタン7(図1参照)が操作された場合に取得される。
S107の処理において、切断指示がされた場合は(S107:Yes)、無線通信装置1Sに切断コマンドを送信する(S108)。これによって、無線通信装置1Sでは、図6のS19,S20及びこれらの後に実行されるS18の処理によって、通信管理テーブル52aにおいて該当するIDの各値の初期化および通信間隔の再設定が実行される。S107の処理において、切断指示がされない場合は(S107:No)、S108の処理をスキップする。S107,S108の処理の後、S101以下の処理を繰り返す。
図5に戻る。S2,S3の処理の後、メイン処理を終了する。
以上説明した通り、本実施形態の無線通信装置1では、無線通信装置1Sにおいて、ペア毎の通信間隔がそれぞれ異なった時間間隔に設定され、該当する無線通信装置1Mに送信される。よって、ペアの通信間隔をそれぞれ異ならせることができるので、各ペアにおいてMIDIデータを送受信するタイミングをそれぞれずらすことができる。これにより、複数のペアにおいてMIDIデータを送受信するタイミングが重なり、通信エラーとなるのを抑制できる。
万一、2以上のペアにおいてMIDIデータを送受信するタイミングが重なった場合でも、次回以降の送受信するタイミングはそれぞれ異なるタイミングとできる。これにより、2以上のペアにおいて送受信するタイミングが重なり続け、通信エラーが継続するのを抑制できるので、MIDIデータを遅延することなく送受信することができる。
また、通信モードがスレーブモードの無線通信装置1Sでペア毎の通信間隔が設定され、がマスターモードの無線通信装置1Mに送信される。即ち、全ての無線通信装置1Mから指示が行われる無線通信装置1Sで、ペア毎の通信間隔が設定される。よって、無線通信装置1Mにおいて、ペア毎の通信間隔がそれぞれ異なった時間間隔に設定されているかを、別の無線通信装置1Mと相互に確認する必要がない。これにより、ペア間で異なった通信間隔を正確かつ容易に設定することができる。
以上、上記実施形態に基づき説明したが、種々の改良変更が可能であることは容易に推察できるものである。
上記実施形態では、既定通信間隔テーブル51bに「変更」が「可」の無線通信装置1Mの初期通信間隔と、素数に基づく通信間隔とを記憶した。しかし、これに限られず、例えば、既定通信間隔テーブル51bに、初期通信間隔と、奇数に基づく通信間隔とを記憶しても良いし、既定通信間隔テーブル51bに、初期通信間隔と、乱数に基づく通信間隔とを記憶しても良い。これらの場合、初期通信間隔と共に記憶される通信間隔は、初期通信間隔と関連の小さい時間間隔、例えば、初期通信間隔と共通の小さな素因数を持たない時間間隔や、初期通信間隔との最小公倍数が大きい時間間隔等であることが好ましい。更にこれらの場合でも、既定通信間隔テーブル51bには、より短い時間間隔による通信間隔が設定されるのが好ましい。
また、ペア毎のMIDIデータの通信量を一定時間(例えば10分間)測定し、測定された通信量に応じて、該当する無線通信装置1Mとの通信間隔を設定しても良い。具体的に、例えば、通信量の多いペアに該当する無線通信装置1Mには、通信管理テーブル52aの現在通信間隔に短い時間間隔の通信間隔を設定し、通信量の少ないペアに該当する無線通信装置1Mには、通信管理テーブル52aの現在通信間隔に長い時間間隔の通信間隔を設定する。そして、通信量に応じて設定された通信間隔および通信間隔変更コマンドを該当する無線通信装置1Mに送信すれば良い。
上記実施形態では、図11(a)の接続後処理のS110の処理において、自機(無線通信装置1M)が通信間隔の変更が可能かどうかを確認した。しかし、これに限られず、予め自機が通信間隔の変更が可能であることを把握できている場合は、S110の処理を省略し、その後のS111,S112の処理を実行しても良い。一方で予め自機が通信間隔の変更ができないことを把握できている場合は、S110,S111の処理を省略し、S112の処理を実行しても良い。
上記実施形態では、図8のS54の処理において、通信管理テーブル52aのix番目の初期通信間隔と、既定通信間隔テーブル51bに記憶される通信間隔「6ms」の素因数から構成される「6ms」、「9ms」又は「12ms」とを比較した。しかし、通信管理テーブル52aのix番目の初期通信間隔と比較するのは、これに限られず、例えば、既定通信間隔テーブル51bに記憶される素数に基づく通信間隔と比較しても良いし、既定通信間隔テーブル51bに記憶される素数に基づく通信間隔を更に素因数とした通信間隔と比較しても良い。
上記実施形態では、ペア毎の通信間隔を無線通信装置1Sで設定した。しかし、これに限られず、無線通信装置1Mでペア毎の通信間隔を設定しても良い。この場合、複数の無線通信装置1Mのうち、通信間隔を設定する無線通信装置1Mを予め決定し、該無線通信装置1Mで設定された通信間隔を無線通信装置1M及び無線通信装置1Sに送信すれば良い。
上記実施形態では、1の無線通信装置1Sに複数の無線通信装置1Mを接続する場合を例示したが、これに限られるものではない。例えば、複数の無線通信装置1Sに1の無線通信装置1Mを接続しても良い。
上記実施形態では、無線モジュール5による無線通信によって、他の無線通信装置1と通信した。しかし、他の無線通信装置1との通信方式は、無線通信に限られるものではなく、無線通信装置1同士をLANケーブルやUSBケーブル等のケーブルで接続し、LANやUSB等による有線通信によって、他の無線通信装置1と通信しても良い。
上記実施形態において、無線通信装置1は、入力端子3及び出力端子8を介して電子楽器100のMIDI出力端子102及びMIDI入力端子103に接続したが、これに限られず、電子楽器100におけるUSB等の他の通信端子に無線通信装置1を接続し、かかる通信端子を介して、無線通信装置1と電子楽器100との間でMIDIデータを入出力する構成としても良い。また、無線通信装置1は、電子楽器100に接続されるものに限られず、例えば、電子楽器100や、MIDIデータが入出力可能に構成されたPCや携帯端末等の電子機器に内蔵されても良い。
上記実施形態に挙げた数値は一例であり、他の数値を採用することは当然可能である。
1,1S 無線通信装置
1M 他の無線通信装置
100 電子楽器
S41 通信間隔設定手段、通信間隔設定ステップ
S42 通信間隔送信手段、通信間隔送信ステップ
S15,S16,S52 変更設定取得手段
S17 間隔取得手段
S18,S19,S20 再設定手段

Claims (9)

  1. 電子楽器に接続され、その電子楽器から入出力されるMIDIデータを、無線通信によってペアとなる他の無線通信装置と所定の通信間隔で送受信する無線通信装置であって、
    前記ペアは複数の前記他の無線通信装置との間でそれぞれ形成され、
    前記ペア毎の通信間隔を、それぞれ異なった時間間隔に設定する通信間隔設定手段と、
    その通信間隔設定手段で設定された通信間隔を、該当する前記他の無線通信装置に送信する通信間隔送信手段とを備えていることを特徴とする無線通信装置。
  2. 前記通信間隔設定手段は、前記ペア毎の通信間隔を素数に基づく時間間隔で設定することを特徴とする請求項1記載の無線通信装置。
  3. 前記他の無線通信装置において通信間隔が変更できるか否かを取得する変更設定取得手段と、
    前記他の無線通信装置に設定されている通信間隔を取得する間隔取得手段とを備え、
    前記通信間隔設定手段は、複数の前記他の無線通信装置の中に前記通信間隔が変更できない前記他の無線通信装置が含まれている場合は、当該他の無線通信装置とのペアを前記通信間隔の設定対象から除外すると共に、当該他の無線通信装置に設定されている前記通信間隔を、前記通信間隔を設定できる前記ペアの前記通信間隔の設定から除外することを特徴とする請求項1又は2に記載の無線通信装置。
  4. 前記他の無線通信装置において通信間隔が変更できるか否かを取得する変更設定取得手段と、
    前記他の無線通信装置に設定されている通信間隔を取得する間隔取得手段とを備え、
    前記通信間隔設定手段は、複数の前記他の無線通信装置の中に前記通信間隔が変更できない前記他の無線通信装置が含まれている場合は、当該他の無線通信装置とのペアを前記通信間隔の設定対象から除外すると共に、当該他の無線通信装置に設定されている前記通信間隔の素因数に基づく通信間隔を、前記通信間隔を設定できる前記ペアの前記通信間隔の設定から除外することを特徴とする請求項1又は2に記載の無線通信装置。
  5. 前記通信間隔設定手段は、前記ペア毎の通信間隔を、それぞれ異なった時間間隔の短い順に設定することを特徴とする請求項1から4のいずれかに記載の無線通信装置。
  6. 1の前記ペアが解消された場合に、前記通信間隔設定手段を再度実行する再設定手段を備えていることを特徴とする請求項5記載の無線通信装置。
  7. 前記無線通信装置への指示を行うマスターモードと、そのマスターモードが設定されている前記無線通信装置からの指示に応じた応答を行うスレーブモードとが切替可能な通信モードが設けられ、
    前記通信間隔設定手段は、前記通信モードがスレーブモードの場合に、前記ペア毎の通信間隔を、それぞれ異なった時間間隔に設定し、
    前記通信間隔送信手段は、前記通信間隔設定手段で設定された通信間隔を、該当する前記通信モードがマスターモードの他の無線通信装置に送信することを特徴とする請求項1から6のいずれかに無線通信装置。
  8. 請求項1から7のいずれかの無線通信装置を備えていることを特徴とする電子機器。
  9. 電子楽器に接続され、その電子楽器から入出力されるMIDIデータを、無線通信によってペアとなる他の無線通信装置と所定の通信間隔で送受信する無線通信装置で実行される無線通信方法であって、
    前記ペアは複数の前記他の無線通信装置との間でそれぞれ形成され、
    前記ペア毎の通信間隔を、それぞれ異なった時間間隔に設定する通信間隔設定ステップと、
    その通信間隔設定ステップで設定された通信間隔を、該当する前記他の無線通信装置に送信する通信間隔送信ステップとを備えていることを特徴とする無線通信方法。
JP2020159416A 2020-09-24 2020-09-24 無線通信装置、電子機器および無線通信方法 Pending JP2022052901A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020159416A JP2022052901A (ja) 2020-09-24 2020-09-24 無線通信装置、電子機器および無線通信方法
EP21197075.1A EP3975597B1 (en) 2020-09-24 2021-09-16 Non-overlapping wireless communication of midi data
US17/482,462 US20220093068A1 (en) 2020-09-24 2021-09-23 Wireless communication device, electronic device, and wireless communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020159416A JP2022052901A (ja) 2020-09-24 2020-09-24 無線通信装置、電子機器および無線通信方法

Publications (1)

Publication Number Publication Date
JP2022052901A true JP2022052901A (ja) 2022-04-05

Family

ID=78085392

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020159416A Pending JP2022052901A (ja) 2020-09-24 2020-09-24 無線通信装置、電子機器および無線通信方法

Country Status (3)

Country Link
US (1) US20220093068A1 (ja)
EP (1) EP3975597B1 (ja)
JP (1) JP2022052901A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021107862A (ja) * 2019-12-27 2021-07-29 ローランド株式会社 電子楽器用通信装置
US11663999B2 (en) * 2019-12-27 2023-05-30 Roland Corporation Wireless communication device, wireless communication method, and non-transitory computer-readable storage medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3707430B2 (ja) * 2001-12-12 2005-10-19 ヤマハ株式会社 ミキサー装置および同ミキサー装置と通信可能な音楽装置
JP6325296B2 (ja) 2014-03-19 2018-05-16 Quicco Sound株式会社 音響音楽機器用ドングル装置

Also Published As

Publication number Publication date
EP3975597B1 (en) 2023-08-02
US20220093068A1 (en) 2022-03-24
EP3975597A1 (en) 2022-03-30

Similar Documents

Publication Publication Date Title
JP2022052901A (ja) 無線通信装置、電子機器および無線通信方法
US20070030988A1 (en) Method for the synchronization of signal tones and corresponding hearing aids
EP2010961A2 (en) Wireless camera flash synchronizer system and method
CN112968752B (zh) 一种uart通信的波特率切换方法、装置及发起方终端
US20170357474A1 (en) Mode Switchable Audio Processor for Digital Audio
JP6422332B2 (ja) 電子機器、アクセサリー機器、その制御方法、および制御プログラム
CN111954123B (zh) 无线音频设备信息同步的方法、系统、介质及无线音频设备
KR102333306B1 (ko) 데이터 통신 방법 및 시스템, 전자 디바이스, 칩 및 저장 매체
KR20200079083A (ko) 전자 장치 및 이의 통신 데이터 링크를 스케쥴링하는 방법
TWI582688B (zh) 音訊傳輸系統及其音訊處理之方法
CN109709880B (zh) 投影机的控制方法及其控制系统
US9189059B2 (en) Communication apparatus, control method therefor, and computer-readable recording medium
JP4998280B2 (ja) 無線通信装置
US11523453B2 (en) Guided frequency setup for configuration of wireless receivers
CN107231582A (zh) 全双工数字对讲方法、对讲配件及全双工数字对讲系统
CN111479319B (zh) 一种通信方法以及装置
CN112996206B (zh) 一种频闪灯信息获取方法、装置和频闪灯及补光系统
KR20220109711A (ko) 상대방 전자 장치와 함께 광고 패킷을 방송하는 전자 장치 및 이의 동작 방법
CN114257904B (zh) 通信方法、通信系统、tws耳机及充电盒
KR101401430B1 (ko) 오디오 신호를 제어신호로 변환하는 프로토콜 및 리모컨 모듈
KR20190080625A (ko) 이중화 보드에서 마스터/슬레이브 설정방법 및 그 보드
JP5678226B1 (ja) デジタル回路システム及びブロックユニット
JP2018021875A (ja) メトロノーム
CN112104943A (zh) 一种地址传输方法、蓝牙芯片、蓝牙耳机以及电子设备
CN114245453A (zh) 时间同步方法、装置、tws耳机、计算机设备及存储介质