当前位置: 首页 > news >正文

使用pwm控制一个舵机摆动的速度

首先是控制速度,不是角度。

使用pwm去控制舵机,是控制角度来的,但是有的时候,我们想控制舵机的摆动速度。这个时候怎么怎么办?

考虑以下条件:

1. 舵机的转动速度的最大值是固定的,

2. 去掉启动的时间,一般来说舵机的角速度是固定的

3. 我们无法令到舵机超过它的最大速度

4. 舵机工作时,目标角度和当前角度相差越大,它的角速度就越大, 反之越小

因此我们可以这样做:

1. 先给出一个pwm, 等待一个比较长的时间,如90度需要的最大时间。这样,pwm和舵机角度就对准了。

2. 根据指定速度,定时去计算出增量, 去更新pwm的值,如每0.02秒计算一去更新pwm, 输出给舵机。

3. 考虑启动的时间,做一定的补偿算法。

效果:

python写的舵机模拟控制来回摆动的速度

下面是控制舵机的来回摆动的速度的代码:

    def do_swing(self, delta_time):deltaAngle = self.auto_speed * delta_time * self.directionnew_angle = self.swing_angle + deltaAngle# 边界检测和方向反转if new_angle >= 25 or new_angle <= -25:self.direction *= -1# 更新当前角度并设置目标PWMself.swing_angle = new_angletarget_pwm = 1500 + (self.swing_angle / 0.09)self.swing_arm.set_target(int(target_pwm))

http://www.xdnf.cn/news/906913.html

相关文章:

  • 汉诺塔问题深度解析
  • PlayDiffusion上线:AI语音编辑进入“无痕时代”
  • const和constexpr详解
  • modelscope安装并下载模型文件
  • Google机器学习实践指南(机器学习模型泛化能力)
  • Docker + Nginx + Logrotate 日志管理与轮换实践
  • Spring Boot消息系统开发指南
  • 湖北理元理律师事务所:构建科学债务优化体系的四重维度
  • 6.6本日总结
  • 【办公类-104-01】20250606通义万相50分一天用完,通义万相2.1专业版测试
  • 二分算法
  • 基于ReAction范式的问答系统实现demo
  • 多模态大语言模型arxiv论文略读(111)
  • vue生成二维码图片+文字说明
  • 猜字符位置游戏-position gasses
  • 数列运算中的常见错因分析
  • 使用WebSocket实时获取印度股票数据源(无调用次数限制)实战
  • Python训练营-Day23-Pipeline
  • Tika Server:企业级文档内容解析的轻量级服务化方案
  • js树形菜单功能总结
  • AT2659_GNSS低噪声放大器芯片
  • 字节推出统一多模态模型 BAGEL,GPT-4o 级的图像生成能力直接开源了!
  • MySQL的优化部分介绍
  • 语音合成之十九 为什么对数行列式的值可以作为Flow-based模型loss?
  • 【信息系统项目管理师-案例真题】2025上半年(第二批)案例分析答案和详解(回忆版)
  • 蓝牙攻防实战指南:发现隐藏设备
  • 【更新至2024年】2000-2024年上市公司财务困境MertonDD模型数据(含原始数据+结果)
  • LangChain【5】之工具调用:连接大模型与现实世界的桥梁
  • C#中的密封类与静态类:特性、区别与应用实例
  • (力扣)80. 删除有序数组中的重复项 II