搜索
bottom↓
回复: 21

无感无刷电机驱动最小程序

[复制链接]

出0入0汤圆

发表于 2014-8-11 00:13:22 | 显示全部楼层 |阅读模式
本人是学机械的,但很喜欢四轴之类的东西。所以,一直想DIY四轴飞行器。
由于对电子与软件不太会,边学边做所以进度很慢。
一开始,没有怎么在坛子里学习,就想自己用51做一个玩玩,用洞洞板自己焊了一个最小系统玩玩,连传感器都没有,以为只要电机给一样的PWM,至少可以平衡起飞吧,发现原来不行。只能回坛子继续学习了。学了一段时间,感觉可以做一个微型四轴了。这回从坛子里找了一个原理图,并把单片机换成自己熟悉的飞思卡尔8位单片机,自己画了一块板子。经过一段时间,还是不太满意。后来,有一些高手朋友加入。这回准备主控用LPC11C14,用无感无刷电机。主控板已经我自己画好并且制作出来了,电机的驱动板由朋友设计制作。自己焊了一块,来用。
这回我不再傻傻的一头扎进去制作了,先在坛子里找帖子学习。帮助最大的是  写给四轴新人:无感无刷直流电机之电调设计全攻略 http://www.amobbs.com/thread-4164837-1-1.html (出处: amoBBS 阿莫电子论坛)。写的太好了, 从基本原理到软件都很详细。
我的电机驱动就是按这里说的修改的,没有创新。我是新手,atmega8也没有玩过,所以,在看MK的原程序时,有点乱。因为原程序不只驱动电机转动的程序,还有通迅,保护什么的程序,显示比较乱。
这里提供最小的程序。主要是起动程序和正常运转程序,这样新手看起来就方便多了。

电路就不提供了,因为不是我画的,呵呵。但是,和MK一样的,只有小的变化。单片机是atmega8。

主要变化是引脚换了几个脚(由于粗心,这给我使用时带来过一些麻烦),和莫氏管驱动这一块有一些小的变化。

下面是程序。
attach://211529.rar
编译是 ICCV8 for AVR CodeBlocks IDE
atmega8用的是内部RC,没有外接晶振。
这个程序只能让电机按50%占空比,转动,其他一概没有。想要控制电机,只要再添加IIC,PPM,UR(目前硬件支持这几种),就可以了。
另外,里面还有一个protues图,调程序时用的。

(我的程序是在MK上修改的,和我一起玩的人,有多年从事单片机经验,他说他是在熟悉原理下,自己完全编写的,我觉得好厉害。)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入4汤圆

发表于 2014-8-11 08:42:19 | 显示全部楼层
支持楼主。

出0入0汤圆

发表于 2014-8-11 08:55:20 来自手机 | 显示全部楼层
谢谢楼主,正好需要

出0入10汤圆

发表于 2014-8-11 09:39:08 | 显示全部楼层
谢谢分享

出0入0汤圆

发表于 2014-8-11 17:47:50 来自手机 | 显示全部楼层
谢谢楼主分享

出0入0汤圆

发表于 2014-8-12 09:42:23 | 显示全部楼层
楼主,我用你给的PROTEUS仿真,发现先开始有PWM输出,后面就没了,怎么回事?

出0入8汤圆

发表于 2014-8-12 12:24:31 | 显示全部楼层
谢谢楼主分享

出0入0汤圆

 楼主| 发表于 2014-8-12 13:25:38 | 显示全部楼层
kingway00 发表于 2014-8-12 09:42
楼主,我用你给的PROTEUS仿真,发现先开始有PWM输出,后面就没了,怎么回事? ...

protues没有无感无刷电机这个元件,所以我是用按键来模拟换相的信号,从而验证时序的正确性。你说得原因就是没有触发模拟比较器,所以这样。哈哈。

出0入0汤圆

 楼主| 发表于 2014-8-12 13:37:48 | 显示全部楼层
kingway00 发表于 2014-8-12 09:42
楼主,我用你给的PROTEUS仿真,发现先开始有PWM输出,后面就没了,怎么回事? ...

补充,atmega8的pwm产生,需要寄存器设置正确,然后对应的引脚设置为输出。setpwm()这个函数中引脚设为输入。所以重新修改pwm值后,没有真正的输出。但是进入中断后,就有了。所以连上的电机可以工作。

出0入0汤圆

发表于 2014-8-12 21:54:50 来自手机 | 显示全部楼层
jxglg 发表于 2014-8-12 13:37
补充,atmega8的pwm产生,需要寄存器设置正确,然后对应的引脚设置为输出。setpwm()这个函数中引脚设为 ...

原来有三个按键,我摁了几下,看到PWM波了,不错。估计先开始的PWM波是启动代码输出的,后面的PWM波输出需要换相事件触发,不知道我理解得对不对

出0入0汤圆

发表于 2014-8-13 20:20:07 | 显示全部楼层
MARK一下

出0入0汤圆

发表于 2014-8-13 20:21:19 | 显示全部楼层
楼主的MK电调源程序能发我一份吗?扣扣1534694885,我也做云台控制,也需要找点无刷电机的资料看看,麻烦楼主了!

出0入0汤圆

 楼主| 发表于 2014-8-14 13:29:32 | 显示全部楼层
kingway00 发表于 2014-8-12 21:54
原来有三个按键,我摁了几下,看到PWM波了,不错。估计先开始的PWM波是启动代码输出的,后面的PWM波输出 ...

是的呵呵...,

出0入0汤圆

 楼主| 发表于 2014-8-14 13:31:23 | 显示全部楼层
Zhang_Peike 发表于 2014-8-13 20:21
楼主的MK电调源程序能发我一份吗?扣扣1534694885,我也做云台控制,也需要找点无刷电机的资料看看,麻烦楼 ...

晚上qq邮箱发给你。

出0入399汤圆

发表于 2014-8-14 13:44:57 | 显示全部楼层
我当初用的直插mega8改得,我印象中主程序中只需要改几句就可以转了。

出0入399汤圆

发表于 2014-8-14 13:54:16 | 显示全部楼层
protues中原理图也有错误,上管用的三极管射随驱动也是错误。楼主还是把原理图传上来吧,别一推错误自己都不知道。

出0入399汤圆

发表于 2014-8-14 13:55:06 | 显示全部楼层
还有protues中是有BLDC电机的。

出0入0汤圆

发表于 2014-8-14 15:14:41 | 显示全部楼层
jxglg 发表于 2014-8-14 13:31
晚上qq邮箱发给你。

好的,谢谢楼主1!!!!

出0入0汤圆

 楼主| 发表于 2014-8-14 20:03:59 | 显示全部楼层
R88 发表于 2014-8-14 13:54
protues中原理图也有错误,上管用的三极管射随驱动也是错误。楼主还是把原理图传上来吧,别一推错误自己都 ...

哦,有这个电机吗?我当时找了,没有找到合适的。三极管驱动部分是有错误的,这里本是用三极管驱动莫氏管的,电压也不是5V,而是11.1V,这里进行了简化。其实这部分可以不要,主要是用来观看程序运行时的时序的。之所以用protues仿真,是因为程序在不成熟的情况下,在硬件上跑,很容易烧,我之前就烧过,最好在Protues中跑得差不多了,再上硬件,这样好一点。
protues中BLDC电机我看了一下,没有看懂,一共有8个引脚,你可以把这个原理图改改,使之适合这个程序,然后发上来供大家学习与使用。不好意思呀,protues图不严谨就发上来,给大家带来困扰,不过电机驱动程序是没有大问题的,我的电机可以正常运转。

我这里把mk的图截一个来。

与这图最大不同就是反馈引脚 0 1 2 ,正好对应改为 2 1 0,就对了。另外不同就在于三极管驱动这一块,但这与程序没有关系了。这里用一个三极管驱动莫氏管,个人感觉不太好,因为莫氏管G极需要20V左右内阻才比较小,不然发热太大。而这里明显是做不到的。
我手头的板子,与protues不同的。已经焊过好几块了,而且驱动过几款不同品牌的电机,没有发现任何问题。

“我印象中主程序中只需要改几句就可以转了” 这句话是对的。我个人感觉原程序加入了很多保护、版本判断,还有通讯方面的程序。这使时学习时把大量时间花在这上面,没必要。我觉得核心就是电机驱动的程序,然后其他的加上去就不难了,不是吗。这是我发这个程序的目的。哈哈。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入399汤圆

发表于 2014-8-15 12:03:22 | 显示全部楼层
jxglg 发表于 2014-8-14 20:03
哦,有这个电机吗?我当时找了,没有找到合适的。三极管驱动部分是有错误的,这里本是用三极管驱动莫氏管 ...

有的,三根相线三根霍尔,这东西主要练的就是程序,硬件随变焊焊就行,成品时在搭mos的驱动即可,Vgs一般12V以上就可以了,在大没必要,像你说20V有点过了,如果布线不好,一个振铃mos就穿了。
我就是按照原图焊的,要是在焊个推挽之累的不累死了。

出0入0汤圆

 楼主| 发表于 2014-8-17 23:18:27 | 显示全部楼层
R88 发表于 2014-8-15 12:03
有的,三根相线三根霍尔,这东西主要练的就是程序,硬件随变焊焊就行,成品时在搭mos的驱动即可,Vgs一般 ...

protues中的bldc你有用过吗?我试过了,没有成功,网上关于这个的资料比较少,我不知道怎么用。帮忙作一个可以完全模拟电调的图吧,这样就完整了。

出0入399汤圆

发表于 2014-8-18 08:09:54 | 显示全部楼层
jxglg 发表于 2014-8-17 23:18
protues中的bldc你有用过吗?我试过了,没有成功,网上关于这个的资料比较少,我不知道怎么用。帮忙作一 ...

用过,我记得论坛里面有个人传了一个protues的仿真图,用的就是bldc,你自己找找吧,他那个是完全按照mk的原理图搭的。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-23 12:29

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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