陀螺仪
目的本教程将教大家如何把Microduino-10DOF模块中的陀螺仪和加速度传感器测到的数据经过处理在Processing中以姿态的形式显示出来。 设备
原理图直接使用Microduino-10DOF上的陀螺仪和加速度传感器 程序https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_Processing/processingGyro 调试步骤一:按着原理图搭建硬件环境,像这样:
本例需要两端的代码,Processing端和Microduino端 Microduino: //得到陀螺仪和加速度的数据后输出到串口以便Processing显示 void loop() { accelgyro.getMotion6(&ax, &ay, &az, &gx, &gy, &gz); sprintf(str, "%d,%d,%d,%d,%d,%d,%d", ax, ay, az, gx, gy, gz); Serial.print(str); Serial.write(byte(10)); delay(20); } Processing: //得到第一个串口的数据,并定义如果有换行就缓存 myPort = new Serial(this, Serial.list()[0], 9600); // first COM port //把从Microduino接收到的数据进行处理在屏幕上显示姿态。 函数说明: readSensors() //读取传感器数据 normalize3DVec(float [] vector) //处理3d 矢量 buildBoxShape() //建立盒子形状 drawCube() //绘画盒子 getInclination() //得到倾角
步骤四:运行后,晃动,旋转你手中的Microduino看看Processing中会显示什么。 结果屏幕上会显示一个方块随着你手中的Microduino的姿态进行模拟,像这样:
视频 |