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,SBUS,PPM信号转模拟电压的方案

    PWM,SBUS,PPM信号转模拟电压的方案 -----------------本文由"麦粒电子"撰写,并提供相应产品服务.---------------- 案例场景 有个内部采用 ...

  2. 舵机PWM转模拟电压(带正反控制)

    舵机PWM转模拟电压(带正反控制) -----------------本文由"麦粒电子"撰写,并提供相应产品服务.---------------- 叙述 上文讲到讲遥控器接收机信号 ...

  3. 频压转换(RC低通滤波方式,频率信号如何转成模拟电压信号)

    1 频压转换(RC低通滤波方式) 频压转换模块用于解决PLC.运动控制器的模拟电压控制输出,一般通过控制频率,而输出相应的电压.以下大拿将详细解释如何将频率信号转换为模拟电压信号. 2 频压转换(RC ...

  4. STM32解析航模遥控器的PPM信号

    一.前言 通常遥控器能输出i-BUS.s-BUS.PPM.PWM信号,其中i-BUS.s-BUS需要配套的电平反向器(硬件取反),PWM信号占用引脚较多,对比而言PPM信号使用起来更为方便. 航模遥控 ...

  5. STM32 四轴无人机设计——遥控器PPM信号

    1.前言 由于时间原因,我使用的遥控器是直接买的成品,富斯I6x+IA6B接收机,据说是一代神控,富斯的遥控器总共有ibus模式.sbus模式.PPM模式.我使用的是PPM模式. 2.什么是PPM P ...

  6. 嵌入式STM32入门之定时器控制LED闪烁与产生PWM脉冲宽度调制信号

    定时器控制LED闪烁与产生PWM脉冲宽度调制信号 一.前言 二.定时器基本介绍 (一)STM32定时器 (二)通用定时器主要功能 (三)计数器模式 (四)定时器工作原理 三.实验(1)初识定时器 (一 ...

  7. 单片机模拟输出PPM信号

    PPM信号就是将多个PWM信号放在一起传输,一个PPM的周期为20ms,其中一个通道信号的范围为1~2ms,所以一个PPM信号,最多可以传输10个通道的PWM信号. PPM信号以0.5ms的低电平信号 ...

  8. STM32F030F4P6 HAL库 PPM信号输出 24L01 PPM接收机制作

    事件起因 因为给PX4测试缺少遥控器,手撸了一套支持PPM的遥控器系统,这篇文章将在接收机上遇到的问题分享一二,供大家借鉴. 1.需求分析 接收机需要输出至少8通道的PPM信号,可以将*通PPM信号分 ...

  9. arduino 读取模拟电压_MQ2气体/烟雾传感器如何工作及其与Arduino接口

    arduino 读取模拟电压_MQ2气体/烟雾传感器如何工作及其与Arduino接口 使用MQ2气体传感器模块,为您的下一个Arduino项目带来一个人工鼻子.这是一个强大的气体传感器适用于感测LPG ...

最新文章

  1. qsort归纳学习(c语言版本)
  2. python ansible_Ansible升级客户机Python2.4至2.7
  3. 百天搞懂Java(一) - JDK环境配置
  4. C++测试与调试知识
  5. 初始Bootstrap
  6. LeetCode 1945. 字符串转化后的各位数字之和
  7. Python面试题大全(一):基础知识学习
  8. 分析Linux文件rwx属性的含义
  9. Python零基础学习代码实践 —— 99乘法表
  10. 基本入门的C/C++算法总结
  11. Java如何配置环境变量
  12. Job for network.service failed because the control process exited with error code. See “systemctl st
  13. electron +vue自定义点击最大化、最小化和关闭窗口事件功能
  14. Fresco使用详情
  15. felix李_和felix相爱相杀的那些年
  16. WPS关闭不了后台一直运行的解决办法(wpscloudsvr.exe)
  17. (C++学习笔记一)命名空间 常量 字符串
  18. C语言中经典算法——斐波那契数列的几种算法
  19. MT4/MQL4入门到精通EA教程第六课-MQL语言常用函数(六)-常用订单功能函数
  20. java test before_JUnit4中@Before、@After、@Test等注解的作用

热门文章

  1. 鸿蒙系统有哪些手机可以用,鸿蒙系统手机有哪些型号,鸿蒙系统手机什么时候上市...
  2. 浅谈K8S的容器管理
  3. 【原创】新韭菜日记55--20190412----各行业龙头股
  4. 计算机的人文素养知识,人文素养知识要点
  5. 19.2 NESMA 唯一和非唯一搜索条件的组合案例分析
  6. java基础-字符串String
  7. android微信下拉页面,Android仿微信下拉列表实现
  8. [047量化交易]python获取股票 量比 换手率 市盈率-动态 市净率 总市值 流通市值
  9. 在公司用手机通过4G网络上网,上网内容可能被公司监控吗?
  10. 逆袭之旅DAY20.XIA.程序调试