SBUS接收机使用的是一种由Futaba公司开发的数字串行通信协议,称为S-BUS或SBUS。这种协议主要用于遥控器与飞行控制器之间的信号传输。SBUS协议具有以下特点:
- 多通道传输:SBUS可以通过一根信号线传输多达16个通道的数据,相较于PWM(脉宽调制)信号一根线传输一个通道的方式,极大地简化了接线需求。
- 串行通信:SBUS是一种串行通信协议,采用一根数据线进行高速的数据传输,从而减少信号线数量,并提高通信效率。
- 低延迟和高分辨率:SBUS协议具有较低的信号延迟,同时支持高分辨率的控制信号传输,使得遥控器输入和飞行器响应更加灵敏。
- 信号格式:SBUS协议的信号格式为反向逻辑,即低电平为”1″,高电平为”0″。其通信速率通常为100kbps,使用UART(通用异步收发传输器)端口进行数据传输。
由于这些优势,SBUS协议被广泛应用于现代无人机和遥控系统中,可以更有效地传输控制信号,提升操控体验。
一、 Futaba公司的SBUS协议的历史发展
SBUS协议是由日本Futaba公司开发的一种串行总线通信协议,主要用于遥控器与飞行控制器之间的通信。该协议具有数字化和总线化的特点,通过数字通信接口连接多个设备(如舵机和电调),这些设备通过Hub与S.BUS总线连接,从而获得各自的控制信息。
SBUS协议的出现使得遥控器与飞行控制器之间的通信更加稳定、可靠,并提高了遥控模型的控制精度和灵敏度。它使用一根信号线就能传输多达16个通道的数据,这使得它非常适合用于无人机等遥控模型的控制。
Futaba公司在SBUS协议的发展中扮演了重要角色。作为该协议的开发者,Futaba公司不仅提出了这一协议,还不断改进和完善它,使其成为遥控模型领域中广泛使用的标准之一。此外,Futaba公司还提供了多种与SBUS协议兼容的产品和解决方案,以支持这一协议的应用。
二、 SBUS与PWM信号传输在性能上的对比
SBUS(Serial Bus)和PWM(脉冲宽度调制)信号在性能上的具体比较数据可以从多个方面进行分析:
1. 通道数量:
SBUS可以传输16个比例通道和2个数字(bool)通道。
PWM在一个周期内(20ms)最多能传输8个信号通道。
2. 传输方式:
SBUS是将PWM信号进行串行传输通信,两帧数据之间的间隔时间为7ms。
PWM信号在一个周期内传输多个不同的PWM信号,并在每个周期之间有一个间隔时间来分离。
3. 硬件通道数量:
SBUS可以降低硬件通道的数量,同时也能传输多路PWM信号。
PWM信号需要更多的连线,每个通道至少需要1根线。
4. 电平和逻辑:
SBUS的硬件上基于RS232协议,采用TTL电平,但高位取反(负逻辑,低电平为“1”,高电平为“0”)。
PWM信号是以高电平的时间作为控制信号,电平边沿容易受到干扰。
5. 应用场景:
SBUS适用于多通道控制需求,能够高效地传输多个通道信息到接收机或飞行控制器。
PWM是一种传统的遥控器通信协议,通过接收机上的PWM输出控制舵机、电调等设备。
三、 SBUS协议在现代无人机和遥控系统中的应用
SBUS协议在现代无人机和遥控系统中有广泛的应用。以下是几个具体的应用案例:
- 无人机系统中的应用:SBUS协议常用于连接无人机的飞控板和遥控器。飞控板通过SBUS信号接收各个通道的数据,并根据这些数据进行飞行控制。此外,SBUS协议也用于拓展遥控器的控制距离,例如通过SBUS接口将天空端的SBUS_OUT接口与飞控的RC IN连接,从而实现更远距离的遥控。
- 航模和机器人中的应用:SBUS协议不仅限于无人机,还广泛应用于航模、机器人和遥控车等领域。它通过串行总线输出,能够获取遥控器上所有通道的数据,从而实现对模型或机器人的精确控制。
- 相机功能控制:SBUS协议还可以用于控制相机功能,例如启动/停止录制、调整光圈、焦点等。用户可以通过SBUS将相机功能分配给不同的通道,实现复杂的相机控制解决方案。
- 四旋翼无人机飞控系统设计:在四旋翼无人机的飞控系统设计中,SBUS协议被用于获取和转化控制信号。通过解析SBUS协议的帧排序,可以有效地获取25个8bit字节的数据,从而实现对无人机的精确控制。
四、 SBUS协议的低延迟如何实现
SBUS协议的低延迟和高分辨率主要通过以下几个方面实现:
- 同步传输协议:SBUS采用了一种简单且可靠的同步传输协议,这种协议能够确保数据传输的准确性和及时性,从而降低延迟。
- 减少缓冲需求:SBUS的设计减少了对缓冲数据的需求,这有助于进一步降低延迟。因为缓冲区的存在通常会增加数据处理的时间,而SBUS通过减少这些缓冲区,使得数据传输更加直接和迅速。
- 高数据速率:SBUS设备支持高数据速率,这意味着数据可以在较短的时间内传输完成,从而提高了整体的响应速度和分辨率。
- 虚拟地址支持:SBUS架构支持虚拟地址转换,这简化了软件功能,并且使得设备能够更高效地处理数据,进一步提升了性能。
五、 如何使用SBUS协议进行数据传输
SBUS协议是一种串行通信协议,用于设备之间的数据传输。以下是使用SBUS协议进行数据传输的技术细节:
- 波特率和数据位:SBUS协议通常使用100K波特率,8位数据位,两位停止位,并采用偶校验,即8E2的串口通信方式。
- 字节结构:SBUS协议的数据帧由25个字节构成,包括一个起始字节、22个数据字节和一个结束字节。起始字节为0x0f,用于标识帧的开始。
- 更新率:SBUS协议的更新率为14ms(模拟模式)或7ms(高速模式),这取决于具体的应用场景。
- 信号取反:在硬件实现时,需要注意信号的取反问题,即硬件需要进行信号取反操作。
- 通信过程:SBUS协议的通信过程包括多个步骤,如发送数据、接收确认、CRC校验等。整个过程涉及数据传输、确认和错误检测,以确保数据交换的准确性。