在没有一些传感器和微控制器智能的情况下驾驶四轴飞行器将是一个挑战。我肯定需要一些智能传感器数据来帮助我 :-) 。幸运的是,有一个飞思卡尔的“传感器融合工具箱”和库,它为我提供了一个良好的开端,并让我了解了我计划使用的传感器:
传感器融合数据
Freescale FRDM-K22F 板上已经装有 Freescale FXOS8700CQ ,它是磁力计+加速度计的组合。 FRDM-STBC-AGM01 上面有相同的 FXOS8700CQ,加上 FXAS21002 陀螺仪:
FRDM-K22F 与 FRDM-STBC-AGM01
还有一个更小的板可用,就是 FRDM-STBC-AGM01 板的“白色”盒子内的东西。基本上是同一块板,更小,没有 Arduino 接头。
飞思卡尔拥有非常酷的“传感器工具箱”来探索这些传感器:
- 转到 Sensor Fusion 网页 ( www.freescale.com/sensorfusion ) 并下载 Sensor Fusion Fusion Toolbox 。
- 安装传感器融合工具箱。
- 在 FRDM-K22F 板上运行 “mbed”OpenSDA v2.1 (不是 P&E 或 Segger)固件,因此该板显示为 MBED 磁盘驱动器并显示“mbed 串行端口”: mbed串口
- 运行传感器融合软件
- 选择我要加载到板子的文件: 闪存到板
- 浏览到 MBED 磁盘驱动器并将文件保存在那里: 保存到 MBED 磁盘驱动器
- 它应该确认一切进展顺利。按照以下步骤拔下并重新插入电路板: 成功编程板
- 选择 mbed 串行端口或使用“自动检测”按钮: 传感器融合工具箱端口检测
- 开发板 RGB LED 应呈绿色闪烁,并检测/设置 COM 端口,并显示开发板: 检测到 COM 端口
- 旋转传感器/电路板以校准磁力计: 校准磁力计
- 现在我可以移动板子了,它会跟随/显示在屏幕上: 搬板
真的很酷!
有时我会遇到错误的板子显示或卡住的问题。拔下电路板并重新启动工具箱有帮助。
同样的事情与 FRDM-STBC-AGM01 板结合使用:
FRDM-STBC-AGM01 传感器融合
工具箱显示 Sensors、Dynamics、Magnetics 和 Kalman 信息:
传感器
动力学
磁学
传感器融合数据
卡尔曼
示例项目
www.freescale.com/sensorfusion 上的网页托管了一个包含 Kinetis Design Studio 项目的库( Kinetis MCU 传感器融合库 )。我能够将 V5 或库与 Kinetis Design Studio V3.0.0 一起使用。这些项目通过 UART-2-USB OpenSDA 桥接数据发送到传感器工具箱。这样我就可以使用传感器工具箱构建和调试以二进制文件形式提供的演示应用程序,并可以将这些项目用作我的传感器数据处理的起点或灵感点。
库中的一些演示有“ Eclipse 项目‘刷新策略’:使用外部 Make 的增量构建中断?” 中描述的问题。 “。此外,我发现一些调试/启动配置丢失或不正确,因此有必要在项目可以使用之前修复此问题。
使演示和应用程序脱颖而出的是它们使用 Processor Expert:这样它们就易于使用、配置和构建。
KL25Z 传感器融合项目
概括
Freescale Sensor Toolbox 让我对传感器有了良好的开端和感觉。现在的挑战是让四轴飞行器使用它。 Sensor Fusion 库有一些开箱即用的挑战,但对于任何熟悉 Eclipse 的人来说 ;-) 这不是障碍点。因此,在接下来的步骤中,我计划将驱动程序加入到我的应用程序中。
快乐的感觉 :-)
链接
- 飞思卡尔传感器融合: www.freescale.com/sensorfusion
- 传感器融合库: 用于 Kinetis MCU 的传感器融合库
- 飞思卡尔 FRDM-K22F 板: http://www.freescale.com/products/arm-processors/kinetis-cortex-m/k-series/k2x-usb-mcus/freescale-freedom-development-platform-for-kinetis- k22-mcus:FRDM-K22F
- 飞思卡尔 FRDM-STBC-AGM01 板: http://www.freescale.com/tools/embedded-software-and-tools/hardware-development-tools/freedom-development-boards/frdm-stbc-agm01-9-axis-惯性测量传感器板:FRDM-STBC-AGM01
- GitHub 上的项目链接: https://github.com/ErichStyger/mcuoneclipse/tree/master/Examples/KDS/FRDM-K22F/FRDM-K22F_Drone
- 用于 FRDM-K22F 的 mbed: https ://developer.mbed.org/platforms/FRDM-K22F/