枭龙战机

ADISl6355测角

0
阅读(6217)

 

    飞行器的姿态主要指它在地面坐标系中的3个姿态角,即俯仰角、横滚角和偏航角。这里的俯仰角和横滚角比较容易得到,只要对陀螺的角速度进行积分就可以得到了。飞行器的侧滚角和俯仰角可根据以铅直基准线为转轴的陀螺仪测出,偏航角可以根据以水平基准线为转轴的陀螺仪测出,将测出的信号传送给计算机系统,就能发出指令,随时纠正飞行器飞行的方向和姿态。也可以通过加速度计的积分得到。只要在一本关于导航的书中,我们就能找到这个状态方程:

                                                du=(v*r-w*q)+g*sin(θ)

                                                dv=(w*p-u*r)-gcos(θ)sin(φ)

                                                dw=(u*q-v*p)-g*cos(θ)sin(φ)+u/m
    其中,u、v、w为机体坐标系下3个轴向的线速度,p、q、r为机体坐标系下绕3个轴的角速度,θ、φ为四轴飞行器的俯仰角和横滚角,U1为总的升力,m为飞行器的质量。在试验平台上检测时,四轴飞行器的位置固定不变,上式可简写成:



    其中,为加速度计测得的加速度,通过可推算得到俯仰角和横滚角如下:


   
     

     ADISl6355的1次SPI传输包括16位数据。其中第l位是此次SPI传输的读写状态标识,第2位为O。接着的6特位是即将读或写的寄存器址.最后的8位在写操作时是将要写入寄存器的数据。如果是读操作则无效。完成ADISl6355AMLZ的1个读操作需2次16位的SPI通信,其中第1次是写入将要读取的寄存器地址,读寄存器的内容将在第2次SPI通信时出现在ADISl6355AMLz的DOUT信号线上,ADISl6355AMLZ。由于该单片机为8位.其内部寄存器也为8位。凶此需对自身的SPI寄存器进行2次写操作,才能完成ADISl6355AMLz 1次SPI数据传输。该单片机内含1个USB控制器,可向PC机高速传输数据。

     这里可以根据ADISl6355测出三个轴的角速度。当知道了角速度,我们就可以通过对角速度的积分得出飞行器的三个姿态角。但是在因为误差、等因素方面的影响,一般在角度静止的时候输出并不为零,而且随着误差的累积,对飞行器也有很大的影响。而且在飞行器的震动中也引入很多的噪声,这需要滤波,在以后的讲一下卡尔曼滤波,

在姿态角的结算过程中,由陀螺测出各个方向的角速度,然后再通过SPI通讯方式传递给单片机,再经过单片机的解算,得出角速度,根据测得角度的变化,输出指令,控制电机,顺便说下,螺旋桨是由电机带动的,从而实现飞行器的自动调节飞行。