-----------------本文由“麦粒电子”撰写,并提供相应产品服务。----------------php
有个内部采用电瓶车的驱动器的无线小车,如今须要使用遥控器控制小车的前进后退。也就是说:把以前电瓶车的手动油门把手换成无线控制的。框架
遥控器选择目前市面上有好多的品牌:“天地飞,futaba,斯翼等。遥控器分为接收器和发射器:发射器就是控制人手里拿的摇杆那一部分;接收器则是信号接收端。用来给小车的电机驱动器发送信号的。.net
可是如今有个问题,接收机的输出信号并不能直接给电机驱动器使用。由于常见遥控接收机的输出信号通常有三种:舵机PWM信号、SBUS、PPM。而电瓶车的电机驱动器的输入信号要求通常是个模拟电压(常见的电瓶车把手其实就是一个旋转电位器,旋转到不一样的位置会输出不一样的电压值,以此来控制电机驱动器,从而达到调节电机转速的问题。)设计
所以,要想使用遥控器,必须解决接收机输出信号转成模拟电压的问题。为此,咱们设计了一款信号转换模块。下图为增长转换板以后的系统框架图
htm
舵机PWM转电压blog
舵机PWM,基本上每一个接收机都会输出的一种比较常见PWM信号:通常信号频率50HZ,信号高电平变化时间在1ms-2ms之间变化(不一样的遥控器会有小幅度的差别)。舵机PWM基础知识请点击:转载于CSDNPinus_x博主。接口
转换模块的核心思路就是采集接收机输出的PWM型号,接着分析高电平时间,而后根据高电平时间输出相应的线性变化模拟电压值。get
通常舵机PWM输出的高电平时间为1ms-2ms之间变化,可是实际上咱们为了匹配不一样的遥控器和留有必定余量,咱们设定电平电话的高电平区间为1.1ms-1.9ms之间。也就是说当采集到1.1ms的高电平PWM信号时,模拟电压输出最小值(0V);当采集到1.9ms的高电平时间PWM信号时,模拟电压输出最大值(5V)。产品
本文设计的模块中,一共留出了4路PWM转电压的通道。it
SBUS信号转电压
sbus信号是Futaba公司定制的一种数字传输信号,一共数据包中包含了全部遥控器的通道数值。(天地飞管这路信号叫“Wbus”,本质没有区别)所以,本文设计中为sbus(wbus)设计了一路通道,用来收集带有sbus(wbus)等信号输出的接收机。
在采集完一帧信号后,只根据摇杆变化的4路信号输出相应的4通道电压值。
PPM信号转电压
PPM信号实际上是一种合成的PWM型号。前面单路的舵机PWM信号每一个都单独都占用一个硬件 通道,要想4路变化就要有4路单路的硬件通道,这样就会致使硬件接口过多。PPM信号则是把多路PWM信号合成到一路通道。这样既下降了硬件通道的数量,同时也能传输多路PWM信号。
每一个品牌的sbus信号 通道值最大最小值的变化区别也是有区别的,因此为了尽可能囊括多种遥控器,模块在程序设计上作了余量考虑。直接反应到每一个遥控器的现象就是拨杆最低和最高位置附近会有一段小量程变化,不会引发输出电压值的变化。这并不影响功能的实现(须要说明的是PWM和PPM也作了余量设计)。
最后,将模块接到接收机和电机控制器的输入端。拨动摇杆,电机转速如期变化。OK,收工。