OpenIPC开源FPV之Adaptive-Link工程解析

1. 源由

目的蛮简单的,在做集成之前搞清楚集成代码的工作原理。与RF相关的内容,始终搞得非常神秘,也确实神秘!

RF神秘的主要原因:相关变量比较多,且非线性相关,再加上实际应用场景复杂,导致很多情况下一不注意就发生说不出的为什么信号衰减了。

==》最为底层的逻辑是电磁学核心麦克斯韦方程组
==》或者更加通俗的可以认为是高斯定律(磁场)、法拉第电磁感应定律、安培-麦克斯韦定律的综合作用

注:这里不做展开物理学理论(虽然很想,想当初方程组的推导随便15分钟的事情)。另外,也不会展开RF设计知识(反正我也不太懂),但是要明白的是通过这些底层逻辑,能够从本质上更好的理解信号衰减+增强在实际环境如何处理、简化。

2. 工程结构

为了更好的理解和进一步优化,我们对OpenIPC的Adaptive Link进行了整理。

详细代码分支详见:OpenIPC-Adaptive-Link/arrange_project_structure

.
├── ALink42n.c
├── ALink42p.c
├── ALink42q.c
├── alink_drone.c
├── alink_gs.py
├── build.sh
├── install.sh
├── Makefile
├── LICENSE
├── README.md
├── config
│   ├── alink.conf
│   └── txprofiles.conf
└── more
    ├── setpower.sh
    ├── spreadfwd.py
    └── spreadfwd.readme.txt

3. 工程脚本

  • build.sh: 为了进行摄像头端代码的编译构建

注:支持goke|hisi|star6b0|star6e交叉编译。

$ ./build.sh
Usage: ./build.sh [goke|hisi|star6b0|star6e|native]
  • install.sh: 为了简化安装流程的脚本文件。

注:为了简化安装,支持从代码库直接安装,以及网络安装。

$ ./install.sh --help
Usage: ./install.sh gs <install|remove|update> [src]
       ./install.sh drone <install|remove|update> <goke|hisi|star6b0|star6e> [src]

4. 工程代码

4.1 天空端

  • Makefile: 天空端嵌入式工程主要构建文件
  • ALink42n.c
  • ALink42p.c
  • ALink42q.c

注:目前尚并不是非常清楚三个文件主要功能区别,从代码复杂角度:q > p > n。

4.2 地面端

  • alink_gs.py: 不依赖硬件的地面端程序

5. 总结

本文先从工程总体上给出一个概貌,后续在陆续放出更为细节的内容。

6. 补充知识

6.1 高斯定律(电场)

描述: 电场的通量与封闭面内部的电荷成正比,说明电荷是电场的源。

  • 积分形式:
    ∮ ∂ V E ⋅ d A = Q enc ε 0 \oint_{\partial V} \mathbf{E} \cdot d\mathbf{A} = \frac{Q_{\text{enc}}}{\varepsilon_0} VEdA=ε0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值