搜索
bottom↓
回复: 73

DIY MK 电调笔记

  [复制链接]

出0入0汤圆

发表于 2011-4-3 10:43:39 | 显示全部楼层 |阅读模式
潜水了那么久,总算觉得有点谱了,可以动手搭个洞洞板和谢谢程序了。发在这里觉得内容相关,并且如果不写下来的话,很快就会忘记曾经做过什么了,就当是DIY调试笔记好了。 偶菜鸟一个,基本上一切电调的只是都是来源ourdev和google, 在此特别感谢timegate,《无感无刷直流电机之电调设计全攻略》简直就是我的红宝书。好了,废话少说,开始调试笔记。

因为从来没用过avr,因此觉得还是买个现成的产品比较方便,找来找去,买了个Arduino mini pro, 5V/16MHz。本来想着挺好的,有编译环境,带了bootloader,应该挺方便的。结果恰恰相反,这个Arduino编译环境给我整了不少麻烦。

我的思路是基本上沿用MK V1.2硬件,0.41的软件的路子,用不同的MCU和功率管。想用的功率管还没到,简单的搭了一个能让硬盘电机转的板子,大约3A的能力,觉得暂时够调试用了。MCU用的是arduino mini pro 328,这个16MHz的ATmega328P甚是麻烦。首先是16MHz,所有涉及分频的部分都要改。另外这个328和mega8有大量的寄存器不同,代码基本上不能直接Ctrl+V。不过也好,知道每一行代码的功能。

今天主要熟悉了一下编译环境,尝试着写了一下timer0的设定,and using the overflow interrupt to achieve timed delay in millisecond range.

Some comments:
1.  TCCR0 register has been rearranged to TCCR0B register. The lower three digits reserve the functionality original TCCR0 register.
2. The keyword of timer0 overflow interrupt, SIG_OVERFLOW0, changes its name from SIG_OVERFLOW0 in WinAVR to TIMER0_OVF_vect.
3. However, there will be a conflict while compiling. I just backed up the "wiring.c" file and cleared the content of the file.
4. In original MK code, the MCU is running at 8MHz, prescaler is CLK/8. Then, 4 timer0 overflow is actually 1ms. In 16MHZ nmega328, just the timer0 prescaler of CLK/64 will have the 1ms overflow interval.
5. The "volatile" property is important to avoid possible faulty compiler optimization.

That's it,the timer seems working well...   
                          
2011.04.02

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

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

 楼主| 发表于 2011-4-3 12:15:50 | 显示全部楼层
又翻译了一下ADC的部分,照着攻略翻datasheet,总算有点明白avr怎么用的。刚才还搞短路了一下,电脑不认usb串口了,吓我一跳。。

mega8的SFIOR寄存器在mega328中分散到三个寄存器中实现同样的功能,分别是GTCCR, ADCSRB,MCUCR。
剩下除了分频不一样,其他的就基本上一样了,现在还没搞清楚shunt的电阻是多大,不知道为什么MK电调要把ADC测出来值乘以4,并且最大值定为200. 此外mega8的2.56V的参考电压变成了mega328的1.1V参考电压,不知道实际上测出来的shunt上电压有多少,是不是要改倍数和最大值,,ADC先放在这里,明天找个变阻器或者DAC测测。睡觉喽。。。

出0入4汤圆

发表于 2011-4-3 12:22:05 | 显示全部楼层
《无感无刷直流电机之电调设计全攻略》
这个写得很好,很透彻


德国的源程序写得也很好,把M8发挥到了极致
楼主既然都愿意从根本上弄起了。为何不直接用GCC或者ICC呢  可能研究效率会更高

出0入0汤圆

 楼主| 发表于 2011-4-3 21:39:43 | 显示全部楼层
回复【2楼】vermon  
-----------------------------------------------------------------------
恩,攻略真的写的巨好,非常透彻。xxd电机绕组分析,功率mosfet驱动,还有软件部分,每个理解都很深刻。我很长时间没碰模电了,看到驱动那一部分,想起来好些n年前的书本上的知识。。。。

编译器么,按照我的理解,如果直接在c中照着datasheet操纵寄存器的话,最后生成的汇编基本上都差不多。不同的编译器之间只是有汇编优化成都不同的。mega328和mega8的寄存器很多都改了,直接上源程序搞不定的。另外Arduino的IDE实际上就是某个c编译器包了一个java写的壳,所以我觉得差不多,有GUI还是用着比命令行舒服,并且我也没有下载线,现在暂时用arduino的bootloader从串口下载。等等程序写的差不多了,再用mbed搭个SPI的下载线吧。

出0入0汤圆

 楼主| 发表于 2011-4-3 21:46:11 | 显示全部楼层
发现了一个问题,我再前面写到timer0计时的时候,原来mk电调程序是8M分8频,因此timer0自加一次是1us。我在前面写的时候用的是16M 64分频,直接用timer0的溢出计算1ms。但是这样的64分频之后,timer0自加一次就是4ms了,分辨率降低了。

幸运的是,源代码中只有一行wait(100) 的调用,正好是4的整数倍,timer0的25次自加就是了

谁知道行不行呢,到时候看看再说。

出0入0汤圆

 楼主| 发表于 2011-4-3 22:37:57 | 显示全部楼层

MK电调2.0版本的上臂PWM输出电路图 (原文件名:MK_BL_CTL_SCH.jpg)

这个截图的部分是V1.2电路图中没有的。原来的三个上臂输出使用OC1A, OC1B, OC2直接输出的,没有这几个互联电阻。德国电调没给2.0的源代码,不过从工作的延续性来说,大改的可能行不大。最大的改动可能就是从mega8换成了mega168,我觉得我把2.0的程序直接写到mega328的里面去应该可以干活。。。跑题了。。。

我没那个精力去反汇编,这里猜测一下这几个电阻的用处和2.0电调上臂PWM的驱动方式。 仅仅猜测,欢迎讨论。。

2.0的电调很可能只用了timer1和comparator channel A作为PWM生成,因为没有必要在三个上臂给予不同的PWM频率和占空比。既然三相pwm相同,就没有必要动用两个计数器进行PWM生成工作。在PB1(OC1A)事实上输出PWM信号,由于管脚大约有20ma的电流能力,因此选配一个5k的电阻到32,14,15端口是不超过端口电流能力的。5k是我随便说的一个数。。。电路图上没给电阻值。

然后在上臂PWM关闭的时候,只要吧32,14,15管脚生定为输出0,那么pwm的信号就接地了,上臂自然就关掉了。
如果pwm开启的时候,只要把32,14,15管脚设定为输入,这样管脚呈现高阻态,就相当于OC1A信号通过电阻直接驱动上臂MOS。顺便说一下,在2.0电路图中,上臂mos驱动部分用了两个NPN管,实际上的成品用了一个NPN和一个小n-mosfet作为驱动,这样的话,对PWM输出管脚OC1A几乎没有电流压力,这样就有同时开启三个上臂mos的能力。

我觉得好处是省下一个计数器,同时更新pwm值的时候只用更新一个地方的寄存器就行了,程序执行更流畅

仅仅是猜测。。。

出0入0汤圆

发表于 2011-4-4 08:02:05 | 显示全部楼层
感觉电调是不是可以用CPLD做?增加了系统的实时性,虽然它不带DA,但是从性能角度,很值。

出0入0汤圆

 楼主| 发表于 2011-4-4 11:16:30 | 显示全部楼层
PWM产生部分:

1. mega8 只有timer1/2有比较器,可以产生PWM信号。在mega328中所有的计数器都可以产生两路pwm信号。这样的话,实际上寄存器更加对称,相对而言更加方便操作。
2. 我在程序中使用了相同的分频,因此PWM是32k的,而不是16k的。

明天找个示波器看看产生的pwm对不对。我现在对我操作mega328寄存器的能力有所怀疑。。。

出0入0汤圆

 楼主| 发表于 2011-4-5 11:42:01 | 显示全部楼层
今天花了些时间继续做这件事情,由于写到了中断换向的地方,觉得有点复杂,出错的可能行比较高,就像找个方法安全的测试一下。提到安全,呵呵,前几天搭那个mos驱动电路搭到一半的时候一高兴把电源接上了,然后10秒钟之内就闻到了一种味道,吓了一跳,赶快把电源拔了。之后想看看那个管子热,就用手指逐个去摸,结果烫了个水泡。。。。安全第一,安全第一。。。

做了个换向模拟器,三个变阻器模拟三相电压,用另外一个变阻器模拟中点电压,用七段数码管的上半三个作为high-side指示,下面的三个管作为low-side 指示。如图就是AB相导通时候的情形。然后按照换相的规则逐一的调整三相的变阻器来模拟过零换相。同时也能测测PWM的输出是不是正确。图上额的上面管子亮度比下面的管子低就是因为20%占空比的愿因。

这段麻烦的地方是PWM,因为使用arduino的IDE,结果很多初始化工作被隐藏起来了,看不到,结果示波器一看PWM的波形,才发现生成的PWM才500Hz。。。。 折腾了好半天才发现要把wiring.c这个文件注释掉,才正确输出32k的pwm。

明天看看启动算法,在“模拟器”上慢速的跑跑看,正确了再输出到mos上,接上电机试试,

得小心点,被烫怕了。。


换相模拟器 (原文件名:04042011066.jpg)


在测试中的换相模拟器,图中显示的是AB相导通情况 (原文件名:04042011067.jpg)

出0入0汤圆

 楼主| 发表于 2011-4-7 11:45:09 | 显示全部楼层
昨天忙着干活,没什么时间,今天晚上写了一下启动算法,在上面的那个模拟器上跑了一下,并且把timer0的时钟调慢16倍,这样的话就可以确认换相时序是否正确。 最后接到半桥输出到电机,在准备了这么久之后,终于看到电机转起来了, 虽然没还没实现闭环运行,但是这个结果已经比较encouraging了,哈哈,,

出0入0汤圆

 楼主| 发表于 2011-4-8 13:06:26 | 显示全部楼层
哇哈哈,我的实验电调能闭环了,实际上前几天用那个模拟器测试的时候就已经具备闭环运行的条件了,只是当时要用手拨一下才能自主运行。昨天晚上整了整启动函数,今天搞了下mos自检,觉得用模拟器没法听到自检的音效。因此就把电机装上,试了一下,手拨可以闭环,之后调了一下程序,加上了启动函数,实现了启动和闭环,只是如果启动失败还得手动复位才能再来一次。这个在下面的视频中可以看到,第二次启动就失败了。。。

anyway,很高兴,折腾了一个星期,总算可以闭环了,哈哈

视频中0.5秒调整一次PWM,因此能听到转速不同

不知道怎么嵌入视频,只能放链接了

http://v.youku.com/v_show/id_XMjU3MTQ4MTcy.html

出0入0汤圆

 楼主| 发表于 2011-6-28 04:59:53 | 显示全部楼层
回复【6楼】asha  
-----------------------------------------------------------------------

按照我的理解,电调的算法并不复杂,并且转速相对于现代芯片的运行频率是很慢的,然而对处理器的中断处理部分要求很高, 用PLA/FPGA实现要有很多的代码专门处理这些事件,从开发角度不是特别实惠。

当然,对于电调这个应用,CLPD肯定可行的,就是成本有点高,毕竟AVR系列挺便宜的。

出0入0汤圆

发表于 2011-6-28 18:24:04 | 显示全部楼层
留个名,改天再慢慢研究.

出0入0汤圆

 楼主| 发表于 2011-7-2 01:58:43 | 显示全部楼层
最近花了好多时间学习使用eagle PCB,PCB现在也话的看起来顺眼多了,头一次画板,鬼知道能整成什么样,

昨天找了个有坐标的台钻,钻了一块小PCB,试试做双面板的话钻孔的精度够不够,结果发现差的还是有点的,因此吧通孔附近的铜皮多留了一些,希望这样能行。


eagle PCB中做的电调版 (原文件名:Untitled.jpg)

出0入0汤圆

 楼主| 发表于 2011-7-4 09:37:29 | 显示全部楼层
看来现在做四轴技术的人已经不多了。。。已经是成熟技术了。。。
anyway,继续我的电调笔记。
基本上画完了电调的PCB,今天发现两个错误,修正了一下。
准备焊上M8之后直接吧ardunio的bootloader写进去,这样之后可以直接用ardunio的编译器和usb/串口直接对电调编程。
电路图两张,PCB正反各一张

MCU部分 (原文件名:P1.jpg)


三个半桥功率管及其驱动部分 (原文件名:P2.png)


PCB 背面功率管部分(原文件名:P3.png)

pcb正面,M8,mos管驱动等等 (原文件名:P4.jpg)

出0入0汤圆

发表于 2011-7-4 18:58:27 | 显示全部楼层
好东东,顶一个.

出0入0汤圆

发表于 2011-7-5 01:35:19 | 显示全部楼层
精神可嘉!

出0入0汤圆

 楼主| 发表于 2011-7-5 12:51:17 | 显示全部楼层
今天晚上试验了一下干膜的用法,发现干膜对曝光时间很不敏感,实验了两片,一片35分钟,一片20分钟,都得到了不错的效果。

试验用的是不锈钢片,打算做个钢网,好给背面的贴片mosfet上锡膏。试验成功了5成,到了刻蚀的时候,不锈钢实在是太难刻蚀了,整了好长时间也没搞定,虽然有小窟窿出现,但是刻蚀基本失败。唾沫的时候更是一塌糊涂,NaOH溶液对干膜基本上无效,最后还是用刀片用机械方式除掉了。

明天算算需要多少刻蚀剂再试一次。嘿嘿

出0入0汤圆

发表于 2011-7-5 18:34:57 | 显示全部楼层
德国人的程序要加滤波电容,电流较大,转速不能太高,高了电流大,MOS发热

出0入0汤圆

发表于 2011-7-5 20:13:54 | 显示全部楼层
回复【17楼】Anteater  
今天晚上试验了一下干膜的用法,发现干膜对曝光时间很不敏感,实验了两片,一片35分钟,一片20分钟,都得到了不错的效果。
试验用的是不锈钢片,打算做个钢网,好给背面的贴片mosfet上锡膏。试验成功了5成,到了刻蚀的时候,不锈钢实在是太难刻蚀了,整了好长时间也没搞定,虽然有小窟窿出现,但是刻蚀基本失败。唾沫的时候更是一塌糊涂,naoh溶液对干膜基本上无效,最后还是用刀片用机械方式除掉了。
明天算算需要多少刻蚀剂再试一次。嘿嘿
-----------------------------------------------------------------------

楼主,程序和eagle画等sch/pcb都发出来大家研究研究嘛,我也玩arduino

出0入0汤圆

 楼主| 发表于 2011-7-7 01:34:36 | 显示全部楼层
回复【18楼】qxj_2011  

德国人的程序要加滤波电容,电流较大,转速不能太高,高了电流大,MOS发热

-----------------------------------------------------------------------
程序和发热有什么直接联系呢? 只要不是上下臂同时打开,应该没有和程序直接向光的了吧。剩下的就是管子驱动和功率输出级的事情了,

发热和管子内阻还有自激相关,最直接的还是内阻。

不知道楼上说的用滤波电容解决德国人程序中的发热问题具体怎么理解?

出0入0汤圆

 楼主| 发表于 2011-7-7 01:37:52 | 显示全部楼层
昨天又试了试做钢网,基本上成功,只不过钢网刻反了。。。。还是能用,先试试看,不行的话就再做一次。

显影之后的钢网 (原文件名:05072011108.jpg)


腐蚀之后的钢网 (原文件名:06072011109.jpg)

出0入0汤圆

 楼主| 发表于 2011-7-7 01:39:39 | 显示全部楼层
回复【19楼】54anson  小a
-----------------------------------------------------------------------

版图实在是画的乱七八糟,不好拿出手,电路图还称,虽然也不好看。。。

等我简单试一下电路图上有没有错误在放电路图上来。

出0入0汤圆

 楼主| 发表于 2011-7-8 21:47:41 | 显示全部楼层
今天重新试了试干膜,昨天试的时候正面过暴了,有太多的短线,没办法,今天又重新做了一次,但是背面还是过暴了,可以看到线条比正面的细很多,庆幸的是没有断线,但是正面有一个地方膜没有贴紧,造成了一处短线和一处线宽不足,用焊锡做了一点修补,如图所示。


PCB正面 (原文件名:j1.jpg)


PCB背面 (原文件名:j2.jpg)


背面钢网 (原文件名:j3.jpg)


背面钢网对准 (原文件名:J4.jpg)


断线处的修补 (原文件名:J5.jpg)

出0入0汤圆

 楼主| 发表于 2011-7-22 07:43:11 | 显示全部楼层
隔了好多天了, 昨天晚上刚刚吧arduino写到自己做的板子上面,现在直接可以usb串口在板上编程了。

出0入0汤圆

发表于 2011-7-22 10:26:23 | 显示全部楼层
能转起来,跟转的好,那距离相当大,德国的程序只是解决了转起来问题,转的好,还有距离

出0入0汤圆

发表于 2011-7-22 11:02:13 | 显示全部楼层
牛,自己做板

自从知道PCB打样只要百来块钱,就再也没想过自己腐蚀,虽然家里有一大瓶三氯化铁

出0入0汤圆

 楼主| 发表于 2011-7-23 10:15:51 | 显示全部楼层
一步步来么,先站起来,再走,偶一业余人士,先不要求那么高了,转起来再说


回复【25楼】radiofcx  
-----------------------------------------------------------------------

能转起来,跟转的好,那距离相当大,德国的程序只是解决了转起来问题,转的好,还有距离

出0入0汤圆

 楼主| 发表于 2011-7-23 10:25:51 | 显示全部楼层
实际上我也不想自己做,如果能用百来块钱打个样我肯定不做。问题是便宜的不发国际邮件,能发得又不便宜,算下来外面打一次样估计够我自己打20块板了。。。

我画板错误太多,自己做是没办法的办法,省钱阿,现在物价这贵,愁

实际上还好了,现在做一块板用不了很久,单块差不多三个小时,同时几块还没做过,不知到

麻烦的就是machine shop晚上不开门,早上开门我又起不来,因此引起钻孔磨边有点麻烦,其他的还好了,没啥, 和在cleanroom做IC一样


回复【26楼】feng_matrix  悟
-----------------------------------------------------------------------

牛,自己做板

自从知道PCB打样只要百来块钱,就再也没想过自己腐蚀,虽然家里有一大瓶三氯化铁

出0入0汤圆

 楼主| 发表于 2011-7-23 10:38:21 | 显示全部楼层
我觉得我挺缺乏毅力的,把新鲜的事情做完了,就失去兴趣了。
最开始不知到怎么让BLDC转起来,买了个Arduino mini pro,洞洞板上焊了个功率输出级,鼓捣了一周,把硬盘电机转起来了
然后不知到怎么画板做板,折腾了一个月,板也不出来了,
之后不知到怎么把arduino's boot loader写到自己的板子上,又折腾了一晚上,整进去了,自己做出来的板和arduino模块一样用了

然后,然后,觉得BLDC没那么神秘了,实现的基本难题已经解决了或者知道怎么解决了,就没兴趣了。。。。这不,好几天都不愿意看了,

可能预计中剩下的电调的事情就剩下30度换向的事情。我小改了下电路,空出一个16bit计数器,这样延迟换向成为可能,剩下的就没啥了,

鬼知道我什么时候能把这玩艺真正做出来,带着桨测测电流,响应,发热什么的,也许到了那个阶段才发现了某个根本错误,或者这个东西就是一个杯具。。谁知道呢。

等偶歇歇的,啥时候天凉快了,再次聚集点兴趣了,再开始整程序。

嘿嘿

(今天38度,楼里面说空调不堪重负,被迫升温。。。。)

出0入0汤圆

 楼主| 发表于 2011-8-2 07:03:08 | 显示全部楼层
电调出声了,视频见:

http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4928586&bbs_page_no=1&bbs_id=1025

出0入0汤圆

发表于 2011-8-2 08:08:05 | 显示全部楼层
不错

出0入0汤圆

发表于 2011-8-2 14:54:25 | 显示全部楼层
留名 关注

出0入0汤圆

 楼主| 发表于 2011-8-3 00:29:05 | 显示全部楼层
今天复查程序,又算了一遍那个过零检测的分压电路。 为了不再次做重复的工作,特地吧结果放上来存档,下次来看就行了


过零分压电路的电压计算 (原文件名:过零检测电路计算.jpg)

出0入0汤圆

 楼主| 发表于 2011-8-4 01:18:36 | 显示全部楼层
昨天晚上电调闭环了,同时发现在自检的时候程序报A+,B+,C+管损坏。根据楼上的电阻网络计算,在PhaseA和phaseB接地,PhaseC接12V的时候,短租网络C点的输出电压应该是4.667V,因此从adc 通道2出来的数值应该不小于921. 但是实测值之后~80.
今天拿spice算了一下这个阻容网络,在有电容的情况下,29us的充电时间实际上远达不到平衡态的4.667V,实际上最大之后0.7V左右,如果考虑上其他的杂散电容,还有ADC的充电电容,可能就小于这个值了。在考虑到ADC的转换时间不一定是在开启周期的最后,因此理论最大值还是小于0.7V。 综上所述,~0.4V的ADC输出是可以理解的。

图中的是spice的模拟结构和结果



过零检测电路 (原文件名:Voltage divider.jpg)


模拟结果 (原文件名:Simulation.jpg)

出0入0汤圆

 楼主| 发表于 2011-8-4 01:26:58 | 显示全部楼层
闭环之后测试了一下相应,或许还可以吧,下图是一个统计的转速和PWM的拟合图

空转转速和PWM的曲线 (原文件名:Graph1.jpg)

计算下来,在PWM=255的时候大约是14100RPM,因此大约KV1200,比标称的KV1100稍微高了点,可能在高PWM的时候,电机的转速和PWM有非线性,因为夜深人静,没感大油门测试。。。电流么,因为管子内阻大,昨天测到的最大电流不过0.6A -_-!!

出0入0汤圆

发表于 2011-8-4 17:54:41 | 显示全部楼层
回复【楼主位】Anteater  
-----------------------------------------------------------------------

楼主能不能解释下mk电调mega8上两个I2C是怎么回事呢?是不是两个I2C的地址不同呢,希望楼主不吝赐教!

出0入0汤圆

 楼主| 发表于 2011-8-6 09:20:28 | 显示全部楼层
实际上我没看懂那个两个IIC,我觉得只用了一个,从代码中没看到用GPIO模拟IIC的地方。并且,M8只有一个IIC接口。

出0入0汤圆

 楼主| 发表于 2011-8-6 09:42:12 | 显示全部楼层
今天尝试使用16位计时器timer1进行换相的延迟工作。作为开始,写了一小段程序在ardunio mini pro板子上的LED跑了一下,发现结果完全不可控,就是和datasheet上说的完全没有关联。譬如说,16M的晶振不分频,16位计时器,那么计时器溢出频率就是2^24/2^16 = 2^8 = 256Hz, 但是Arduino输出15.75kHz,在TCCR2B = 0 的情况下,理论上计时器是关闭的,但是输出22.36Hz,在8分频的情况下,输出1.9KHz,64分频下是250Hz,256分频是80hz,1024分频下是37.62Hz。直到我把wiring.c整个注释掉之后才可控。。。 damn arduino compiler。。。。

出0入0汤圆

发表于 2011-8-6 16:54:27 | 显示全部楼层
楼主的笔记写的很好,而且楼主看来对电路和程序都有学过。
我也是用ARDUINO的平台的。
但我现在只是用他们的上传功能。
在平台上我都是直接用C语言写,写完了编译上传。已经完全放弃了ARDUINO的语言。
因为我发现里面不可用的东西太多了。而且我搞不定。所以只能转到C语言了。不过也是一样用的。

我不懂电路,对单片机也是从零开始。所以走了不少弯路。
现在我也正在转向MK的电路,因为原来搞的全N管,不知道为什么有问题总是解决不了。

以后有问题还希望能多多交流

出0入0汤圆

发表于 2011-8-8 15:33:51 | 显示全部楼层
回复【37楼】zhengfengran  
-----------------------------------------------------------------------

谢谢了,我也是搞不明白这两个IIc是怎么回事。

出0入0汤圆

 楼主| 发表于 2011-8-9 08:59:28 | 显示全部楼层
回复【41楼】vague2010  
-----------------------------------------------------------------------

实际上我就是懒,当时还有嫌编程器贵。实际上发现avr的编程器简直是最简单不过的了。。。

Arduino概念不错,相当于写了个硬件驱动,把硬件层封装起来了。但是作为电机控制这种需要使用底层寄存器的工作,arduino平台做不来的,不停的调用函数这个时间上就受不了。

出0入0汤圆

 楼主| 发表于 2011-10-5 11:31:49 | 显示全部楼层
这个project停了挺长时间了,主要是觉得eagle PCB这个软件有点初级,正在学习cadence的用法,发现功能与复杂程度成指数关系,过段时间觉得用的成熟了,就试下用ti的cortex-m3 做做FOC的电机控制。初步打算是LM3S8970(cortex-m3 @ 60Mhz), DRV8301 (3 phase driver), 全Nmos半桥,使用两个current shunt进行反馈控制。希望在两层板上搞定。

出0入0汤圆

发表于 2011-12-5 11:33:42 | 显示全部楼层
这个很受用

出0入0汤圆

发表于 2011-12-15 18:01:45 | 显示全部楼层
Lz 有程序传来看看吧!

出0入0汤圆

发表于 2011-12-19 17:56:14 | 显示全部楼层
MK的V0.41需要配电机的吗

出0入0汤圆

发表于 2011-12-24 18:14:38 | 显示全部楼层
mark

出0入0汤圆

发表于 2012-1-1 16:27:03 | 显示全部楼层
看看

出0入0汤圆

发表于 2012-1-15 13:21:05 | 显示全部楼层
lz能不能贴出mos驱动电路,我主要想看看lz的三极管和二极管选型

出0入0汤圆

发表于 2012-1-17 16:27:46 | 显示全部楼层
回复【楼主位】Anteater
-----------------------------------------------------------------------

mark

出0入0汤圆

 楼主| 发表于 2012-1-30 08:28:21 | 显示全部楼层
回复【48楼】zcp17521  MK的V0.41需要配电机的吗?

不是很理解这个问题,电调达到闭环之后和电机特性相关有限,主要是处理退磁的时间问题,启动的话和电机有关,实际上和负载更有关,因此在大负载环境下,例如说电动车的应用上,全都是有感无刷。

出0入0汤圆

 楼主| 发表于 2012-1-30 08:33:08 | 显示全部楼层
回复【51楼】banjiaoshi  lz能不能贴出mos驱动电路,我主要想看看lz的三极管和二极管选型
-----------------------------------------------------------------------

用的是dual channel low-side mosfet driver, 其中一个接pmos,我懒,  实在不想搞BJT和diode选型。。

出0入0汤圆

 楼主| 发表于 2012-1-30 08:36:52 | 显示全部楼层
现在开始整FOC控制了,刚刚开始搞理论,贴几张刚想通的理论部分。。。

(原文件名:SVPWM_Page_4.jpg)


(原文件名:SVPWM_Page_5.jpg)


(原文件名:SVPWM_Page_6.jpg)

出0入0汤圆

发表于 2012-5-23 21:32:56 | 显示全部楼层
我也要开始DIY了  学习学习

出0入0汤圆

发表于 2012-6-8 00:01:23 | 显示全部楼层
mark下,细看

出0入0汤圆

发表于 2012-6-11 20:52:13 | 显示全部楼层
mark!以后会用到的!准备入魔了!呵呵

出0入0汤圆

发表于 2012-6-22 22:06:25 | 显示全部楼层
学习中,mark

出0入0汤圆

发表于 2013-6-1 16:35:16 | 显示全部楼层
mark  DIY MK 电调笔记

出0入0汤圆

发表于 2013-6-4 07:12:10 | 显示全部楼层
顶!!!!!!!!!!!

出0入0汤圆

发表于 2013-6-4 11:59:38 | 显示全部楼层
留住把你的原理图和pcb共享一下呀!!!!!!!!!

出0入0汤圆

发表于 2013-6-27 22:51:11 | 显示全部楼层
留下关注。。。。。。

出0入0汤圆

发表于 2013-10-23 10:43:55 | 显示全部楼层
试问老兄,换相模拟器有卖吗?网上?

出0入0汤圆

发表于 2014-4-30 11:56:27 | 显示全部楼层
mark一下,留着学习

出0入0汤圆

发表于 2014-7-9 13:08:52 | 显示全部楼层
Anteater 发表于 2011-8-6 09:20
实际上我没看懂那个两个IIC,我觉得只用了一个,从代码中没看到用GPIO模拟IIC的地方。并且,M8只有一个IIC ...

其实只是引脚同名而已,ISP模式下就是miso sck    i2c模式下是sda scl  我的理解下不是两个I2C只有一个。。

出0入0汤圆

发表于 2014-8-13 15:40:25 | 显示全部楼层
已MARK!  好帖!

出0入0汤圆

发表于 2014-8-26 16:58:16 | 显示全部楼层
楼主真的好用心,给楼主点个赞~

出0入0汤圆

发表于 2014-11-15 09:04:07 | 显示全部楼层

出0入0汤圆

发表于 2014-11-15 09:06:48 | 显示全部楼层
多谢分享。

出0入0汤圆

发表于 2015-7-3 15:30:37 | 显示全部楼层
foc很高深的样子,记住了,谢谢

出0入0汤圆

发表于 2016-4-11 09:35:20 | 显示全部楼层
看看 正好也在DIY电调

出0入0汤圆

发表于 2016-4-12 11:47:49 | 显示全部楼层
mark
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-24 05:00

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

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