JP3696586B2 - Attitude angle detector - Google Patents

Attitude angle detector Download PDF

Info

Publication number
JP3696586B2
JP3696586B2 JP2002293532A JP2002293532A JP3696586B2 JP 3696586 B2 JP3696586 B2 JP 3696586B2 JP 2002293532 A JP2002293532 A JP 2002293532A JP 2002293532 A JP2002293532 A JP 2002293532A JP 3696586 B2 JP3696586 B2 JP 3696586B2
Authority
JP
Japan
Prior art keywords
sensor
data
angle
output
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.)
Expired - Lifetime
Application number
JP2002293532A
Other languages
Japanese (ja)
Other versions
JP2004125731A (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.)
Tokin Corp
Original Assignee
NEC Tokin Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Tokin Corp filed Critical NEC Tokin Corp
Priority to JP2002293532A priority Critical patent/JP3696586B2/en
Publication of JP2004125731A publication Critical patent/JP2004125731A/en
Application granted granted Critical
Publication of JP3696586B2 publication Critical patent/JP3696586B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Gyroscopes (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、移動体の姿勢検出や姿勢制御、バーチャルリアリティー等に使用されるヘッドマウントディスプレーで、頭の姿勢角度を検出するトラッカー、及び3Dゲームパッド等、3次元空間中で被測定対象物の姿勢角度(3軸の回転角度)を検出するのに適した姿勢角検出装置に関する。
【0002】
【従来の技術】
飛行機や船舶の姿勢計測・制御に用いられてきた姿勢角度検出装置では、精度や信頼性が重視されていたので、サイズや価格は比較的問題とならなかった。しかしながら、3Dゲームなど民生用途への応用では、サイズや価格が最も重視される。ジャイロ、加速度センサ、磁気センサといったセンサはもちろんのこと、すべての構成部品に関して小型品、低価格品の使用が求められている。
【0003】
マイコンについても例外ではない。このジャイロ、加速度センサ、磁気センサを用いた姿勢角度検出装置では、センサからの出力にさまざまな演算を行って姿勢角度を求めている。この演算をマイコンで行うことにすると、浮動少数演算が可能なマイコンが必要であり、小型化、低価格化が実現できない。
【0004】
そこで、センサからの出力値をパソコンなどのホストマシンにそのまま送り、姿勢角度を求める演算は、ホストマシンのCPUで行う方法が考えられる。この方法の場合は、マイコンでは演算する必要がなく、センサ出力のデータを取り、ホストマシンと通信を行うだけの作業で済むので、小型化、低価格化が容易に実現できる。
【0005】
現状では、通信方式はUSB通信/ロースピードデバイス/インタラプト転送が最適である。USB通信が最適な理由は、複数接続が容易であること、電源供給があることである。
【0006】
【発明が解決しようとする課題】
しかしながら、上記の方法を用いる場合、通信周期はUSBの規格から8msであり、一度に転送できるデータ量は8byteである。転送するデータが8byte以内であれば8ms毎にそのデータが送られ、転送するデータが8〜16byteであれば最初の8msにデータ1、次の8msにデータ2というように、2回に分けて送られる。一方、転送するセンサ出力値のデータは、少なくとも10bitA/D×7つ=70bitで8byteを超える。従って、このままではデータが2回に分けられて送られるために、1周期が16msになってしまい応答性が確保できないという問題がある。
【0007】
また、応答性を確保するために、A/D分解能を9bitにするとデータ量は8byte以内に抑えることができるが、姿勢角度を演算した結果の精度が悪くなってしまうという問題があった。
【0008】
本発明は、前記の姿勢角度検出装置の問題点の解消を図るもので、応答性を確保し、なおかつ精度も下げない通信アルゴリズムである。このアルゴリズムによって、理想的な姿勢角度検出装置を提供するものである。
【0009】
【課題を解決するための手段】
本発明は、3軸の回りの角速度を検出するジャイロと、少なくとも2軸の加速度を検出する加速度センサと、少なくとも2軸の地磁気を検出する磁気センサとから構成されるセンサ部と、姿勢角度を算出するための演算手段とを備え、前記センサ部と前記演算手段とは遠隔通信によってデータを転送する姿勢角度検出装置であって、前記センサ部と前記演算手段とのデータの通信において、前記ジャイロから出力されるデータは毎回転送され、少なくとも前記加速度センサおよび前記磁気センサから出力されるデータは1回おきに交互に転送されることを特徴とする姿勢角度検出装置である。
【0010】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。なお、今回は姿勢角度検出装置の全センサ数が9つのもの(ジャイロ3つ、加速度センサ3つ、磁気センサ3つ)を説明するが、7つ以上のものについては、同様に適応できる。
【0011】
図1には、本発明の姿勢角度検出装置におけるジャイロ、加速度センサ、磁気センサの配置を示す。図1で示すセンサ座標系において、互いに直交する3軸(Xs軸、Ys軸およびZs軸)の回りの角速度を検出するための第1のジャイロ11、第2のジャイロ12および第3のジャイロ13はXs軸、Ys軸およびZs軸に平行に、すなわち互いに直交して、配置されている。第1の加速度センサ14、第2の加速度センサ15および第3の加速度センサ16は、互いに直交する3軸、Xs軸、Ys軸およびZs軸に平行に配置されている。同様に、第1の磁気センサ17、第2の磁気センサ18および第3の磁気センサ19は、互いに直交する3軸、Xs軸、Ys軸およびZs軸に平行に配置されている。
【0012】
図2は、本発明の一実施の形態における姿勢角度検出装置の全体構成を示す図である。ジャイロ22、加速度センサ23および磁気センサ24からは、それぞれ角速度(ωx,ωy,ωz)、加速度(Ax,Ay,Az)、地磁気(Mx,My,Mz)が出力される。各センサ出力は、マイコン25に内蔵されたA/Dコンバータによりデジタルデータに変換され、遠隔通信の一つであるUSB通信によってパソコン26に転送される。パソコン26の姿勢角度演算手段28は、各センサのA/Dデータを元にセンサモジュール21の姿勢角度を演算し、アプリケーション27に出力する。
【0013】
最初に、USB通信の転送方法について説明する。通信方式としては、現状ではUSB通信/ロースピードデバイス/インタラプト転送が最適である。USB通信は、複数接続が容易であり、また電源供給があるので、本発明のようなセンサデバイスに最適である。ロースピードデバイスは、一般にデータの少ないデバイスの規格で、キーボードやマウスのデータ転送に使われる。また、ハイスピードデバイスやフルスピードデバイスの規格は、データ量の多いプリンタやスキャナなどに使われる。インタラプト転送は、周期的にデータを送るときに使用する転送方法である。これらの方式を選択することによって、マイコンの小型・低価格化が実現できる。
【0014】
しかしながら、上記の方法を用いる場合、通信周期はUSBの規格から8msであり、一度に転送できるデータ量は8byteである。転送するデータが8byte以内であれば8ms毎にそのデータが送られ、転送するデータが8〜16byteであれば最初の8msにデータ1、次の8msにデータ2というように2回に分けて送られる。一方、各センサの出力はA/Dコンバータによってデジタルデータになるが、このA/Dコンバータの分解能は10bitである。
【0015】
図4に、従来の通信方法におけるデータフォーマットを示す。従来は、9つあるセンサ出力をそのまま転送していたために、9×10=90bit(=12byte)のデータ量になっていた。従って、通信周期は16msとなり、アプリケーションの動画がなめらかになるのに十分な通信周期が得られなかった。Bt1,Bt2は、リセット信号やマウスのクリックに相当する信号を送るためのボタンデータである。N/Aは未使用の領域で値は不定である。
【0016】
図4に、本発明の通信方法におけるデータフォーマットを示す。Sensor1からSensor3は、ジャイロの出力(ωx,ωy,ωz)である。Sensor4からSensor6は、加速度センサの出力(Ax,Ay,Az)と磁気センサの出力(Mx,My,Mz)が交互に転送される。Flagは、Sensor4からSensor6が、どちらのセンサのデータなのかを示すフラグである。たとえば、加速度センサのときはFlagは0、磁気センサのときは1とする。
【0017】
姿勢角度の演算方法を後述するが、ジャイロの出力は、1周期前の姿勢角度からの変化量を求めるために使用するので、その応答性が必要となる。それに対して、加速度センサや磁気センサの出力は、このジャイロによって求めた出力を補正するために使用するので、応答性は比較的必要ない。従って、加速度センサと磁気センサのデータを少なくとも交互に1回転送すれば、十分に機能する。センサの数が少ない場合は、余裕部分を用いて精度を落としたセンサのデータの通信を行うことも可能である。
【0018】
次に、図5にパソコンの内部にある姿勢角度演算手段にて演算される姿勢角度の演算方法について説明する。USBからは、ジャイロ52、加速度センサ53および磁気センサ54によって検出された角速度(ωx,ωy,ωz)、加速度(Ax,Ay,Az)、磁気(Mx,My,Mz)が転送される。運動角演算装置56aは、ジャイロから出力される角速度(ωx,ωy,ωz)から単位時間に移動した姿勢角度である運動角(Δα,Δβ,Δγ)を演算し、出力する。静止角演算装置56bは、加速度センサから出力される加速度(Ax,Ay,Az)と、磁気センサから出力される磁気(Mx,My,Mz)から仮の姿勢角度である静止角(φ,P,R)を演算し出力する。判別装置57は、運動角と静止角を比較して静止角が正しいかどうかを判別し姿勢角検出装置に結果を出力する。姿勢角演算装置56cは、運動角(Δα,Δβ,Δγ)、静止角(φ,P,R)と判別装置の出力から最終的に出力する姿勢角度(α,β,γ)を演算し、外部に出力する。
【0019】
次に、運動角演算装置の内容を説明する。姿勢角度検出装置に加わる角速度に応じた各ジャイロの出力(ωx,ωy,ωz)は、座標変換を行って、演算する単位時間で1単位時間過去の出力α(n-1)、β(n-1)およびγ(n-1)とから、次式の如く、基準座標系における現在の移動角度(運動角)(Δα,Δβ,Δγ)に変換される。

Figure 0003696586
【0020】
次に、図5の静止角演算装置の説明を行う。図1に示す加速度センサ14、15および16は、それぞれセンサ座標系での重力加速度のXs、YsおよびZs軸の成分分力Ax(n)、Ay(n)およびAz(n)を検出するように配置されている。また、図1に示す磁気センサ17、18および19は、それぞれXs、YsおよびZs軸上の地磁気分力Mx(n)、My(n)およびMz(n)を検出するように配置されている。
【0021】
加速度センサの出力Ax(n)、Ay(n)およびAz(n)は、ロール角演算手段およびピッチ角演算手段にて下式により、基準座標系の水平面(XY平面)との傾斜角である仮のロール角R(n)および仮のピッチ角P(n)を算出する。
P(n)=sin−1Ax(n)
R(n)=tan−1[−Ay(n)/−Az(n)]
【0022】
基準座標系での仮のヨー角φ(n)を求めるために、基準座標系での地磁気成分HX,HYを地磁気センサの出力Mx(n)、My(n)およびMz(n)と仮のピッチ角P(n)、仮のロール角R(n)を用いて次式のごとく座標変換を行う。
HX(n)=Mx・cosP(n)+[My・sinR(n)+Mz・cosR(n)]・sinP(n)
HY(n)=My・cosR(n)−Mz・sinR(n)
【0023】
基準座標系での仮のヨー角φ(n)は、
φ(n)=−tan−1[HY(n)/HX(n)]−φ(0)
で表される。ただし、φ(0)は原点時の方位角である。
【0024】
次に、本発明の姿勢角度検出装置における、判別装置を説明する。加速度センサの出力Ax、AyおよびAzは重力加速度のXs、YsおよびZs軸方向成分と運動加速度のXs、YsおよびZs軸方向成分との合成ベクトルとなるために、運動加速度がある場合には、静止角演算装置によって算出された仮のピッチ角Pは正しいピッチ角にはならない。また、仮のヨー角φについても磁場環境によって正しいヨー角にならない場合がある。判別装置は、静止角演算装置の出力であるφ(n)、P(n)、R(n)が正しいかどうかを判別するものである。
【0025】
運動加速度が加わっていない状態では、Ax、AyおよびAzの合成ベクトルは1Gとなるので微小定数εを用いて、
|(Ax+Ay+Az)1/2−1|<ε
が成立するならば、それぞれφ、P、Rは正しいと判断する。
【0026】
次に、上記判別装置の判別結果に応じて、運動角演算装置の出力と静止角演算装置の出力を演算して最終的な出力を得る姿勢角演算装置で行われる演算方法について説明する。
判別装置においてφ、P、Rが正しいと判断された場合には、
α(n)=α(n-1)+Δα−k[α(n-1)+Δα−φ(n)]、
β(n)=β(n-1)+Δβ−k[β(n-1)+Δβ−P(n)]、
γ(n)=γ(n-1)+Δγ−k[γ(n-1)+Δγ−R(n)]、
により姿勢角度を演算し、判別装置においてφ、P、Rが誤っていると判断された場合には、
α(n)=α(n-1)+Δα、
β(n)=β(n-1)+Δβ、
γ(n)=γ(n-1)+Δγ、
により姿勢角度を演算する。
【0027】
【発明の効果】
以上説明したように、本発明によれば、センサのデータを応答性の必要なものと不必要なものとに分け、実際に転送するデータを8byteに圧縮することによって、従来の姿勢角度検出装置の問題を解消し、すなわち応答性を確保し、なおかつ精度も下げない通信アルゴリズムが得られた。このアルゴリズムによって理想的な姿勢角度検出装置が実現できた。
【図面の簡単な説明】
【図1】本発明における姿勢角度検出装置のセンサモジュール。
【図2】本発明における姿勢角度検出装置の全体構成に関する説明図。
【図3】従来におけるUSB通信データフォーマットに関する説明図。
【図4】本発明におけるUSB通信データフォーマットに関する説明図。
【図5】本発明における姿勢角度の演算方法に関する説明図。
【符号の説明】
11 第1のジャイロ
12 第2のジャイロ
13 第3のジャイロ
14 第1の加速度センサ
15 第2の加速度センサ
16 第3の加速度センサ
17 第1の磁気センサ
18 第2の磁気センサ
19 第3の磁気センサ
21 センサモジュール
22 ジャイロ
23 加速度センサ
24 磁気センサ
25 マイコン
26 パソコン
27 アプリケーション
28 姿勢角度演算手段
29 USBコントローラ
52 ジャイロ
53 加速度センサ
54 磁気センサ
56 演算装置
56c 姿勢角演算装置
57 判別装置
59 出力[0001]
BACKGROUND OF THE INVENTION
The present invention is a head-mounted display used for posture detection, posture control, virtual reality, and the like of a moving body, such as a tracker for detecting the posture angle of a head, a 3D game pad, etc. The present invention relates to a posture angle detection device suitable for detecting a posture angle (three-axis rotation angle).
[0002]
[Prior art]
In the attitude angle detection device that has been used for attitude measurement and control of airplanes and ships, accuracy and reliability have been emphasized, so size and price have not been a problem. However, in consumer applications such as 3D games, size and price are most important. Not only sensors such as gyroscopes, acceleration sensors, and magnetic sensors, but also all components are required to be small and inexpensive.
[0003]
The microcomputer is no exception. In the attitude angle detection device using the gyro, the acceleration sensor, and the magnetic sensor, the attitude angle is obtained by performing various calculations on the output from the sensor. If this calculation is performed by a microcomputer, a microcomputer capable of floating-point arithmetic is required, and miniaturization and cost reduction cannot be realized.
[0004]
Thus, a method is conceivable in which the output value from the sensor is sent as it is to a host machine such as a personal computer to calculate the attitude angle by the CPU of the host machine. In the case of this method, the microcomputer does not need to perform calculation, and only needs to take the sensor output data and communicate with the host machine, so that downsizing and cost reduction can be easily realized.
[0005]
At present, the most suitable communication method is USB communication / low speed device / interrupt transfer. The reason why USB communication is optimal is that multiple connections are easy and that there is power supply.
[0006]
[Problems to be solved by the invention]
However, when the above method is used, the communication cycle is 8 ms from the USB standard, and the amount of data that can be transferred at one time is 8 bytes. If the data to be transferred is within 8 bytes, the data is sent every 8 ms. If the data to be transferred is 8 to 16 bytes, the data is divided into 2 times, such as data 1 in the first 8 ms and data 2 in the next 8 ms. Sent. On the other hand, the sensor output value data to be transferred exceeds 8 bytes with at least 10 bits A / D × 7 = 70 bits. Therefore, if the data is sent as it is, the data is divided into two times and sent, so that one cycle becomes 16 ms and there is a problem that responsiveness cannot be secured.
[0007]
Further, if the A / D resolution is 9 bits in order to ensure responsiveness, the amount of data can be suppressed within 8 bytes, but there is a problem that the accuracy of the result of calculating the attitude angle is deteriorated.
[0008]
The present invention is a communication algorithm that solves the problems of the attitude angle detection device described above, ensures responsiveness, and does not reduce accuracy. This algorithm provides an ideal posture angle detection device.
[0009]
[Means for Solving the Problems]
The present invention relates to a gyro that detects angular velocities around three axes, an acceleration sensor that detects at least two-axis acceleration, a sensor unit that includes at least two-axis geomagnetism, and a posture angle. A calculation unit for calculating, and the sensor unit and the calculation unit are attitude angle detection devices that transfer data by remote communication, and in the data communication between the sensor unit and the calculation unit, the gyro Is output every time, and at least the data output from the acceleration sensor and the magnetic sensor are alternately transferred every other time.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. In this example, the posture angle detection device has a total of nine sensors (three gyros, three acceleration sensors, and three magnetic sensors), but it can be similarly applied to seven or more devices.
[0011]
FIG. 1 shows an arrangement of a gyro, an acceleration sensor, and a magnetic sensor in the posture angle detection apparatus of the present invention. In the sensor coordinate system shown in FIG. 1, a first gyro 11, a second gyro 12, and a third gyro 13 for detecting angular velocities around three axes (Xs axis, Ys axis, and Zs axis) orthogonal to each other. Are arranged parallel to the Xs axis, the Ys axis, and the Zs axis, that is, orthogonal to each other. The first acceleration sensor 14, the second acceleration sensor 15, and the third acceleration sensor 16 are arranged in parallel to the three axes that are orthogonal to each other, the Xs axis, the Ys axis, and the Zs axis. Similarly, the first magnetic sensor 17, the second magnetic sensor 18, and the third magnetic sensor 19 are disposed in parallel to the three axes that are orthogonal to each other, the Xs axis, the Ys axis, and the Zs axis.
[0012]
FIG. 2 is a diagram showing the overall configuration of the attitude angle detection device according to one embodiment of the present invention. An angular velocity (ωx, ωy, ωz), acceleration (Ax, Ay, Az), and geomagnetism (Mx, My, Mz) are output from the gyroscope 22, the acceleration sensor 23, and the magnetic sensor 24, respectively. Each sensor output is converted into digital data by an A / D converter built in the microcomputer 25 and transferred to the personal computer 26 by USB communication which is one of remote communications. The attitude angle calculation means 28 of the personal computer 26 calculates the attitude angle of the sensor module 21 based on the A / D data of each sensor and outputs it to the application 27.
[0013]
First, a USB communication transfer method will be described. Currently, USB communication / low speed device / interrupt transfer is the most suitable communication method. USB communication is suitable for a sensor device such as the present invention because multiple connections are easy and power is supplied. A low-speed device is generally a device standard with little data, and is used for data transfer of a keyboard and a mouse. Also, high-speed device and full-speed device standards are used for printers and scanners with a large amount of data. Interrupt transfer is a transfer method used when data is sent periodically. By selecting one of these methods, the microcomputer can be reduced in size and price.
[0014]
However, when the above method is used, the communication cycle is 8 ms from the USB standard, and the amount of data that can be transferred at one time is 8 bytes. If the data to be transferred is within 8 bytes, the data is sent every 8 ms. If the data to be transferred is 8 to 16 bytes, the data is sent in two times, such as data 1 in the first 8 ms and data 2 in the next 8 ms. It is done. On the other hand, the output of each sensor is converted to digital data by an A / D converter. The resolution of this A / D converter is 10 bits.
[0015]
FIG. 4 shows a data format in the conventional communication method. Conventionally, since nine sensor outputs were transferred as they were, the data amount was 9 × 10 = 90 bits (= 12 bytes). Accordingly, the communication cycle is 16 ms, and a communication cycle sufficient for smoothing the moving image of the application cannot be obtained. Bt1 and Bt2 are button data for sending a reset signal or a signal corresponding to a mouse click. N / A is an unused area and its value is undefined.
[0016]
FIG. 4 shows a data format in the communication method of the present invention. Sensor 1 to Sensor 3 are the gyro outputs (ωx, ωy, ωz). From Sensor 4 to Sensor 6, the output (Ax, Ay, Az) of the acceleration sensor and the output (Mx, My, Mz) of the magnetic sensor are alternately transferred. Flag is a flag indicating which sensor 4 to sensor 6 is data of. For example, Flag is 0 for an acceleration sensor and 1 for a magnetic sensor.
[0017]
Although the attitude angle calculation method will be described later, the output of the gyro is used to obtain the amount of change from the attitude angle one cycle before, so that its responsiveness is required. On the other hand, since the output of the acceleration sensor or the magnetic sensor is used to correct the output obtained by the gyro, the response is relatively unnecessary. Therefore, if the data of the acceleration sensor and the magnetic sensor are transferred alternately at least once, it functions sufficiently. When the number of sensors is small, it is also possible to perform communication of sensor data with reduced accuracy using a margin.
[0018]
Next, an attitude angle calculation method calculated by the attitude angle calculation means in the personal computer will be described with reference to FIG. From the USB, the angular velocity (ωx, ωy, ωz), acceleration (Ax, Ay, Az), and magnetism (Mx, My, Mz) detected by the gyro 52, the acceleration sensor 53, and the magnetic sensor 54 are transferred. The motion angle calculation device 56a calculates and outputs motion angles (Δα, Δβ, Δγ), which are posture angles moved per unit time from angular velocities (ωx, ωy, ωz) output from the gyro. The static angle calculation device 56b is configured to generate a static angle (φ, P) that is a temporary posture angle from the acceleration (Ax, Ay, Az) output from the acceleration sensor and the magnetism (Mx, My, Mz) output from the magnetic sensor. , R) is calculated and output. The discriminating device 57 compares the motion angle and the stationary angle to discriminate whether or not the stationary angle is correct, and outputs the result to the posture angle detecting device. The posture angle calculation device 56c calculates the posture angle (α, β, γ) that is finally output from the movement angle (Δα, Δβ, Δγ), the static angle (φ, P, R) and the output of the discrimination device, Output to the outside.
[0019]
Next, the contents of the motion angle calculation device will be described. The outputs (ωx, ωy, ωz) of each gyro according to the angular velocity applied to the attitude angle detection device are output by converting the coordinates α (n−1), β (n -1) and γ (n-1) are converted into the current movement angle (movement angle) (Δα, Δβ, Δγ) in the reference coordinate system as shown in the following equation.
Figure 0003696586
[0020]
Next, the static angle calculation device in FIG. 5 will be described. The acceleration sensors 14, 15 and 16 shown in FIG. 1 detect component component forces Ax (n), Ay (n) and Az (n) of the Xs, Ys and Zs axes of gravity acceleration in the sensor coordinate system, respectively. Is arranged. Further, the magnetic sensors 17, 18 and 19 shown in FIG. 1 are arranged to detect geomagnetic component forces Mx (n), My (n) and Mz (n) on the Xs, Ys and Zs axes, respectively. .
[0021]
The outputs Ax (n), Ay (n) and Az (n) of the acceleration sensor are inclination angles with respect to the horizontal plane (XY plane) of the reference coordinate system by the following formulas in the roll angle calculation means and the pitch angle calculation means. A temporary roll angle R (n) and a temporary pitch angle P (n) are calculated.
P (n) = sin −1 Ax (n)
R (n) = tan −1 [−Ay (n) / − Az (n)]
[0022]
In order to obtain the provisional yaw angle φ (n) in the reference coordinate system, the geomagnetic components HX and HY in the reference coordinate system are assumed to be the temporary outputs Mx (n), My (n) and Mz (n) of the geomagnetic sensor. Using the pitch angle P (n) and the temporary roll angle R (n), coordinate conversion is performed as in the following equation.
HX (n) = Mx.cosP (n) + [My.sinR (n) + Mz.cosR (n)]. SinP (n)
HY (n) = My · cosR (n) −Mz · sinR (n)
[0023]
The temporary yaw angle φ (n) in the reference coordinate system is
φ (n) = − tan −1 [HY (n) / HX (n)] − φ (0)
It is represented by Where φ (0) is the azimuth angle at the origin.
[0024]
Next, a determination device in the posture angle detection device of the present invention will be described. Since the outputs Ax, Ay, and Az of the acceleration sensor are combined vectors of the Xs, Ys, and Zs axis direction components of the gravitational acceleration and the Xs, Ys, and Zs axis direction components of the motion acceleration, The temporary pitch angle P calculated by the static angle calculation device is not a correct pitch angle. Also, the temporary yaw angle φ may not be a correct yaw angle depending on the magnetic field environment. The discriminating device discriminates whether or not φ (n), P (n), and R (n), which are outputs of the static angle calculation device, are correct.
[0025]
In the state where motion acceleration is not applied, the combined vector of Ax, Ay and Az is 1G.
| (Ax 2 + Ay 2 + Az 2 ) 1/2 -1 | <ε
Is satisfied, φ, P, and R are determined to be correct.
[0026]
Next, a calculation method performed by the attitude angle calculation device that calculates the output of the motion angle calculation device and the output of the static angle calculation device according to the determination result of the determination device to obtain the final output will be described.
If the discriminator determines that φ, P, and R are correct,
α (n) = α (n-1) + Δα−k [α (n−1) + Δα−φ (n)],
β (n) = β (n−1) + Δβ−k [β (n−1) + Δβ−P (n)],
γ (n) = γ (n−1) + Δγ−k [γ (n−1) + Δγ−R (n)],
The posture angle is calculated by the following, and if the discriminating device determines that φ, P, and R are incorrect,
α (n) = α (n-1) + Δα,
β (n) = β (n-1) + Δβ,
γ (n) = γ (n−1) + Δγ,
To calculate the attitude angle.
[0027]
【The invention's effect】
As described above, according to the present invention, the sensor data is divided into those that require responsiveness and those that are unnecessary, and the data to be actually transferred is compressed to 8 bytes. Thus, a communication algorithm that eliminates the above problem, ie, secures responsiveness and does not reduce accuracy is obtained. With this algorithm, an ideal attitude angle detector was realized.
[Brief description of the drawings]
FIG. 1 shows a sensor module of a posture angle detection device according to the present invention.
FIG. 2 is an explanatory diagram relating to the overall configuration of a posture angle detection device according to the present invention.
FIG. 3 is an explanatory diagram related to a conventional USB communication data format.
FIG. 4 is an explanatory diagram relating to a USB communication data format in the present invention.
FIG. 5 is an explanatory diagram relating to an attitude angle calculation method according to the present invention.
[Explanation of symbols]
11 1st gyro 12 2nd gyro 13 3rd gyro 14 1st acceleration sensor 15 2nd acceleration sensor 16 3rd acceleration sensor 17 1st magnetic sensor 18 2nd magnetic sensor 19 3rd magnetism Sensor 21 Sensor module 22 Gyro 23 Acceleration sensor 24 Magnetic sensor 25 Microcomputer 26 Personal computer 27 Application 28 Attitude angle calculation means 29 USB controller 52 Gyro 53 Acceleration sensor 54 Magnetic sensor 56 Calculation device 56c Attitude angle calculation device 57 Discrimination device 59 Output

Claims (1)

3軸の回りの角速度を検出するジャイロと、少なくとも2軸の加速度を検出する加速度センサと、少なくとも2軸の地磁気を検出する磁気センサとから構成されるセンサ部と、姿勢角度を算出するための演算手段とを備え、前記センサ部と前記演算手段とは遠隔通信によってデータを転送する姿勢角度検出装置であって、前記センサ部と前記演算手段とのデータの通信において、前記ジャイロから出力されるデータは毎回転送され、少なくとも前記加速度センサおよび前記磁気センサから出力されるデータは1回おきに交互に転送されることを特徴とする姿勢角度検出装置。A sensor unit including a gyro that detects angular velocities around three axes, an acceleration sensor that detects at least two-axis acceleration, a magnetic sensor that detects at least two-axis geomagnetism, and a posture angle calculation Computation means, wherein the sensor unit and the computation means are attitude angle detection devices that transfer data by remote communication, and are output from the gyro in data communication between the sensor unit and the computation means Data is transferred every time, and at least data output from the acceleration sensor and the magnetic sensor are alternately transferred every other time.
JP2002293532A 2002-10-07 2002-10-07 Attitude angle detector Expired - Lifetime JP3696586B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002293532A JP3696586B2 (en) 2002-10-07 2002-10-07 Attitude angle detector

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002293532A JP3696586B2 (en) 2002-10-07 2002-10-07 Attitude angle detector

Publications (2)

Publication Number Publication Date
JP2004125731A JP2004125731A (en) 2004-04-22
JP3696586B2 true JP3696586B2 (en) 2005-09-21

Family

ID=32284407

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002293532A Expired - Lifetime JP3696586B2 (en) 2002-10-07 2002-10-07 Attitude angle detector

Country Status (1)

Country Link
JP (1) JP3696586B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4850805B2 (en) * 2007-09-26 2012-01-11 公益財団法人鉄道総合技術研究所 Optical communication type 3D sensing stone with built-in triaxial acceleration sensor and PIC microcomputer
JP5034012B2 (en) * 2007-10-22 2012-09-26 アイチ・マイクロ・インテリジェント株式会社 Motor ability detection device
EP2687955B1 (en) * 2012-07-20 2018-08-22 Nintendo Co., Ltd. Information processing program, information processing system and attitude calculation method for calculating an attitude of an input unit
KR101774403B1 (en) 2016-03-04 2017-09-05 김형주 smart toothband device based on Iot and tooth study seevice method using it
CN111197983B (en) * 2020-01-15 2022-12-27 重庆邮电大学 Three-dimensional pose measurement method based on human body distribution inertia node vector distance measurement

Also Published As

Publication number Publication date
JP2004125731A (en) 2004-04-22

Similar Documents

Publication Publication Date Title
JP3884442B2 (en) Input system based on three-dimensional inertial navigation system and its trajectory estimation method
JP3848941B2 (en) Geomagnetic sensor attitude error compensation apparatus and method
US10540006B2 (en) Tracking torso orientation to generate inputs for computer systems
JP5032887B2 (en) Pointer moving method and recording medium
KR100543701B1 (en) Apparatus and method for inputting information spatially
US20080042973A1 (en) System for sensing yaw rate using a magnetic field sensor and portable electronic devices using the same
JP3763435B2 (en) Attitude angle detector
JP2004288188A (en) Pen type input system using magnetic sensor, and its trajectory restoration method
CN112328099B (en) Low-power pointing method and electronic device for realizing same
EP3771968A1 (en) Low-power tilt-compensated pointing method and corresponding pointing electronic device
JP3696586B2 (en) Attitude angle detector
JP2001208529A (en) Measuring apparatus, control method thereof and memory medium
JP3960574B2 (en) Attitude angle detector
JP3797661B2 (en) Attitude angle detector
JP3992206B2 (en) Attitude angle detector
JP4023889B2 (en) Attitude angle detector
JP2005331265A (en) Attitude angle detection device
TWI392848B (en) Method for identifying the orientation and navigation apparatus using the same
JP4004165B2 (en) Attitude angle detector
JPH10232739A (en) Pen type input device
JPH07175583A (en) Indication input device
JP3886005B2 (en) Attitude angle detector
JP2000356520A (en) Apparatus for detecting attitude angle
JP2021518526A (en) Systems and methods that provide multiple strap-down solutions in one Attitude and Heading Reference System (AHRS)
JP2000180172A (en) Attitude angle detecting device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050620

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: 20050628

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050629

R150 Certificate of patent or registration of utility model

Ref document number: 3696586

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090708

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090708

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100708

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100708

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110708

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120708

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120708

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130708

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140708

Year of fee payment: 9

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term