赞
踩
物体在空间中的姿态可以用欧拉角来定义,欧拉角包含pitch(俯仰角)、yaw(偏航角)、roll(横滚角),如下图示意:
Core采集MPU6050六轴传感器经过姿态解算后的欧拉角数据,并在电脑串口终端打印出pitch(俯仰角)、yaw(偏航角)、roll(横滚角)这三个角度的整数部分以方便用户实时观察传感器模块在空间中的姿态。
--配置USB以虚拟串口模式工作,这样调用print()函数就会在电脑串口终端打印输出 LIB_UsbConfig("CDC") --设置按键1(占用D10口)以低电平有效的方式检测按键动作 LIB_ButtonConfig("BTN1","D10","L") --设置按键2(占用D11口)以低电平有效的方式检测按键动作 LIB_ButtonConfig("BTN2","D11","L") --设置MPU6050六轴传感器占用TX0和RX0引脚,并启动传感器以每秒输出100组欧拉角数据的频率工作 LIB_MPU6050Config("UART0") --开始大循环 while(GC(1) == true) do --查询是否收到欧拉角数据,如果收到就在OLED屏幕上输出显示 recv_flag,pitch,yaw,roll = LIB_MPU6050GetEulerAngle() if recv_flag == 1 then --只打印角度的整数部分 print(string.format("pitch:%.0f yaw:%.0f roll:%.0f\r\n", pitch,yaw,roll)) end --如果按键1短按,就开始俯仰角和横滚角的校准,校准时请保持传感器静止状态至少5秒 --校准后pitch角和roll角的度数会自动的逐渐归零 btn1 = LIB_ButtonQuery("BTN1") if btn1 == 1 then LIB_MPU6050Cali("PITCH_ROLL") end --如果按键2短按,就开始航偏角校准 --校准后yaw角的度数会自动归零 btn2 = LIB_ButtonQuery("BTN2") if btn2 == 1 then LIB_MPU6050Cali("YAW") end end
电脑串口调试终端上显示的传感器模块的姿态角(单位:度)内容如下图:
更多详情请参看 shineblink.com官网链接
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。