JP6795775B1 - Speaker device, rotation control program, and information processing system - Google Patents

Speaker device, rotation control program, and information processing system Download PDF

Info

Publication number
JP6795775B1
JP6795775B1 JP2020022020A JP2020022020A JP6795775B1 JP 6795775 B1 JP6795775 B1 JP 6795775B1 JP 2020022020 A JP2020022020 A JP 2020022020A JP 2020022020 A JP2020022020 A JP 2020022020A JP 6795775 B1 JP6795775 B1 JP 6795775B1
Authority
JP
Japan
Prior art keywords
rotation
speaker
angle
motor
acceleration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020022020A
Other languages
Japanese (ja)
Other versions
JP2021129183A (en
Inventor
善博 岡本
善博 岡本
雄貴 渡部
雄貴 渡部
創 下川
創 下川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Client Computing Ltd
Original Assignee
Fujitsu Client Computing Ltd
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 Fujitsu Client Computing Ltd filed Critical Fujitsu Client Computing Ltd
Priority to JP2020022020A priority Critical patent/JP6795775B1/en
Application granted granted Critical
Publication of JP6795775B1 publication Critical patent/JP6795775B1/en
Publication of JP2021129183A publication Critical patent/JP2021129183A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】スピーカの向きの検出機能を容易に実装できるようにする。【解決手段】スピーカ装置10は、スピーカ11と第1のモータ12と加速度センサ14と回転制御装置16とを有する。第1のモータ12は、水平な第1の回転軸を中心としてスピーカ11を回転させる。加速度センサ14は、スピーカ11に伴って回転する位置に取り付けられ、所定の軸方向の加速度を測定する。回転制御装置16は、第1のモータ12に回転を指示し、指示に従った第1のモータ12の回転が停止した後に加速度センサ14から加速度を示す情報を取得し、加速度を示す情報に基づいて、スピーカ11の向きと重力の方向との角度差を算出する。【選択図】図1PROBLEM TO BE SOLVED: To easily implement a speaker orientation detection function. A speaker device (10) includes a speaker (11), a first motor (12), an acceleration sensor (14), and a rotation control device (16). The first motor 12 rotates the speaker 11 about a horizontal first rotation axis. The acceleration sensor 14 is attached to a position that rotates with the speaker 11 and measures acceleration in a predetermined axial direction. The rotation control device 16 instructs the first motor 12 to rotate, acquires information indicating acceleration from the acceleration sensor 14 after the rotation of the first motor 12 according to the instruction is stopped, and is based on the information indicating acceleration. Then, the angle difference between the direction of the speaker 11 and the direction of gravity is calculated. [Selection diagram] Fig. 1

Description

本発明は、スピーカ装置、回転制御プログラム、および情報処理システムに関する。 The present invention relates to a speaker device, a rotation control program, and an information processing system.

ショッピングセンターなどの大型の施設では、施設内にいる複数の人物のうち、特定の人物に対してのみ音声を届けたい場合がある。その場合、当該人物にパラメトリックスピーカを向けて、パラメトリックスピーカから音声を出力することで、その人物にのみ音声を届けることができる。パラメトリックスピーカは、例えば超音波を用いて、鋭い指向性を有する音声を出力できるスピーカである。 In a large facility such as a shopping center, it may be desired to deliver audio only to a specific person among a plurality of people in the facility. In that case, by pointing the parametric speaker at the person and outputting the sound from the parametric speaker, the sound can be delivered only to that person. The parametric speaker is a speaker capable of outputting sound having sharp directivity by using, for example, ultrasonic waves.

パラメトリックスピーカを有するスピーカ装置は、例えばパラメトリックスピーカの向きを変えるためのモータと、そのモータの回転を制御する回転制御装置とを有する。回転制御装置は、目的の人物がいる方向にパラメトリックスピーカが向くように、モータに対して回転を指示する。指示に応じたモータの回転が停止すると、ホストコンピュータから送られるその人物向けの音声が、パラメトリックスピーカから出力される。 A speaker device having a parametric speaker has, for example, a motor for changing the direction of the parametric speaker and a rotation control device for controlling the rotation of the motor. The rotation control device instructs the motor to rotate so that the parametric speaker faces the direction in which the target person is. When the rotation of the motor in response to the instruction is stopped, the voice for the person sent from the host computer is output from the parametric speaker.

パラメトリックスピーカに関する技術としては、例えば利用者の耳位置の角度に基づいて、パラメトリックスピーカから出力される超音波の周波数を制御する音声通話装置が提案されている。 As a technique related to a parametric speaker, for example, a voice communication device that controls the frequency of ultrasonic waves output from the parametric speaker based on the angle of the user's ear position has been proposed.

特開2011−55076号公報Japanese Unexamined Patent Publication No. 2011-55076

パラメトリックスピーカの向きを変えるためのモータとしては、ステッピングモータを用いることができる。しかしステッピングモータは、例えば脱調によって、モータの回転量が、回転制御装置から指示された回転量とずれる可能性がある。このようなずれを放置すると、スピーカの向きのずれ量が徐々に増大し、声かけの対象である対象人物に音声を届けることができなくなる。 A stepping motor can be used as a motor for changing the direction of the parametric speaker. However, in the stepping motor, for example, due to step-out, the rotation amount of the motor may deviate from the rotation amount instructed by the rotation control device. If such a deviation is left unattended, the amount of deviation in the direction of the speaker gradually increases, and it becomes impossible to deliver the voice to the target person to be called.

そこで所定のタイミングでスピーカの実際の向きを検出することが考えられる。しかし、回転体の向きを検出するための一般的な設備では、外部にモジュール(エンコーダ、フォトインタラプタ、メカスイッチなど)の取り付けが求められ、スピーカ装置の構造設計上の制約となってしまう。構造設計の制約が大きいと、実装スペースに余裕があるスピーカ装置にしかスピーカの向きの検出機能を実装できず、スピーカの向きの検出機能を実装できるスピーカ装置が制限されてしまう。 Therefore, it is conceivable to detect the actual orientation of the speaker at a predetermined timing. However, in general equipment for detecting the orientation of a rotating body, it is required to attach a module (encoder, photointerruptor, mechanical switch, etc.) to the outside, which imposes restrictions on the structural design of the speaker device. If the structural design is severely restricted, the speaker orientation detection function can be mounted only on the speaker device having a sufficient mounting space, and the speaker device capable of mounting the speaker orientation detection function is limited.

1つの側面では、本件は、スピーカの向きの検出機能を容易に実装できるようにすることを目的とする。 In one aspect, the present case aims to facilitate the implementation of speaker orientation detection features.

1つの案では、スピーカと第1のモータと加速度センサと回転制御装置とを有するスピーカ装置が提供される。
第1のモータは、水平な第1の回転軸を中心としてスピーカを回転させる。加速度センサは、スピーカに伴って回転する位置に取り付けられ、所定の軸方向の加速度を測定する。回転制御装置は、第1のモータに回転を指示する。次に回転制御装置は、指示に従った第1のモータの回転が停止した後に加速度センサから加速度を示す情報を取得する。そして回転制御装置は、加速度を示す情報に基づいて、スピーカの向きと重力の方向との角度差を算出する。
One proposal provides a speaker device having a speaker, a first motor, an acceleration sensor, and a rotation control device.
The first motor rotates the speaker about a horizontal first rotation axis. The acceleration sensor is attached to a position that rotates with the speaker and measures acceleration in a predetermined axial direction. The rotation control device instructs the first motor to rotate. Next, the rotation control device acquires information indicating acceleration from the acceleration sensor after the rotation of the first motor according to the instruction is stopped. Then, the rotation control device calculates the angle difference between the direction of the speaker and the direction of gravity based on the information indicating the acceleration.

1態様によれば、スピーカの向きの検出機能を容易に実装できるようになる。 According to one aspect, the speaker orientation detection function can be easily implemented.

第1の実施の形態に係るスピーカ装置の一例を示す図である。It is a figure which shows an example of the speaker apparatus which concerns on 1st Embodiment. 声かけを行う情報処理システム構成の一例を示す図である。It is a figure which shows an example of the information processing system configuration which makes a call. スピーカ装置の構造の一例を示す図である。It is a figure which shows an example of the structure of a speaker apparatus. 回転制御装置およびコントローラのハードウェアの一構成例を示す図である。It is a figure which shows one configuration example of the hardware of a rotation control device and a controller. ホストコンピュータのハードウェアの一例を示す図である。It is a figure which shows an example of the hardware of a host computer. スピーカに対する位置と音圧レベルとの関係の一例を示す図である。It is a figure which shows an example of the relationship between the position with respect to a speaker, and a sound pressure level. 回転制御装置の機能の一例を示すブロック図である。It is a block diagram which shows an example of the function of the rotation control device. 重力の方向に回転したときの加速度センサの回転軸の一例を示す図である。It is a figure which shows an example of the rotation axis of an acceleration sensor when it rotates in the direction of gravity. 加速度センサの測定値を用いた重力の方向の角度差の算出方法の一例を示す図である。It is a figure which shows an example of the calculation method of the angle difference in the direction of gravity using the measured value of an acceleration sensor. ジャイロセンサの測定値を用いた重力の方向の角度差の算出方法の一例を示す図である。It is a figure which shows an example of the calculation method of the angle difference in the direction of gravity using the measured value of a gyro sensor. 原点復帰時の重力の方向の角度差の誤差の計算例を示す図である。It is a figure which shows the calculation example of the error of the angle difference in the direction of gravity at the time of returning to the origin. 水平方向の回転における原点方向の一例を示す図である。It is a figure which shows an example of the origin direction in the rotation in a horizontal direction. ジャイロセンサの測定値を用いた水平方向の角度差の算出方法の一例を示す図である。It is a figure which shows an example of the calculation method of the angle difference in the horizontal direction using the measured value of a gyro sensor. 水平方向の角度差の誤差の計算例を示す図である。It is a figure which shows the calculation example of the error of the angle difference in a horizontal direction. 電源投入時のスピーカ装置初期化処理の手順の一例を示すフローチャート(1/2)である。It is a flowchart (1/2) which shows an example of the procedure of the speaker device initialization processing at the time of power-on. 電源投入時のスピーカ装置初期化処理の手順の一例を示すフローチャート(2/2)である。It is a flowchart (2/2) which shows an example of the procedure of the speaker device initialization processing at the time of power-on. 声かけ用回転制御および原点復帰処理の手順の一例を示すフローチャート(1/2)である。It is a flowchart (1/2) which shows an example of the procedure of the rotation control for calling and the origin return processing. 声かけ用回転制御および原点復帰処理の手順の一例を示すフローチャート(2/2)である。It is a flowchart (2/2) which shows an example of the procedure of the rotation control for calling and the origin return processing. 声かけ前におけるスピーカの向きの補正方法の一例を示す図である。It is a figure which shows an example of the correction method of the direction of a speaker before a voice call. 声かけ前におけるスピーカの向きの制御手順の一例を示すフローチャートである。It is a flowchart which shows an example of the control procedure of the direction of a speaker before a voice call. 回転途中での補正を伴う水平方向回転処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the horizontal rotation processing which accompanies the correction in the middle of rotation. 回転途中での補正を伴う重力の方向回転処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the directional rotation process of gravity with the correction in the middle of rotation. ジャイロセンサを用いない場合の初期化処理の手順の一例を示すフローチャートである。It is a flowchart which shows an example of the procedure of the initialization processing when the gyro sensor is not used.

以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第1の実施の形態〕
まず第1の実施の形態について説明する。第1の実施の形態は、加速度センサまたは地磁気センサを用いて、スピーカの向きを検出できるようにしたスピーカ装置である。
Hereinafter, the present embodiment will be described with reference to the drawings. It should be noted that each embodiment can be implemented by combining a plurality of embodiments within a consistent range.
[First Embodiment]
First, the first embodiment will be described. The first embodiment is a speaker device capable of detecting the orientation of the speaker by using an acceleration sensor or a geomagnetic sensor.

図1は、第1の実施の形態に係るスピーカ装置の一例を示す図である。スピーカ装置10は、スピーカ11、第1のモータ12、第2のモータ13、加速度センサ14、地磁気センサ15、および回転制御装置16を有している。 FIG. 1 is a diagram showing an example of a speaker device according to the first embodiment. The speaker device 10 includes a speaker 11, a first motor 12, a second motor 13, an acceleration sensor 14, a geomagnetic sensor 15, and a rotation control device 16.

スピーカ11は、例えば超指向性を有するパラメトリックスピーカである。
第1のモータ12は、水平な第1の回転軸を中心としてスピーカ11を回転させる。水平な第1の回転軸を中心とする回転は、重力の方向(垂直とも呼ばれる)と平行な平面内での回転となるため重力の方向の回転と呼ぶこともできる。
The speaker 11 is, for example, a parametric speaker having super directivity.
The first motor 12 rotates the speaker 11 about a horizontal first rotation axis. The rotation centered on the first horizontal rotation axis is a rotation in a plane parallel to the direction of gravity (also called vertical), and therefore can also be called a rotation in the direction of gravity.

第2のモータ13は、重力の方向と平行な第2の回転軸を中心としてスピーカ11を回転させる。重力の方向と平行な第2の回転軸を中心とする回転は、水平平面内での回転となるため水平方向の回転と呼ぶこともできる。 The second motor 13 rotates the speaker 11 around a second rotation axis parallel to the direction of gravity. The rotation about the second rotation axis parallel to the direction of gravity is the rotation in the horizontal plane, so it can also be called the rotation in the horizontal direction.

加速度センサ14は、所定の軸方向の加速度を測定する。図1の例では、加速度センサ14は、X,Y,Zの3軸方向の加速度を測定している。また加速度センサ14は、スピーカ11に伴って回転する位置に取り付けられている。そのためスピーカ11の向きに応じて、加速度センサ14で計測される重力加速度の方向が変わる。 The acceleration sensor 14 measures acceleration in a predetermined axial direction. In the example of FIG. 1, the acceleration sensor 14 measures acceleration in the three axial directions of X, Y, and Z. Further, the acceleration sensor 14 is attached at a position where it rotates with the speaker 11. Therefore, the direction of the gravitational acceleration measured by the acceleration sensor 14 changes according to the orientation of the speaker 11.

地磁気センサ15は、スピーカ11に伴って回転する位置に取り付けられ、地磁気の方向を測定する。
回転制御装置16は、例えば記憶部16aと処理部16bとを有する。記憶部16aは、メモリまたはストレージ装置である。処理部16bは、プロセッサまたは演算回路である。記憶部16aには、例えば加速度センサ14から取得した加速度を示す情報、地磁気センサ15から取得した地磁気の方向を示す情報、原点方位を示す情報などを記憶する。また記憶部16aは、処理部16bが実行する処理を記述した回転制御プログラムを記憶することができる。例えば処理部16bは、記憶部16a内の回転制御プログラムを実行することで、スピーカ11の回転を制御する。すなわち、以下の説明において回転制御装置16が実行する処理は、処理部16bが回転制御プログラムを実行することによって実現される。
The geomagnetic sensor 15 is attached to a position that rotates with the speaker 11 and measures the direction of the geomagnetism.
The rotation control device 16 has, for example, a storage unit 16a and a processing unit 16b. The storage unit 16a is a memory or storage device. The processing unit 16b is a processor or an arithmetic circuit. The storage unit 16a stores, for example, information indicating acceleration acquired from the acceleration sensor 14, information indicating the direction of geomagnetism acquired from the geomagnetic sensor 15, information indicating the direction of origin, and the like. Further, the storage unit 16a can store a rotation control program that describes the processing executed by the processing unit 16b. For example, the processing unit 16b controls the rotation of the speaker 11 by executing the rotation control program in the storage unit 16a. That is, the process executed by the rotation control device 16 in the following description is realized by the processing unit 16b executing the rotation control program.

回転制御装置16は、第1のモータ12と第2のモータ13との回転を制御する。また回転制御装置16は、加速度センサ14の測定値に基づいて、スピーカ11の重力の方向の角度差を計算する。また回転制御装置16は、地磁気センサ15の測定値に基づいて、スピーカ11の水平方向の角度差を計算する。ここでスピーカ11の向きは、例えばスピーカ11の放射面前方(法線方向)である。スピーカ11の重力の方向の角度差は、例えばスピーカ11の向きと重力の方向との成す角(角度差)で表される。またスピーカ11の水平方向の角度差は、例えばスピーカ11の向きを水平にした場合のスピーカ11の向きと、予め設定された原点方位との成す角(角度差)で表される。 The rotation control device 16 controls the rotation of the first motor 12 and the second motor 13. Further, the rotation control device 16 calculates the angle difference in the direction of gravity of the speaker 11 based on the measured value of the acceleration sensor 14. Further, the rotation control device 16 calculates the horizontal angle difference of the speaker 11 based on the measured value of the geomagnetic sensor 15. Here, the direction of the speaker 11 is, for example, the front of the radiation surface (normal direction) of the speaker 11. The angle difference in the direction of gravity of the speaker 11 is represented by, for example, the angle (angle difference) formed by the direction of the speaker 11 and the direction of gravity. Further, the angle difference in the horizontal direction of the speaker 11 is represented by, for example, an angle (angle difference) formed by the orientation of the speaker 11 when the orientation of the speaker 11 is horizontal and the preset origin orientation.

例えば回転制御装置16は、第1のモータ12に回転を指示し、指示に従った第1のモータ12の回転が停止した後に加速度センサ14から加速度を示す情報を取得する。そして回転制御装置16は、取得した加速度を示す情報に基づいて、スピーカ11の重力の方向の角度差(θy)を算出する。重力の方向の角度差(θy)の算出方法については、第2の実施の形態において詳細に説明する。 For example, the rotation control device 16 instructs the first motor 12 to rotate, and after the rotation of the first motor 12 according to the instruction is stopped, the rotation control device 16 acquires information indicating acceleration from the acceleration sensor 14. Then, the rotation control device 16 calculates the angle difference (θ y ) in the direction of gravity of the speaker 11 based on the acquired information indicating the acceleration. The method of calculating the angle difference (θ y ) in the direction of gravity will be described in detail in the second embodiment.

このようにして、スピーカ11の重力の方向の角度差が、加速度センサ14の測定値に基づいて検知可能となる。加速度センサ14は、例えば1つのIC(Integrated Circuit)チップに収まる大きさであり、実装場所についての自由度が高い。すなわち加速度センサ14を、スピーカ11に伴って回転する位置に取り付けることは容易である。従って、加速度センサ14の測定値に基づいてスピーカ11の重力の方向の角度差を検知できるようにしたことで、スピーカ装置10へのスピーカ11の向きの検知機能の実装が容易となっている。 In this way, the angle difference in the direction of gravity of the speaker 11 can be detected based on the measured value of the acceleration sensor 14. The acceleration sensor 14 has a size that can be accommodated in, for example, one IC (Integrated Circuit) chip, and has a high degree of freedom regarding the mounting location. That is, it is easy to attach the acceleration sensor 14 to a position that rotates with the speaker 11. Therefore, by making it possible to detect the angle difference in the direction of gravity of the speaker 11 based on the measured value of the acceleration sensor 14, it is easy to implement the detection function of the orientation of the speaker 11 on the speaker device 10.

また回転制御装置16は、スピーカ11の重力の方向の角度差に基づいて、スピーカ11の重力の方向の回転角と、スピーカ11の第1の回転指示の角度である第1の指定角度との誤差(第1の誤差)を算出することもできる。例えば回転制御装置16は、第1の指定角度だけスピーカ11を第1の回転軸を中心として回転させる第1の回転指示を第1のモータ12に対して出力する。回転制御装置16は、回転終了後のスピーカ11の重力の方向の角度差に基づいて、第1の回転指示に応じたスピーカ11の回転角と第1の指定角度との第1の誤差を算出する。例えばスピーカ11が重力の方向の向いている状態が初期状態の場合において、回転制御装置16は、初期状態からの第1の回転指示を第1のモータ12に対して出力する。この場合、回転制御装置16は、回転終了後のスピーカ11の重力の方向の角度差と第1の指定角度との差分を、第1の誤差として算出する。 Further, the rotation control device 16 sets the rotation angle of the speaker 11 in the direction of gravity and the first designated angle which is the angle of the first rotation instruction of the speaker 11 based on the angle difference in the direction of gravity of the speaker 11. The error (first error) can also be calculated. For example, the rotation control device 16 outputs a first rotation instruction to the first motor 12 to rotate the speaker 11 about the first rotation axis by the first designated angle. The rotation control device 16 calculates a first error between the rotation angle of the speaker 11 and the first designated angle in response to the first rotation instruction, based on the angle difference in the direction of gravity of the speaker 11 after the rotation is completed. To do. For example, when the state in which the speaker 11 is oriented in the direction of gravity is the initial state, the rotation control device 16 outputs the first rotation instruction from the initial state to the first motor 12. In this case, the rotation control device 16 calculates the difference between the angle difference in the direction of gravity of the speaker 11 after the rotation is completed and the first designated angle as the first error.

これにより、スピーカ11を重力の方向に回転させたときの回転誤差を容易に算出可能となる。第1の誤差を算出した場合、回転制御装置16は、その第1の誤差を減少させる方向へ第1の誤差の分だけスピーカ11を回転させる補正回転指示を、第1のモータ12に出力してもよい。これにより、回転誤差が補正され、スピーカ11の向きを目的の方向に正確に合わせることが可能となる。 This makes it possible to easily calculate the rotation error when the speaker 11 is rotated in the direction of gravity. When the first error is calculated, the rotation control device 16 outputs a correction rotation instruction for rotating the speaker 11 by the amount of the first error in the direction of reducing the first error to the first motor 12. You may. As a result, the rotation error is corrected, and the direction of the speaker 11 can be accurately adjusted to the target direction.

回転制御装置16は、第1の誤差の補正を、例えばスピーカ11の向きを原点復帰(原点方向に向けること)させる際に実施する。原点復帰の場合、原点復帰のための回転指示後のスピーカ11の重力の方向の角度差が、第1の誤差となる。 The rotation control device 16 performs the correction of the first error, for example, when the direction of the speaker 11 is returned to the origin (direction toward the origin). In the case of home return, the angle difference in the direction of gravity of the speaker 11 after the rotation instruction for home return is the first error.

回転制御装置16は、スピーカ11の水平方向の角度差の計算を、例えば次のような手順で実施する。まず回転制御装置16は、第2のモータ13に回転を指示し、指示に従った第2のモータ13の回転が停止した後に地磁気センサ15から地磁気の方向(N極またはS極の方向)を示す情報を取得する。そして回転制御装置16は、地磁気の方向を示す情報に基づいて、スピーカ11の向きを水平にした場合のスピーカ11の向きと、水平方向に予め設定された原点方位との角度差(水平方向の角度差)を算出する。 The rotation control device 16 calculates the horizontal angle difference of the speaker 11 by, for example, the following procedure. First, the rotation control device 16 instructs the second motor 13 to rotate, and after the rotation of the second motor 13 according to the instruction is stopped, the geomagnetic sensor 15 determines the direction of the geomagnetism (direction of the north pole or the south pole). Get the information shown. Then, the rotation control device 16 has an angle difference (horizontal direction) between the orientation of the speaker 11 when the orientation of the speaker 11 is horizontal and the origin orientation preset in the horizontal direction based on the information indicating the geomagnetic direction. Angle difference) is calculated.

例えば原点方位が磁南(S極方向)であるものとする。また地磁気センサ15は磁北(N極)方向を示す情報を出力するものとする。この場合、回転制御装置16は、地磁気センサ15が出力する地磁気の方向と「180°」反対の方向を原点方位と認識する。また地磁気センサ15が出力する地磁気の方向を示す情報は、スピーカ11の向きに対する相対的な地磁気の方向が示されている。すなわちスピーカ11の水平方向の角度差が示されている。従って回転制御装置16は、地磁気の方向を示す情報に基づいて、原点方位(地磁気の方向と180°の差がある)と、スピーカ11の向きを水平にした場合のスピーカ11の向きとの角度差を算出することができる。例えば反時計回りを正の回転方向としたとき、スピーカ11の向きを水平にした場合のスピーカ11の向きに対する地磁気(N極)の方向が「100°」の方向であれば、スピーカ11の向きに対する原点方位の方向は「−80°」の方向となる。すなわち原点方位とスピーカ11の向きとの角度差(水平方向の角度差)は「80°」となる。 For example, it is assumed that the origin direction is magnetic south (S pole direction). Further, the geomagnetic sensor 15 shall output information indicating the magnetic north (N pole) direction. In this case, the rotation control device 16 recognizes the direction "180 °" opposite to the direction of the geomagnetism output by the geomagnetic sensor 15 as the origin direction. Further, the information indicating the direction of the geomagnetism output by the geomagnetic sensor 15 indicates the direction of the geomagnetism relative to the direction of the speaker 11. That is, the horizontal angle difference of the speaker 11 is shown. Therefore, the rotation control device 16 has an angle between the origin orientation (there is a difference of 180 ° from the geomagnetic direction) and the orientation of the speaker 11 when the orientation of the speaker 11 is horizontal, based on the information indicating the direction of the geomagnetism. The difference can be calculated. For example, when the counterclockwise direction is a positive rotation direction, the direction of the speaker 11 is the direction of the speaker 11 if the direction of the geomagnetism (N pole) with respect to the direction of the speaker 11 is "100 °" when the direction of the speaker 11 is horizontal. The direction of the origin orientation with respect to is the direction of "-80 °". That is, the angle difference (horizontal angle difference) between the origin direction and the direction of the speaker 11 is "80 °".

このようにして、スピーカ11の水平方向の角度差が、地磁気センサ15の測定値に基づいて検知可能となる。地磁気センサ15は、加速度センサ14と同様に、例えば1つのICチップに収まる大きさであり、実装場所についての自由度が高い。すなわち地磁気センサ15を、スピーカ11に伴って回転する位置に取り付けることは容易である。従って、地磁気センサ15の測定値に基づいてスピーカ11の水平方向の角度差を検知できるようにしたことで、スピーカ11の向きの検知機能の実装が容易となっている。 In this way, the horizontal angle difference of the speaker 11 can be detected based on the measured value of the geomagnetic sensor 15. Like the acceleration sensor 14, the geomagnetic sensor 15 has a size that can be accommodated in, for example, one IC chip, and has a high degree of freedom regarding the mounting location. That is, it is easy to attach the geomagnetic sensor 15 to a position that rotates with the speaker 11. Therefore, by making it possible to detect the angle difference in the horizontal direction of the speaker 11 based on the measured value of the geomagnetic sensor 15, it is easy to implement the direction detection function of the speaker 11.

また回転制御装置16は、スピーカ11の水平方向の角度差に基づいて、スピーカ11の水平方向の回転角と、スピーカ11の水平方向の第2の回転指示の角度である第2の指定角度との誤差(第2の誤差)を算出することもできる。例えば回転制御装置16は、第2の指定角度だけスピーカ11を第2の回転軸を中心として回転させる第2の回転指示を第2のモータ13に対して出力する。そして回転制御装置16は、スピーカ11の水平方向の角度差に基づいて、第2の回転指示に応じたスピーカ11の回転角と第2の指定角度との第2の誤差を算出する。 Further, the rotation control device 16 has a horizontal rotation angle of the speaker 11 and a second designated angle which is a second horizontal rotation instruction angle of the speaker 11 based on the horizontal angle difference of the speaker 11. The error (second error) can also be calculated. For example, the rotation control device 16 outputs a second rotation instruction to the second motor 13 to rotate the speaker 11 about the second rotation axis by a second designated angle. Then, the rotation control device 16 calculates a second error between the rotation angle of the speaker 11 and the second designated angle in response to the second rotation instruction, based on the angle difference in the horizontal direction of the speaker 11.

これにより、スピーカ11を水平方向に回転させたときの回転誤差を容易に算出可能となる。第2の誤差を算出した場合、回転制御装置16は、その第2の誤差を減少させる方向へ第2の誤差の分だけスピーカ11を回転させる補正回転指示を第2のモータ13に出力してもよい。これにより、回転誤差が補正され、スピーカ11の向きを目的の方向に正確に合わせることが可能となる。 This makes it possible to easily calculate the rotation error when the speaker 11 is rotated in the horizontal direction. When the second error is calculated, the rotation control device 16 outputs a correction rotation instruction to the second motor 13 to rotate the speaker 11 by the amount of the second error in the direction of reducing the second error. May be good. As a result, the rotation error is corrected, and the direction of the speaker 11 can be accurately adjusted to the target direction.

スピーカ装置10には、回転の角速度を計測するジャイロセンサを取り付けることも可能である。ジャイロセンサは、スピーカ11に伴って回転する位置に取り付けられる。回転制御装置16は、ジャイロセンサを用いて、スピーカ11の回転中に回転角を計算し、誤差を補正することができる。 It is also possible to attach a gyro sensor that measures the angular velocity of rotation to the speaker device 10. The gyro sensor is attached to a position that rotates with the speaker 11. The rotation control device 16 can calculate the rotation angle during the rotation of the speaker 11 and correct the error by using the gyro sensor.

例えば回転制御装置16は、第1の指定角度に応じた数のパルス信号を第1のモータ12に出力する。次に回転制御装置16は、スピーカ11の第1の回転軸を中心とした回転中にジャイロセンサから定期的に角速度を示す情報を取得する。そして回転制御装置16は、取得した角速度を示す情報に基づいて、スピーカ11の第1の回転軸を中心とした回転角を算出する。回転制御装置16は、所定のタイミングまでに出力したパルス信号の数に1パルス当りの第1のモータ12の回転角を乗算して得られる角度と、算出した回転角との差分を計算する。そして回転制御装置16は、算出した差分に応じて、所定のタイミング以後に出力するパルス数を補正する。例えば回転制御装置16は、算出した回転角が、出力したパルス信号の数に応じた角度に満たない場合、その後に出力するパルス数を増加させることで、誤差を補正する。 For example, the rotation control device 16 outputs a number of pulse signals corresponding to the first designated angle to the first motor 12. Next, the rotation control device 16 periodically acquires information indicating the angular velocity from the gyro sensor during rotation about the first rotation axis of the speaker 11. Then, the rotation control device 16 calculates the rotation angle around the first rotation axis of the speaker 11 based on the acquired information indicating the angular velocity. The rotation control device 16 calculates the difference between the angle obtained by multiplying the number of pulse signals output by a predetermined timing by the rotation angle of the first motor 12 per pulse and the calculated rotation angle. Then, the rotation control device 16 corrects the number of pulses to be output after a predetermined timing according to the calculated difference. For example, when the calculated rotation angle is less than the angle corresponding to the number of output pulse signals, the rotation control device 16 corrects the error by increasing the number of pulses output thereafter.

このようにジャイロセンサの測定値を用いることで、スピーカ11の回転中であっても回転角を算出でき、回転中に誤差を補正することができる。しかもジャイロセンサは、加速度センサ14または地磁気センサ15と同様にICチップに収まる程度の大きさであり、実装が容易である。 By using the measured value of the gyro sensor in this way, the rotation angle can be calculated even during the rotation of the speaker 11, and the error can be corrected during the rotation. Moreover, the gyro sensor has a size that fits in the IC chip like the acceleration sensor 14 or the geomagnetic sensor 15, and is easy to mount.

回転制御装置16は、例えば重力の方向の回転の第1の指定角度に応じた回転を加速区間、等速区間、および減速区間に分けて制御してもよい。この場合、回転制御装置16は、加速区間では、パルス信号の出力間隔を時間経過と共に短くする。また回転制御装置16は、等速区間では、一定間隔でパルス信号を出力する。さらに回転制御装置16は、減速区間では、パルス信号の出力間隔を時間経過と共に長くする。 The rotation control device 16 may control the rotation according to the first designated angle of the rotation in the direction of gravity by dividing it into an acceleration section, a constant velocity section, and a deceleration section. In this case, the rotation control device 16 shortens the output interval of the pulse signal with the passage of time in the acceleration section. Further, the rotation control device 16 outputs a pulse signal at regular intervals in the constant velocity section. Further, the rotation control device 16 lengthens the output interval of the pulse signal with the passage of time in the deceleration section.

回転制御装置16は、例えば加速区間、等速区間、および減速区間の少なくとも1つの区間に応じたパルス信号の出力完了時を、誤差の補正を行う所定のタイミングとする。これにより、回転誤差が生じても、スピーカ11を滑らかに回転させることができる。 The rotation control device 16 sets a predetermined timing for correcting the error, for example, when the output of the pulse signal corresponding to at least one section of the acceleration section, the constant velocity section, and the deceleration section is completed. As a result, the speaker 11 can be smoothly rotated even if a rotation error occurs.

〔第2の実施の形態〕
次に第2の実施の形態について説明する。第2の実施の形態は、パラメトリックスピーカを用いて特定の人物に声かけを行う情報処理システムにおいて、パラメトリックスピーカの向きの誤差を適切に補正するものである。
[Second Embodiment]
Next, the second embodiment will be described. In the second embodiment, in an information processing system that uses a parametric speaker to speak to a specific person, an error in the orientation of the parametric speaker is appropriately corrected.

図2は、声かけを行う情報処理システム構成の一例を示す図である。図2に示される情報処理システムは、例えば店舗などの施設に設置される。情報処理システムが設置された施設内の対象人物21は、例えば施設内で怪しい挙動を示す人物である、声かけの対象となる人物である。また情報処理システムが設置された施設内には、カメラ42とスピーカ装置30とが設置されている。図2に示される情報処理システムは、カメラ42によって対象人物21を検知し、スピーカ装置30が有するスピーカによって対象人物21に向けて音声を出力する。 FIG. 2 is a diagram showing an example of an information processing system configuration for calling out. The information processing system shown in FIG. 2 is installed in a facility such as a store. The target person 21 in the facility where the information processing system is installed is, for example, a person who shows suspicious behavior in the facility and is a person to be called out. A camera 42 and a speaker device 30 are installed in the facility where the information processing system is installed. The information processing system shown in FIG. 2 detects the target person 21 by the camera 42, and outputs sound to the target person 21 by the speaker included in the speaker device 30.

ホストコンピュータ300は、対象人物21の検出とスピーカ装置30の制御とを行う。ホストコンピュータ300は、カメラ42の撮影した画像(映像でもよい)を取得し、対象人物21を検出する。またホストコンピュータ300は、コントローラ200を介してスピーカ装置30から出力する音声を制御する。例えばホストコンピュータ300は、スピーカ装置30から出力する音声の大きさや内容(音声ファイル)を決定し、対応する音声信号をスピーカ装置30に送信する。 The host computer 300 detects the target person 21 and controls the speaker device 30. The host computer 300 acquires an image (or video) taken by the camera 42 and detects the target person 21. Further, the host computer 300 controls the sound output from the speaker device 30 via the controller 200. For example, the host computer 300 determines the size and content (audio file) of the sound output from the speaker device 30, and transmits the corresponding voice signal to the speaker device 30.

またホストコンピュータ300は、コントローラ200を介してスピーカ装置30が有するスピーカの放射部の向きを指示する。例えばホストコンピュータ300は、対象人物21を撮影した画像に基づいて、対象人物21とスピーカ装置30との相対的な位置関係(相対位置)を特定する。なおスピーカ装置30が設置された位置とスピーカ装置30の水平方向の回転における正面の方向(方位)とは、予めホストコンピュータ300に設定されている。次にホストコンピュータ300は、対象人物21とスピーカ装置30との相対位置に基づいて、スピーカ装置30が有するスピーカを対象人物21に向けるための回転角を算出する。ホストコンピュータ300は、算出した回転角をスピーカ装置30に通知する。スピーカ装置30は、通知された回転角に応じた回転数だけモータを回転させる。そしてホストコンピュータ300は、回転指示に応じたモータの回転終了後に、スピーカから対象人物21向けに出力する音声の音声信号を、スピーカ装置30に送信する。 Further, the host computer 300 instructs the direction of the radiation portion of the speaker included in the speaker device 30 via the controller 200. For example, the host computer 300 specifies the relative positional relationship (relative position) between the target person 21 and the speaker device 30 based on the captured image of the target person 21. The position where the speaker device 30 is installed and the front direction (direction) in the horizontal rotation of the speaker device 30 are set in advance in the host computer 300. Next, the host computer 300 calculates the rotation angle for directing the speaker of the speaker device 30 toward the target person 21 based on the relative position between the target person 21 and the speaker device 30. The host computer 300 notifies the speaker device 30 of the calculated rotation angle. The speaker device 30 rotates the motor by the number of rotations corresponding to the notified rotation angle. Then, the host computer 300 transmits an audio signal of the voice output from the speaker to the target person 21 to the speaker device 30 after the rotation of the motor in response to the rotation instruction is completed.

次に、スピーカ装置30の構造について説明する。
図3は、スピーカ装置の構造の一例を示す図である。スピーカ装置30は、土台34と支柱35とによって天井に設置されている。支柱35は、土台34の中心から鉛直下方向に伸びる円柱状の支柱である。支柱35は、モータ32aによって回転する。モータ32aによる支柱35の回転は、土台34の中心を通り鉛直方向に伸びる水平回転軸37aを中心とする回転の角変位の変動である。水平回転軸37aを中心とする回転の角変位の変動を水平方向の回転といい、水平回転軸37aを中心とする回転の角変位を水平方向の角変位ということがある。なおモータ32aは、第1の実施の形態における第2のモータ13(図1参照)の一例である。
Next, the structure of the speaker device 30 will be described.
FIG. 3 is a diagram showing an example of the structure of the speaker device. The speaker device 30 is installed on the ceiling by a base 34 and a support column 35. The strut 35 is a columnar strut extending vertically downward from the center of the base 34. The support column 35 is rotated by the motor 32a. The rotation of the support column 35 by the motor 32a is a variation in the angular displacement of the rotation about the horizontal rotation axis 37a extending in the vertical direction through the center of the base 34. The fluctuation of the angular displacement of the rotation about the horizontal rotation axis 37a is called the horizontal rotation, and the angular displacement of the rotation about the horizontal rotation axis 37a is sometimes called the horizontal angular displacement. The motor 32a is an example of the second motor 13 (see FIG. 1) in the first embodiment.

支柱35には、スピーカ33が設置されている。スピーカ33は、モータ32bの軸によって回転する。モータ32bによるスピーカ33の回転は、支柱35に対して垂直に伸びる垂直回転軸37bを中心とする回転の角変位の変動である。なお、垂直回転軸37bを中心とする回転の角変位の変動を重力の方向の回転といい、垂直回転軸37bを中心とする回転の角変位を重力の方向の角変位ということがある。なおモータ32bは、第1の実施の形態における第1のモータ12(図1参照)の一例である。 A speaker 33 is installed on the support column 35. The speaker 33 is rotated by the shaft of the motor 32b. The rotation of the speaker 33 by the motor 32b is a variation in the angular displacement of the rotation about the vertical rotation shaft 37b extending perpendicular to the support column 35. The fluctuation of the angular displacement of rotation about the vertical rotation axis 37b is called the rotation in the direction of gravity, and the angular displacement of the rotation about the vertical rotation axis 37b is sometimes called the angular displacement in the direction of gravity. The motor 32b is an example of the first motor 12 (see FIG. 1) in the first embodiment.

スピーカ33は、超指向性を有するパラメトリックスピーカである。スピーカ33は、放射部33aとスピーカ基板33bとセンサユニット31とを有する。放射部33aは、振動板を振動させ音声を出力する。スピーカ基板33bは、放射部33aの振動板を振動させる電気信号を放射部33aに入力する電子回路基板である。なおスピーカ33の向きとは、具体的には放射部33aの前面側の法線方向を指す。 The speaker 33 is a parametric speaker having super directivity. The speaker 33 has a radiation unit 33a, a speaker substrate 33b, and a sensor unit 31. The radiation unit 33a vibrates the diaphragm and outputs sound. The speaker board 33b is an electronic circuit board that inputs an electric signal that vibrates the diaphragm of the radiation unit 33a to the radiation unit 33a. The direction of the speaker 33 specifically refers to the normal direction on the front side of the radiation unit 33a.

センサユニット31は、スピーカ基板33b上に実装されている。センサユニット31は、スピーカ33の向きを測定するための複数のセンサを内蔵している。センサユニット31は、例えばIC化されており、スピーカ基板33b上の狭いスペースにも実装可能である。 The sensor unit 31 is mounted on the speaker board 33b. The sensor unit 31 has a plurality of sensors for measuring the orientation of the speaker 33. The sensor unit 31 is made into an IC, for example, and can be mounted in a narrow space on the speaker substrate 33b.

土台34には、回転制御装置100が収納されている。回転制御装置100は、例えばコンピュータの機能が実装されたプリント基板である。回転制御装置100は、コントローラ200を介してホストコンピュータ300に接続されている。回転制御装置100は、ホストコンピュータ300の指示に応じて、スピーカ33の向きを変えるためのモータ32a,32bを回転させる。例えば回転制御装置100は、ホストコンピュータ300から通知された角度分だけ、モータ32a,32bを回転させる。 The rotation control device 100 is housed in the base 34. The rotation control device 100 is, for example, a printed circuit board on which a computer function is mounted. The rotation control device 100 is connected to the host computer 300 via the controller 200. The rotation control device 100 rotates the motors 32a and 32b for changing the direction of the speaker 33 in response to the instruction of the host computer 300. For example, the rotation control device 100 rotates the motors 32a and 32b by the angle notified by the host computer 300.

なお第2の実施の形態では、モータ32a,32bはステッピングモータであるものとする。この場合、回転制御装置100は、ホストコンピュータ300から通知された角度分のパルス信号をモータ32a,32bに出力することで、モータ32a,32bを回転させる。 In the second embodiment, the motors 32a and 32b are stepping motors. In this case, the rotation control device 100 rotates the motors 32a and 32b by outputting the pulse signals for the angles notified from the host computer 300 to the motors 32a and 32b.

図4は、回転制御装置およびコントローラのハードウェアの一構成例を示す図である。回転制御装置100は、マイクロコントローラ(マイコン)101によって装置全体が制御されている。マイコン101は、プロセッサ101aとRAM(Random Access Memory)101bとROM(Read Only Memory)101cとを有する。プロセッサ101aは、ROM101cに格納されたファームウェア(制御用のソフトウェア)をRAM101bに読み込み、ファームウェアに従ってスピーカ33の回転制御を行う。プロセッサ101aは、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、またはDSP(Digital Signal Processor)である。プロセッサ101aがプログラムを実行することで実現する機能の少なくとも一部を、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現してもよい。 FIG. 4 is a diagram showing a configuration example of the hardware of the rotation control device and the controller. The entire rotation control device 100 is controlled by a microcontroller (microcomputer) 101. The microcomputer 101 has a processor 101a, a RAM (Random Access Memory) 101b, and a ROM (Read Only Memory) 101c. The processor 101a reads the firmware (control software) stored in the ROM 101c into the RAM 101b, and controls the rotation of the speaker 33 according to the firmware. The processor 101a is, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), or a DSP (Digital Signal Processor). At least a part of the functions realized by the processor 101a by executing the program may be realized by an electronic circuit such as an ASIC (Application Specific Integrated Circuit) or a PLD (Programmable Logic Device).

RAM101bは、回転制御装置100の主記憶装置として使用される、揮発性の半導体記憶装置である。RAM101bには、プロセッサ101aに実行させるプログラムの少なくとも一部が一時的に格納される。また、RAM101bには、プロセッサ101aによる処理に利用する各種データが格納される。 The RAM 101b is a volatile semiconductor storage device used as the main storage device of the rotation control device 100. At least a part of the program to be executed by the processor 101a is temporarily stored in the RAM 101b. Further, the RAM 101b stores various data used for processing by the processor 101a.

ROM101cは、ファームウェアを記憶する不揮発性の半導体記憶装置である。ROM101cとしては、EPROM(Erasable Programmable Read Only Memory)またはEEPROM(Electrically Erasable Programmable Read-Only Memory)を用いることができる。 The ROM 101c is a non-volatile semiconductor storage device that stores firmware. As the ROM 101c, EPROM (Erasable Programmable Read Only Memory) or EEPROM (Electrically Erasable Programmable Read-Only Memory) can be used.

マイコン101には、機器接続インタフェース102、モータドライバ103,104および接続インタフェース105が接続されている。
機器接続インタフェース102には、センサユニット31が接続されている。センサユニット31は、例えば、加速度センサ31a、ジャイロセンサ31b、および地磁気センサ31cを有する。加速度センサ31aは、3軸方向の加速度を測定するセンサである。ジャイロセンサ31bは、3軸方向の回転速度(角速度)を計測するセンサである。ジャイロセンサ31bは、角速度センサとも呼ばれる。地磁気センサ31cは、地磁気の3次元での方向(例えばS極の方向)を計測するセンサである。地磁気の方向は、例えば3軸方向の成分を有するベクトルで表される。機器接続インタフェース102は、センサユニット31内の各センサが測定した値を、マイコン101に送信する。
The device connection interface 102, the motor drivers 103 and 104, and the connection interface 105 are connected to the microcomputer 101.
A sensor unit 31 is connected to the device connection interface 102. The sensor unit 31 includes, for example, an acceleration sensor 31a, a gyro sensor 31b, and a geomagnetic sensor 31c. The acceleration sensor 31a is a sensor that measures acceleration in three axial directions. The gyro sensor 31b is a sensor that measures the rotational speed (angular velocity) in the three axial directions. The gyro sensor 31b is also called an angular velocity sensor. The geomagnetic sensor 31c is a sensor that measures the three-dimensional direction of the geomagnetism (for example, the direction of the S pole). The geomagnetic direction is represented by, for example, a vector having components in the triaxial direction. The device connection interface 102 transmits the values measured by each sensor in the sensor unit 31 to the microcomputer 101.

モータドライバ103は、スピーカ33を水平方向に回転させるためのモータ32aに接続されている。モータドライバ103は、マイコン101からパルス信号を受け取りモータ32aの軸を回転させる。 The motor driver 103 is connected to a motor 32a for rotating the speaker 33 in the horizontal direction. The motor driver 103 receives a pulse signal from the microcomputer 101 and rotates the shaft of the motor 32a.

モータドライバ104は、スピーカ33を重力の方向に回転させるためのモータ32bに接続されている。モータドライバ104は、マイコン101からパルス信号を受け取りモータ32bの軸を回転させる。 The motor driver 104 is connected to a motor 32b for rotating the speaker 33 in the direction of gravity. The motor driver 104 receives a pulse signal from the microcomputer 101 and rotates the shaft of the motor 32b.

接続インタフェース105は、コントローラ200と接続するためのインタフェースである。接続インタフェース106が用いる規格としては、例えばRS−485などがある。
回転制御装置100は、以上のようなハードウェア構成によって、第2の実施の形態の処理機能を実現することができる。なお、第1の実施の形態に示した回転制御装置16も、図4に示した回転制御装置100と同様のハードウェアにより実現することができる。またプロセッサ101aは、第1の実施の形態に示した処理部16bの一例である。RAM101bまたはROM101cは、第1の実施の形態に示した記憶部16aの一例である。センサユニット31は、第1の実施の形態に示した加速度センサ14、地磁気センサ15などの複数のセンサを内蔵するセンサの一例である。
The connection interface 105 is an interface for connecting to the controller 200. Examples of the standard used by the connection interface 106 include RS-485.
The rotation control device 100 can realize the processing function of the second embodiment by the hardware configuration as described above. The rotation control device 16 shown in the first embodiment can also be realized by the same hardware as the rotation control device 100 shown in FIG. Further, the processor 101a is an example of the processing unit 16b shown in the first embodiment. The RAM 101b or ROM 101c is an example of the storage unit 16a shown in the first embodiment. The sensor unit 31 is an example of a sensor incorporating a plurality of sensors such as the acceleration sensor 14 and the geomagnetic sensor 15 shown in the first embodiment.

回転制御装置100は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。回転制御装置100に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、回転制御装置100のプロセッサ101aに実行させるプログラムを、ROM101cにファームウェアとして格納しておくことができる。またプロセッサ101aに実行させるプログラムを、光ディスク、メモリ装置、メモリカードなどの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ101aからの制御により、ROM101cに書き込まれた後、実行可能となる。 The rotation control device 100 realizes the processing function of the second embodiment, for example, by executing a program recorded on a computer-readable recording medium. The program describing the processing content to be executed by the rotation control device 100 can be recorded on various recording media. For example, a program to be executed by the processor 101a of the rotation control device 100 can be stored in the ROM 101c as firmware. Further, the program to be executed by the processor 101a can be recorded on a portable recording medium such as an optical disk, a memory device, or a memory card. The program stored in the portable recording medium can be executed after being written to the ROM 101c, for example, under the control of the processor 101a.

コントローラ200は、ホストコンピュータ300と周辺機器とを接続するためのハブ201を有する。ハブ201は、例えばUSB(Universal Serial Bus)などの規格によってホストコンピュータ300と接続されている。ハブ201に接続されている周辺機器としては、シリアルバス202、DAC(Digital Analog Converter)204および接続インタフェース206がある。 The controller 200 has a hub 201 for connecting the host computer 300 and peripheral devices. The hub 201 is connected to the host computer 300 by a standard such as USB (Universal Serial Bus). Peripheral devices connected to the hub 201 include a serial bus 202, a DAC (Digital Analog Converter) 204, and a connection interface 206.

シリアルバス202は、ハブ201とDPOT(Digital POTentiometer)203とを接続するためのバスである。シリアルバス202が用いる規格としては、例えばI2C(登録商標)などがある。DPOT203は、信号に応じて抵抗値が変化する可変抵抗器である。DPOT203の抵抗値によってAMP(AMPlifier)205に流れる電流が制御される。 The serial bus 202 is a bus for connecting the hub 201 and the DPOT (Digital POTentiometer) 203. Examples of the standard used by the serial bus 202 include I2C (registered trademark). DPOT203 is a variable resistor whose resistance value changes according to a signal. The current flowing through the AMP (AMPlifier) 205 is controlled by the resistance value of DPOT203.

DAC204は、ホストコンピュータ300からのデジタル信号をアナログ信号に変換し、AMP205に出力する。AMP205は、DAC204から入力されたアナログ信号を電流によって増幅しスピーカ33に出力する。 The DAC 204 converts the digital signal from the host computer 300 into an analog signal and outputs it to the AMP 205. The AMP 205 amplifies the analog signal input from the DAC 204 by an electric current and outputs the analog signal to the speaker 33.

スピーカ33は、AMP205から入力された信号に応じた音声を出力する。スピーカ33は、例えばパラメトリックスピーカであり、超音波によって音声を出力する。
接続インタフェース206は、回転制御装置100と接続するためのインタフェースである。接続インタフェース206が用いる規格は、接続インタフェース106と同様である。
The speaker 33 outputs the sound corresponding to the signal input from the AMP 205. The speaker 33 is, for example, a parametric speaker, and outputs sound by ultrasonic waves.
The connection interface 206 is an interface for connecting to the rotation control device 100. The standard used by the connection interface 206 is the same as that of the connection interface 106.

図5は、ホストコンピュータのハードウェアの一例を示す図である。ホストコンピュータ300は、プロセッサ301によって装置全体が制御されている。プロセッサ301には、バス311を介してメモリ302と複数の周辺機器が接続されている。プロセッサ301は、マルチプロセッサであってもよい。プロセッサ301は、例えばCPU、MPU、またはDSPである。プロセッサ301がプログラムを実行することで実現する機能の少なくとも一部を、ASIC、PLDなどの電子回路で実現してもよい。 FIG. 5 is a diagram showing an example of hardware of the host computer. The entire device of the host computer 300 is controlled by the processor 301. The memory 302 and a plurality of peripheral devices are connected to the processor 301 via the bus 311. The processor 301 may be a multiprocessor. The processor 301 is, for example, a CPU, MPU, or DSP. At least a part of the functions realized by executing the program by the processor 301 may be realized by an electronic circuit such as an ASIC or PLD.

メモリ302は、ホストコンピュータ300の主記憶装置として使用される。メモリ302には、プロセッサ301に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ302には、プロセッサ301による処理に利用する各種データが格納される。メモリ302としては、例えばRAMなどの揮発性の半導体記憶装置が使用される。 The memory 302 is used as the main storage device of the host computer 300. At least a part of an OS (Operating System) program or an application program to be executed by the processor 301 is temporarily stored in the memory 302. In addition, various data used for processing by the processor 301 are stored in the memory 302. As the memory 302, a volatile semiconductor storage device such as a RAM is used.

バス311に接続されている周辺機器としては、ストレージ装置303、グラフィック処理装置304、機器接続インタフェース305、入力インタフェース306、光学ドライブ装置307、機器接続インタフェース308、接続インタフェース309およびネットワークインタフェース310がある。 Peripheral devices connected to the bus 311 include a storage device 303, a graphic processing device 304, a device connection interface 305, an input interface 306, an optical drive device 307, a device connection interface 308, a connection interface 309, and a network interface 310.

ストレージ装置303は、内蔵した記録媒体に対して、電気的または磁気的にデータの書き込みおよび読み出しを行う。ストレージ装置303は、コンピュータの補助記憶装置として使用される。ストレージ装置303には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、ストレージ装置303としては、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)を使用することができる。 The storage device 303 electrically or magnetically writes and reads data from the built-in recording medium. The storage device 303 is used as an auxiliary storage device for the computer. The storage device 303 stores an OS program, an application program, and various data. As the storage device 303, for example, an HDD (Hard Disk Drive) or an SSD (Solid State Drive) can be used.

グラフィック処理装置304には、モニタ41が接続されている。グラフィック処理装置304は、プロセッサ301からの命令に従って、画像をモニタ41の画面に表示させる。モニタ41としては、有機EL(Electro Luminescence)を用いた表示装置や液晶表示装置などがある。 A monitor 41 is connected to the graphic processing device 304. The graphic processing device 304 causes the image to be displayed on the screen of the monitor 41 in accordance with the instruction from the processor 301. Examples of the monitor 41 include a display device using an organic EL (Electro Luminescence) and a liquid crystal display device.

機器接続インタフェース305には、カメラ42が接続されている。カメラ42は、プロセッサ301からの命令に従って、カメラ42のレンズを向けた先の光景の静止画または動画のデータを生成し、メモリ302に格納する。 A camera 42 is connected to the device connection interface 305. The camera 42 generates still image or moving image data of the scene ahead of the lens of the camera 42 in accordance with a command from the processor 301, and stores the data in the memory 302.

入力インタフェース306には、キーボード43とマウス44とが接続されている。入力インタフェース306は、キーボード43やマウス44から送られてくる信号をプロセッサ301に送信する。なお、マウス44は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。 A keyboard 43 and a mouse 44 are connected to the input interface 306. The input interface 306 transmits a signal sent from the keyboard 43 and the mouse 44 to the processor 301. The mouse 44 is an example of a pointing device, and other pointing devices can also be used. Other pointing devices include touch panels, tablets, touchpads, trackballs and the like.

光学ドライブ装置307は、レーザ光などを利用して、光ディスク45に記録されたデータの読み取りを行う。光ディスク45は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク45には、DVD(Digital Versatile Disc)、DVD−RAM、CD(Compact Disc)−ROM、CD−R(Recordable)/RW(ReWritable)などがある。 The optical drive device 307 reads the data recorded on the optical disk 45 by using a laser beam or the like. The optical disk 45 is a portable recording medium on which data is recorded so that it can be read by reflection of light. The optical disk 45 includes a DVD (Digital Versatile Disc), a DVD-RAM, a CD (Compact Disc) -ROM, a CD-R (Recordable) / RW (ReWritable), and the like.

機器接続インタフェース308は、ホストコンピュータ300に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース308には、メモリ装置46やメモリリーダライタ47を接続することができる。メモリ装置46は、機器接続インタフェース308との通信機能を搭載した記録媒体である。メモリリーダライタ47は、メモリカード48へのデータの書き込み、またはメモリカード48からのデータの読み出しを行う装置である。メモリカード48は、カード型の記録媒体である。 The device connection interface 308 is a communication interface for connecting peripheral devices to the host computer 300. For example, a memory device 46 or a memory reader / writer 47 can be connected to the device connection interface 308. The memory device 46 is a recording medium equipped with a communication function with the device connection interface 308. The memory reader / writer 47 is a device that writes data to or reads data from the memory card 48. The memory card 48 is a card-type recording medium.

接続インタフェース309は、コントローラ200と接続するためのインタフェースである。接続インタフェース309が用いる規格は、ハブ201が用いる規格と同様である。
ネットワークインタフェース310は、ネットワーク20に接続されている。ネットワークインタフェース310は、ネットワーク20を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
The connection interface 309 is an interface for connecting to the controller 200. The standard used by the connection interface 309 is the same as the standard used by the hub 201.
The network interface 310 is connected to the network 20. The network interface 310 transmits / receives data to / from another computer or communication device via the network 20.

ホストコンピュータ300は、以上のようなハードウェア構成によって、第2の実施の形態の処理機能を実現することができる。ホストコンピュータ300は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。ホストコンピュータ300に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、ホストコンピュータ300に実行させるプログラムをストレージ装置303に格納しておくことができる。プロセッサ301は、ストレージ装置303内のプログラムの少なくとも一部をメモリ302にロードし、プログラムを実行する。またホストコンピュータ300に実行させるプログラムを、光ディスク45、メモリ装置46、メモリカード48などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ301からの制御により、ストレージ装置303にインストールされた後、実行可能となる。またプロセッサ301が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。 The host computer 300 can realize the processing function of the second embodiment by the hardware configuration as described above. The host computer 300 realizes the processing function of the second embodiment, for example, by executing a program recorded on a computer-readable recording medium. The program that describes the processing content to be executed by the host computer 300 can be recorded on various recording media. For example, a program to be executed by the host computer 300 can be stored in the storage device 303. The processor 301 loads at least a part of the program in the storage device 303 into the memory 302 and executes the program. Further, the program to be executed by the host computer 300 can be recorded on a portable recording medium such as an optical disk 45, a memory device 46, and a memory card 48. The program stored in the portable recording medium can be executed after being installed in the storage device 303, for example, under the control of the processor 301. The processor 301 can also read and execute the program directly from the portable recording medium.

次に、スピーカ33の性質について説明する。
図6は、スピーカに対する位置と音圧レベルとの関係の一例を示す図である。以下では、指向性のないスピーカ40とパラメトリックスピーカであるスピーカ33との違いについて説明する。なお図6では、スピーカ33,40が発する音声の音圧レベルの値の高低が点の濃淡で表され、点が濃い箇所は音圧レベルが高いことを示し、点が薄い箇所は音圧レベルが低いことを示す。
Next, the nature of the speaker 33 will be described.
FIG. 6 is a diagram showing an example of the relationship between the position with respect to the speaker and the sound pressure level. Hereinafter, the difference between the non-directional speaker 40 and the parametric speaker 33 will be described. In FIG. 6, the high and low values of the sound pressure level of the voice emitted by the speakers 33 and 40 are represented by the shades of dots, where the dark dots indicate that the sound pressure level is high, and where the dots are thin indicate the sound pressure level. Indicates low.

スピーカ40が発する音声は、全方向に伝わり、距離が遠くなるほど減衰していく。よってスピーカ40の近辺では音圧レベルが高く、スピーカ40からの距離が大きくなるに連れて音圧レベルは低くなる。この場合、スピーカ40が対象人物21に向いていたとしても、スピーカ40と対象人物21との距離が大きいと、対象人物21は、スピーカ40が発する音声を聞き取りづらいことや聞き取れない場合がある。 The sound emitted by the speaker 40 is transmitted in all directions, and is attenuated as the distance increases. Therefore, the sound pressure level is high in the vicinity of the speaker 40, and the sound pressure level decreases as the distance from the speaker 40 increases. In this case, even if the speaker 40 faces the target person 21, if the distance between the speaker 40 and the target person 21 is large, the target person 21 may have difficulty in hearing or cannot hear the sound emitted by the speaker 40.

一方スピーカ33が発する音声は、原音に超音波の変調をかけて出力される。この音声は、超音波の特性によって直進する。ここで、超音波は広がらないため、距離が遠くなることによる音声の減衰量は小さい。よってスピーカ33が向いている方向の直線上では音圧レベルが高く、スピーカ33が向いている方向以外の方向では音圧レベルは低くなる。そのため、スピーカ33が対象人物21に向いていると、スピーカ33と対象人物21との距離が大きくても、対象人物21はスピーカ33が発する音声を聞き取ることができる。このようにして、スピーカ33によって特定の人物(対象人物21)のみに音声が届けられる。 On the other hand, the sound emitted by the speaker 33 is output by subjecting the original sound to ultrasonic modulation. This voice travels straight due to the characteristics of ultrasonic waves. Here, since the ultrasonic waves do not spread, the amount of sound attenuation due to the long distance is small. Therefore, the sound pressure level is high on the straight line in the direction in which the speaker 33 is facing, and is low in the direction other than the direction in which the speaker 33 is facing. Therefore, when the speaker 33 faces the target person 21, the target person 21 can hear the sound emitted by the speaker 33 even if the distance between the speaker 33 and the target person 21 is large. In this way, the speaker 33 delivers the sound only to a specific person (target person 21).

ここで、スピーカ33の向きは、2つの回転軸を中心とする回転(2つの軸回転)それぞれの角変位によって決定される。2つの軸回転の角変位は、それぞれモータ32a,32bの回転に伴って変動する。スピーカ33の水平方向の向きが原点方位と一致する状態からのモータ32aの回転によって生じた角変位は、スピーカ33の水平方向の角度差を表している。スピーカ33を重力の方向に向けた状態からのモータ32bの回転によって生じた角変位は、スピーカ33の重力の方向の角度差を表している。ホストコンピュータ300は、例えばモータ32a,32bへの回転指示を出力し、モータ32a,32bを回転させたとき、その回転で生じると期待される角変位(回転指示で指定した指定角度)を記憶しておく。そしてホストコンピュータ300は、次の回転指示では、記憶している角変位と目的の角度との差だけ軸回転の角変位が変動するように、モータ32a,32bの軸を回転させる。 Here, the orientation of the speaker 33 is determined by the angular displacement of each rotation (two axis rotations) about the two rotation axes. The angular displacements of the two shaft rotations fluctuate with the rotation of the motors 32a and 32b, respectively. The angular displacement caused by the rotation of the motor 32a from the state where the horizontal orientation of the speaker 33 coincides with the origin orientation represents the horizontal angular difference of the speaker 33. The angular displacement caused by the rotation of the motor 32b from the state where the speaker 33 is directed in the direction of gravity represents the angular difference in the direction of gravity of the speaker 33. For example, the host computer 300 outputs a rotation instruction to the motors 32a and 32b, and when the motors 32a and 32b are rotated, the host computer 300 stores the angular displacement (specified angle specified by the rotation instruction) expected to occur in the rotation. Keep it. Then, in the next rotation instruction, the host computer 300 rotates the axes of the motors 32a and 32b so that the angular displacement of the axis rotation fluctuates by the difference between the stored angular displacement and the target angle.

このとき、ホストコンピュータ300から指示された回転量と実際のモータ32a,32bの回転量とが脱調などによりずれることがある。すると、ホストコンピュータ300が記憶する各軸方向の回転の現在の角変位と、実際の軸回転で生じた重力の方向の角度差または水平方向の角度差とに差異が生じる。そして、このように生じた差異だけスピーカ33の向きが目的の方向からずれる。スピーカ33の向きが目的の方向からずれると、スピーカ33が音声を届けられる幅は狭いため、対象人物21に音声を届けられなくなることがある。 At this time, the amount of rotation instructed by the host computer 300 and the actual amount of rotation of the motors 32a and 32b may deviate due to step-out or the like. Then, there is a difference between the current angular displacement of the rotation in each axial direction stored in the host computer 300 and the angular difference in the direction of gravity or the angular difference in the horizontal direction caused by the actual axial rotation. Then, the direction of the speaker 33 deviates from the target direction by the difference generated in this way. If the direction of the speaker 33 deviates from the target direction, the width of the speaker 33 that can deliver the sound is narrow, so that the sound may not be delivered to the target person 21.

そこで第2の実施の形態では、回転制御装置100が、スピーカ33の向きのずれをキャリブレーション(較正)する。例えば回転制御装置100は、ホストコンピュータ300からの指示に従いスピーカ33を対象人物21に向ける。回転制御装置100は、音声の出力が完了したことを確認すると、スピーカ33の向きを原点方向(初期状態での向き)に復帰させる。その後、回転制御装置100は、原点復帰のための回転後のスピーカ33の向きを計測し、スピーカ33の向きと原点の方向とのずれを検知する。ずれがある場合、回転制御装置100は、ずれ量に応じて、スピーカ33の向きを原点方向にさらに回転させる。 Therefore, in the second embodiment, the rotation control device 100 calibrates the deviation of the direction of the speaker 33. For example, the rotation control device 100 directs the speaker 33 toward the target person 21 according to an instruction from the host computer 300. When the rotation control device 100 confirms that the sound output is completed, the rotation control device 100 returns the direction of the speaker 33 to the origin direction (direction in the initial state). After that, the rotation control device 100 measures the orientation of the speaker 33 after rotation for returning to the origin, and detects a deviation between the orientation of the speaker 33 and the direction of the origin. When there is a deviation, the rotation control device 100 further rotates the direction of the speaker 33 toward the origin direction according to the deviation amount.

回転制御装置100による重力の方向の誤差の補正の概略の手順は以下の通りである。
回転制御装置100は、原点方向を、下向き(重力の方向)に定める。回転制御装置100は、電源投入時、加速度センサ31aの測定値に基づいて、スピーカ33の傾き(原点方向からのずれ)を算出する。回転制御装置100は、傾きが「0」になる角度分、モータ32bを回転させる。傾きが「0」の状態とは、重力加速度がZ軸のみに作用している状態である。
The general procedure for correcting the error in the direction of gravity by the rotation control device 100 is as follows.
The rotation control device 100 sets the origin direction downward (direction of gravity). The rotation control device 100 calculates the inclination (deviation from the origin direction) of the speaker 33 based on the measured value of the acceleration sensor 31a when the power is turned on. The rotation control device 100 rotates the motor 32b by an angle at which the inclination becomes “0”. The state in which the inclination is "0" is a state in which the gravitational acceleration acts only on the Z axis.

その後、回転制御装置100は、ホストコンピュータ300から対象人物21までの回転角度(指定角度)を受け取ると、モータ32bを回転させる。回転制御装置100は、モータ32bを回転させながらジャイロセンサ31bで回転角を算出する。回転制御装置100は、対象人物21への声かけが終了すると、ジャイロセンサ31bで検出した回転角分を戻すようにモータ32bを回転させる。回転制御装置100は、スピーカ33の向きを戻す制御が終わると、加速度センサ31aの測定値に基づいて、スピーカ33の重力の方向の傾きを検出する。回転制御装置100は、傾きが「0」でなければ、その傾きを誤差と捉え、誤差が「0」となるまで、モータ32bの補正移動の回転を指示する。 After that, the rotation control device 100 rotates the motor 32b when it receives the rotation angle (designated angle) from the host computer 300 to the target person 21. The rotation control device 100 calculates the rotation angle with the gyro sensor 31b while rotating the motor 32b. When the rotation control device 100 finishes speaking to the target person 21, the rotation control device 100 rotates the motor 32b so as to return the rotation angle detected by the gyro sensor 31b. When the control for returning the direction of the speaker 33 is completed, the rotation control device 100 detects the inclination of the speaker 33 in the direction of gravity based on the measured value of the acceleration sensor 31a. If the inclination is not "0", the rotation control device 100 regards the inclination as an error and instructs the rotation of the correction movement of the motor 32b until the error becomes "0".

回転制御装置100による水平方向の誤差の補正の概略の手順は以下の通りである。
回転制御装置100は、原点方向(原点方位)は、予め地磁気センサ31cで測定した方位とする。例えば回転制御装置100は、電源投入時、水平方向の一方へ、モータ32aをゆっくり回転させながらジャイロセンサ31bで測定した角速度に基づいて回転角を算出する。回転制御装置100は、回転の限界に達して脱調が発生したら、モータ32aを逆方向へ「90°」回転させる。回転制御装置100は、「90°」回転後のスピーカ33の水平方向の向き(方位)を地磁気センサ31cで検出する。そして回転制御装置100は、検出した方位を水平方向の原点方位とする。
The general procedure for correcting the horizontal error by the rotation control device 100 is as follows.
In the rotation control device 100, the origin direction (origin direction) is the direction measured in advance by the geomagnetic sensor 31c. For example, the rotation control device 100 calculates the rotation angle based on the angular velocity measured by the gyro sensor 31b while slowly rotating the motor 32a in one direction in the horizontal direction when the power is turned on. When the rotation limit is reached and step-out occurs, the rotation control device 100 rotates the motor 32a in the opposite direction by "90 °". The rotation control device 100 detects the horizontal orientation (direction) of the speaker 33 after rotating by "90 °" with the geomagnetic sensor 31c. Then, the rotation control device 100 sets the detected direction as the origin direction in the horizontal direction.

その後、回転制御装置100は、ホストコンピュータ300から対象人物21までの回転角度(指定角度)を受け取ると、モータ32aを回転させる。回転制御装置100は、モータ32aを回転させながらジャイロセンサ31bで回転角を算出する。回転制御装置100は、対象人物21への声かけが終了すると、ジャイロセンサ31bで検出した回転角分を戻すようにモータ32aを回転させる。回転制御装置100は、スピーカ33の向きを戻す制御が終わると、地磁気センサ31cの測定値に基づいて、スピーカ33の水平方向の向き(方位)を検出する。回転制御装置100は、検出した方位と原点方位とのずれが「0」でなければ、そのずれを誤差と捉え、誤差が「0」となるまで、モータ32aの補正移動の回転を指示する。 After that, the rotation control device 100 rotates the motor 32a when it receives the rotation angle (designated angle) from the host computer 300 to the target person 21. The rotation control device 100 calculates the rotation angle with the gyro sensor 31b while rotating the motor 32a. When the rotation control device 100 finishes speaking to the target person 21, the rotation control device 100 rotates the motor 32a so as to return the rotation angle detected by the gyro sensor 31b. When the control for returning the direction of the speaker 33 is completed, the rotation control device 100 detects the horizontal direction (direction) of the speaker 33 based on the measured value of the geomagnetic sensor 31c. If the deviation between the detected orientation and the origin orientation is not "0", the rotation control device 100 regards the deviation as an error and instructs the rotation of the correction movement of the motor 32a until the deviation becomes "0".

このように、スピーカ装置30では、スピーカ33の向きを検知するのに、センサユニット31内の各センサの測定値を用いている。ここでセンサの測定値を用いてスピーカ33の向きを検知する利点について説明する。 As described above, in the speaker device 30, the measured value of each sensor in the sensor unit 31 is used to detect the direction of the speaker 33. Here, the advantage of detecting the orientation of the speaker 33 using the measured value of the sensor will be described.

一般に、ステッピングモータ自身では、回転角が分からず、脱調により回転角にずれが生じても検知できない。そこでステッピングモータとは別に、回転角の検知機構を実装することが考えられる。位置検出に利用できるものとして、エンコーダ、フォトインタラプタ、メカスイッチなどが考えられるが、これらの部品の取り付けは、構造設計上の制約が大きい。例えば、エンコーダはサイズが大きく、十分な設置スペースが求められる。またフォトインタラプタは、モータごとに設けることとなり数が多くなると共に、設置位置にも制約がある。メカスイッチもモータごとに設けられることとなり数が多くなると共に、モータに機械的負荷を与えてしまう。 In general, the stepping motor itself does not know the rotation angle, and even if the rotation angle shifts due to step-out, it cannot be detected. Therefore, it is conceivable to implement a rotation angle detection mechanism separately from the stepping motor. Encoders, photo interrupters, mechanical switches, etc. can be considered as those that can be used for position detection, but the mounting of these parts has large structural design restrictions. For example, encoders are large in size and require sufficient installation space. In addition, the number of photo interrupters is increased because each motor is provided, and there are restrictions on the installation position. Since mechanical switches are also provided for each motor, the number of mechanical switches increases and a mechanical load is applied to the motors.

それに対して、加速度センサ31a、ジャイロセンサ31b、地磁気センサ31cなどの各種センサは、それらを1つのIC内に収めることが可能であり、非常にサイズが小さい。そのため、設置スペースが少なくて済む。しかも、設置位置がモータの近傍に制限されることもないため、構造設計上の制約も最小限となる。さらにモータに対する余分な負荷の増加にもならない。 On the other hand, various sensors such as the acceleration sensor 31a, the gyro sensor 31b, and the geomagnetic sensor 31c can be housed in one IC and are very small in size. Therefore, the installation space is small. Moreover, since the installation position is not limited to the vicinity of the motor, restrictions on the structural design are minimized. Furthermore, it does not increase the extra load on the motor.

このように、センサには実装上の制約は少ないという利点がある。しかも加速度センサ31aなどのセンサは、各種分野で利用されており、安価に入手可能である。そのため、センサの測定値を用いてスピーカ33の向きを検知できるようにすることで、スピーカ装置30へのスピーカ33の向きの検知機構の実装が容易となる。 As described above, the sensor has an advantage that there are few mounting restrictions. Moreover, sensors such as the acceleration sensor 31a are used in various fields and can be obtained at low cost. Therefore, by enabling the orientation of the speaker 33 to be detected using the measured value of the sensor, it becomes easy to implement the orientation detection mechanism of the speaker 33 on the speaker device 30.

次にスピーカ33の向きの検知と、検知した向きのずれの較正とを実施するために回転制御装置100が有する機能について説明する。
図7は、回転制御装置の機能の一例を示すブロック図である。回転制御装置100は、記憶部110、回転指示部120、および角度算出部130を有する。
Next, the function of the rotation control device 100 for detecting the orientation of the speaker 33 and calibrating the detected orientation deviation will be described.
FIG. 7 is a block diagram showing an example of the function of the rotation control device. The rotation control device 100 includes a storage unit 110, a rotation instruction unit 120, and an angle calculation unit 130.

記憶部110は、水平方向の原点となる方角を示す原点方位情報を記憶する。水平方向の原点となる方角は、スピーカ装置30を設置した際に、記憶部110に設定される。記憶部110は、例えば回転制御装置100のROM101cによって実現される。 The storage unit 110 stores the origin direction information indicating the direction that becomes the origin in the horizontal direction. The direction serving as the origin in the horizontal direction is set in the storage unit 110 when the speaker device 30 is installed. The storage unit 110 is realized by, for example, the ROM 101c of the rotation control device 100.

回転指示部120は、ホストコンピュータ300からの指示に従って、モータ32a,32bへの回転を指示する。例えば回転指示部120は、回転角度に応じた数のパルス信号をモータ32a,32bに出力する。また回転指示部120は、角度算出部130が算出した角度に基づいて、原点方向とのずれの有無を判断し、ずれがある場合には、ずれ量に応じた回転指示をモータ32a,32bに出力する。 The rotation instruction unit 120 instructs the motors 32a and 32b to rotate according to the instruction from the host computer 300. For example, the rotation instruction unit 120 outputs a number of pulse signals corresponding to the rotation angle to the motors 32a and 32b. Further, the rotation instruction unit 120 determines whether or not there is a deviation from the origin direction based on the angle calculated by the angle calculation unit 130, and if there is a deviation, the rotation instruction according to the deviation amount is given to the motors 32a and 32b. Output.

角度算出部130は、センサユニット31内の各センサの測定値に基づいて、スピーカ33の重力の方向または水平方向の角度を算出する。また角度算出部130は、算出した角度と原点方向との成す角度(ずれ量)を算出することもできる。例えば角度算出部130は、原点復帰制御後に、重力の方向または水平方向のずれ量を算出する。なお重力の方向回転の原点方向は、例えば重力の方向である。また水平方向回転の原点方向は、記憶部110に設定されている原点方位情報に示される方向である。 The angle calculation unit 130 calculates the angle in the direction of gravity or the horizontal direction of the speaker 33 based on the measured values of each sensor in the sensor unit 31. The angle calculation unit 130 can also calculate the angle (deviation amount) formed by the calculated angle and the origin direction. For example, the angle calculation unit 130 calculates the amount of deviation in the direction of gravity or the horizontal direction after the origin return control. The direction of gravity The origin direction of rotation is, for example, the direction of gravity. Further, the origin direction of the horizontal rotation is the direction indicated by the origin direction information set in the storage unit 110.

なお、図7に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。また、図7に示した各要素の機能は、例えば、その要素に対応するプログラムモジュールをコンピュータに実行させることで実現することができる。 The line connecting each element shown in FIG. 7 indicates a part of the communication path, and a communication path other than the illustrated communication path can be set. Further, the function of each element shown in FIG. 7 can be realized, for example, by causing a computer to execute a program module corresponding to the element.

次に角度算出部130による角度の算出方法について、詳細に説明する。
図8は、重力の方向に回転したときの加速度センサの回転軸の一例を示す図である。加速度センサ31aは、ローカルな3次元の座標系において加速度を計測する。加速度センサ31aのローカル座標系は、スピーカ33の回転に伴ってグローバル座標系に対して回転する。ここでグローバル座標系とは、重力の方向をZ軸とする座標系である。
Next, the angle calculation method by the angle calculation unit 130 will be described in detail.
FIG. 8 is a diagram showing an example of the rotation axis of the acceleration sensor when rotating in the direction of gravity. The acceleration sensor 31a measures acceleration in a local three-dimensional coordinate system. The local coordinate system of the acceleration sensor 31a rotates with respect to the global coordinate system as the speaker 33 rotates. Here, the global coordinate system is a coordinate system whose Z axis is the direction of gravity.

スピーカ33が、重力の方向の回転における原点方向(重力の方向)を向いているとき、加速度センサ31aのX軸とY軸は水平となり、Z軸は垂直となる。図8の例では、加速度センサ31aのZ軸は、重力と反対方向が正の方向である。すなわち、スピーカ33が重力の方向の回転の原点方向を向いているとき、加速度センサ31aで測定されるZ軸の値(加速度のZ軸成分Az)は、重力加速度「9.80665」となる。 When the speaker 33 faces the origin direction (direction of gravity) in the rotation in the direction of gravity, the X-axis and the Y-axis of the acceleration sensor 31a are horizontal and the Z-axis is vertical. In the example of FIG. 8, the Z-axis of the acceleration sensor 31a has a positive direction opposite to gravity. That is, when the speaker 33 is directed to the home direction of the rotation of the direction of gravity, the value of Z axis that is measured by the acceleration sensor 31a (the acceleration in the Z-axis component A z) is a gravitational acceleration "9.80665" ..

ここで垂直回転軸37b(図3参照)と加速度センサ31aのY軸とが平行であるものとする。その場合、スピーカ33の重力の方向の回転は、加速度センサ31aのY軸を中心とした回転となる。このとき加速度のX軸成分AxとZ軸成分Azとに基づいて、スピーカ33の重力の方向の角度差θyを算出することができる。 Here, it is assumed that the vertical rotation axis 37b (see FIG. 3) and the Y axis of the acceleration sensor 31a are parallel. In that case, the rotation of the speaker 33 in the direction of gravity is the rotation of the acceleration sensor 31a about the Y axis. At this time, the angle difference θ y in the direction of gravity of the speaker 33 can be calculated based on the X-axis component A x and the Z-axis component A z of the acceleration.

図9は、加速度センサの測定値を用いた重力の方向の角度差の算出方法の一例を示す図である。なお、図9では重力加速度を「9.8」と近似している。また、加速度センサ31aのローカル座標系におけるX軸とグローバル座標系のX軸との差をθxとする。 FIG. 9 is a diagram showing an example of a method of calculating an angle difference in the direction of gravity using the measured value of the acceleration sensor. In FIG. 9, the gravitational acceleration is approximated to "9.8". Further, the difference between the X-axis in the local coordinate system of the acceleration sensor 31a and the X-axis in the global coordinate system is θ x .

このとき、「cosθx=Ax/9.8」、「sinθx=Az/9.8」、「tanθx=Az/Ax」となる。「cosθx=Ax/9.8」の逆関数を用いれば、加速度のX軸成分Axのみからθxを算出できる。「sinθx=Az/9.8」の逆関数を用いれば、加速度のZ軸成分Azのみからθxを算出できる。ただし一軸の成分のみを用いた計算だと、加速度センサ31aの分解能に基づく誤差が大きくなる。そこで角度算出部130は、「tanθx=Az/Ax」の逆関数を用い、加速度のX軸成分AxとZ軸成分Azとからθxを算出する。具体的には、以下の式(1)で算出できる。
θx=tan-1(Az/Ax) (1)
θxに基づいて、重力の方向の角度差θyは「θy=90−|θx|」と表すことができる。この式のθxを式(1)の右辺で置き換えると、重力の方向の角度差θyは以下の式(2)で表される。
θy=90−|tan-1(Az/Ax)| (2)
重力の方向の角度差θyは、ジャイロセンサ31bの測定値から算出することもできる。
In this case, the "cos [theta] x = A x /9.8',`Sinshita x = A z /9.8',`Tanshita x = A z / A x". By using the inverse function of "cos θ x = A x / 9.8", θ x can be calculated only from the X-axis component A x of acceleration. By using the inverse function of "sin θ x = A z / 9.8", θ x can be calculated only from the Z-axis component A z of acceleration. However, if the calculation uses only the uniaxial component, the error based on the resolution of the acceleration sensor 31a becomes large. Therefore the angle calculation unit 130, using the inverse function of "tanθ x = A z / A x", calculates the theta x from the X-axis component of the acceleration A x and Z-axis component A z. Specifically, it can be calculated by the following formula (1).
θ x = tan -1 (A z / A x ) (1)
Based on θ x , the angle difference θ y in the direction of gravity can be expressed as “θ y = 90− | θ x |”. Replacing θ x in this equation with the right side of equation (1), the angle difference θ y in the direction of gravity is expressed by equation (2) below.
θ y = 90- | tan -1 (A z / A x ) | (2)
The angle difference θ y in the direction of gravity can also be calculated from the measured value of the gyro sensor 31b.

図10は、ジャイロセンサの測定値を用いた重力の方向の角度差の算出方法の一例を示す図である。ジャイロセンサ31bは、ローカルな3次元の座標系において角速度ωを計測する。ジャイロセンサ31bのローカル座標系は、スピーカ33の回転に伴ってグローバル座標系に対して回転する。スピーカ33が、重力の方向の回転における原点方向(重力の方向)を向いているとき、ジャイロセンサ31bのX軸とY軸は水平となり、Z軸は垂直となる。 FIG. 10 is a diagram showing an example of a method of calculating the angle difference in the direction of gravity using the measured value of the gyro sensor. The gyro sensor 31b measures the angular velocity ω in a local three-dimensional coordinate system. The local coordinate system of the gyro sensor 31b rotates with respect to the global coordinate system as the speaker 33 rotates. When the speaker 33 faces the origin direction (direction of gravity) in the rotation in the direction of gravity, the X-axis and the Y-axis of the gyro sensor 31b are horizontal, and the Z-axis is vertical.

ここで垂直回転軸37b(図3参照)とジャイロセンサ31bのY軸とが平行であるものとする。その場合、スピーカ33の重力の方向の回転は、ジャイロセンサ31bのY軸を中心とした回転となる。ジャイロセンサ31bを用いるとY軸を中心とした回転の回転角Gyを算出することができる。原点方向からの回転角Gyを求めれば、その回転角Gyは原点方向からの重力の方向の角度差θyに等しくなる。すなわち、ジャイロセンサ31bでは、以下の式(3)により、重力の方向の回転における原点方向を向いた状態からの重力の方向の角度差θyを算出することができる。
θy=Gy=Σωyt (3)
式(3)におけるωyは、Y軸を中心とした回転の角速度であり、tは角速度を計測した時間間隔である。例えばスピーカ33が重力の方向の回転における原点方向を向いた状態から、ω1の角速度で時間t1だけ回転し、ω2の角速度で時間t2だけ回転し、ω3の角速度で時間t3だけ回転し、ω4の角速度で時間t4だけ回転したものとする。この場合、重力の方向の角度差θyは、「θy=ω11+ω22+ω33+ω44」となる。
Here, it is assumed that the vertical rotation axis 37b (see FIG. 3) and the Y axis of the gyro sensor 31b are parallel. In that case, the rotation of the speaker 33 in the direction of gravity is the rotation of the gyro sensor 31b about the Y axis. By using the gyro sensor 31b, the rotation angle G y of the rotation about the Y axis can be calculated. If the rotation angle G y from the origin direction is obtained, the rotation angle G y becomes equal to the angle difference θ y in the direction of gravity from the origin direction. That is, in the gyro sensor 31b, the angle difference θ y in the direction of gravity from the state facing the origin direction in the rotation in the direction of gravity can be calculated by the following equation (3).
θ y = G y = Σω y t (3)
In equation (3), ω y is the angular velocity of rotation about the Y axis, and t is the time interval at which the angular velocity is measured. For example, from the state where the speaker 33 faces the origin direction in the rotation in the direction of gravity, it rotates for time t 1 at the angular velocity of ω 1 , rotates for time t 2 at the angular velocity of ω 2 , and time t 3 at the angular velocity of ω 3. It is assumed that it is rotated by the angular velocity of ω 4 for the time t 4 . In this case, the angle difference θ y in the direction of gravity is “θ y = ω 1 t 1 + ω 2 t 2 + ω 3 t 3 + ω 4 t 4 ”.

このように重力の方向の角度差θyは、加速度センサ31aまたはジャイロセンサ31bの測定値から算出できる。加速度センサ31aの測定値を用いた重力の方向の角度差θyは現在の加速度の状態のみから高精度に算出できる。他方、加速度センサ31aの測定値を用いた重力の方向の角度差θyの計算は、スピーカ33が回転している間は、回転運動の影響を受け、正確な計算が困難となる。それに対して、ジャイロセンサ31bの測定値を用いた重力の方向の角度差θyの計算は、スピーカ33が回転している間であっても計算精度が落ちることはない。 In this way, the angle difference θ y in the direction of gravity can be calculated from the measured values of the acceleration sensor 31a or the gyro sensor 31b. The angle difference θ y in the direction of gravity using the measured value of the acceleration sensor 31a can be calculated with high accuracy only from the current state of acceleration. On the other hand, the calculation of the angle difference θ y in the direction of gravity using the measured value of the acceleration sensor 31a is affected by the rotational motion while the speaker 33 is rotating, and accurate calculation becomes difficult. On the other hand, the calculation of the angle difference θ y in the direction of gravity using the measured value of the gyro sensor 31b does not reduce the calculation accuracy even while the speaker 33 is rotating.

従って、重力の方向の回転を停止した状態で計測できるのであれば、加速度センサ31aの測定値を用いて重力の方向の角度差θyを計算するのが適切となる。またスピーカ33を回転させながら重力の方向の角度差θyを求めるのであれば、ジャイロセンサ31bの測定値を用いて重力の方向の角度差θyを計算するのが適切となる。 Therefore, if the measurement can be performed with the rotation in the direction of gravity stopped, it is appropriate to calculate the angle difference θ y in the direction of gravity using the measured value of the acceleration sensor 31a. Further, if the angle difference θ y in the direction of gravity is obtained while rotating the speaker 33, it is appropriate to calculate the angle difference θ y in the direction of gravity using the measured value of the gyro sensor 31b.

図11は、原点復帰時の重力の方向の角度差の誤差の計算例を示す図である。スピーカ33が重力の方向の原点方向を向いている場合、加速度センサ31aで計測される加速度のX軸成分は「0.0」、Y軸成分は「0.0」、Z軸成分は「−9.8」となる。またジャイロセンサ31bで計測される角速度に基づいて計算した各軸を中心とした回転で生じる角度差はすべて「0.0」である。 FIG. 11 is a diagram showing a calculation example of an error in the angle difference in the direction of gravity when returning to the origin. When the speaker 33 faces the origin in the direction of gravity, the X-axis component of the acceleration measured by the acceleration sensor 31a is "0.0", the Y-axis component is "0.0", and the Z-axis component is "-". 9.8 ”. Further, all the angular differences generated by the rotation around each axis calculated based on the angular velocity measured by the gyro sensor 31b are "0.0".

この状態で、ホストコンピュータ300から重力の方向に「40°」回転させる指示が入力されたものとする。すると回転指示部120は、モータ32bに対して「40°」分の回転を指示する。 In this state, it is assumed that an instruction to rotate "40 °" in the direction of gravity is input from the host computer 300. Then, the rotation instruction unit 120 instructs the motor 32b to rotate by "40 °".

スピーカ33が重力の方向に「40°」回転すると、加速度センサ31aで計測される加速度のX軸成分は「7.507」、Y軸成分は「0.0」、Z軸成分は「−6.299」となる。またジャイロセンサ31bで計測される角速度に基づいて計算したY軸を中心とした回転で生じる角度差は「40.0」となる。 When the speaker 33 rotates "40 °" in the direction of gravity, the X-axis component of the acceleration measured by the acceleration sensor 31a is "7.507", the Y-axis component is "0.0", and the Z-axis component is "-6". .299 ". Further, the angle difference generated by the rotation about the Y axis calculated based on the angular velocity measured by the gyro sensor 31b is "40.0".

回転指示部120は、指定された角度の回転が終了すると、ホストコンピュータ300に回転終了を通知する。するとホストコンピュータ300は、音声信号をスピーカ装置30に送信し、スピーカ33から対象人物21に対する音声を出力させる(声かけを行う)。声かけが終了すると、ホストコンピュータ300は、回転制御装置100に対して、ジャイロセンサ31bの測定値に基づいて計算した移動角度(角度差「40.0」)だけ、反対方向に回転するように指示する。すなわちホストコンピュータ300は、「−40°」の回転を指示する。すると、回転制御装置100の回転指示部120は、モータ32bに対して「−40°」分の回転を指示する。 When the rotation of the designated angle is completed, the rotation instruction unit 120 notifies the host computer 300 of the end of rotation. Then, the host computer 300 transmits a voice signal to the speaker device 30, and causes the speaker 33 to output a voice to the target person 21 (calls out). When the call is completed, the host computer 300 rotates in the opposite direction to the rotation control device 100 by the movement angle (angle difference "40.0") calculated based on the measured value of the gyro sensor 31b. Instruct. That is, the host computer 300 instructs the rotation of "-40 °". Then, the rotation instruction unit 120 of the rotation control device 100 instructs the motor 32b to rotate by "-40 °".

このときモータ32bにおいて脱調が発生し、スピーカ33の回転角は「−40°」に達していないものとする。そのため、原点復帰の処理を実施した後においても、スピーカ33の向きが原点方向からずれている。 At this time, it is assumed that step-out occurs in the motor 32b and the rotation angle of the speaker 33 does not reach "-40 °". Therefore, the direction of the speaker 33 is deviated from the origin direction even after the origin return process is performed.

図11の例では、加速度センサ31aで計測される加速度のX軸成分は「0.854」、Y軸成分は「0.0」、Z軸成分は「−9.762」となっている。このとき、角度算出部130が誤差を計算する。すなわち角度算出部130は、式(2)に基づいて、現在の重力の方向の角度差θyを計算する。すると「角度差θy=5°」となる。この角度が、角度差の誤差である。 In the example of FIG. 11, the X-axis component of the acceleration measured by the acceleration sensor 31a is "0.854", the Y-axis component is "0.0", and the Z-axis component is "-9.762". At this time, the angle calculation unit 130 calculates the error. That is, the angle calculation unit 130 calculates the angle difference θ y in the current direction of gravity based on the equation (2). Then, “angle difference θ y = 5 °”. This angle is the error of the angle difference.

次に水平方向の角度差の算出方法について説明する。水平方向の回転における原点方向(原点方位)は、例えばスピーカ装置30の正面の方角である。
図12は、水平方向の回転における原点方向の一例を示す図である。図12は、スピーカ装置30の下面図である。すなわち天井に取り付けられたスピーカ装置30を下から見上げたときの様子が図12に示されている。スピーカ33は、水平方向を向いているものとする。
Next, a method of calculating the angle difference in the horizontal direction will be described. The origin direction (origin direction) in the horizontal rotation is, for example, the front direction of the speaker device 30.
FIG. 12 is a diagram showing an example of the origin direction in the horizontal rotation. FIG. 12 is a bottom view of the speaker device 30. That is, FIG. 12 shows a state when the speaker device 30 mounted on the ceiling is looked up from below. It is assumed that the speaker 33 faces in the horizontal direction.

ここで、スピーカ33が水平方向に「180°」回転可能な場合を想定する。この場合、スピーカ33の回転可能範囲の中間の方向をスピーカ33が向いているときの正面(放射面前方)の方位を原点方位とする。原点方位を示す原点方位情報は、例えば電源投入時の初期化処理の際に角度算出部130によって地磁気センサ31cから取得され、記憶部110に格納される。 Here, it is assumed that the speaker 33 can rotate "180 °" in the horizontal direction. In this case, the direction of the front surface (front of the radiation surface) when the speaker 33 is facing the middle direction of the rotatable range of the speaker 33 is set as the origin direction. The origin direction information indicating the origin direction is acquired from the geomagnetic sensor 31c by the angle calculation unit 130 at the time of initialization processing at the time of turning on the power, and is stored in the storage unit 110.

スピーカ33の水平方向の角度差は、ジャイロセンサ31bの測定値に基づいて算出することができる。
図13は、ジャイロセンサの測定値を用いた水平方向の角度差の算出方法の一例を示す図である。スピーカ33が、重力の方向の回転における原点方向(重力の方向)を向いているとき、ジャイロセンサ31bのX軸とY軸は水平となり、Z軸は垂直となる。
The horizontal angle difference of the speaker 33 can be calculated based on the measured value of the gyro sensor 31b.
FIG. 13 is a diagram showing an example of a method of calculating the angle difference in the horizontal direction using the measured value of the gyro sensor. When the speaker 33 faces the origin direction (direction of gravity) in the rotation in the direction of gravity, the X-axis and the Y-axis of the gyro sensor 31b are horizontal, and the Z-axis is vertical.

ここで水平回転軸37a(図3参照)とジャイロセンサ31bのZ軸とが平行であるものとする。その場合、スピーカ33の水平方向の回転は、ジャイロセンサ31bのZ軸を中心とした回転となる。ジャイロセンサ31bを用いるとZ軸を中心とした回転の回転角Gzを算出することができる。原点方位からの回転角Gzを求めれば、その回転角Gzは水平方向の角度差θzに等しくなる。すなわち、ジャイロセンサ31bでは、以下の式(4)により、重力の方向の回転における原点方向を向いた状態からの水平方向の角度差θzを算出することができる。
θz=Gz=Σωzt (4)
式(4)におけるωzは、Z軸を中心とした回転の角速度であり、tは角速度を計測した時間間隔である。例えばスピーカ33が重力の方向の回転における原点方向を向いた状態から、ω1の角速度で時間t1だけ回転し、ω2の角速度で時間t2だけ回転し、ω3の角速度で時間t3だけ回転し、ω4の角速度で時間t4だけ回転したものとする。この場合、水平方向の角度差θzは、「θz=ω11+ω22+ω33+ω44」となる。
Here, it is assumed that the horizontal rotation axis 37a (see FIG. 3) and the Z axis of the gyro sensor 31b are parallel. In that case, the horizontal rotation of the speaker 33 is the rotation of the gyro sensor 31b about the Z axis. With the gyro sensor 31b can calculate the rotation angle G z of rotation about the Z axis. If the rotation angle G z from the origin direction is obtained, the rotation angle G z becomes equal to the angle difference θ z in the horizontal direction. That is, in the gyro sensor 31b, the horizontal angle difference θ z from the state facing the origin direction in the rotation in the direction of gravity can be calculated by the following equation (4).
θ z = G z = Σω z t (4)
In equation (4), ω z is the angular velocity of rotation about the Z axis, and t is the time interval at which the angular velocity is measured. For example, from the state where the speaker 33 faces the origin direction in the rotation in the direction of gravity, it rotates for time t 1 at the angular velocity of ω 1 , rotates for time t 2 at the angular velocity of ω 2 , and time t 3 at the angular velocity of ω 3. It is assumed that it is rotated by the angular velocity of ω 4 for the time t 4 . In this case, the horizontal angle difference θ z is “θ z = ω 1 t 1 + ω 2 t 2 + ω 3 t 3 + ω 4 t 4 ”.

ジャイロセンサ31bの測定値を用いれば、スピーカ33を回転させるごとの実際の回転角が分かる。スピーカ33の回転の指定角度と実際の回転角との誤差を求めれば、脱調の有無を判定することができる。 By using the measured value of the gyro sensor 31b, the actual rotation angle of each rotation of the speaker 33 can be known. The presence or absence of step-out can be determined by obtaining the error between the specified rotation angle of the speaker 33 and the actual rotation angle.

図14は、水平方向の角度差の誤差の計算例を示す図である。図14の例では、原点方位から「90°」を指定角度とした回転指示が、ホストコンピュータ300から入力された場合を想定している。この場合、回転指示部120は、モータ32aに対して「90°」分のパルス信号を出力する。そのパルス信号に応じてモータ32aが回転する。角度算出部130は、ジャイロセンサ31bが測定した角速度を取得し、回転角を算出する。図14の例では、回転角は「80°」となっている。この場合、指定角度である「90°」と、回転角「80°」との差分が、脱調による誤差である。 FIG. 14 is a diagram showing a calculation example of an error of an angle difference in the horizontal direction. In the example of FIG. 14, it is assumed that a rotation instruction with "90 °" as a designated angle from the origin direction is input from the host computer 300. In this case, the rotation instruction unit 120 outputs a pulse signal for "90 °" to the motor 32a. The motor 32a rotates in response to the pulse signal. The angle calculation unit 130 acquires the angular velocity measured by the gyro sensor 31b and calculates the angle of rotation. In the example of FIG. 14, the rotation angle is "80 °". In this case, the difference between the designated angle "90 °" and the rotation angle "80 °" is an error due to step-out.

回転指示部120は、脱調による誤差の量が分かれば、誤差の分だけさらにスピーカ33を回転させることで、誤差を補正することができる。また可動範囲の限界に達したことを、脱調の有無で判断することもできる。 If the amount of error due to step-out is known, the rotation indicator 120 can correct the error by further rotating the speaker 33 by the amount of the error. It is also possible to judge that the limit of the movable range has been reached by the presence or absence of step-out.

次に、図15〜図18を参照し、スピーカ33を用いた対象人物21への声かけの手順について詳細に説明する。
図15は、電源投入時のスピーカ装置初期化処理の手順の一例を示すフローチャート(1/2)である。以下、図15に示す処理をステップ番号に沿って説明する。
Next, with reference to FIGS. 15 to 18, the procedure of speaking to the target person 21 using the speaker 33 will be described in detail.
FIG. 15 is a flowchart (1/2) showing an example of the procedure of the speaker device initialization process when the power is turned on. Hereinafter, the process shown in FIG. 15 will be described along with the step numbers.

[ステップS101]スピーカ装置30は、電源ONの操作が行われると、回転制御装置100およびスピーカ33に対して電源を供給する。すると回転制御装置100は初期化処理を開始する。 [Step S101] When the power ON operation is performed, the speaker device 30 supplies power to the rotation control device 100 and the speaker 33. Then, the rotation control device 100 starts the initialization process.

[ステップS102]回転制御装置100の角度算出部130は、加速度センサ31aの測定値を取得する。そして角度算出部130は、加速度のX軸成分「Ax」とZ軸成分「Az」とに基づいて、上記の式(2)に従って重力の方向の角度差θy(傾き)を算出する。角度算出部130は、算出した重力の方向の角度差θyを、回転指示部120に通知する。 [Step S102] The angle calculation unit 130 of the rotation control device 100 acquires the measured value of the acceleration sensor 31a. Then, the angle calculation unit 130 calculates the angle difference θ y (inclination) in the direction of gravity according to the above equation (2) based on the X-axis component “A x ” and the Z-axis component “A z ” of the acceleration. .. The angle calculation unit 130 notifies the rotation instruction unit 120 of the calculated angle difference θ y in the direction of gravity.

[ステップS103]回転指示部120は、ステップS102で算出された重力の方向の角度差θyに基づいて、スピーカ33の原点方向への重力の方向の回転制御を行う。例えば角度算出部130で算出された重力の方向の角度差θyが「55°」であったものとする。この場合、回転指示部120は、モータ32bを「−55°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を負の方向に設定し、「55°」分のパルス信号をモータ32bに出力する。 [Step S103] The rotation instruction unit 120 controls the rotation of the speaker 33 in the direction of gravity toward the origin based on the angle difference θ y in the direction of gravity calculated in step S102. For example, it is assumed that the angle difference θ y in the direction of gravity calculated by the angle calculation unit 130 is “55 °”. In this case, the rotation indicator 120 controls the motor 32b to rotate by "-55 °". That is, the rotation instruction unit 120 sets the rotation direction to a negative direction and outputs a pulse signal for "55 °" to the motor 32b.

[ステップS104]角度算出部130は、回転指示部120によるモータ32bへのパルス信号の出力が終了すると、加速度センサ31aの測定値を取得する。そして角度算出部130は、加速度のX軸成分「Ax」とZ軸成分「Az」とに基づいて、上記の式(2)に従って重力の方向の角度差θy(傾き)を算出する。角度算出部130は、算出した重力の方向の角度差θyを、回転指示部120に通知する。 [Step S104] The angle calculation unit 130 acquires the measured value of the acceleration sensor 31a when the output of the pulse signal to the motor 32b by the rotation instruction unit 120 is completed. Then, the angle calculation unit 130 calculates the angle difference θ y (inclination) in the direction of gravity according to the above equation (2) based on the X-axis component “A x ” and the Z-axis component “A z ” of the acceleration. .. The angle calculation unit 130 notifies the rotation instruction unit 120 of the calculated angle difference θ y in the direction of gravity.

[ステップS105]回転指示部120は、重力の方向の角度差θyが「0°」か否かを判定する。なお回転指示部120は、重力の方向の角度差θyが「0°」か否かの判定において、ある程度の許容範囲を持たせてもよい。例えば回転指示部120は、重力の方向の角度差θyが「0°」から許容誤差の範囲内であれば、重力の方向の角度差θyが「0°」であると判定する。回転指示部120は、重力の方向の角度差θyが「0°」であれば、処理をステップS111(図16参照)に進める。回転指示部120は、重力の方向の角度差θyが「0°」でなければ、処理をステップS106に進める。 [Step S105] The rotation instruction unit 120 determines whether or not the angle difference θ y in the direction of gravity is “0 °”. The rotation indicating unit 120 may have a certain allowable range in determining whether or not the angle difference θ y in the direction of gravity is “0 °”. For example, the rotation indicator 120 determines that the angle difference θ y in the direction of gravity is “0 °” if the angle difference θ y in the direction of gravity is within the permissible range from “0 °”. If the angle difference θ y in the direction of gravity is “0 °”, the rotation indicator 120 proceeds to step S111 (see FIG. 16). If the angle difference θ y in the direction of gravity is not “0 °”, the rotation indicator 120 proceeds to step S106.

[ステップS106]回転指示部120は、ステップS104で算出された重力の方向の角度差θyに基づいて、スピーカ33の重力の方向の回転制御を行う。例えば回転指示部120は、重力の方向の角度差θyに相当する数のパルス信号をモータ32bに出力する。回転指示部120は、その後、処理をステップS104に進める。 [Step S106] The rotation instruction unit 120 controls the rotation of the speaker 33 in the direction of gravity based on the angle difference θ y in the direction of gravity calculated in step S104. For example, the rotation indicator 120 outputs a number of pulse signals corresponding to the angle difference θ y in the direction of gravity to the motor 32b. The rotation indicator 120 then proceeds to step S104.

図16は、電源投入時のスピーカ装置初期化処理の手順の一例を示すフローチャート(2/2)である。以下、図16に示す処理をステップ番号に沿って説明する。
[ステップS111]回転指示部120は、ジャイロセンサ31bの測定値に基づく計算によって得られる回転角の保存値(Gx,Gy,Gz)を(0,0,0)に初期化する。
FIG. 16 is a flowchart (2/2) showing an example of the procedure of the speaker device initialization process when the power is turned on. Hereinafter, the process shown in FIG. 16 will be described along with the step numbers.
[Step S111] The rotation indicator 120 initializes the stored values (G x , G y , G z ) of the rotation angle obtained by the calculation based on the measured values of the gyro sensor 31b to (0, 0, 0).

[ステップS112]回転指示部120は、スピーカ33の、水平方向への所定の角度の等速回転制御を行う。例えば、初期化処理時の水平方向の基準回転角ZHが「10°」に設定されているものとする。この場合、回転指示部120は、モータ32aを「10°」だけ回転するように制御する。すなわち回転指示部120は、「10°」分のパルス信号をモータ32aに出力する。 [Step S112] The rotation instruction unit 120 controls the constant velocity rotation of the speaker 33 at a predetermined angle in the horizontal direction. For example, it is assumed that the reference rotation angle ZH in the horizontal direction during the initialization process is set to "10 °". In this case, the rotation indicator 120 controls the motor 32a to rotate by "10 °". That is, the rotation instruction unit 120 outputs a pulse signal for "10 °" to the motor 32a.

[ステップS113]角度算出部130は、回転指示部120によるモータ32aへのパルス信号の出力が終了すると、ジャイロセンサ31bの測定値を取得する。そして角度算出部130は、ジャイロセンサ31bの測定値に基づいて、式(4)に従って回転角Gzを算出する。角度算出部130は、算出した回転角Gzを、回転指示部120に通知する。 [Step S113] The angle calculation unit 130 acquires the measured value of the gyro sensor 31b when the output of the pulse signal to the motor 32a by the rotation instruction unit 120 is completed. Then, the angle calculation unit 130 calculates the rotation angle G z according to the equation (4) based on the measured value of the gyro sensor 31b. The angle calculation unit 130 notifies the rotation instruction unit 120 of the calculated rotation angle G z .

[ステップS114]回転指示部120は、回転角Gzが基準回転角ZH「10°」に等しいか否かを判定する。なお回転指示部120は、回転角Gzが基準回転角ZH「10°」に等しいか否かの判定において、ある程度の許容範囲を持たせてもよい。例えば回転指示部120は、回転角Gzが「10°」から許容誤差の範囲内であれば、回転角Gzが「10°」であると判定する。回転指示部120は、回転角Gzが「10°」であれば、処理をステップS112に進める。回転指示部120は、回転角Gzが「10°」でなければ、処理をステップS115に進める。 [Step S114] The rotation indicating unit 120 determines whether or not the rotation angle G z is equal to the reference rotation angle ZH “10 °”. The rotation indicating unit 120 may have a certain allowable range in determining whether or not the rotation angle G z is equal to the reference rotation angle ZH “10 °”. For example, the rotation indicating unit 120 determines that the rotation angle G z is “10 °” if the rotation angle G z is within the allowable error range from “10 °”. If the rotation angle G z is "10 °", the rotation instruction unit 120 advances the process to step S112. If the rotation angle G z is not “10 °”, the rotation indicating unit 120 advances the process to step S115.

このようにして、スピーカ33の「10°」ずつの水平方向の回転が、脱調により回転角Gzと基準回転角ZHとが不一致となるまで繰り返される。スピーカ33の水平方向の可動範囲は制限があり(例えば「180°」)、可動範囲の端部まで回転すると、スピーカ33はそれ以上回転できず、脱調が発生する。この場合、実際の回転角Gzが、回転制御で指示した基準回転角ZHに満たなくなる。そこで回転指示部120は、回転角Gzが基準回転角ZHとならないことを確認することで、スピーカ33の向きが水平方向の可動範囲の一方の端部まで回転したものと認識する。回転指示部120は、スピーカ33の向きが水平方向の可動範囲の一方の端部まで回転したら、ステップS115以降の処理を実行する。 In this way, the horizontal rotation of the speaker 33 by "10 °" is repeated until the rotation angle G z and the reference rotation angle ZH do not match due to step-out. The horizontal movable range of the speaker 33 is limited (for example, “180 °”), and when the speaker 33 is rotated to the end of the movable range, the speaker 33 cannot rotate any more and step-out occurs. In this case, the actual rotation angle G z does not meet the reference rotation angle ZH specified by the rotation control. Therefore, the rotation indicating unit 120 recognizes that the direction of the speaker 33 has rotated to one end of the movable range in the horizontal direction by confirming that the rotation angle G z does not become the reference rotation angle ZH. When the direction of the speaker 33 rotates to one end of the movable range in the horizontal direction, the rotation instruction unit 120 executes the processes after step S115.

なお、回転指示部120は、ステップS114において、少しずつ(例えば「10°」ずつ)回転させることで、モータ32aへの負荷の軽減を図っている。すなわち、スピーカ33の向きが水平方向の可動範囲の端部に達した後も、パルス信号をモータ32aに送信し続けると、モータ32aに余計な負荷をかけ続けることとなる。そのため回転指示部120は、基準回転角ZHずつ回転させ、回転させるごとに脱調の有無を確認することで、モータ32aにかかる余分な負荷を最小限に抑止している。 The rotation instruction unit 120 is rotated little by little (for example, by "10 °") in step S114 to reduce the load on the motor 32a. That is, if the pulse signal is continuously transmitted to the motor 32a even after the direction of the speaker 33 reaches the end of the movable range in the horizontal direction, an extra load is continuously applied to the motor 32a. Therefore, the rotation indicating unit 120 rotates by the reference rotation angle ZH and confirms the presence or absence of step-out each time the rotation is performed, thereby minimizing the extra load applied to the motor 32a.

[ステップS115]回転指示部120は、スピーカ33の、水平方向への所定の角度(例えば水平方向の回転の可動範囲の角度の半分)の等速回転制御を行う。例えば、水平方向の回転の可動範囲が「180°」であり、ステップS112〜S114の処理により正の回転方向の端部までスピーカ33が回転しているものとする。この場合、回転指示部120は、モータ32aを「−90°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を負の方向に設定し、「90°」分のパルス信号をモータ32aに出力する。 [Step S115] The rotation instruction unit 120 controls the constant velocity rotation of the speaker 33 at a predetermined angle in the horizontal direction (for example, half the angle of the movable range of rotation in the horizontal direction). For example, it is assumed that the movable range of rotation in the horizontal direction is "180 °", and the speaker 33 is rotated to the end in the positive rotation direction by the processing of steps S112 to S114. In this case, the rotation indicator 120 controls the motor 32a to rotate by "−90 °". That is, the rotation instruction unit 120 sets the rotation direction to a negative direction and outputs a pulse signal for "90 °" to the motor 32a.

[ステップS116]角度算出部130は、回転指示部120によるモータ32aへのパルス信号の出力が終了すると、地磁気センサ31cの測定値を取得する。そして角度算出部130は、地磁気センサ31cの測定値に基づいて原点方位M0を決定する。すなわち角度算出部130は、現時点のスピーカ33の水平方向の向きを原点方位M0とする。角度算出部130は、取得した地磁気センサ31cの測定値を、原点方位情報として記憶部110に格納する。 [Step S116] The angle calculation unit 130 acquires the measured value of the geomagnetic sensor 31c when the output of the pulse signal to the motor 32a by the rotation instruction unit 120 is completed. Then, the angle calculation unit 130 determines the origin direction M0 based on the measured value of the geomagnetic sensor 31c. That is, the angle calculation unit 130 sets the current horizontal direction of the speaker 33 as the origin direction M0. The angle calculation unit 130 stores the acquired measured value of the geomagnetic sensor 31c in the storage unit 110 as origin orientation information.

[ステップS117]回転指示部120は、ジャイロセンサ31bの測定値に基づく計算によって得られる回転角の保存値(Gx,Gy,Gz)を(0,0,0)に初期化する。
このようにして、スピーカ装置30への電源投入時に初期化処理が行われ、スピーカ33は、重力の方向回転の原点方向(鉛直真下)と水平方向回転の原点方位(スピーカ装置30の正面)とを向いた状態となる。また原点方位情報が記憶部110に格納される。
[Step S117] The rotation indicator 120 initializes the stored values (G x , G y , G z ) of the rotation angle obtained by the calculation based on the measured values of the gyro sensor 31b to (0, 0, 0).
In this way, the initialization process is performed when the power is turned on to the speaker device 30, and the speaker 33 has the origin direction of gravity rotation (directly below the vertical) and the origin direction of horizontal rotation (front of the speaker device 30). It will be in a state facing. Further, the origin direction information is stored in the storage unit 110.

その後、ホストコンピュータ300は、不審人物を検出すると、その人物を対象人物21とする。そしてホストコンピュータ300は、対象人物21の位置を特定し、その位置に向けたスピーカ33の回転をスピーカ装置30に指示する。スピーカ装置30の回転制御装置100は、声かけ用回転制御および原点復帰処理を行う。 After that, when the host computer 300 detects a suspicious person, that person is set as the target person 21. Then, the host computer 300 identifies the position of the target person 21 and instructs the speaker device 30 to rotate the speaker 33 toward that position. The rotation control device 100 of the speaker device 30 performs rotation control for calling and home return processing.

図17は、声かけ用回転制御および原点復帰処理の手順の一例を示すフローチャート(1/2)である。以下、図17に示す処理をステップ番号に沿って説明する。
[ステップS201]回転制御装置100の回転指示部120は、ホストコンピュータ300から回転指示を取得する。例えばホストコンピュータ300から、水平方向に「−60°(H=−60°)」、重力の方向に「40°(V=40°)」の回転指示を取得したものとする。
FIG. 17 is a flowchart (1/2) showing an example of the procedure of rotation control for calling and origin return processing. Hereinafter, the process shown in FIG. 17 will be described along with the step numbers.
[Step S201] The rotation instruction unit 120 of the rotation control device 100 acquires a rotation instruction from the host computer 300. For example, it is assumed that a rotation instruction of "-60 ° (H = -60 °)" in the horizontal direction and "40 ° (V = 40 °)" in the direction of gravity is obtained from the host computer 300.

[ステップS202]回転指示部120は、水平方向への指定された角度の回転制御を行う。例えば水平方向に「−60°(H=−60°)」の回転指示を取得している場合、回転指示部120は、モータ32aを「−60°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を負の方向に設定し、「60°」分のパルス信号をモータ32aに出力する。 [Step S202] The rotation indicator 120 controls rotation at a designated angle in the horizontal direction. For example, when the rotation instruction of "-60 ° (H = -60 °)" is acquired in the horizontal direction, the rotation instruction unit 120 controls the motor 32a to rotate by "-60 °". That is, the rotation instruction unit 120 sets the rotation direction to a negative direction, and outputs a pulse signal for "60 °" to the motor 32a.

[ステップS203]角度算出部130は、回転指示部120によるモータ32aへのパルス信号の出力が終了すると、ジャイロセンサ31bの測定値を取得する。そして角度算出部130は、ジャイロセンサ31bの測定値に基づいて、式(4)に従って回転角Gzを算出する。脱調が発生していなければ、回転角Gzは「−60°」となる。角度算出部130は、算出した回転角Gzを、回転指示部120に通知する。 [Step S203] The angle calculation unit 130 acquires the measured value of the gyro sensor 31b when the output of the pulse signal to the motor 32a by the rotation instruction unit 120 is completed. Then, the angle calculation unit 130 calculates the rotation angle G z according to the equation (4) based on the measured value of the gyro sensor 31b. If step-out has not occurred, the angle of rotation G z is "-60 °". The angle calculation unit 130 notifies the rotation instruction unit 120 of the calculated rotation angle G z .

[ステップS204]回転指示部120は、重力の方向への指定された角度の回転制御を行う。例えばホストコンピュータ300から、重力の方向に「40°(V=40)」の回転指示を取得している場合、回転指示部120は、モータ32bを「40°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を正の方向に設定し、「40°」分のパルス信号をモータ32bに出力する。 [Step S204] The rotation instruction unit 120 controls rotation at a designated angle in the direction of gravity. For example, when a rotation instruction of "40 ° (V = 40)" is obtained from the host computer 300 in the direction of gravity, the rotation instruction unit 120 controls the motor 32b to rotate by "40 °". That is, the rotation instruction unit 120 sets the rotation direction to the positive direction, and outputs a pulse signal for "40 °" to the motor 32b.

[ステップS205]角度算出部130は、回転指示部120によるモータ32bへのパルス信号の出力が終了すると、ジャイロセンサ31bの測定値を取得する。そして角度算出部130は、ジャイロセンサ31bの測定値に基づいて、式(3)に従って回転角Gyを算出する。脱調が発生していなければ、回転角Gyは「40°」となる。角度算出部130は、算出した回転角Gyを、回転指示部120に通知する。 [Step S205] The angle calculation unit 130 acquires the measured value of the gyro sensor 31b when the output of the pulse signal to the motor 32b by the rotation instruction unit 120 is completed. Then, the angle calculation unit 130 calculates the rotation angle G y according to the equation (3) based on the measured value of the gyro sensor 31b. If step-out has not occurred, the rotation angle G y is “40 °”. The angle calculation unit 130 notifies the rotation instruction unit 120 of the calculated rotation angle G y .

[ステップS206]回転指示部120は、ホストコンピュータ300に、回転完了を通知する。するとホストコンピュータ300は、スピーカ33を用いて対象人物21向けの音声出力(声かけ)を行う。その間、回転指示部120は、ホストコンピュータ300による声かけ完了を待つ。ホストコンピュータ300は、声かけが完了すると、原点復帰指示をスピーカ装置30に送信する。回転指示部120は、原点復帰指示を受信すると、声かけが完了したものと認識し、処理をステップS211(図18参照)に進める。 [Step S206] The rotation instruction unit 120 notifies the host computer 300 of the completion of rotation. Then, the host computer 300 uses the speaker 33 to output voice (call out) to the target person 21. Meanwhile, the rotation instruction unit 120 waits for the host computer 300 to complete the call. When the call is completed, the host computer 300 transmits an home return instruction to the speaker device 30. When the rotation instruction unit 120 receives the origin return instruction, it recognizes that the call has been completed, and proceeds to the process in step S211 (see FIG. 18).

図18は、声かけ用回転制御および原点復帰処理の手順の一例を示すフローチャート(2/2)である。以下、図18に示す処理をステップ番号に沿って説明する。
[ステップS211]回転指示部120は、ホストコンピュータ300からの原点復帰指示を取得する。例えば回転指示部120は、ホストコンピュータ300から、原点復帰指示として、水平方向に「−Gz」、重力の方向に「−Gy」の回転指示を取得する。この原点復帰指示は、ジャイロセンサ31bの測定値に基づいて計算した回転角の分だけの、反対方向への回転指示である。
FIG. 18 is a flowchart (2/2) showing an example of the procedure of rotation control for calling and origin return processing. Hereinafter, the process shown in FIG. 18 will be described along with the step numbers.
[Step S211] The rotation instruction unit 120 acquires an origin return instruction from the host computer 300. For example, the rotation instruction unit 120 acquires a rotation instruction of “−G z ” in the horizontal direction and “−G y ” in the direction of gravity as an origin return instruction from the host computer 300. This origin return instruction is a rotation instruction in the opposite direction by the amount of the rotation angle calculated based on the measured value of the gyro sensor 31b.

[ステップS212]回転指示部120は、重力の方向への指定された角度「−Gy」の回転制御を行う。例えば回転角Gyが「40°」の場合、回転指示部120は、モータ32bを「−40°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を負の方向に設定して、「40°」分のパルス信号をモータ32bに出力する。 [Step S212] The rotation instruction unit 120 controls the rotation of a designated angle "-G y " in the direction of gravity. For example, when the rotation angle G y is "40 °", the rotation indicator 120 controls the motor 32b to rotate by "-40 °". That is, the rotation instruction unit 120 sets the rotation direction to a negative direction and outputs a pulse signal for "40 °" to the motor 32b.

[ステップS213]角度算出部130は、加速度センサ31aの測定値を取得する。そして角度算出部130は、加速度のX軸成分「Ax」とZ軸成分「Az」とに基づいて、上記の式(2)に従って重力の方向の角度差θy(傾き)を算出する。角度算出部130は、算出した重力の方向の角度差θyを、回転指示部120に通知する。 [Step S213] The angle calculation unit 130 acquires the measured value of the acceleration sensor 31a. Then, the angle calculation unit 130 calculates the angle difference θ y (inclination) in the direction of gravity according to the above equation (2) based on the X-axis component “A x ” and the Z-axis component “A z ” of the acceleration. .. The angle calculation unit 130 notifies the rotation instruction unit 120 of the calculated angle difference θ y in the direction of gravity.

[ステップS214]回転指示部120は、重力の方向の角度差θyが「0°」か否かを判定する。なお回転指示部120は、重力の方向の角度差θyが「0°」か否かの判定において、ある程度の許容範囲を持たせてもよい。回転指示部120は、重力の方向の角度差θyが「0°」であれば、処理をステップS216に進める。回転指示部120は、重力の方向の角度差θyが「0°」でなければ、処理をステップS215に進める。 [Step S214] The rotation instruction unit 120 determines whether or not the angle difference θ y in the direction of gravity is “0 °”. The rotation indicating unit 120 may have a certain allowable range in determining whether or not the angle difference θ y in the direction of gravity is “0 °”. If the angle difference θ y in the direction of gravity is “0 °”, the rotation indicator 120 advances the process to step S216. The rotation indicator 120 proceeds to step S215 if the angle difference θ y in the direction of gravity is not “0 °”.

[ステップS215]回転指示部120は、現在の重力の方向の角度差θyと原点方向「θy=0」との差分に応じた回転角の重力の方向の回転制御を行う。例えば「重力の方向の角度差θy=5°」であれば、回転指示部120は、モータ32bを「−5°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を負の方向に設定して、「5°」分のパルス信号をモータ32bに出力する。その後、回転指示部120は、処理をステップS213に進める。 [Step S215] The rotation instruction unit 120 controls the rotation of the rotation angle in the direction of gravity according to the difference between the angle difference θ y in the current direction of gravity and the origin direction “θ y = 0”. For example, if “angle difference θ y in the direction of gravity = 5 °”, the rotation indicator 120 controls the motor 32b to rotate by “−5 °”. That is, the rotation instruction unit 120 sets the rotation direction to a negative direction and outputs a pulse signal for "5 °" to the motor 32b. After that, the rotation instruction unit 120 advances the process to step S213.

[ステップS216]回転指示部120は、水平方向への指定された角度「−Gz」の回転制御を行う。例えば回転角Gzが「−60°」の場合、回転指示部120は、モータ32aを「60°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を正の方向に設定して、「60°」分のパルス信号をモータ32aに出力する。 [Step S216] The rotation instruction unit 120 controls the rotation of the designated angle “−G z ” in the horizontal direction. For example, when the rotation angle G z is “-60 °”, the rotation instruction unit 120 controls the motor 32a to rotate by “60 °”. That is, the rotation instruction unit 120 sets the rotation direction to the positive direction and outputs a pulse signal for "60 °" to the motor 32a.

[ステップS217]角度算出部130は、地磁気センサ31cの測定値に基づいて、スピーカ33の水平方向の角度差θzを検出する。例えば角度算出部130は、地磁気センサ31cの測定値を取得する。そして角度算出部130は、取得した測定値に応じたスピーカ33の水平方向の角度差θzを回転指示部120に通知する。 [Step S217] The angle calculation unit 130 detects the horizontal angle difference θ z of the speaker 33 based on the measured value of the geomagnetic sensor 31c. For example, the angle calculation unit 130 acquires the measured value of the geomagnetic sensor 31c. Then, the angle calculation unit 130 notifies the rotation instruction unit 120 of the horizontal angle difference θ z of the speaker 33 according to the acquired measured value.

[ステップS218]回転指示部120は、スピーカ33の水平方向の角度差θzが「0°」か否か、の判定において、ある程度の許容範囲を持たせてもよい。回転指示部120は、スピーカ33の水平方向の角度差θzが「0°」の場合、声かけ用回転制御および原点復帰処理を終了する。回転指示部120は、スピーカ33の水平方向の角度差θzが「0°」ではない場合、処理をステップS219に進める。 [Step S218] The rotation indicating unit 120 may have a certain allowable range in determining whether or not the horizontal angle difference θ z of the speaker 33 is “0 °”. When the horizontal angle difference θ z of the speaker 33 is “0 °”, the rotation indicating unit 120 ends the rotation control for calling and the origin return processing. If the horizontal angle difference θ z of the speaker 33 is not “0 °”, the rotation indicating unit 120 advances the process to step S219.

[ステップS219]回転指示部120は、現在のスピーカ33の水平方向の角度差に応じた回転角の水平方向の回転制御を行う。例えばスピーカ33を水平に向けた場合のスピーカの向きMと原点方位M0とは、地磁気センサの3軸方向の値を成分とするベクトルで表すことができる。この場合、回転指示部120は、スピーカ33を水平に向けた場合のスピーカの向きMのベクトルとM0のベクトルとの成す角を、スピーカ33の水平方向の角度差θzとする。算出したベクトル間の成す角が「5°」であれば、回転指示部120は、モータ32aを「−5°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を負の方向に設定して、「5°」分のパルス信号をモータ32aに出力する。その後、回転指示部120は、処理をステップS217に進める。 [Step S219] The rotation instruction unit 120 controls the rotation of the current speaker 33 in the horizontal direction according to the angle difference in the horizontal direction. For example, the speaker orientation M and the origin orientation M0 when the speaker 33 is oriented horizontally can be represented by a vector having values in the three-axis directions of the geomagnetic sensor as components. In this case, the rotation indicating unit 120 sets the angle formed by the vector of the speaker orientation M and the vector of M0 when the speaker 33 is oriented horizontally as the horizontal angle difference θ z of the speaker 33. If the angle formed between the calculated vectors is "5 °", the rotation indicator 120 controls the motor 32a to rotate by "-5 °". That is, the rotation instruction unit 120 sets the rotation direction to a negative direction and outputs a pulse signal for "5 °" to the motor 32a. After that, the rotation instruction unit 120 advances the process to step S217.

このようにして、声かけ処理の後に、スピーカ33の向きが原点に復帰する。回転制御装置100は、原点に復帰する際には、加速度センサ31aの測定値に基づいて、スピーカ33の向きを原点方向(重力の方向)に一致させる。また回転制御装置100は、原点に復帰する際には、地磁気センサ31cの測定値に基づいて、水平向の向きを原点方位(スピーカ装置30の正面)に一致させる。これにより、回転の際に脱調が生じても、スピーカ33の向きを正しい向きに修正することができる。 In this way, the orientation of the speaker 33 returns to the origin after the voice call process. When returning to the origin, the rotation control device 100 makes the direction of the speaker 33 coincide with the origin direction (direction of gravity) based on the measured value of the acceleration sensor 31a. Further, when returning to the origin, the rotation control device 100 makes the horizontal direction match the origin direction (front of the speaker device 30) based on the measured value of the geomagnetic sensor 31c. As a result, even if step-out occurs during rotation, the orientation of the speaker 33 can be corrected to the correct orientation.

また声かけの度に原点復帰処理を行うことで、脱調によるスピーカ33の向きのずれが累積せずに済み、次の声かけにおいて、対象人物21に正確に声かけを行うことができる。
〔第3の実施の形態〕
次に第3の実施の形態について説明する。第3の実施の形態は、原点復帰の際にスピーカ33の向きの誤差を補正するだけでなく、スピーカ33を対象人物21の方向に向けるとき(声かけ前)にもスピーカ33の向きの誤差を補正するものである。以下、第3の実施の形態における第2の実施の形態との相違点について説明する。
Further, by performing the origin return processing each time the voice is called, the deviation of the direction of the speaker 33 due to the step-out does not accumulate, and the target person 21 can be accurately called in the next voice.
[Third Embodiment]
Next, a third embodiment will be described. In the third embodiment, not only the error in the orientation of the speaker 33 is corrected when returning to the origin, but also the error in the orientation of the speaker 33 is corrected when the speaker 33 is directed toward the target person 21 (before speaking). Is to correct. Hereinafter, the differences between the third embodiment and the second embodiment will be described.

図19は、声かけ前におけるスピーカの向きの補正方法の一例を示す図である。図19の例では、回転制御装置100は、スピーカ33の方向を対象人物21に向ける場合、回転角を、加速区間、等速区間、および減速区間の3つの区間に分ける。加速区間は、回転速度(角速度)を徐々に速くする区間である。等速区間は、回転速度を一定に保つ区間である。減速区間は、回転速度を徐々に遅くする区間である。このようなモータ制御は、横軸に時間、縦軸に回転速度を採ったグラフを生成すると、図19に示す様な台形のグラフとなるため、台形制御と呼ばれる。 FIG. 19 is a diagram showing an example of a method of correcting the orientation of the speaker before speaking. In the example of FIG. 19, when the direction of the speaker 33 is directed to the target person 21, the rotation control device 100 divides the rotation angle into three sections: an acceleration section, a constant velocity section, and a deceleration section. The acceleration section is a section in which the rotational speed (angular velocity) is gradually increased. The constant velocity section is a section in which the rotation speed is kept constant. The deceleration section is a section in which the rotation speed is gradually reduced. Such motor control is called trapezoidal control because when a graph with time on the horizontal axis and rotation speed on the vertical axis is generated, a trapezoidal graph as shown in FIG. 19 is obtained.

図19の例では、加速区間は、モータ32a,32bにおける1パルス分の回転角の100倍の角度に予め指定されている。モータ32a,32bが、1パルスのパルス信号の入力ごとに「0.1°」だけ回転する場合、加速区間の角度は「10°」となる。1パルスのパルス信号当りのモータ32a,32bの回転角は、ステップ角とも呼ばれ、モータ32a,32bの固有値である。回転指示部120は、加速区間において、1パルスのパルス信号の出力ステップを100ステップ分繰り返すことになる。その際、回転指示部120は、パルス信号の出力間隔を、徐々に短くする。 In the example of FIG. 19, the acceleration section is designated in advance at an angle 100 times the rotation angle of one pulse in the motors 32a and 32b. When the motors 32a and 32b rotate by "0.1 °" for each input of one pulse signal, the angle of the acceleration section becomes "10 °". The rotation angles of the motors 32a and 32b per pulse signal of one pulse are also called step angles and are eigenvalues of the motors 32a and 32b. The rotation instruction unit 120 repeats the output step of the pulse signal of one pulse for 100 steps in the acceleration section. At that time, the rotation instruction unit 120 gradually shortens the output interval of the pulse signal.

減速区間も、モータ32a,32bにおける1パルス分の回転角の100倍の角度に予め指定されている。モータ32a,32bが、1パルスのパルス信号の入力ごとに「0.1°」だけ回転する場合、減速区間の角度は「10°」となる。回転指示部120は、等速区間において脱調が発生していなければ、減速区間において、1パルスのパルス信号の出力ステップを100ステップ分繰り返すことになる。その際、回転指示部120は、パルス信号の出力間隔を、徐々に長くする。 The deceleration section is also specified in advance at an angle 100 times the rotation angle of one pulse in the motors 32a and 32b. When the motors 32a and 32b rotate by "0.1 °" for each input of one pulse signal, the angle of the deceleration section becomes "10 °". If step-out does not occur in the constant velocity section, the rotation instruction unit 120 repeats the output step of the pulse signal of one pulse for 100 steps in the deceleration section. At that time, the rotation instruction unit 120 gradually increases the output interval of the pulse signal.

等速区間は、指定された角度から加速区間の角度と減速区間の角度を除いた残りの角度となる。図19の例では、ホストコンピュータ300から指示された回転角が「60°」であるため、等速区間は「40°」となる。この場合、回転指示部120は、加速区間において脱調が発生していなければ、等速区間において、1パルスのパルス信号の出力ステップを400ステップ分繰り返すことになる。その際、回転指示部120は、パルス信号の出力間隔を一定に保つ。 The constant velocity section is the remaining angle obtained by subtracting the angle of the acceleration section and the angle of the deceleration section from the specified angle. In the example of FIG. 19, since the rotation angle instructed by the host computer 300 is "60 °", the constant velocity section is "40 °". In this case, the rotation instruction unit 120 repeats the output step of the pulse signal of one pulse for 400 steps in the constant velocity section unless step-out occurs in the acceleration section. At that time, the rotation indicator 120 keeps the output interval of the pulse signal constant.

なお脱調が発生しない場合の等速区間でのパルス信号出力のステップ数は、以下の式で求められる。
ステップ数=(指定された角度/ステップ角)−(加速区間のステップ数×2)
このように回転角を3つの区間に分けることで、スピーカ33のスムーズな回転が可能となる。
The number of steps of pulse signal output in the constant velocity section when step-out does not occur is calculated by the following equation.
Number of steps = (specified angle / step angle)-(number of steps in acceleration section x 2)
By dividing the rotation angle into three sections in this way, the speaker 33 can be smoothly rotated.

そして回転制御装置100は、各区間の終了時点で、回転角の誤差を補正する。すなわち回転制御装置100は、加速区間から等速区間に移行するときに回転角の誤差を補正し、等速区間から減速区間に移行するときの回転角の誤差を補正し、減速区間後に停止したときにも回転角の誤差を補正する。 Then, the rotation control device 100 corrects the error of the rotation angle at the end of each section. That is, the rotation control device 100 corrects the error of the rotation angle when shifting from the acceleration section to the constant velocity section, corrects the error of the rotation angle when shifting from the constant velocity section to the deceleration section, and stops after the deceleration section. Sometimes, the error of the rotation angle is corrected.

加速区間、等速区間、および減速区間それぞれでの実際の回転角は、ジャイロセンサ31bの測定値を用いて計算することで、高精度に計算することができる。回転制御装置100は、ジャイロセンサ31bの測定値を用いて計算した各区間の回転角と、回転指示で指定された指定角度に応じて決定された角区間の回転角との誤差を計算して、誤差の分の補正を行う。 The actual angle of rotation in each of the acceleration section, the constant velocity section, and the deceleration section can be calculated with high accuracy by calculating using the measured value of the gyro sensor 31b. The rotation control device 100 calculates an error between the rotation angle of each section calculated using the measured value of the gyro sensor 31b and the rotation angle of the angle section determined according to the designated angle specified by the rotation instruction. , Correct the error.

停止後は、回転制御装置100は、加速度センサ31aの測定値を用いて、重力の方向の角度差θyを計算する。そして回転制御装置100は、計算した重力の方向の角度差θyと指定角度との誤差を計算して、誤差の分の補正を行う。 After stopping, the rotation control device 100 calculates the angle difference θ y in the direction of gravity using the measured value of the acceleration sensor 31a. Then, the rotation control device 100 calculates an error between the calculated angle difference θ y in the direction of gravity and the designated angle, and corrects the error.

図19の例では、加速区間の終了時点において、ジャイロセンサ31bの測定値を用いて計算した回転角Gyは「8°」である。すると加速区間における本来の回転角「10°」に「2°」不足している。この場合、回転制御装置100は、等速区間におけるパルス信号の出力ステップ数を、「2°」の回転分だけ増加させる補正を行う。図19の例では、ステップ角が「0.1°」なので、等速区間に20ステップ追加される。その結果、回転制御装置100は、等速区間において420ステップのパルス信号の出力を行う。 In the example of FIG. 19, at the end of the acceleration section, the rotation angle G y calculated using the measured value of the gyro sensor 31b is “8 °”. Then, the original rotation angle "10 °" in the acceleration section is "2 °" short. In this case, the rotation control device 100 corrects the number of output steps of the pulse signal in the constant velocity section by increasing the number of rotations by "2 °". In the example of FIG. 19, since the step angle is “0.1 °”, 20 steps are added to the constant velocity section. As a result, the rotation control device 100 outputs a pulse signal of 420 steps in the constant velocity section.

図19の例では、等速区間の終了時点において、ジャイロセンサ31bの測定値を用いて計算した回転角Gyは「50°」である。この場合、誤差がないため、補正は行われない。従って、回転制御装置100は、減速区間において100ステップのパルス信号の出力を行う。 In the example of FIG. 19, at the end of the constant velocity section, the rotation angle G y calculated using the measured value of the gyro sensor 31b is “50 °”. In this case, since there is no error, no correction is performed. Therefore, the rotation control device 100 outputs a pulse signal of 100 steps in the deceleration section.

減速区間の終了時点において、加速度センサ31aの測定値が「Ax=8.027,Az=−5.62」であったものとする。この場合、式(2)に従って重力の方向の角度差θyを計算すると「55°」となる。すると、指定された角度「60°」に対して「5°」の誤差がある。この場合、回転制御装置100は、さらに「5°」分の回転制御(50ステップのパルス信号の出力)を行う。 It is assumed that the measured value of the acceleration sensor 31a at the end of the deceleration section is "A x = 8.027, A z = -5.62". In this case, the angle difference θ y in the direction of gravity is calculated according to Eq. (2) to be “55 °”. Then, there is an error of "5 °" with respect to the specified angle "60 °". In this case, the rotation control device 100 further performs rotation control (output of a pulse signal in 50 steps) for "5 °".

区間の終了時点で補正を行うことで、減速区間の終了時点での誤差を少なく抑えることができる。例えば回転制御装置100は、スピーカ33を対象人物21に向けるときの回転制御においては、減速区間の終了時点での誤差が「3°」以下の場合には補正を行わないようにする。これにより、スピーカ33の回転を停止させた後に、再度、小刻みに回転させるような補正を抑止することができる。なお回転制御装置100は、原点復帰の際には、停止後にさらに高精度(例えば誤差「1°」以下)にスピーカ33の向きを補正する。 By making corrections at the end of the section, it is possible to reduce the error at the end of the deceleration section. For example, the rotation control device 100 does not perform correction when the error at the end of the deceleration section is "3 °" or less in the rotation control when the speaker 33 is directed to the target person 21. As a result, it is possible to suppress the correction that the speaker 33 is rotated in small steps again after the rotation of the speaker 33 is stopped. When returning to the origin, the rotation control device 100 corrects the direction of the speaker 33 with higher accuracy (for example, an error of “1 °” or less) after stopping.

図20は、声かけ前におけるスピーカの向きの制御手順の一例を示すフローチャートである。図20に示す処理のうち、ステップS301,S306の処理は、それぞれ図17に示した第2の実施の形態のステップS201,S206の処理と同様である。またステップS306の終了後は、第2の実施の形態と同様に、図18に示すステップS211〜S219の処理が実行される。以下、第2の実施の形態と異なる処理について、ステップごとに説明する。 FIG. 20 is a flowchart showing an example of a procedure for controlling the orientation of the speaker before speaking. Of the processes shown in FIG. 20, the processes of steps S301 and S306 are the same as the processes of steps S201 and S206 of the second embodiment shown in FIG. 17, respectively. Further, after the end of step S306, the processes of steps S211 to S219 shown in FIG. 18 are executed as in the second embodiment. Hereinafter, processing different from that of the second embodiment will be described step by step.

[ステップS302]回転指示部120は、加速区間の角度「10°」分の水平方向への回転制御を行う。例えば指定角度が「−60°」であれば、回転指示部120は、モータ32aを「−10°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を負の方向に設定し、「10°」分のパルス信号(100ステップ)をモータ32aに出力する。 [Step S302] The rotation instruction unit 120 controls the rotation in the horizontal direction by the angle "10 °" of the acceleration section. For example, if the designated angle is "-60 °", the rotation indicator 120 controls the motor 32a to rotate by "-10 °". That is, the rotation instruction unit 120 sets the rotation direction to a negative direction, and outputs a pulse signal (100 steps) for "10 °" to the motor 32a.

[ステップS303]回転制御装置100内の回転指示部120と角度算出部130とは協働して、回転途中での補正を伴う水平方向回転処理を実施する。水平方向回転処理の詳細は後述する(図21参照)。 [Step S303] The rotation instruction unit 120 and the angle calculation unit 130 in the rotation control device 100 cooperate with each other to perform horizontal rotation processing accompanied by correction during rotation. Details of the horizontal rotation process will be described later (see FIG. 21).

[ステップS304]回転指示部120は、加速区間の角度「10°」分の重力の方向への回転制御を行う。例えば指定角度が「60°」であれば、回転指示部120は、モータ32bを「10°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を正の方向に設定し、「10°」分のパルス信号をモータ32bに出力する。 [Step S304] The rotation instruction unit 120 controls the rotation in the direction of gravity for the angle "10 °" of the acceleration section. For example, if the designated angle is "60 °", the rotation indicator 120 controls the motor 32b to rotate by "10 °". That is, the rotation instruction unit 120 sets the rotation direction to the positive direction and outputs a pulse signal for "10 °" to the motor 32b.

[ステップS305]回転制御装置100内の回転指示部120と角度算出部130とは協働して、回転途中での補正を伴う重力の方向回転処理を実施する。重力の方向回転処理の詳細は後述する(図22参照)。 [Step S305] The rotation instruction unit 120 and the angle calculation unit 130 in the rotation control device 100 cooperate with each other to perform a gravitational direction rotation process accompanied by a correction during rotation. The details of the gravitational directional rotation process will be described later (see FIG. 22).

次に、水平方向回転処理について詳細に説明する。
図21は、回転途中での補正を伴う水平方向回転処理の手順の一例を示すフローチャートである。以下、図21に示す処理をステップ番号に沿って説明する。
Next, the horizontal rotation process will be described in detail.
FIG. 21 is a flowchart showing an example of a procedure of horizontal rotation processing accompanied by correction during rotation. Hereinafter, the process shown in FIG. 21 will be described along with the step numbers.

[ステップS401]角度算出部130は、ジャイロセンサ31bの測定値に基づいて回転角Gzを算出する。ステップS302(図20参照)において100ステップのパルス信号出力が行われており、脱調が発生していなければ、回転角Gzは「−10°」となる。 [Step S401] The angle calculation unit 130 calculates the angle of rotation G z based on the measured value of the gyro sensor 31b. If the pulse signal is output in 100 steps in step S302 (see FIG. 20) and step-out has not occurred, the rotation angle G z is “-10 °”.

[ステップS402]回転指示部120は、回転角Gzの絶対値が「ステップ角×加速区間におけるステップ数(100)」と等しいか否かを判定する。なお回転指示部120は、回転角Gzの絶対値が「ステップ角×加速区間におけるステップ数(100)」と等しいか否かの判定において、ある程度の許容範囲を持たせてもよい。回転指示部120は、回転角Gzの絶対値が「ステップ角×加速区間におけるステップ数(100)」と等しい場合、処理をステップS403に進める。また回転指示部120は、回転角Gzの絶対値が「ステップ角×加速区間におけるステップ数(100)」と等しくない場合、処理をステップS404に進める。 [Step S402] The rotation instruction unit 120 determines whether or not the absolute value of the rotation angle G z is equal to "step angle x number of steps in the acceleration section (100)". The rotation indicating unit 120 may have a certain allowable range in determining whether or not the absolute value of the rotation angle G z is equal to "step angle x number of steps in the acceleration section (100)". When the absolute value of the rotation angle G z is equal to "step angle x number of steps in the acceleration section (100)", the rotation instruction unit 120 advances the process to step S403. Further, when the absolute value of the rotation angle G z is not equal to "step angle x number of steps (100) in the acceleration section", the rotation instruction unit 120 advances the process to step S404.

[ステップS403]回転指示部120は、現在の回転角と加速区間の角度とにずれがないため、回転角の補正を行わずに等速区間における水平方向の等速回転制御を行う。すなわち回転指示部120は、「指定角度/ステップ角−加速区間のステップ数(100ステップ)×2」に相当する回数だけ、モータ32aへのパルス信号の出力ステップを実行する。例えば指定角度が「−60°」であれば、回転指示部120は、400ステップ分のパルス信号の出力を行う。その後、回転指示部120は処理をステップS406に進める。 [Step S403] Since there is no discrepancy between the current rotation angle and the angle of the acceleration section, the rotation instruction unit 120 performs horizontal constant speed rotation control in the constant speed section without correcting the rotation angle. That is, the rotation instruction unit 120 executes the pulse signal output step to the motor 32a as many times as the number of times corresponding to "designated angle / step angle-number of steps in the acceleration section (100 steps) x 2". For example, if the designated angle is "-60 °", the rotation indicator 120 outputs a pulse signal for 400 steps. After that, the rotation instruction unit 120 advances the process to step S406.

[ステップS404]回転指示部120は、回転誤差分のステップ数「αH」を計算する。回転誤差分のステップ数は、「{ステップ角×加速区間におけるステップ数(100)−|Gz|}×100」で求められる。 [Step S404] The rotation instruction unit 120 calculates the number of steps "αH" for the rotation error. The number of steps for the rotation error is obtained by "{step angle x number of steps in the acceleration section (100)-| G z |} x 100".

[ステップS405]回転指示部120は、回転角の補正を伴う、等速区間における水平方向の等速回転制御を行う。すなわち回転指示部120は、「指定角度/ステップ角−加速区間のステップ数(100ステップ)×2+αH」に相当する回数だけ、モータ32aへのパルス信号の出力ステップを実行する。 [Step S405] The rotation instruction unit 120 performs horizontal constant velocity rotation control in a constant velocity section with correction of the rotation angle. That is, the rotation instruction unit 120 executes the pulse signal output step to the motor 32a as many times as the number of times corresponding to "the number of steps (100 steps) x 2 + αH in the designated angle / step angle-acceleration section".

[ステップS406]角度算出部130は、ジャイロセンサ31bの測定値に基づいて回転角Gzを算出する。例えば等速区間が「−40°」分の区間の場合、等速区間で脱調が生じていなければ、回転角Gzは「−50°」となる。 [Step S406] The angle calculation unit 130 calculates the angle of rotation G z based on the measured value of the gyro sensor 31b. For example, when the constant velocity section is a section of "-40 °", the rotation angle G z is "-50 °" if there is no step-out in the constant velocity section.

[ステップS407]回転指示部120は、回転角Gzの絶対値が「|指定角度|−ステップ角×減速区間におけるステップ数(100)」と等しいか否かを判定する。なお回転指示部120は、回転角Gzの絶対値が「|指定角度|−ステップ角×減速区間におけるステップ数(100)」と等しいか否かの判定において、ある程度の許容範囲を持たせてもよい。回転指示部120は、回転角Gzの絶対値が「|指定角度|−ステップ角×減速区間におけるステップ数(100)」と等しい場合、処理をステップS408に進める。また回転指示部120は、回転角Gzの絶対値が「|指定角度|−ステップ角×減速区間におけるステップ数(100)」と等しくない場合、処理をステップS409に進める。 [Step S407] The rotation instruction unit 120 determines whether or not the absolute value of the rotation angle G z is equal to "| designated angle | -step angle x number of steps in the deceleration section (100)". The rotation indicator 120 is provided with a certain allowable range in determining whether or not the absolute value of the rotation angle G z is equal to "| designated angle | -step angle x number of steps in the deceleration section (100)". May be good. When the absolute value of the rotation angle G z is equal to "| designated angle | -step angle x number of steps (100) in the deceleration section", the rotation instruction unit 120 advances the process to step S408. Further, when the absolute value of the rotation angle G z is not equal to "| designated angle | -step angle x number of steps (100) in the deceleration section", the rotation instruction unit 120 advances the process to step S409.

[ステップS408]回転指示部120は、減速区間の角度「10°」分の水平方向への回転制御を行う。例えば指定角度が「−60°」であれば、回転指示部120は、モータ32aを「−10°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を負の方向に設定し、「10°」分のパルス信号(100ステップ)をモータ32aに出力する。その後、回転指示部120は、処理をステップS411に進める。 [Step S408] The rotation instruction unit 120 controls the rotation in the horizontal direction by the angle "10 °" of the deceleration section. For example, if the designated angle is "-60 °", the rotation indicator 120 controls the motor 32a to rotate by "-10 °". That is, the rotation instruction unit 120 sets the rotation direction to a negative direction, and outputs a pulse signal (100 steps) for "10 °" to the motor 32a. After that, the rotation instruction unit 120 advances the process to step S411.

[ステップS409]回転指示部120は、回転誤差分のステップ数「βH」を計算する。回転誤差分のステップ数は、「{|指定角度|−ステップ角×減速区間におけるステップ数(100)−|Gz|}×100」で求められる。 [Step S409] The rotation instruction unit 120 calculates the number of steps "βH" for the rotation error. The number of steps for the rotation error is obtained by "{| designated angle | -step angle x number of steps in the deceleration section (100)-| G z |} x 100".

[ステップS410]回転指示部120は、回転角の補正を伴う、減速区間における水平方向の等速回転制御を行う。すなわち回転指示部120は、「減速区間のステップ数(100ステップ)+βH」に相当する回数だけ、モータ32aへのパルス信号出力ステップを実行する。 [Step S410] The rotation instruction unit 120 performs horizontal constant velocity rotation control in the deceleration section with correction of the rotation angle. That is, the rotation instruction unit 120 executes the pulse signal output step to the motor 32a as many times as the number of times corresponding to "the number of steps in the deceleration section (100 steps) + βH".

[ステップS411]角度算出部130は、ジャイロセンサ31bの測定値に基づいて回転角Gzを算出する。例えば指定角度が「−60°」の場合、減速区間で脱調が生じていなければ、回転角Gzは「−60°」となる。 [Step S411] The angle calculation unit 130 calculates the angle of rotation G z based on the measured value of the gyro sensor 31b. For example, when the designated angle is "-60 °", the rotation angle G z is "-60 °" if there is no step-out in the deceleration section.

[ステップS412]回転指示部120は、回転角Gzの絶対値が指定角度と等しいか否かを判定する。なお回転指示部120は、回転角Gzの絶対値が指定角度と等しいか否かの判定において、ある程度の許容範囲を持たせてもよい。回転指示部120は、回転角Gzの絶対値が指定角度と等しい場合、水平方向回転処理を終了する。また回転指示部120は、回転角Gzの絶対値が指定角度と等しくない場合、処理をステップS413に進める。 [Step S412] The rotation instruction unit 120 determines whether or not the absolute value of the rotation angle G z is equal to the designated angle. The rotation indicating unit 120 may have a certain allowable range in determining whether or not the absolute value of the rotation angle G z is equal to the designated angle. When the absolute value of the rotation angle G z is equal to the designated angle, the rotation instruction unit 120 ends the horizontal rotation process. Further, when the absolute value of the rotation angle G z is not equal to the designated angle, the rotation instruction unit 120 advances the process to step S413.

[ステップS413]回転指示部120は、誤差分の水平方向への回転制御を行う。例えば回転指示部120は、「指定角度−回転角Gz」を誤差の角度とし、誤差の角度だけ回転するように、モータ32aを制御する。すなわち回転指示部120は、誤差の角度分のパルス信号(誤差の角度×100ステップ)をモータ32aに出力する。その後、回転指示部120は、処理をステップS411に進める。 [Step S413] The rotation instruction unit 120 controls the rotation of the error in the horizontal direction. For example, the rotation indicator 120 controls the motor 32a so that "designated angle-rotation angle G z " is set as the error angle and the motor 32a rotates by the error angle. That is, the rotation instruction unit 120 outputs a pulse signal (error angle × 100 steps) corresponding to the error angle to the motor 32a. After that, the rotation instruction unit 120 advances the process to step S411.

このようにして、回転途中で回転角の補正を行いながら、水平方向の回転処理を行うことができる。
図22は、回転途中での補正を伴う重力の方向回転処理の手順の一例を示すフローチャートである。以下、図22に示す処理をステップ番号に沿って説明する。
In this way, it is possible to perform the rotation process in the horizontal direction while correcting the rotation angle during the rotation.
FIG. 22 is a flowchart showing an example of a procedure for directional rotation processing of gravity accompanied by correction during rotation. Hereinafter, the process shown in FIG. 22 will be described along with the step numbers.

[ステップS501]角度算出部130は、ジャイロセンサ31bの測定値に基づいて回転角Gyを算出する。ステップS304(図20参照)において100ステップのパルス信号出力が行われており、脱調が発生していなければ、回転角Gyは「10°」となる。 [Step S501] The angle calculation unit 130 calculates the angle of rotation G y based on the measured value of the gyro sensor 31b. If the pulse signal is output in 100 steps in step S304 (see FIG. 20) and step-out has not occurred, the rotation angle G y is “10 °”.

[ステップS502]回転指示部120は、回転角Gyの絶対値が「ステップ角×加速区間におけるステップ数(100)」と等しいか否かを判定する。なお回転指示部120は、回転角Gyの絶対値が「ステップ角×加速区間におけるステップ数(100)」と等しいか否かの判定において、ある程度の許容範囲を持たせてもよい。回転指示部120は、回転角Gyの絶対値が「ステップ角×加速区間におけるステップ数(100)」と等しい場合、処理をステップS503に進める。また回転指示部120は、回転角Gyの絶対値が「ステップ角×加速区間におけるステップ数(100)」と等しくない場合、処理をステップS504に進める。 [Step S502] The rotation instruction unit 120 determines whether or not the absolute value of the rotation angle G y is equal to "step angle x number of steps in the acceleration section (100)". The rotation indicating unit 120 may have a certain allowable range in determining whether or not the absolute value of the rotation angle G y is equal to "step angle x number of steps in the acceleration section (100)". When the absolute value of the rotation angle G y is equal to "step angle x number of steps in the acceleration section (100)", the rotation instruction unit 120 advances the process to step S503. Further, when the absolute value of the rotation angle G y is not equal to "step angle x number of steps (100) in the acceleration section", the rotation instruction unit 120 advances the process to step S504.

[ステップS503]回転指示部120は、現在の回転角と加速区間の角度とにずれがないため、回転角の補正を行わずに等速区間における重力の方向の等速回転制御を行う。すなわち回転指示部120は、「指定角度/ステップ角−加速区間のステップ数(100)×2」に相当する回数だけ、モータ32bへのパルス信号出力ステップを実行する。例えば指定角度が「60°」であれば、回転指示部120は、400ステップ分のパルス信号の出力を行う。その後、回転指示部120は処理をステップS506に進める。 [Step S503] Since there is no deviation between the current rotation angle and the angle of the acceleration section, the rotation instruction unit 120 performs constant velocity rotation control in the direction of gravity in the constant velocity section without correcting the rotation angle. That is, the rotation instruction unit 120 executes the pulse signal output step to the motor 32b as many times as the number of times corresponding to "the number of steps (100) x 2 in the designated angle / step angle-acceleration section". For example, if the designated angle is "60 °", the rotation indicator 120 outputs a pulse signal for 400 steps. After that, the rotation instruction unit 120 advances the process to step S506.

[ステップS504]回転指示部120は、回転誤差分のステップ数「αV」を計算する。回転誤差分のステップ数は、「{ステップ角×加速区間におけるステップ数(100)−|Gy|}×100」で求められる。 [Step S504] The rotation instruction unit 120 calculates the number of steps "αV" for the rotation error. The number of steps for the rotation error is obtained by "{step angle x number of steps in the acceleration section (100)-| Gy |} x 100".

[ステップS505]回転指示部120は、回転角の補正を伴う、等速区間における重力の方向の等速回転制御を行う。すなわち回転指示部120は、「指定角度/ステップ角−加速区間のステップ数(100)×2+αV」に相当する回数だけ、モータ32bへのパルス信号出力ステップを実行する。 [Step S505] The rotation instruction unit 120 performs constant velocity rotation control in the direction of gravity in the constant velocity section with correction of the rotation angle. That is, the rotation instruction unit 120 executes the pulse signal output step to the motor 32b as many times as the number of times corresponding to "the number of steps (100) x 2 + αV in the designated angle / step angle-acceleration section".

[ステップS506]角度算出部130は、ジャイロセンサ31bの測定値に基づいて回転角Gyを算出する。例えば等速区間が「40°」分の区間の場合、等速区間で脱調が生じていなければ、回転角Gyは「50°」となる。 [Step S506] The angle calculation unit 130 calculates the angle of rotation G y based on the measured value of the gyro sensor 31b. For example, when the constant velocity section is a section of "40 °", the rotation angle G y is "50 °" if step-out does not occur in the constant velocity section.

[ステップS507]回転指示部120は、回転角Gyの絶対値が「|指定角度|−ステップ角×減速区間におけるステップ数(100)」と等しいか否かを判定する。なお回転指示部120は、回転角Gyの絶対値が「|指定角度|−ステップ角×減速区間におけるステップ数(100)」と等しいか否かの判定において、ある程度の許容範囲を持たせてもよい。回転指示部120は、回転角Gyの絶対値が「|指定角度|−ステップ角×減速区間におけるステップ数(100)」と等しい場合、処理をステップS508に進める。また回転指示部120は、回転角Gyの絶対値が「|指定角度|−ステップ角×減速区間におけるステップ数(100)」と等しくない場合、処理をステップS509に進める。 [Step S507] The rotation instruction unit 120 determines whether or not the absolute value of the rotation angle G y is equal to "| designated angle | -step angle x number of steps in the deceleration section (100)". The rotation indicator 120 is provided with a certain allowable range in determining whether or not the absolute value of the rotation angle G y is equal to "| designated angle | -step angle x number of steps in the deceleration section (100)". May be good. When the absolute value of the rotation angle G y is equal to "| designated angle | -step angle x number of steps (100) in the deceleration section", the rotation instruction unit 120 advances the process to step S508. Further, when the absolute value of the rotation angle G y is not equal to "| designated angle | -step angle x number of steps (100) in the deceleration section", the rotation instruction unit 120 proceeds to step S509.

[ステップS508]回転指示部120は、減速区間の角度「10°」分の重力の方向への回転制御を行う。例えば指定角度が「60°」であれば、回転指示部120は、モータ32bを「10°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を正の方向に設定し、「10°」分のパルス信号(100ステップ)をモータ32bに出力する。その後、回転指示部120は、処理をステップS511に進める。 [Step S508] The rotation instruction unit 120 controls the rotation in the direction of gravity for the angle "10 °" of the deceleration section. For example, if the designated angle is "60 °", the rotation indicator 120 controls the motor 32b to rotate by "10 °". That is, the rotation instruction unit 120 sets the rotation direction to the positive direction, and outputs a pulse signal (100 steps) for "10 °" to the motor 32b. After that, the rotation instruction unit 120 advances the process to step S511.

[ステップS509]回転指示部120は、回転誤差分のステップ数「βV」を計算する。回転誤差分のステップ数は、「{|指定角度|−ステップ角×減速区間におけるステップ数(100)−|Gy|}×100」で求められる。 [Step S509] The rotation instruction unit 120 calculates the number of steps "βV" for the rotation error. The number of steps for the rotation error is obtained by "{| designated angle | -step angle x number of steps in the deceleration section (100)-| Gy |} x 100".

[ステップS510]回転指示部120は、回転角の補正を伴う、減速区間における重力の方向の等速回転制御を行う。すなわち回転指示部120は、「加速区間のステップ数(100ステップ)+βV」に相当する回数だけ、モータ32bへのパルス信号出力ステップを実行する。 [Step S510] The rotation instruction unit 120 performs constant velocity rotation control in the direction of gravity in the deceleration section, accompanied by correction of the rotation angle. That is, the rotation instruction unit 120 executes the pulse signal output step to the motor 32b as many times as the number of times corresponding to "the number of steps in the acceleration section (100 steps) + βV".

[ステップS511]角度算出部130は、ジャイロセンサ31bの測定値に基づいて回転角Gyを算出する。例えば指定角度が「60°」の場合、減速区間で脱調が生じていなければ、回転角Gyは「60°」となる。 [Step S511] The angle calculation unit 130 calculates the angle of rotation G y based on the measured value of the gyro sensor 31b. For example, when the designated angle is "60 °", the rotation angle G y is "60 °" unless step-out occurs in the deceleration section.

[ステップS512]回転指示部120は、回転角Gyの絶対値が指定角度と等しいか否かを判定する。なお回転指示部120は、回転角Gyの絶対値が指定角度と等しいか否かの判定において、ある程度の許容範囲を持たせてもよい。回転指示部120は、回転角Gyの絶対値が指定角度と等しい場合、重力の方向回転処理を終了する。また回転指示部120は、回転角Gyの絶対値が指定角度と等しくない場合、処理をステップS513に進める。 [Step S512] The rotation instruction unit 120 determines whether or not the absolute value of the rotation angle G y is equal to the designated angle. The rotation indicating unit 120 may have a certain allowable range in determining whether or not the absolute value of the rotation angle G y is equal to the designated angle. When the absolute value of the rotation angle G y is equal to the designated angle, the rotation instruction unit 120 ends the gravitational direction rotation process. If the absolute value of the rotation angle G y is not equal to the designated angle, the rotation instruction unit 120 advances the process to step S513.

[ステップS513]回転指示部120は、誤差分の重力の方向への回転制御を行う。例えば回転指示部120は、「指定角度−回転角Gy」を誤差の角度とし、誤差の角度だけ回転するように、モータ32bを制御する。すなわち回転指示部120は、誤差の角度分のパルス信号(誤差の角度×100ステップ)をモータ32bに出力する。その後、回転指示部120は、処理をステップS511に進める。 [Step S513] The rotation instruction unit 120 controls the rotation of the error in the direction of gravity. For example, the rotation indicator 120 controls the motor 32b so that "designated angle-rotation angle G y " is set as the error angle and the motor 32b rotates by the error angle. That is, the rotation instruction unit 120 outputs a pulse signal (error angle × 100 steps) corresponding to the error angle to the motor 32b. After that, the rotation instruction unit 120 advances the process to step S511.

このようにして、回転途中で回転角の補正を行いながら、重力の方向の回転処理を行うことができる。
このように、対象人物21にスピーカ33を向ける際にも回転角の補正を行うことで、スピーカ33から出力された音声を正確に対象人物21に届けることができる。またスピーカ33の回転動作中にも回転角の補正を行うことで、補正を行いながらも、スピーカ33を滑らかに回転させることができる。
In this way, it is possible to perform rotation processing in the direction of gravity while correcting the rotation angle during rotation.
In this way, by correcting the rotation angle even when the speaker 33 is directed to the target person 21, the sound output from the speaker 33 can be accurately delivered to the target person 21. Further, by correcting the rotation angle even during the rotation operation of the speaker 33, the speaker 33 can be smoothly rotated while the correction is performed.

〔第4の実施の形態〕
次に第4の実施の形態について説明する。第4の実施の形態は、ジャイロセンサ31bを用いずに、回転角のずれを補正するものである。
[Fourth Embodiment]
Next, a fourth embodiment will be described. In the fourth embodiment, the deviation of the rotation angle is corrected without using the gyro sensor 31b.

図23は、ジャイロセンサを用いない場合の初期化処理の手順の一例を示すフローチャートである。なお、図23に示すステップS601〜S606の処理は、それぞれ図15に示す第2の実施の形態のステップS101〜S106と同様である。そこで第2の実施の形態と異なるステップS607以降の処理について、以下にステップ番号に沿って説明する。 FIG. 23 is a flowchart showing an example of the procedure of the initialization process when the gyro sensor is not used. The processing of steps S601 to S606 shown in FIG. 23 is the same as the processing of steps S101 to S106 of the second embodiment shown in FIG. 15, respectively. Therefore, the processing after step S607, which is different from the second embodiment, will be described below along with the step numbers.

[ステップS607]角度算出部130は、地磁気センサ31cの測定値を取得する。そして角度算出部130は、地磁気センサ31cの測定値に基づいて、現在のスピーカ33の向きの方位M1を決定する。 [Step S607] The angle calculation unit 130 acquires the measured value of the geomagnetic sensor 31c. Then, the angle calculation unit 130 determines the current orientation M1 of the speaker 33 based on the measured value of the geomagnetic sensor 31c.

[ステップS608]回転指示部120は、スピーカ33の、水平方向への所定の角度の等速回転制御を行う。例えば、初期化処理時の水平方向の基準回転角ZHが「10°」に設定されているものとする。この場合、回転指示部120は、モータ32aを「10°」だけ回転するように制御する。すなわち回転指示部120は、「10°」分のパルス信号をモータ32aに出力する。 [Step S608] The rotation instruction unit 120 controls the constant velocity rotation of the speaker 33 at a predetermined angle in the horizontal direction. For example, it is assumed that the reference rotation angle ZH in the horizontal direction during the initialization process is set to "10 °". In this case, the rotation indicator 120 controls the motor 32a to rotate by "10 °". That is, the rotation instruction unit 120 outputs a pulse signal for "10 °" to the motor 32a.

[ステップS609]角度算出部130は、地磁気センサ31cの測定値を取得する。そして角度算出部130は、地磁気センサ31cの測定値に基づいて、現在のスピーカ33の向きの方位M1’を決定する。 [Step S609] The angle calculation unit 130 acquires the measured value of the geomagnetic sensor 31c. Then, the angle calculation unit 130 determines the current orientation M1'of the speaker 33 based on the measured value of the geomagnetic sensor 31c.

[ステップS610]回転指示部120は、方位M1’と方位M1との差分(|M1’−M1|)が基準回転角ZH「10°」に等しいか否かを判定する。なお回転指示部120は、方位M1’と方位M1との差分が基準回転角ZH「10°」に等しいか否かの判定において、ある程度の許容範囲を持たせてもよい。回転指示部120は、方位M1’と方位M1との差分が「10°」であれば、処理をステップS608に進める。回転指示部120は、方位M1’と方位M1との差分が「10°」でなければ、処理をステップS611に進める。 [Step S610] The rotation instruction unit 120 determines whether or not the difference (| M1'-M1 |) between the direction M1'and the direction M1 is equal to the reference rotation angle ZH "10 °". The rotation indicator 120 may have a certain allowable range in determining whether or not the difference between the direction M1'and the direction M1 is equal to the reference rotation angle ZH "10 °". If the difference between the direction M1'and the direction M1 is "10 °", the rotation instruction unit 120 proceeds to the process in step S608. If the difference between the direction M1'and the direction M1 is not "10 °", the rotation instruction unit 120 proceeds to the process in step S611.

[ステップS611]回転指示部120は、スピーカ33の、水平方向への所定の角度(例えば水平方向の回転の可動範囲の角度の半分)の等速回転制御を行う。例えば、水平方向の回転の可動範囲が「180°」であり、ステップS608〜S610の処理により正の回転方向の端部までスピーカ33が回転しているものとする。この場合、回転指示部120は、モータ32aを「−90°」だけ回転するように制御する。すなわち回転指示部120は、回転方向を負の方向に設定し、「90°」分のパルス信号をモータ32aに出力する。 [Step S611] The rotation instruction unit 120 controls the constant velocity rotation of the speaker 33 at a predetermined angle in the horizontal direction (for example, half the angle of the movable range of rotation in the horizontal direction). For example, it is assumed that the movable range of rotation in the horizontal direction is "180 °", and the speaker 33 is rotated to the end in the positive rotation direction by the processing of steps S608 to S610. In this case, the rotation indicator 120 controls the motor 32a to rotate by "−90 °". That is, the rotation instruction unit 120 sets the rotation direction to a negative direction and outputs a pulse signal for "90 °" to the motor 32a.

[ステップS612]角度算出部130は、回転指示部120によるモータ32aへのパルス信号の出力が終了すると、地磁気センサ31cの測定値を取得する。そして角度算出部130は、地磁気センサ31cの測定値に基づいて原点方位M0を決定する。すなわち角度算出部130は、現時点のスピーカ33の向きを水平にした場合にスピーカ33が向く方位を原点方位M0とする。角度算出部130は、取得した地磁気センサ31cの測定値を、原点方位情報として記憶部110に格納する。 [Step S612] The angle calculation unit 130 acquires the measured value of the geomagnetic sensor 31c when the output of the pulse signal to the motor 32a by the rotation instruction unit 120 is completed. Then, the angle calculation unit 130 determines the origin direction M0 based on the measured value of the geomagnetic sensor 31c. That is, the angle calculation unit 130 sets the direction in which the speaker 33 faces when the current direction of the speaker 33 is horizontal as the origin direction M0. The angle calculation unit 130 stores the acquired measured value of the geomagnetic sensor 31c in the storage unit 110 as origin orientation information.

このようにして、初期化時に、ジャイロセンサ31bを用いずに、原点方位M0を定めることができる。その後、角度算出部130は、スピーカ33の水平方向の回転時の回転角を、その時点でスピーカ33の向きを水平にした場合のスピーカ33の向きと原点方位M0との差分によって算出する。また、角度算出部130は、スピーカ33の重力の方向の回転時の回転角を、加速度センサ31aの測定値に基づいて得られる傾きによって算出する。これにより、ジャイロセンサ31bを用いなくても、水平方向の回転角および重力の方向の回転角の誤差の補正が可能となる。 In this way, the origin direction M0 can be determined at the time of initialization without using the gyro sensor 31b. After that, the angle calculation unit 130 calculates the rotation angle of the speaker 33 when it is rotated in the horizontal direction by the difference between the direction of the speaker 33 and the origin direction M0 when the direction of the speaker 33 is horizontal at that time. Further, the angle calculation unit 130 calculates the rotation angle of the speaker 33 when rotating in the direction of gravity based on the inclination obtained based on the measured value of the acceleration sensor 31a. As a result, it is possible to correct the error of the rotation angle in the horizontal direction and the rotation angle in the direction of gravity without using the gyro sensor 31b.

〔その他の実施の形態〕
第2〜第4の実施の形態では、各センサは3次元のセンサであるが、例えば加速度センサ31aで測定した加速度のY軸成分は使用していないため、加速度センサ31aとしては2次元のセンサを使用することもできる。またスピーカ33の正面方向の重力方向からの傾きは、例えば1つの軸(例えば図8に示すX軸またはZ軸)の成分の値の変化によって算出することも可能である。そのため、加速度センサ31aとして1次元のセンサを用いることも可能である。
[Other embodiments]
In the second to fourth embodiments, each sensor is a three-dimensional sensor, but for example, since the Y-axis component of the acceleration measured by the acceleration sensor 31a is not used, the acceleration sensor 31a is a two-dimensional sensor. Can also be used. Further, the inclination of the speaker 33 in the front direction from the gravity direction can be calculated, for example, by changing the value of the component of one axis (for example, the X axis or the Z axis shown in FIG. 8). Therefore, it is also possible to use a one-dimensional sensor as the acceleration sensor 31a.

また地磁気センサ31cとしては、水平方向での方位を検出できればよいため、2次元のセンサを用いることも可能である。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
Further, as the geomagnetic sensor 31c, a two-dimensional sensor can be used as long as it can detect the orientation in the horizontal direction.
Although the embodiment has been illustrated above, the configuration of each part shown in the embodiment can be replaced with another having the same function. Moreover, other arbitrary components and processes may be added. Further, any two or more configurations (features) of the above-described embodiments may be combined.

10 スピーカ装置
11 スピーカ
12 第1のモータ
13 第2のモータ
14 加速度センサ
15 地磁気センサ
16 回転制御装置
16a 記憶部
16b 処理部
10 Speaker device 11 Speaker 12 First motor 13 Second motor 14 Acceleration sensor 15 Geomagnetic sensor 16 Rotation control device 16a Storage unit 16b Processing unit

Claims (8)

スピーカと、
水平な第1の回転軸を中心として前記スピーカを回転させる第1のモータと、
前記スピーカに伴って回転する位置に取り付けられ、所定の軸方向の加速度を測定する加速度センサと、
第1の指定角度だけ前記スピーカを前記第1の回転軸を中心として回転させる第1の回転指示を前記第1のモータに対して出力し、指示に従った前記第1のモータの回転が停止した後に前記加速度センサから前記加速度を示す情報を取得し、前記加速度を示す情報に基づいて、前記スピーカの向きと重力の方向との角度差を算出し、前記スピーカの向きと重力の方向との角度差に基づいて、前記第1の回転指示に応じた前記スピーカの回転角と前記第1の指定角度との第1の誤差を算出する回転制御装置と、
を有するスピーカ装置。
With speakers
A first motor that rotates the speaker around a horizontal first rotation axis, and
An acceleration sensor that is attached to a position that rotates with the speaker and measures acceleration in a predetermined axial direction,
A first rotation instruction for rotating the speaker about the first rotation axis by a first designated angle is output to the first motor, and the rotation of the first motor according to the instruction is stopped. After that, the information indicating the acceleration is acquired from the acceleration sensor, the angle difference between the direction of the speaker and the direction of gravity is calculated based on the information indicating the acceleration, and the direction of the speaker and the direction of gravity are A rotation control device that calculates a first error between the rotation angle of the speaker and the first designated angle in response to the first rotation instruction based on the angle difference .
Speaker device with.
前記回転制御装置は、前記第1の誤差を減少させる方向へ前記第1の誤差の分だけ前記スピーカを回転させる補正回転指示を、前記第1のモータに出力する、
請求項記載のスピーカ装置。
The rotation control device outputs a correction rotation instruction for rotating the speaker by the amount of the first error in a direction of reducing the first error to the first motor.
The speaker device according to claim 1 .
スピーカと、
水平な第1の回転軸を中心として前記スピーカを回転させる第1のモータと、
前記スピーカに伴って回転する位置に取り付けられ、所定の軸方向の加速度を測定する加速度センサと、
前記スピーカに伴って回転する位置に取り付けられ、回転の角速度を計測するジャイロセンサと、
前記第1のモータに回転を指示し、指示に従った前記第1のモータの回転が停止した後に前記加速度センサから前記加速度を示す情報を取得し、前記加速度を示す情報に基づいて、前記スピーカの向きと重力の方向との角度差を算出する回転制御装置と、
を有し、
前記回転制御装置は、第3の指定角度に応じた数のパルス信号を前記第1のモータに出力し、前記スピーカの前記第1の回転軸を中心とした回転中に前記ジャイロセンサから定期的に角速度を示す情報を取得し、取得した角速度を示す情報に基づいて前記スピーカの前記第1の回転軸を中心とした回転角を算出し、所定のタイミングまでに出力したパルス信号の数に1パルス当りの前記第1のモータの回転角を乗算して得られる角度と、前記回転角との差分を計算し、差分に応じて、前記所定のタイミング以後に出力するパルス数を補正する、
ピーカ装置。
With speakers
A first motor that rotates the speaker around a horizontal first rotation axis, and
An acceleration sensor that is attached to a position that rotates with the speaker and measures acceleration in a predetermined axial direction,
A gyro sensor that is attached to a position that rotates with the speaker and measures the angular velocity of rotation,
After instructing the first motor to rotate and stopping the rotation of the first motor according to the instruction, information indicating the acceleration is acquired from the acceleration sensor, and the speaker is based on the information indicating the acceleration. A rotation control device that calculates the angle difference between the direction of
Have,
The rotation control device outputs a number of pulse signals corresponding to a third designated angle to the first motor, and periodically from the gyro sensor during rotation of the speaker around the first rotation axis. The information indicating the angular velocity is acquired, the rotation angle around the first rotation axis of the speaker is calculated based on the acquired information indicating the angular velocity, and the number of pulse signals output by a predetermined timing is 1. The difference between the angle obtained by multiplying the rotation angle of the first motor per pulse and the rotation angle is calculated, and the number of pulses output after the predetermined timing is corrected according to the difference.
Speaker system.
前記回転制御装置は、前記第3の指定角度に応じた回転を加速区間、等速区間、および減速区間に分け、前記加速区間では、前記パルス信号の出力間隔を時間経過と共に短くし、前記等速区間では、一定間隔で前記パルス信号を出力し、前記減速区間では、前記パルス信号の出力間隔を時間経過と共に長くし、前記加速区間、前記等速区間、および前記減速区間のうちの少なくとも1つの区間に応じた前記パルス信号の出力完了時を、前記所定のタイミングとする、
請求項記載のスピーカ装置。
The rotation control device divides the rotation according to the third designated angle into an acceleration section, a constant velocity section, and a deceleration section. In the acceleration section, the output interval of the pulse signal is shortened with the passage of time, and the like. In the high speed section, the pulse signal is output at regular intervals, and in the deceleration section, the output interval of the pulse signal is lengthened with the passage of time, and at least one of the acceleration section, the constant velocity section, and the deceleration section. The time when the output of the pulse signal corresponding to one section is completed is set as the predetermined timing.
The speaker device according to claim 3 .
重力の方向と平行な第2の回転軸を中心として前記スピーカを回転させる第2のモータと、
前記スピーカに伴って回転する位置に取り付けられ、地磁気の方向を測定する地磁気センサと、
をさらに有し、
前記回転制御装置は、前記第2のモータに回転を指示し、指示に従った前記第2のモータの回転が停止した後に前記地磁気センサから前記地磁気の方向を示す情報を取得し、前記地磁気の方向を示す情報に基づいて、前記スピーカを水平に向けた場合の前記スピーカの向きと、水平方向に予め設定された原点方位との角度差を算出する、
請求項1ないしのいずれかに記載のスピーカ装置。
A second motor that rotates the speaker around a second axis of rotation parallel to the direction of gravity, and
A geomagnetic sensor that is attached to a position that rotates with the speaker and measures the direction of the geomagnetism,
Have more
The rotation control device instructs the second motor to rotate, obtains information indicating the direction of the geomagnetism from the geomagnetic sensor after the rotation of the second motor according to the instruction is stopped, and obtains information indicating the direction of the geomagnetism of the geomagnetism. Based on the information indicating the direction, the angle difference between the orientation of the speaker when the speaker is oriented horizontally and the origin orientation preset in the horizontal direction is calculated.
The speaker device according to any one of claims 1 to 4 .
前記回転制御装置は、第2の指定角度だけ前記スピーカを前記第2の回転軸を中心として回転させる第2の回転指示を前記第2のモータに対して出力し、前記スピーカを水平に向けた場合の前記スピーカの向きと前記原点方位との角度差に基づいて、前記第2の回転指示に応じた前記スピーカの回転角と前記第2の指定角度との第2の誤差を算出する、
請求項記載のスピーカ装置。
The rotation control device outputs a second rotation instruction for rotating the speaker about the second rotation axis by a second designated angle to the second motor, and directs the speaker horizontally. A second error between the rotation angle of the speaker and the second designated angle in response to the second rotation instruction is calculated based on the angle difference between the orientation of the speaker and the origin orientation in the case.
The speaker device according to claim 5 .
コンピュータに、
水平な回転軸を中心としてスピーカを回転させるモータに対して指定角度だけ前記スピーカを前記回転軸を中心として回転させる回転指示を出力し
指示に従った前記モータの回転が停止した後に、前記スピーカに伴って回転する位置に取り付けられ、所定の軸方向の加速度を測定する加速度センサから、前記加速度を示す情報を取得し、
前記加速度を示す情報に基づいて、前記スピーカの向きと重力の方向との角度差を算出
前記スピーカの向きと重力の方向との角度差に基づいて、前記回転指示に応じた前記スピーカの回転角と前記指定角度との誤差を算出する、
処理を実行させる回転制御プログラム。
On the computer
And it outputs the rotation instruction to the speaker for a specified angle for the motor for rotating the speaker about a horizontal rotational axis is rotated about said rotational axis,
After the rotation of the motor is stopped according to the instruction, information indicating the acceleration is acquired from an acceleration sensor that is attached to a position that rotates with the speaker and measures acceleration in a predetermined axial direction.
Based on the information indicating the acceleration, calculating the angular difference between the direction and the direction of gravity of the speaker,
Based on the angle difference between the direction of the speaker and the direction of gravity, the error between the rotation angle of the speaker and the designated angle in response to the rotation instruction is calculated.
A rotation control program that executes processing.
スピーカと、水平な回転軸を中心として前記スピーカを回転させるモータと、前記スピーカに伴って回転する位置に取り付けられ、所定の軸方向の加速度を測定する加速度センサと、前記スピーカの回転指示の入力に基づいて、指定角度だけ前記スピーカを前記回転軸を中心として回転させる回転指示を前記モータに対して出力し、指示に従った前記モータの回転が停止した後に前記加速度センサから前記加速度を示す情報を取得し、前記加速度を示す情報に基づいて、前記スピーカの向きと重力の方向との角度差を算出し、前記スピーカの向きと重力の方向との角度差に基づいて、前記回転指示に応じた前記スピーカの回転角と前記指定角度との誤差を算出する回転制御装置と、を有するスピーカ装置と、
声かけ対象の対象人物と前記スピーカ装置との相対位置に基づいて、前記スピーカ装置に対して前記スピーカの回転指示を送信し、前記回転指示に応じた前記スピーカの回転終了後に、前記スピーカから前記対象人物向けに出力する音声の音声信号を、前記スピーカ装置に送信するホストコンピュータと、
を有する情報処理システム。
A speaker, a motor that rotates the speaker around a horizontal rotation axis, an acceleration sensor that is attached to a position that rotates with the speaker and measures acceleration in a predetermined axial direction, and input of a rotation instruction of the speaker. Information indicating the acceleration from the acceleration sensor after outputting a rotation instruction to rotate the speaker about the rotation axis by a specified angle to the motor and stopping the rotation of the motor according to the instruction. Is acquired, the angle difference between the direction of the speaker and the direction of gravity is calculated based on the information indicating the acceleration, and the rotation instruction is responded to based on the angle difference between the direction of the speaker and the direction of gravity. A speaker device having a rotation control device for calculating an error between the rotation angle of the speaker and the designated angle .
A rotation instruction of the speaker is transmitted to the speaker device based on the relative position between the target person to be called and the speaker device, and after the rotation of the speaker in response to the rotation instruction is completed, the speaker performs the rotation instruction. A host computer that transmits an audio signal of audio output to the target person to the speaker device, and
Information processing system with.
JP2020022020A 2020-02-13 2020-02-13 Speaker device, rotation control program, and information processing system Active JP6795775B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020022020A JP6795775B1 (en) 2020-02-13 2020-02-13 Speaker device, rotation control program, and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020022020A JP6795775B1 (en) 2020-02-13 2020-02-13 Speaker device, rotation control program, and information processing system

Publications (2)

Publication Number Publication Date
JP6795775B1 true JP6795775B1 (en) 2020-12-02
JP2021129183A JP2021129183A (en) 2021-09-02

Family

ID=73544758

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020022020A Active JP6795775B1 (en) 2020-02-13 2020-02-13 Speaker device, rotation control program, and information processing system

Country Status (1)

Country Link
JP (1) JP6795775B1 (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006025300A (en) * 2004-07-09 2006-01-26 Pioneer Electronic Corp Loudspeaker system and audition system for the loudspeaker system
JP5396769B2 (en) * 2008-08-04 2014-01-22 セイコーエプソン株式会社 Audio output control device, audio output device, audio output control method, and program
JP2010206451A (en) * 2009-03-03 2010-09-16 Panasonic Corp Speaker with camera, signal processing apparatus, and av system
JP5870818B2 (en) * 2012-03-30 2016-03-01 ソニー株式会社 Input device, control system, calibration method, and program
JP6304740B2 (en) * 2013-11-01 2018-04-04 Necディスプレイソリューションズ株式会社 Attitude detection apparatus, control method therefor, and projector
JP6174654B2 (en) * 2015-10-15 2017-08-02 ファナック株式会社 Robot system with function to calculate sensor position and orientation
JP6697174B1 (en) * 2019-10-30 2020-05-20 富士通クライアントコンピューティング株式会社 Information processing device, program, and information processing system

Also Published As

Publication number Publication date
JP2021129183A (en) 2021-09-02

Similar Documents

Publication Publication Date Title
US9182229B2 (en) Enhanced position measurement systems and methods
EP3450637B1 (en) Excavator bucket positioning via mobile device
JP5023073B2 (en) Motion sensing program and electronic compass provided with the same
US10216002B2 (en) Anti-shake correction system for curved optical sensor
EP2056066A2 (en) Surveying Instrument
US11412142B2 (en) Translation correction for optical image stabilization
CA2901655A1 (en) Image processing device, image processing method, and program therefor
JP2017044550A (en) Measurement device
JP6823482B2 (en) 3D position measurement system, 3D position measurement method, and measurement module
JP2008139035A (en) 3-d environment measurement device and mobile robot provided with the same
JP2009300265A (en) Position detecting device of underwater mobile body
JP2019124496A (en) Three-dimensional surveying device and three-dimensional surveying method
KR101896061B1 (en) System for airshooting with making a precise measurement of aerial work image
KR20170094851A (en) Calibration method for gyro sensor using tilt sensor
JP6697174B1 (en) Information processing device, program, and information processing system
JP6795775B1 (en) Speaker device, rotation control program, and information processing system
JP7093618B2 (en) Surveying device
WO2019127139A1 (en) Calibration method for magnetometer and related device
JP6966229B2 (en) Runout correction characteristic evaluation device for optical equipment with runout correction function
JP6763749B2 (en) Mobile control system and mobile
JP4595042B2 (en) Three-dimensional measurement method and system, and manipulator control method and apparatus
JP2022158099A (en) Inverted actuator type inertia detection device and surveying device
JP2017062265A (en) Measurement device and program
KR20050063469A (en) Three dimensional input device using geo-magnetic sensor and data processing method therefor
JP2001175411A (en) Image controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200305

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200305

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200803

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201013

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201026

R150 Certificate of patent or registration of utility model

Ref document number: 6795775

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250