将RC接收器连接到基于PX4 Linux的自动驾驶仪
本主题展示了如何设置基于PX4 Linux的自动驾驶仪,以便在任意串行端口上连接并使用受支持的RC接收器。
对于S.Bus以外的遥控类型,您可以将接收器直接连接到串口,或者使用USB转TTY串行线(例如 PL2302 USB转串行TTL转换器)。
:::信息 对于S.Bus接收器(或编码器,例如来自Futaba、乐迪(RadioLink)等的产品),您通常需要通过信号反相器电路将接收器和设备连接起来,不过除此之外,设置方法是相同的。 :::
然后,如以下所示,在设备上启动PX4 RC驱动程序。
启动驱动程序
要在特定的UART上启动RC驱动程序(例如,在本示例中为/dev/ttyS2
):
sh
linux_sbus start|stop|status -d <device> -c <channel>
有关其他驱动程序使用信息,请参阅:rc_input。
信号反相器电路 (仅限S.Bus)
S.Bus是一种反相的UART通信信号。
虽然一些串行端口/飞行控制器可以读取反转的 UART 信号,但大多数需要在接收器和串行端口之间使用信号反相器电路来反转信号。
:::提示 要通过串行端口或USB转TTY串行转换器读取S.Bus遥控信号,也需要此电路。 :::
本节介绍如何创建合适的电路。
所需组件
- 1个NPN晶体管(例如 NPN S9014 TO92)
- 1个10K电阻
- 1个1K电阻
:::信息 可以使用任何类型/型号的晶体管,因为电流消耗非常低。 :::
电路图/连接
按如下所述(也显示在电路图中)连接组件:
- S.Bus 信号→1K 电阻→NPN 晶体管
- NPN晶体管发射极→ 接地(GND)
- 3.3V电源(3.3VCC)→ 10K电阻→ NPN晶体管集电极→ USB转TTY的接收数据端(RXD)
- 5.0V电源(5.0VCC)→S.Bus的电源端(VCC)
- 接地(GND) → S.Bus的接地端(GND)
下面的图片显示了面包板上的连接。