PWM,SBUS,PPM信号转模拟电压的方案

-----------------本文由“麦粒电子”撰写,并提供相应产品服务。----------------

  • 案例场景

    有个内部采用电瓶车的驱动器的无线小车,现在需要使用遥控器控制小车的前进后退。也就是说:把之前电瓶车的手动油门把手换成无线控制的。

    遥控器选择目前市面上有好多的品牌:“天地飞,futaba,斯翼等。遥控器分为接收器和发射器:发射器就是控制人手里拿的摇杆那一部分;接收器则是信号接收端。用来给小车的电机驱动器发送信号的。

    但是现在有个问题,接收机的输出信号并不能直接给电机驱动器使用。因为常见遥控接收机的输出信号一般有三种:舵机PWM信号、SBUS、PPM。而电瓶车的电机驱动器的输入信号要求一般是个模拟电压(常见的电瓶车把手其实就是一个旋转电位器,旋转到不同的位置会输出不同的电压值,以此来控制电机驱动器,从而达到调节电机转速的问题。)

    因此,要想使用遥控器,必须解决接收机输出信号转成模拟电压的问题。为此,我们设计了一款信号转换模块。下图为增加转换板之后的系统框架图

  • 解决方案

    1. 舵机PWM转电压

      舵机PWM,基本上每个接收机都会输出的一种比较常见PWM信号:一般信号频率50HZ,信号高电平变化时间在1ms-2ms之间变化(不同的遥控器会有小幅度的差异)。舵机PWM基础知识请点击:转载于CSDNPinus_x博主。

      转换模块的核心思路就是采集接收机输出的PWM型号,接着分析高电平时间,然后根据高电平时间输出相应的线性变化模拟电压值。

      一般舵机PWM输出的高电平时间为1ms-2ms之间变化,但是实际上我们为了匹配不同的遥控器和留有一定余量,我们设定电平电话的高电平区间为1.1ms-1.9ms之间。也就是说当采集到1.1ms的高电平PWM信号时,模拟电压输出最小值(0V);当采集到1.9ms的高电平时间PWM信号时,模拟电压输出最大值(5V)。

      本文设计的模块中,一共留出了4路PWM转电压的通道。

    2. SBUS信号转电压

      sbus信号是Futaba公司定制的一种数字传输信号,一共数据包中包含了所有遥控器的通道数值。(天地飞管这路信号叫“Wbus”,本质没有区别)因此,本文设计中为sbus(wbus)设计了一路通道,用来收集带有sbus(wbus)等信号输出的接收机。

      在采集完一帧信号后,只根据摇杆变化的4路信号输出相应的4通道电压值。

    3. PPM信号转电压

      PPM信号其实是一种合成的PWM型号。前面单路的舵机PWM信号每个都单独都占用一个硬件 通道,要想4路变化就要有4路单路的硬件通道,这样就会导致硬件接口过多。PPM信号则是把多路PWM信号合成到一路通道。这样既降低了硬件通道的数量,同时也能传输多路PWM信号。

  • 总结

    每个品牌的sbus信号 通道值最大最小值的变化区别也是有区别的,所以为了尽量囊括多种遥控器,模块在程序设计上做了余量考虑。直接反应到每个遥控器的现象就是拨杆最低和最高位置附近会有一段小量程变化,不会引起输出电压值的变化。这并不影响功能的实现(需要说明的是PWM和PPM也做了余量设计)。

    最后,将模块接到接收机和电机控制器的输入端。拨动摇杆,电机转速如期变化。OK,收工。

PWM,SBUS,PPM信号转模拟电压的方案的更多相关文章

  1. 一文打尽PWM协议、PPM协议、PCM协议、SBUS协议、XBUS协议、DSM协议 | STM32的通用定时器TIM3实现PPM信号输出

    PWM.PPM.PCM.SBUS.XBUS.DSM都是接收机与其他设备通信的协议. 请注意这里不要将遥控器和接收机之间的协议混淆.遥控器和接收机之间会采用某种协议来互相沟通,这些协议往往各个厂牌各自有 ...

  2. PPM 信号解析

    PWM信号 PWM信号用于控制单个电调或者单个舵机脉冲宽度调制信号. 像华科尔DEVO 10遥控接收器(RX1002)就输出10路PWM,参看下图. 舵机(电调)上用到PWM信号种类很多,我们这里对常 ...

  3. 直流电机PWM调速系统中控制电压非线性研究_控制元件_工业自动化控制_文章

    直流电机PWM调速系统中控制电压非线性研究_控制元件_工业自动化控制_文章_e-works数字化企业网 http://articles.e-works.net.cn/Component/Article ...

  4. 常见信号的模拟仿真(matlab)(spike signal)

    1. 一维信号 构造离散时间向量: Fs = 1000; % sampling frequency,采样频率 T = 1/Fs; % sampling period,采样周期 L = 1000; % ...

  5. vb上位机模拟电压监测系统

    vb作为一种古老的语言,在工作中已经用不到了,但这门语言也是我在校期间研究比较多的一种,基本的通讯,数据库,界面等模块已经比较了解,马上要进单位实习了,研究的是电机的变频器,软件这块,希望在以后的工作 ...

  6. 【2-SAT】【并查集】NOIp模拟题 植树方案 题解

        一个类似2-SAT的思想,但是简化了很多.只需要用到并查集实现. 题目描述 企鹅国打算种一批树.所谓树,就是由$N$个结点与$N-1$条边连接而成的连通无向图.企鹅国的国王对于这些树有下列要求 ...

  7. [Noip模拟题]统计方案​

    题目并不难,想一下就会了,我真的智商持续下降,取模情况下做除法我都没想到逆元. 总之想到逆元就好写了,还是\(meet\ in\ the\ middle\)裸题,数组开不下用\(hash/map\)存 ...

  8. J20航模遥控器开源项目系列教程(五)| 制作STM32F0接收机,8路PWM输出,SBUS输出,PPM输出 | 加密狗无线化,畅玩飞行模拟器

    我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/J ...

  9. 运放引脚悬空危害大,单片机PWM信号进入运放需要考虑避免运放引脚悬空

    1 问题电路 在没有烧录程序时,单片机的PWM引脚无信号,导致运放的3脚悬空,从而导致运放输出3.5V电压,从二导致后面驱动电流非常大,容易对驱动器件造成损坏 2 改进电路 通过在单片机输出增加下拉电 ...

随机推荐

  1. java虚拟机规范(se8)——java虚拟机的编译(二)

    3.3 算术运算 java虚拟机通常在操作数栈上进行算术运算(例外情况是iinc指令,它直接增加一个局部变量的值).例如下面的align2grain()方法,它的作用是将int值对齐到2的指定次幂: ...

  2. CSUST 集训队选拔赛题解

    选拔赛的题解,~~~ 题目链接:请点击 A题 素数筛 + 线段树(树状数组) 先用素数筛打表,然后线段树更新,遍历求出值,O(1)查询即可 AC代码: /*num数组 是把记录 数是否存在 存在即为1 ...

  3. >>> print "hello" SyntaxError: Missing parentheses in call to 'print'

    错误原因说你的函数print缺省圆括号,可以知道你用的python是3.x版本3.x版本的python,print中的参数要用圆括号括起来,改成:print("hello")

  4. Spring定时器StopWatch

    简单总结一句,Spring提供的计时器StopWatch对于秒.毫秒为单位方便计时的程序,尤其是单线程.顺序执行程序的时间特性的统计输出支持比较好.也就是说假如我们手里面有几个在顺序上前后执行的几个任 ...

  5. 在url里请求id

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. IO流分类

    IO流在java中从输入和输出角度分类: 1.输入流 2.输出流 IO流在java中从数据的角度来分类: 1.字符流:文本,我们能读懂的都可以认为是字符流,如:文章,java文件等 字符输入流的超类: ...

  7. JCF——List

    ArrayList LinkedList Vector

  8. vue笔记一:设置表头的背景颜色以及下边框颜色

    最近做的一个项目有个小小的需求,就是把表头的背景颜色改为黑色,表格边框颜色改为这个颜色,中间出了些问题,因为vue的表格样式是内联样式,一修改就影响到其他地方的表格样式,尽管我单独加了id还是不行,经 ...

  9. elementUI拿到当前表格行的数据的另一种写法

    背景: 这里是通过点击“修改”按钮后才拿到当前行的数据,不是点击当前行任意位置拿到数据,所以不能用 @row-click 方法 改用点击的时候直接拿到这个表里面的这一条数据 1.绑定事件 <te ...

  10. centos7 安装telent和telnet-server

    安装centos7 无telnet命令 先检查CentOS7.0是否已经安装以下两个安装包:telnet-server.xinetd.命令如下: rpm -q telnet-server rpm -q ...