在“ Kinetis 无人机:Graupner Race Copter Alpha 250 Q 框架结构 ”中,我为我的 Kinetis 无人机组装了框架。在这篇文章中,我将使用 飞思卡尔 FRDM-K22F 板驱动 ESC(电子速度控制器):
Graupner S3055 ESC(来源:Graupner)
电子调速器 (ESC)
Graupler Race Copter Alpha 250 套件包括 4 个 S3055 型电子速度控制器 (ESC) ( http://shop.graupner.de/webuerp/AI?ARTN=S3055 )。 ESC 基本上是一个小型微控制器板,它接收 PWM 信号并驱动无刷直流电机:
从 S3055 数据表我有这个数据:
- 电压:2-4S LiPo(标称7.4-14.8V)
- 尺寸:25x20x7 毫米
- 重量:9 克
- 最大电流:12A
- BEC输出:1A/5V
电池消除电路
BEC 代表“电池消除电路”:基本上它意味着 ESC 可以为我提供 5V 电源,电池电压高达 1A。这样我就可以用 5V 为四轴飞行器上的 FRDM 板供电,不需要专用电源或电池 :-) 。 5V 提供给伺服电缆的红色 (5V) 电缆。稍后我将使用该 5V 为 FRDM-K22F 板供电。
伺服PWM
通常每四个伺服连接器将连接到远程伺服接收器,如 GR-18,它有多达 8 个伺服连接器:
Graupner GR-18 接收器(来源:Graupner)
这样的接收器获取遥控器信号,然后将 PWM 信号发送到 ESC。我打算使用这样的接收器并使用 SUMD(伺服的组合数字信号)馈入 FRDM-K22F。这样 FRDM 就可以从普通遥控器(除了蓝牙和 nRF24L01+)接收信号。我计划使用蓝牙和 nRF24L01+ 获取诊断数据并在室内驾驶四轴飞行器。但对于更远的距离和室外,我打算使用普通遥控器。
对 ESC 进行 PWM
不幸的是,ESC 数据表没有说明哪种 PWM 信号 :-( 。经过一些研究,我发现它需要一个正常的“伺服”信号(参见 https://en.wikipedia.org/wiki/Servo_control ):
- 信号频率:50 Hz(20 毫秒周期)
- 脉冲宽度(高电平有效)介于 1000 μs(零油门)和 2000 μs(全油门)之间
似乎信号频率必须至少为 50 Hz,但大多数 ESC 允许更高的频率达到 300 到 400 Hz 之间(参见 http://aeroquad.com/showthread.php?5502-Which-PWM-frequency- do-I-use-to-control-my-ESC )。不幸的是,我没有在 Graupner 数据表中找到任何数据 :-(
电调校准和初始化
脉冲宽度的最小值和最大值可以通过校准例程进行配置(请参阅 http://robots.dacloughb.com/project-2/esc-calibration-programming/ )。对于四轴飞行器,我想在 LOW 和 HIGH 之间使用尽可能大的范围。
要校准 ESC(S3055,但与其他 ESC 类似):
- 向 ESC 发送“最大油门”的 PWM 信号(比如 2000 μs PWM 占空比)。
- 从电池为 ESC 供电。
- ESC 发出 两声哔哔 声,表明他检测到信号。 ESC 将其存储为“最大位置”。
- 现在至少在 2 秒内,为低信号发送一个 PWM 信号(比如 1000 μs PWM 占空比)。
- 电调长响表示低位被识别存储。
要正常初始化 ESC:
- 使用 PWM 信号为 ESC 供电,为 ESC 提供“最小油门”(比如 1000 μs PWM 占空比)。
- ESC 发出哔哔声 一次 ,表明他检测到信号。
- 现在至少在 2 秒内,为低信号发送一个 PWM 信号(比如 1000 μs PWM 占空比)。
- 电调长响表示低位被识别存储。
- ESC 发出蜂鸣声以显示电池数量(电压),例如 4 次表示 14.8V
- ESC 发出“1-2-3”信号并准备就绪
下图显示了带有录音的校准(左侧)和正常初始化(右侧)的顺序:
电调校准和初始化
有了这个,我已经能够校准和初始化电机。我现在用一个小面包板将 4 个 ESC 连接到 FRDM-K22F:
FRDM-K22F 带四轴飞行器
设置了 4 个 PWM 组件来驱动电机:
电调组件
通过 USB CDC 和蓝牙的 Shell/命令行界面,我可以控制所有 ESC:
控制电调的外壳
概括
使用 ESC 可以轻松驱动四轴飞行器的无刷直流电机:我需要向 ESC 提供 PWM 信号,ESC 将驱动电机。
下一步是将 FRDM-STBC-AGM01 上的陀螺仪、磁力计和加速度计与 FRDM-K22F 一起使用。该项目的当前状态发布在 GitHub 上。
链接
- 组装四轴飞行器框架:“ Kinetis 无人机:使用 Graupner Race Copter Alpha 250 Q 的框架结构 ”
- Graupner S3055 电调: http://shop.graupner.de/webuerp/AI ?ARTN=S3055
- Graupner Race Copter Alpha 250 问: http://shop.graupner.de/webuerp/AI ?ARTN=16520.HOTT&SessionCheck=4711&language=en
- 飞思卡尔 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
- OpenPilot 项目:https: //www.openpilot.org/
- GitHub 上的项目链接: https://github.com/ErichStyger/mcuoneclipse/tree/master/Examples/KDS/FRDM-K22F/FRDM-K22F_Drone
- 校准 ESC: http://robots.dacloughb.com/project-2/esc-calibration-programming/