楼主: 西湖湖畔

[已解决] 求助帖。关于PWM波控制伺服电机(已解决)

[复制链接]

该用户从未签到

16

主题

705

帖子

0

金牌会员

Rank: 6Rank: 6

积分
1745
最后登录
1970-1-1
发表于 2014-9-2 13:38:51 | 显示全部楼层

不客气,不熟悉16位,要不然就帮你弄个了。
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

199

帖子

2

中级会员

Rank: 3Rank: 3

积分
443
最后登录
2019-12-24
发表于 2014-9-2 13:58:13 | 显示全部楼层
楼主控制的是什么类型电机?控电机好像是不用PWM计数的方法的。说一下你的具体要求,可以和你讨论讨论。
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

22

帖子

0

注册会员

Rank: 2

积分
73
最后登录
1970-1-1
 楼主| 发表于 2014-9-2 16:57:05 | 显示全部楼层
wangandrew 发表于 2014-9-2 13:58
楼主控制的是什么类型电机?控电机好像是不用PWM计数的方法的。说一下你的具体要求,可以和你讨论讨论。 ...

安川伺服电机SGMAH-01A1A2S,驱动器用的是SGDH-01AE。控制方式选择位置控制,也就是用脉冲列指令控制,这个用PWM是不是应该可以的呢,还有电机启动制动之类的不是得改变PWM波的输出频率嘛,而且还需要知道PWM发出的脉冲的个数,所以需要计数,我用的单片机的PWM模块没有计数的功能,所以就不知道该怎么进行计数了。期待你的帮助啊
回复 支持 反对

使用道具 举报

该用户从未签到

10

主题

89

帖子

0

中级会员

Rank: 3Rank: 3

积分
378
最后登录
1970-1-1
发表于 2014-9-3 09:15:44 | 显示全部楼层
西湖湖畔 发表于 2014-9-1 22:26
我想用的就是脉冲累加器。可是我不太清楚怎么计数到指定值时产生中断,而且我还要改变PWM输出频率,不知 ...

脉冲累加会产生两种中断,累加器溢出中断和事件中断,当16位的脉冲累加溢出时,会置PAFLG(脉冲累加标志寄存器)的PAOVF为1,这个时候如果PACTL脉冲累加控制寄存器中的PAOVI =1,便会产生中断请求;而事件中断则是检测PT7引脚上检测到有效边沿触发,
至于改变PWM的频率,其实就是对几个寄存器的设置,不过在改变频率的同时也要注意占空比是否改变
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

199

帖子

2

中级会员

Rank: 3Rank: 3

积分
443
最后登录
2019-12-24
发表于 2014-9-3 10:50:08 | 显示全部楼层
西湖湖畔 发表于 2014-9-2 16:57
安川伺服电机SGMAH-01A1A2S,驱动器用的是SGDH-01AE。控制方式选择位置控制,也就是用脉冲列指令控制,这 ...

以为你是驱动电机了,原来是控制安川的驱动器。你就是用单片机来模拟一个PLC的控制指令来控制安川的驱动器。那么它的脉冲指令,脉冲的要求是什么呢?它的手册上应当有说明的啊,模拟出驱动器要求的脉冲,驱动器才能动,一般PWM不是首选。
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

802

帖子

0

金牌会员

Rank: 6Rank: 6

积分
1763
最后登录
1970-1-1
发表于 2014-9-3 11:57:46 | 显示全部楼层
计数有很多方法的吧, 看你适合哪个了
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

22

帖子

0

注册会员

Rank: 2

积分
73
最后登录
1970-1-1
 楼主| 发表于 2014-9-4 14:55:48 | 显示全部楼层
秋秋秋 发表于 2014-9-3 09:15
脉冲累加会产生两种中断,累加器溢出中断和事件中断,当16位的脉冲累加溢出时,会置PAFLG(脉冲累加标志 ...

非常感谢,你说的我都看明白了,和我想用的也一样,只是,比如举个例子,我想发出5个1HZ的脉冲后想再发出10个2HZ的脉冲,这里计数完5个之后是不是要通过触发中断来变成2HZ的频率?如果要触发中断,那么累加器的两种中断:累加器溢出中断是不能用的吧?事件中断能用吗?
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

22

帖子

0

注册会员

Rank: 2

积分
73
最后登录
1970-1-1
 楼主| 发表于 2014-9-4 14:58:35 | 显示全部楼层
wangandrew 发表于 2014-9-3 10:50
以为你是驱动电机了,原来是控制安川的驱动器。你就是用单片机来模拟一个PLC的控制指令来控制安川的驱动 ...

谢谢,那么首选是哪个呢?比如举个例子,我想发出5个1HZ的脉冲后想再发出10个2HZ的脉冲,这里该用什么方法计数5个呢?计数完5个之后又该怎样变成2HZ的频率?
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

22

帖子

0

注册会员

Rank: 2

积分
73
最后登录
1970-1-1
 楼主| 发表于 2014-9-4 14:59:13 | 显示全部楼层
aaa999kk 发表于 2014-9-3 11:57
计数有很多方法的吧, 看你适合哪个了

谢谢,那都有哪些啊,比如举个例子,我想发出5个1HZ的脉冲后想再发出10个2HZ的脉冲,这里该用什么方法计数5个呢?计数完5个之后又该怎样变成2HZ的频率?
回复 支持 反对

使用道具 举报

该用户从未签到

145

主题

4926

帖子

0

金牌会员

Rank: 6Rank: 6

积分
9267
最后登录
1970-1-1
发表于 2014-9-4 15:41:39 | 显示全部楼层
西湖湖畔 发表于 2014-9-4 14:59
谢谢,那都有哪些啊,比如举个例子,我想发出5个1HZ的脉冲后想再发出10个2HZ的脉冲,这里该用什么方法计 ...

思想方面,楼主可以用上升沿中断,计数记到5个,然后停止PWM,修改PWM的频率,然后再发送PWM计数,计数计满停止。
至于代码实现,楼主可以到官网提交技术服务请求,那边16位的工程师会帮你解决。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-20 19:33 , Processed in 0.101452 second(s), 29 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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