亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

使用 Arduino Leonardo 和 3D 打印为 MS Flight Simulator 自制油门象限与配平轮

核心元件与物料清单

元件数量备注
Arduino Leonardo1Leonardo 或 Micro 均可,单块板最多支持 6 个控制轴
连接导线3每个模块需 3 根导线
旋转电位器 50kΩ1每个模块 1 个,详情见正文选型说明

所需工具与设备

软件与在线服务

项目背景

最近升级了电脑以运行 MS FS2020,键盘操作缺乏真实手感,但受限于空间与预算,无法搭建完整驾驶舱或购买昂贵外设。于是决定自行设计一套 3D 打印的飞控硬件:单轴杆控制油门、襟翼、起落架,以及一个升降舵配平轮。主要针对单发活塞飞机的操作习惯设计,其中配平轮的结构设计最为耗时,经过多轮草图迭代才确定最终方案。

结构设计与 3D 打印件清单

杆类模块(油门/襟翼/起落架)每套需:

配平轮模块需:

后箱体部件可选,用于收纳 Arduino 与走线,实现即插即用、收纳方便。

电气连接与原理图

每个电位器三脚:一端接 5V,一端接 GND,中间滑动端分别接 A0~A5。最多可级联 6 个轴。原理图文件见附件 quadrant_ZkMygPyRiE.fzz。

固件代码要点

使用 Joystick.h 库将模拟量映射为 0~1023 的游标轴输出。首次上传时将 setting 设为 0~5 打开串口监视器,转动各轴至两端记录 axisLimits 数组的最小/最大值,再改回 -1 即可正常使用。代码支持动态启用/禁用任意轴,循环周期 5 ms,延迟极低。

#include <Joystick.h>
Joystick_ Joystick;
int axisLimits0[] = {686, 338};  // 按实测填写
// ... axisLimits1~5
bool a0Used = true;  // 对应 A0~A5
// ...
void loop() {
  if (a0Used) {
    int v = analogRead(A0);
    int pos = translateValue(v, axisLimits0[0], axisLimits0[1]);
    Joystick.setThrottle(pos);
  }
  // ... A1~A5 对应 Rx, Ry, Rz, X, Y 轴
  delay(5);
}

3D 模型文件

提供 STEP 格式总装文件 released_u3k8QjPXzJ.stp,含所有零件,可直接导入 CAD 软件修改或切片打印。

总结

这是一个极具成就感的项目:编码量极小,核心难点在于机械结构的“手感”调教,尤其是配平轮的阻尼与回位机构。完成后即插即用,无需驱动,收纳时只需拔掉 USB 线即可。

制造工艺

  1. Arduino UNO 驱动 16x2 LCD 实现动画与小游戏
  2. Arduino 与智能手机打造智能电压表——简单易做的 DIY 项目
  3. Arduino + DHT11 + 以太网盾板温湿度数据记录仪
  4. 自制 FlightGear 飞行模拟升降舵配平轮:Arduino Nano + Python UDP 桥接方案
  5. Python 3 控制 Arduino UNO - 串口通信点亮内置 LED 入门教程
  6. Arduino Nano 驱动 128x64 OLED 实时运行康威生命游戏 (元胞自动机)
  7. 使用 Arduino Nano 和 RDA8057M 制作紧凑型 FM 收音机
  8. 基于 Arduino 与 Google Sheets 的实时 RFID 考勤系统
  9. IoT 集成:基于 Windows 10 UWP 应用的 Arduino 远程控制
  10. MKR1000 接入 Azure IoT:DHT22 温湿度实时上云监控
  11. Bolt IoT 结合 DHT11 与 Arduino 实现温湿度高级监测
  12. 轮胎动平衡 vs 四轮定位:区别、费用、周期与自查全指南