让我们从pwm说起

Pwm,即脉宽调制,用高电位的波长时间来表示信息。通常值为1000-2000,即2ms内,高电位的时间从1000us到2000us之间。pwm产生于人手直接控制遥控器,遥控器再控制舵机的时期。1s除以2ms等于500hz的刷新率对人的反应来说足够用了。

但是事情发生了变化,当多旋翼飞控诞生时,接收机不再直接与电调通讯,转而和飞控通讯。相比人手人脑,飞控可以更快地做出反应,如此pwm提供的500hz刷新率有点不够看了。并且还有不同步的情况发生。因为新产生的控制信号如果错过了一点点时间,那么电调就会继续执行上个周期的pwm信号。

为此,OneShot125协议产生。

这项协议包含两项技术,一项称为同步pwm,一项为快速pwm。同步pwm,即不再严格要求一个周期结束后必须有新的控制信号可用,不然就接收不到新控制信号,直到再过一个周期才能更新。而是有新的控制信号随时发出,电调随时接受。快速pwm意味着从原先2ms一个周期,除以8,变为250us一周期,这时候油门值1000-2000就由125us到250us的高电位波长表示。也就是oneshot125中125的来源。

Oneshot42基本和oneshot125相同,不同的是一个周期的时间变为84us。类似地,multishot将一个周期的时间压缩为25us,刷新率来到40khz。

上述协议都是模拟信号,而dshot则是数字信号。二者有什么区别吗?假设顾客要向店员描述自己要多大的西瓜,如果顾客用手比划大小,这就是模拟信号。即手之间的距离“模拟”了西瓜的大小。也就是直接携带特征信息。而数字信号则是间接地通过编码来传输信息。比如你对店员说我要003型西瓜,根据提前约定好的编码信息,店员就知道003型西瓜是多大的了。

那么模拟信号的问题是什么?首先是干扰,比如你手比较抖,比划西瓜大小时店员就不太明白西瓜的精确尺寸。再者就是晶振的问题,因为单片机的时间都来源于晶振,而晶振在微秒级的时间上不太可能完全准确。这就导致了使用pwm脉宽调制时,原本想发送1234微秒的波长,结果发出去变成了1235,或者接收方的晶振也有点问题接受成了,1233微秒。要想解决可以使用昂贵的更精密的晶振,显然不现实。这也是为什么电调上电需要校准行程,因为不同遥控器发送的脉冲宽度范围可能是不同的。比如一个遥控器实际行程是998微秒的脉宽到2020微秒的脉宽。

而数字信号则能比较好的解决上述问题。使用dshot后将不再需要标定电调行程。除此之外数字信号还可以降低电子噪声干扰。言外之意就是如果你不在意手动或者飞控帮你标定电调行程,并且你的电调实际使用中也并没有太多噪声干扰,那么也没有必要使用dshot,multishot也很好用。

值得一提的是dshot在实现时使用了飞控CPU中的DMA来传输要发送的数据。这也要求了飞控板在设计时,应该提前将dma通道分配到输出电机信号的端口。

由于dshot是高频信号,电调上用于过滤干扰的低通滤波电容会严重影响dshot信号,使得信号失真。所以如果想使用dshot300及以上,需要自己动手去除电容,这是很危险的。(这是六年前的一个视频观点,现在应该有电调厂商对dshot优化吧,,)

Dshot150一个周期是104微秒,整体延时比oneshot42略差,因为oneshot42一个周期是82微秒。但比oneshot125好很多。

而dshot600一个周期是26微秒,和multishot25微秒一个周期延迟相差不大。

穿越机电调协议—从pwm到dshot相关推荐

  1. DSHOT600电调协议Verilog

    DSHOT600电调协议 Dshot,一种全新的电调协议.穿越机,真的是航模发展的奇迹之一. Cleanflight,Raceflight,Betaflight,Kiss,四大开发团队,发展目标不太一 ...

  2. APM 新版电机电调校准

    旧版的APM电机电调校准需要将油门开到最大后给飞控上电,使飞控黄灯常亮后断电,继续保持最大油门再给飞控上电,听到嘀嘀嘀三声后表示收到遥控器最大油门信号,之后再将油门打到最低,听到滴--一声,表示电机收 ...

  3. 显示杂谈(5)-DC调光与PWM调光

    在买手机的时候,你是否注意过,手机参数介绍中有一项叫做DC调光? 可能你也不太在意,因为你都不知道这到底是个什么东东. 为啥在买手机的时候会说DC调光技术呢,因为DC调光技术是屏幕特有的专利,只有在屏 ...

  4. 关于LCD,LED,OLED那些事and关于DC调光与PWM调光

    关于LCD,LED,OLED那些事and关于DC调光与PWM调光 LCD(liquid-crystal display)液晶显示器 LCD 的构造是在两片平行的玻璃当中放置液态的晶体,两片玻璃中间有许 ...

  5. 【无标题】无感无刷直流电机电调程序系统解读

    1. 电机驱动电路设计 换相控制电路主要由6个功率场效应管和一些外围电路等构成.为实现磁场旋转,星形连接的线圈A.B.C的导通顺序依次为:AB.AC.BC.BA.CA.CB,对应的导通场效应管依次为Q ...

  6. 全程pwm调光_DC调光和PWM调光究竟有什么不同?

    3月21日消息,一位网友在一加创始人兼首席执行官刘作虎微博下留言:一加有没有准备DC调光,如果有的话一加就是水桶机了. 对此刘作虎回应:看来你也被营销了,暗示一加可能不会采用DC调光方式. 据悉,3月 ...

  7. 单片机产生可调方波(c语言),单片机产生占空比可调方波(PWM)

    /**************************************************************** 程序名称: 发光二极管D1进行亮度控制 版本: VER1.0 适用板 ...

  8. 四旋翼无人机电调校准

    硬件:富斯-i6遥控器,FS-iA6B接收机,好盈30A电调,一个电机,一块3S的航模电池 如下: 步骤 第一步:先打开遥控器,将油门通道推到最高点 第二步:电调线插入接收机的第三通道CH3(如果接错 ...

  9. 12. 直流电机调速(PWM)

    直流电机介绍 •直流电机是一种将电能转换为机械能的装置.一般的直流电机有两个电极,当电极正接时,电机正转,当电极反接时,电机反转 •直流电机主要由永磁体(定子).线圈(转子)和换向器组成 •除直流电机 ...

最新文章

  1. JAVA同时输入用户名和密码_用java模拟设计一个简单的“用户注册”程序。当用户输入用户名和密码时,单击“注...
  2. 深入理解javascript原型和闭包(6)——继承
  3. get方式请求接受参数的方法
  4. OAuth2.0学习(1-1)OAuth2.0是什么?
  5. 转 性能分析工具汇总
  6. 并发模型之——共享内存模型(线程与锁)理论篇
  7. dockerfile拉取私库镜像_还在用Alpine作为你Docker的Python开发基础镜像?其实Ubuntu更好一点...
  8. Python操作PDF与Tiff文件
  9. 数据结构:二叉查找树
  10. 留德APS审核 - 计算机科学与技术 - 2020北京英语审核 (一审通过)
  11. 感受野-Receptive Field的理解
  12. 腾讯股票接口怎样新建一个历史类数据的编程?
  13. vue3 源码分析-运行流程分析
  14. 乐学偶得python怎么样_乐学偶得 - 主页
  15. Markus Persson:Minecraft 游戏背后的奇才
  16. 【Java】获取星座匹配度
  17. 生态环境影响评价制图流程
  18. Yoink for Mac(临时文件存储助手)
  19. Vue生命周期函数(钩子函数)
  20. 团队形成的阶段_连锁企业发展的几个阶段

热门文章

  1. 小红书找探店达人有什么要求?品牌方怎么找探店达人
  2. autojs 设置悬浮窗可触摸
  3. champagne_champagne是什么意思_champagne的翻译_音标_读音_用法_例句_爱词霸在线词典...
  4. Android 蓝牙 IOS ANCE协议介绍 - 史上最详细
  5. 面向过程与面向对象——编程思想的演变
  6. 试试用pyqt做一个上位机软件,但愿不会烂尾(七):费了九牛二虎之力的进度条显示
  7. iPhone内存管理详细解说(一)
  8. 山东大学软件学院项目实训-创新实训-山大软院网络攻防靶场实验平台(六)-SQL注入数字型
  9. 深度学习-RNN注意力模型
  10. 14:00面试,14:06就出来了,问的问题有点变态。。。