由于各种原因,最终只能有少部分人人成为飞行员,翱翔在蓝天。但是,我们依然向往飞行!
多亏半导体和无线电技术的高速发展,已经让FPV飞行成为可能。
现在,我们把飞行体验往前再推进一步。
采用这套模拟座舱系统,通过3D打印和数字图传系统,你可以坐进模拟座舱,体验身临其境的战斗机驾驶乐趣。
这套J20模拟座舱系统由硬件和软件组成。
硬件由4部分组成
- 机舱:包含显示器、散热风扇、DJI O3天空端等安装座。
- 舱盖:包括舱盖框架和风挡文件。
- 显示器:1块0.69寸OLDE显示器, 1块0.42寸OLED显示器,和1块2.2寸 TFT LCD显示器。
- 显示器控制单片机:ESP32-S3
软件部分是一套用arduino编程语言编写的ESP32-S3控制程序。ESP32-S3通过UART串口与飞控通信,采用mavlink协议。
通过mavlink协议读取的数据,ESP32-S3驱动3块显示器显示我们想要的信息,包括姿态仪、图案、各种飞行数据。
这样就给一个FPV座舱注入了灵魂:实时、动态的飞行数据。
你甚至可以不看图传眼镜里面的OSD数据,直接通过座舱的显示器实现仪表飞行。
使用这套J20模拟座舱前,你需要具备基础的航模飞行经验,并且具备以下FPV基础硬件条件:
- 一架天捷力 新小胖 载机
- 一套航模飞机遥控系统
- 一套DJI O3数字图传系统(座舱模型是根据O3数字图传系统设计的,如果采用其他图传系统,需要自行修改座舱模型)
- 能够定义串口通信协议的飞控:例如支持ardupilot固件或者iNav固件的飞控。用于座舱和飞控的数据通信。
- DJI FPV飞行眼镜
如果你不具备上述条件,说明你还不适合直接开展仿真模拟FPV飞行。请先学习航模目视飞行,并学会基础的FPV知识再回来。
完成以上准备工作后,你离仿真模拟飞行的距离只差几步了,而且总共花费不到300元人民币。
由于TFT LCD屏幕在阳光下亮度不够,直接在阳光下无法看清屏幕。所以风挡采用遮光塑料片,用于阳光下飞行使用。也可采用透明塑料片制作,非强光下飞行使用。- ESP32-s3单片机(源地工作室,esp32-S3 N16R8)
- 信利光电 0.69寸 96x16 OLED SSD1306
- 信利光电0.42 72x40 OLED SSD1306
- 信泰微电子 2.2寸 ILI9341 SPI TFT LCD
- 盈讯 3510 液压轴承 散热风扇
根据控制程序要求,焊接3块屏幕和ESP32单片机的接线。焊接ESP32单片机与飞控通信的排线。
显示屏引脚 ESP32引脚
MISO 13
MOSI 11
SCLK 12
CS 10 // Chip select control pin
DC 7 // Data Command control pin
RST 4 // Reset pin (could connect to RST pin)
LED 3V3
VCC 3V3
GND GND
显示屏引脚 ESP32引脚
SCL/SCK 2
SDA 42
VCC 3V3
GND GND
显示屏引脚 ESP32引脚
SCL/SCK 20
SDA 21
VCC 3V3
GND GND
ESP32引脚 飞控串口引脚
RX TX
GND GND
将代码下载后,放到arduino项目目录下,文件夹名称与主程序文件名称一致(J20-fighter-jet-FPV-simflight-cockpit)
安装ESP32开发板:ESP32S3 Dev Module
根据主程序代码中include部分要求,安装所需的库文件。
mavlink库需要手动安装。下载mavlink.zip文件,将mavlink文件夹放入arduino库文件夹中即可。
通过机载5V电源,给ESP32单片机供电,点亮屏幕。 尽量不要用飞控给ESP32供电,避免飞控电流过载。
将代码上传到ESP32单片机。注意esp32-S3 N16R8开发板有两个type c接口,上传代码时只能用com这个口(type c接口背面有标注)
将串口接上飞控,飞控对应的串口选择mavlink 1协议,获得屏幕数据。