四、编码调制

四、编码调制

遥控及任务指令产生后,一般需要进行编码调制,常用的编码调制方式有PWM、PPM、PCM、SBUS和DSM。同时,它们也是接收机和其他设备通信的协议。

1.PWM

PWM(Pulse Width Modulation)是脉冲宽度调制的英文缩写。PWM不可以时分复用,主要是通过周期性跳变的高低电平组成方波,是以脉冲占空比来传递信息,最终实现连续数据的输出。

PWM信号是一个周期性的方波信号,在常用的无人机遥控器中,其周期为20 ms, 也就是50 Hz的刷新频率。通常,无人机遥控器摇杆产生的电压信号进行PWM调制后的脉冲宽度变化范围为1 000~2 000,即PWM每一周期中的高电平持续时间为1 000~ 2 000 μs,高电平持续时间代表了摇杆控制量。一般四旋翼中1 100 μs对应0油门,1 900 μs 对应满油门(图8-9~图8-12)。

图8-9 0油门对应的脉冲宽度

图8-10 0油门时的PWM波形

图8-11 满油门对应的脉冲宽度

图8-12 满油门时的PWM波形

如果移动摇杆,使得输出电压按照 图8-13(a)所示的曲线变化,则经过PWM调制后的图形如图8-13(b)所示,注意图中调制后的波形只是宽度发生改变,脉冲之间的时间间隔是固定不变的。

PWM的优势如下:

(1)由于传输过程全部使用满电压传输,非0即1,很像数字信号,所以PWM拥有了数字信号的抗干扰能力。

(2)脉宽的调节是连续的,使得它能够传输模拟信号。

(3)PWM信号的发生和采集都非常简单,现在的数字电路则使用计数的方法产生和采集PWM信号。

(4)信号值与电压无关,信号的传输受干扰小,这在电压不恒定的条件下非常有用,如电池电压会随着消耗而降低,DC-DC转换器会存在纹波等情况。

2.PPM

PPM(Pulse Position Modulation)是脉冲位置调制的英文缩写,是以不同时刻出现的脉冲位置传递信息,可以时分复用,其编解码方式一般是使用积分电路来实现的。它是通过将多个控制通道集中放在一起调制而成的,也就是一个PPM脉冲序列里面包含了多个通道的信息,如图8-14所示。

图8-13 PWM调制

图8-14 PPM调制

标准的PPM信号,以0.4 ms的低电平为起始标识。后边以电平的上升沿的间隔时间来表达各个通道的控制量,刚好等于PWM信号的高电平持续时间,也就是1 000~2 000 μs。一般排列10个上升沿后,电平保持高电平,直到重复下一个PPM信号。由图8-14可知,第一个通道对应的PWM信号高电平持续时间为1.9 ms,对于多旋翼无人机来说,第一通道对应的是副翼(控制滚转),则说明遥控器副翼控制杆打到右极限位置。如图8-15所示为示波器观察到的接收机输出的PPM波形,测得第三个通道(油门通道)的时间间隔为2.0 ms,与遥控器实际油门位置相对应。如图8-16所示为遥控器油门高位(美国手)。

图8-15 示波器观察到的PPM波形

图8-16 遥控器油门高位(美国手)

通常,PPM接收解码电路都由通用的数字集成电路组成,如CD4013、CD4015等。对于这类电路来说,只要输入脉冲的上升沿达到一定的高度,都可以使其翻转。这样,一旦输入脉冲中含有干扰脉冲,就会造成输出混乱。由于干扰脉冲的数量和位置是随机的,因此在接收机输出端产生的效果就是“抖舵”。

除此之外,因电位器接触不好而造成编码波形的畸变等原因,也会影响接收效果,造成“抖舵”。对于窄小的干扰脉冲,一般的PPM电路可以采用滤波的方式消除;而对于较宽的干扰脉冲,滤波电路就无能为力了。

这样普通的PPM比例遥控设备,在强干扰的环境下或超出控制范围时会产生误动作,尤其是在有同频干扰的情况下,无人机往往会完全失控。

3.PCM

PCM是英文Pulse-Code Modulation的缩写,即脉冲编码调制,又称脉码调制,是由A.里弗斯于1937年提出的,这一概念为数字通信奠定了基础。

PCM是将若干个指令信号的数字形式进行编码后再传送,使用了数字信号处理中的查错算法,因此具有更高的效率和可靠性。

其编码过程是编码电路中模/数转换部分将电位器产生的模拟信息转换成一组数字脉冲信号。如果遥控器采用的是8位PCM编码,则表示每个通道都由8个脉冲组成,再加上同步脉冲和校核脉冲,因此每组脉冲包含了数十个脉冲信号。在这里,每一个通道都由8个信号脉冲组成。其脉冲个数永远不变,只是脉冲的宽度不同。宽脉冲代表“1”,窄脉冲代表“0”。这样,每个通道的脉冲就可用8位二进制数据来表示,共有256种变化。接收机解码电路中的处理器收到这种数字编码信号后,再经过数/模转换,就可将数字信号还原成模拟信号(图8-17)。

PCM由于在空中传播的是数字信号,其中包含的信号只代表两种宽度。这样,如果在此种编码脉冲传送过程中产生了干扰脉冲,解码电路中的单片机就会自动将与“0”或“1”脉冲宽度不相同的干扰脉冲自动清除。如果干扰脉冲与“0”或“1”脉冲的宽度相似或直接将“0”脉冲干扰加宽成“1”脉冲,解码电路的单片机也可以通过计数功能或检验校核码的方式,将其滤除或不予输出。而因电位器接触不良对编码电路造成的影响,也已由编码电路中的处理器将其剔除,这样就消除了各种干扰。

PCM还具有高可靠性和高抗干扰性。一般PPM遥控设备都要求在操作时先打开发射机后开接收机,先关接收机后关发射机。其原因是在没有发射信号时,接收机会因自身内部的噪声或外界的干扰产生误动作;即使是带静噪电路的接收机,在有同频干扰的情况下也会出现误动作。而采用了PCM编解码方式,在程序设计中包含了多种信号校验功能,即使在发射机关机、只开接收机的情况下,也不会产生误动作。因此,当每次发射机定时关机后,接收机仍可处于开机待命状态,避免了频繁开关接收机的麻烦。

另外,PCM编码可以很方便地利用计算机编程,不增加或少增加成本,实现各种智能化设计。例如,将来的比例遥控设备可以采用个性化设计,在编解码电路中加上地址码,实现真正意义上的一对一控制。另外,如果在发射机上加装开关,通过计算机编程,将每个通道的256种变化分别发送出来;接收机接收后,再经计算机解码后变成256路开关输出。这样,一路PCM编码信号就可变成256路开关信号。而且,这种开关电路的抗干扰能力相当强,控制精度相当高。从上述说明可以看出,PCM编码与PPM编码方式相比,具有很大的优越性。PCM编码可以认为是真正的数字比例遥控。而且各个厂家生产的不同型号的PCM比例遥控设备,其编码方式不相同。因此,同样是PCM设备,只要是不同厂家生产的,即使是相同频率,也不会产生互相干扰,而只会影响控制距离。

但是,PCM接收机里必须有一套和发射机一致的标准,才能正确地识别信号,也就意味着不同品牌的PCM接收机不能通用,而PPM接收机大多可以通用。

图8-17 PCM调制

4.SBUS

SBUS即串行总线,也是智能总线。该总线是日本Futaba公司自己使用的专用总线协议。该协议有两个特点:一个是数字化;另一个是总线化。

数字化是指该协议使用现有数字通信接口作为通信的硬件协议,并使用专用的软件协议,这使得该设备非常适合在单片机系统中使用,也就是说适合与飞控连接。

总线化指的是一个数字接口可以连接多个设备,这些设备(主要是舵机和电调)通过Hub与一个SBUS总线连接,并能够得到各自的控制信息。

如图8-18所示为接收机与机载设备的连接。

SBUS使用RS232C串口的硬件协议作为自己的硬件运行基础。它使用的是3.3 V的TTL电平;并且使用负逻辑,即低电平为“1”,高电平为“0”,所以,无论接收还是发送都要进行硬件取反。波特率为100 000 bps, 注意:不兼容波特率为115 200 bps。

在使用时,串口配置为波特率100 kbps、8位数据、偶校验(even)、2位停止位、无流控。

SBUS协议规定每帧有25个字节,按照[startbyte][data1][data2]…[data22][flags][endbyte]顺序排列。其中,起始字节startbyte=11110000b(0xF0),中间22个字节是16个通道的数据,每个伺服通道采用11位编码。相邻两帧之间的时间间隔为4 ms(高速模式),约7 ms一帧;在低速模式下是每14 ms发送一次。

SBUS协议的编码原理:一个信息是二进制的11 bit,例如,1111 1111 111就可以表示一个信息,一共16个这样的信息,按照顺序将这16个信息依次排成一串,得到一个 176 bit(11×16)的数据,也就是22字节(176/8=22)的数据,再加上数据头数据尾校验位就组成了一个要通过串口传送的信息。每隔4 ms或者14 ms就传送一个这样的信息。所以,这16个信息每个所能表示的最大值是2 048,也就是它的精度。标志位的高4位有特殊含义,低4位并没有使用。第7位和第6位表示两个数字通道(通道17和18)信息(就是只有高低电平的通道,一般用来控制通断或者某个电机简单的启动或者停止,如1表示启动电动机,0表示停止电动机)。第5位表示帧丢失,接收机红色LED亮起,如果这一位为1,表示这一帧信号出问题了,接收机红色LED亮起。第4位表示故障保护激活,意思应该是说如果这一位为1,激活接收方故障保护。

5.DSM

DSM是英文Digital Spread Spectrum Modulation的缩写,即数字扩频调制。DSM协议一共有DSM、DSM2、DSMX三代。国内最常见的是DSM2,JR和Spectrum的遥控器都支持该协议。DSM协议也是一种串行协议,但是比SBUS更加通用,使用的是标准串口定义,所以市面上兼容接收机更加便宜,兼容的设备也更多。

但是该协议并不是一种总线化的协议,要靠接收机把该协议变为PWM来驱动舵机,DSM2接口也只能连接接收机和卫星接收机。

图8-18 接收机与机载设备的连接

DSMX是DSM2的升级版,区别就是速率加快了。DSMX协议可以用于双向传输,即能够将飞机上的信息传回遥控器上在液晶屏显示。