问题就是,树莓派和遥控器没能同时控制电机,详细来说,就是树莓派产生的pwm波和遥控器产生pwm需要分别作用在驱动板上,驱动板和遥控器接收器FS-iA6B如图:
然后是硬件,树莓派就无需多言了,输出PWM到驱动板,FS-iA6B接收器接收天线信号,再将信号处理后以pwm输出到驱动板,然后!!!重点来了,你需要了解pwm到底是什么??
详文可看:http://t.csdn.cn/RK1tY
pwm作为一种信号波,它就有电气特性,简单来说,如果你高等数学和电路基础还没忘完的话,就会知道,这个一般的方波函数在电气特性上是可以抬升的,也就是说,上图中的1V方波为例,如果在这个基础上给一个3.3V电压,整个方波图像就会上升,这是我们需要知道的第一个点。第二个点,pwm中有个很重要的东西叫作参考GND,也就是说,一个pwm必须要建立在同个信号发生源的GND上,如果接了其他GND,那这个pwm就是乱的,没有意义,而APO-DL驱动板上的GND是互通的,这里就要知道第三个点,GND到底是什么意思:http://t.csdn.cn/RZ9Al
知道以上三个点后,我们回过头来看我们的需求,如果不采用混控模式,那我们一共有四个pwm波,也就是说,树莓派上两个pwm波,以及FS-iA6B上两个pwm波,而这里一共有两个信号发生源,对应我们需要两个GND,综上所述,我们就已经将原理分析得差不多了,现在来看接线,也就易如反掌了,这里需要一个面包板,将四个输入pwm分为两个统一的pwm信号,最后接到驱动板上,完成!而为了消去干扰和之前提到的pwm污染,在我们遥控器控制时,重点来了!将树莓派GPIO的pwm输出模式改为输入模式,输入模式就是高阻抗模式,而高阻抗模式,就可以简单理解为二极管,至此,问题解决!
PS:其实实际使用会发现,当树莓派处于控制状态时,遥控器控制模式可以随时介入,抢占信号输入。很简单的原理,但是理论基础没有,就想不到。