找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3504|回复: 22
打印 上一主题 下一主题
收起左侧

学到了pwm,想通过pwm控制电机,51单片机

  [复制链接]
跳转到指定楼层
楼主
ID:730961 发表于 2020-4-22 22:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
学到了pwm,想通pwm控制电机速度,也查了好多资料,看了很多视频,就是感觉差了一点火候,电机实现功能:长按按键电机加速,松开,保持速度不变,再次按下,速度下降,求各位指点!!!!!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:730961 发表于 2020-4-22 23:40 | 只看该作者
有没有大神给给思路
回复

使用道具 举报

板凳
ID:729164 发表于 2020-4-22 23:45 | 只看该作者
主要是PWM的配置,PWM原理理解清楚
回复

使用道具 举报

地板
ID:732506 发表于 2020-4-23 01:36 | 只看该作者
只有一个键的话,不太好搞,主要是控制逻辑不清,如果电机加速键松开前发生抖动,下次再按就不知道应该是加速还是减速了。或者按键的人忘记上次是加速还是减速,也会有问题。最好是2个键,1个加速,一个减速。如果只能一个键至少要加一个指示灯说明上次按时是加速还是减速。
回复

使用道具 举报

5#
ID:213173 发表于 2020-4-23 08:20 | 只看该作者
简单易懂的单键控制PWM示例,只要入门一看就懂。
单键控制PWM 仿真.zip (127.06 KB, 下载次数: 68)

回复

使用道具 举报

6#
ID:213173 发表于 2020-4-23 08:22 | 只看该作者
占空比0~100%
回复

使用道具 举报

7#
ID:730961 发表于 2020-4-23 11:19 | 只看该作者

自定义一个占空比,然后扫描条件,逐步加,减是这个思路吗
回复

使用道具 举报

8#
ID:730961 发表于 2020-4-23 11:21 | 只看该作者
hotpet 发表于 2020-4-23 01:36
只有一个键的话,不太好搞,主要是控制逻辑不清,如果电机加速键松开前发生抖动,下次再按就不知道应该是加 ...

一个按键不好判断顺序逻辑,那么两个按键,是否需要调节占空比,逐级加,减
回复

使用道具 举报

9#
ID:491577 发表于 2020-4-23 11:47 | 只看该作者
你差在时间的控制上,你要一个定时器定时1ms,开中断,中断中要加入:ms++;(ms变量要定义成全局变量),当有按键按下时,ms=0;if(ms>100)  {PWM=PWM+1;ms=0;}//当按键按下每100ms后PWM增加1.

回复

使用道具 举报

10#
ID:311846 发表于 2020-4-23 14:15 | 只看该作者
看来你看的资料不够多,按键处理就当你搞定了,例如PWM0-100则首先按下按键,定时器开始计时,每Xms增加一次PWM的占空比,X代表多少毫秒决定你按下时增加或减少PWM的速度,然后用一个标志位来控制按下到底是加还是减PWM的占空比,每次按下改变一次标志位,则每次按按键后可知下次加还是减PWM。懂?
回复

使用道具 举报

11#
ID:451629 发表于 2020-4-23 15:31 | 只看该作者
可以用定时器来实现软件PWM,占空比0-100,控制电机的通断就可以的
回复

使用道具 举报

12#
ID:34004 发表于 2020-4-23 16:15 | 只看该作者
调节PWM占空比大小
回复

使用道具 举报

13#
ID:730961 发表于 2020-4-23 22:13 | 只看该作者
hhh402 发表于 2020-4-23 11:47
你差在时间的控制上,你要一个定时器定时1ms,开中断,中断中要加入:ms++;(ms变量要定义成全局变量), ...

谢谢,我这边在改一下
回复

使用道具 举报

14#
ID:730961 发表于 2020-4-23 22:24 | 只看该作者
权威人物 发表于 2020-4-23 14:15
看来你看的资料不够多,按键处理就当你搞定了,例如PWM0-100则首先按下按键,定时器开始计时,每Xms增加一 ...

还是有点蒙,您看是这样吗,我要设置一个定时,比如1ms增加一次占空比,每次占空比是多少,然后用一个检测来判断我每次按下是增减 ,是这个意思吗
回复

使用道具 举报

15#
ID:730961 发表于 2020-4-23 22:25 | 只看该作者
时间苍白了誓言 发表于 2020-4-23 15:31
可以用定时器来实现软件PWM,占空比0-100,控制电机的通断就可以的

谢谢您
回复

使用道具 举报

16#
ID:730961 发表于 2020-4-23 22:28 | 只看该作者
Apo 发表于 2020-4-23 16:15
调节PWM占空比大小

pwm占空比是需要分级别,然后来定时检测往上增加或减,是吗?
回复

使用道具 举报

17#
ID:730961 发表于 2020-4-24 10:41 | 只看该作者
感谢各位,已经做出来了
回复

使用道具 举报

18#
ID:410464 发表于 2020-4-24 16:41 | 只看该作者
一个按键可以做到的,用标志位的方式判断,提供个思路,按一次再长按是增加, 按两次再长按是减小,不用延时消抖,类似状态机一样的小程序
回复

使用道具 举报

19#
ID:602673 发表于 2020-5-6 17:19 | 只看该作者
小白学51i 发表于 2020-4-24 10:41
感谢各位,已经做出来了

能不能把代码借我参考一下, 或者跟我讲解一下
回复

使用道具 举报

20#
ID:602673 发表于 2020-5-6 17:20 | 只看该作者
小白学51i 发表于 2020-4-24 10:41
感谢各位,已经做出来了

能告诉我一下怎么做的嘛?
回复

使用道具 举报

21#
ID:744791 发表于 2020-5-6 22:03 | 只看该作者
可以参考PWM调制原理,通过改变占空比来控制转速
回复

使用道具 举报

22#
ID:420836 发表于 2020-5-7 02:05 | 只看该作者
如果程序未检测到按键的状态转换,则视为连续按键,然后将PWM输出增加或减少预定步长。 如果程序检测到键状态转换,请停止递增或递减。
回复

使用道具 举报

23#
ID:730961 发表于 2020-5-9 17:21 | 只看该作者
598651219898321 发表于 2020-5-6 17:19
能不能把代码借我参考一下, 或者跟我讲解一下

这两天没上论坛,我注意看,你要代码,还是给我讲一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表