陀螺仪

ATS-2000C系列高精度电流源在陀螺测试中的应用

試著忘記壹切 提交于 2020-03-26 11:02:56
随着惯性导航系统的快速发展,陀螺仪作为惯性导航系统的核心,其性能决定了惯性导航系统的性能。随着现代物理的快速发展,尤其是量子调控等领域的飞速进步,有着高精度、小体积、低功耗和低成本等优点的核磁共振陀螺成为重要的研究方向。 核磁共振陀螺(NMRG)是利用激光与核磁共振气室中的碱金属原子和惰性气体原子的相互作用使核子以拉莫尔频率进动,并通过磁场驱动技术对气室磁场实现闭环控制和对剩磁进行补偿来维持核子的共振状态,进而能够检测载体的角速度信息,实现陀螺仪的功能。因此高精度的磁场驱动电路是作为磁场闭环控制的硬件基础。 磁场驱动技术作为磁场闭环控制的重要部分,直接影响核磁共振陀螺的磁场控制精度和稳定性。磁场驱动电路类型包括电压源和电流源,需要高精度的直流电流输出,用于磁屏蔽中的剩磁补偿,隔离磁场对核自旋进行测量的影响。在核磁共振陀螺仪中,采用磁共振气室构建三轴矢量原子磁强计,通过在三维线圈施加一定的电流,补偿被动磁屏蔽后的残余磁场,磁场驱动电路用于给三维线圈施加相应的电流。 Aigtek公司的ATS-2000C系列是一款高精度的通用电流源。可最大输出3A的电流,最小电流分辨20 pA,输出精度高。由于核磁共振陀螺主磁场的直流磁场控制精度更加精细,采用高精度的电流源输出,分为几档可调,精度可达4位半,使得磁场的调节范围在0-3A之间,精度在0.035%+600 pA。

微信小程序开发笔记⑫——屏幕亮度、陀螺仪、设备方向、拨打电话和振动

自古美人都是妖i 提交于 2020-02-05 13:52:26
屏幕 小程序还提供了一些api来操作屏幕的参数,主要是屏幕的亮度 官方描述 https://developers.weixin.qq.com/miniprogram/dev/api/device/screen/wx.setScreenBrightness.html < view > < button bindtap = " screen " > 屏幕亮度 </ button > < button bindtap = " setScreen " > 设置屏幕亮度 </ button > </ view > screen : function ( ) { wx . getScreenBrightness ( { success ( res ) { console . log ( res ) } } ) } , setScreen : function ( ) { wx . setScreenBrightness ( { value : 1 , success ( ) { console . log ( "设置成功" ) } } ) } , 真机调试结果如下 陀螺仪 官方描述 https://developers.weixin.qq.com/miniprogram/dev/api/device/gyroscope/wx.stopGyroscope.html 陀螺仪和加速器有所不同

智能车学习(十三)——角度控制

試著忘記壹切 提交于 2020-01-09 05:00:30
一、手册代码以及图示 二、流程说明 1、角度计算函数说明 //============================================================================ //函数名称:void AngleCalculate(void) //函数返回:无 //参数说明:无 //功能概要:车身角度计算。 //============================================================================ void AngleCalculate(void) { //读取加速度计 MMA8451_Read(); //读取陀螺仪 LS3G4200D_Read(); //取陀螺仪的X轴数据 VOLTAGE_GYRO = Gyro_X; //取加速度读计的Y轴数据 VOLTAGE_GRAVITY = Gray_Y; //陀螺仪零偏跟随 Gyro_Offset_Calculate(); if(VOLTAGE_GRAVITY > 1050) //限制加速度计读数-1050 ~1050 { VOLTAGE_GRAVITY = 1050; } if(VOLTAGE_GRAVITY <= -1050) { VOLTAGE_GRAVITY = - 1050; } //加速度计读取的Y轴数值转换为角度 g

STM32驱动MPU6050

ε祈祈猫儿з 提交于 2019-12-18 18:32:26
MPU-60X0 是全球首例 9 轴运动处理传感器。 它集成了 3 轴 MEMS 陀螺仪, 3 轴 MEMS 加速度计,以及一个可扩展的数字运动处理器 DMP ( Digital Motion Processor ) ,可用 I2C 接口连接一个第三方的数字传感器,比如磁力计。扩展之后就可以通过其 I2C 或 SPI 接口 输出一个 9 轴的信号 ( SPI 接口仅在 MPU-6000 可用) 。 MPU-60X0 也可以通过其 I2C 接口 连接非惯性的数字传感器,比如压力传感器。 MPU-60X0 对陀螺仪和加速度计分别用了三个 16 位的 ADC ,将其测量的模拟量转化 为可输出的数字量。为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的, 陀螺仪可测范围为± 250 ,± 500 ,± 1000 ,± 2000 ° / 秒( dps ) ,加速度计可测范围为± 2 ,± 4 ,± 8 ,± 16g 对 MPU6050 的配置主要需要 1. 上电检测芯片序列号 , 自检 2. 设定加速度陀螺仪的阈值和检测频率 3. 设定外部链接设备的驱动模式以及地址 4. 设定中断模式 , 比如要打开自由落体中断需要的设置 , 数据准备好中断需要的设置等 5. 设定电源管理模式 , 防止进入休眠 6. 循环读取数据 MPU 输出一共三种数据 , 包括陀螺仪输出

卡尔曼滤波C代码分析

余生长醉 提交于 2019-12-14 11:55:09
float Angle=0.0; //卡尔曼滤波器的输出值,最优估计的角度 //float Gyro_x=0.0; //卡尔曼滤波器的输出值,最优估计的角速度 float Q_angle=0.001; //陀螺仪噪声的协方差(估计过程的误差协方差) float Q_gyro=0.003; //陀螺仪漂移噪声的协方差(估计过程的误差协方差) float R_angle=0.5; //加速度计测量噪声的协方差 float dt=0.005; //积分时间,dt为滤波器采样时间(秒) char C_0 = 1; //H矩阵的一个数 float Q_bias=0, Angle_err=0; //Q_bias为陀螺仪漂移 float PCt_0=0, PCt_1=0, E=0; //中间变量 float K_0=0, K_1=0, t_0=0, t_1=0; //K是卡尔曼增益,t是中间变量 float Pdot[4] ={0,0,0,0}; //计算P矩阵的中间变量 float PP[2][2] = { { 1, 0 },{ 0, 1 } }; //公式中P矩阵,X的协方差 void Kalman_Filter(float Gyro,float Accel)//Gyro陀螺仪的测量值,Accel加速度计的角度计算值 { Angle += (Gyro - Q_bias)*dt; /

飞控IMU姿态估计流程

♀尐吖头ヾ 提交于 2019-12-13 07:52:46
飞控中使用加速度计,陀螺仪,磁罗盘进行姿态估计算法流程。 step1: 获取陀螺仪,加速度计,磁罗盘的原始数值。 step2: 陀螺仪,加速度计减去固定的偏移后得到校准数值,磁罗盘通过偏移和缩放后得到校准数值。(都是在载体坐标系下的测量值)。 step3: 首先根据上次的飞控姿态四元数计算出载体坐标系在世界坐标系中的旋转矩阵。 公式:从四元数 q ( w , x , y , z ) q(w,x,y,z) q ( w , x , y , z ) 到旋转矩阵 [ 1 − 2 y 2 − 2 z 2 2 x y + 2 w z 2 x z − 2 w y 2 x y − 2 w z 1 − 2 x 2 − 2 z 2 2 y z + 2 w x 2 x z + 2 w y 2 y z − 2 w x 1 − 2 x 2 − 2 y 2 ] \begin{bmatrix} {1 - 2{y^2} - 2{z^2}} & {2xy + 2wz} & {2xz - 2wy} \\ {2xy - 2wz} & {1 - 2{x^2} - 2{z^2}} & {2yz + 2wx} \\ {2xz + 2wy} & {2yz - 2wx} & {1 - 2{x^2} - 2{y^2}} \\ \end{bmatrix} ⎣ ⎡ ​ 1 − 2 y 2 − 2 z 2 2 x y − 2 w z 2

IMU300 -232电路连接与调试

时光毁灭记忆、已成空白 提交于 2019-12-11 06:13:07
之前一直读不到陀螺仪的数据,偶尔读到的也是乱码,此博客记录调试的连线以及注意的坑 1.连线 该型号陀螺仪只能通过RS232连接,连接如下图,红色线是接9—35V直流电源正极,传感器上黄色线(TX)接串口线的2号端口(RX),绿色线(RX)接串口的3号口(TX),黑色接串口上的5号口,同时与电源负极连接。这里要注意RS232线转usb线的问题,区分公头和母头,不要接反了,还有不能用老款的线。具体接线如下 2.调试 usb连接电脑,开启电源,在设备管理器里装好驱动,打开北微传感器的通用协议上位机(可以去北微官网下载),一般会自动识别COM口,默认波特率9600,点击打开——获取,如果接线正确会自动获取设备地址00,再点击开始,晃动陀螺仪就能看到飞机转动了,左边也有对应的数据。如图 来源: CSDN 作者: 合工大机器人实验室 链接: https://blog.csdn.net/qq_34935373/article/details/103481213

Sensor--Gyro工作原理

非 Y 不嫁゛ 提交于 2019-12-09 11:06:34
何为陀螺仪(Gyro) 陀螺仪(英文:gyroscope),是一种用来传感与维持方向的装置,基于角动量守恒的理论( 角动量守恒定律 是指系统所受合外 力矩 为零时系统的 角动量 保持不变。http://zh.wikipedia.org/wiki/%E8%A7%92%E5%8A%A8%E9%87%8F%E5%AE%88%E6%81%92%E5%AE%9A%E5%BE%8B)设计出来的。陀螺仪主要是由一个位于轴心且可旋转的转子构成。 陀螺仪一旦开始旋转,由于转子的角动量,陀螺仪有抗拒方向改变的趋向。 在一定的初始條件和一定的外力矩在作用下,陀螺会在不停自转的同时,还绕着另一个固定的转轴不停地旋转,这杯陈伟陀螺的旋进(precession),又称为回转效应(gyroscope effect)。在日常生活中,小孩玩的陀螺就是一个典型的应用。 MEMS陀螺仪(gyroscope)的工作原理 传统的陀螺仪主要是利用角动量守恒原理,因此它主要是一个不停转动的物体,它的转轴指向不随承载它的支架的旋转而变化。 但是 MEMS陀螺仪(gyroscope)的工作原理不是这样的,因为要用微机械技术在硅片衬底上加工出一个可转动的结构可不是一件容易的事。MEMS陀螺仪利用科里奥利力——旋转物体在有径向运动时所受到的切向力。下面是导出科里奥利力的方法。有力学知识的读者应该不难理解。 在空间设立动态坐标系(图一)

基于UDP协议获取陀螺仪数据(1)

不羁岁月 提交于 2019-12-01 16:10:19
前一段时间拿到一块板子,上面是一个村田陀螺仪,已经经过硬件接口处理过,上面有一个网口和一个usb口,还有一些串口。我现在需要通过网口来拿到陀螺仪的原始数据。硬件工程师给我的文档如下: 第一步:陀螺仪要供电,该陀螺仪测试为12v直流电! 第二步:设置上位机IP,子网掩码,网关。并连接网络. 其实,上位机就相当于server端,而板子就相当于client端,板子要主动上报,说明client端一直向server端发送数据。 第三步:ping一下板子上的IP,看看能不能ping通,如果ping通了说明连接成功。 第四步:利用命令tcpdump -n -i eth0 host SERVER_IP and CLIENT_IP,看看连接成功后是否有数据传输。 第五步:编写代码实现udp传输数据 1 /************************************************************************* 2 > File Name: client.cpp 3 > Author: 李瀚文 4 > Mail: 18646139976@163.com 5 > Created Time: 2019年10月15日 星期二 08时14分06秒 6 ************************************************************