桃色加百列 发表于 2012-8-2 12:57:45

新手求助!!关于AVR控制步进电机

最近学校在做机器人,我在学单片机,,现在的设备有ATmega16      两相四线的步进电机    跟电机一起买的驱动器

只需要单片机输出脉冲和方向信号就好了

1,目前我是用的CTC的PWM波当脉冲,,请问这样可以吗,,我就是觉得这样PWM的频率好算,,跟OCR反比

2,启动频率应该怎么搞??直接一个大频率老是堵转,,网上说的梯形S形加速我不知道程序怎么实现,我用了段这样的:
        OCR0=120;
        for(i=0;i<100;i++)
        {
                OCR0--;
                for(j=0;j<500;j++);
        }
这样从120到20。。但是貌似一点效果也没。。而且直接最后的效果都不是OCR0=20了。。

请教高手啊。。一是用CTC的PWM当脉冲控制步进电机可以吗,,二是启动频率加速那些该怎么用程序实现??谢谢!!

yamqqqq 发表于 2012-8-2 13:05:02

步进电机S型的起动力距够用吗?

桃色加百列 发表于 2012-8-2 13:09:40

yamqqqq 发表于 2012-8-2 13:05 static/image/common/back.gif
步进电机S型的起动力距够用吗?

不懂啊,,现在就是空载的时候电机能转起来的频率一负重就跑步起来了,,但是俺需要那个速度,,就是怎么来个提高频率的过程让它转起来,,S形怎么用程序实现啊,,

yamqqqq 发表于 2012-8-2 13:12:38

用梯形曲线会不会好一引起,一开始慢,加量大,又能加速度起来,保证速度,停车的时候慢下来保证停位精度

桃色加百列 发表于 2012-8-2 13:15:53

yamqqqq 发表于 2012-8-2 13:12 static/image/common/back.gif
用梯形曲线会不会好一引起,一开始慢,加量大,又能加速度起来,保证速度,停车的时候慢下来保证停位精度 ...

那梯形的怎么实现??而且我经常看到别人说转多少步,,怎么能控那么精确??用CTC的标准方波的话怎么能输出一定个数的脉冲??

yamqqqq 发表于 2012-8-2 13:19:57

这个用单片机如何做我就不知道了,用plc到是很熟练!俺也正在学习单片机

yamqqqq 发表于 2012-8-2 13:20:30

至于多少多少步,你先去了解一下步进电机原理!

桃色加百列 发表于 2012-8-2 14:09:16

yamqqqq 发表于 2012-8-2 13:20 static/image/common/back.gif
至于多少多少步,你先去了解一下步进电机原理!

那请问启动频率怎么才能慢慢上去呢,,怎么用程序实现??

yamqqqq 发表于 2012-8-3 11:08:54

你外部给他多少脉冲,除于细分数后,他就走多少步!

jingwaner 发表于 2012-8-3 11:37:26

本帖最后由 jingwaner 于 2012-8-3 11:38 编辑

CTC 完全可以,启动频率设置为100-200HZ(无细分情况)

开始做的时候,不改变OCR的值,也就是说,不做加减速。正常了以后尝试加减速。

haoye 发表于 2012-8-31 15:13:17

怎么控制他转任意的一个角度啊??我用这个模式输出几个脉冲,到现在还没有实现,望高手指点,我也是用AVR的
页: [1]
查看完整版本: 新手求助!!关于AVR控制步进电机