搜索
bottom↓
12
返回列表 发新帖
楼主: lcw_swust

[LCW_DIY]FOC电调学习板

  [复制链接]

出0入0汤圆

发表于 2018-10-22 21:08:28 | 显示全部楼层
lcw_swust 发表于 2018-10-22 20:12
谢了,我最近空闲时间较充足,还是喜欢自己画板。
我还在用protel99se。

17年protel99se和AD混用,protel的PCB配色最舒服。pads的原理图太难看,但封装做好了,很好就能作出bom表也是这点就不想用protel

出0入0汤圆

发表于 2018-10-25 22:44:05 来自手机 | 显示全部楼层
给楼主点赞

出0入0汤圆

发表于 2018-10-26 15:06:17 | 显示全部楼层
楼主现在弄的怎么样了,坐等大神更新

出0入0汤圆

 楼主| 发表于 2018-10-26 15:14:22 | 显示全部楼层
本帖最后由 lcw_swust 于 2018-10-26 15:16 编辑
wangjianwen 发表于 2018-10-26 15:06
楼主现在弄的怎么样了,坐等大神更新


一边等第二版PCB打样,一边测试桨叶,
转速高了之后桨叶的噪声会很大,任重而道远啊。
难道要用大疆MAVIC的降噪螺旋桨?

出0入0汤圆

发表于 2018-10-26 23:13:03 | 显示全部楼层
MARK + 顶,正在yiying就看到楼主放料了。

出0入0汤圆

发表于 2018-10-27 07:53:50 | 显示全部楼层
lcw_swust 发表于 2018-10-26 15:14
一边等第二版PCB打样,一边测试桨叶,
转速高了之后桨叶的噪声会很大,任重而道远啊。
难道要用大疆MAVIC ...

大神必须换好的,不然被发现了就不好了

出0入0汤圆

发表于 2018-11-2 13:40:56 | 显示全部楼层
lcw_swust 发表于 2018-10-26 15:14
一边等第二版PCB打样,一边测试桨叶,
转速高了之后桨叶的噪声会很大,任重而道远啊。
难道要用大疆MAVIC ...

楼主弄的怎么样了,一直关注中

出0入0汤圆

发表于 2018-11-2 13:52:07 | 显示全部楼层
楼主弄的怎么样了,一直关注中

出0入0汤圆

发表于 2018-11-2 14:16:34 | 显示全部楼层
厉害了。。。优秀DIYER!!!

出0入0汤圆

发表于 2018-11-2 15:19:02 | 显示全部楼层
点个赞,希望楼主再接再厉,不断前进!

出0入0汤圆

 楼主| 发表于 2018-11-2 15:50:01 | 显示全部楼层
wangjianwen 发表于 2018-11-2 13:40
楼主弄的怎么样了,一直关注中

最近在出差,等几天回去调试FOC1.1的电调,单电阻取样,全NMOS。
这是个比较长远的工程,慢慢折腾.....

出0入0汤圆

 楼主| 发表于 2018-11-2 15:50:21 | 显示全部楼层
霸气侧漏 发表于 2018-11-2 13:52
楼主弄的怎么样了,一直关注中

最近在出差,等几天回去调试FOC1.1的电调,单电阻取样,全NMOS。
这是个比较长远的工程,慢慢折腾.....

出0入0汤圆

发表于 2018-11-2 15:53:07 | 显示全部楼层
lcw_swust 发表于 2018-11-2 15:50
最近在出差,等几天回去调试FOC1.1的电调,单电阻取样,全NMOS。
这是个比较长远的工程,慢慢折腾..... ...

期待楼主的作品,还有那单纯的想法

出0入0汤圆

发表于 2018-11-2 17:10:40 | 显示全部楼层
lcw_swust 发表于 2018-11-2 15:50
最近在出差,等几天回去调试FOC1.1的电调,单电阻取样,全NMOS。
这是个比较长远的工程,慢慢折腾..... ...

持续关注中

出0入0汤圆

发表于 2018-11-2 18:26:26 来自手机 | 显示全部楼层
楼主的很多都是精品

出0入0汤圆

发表于 2018-11-2 21:28:25 | 显示全部楼层
谢谢前辈的奉献精神

出0入0汤圆

发表于 2018-11-4 09:07:13 | 显示全部楼层
咱功力没楼主深厚,说不出啥干货,就一个字:赞!

出0入0汤圆

发表于 2018-11-4 09:14:00 | 显示全部楼层
lcw_swust 发表于 2018-10-26 15:14
一边等第二版PCB打样,一边测试桨叶,
转速高了之后桨叶的噪声会很大,任重而道远啊。
难道要用大疆MAVIC ...


我有台DJI,试过,浆叶的确是主要噪音源。

出0入0汤圆

 楼主| 发表于 2018-11-4 09:25:52 | 显示全部楼层
XTXB 发表于 2018-11-4 09:14
我有台DJI,试过,浆叶的确是主要噪音源。

是啊,还有人说往桨叶上粘羽毛。

出0入0汤圆

发表于 2018-11-4 09:31:23 | 显示全部楼层
lcw_swust 发表于 2018-11-4 09:25
是啊,还有人说往桨叶上粘羽毛。


这个思路不错!要不咱改行去研究转基因猫头鹰,专给DJI供桨叶?

出0入0汤圆

发表于 2018-11-4 16:28:26 来自手机 | 显示全部楼层
lcw_swust 发表于 2018-11-2 15:50
最近在出差,等几天回去调试FOC1.1的电调,单电阻取样,全NMOS。
这是个比较长远的工程,慢慢折腾..... ...

求问LZ,单电阻采样怎么才能观测电角度呢

出0入0汤圆

 楼主| 发表于 2018-11-4 17:02:04 | 显示全部楼层
fnems 发表于 2018-11-4 16:28
求问LZ,单电阻采样怎么才能观测电角度呢

在AN1299文档中有说明
https://wenku.baidu.com/view/779650a2a6c30c2258019e28.html

本帖子中包含更多资源

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

x

出0入0汤圆

发表于 2018-11-4 17:29:05 来自手机 | 显示全部楼层
lcw_swust 发表于 2018-11-4 17:02
在AN1299文档中有说明
https://wenku.baidu.com/view/779650a2a6c30c2258019e28.html

看了下an1299,原来是在PWM每个周期的不同相位,采集到的是不同相线的电流。
多谢LZ指导!

最近我也想做个单节锂电池的紧凑电调测试板呢。看了LZ最初的开源方案,设计成支持六步法和foc的硬件。还好没有打样,这样看到单电阻采样,应该可以简化硬件了。

六步法的电流监控也是单电阻采样。我把上臂下臂都做成互补PWM驱动的,这样硬件上就一致了

出0入0汤圆

发表于 2018-11-9 11:01:16 | 显示全部楼层
这个目的好单纯。。。如果能不用螺旋桨噪音更小了

出0入0汤圆

 楼主| 发表于 2018-11-9 11:12:57 | 显示全部楼层
stm32_xiaocai 发表于 2018-11-9 11:01
这个目的好单纯。。。如果能不用螺旋桨噪音更小了

螺旋桨也有低噪音的,比如橡筋动力飞机,只是升力很小。
不用螺旋桨的话难道要用扑翼?或者氢气球之类的?以后可以考虑下这些方向。

出0入0汤圆

发表于 2018-11-9 11:32:58 | 显示全部楼层
FOC电调 mark 谢谢楼主

出0入0汤圆

发表于 2018-11-9 21:35:11 | 显示全部楼层
有目的就有原動力,大力支持一下。

出0入0汤圆

发表于 2018-11-10 16:46:36 | 显示全部楼层
FOC电调学习

出0入0汤圆

发表于 2018-11-10 23:53:28 | 显示全部楼层
MARK一下,好东西留名

出0入0汤圆

 楼主| 发表于 2018-11-13 13:43:57 | 显示全部楼层
各位,最近在调试1.1版,发现了之前的一些BUG:
FOC1.0的BUG:
1.GetRegAdc()里启动ADC前未清标志
  ADC_SoftwareStartConvCmd前应加一句: ADC_ClearFlag(ADC1,ADC_FLAG_EOC);
2.ADC初始化未设置时钟分频
  ADC_Conf()里应加一句: RCC_ADCCLKConfig(RCC_PCLK2_Div6);//64/6=10.67M
3.取得电机参数时,有可能AD采样提前与状态变化
  ad_p=0;//开始采集数据
  Mot_State=2;//取得电机参数       
  改为
  ad_p=0;
  while(ad_p<2);//用于同步AD采样
  ad_p=0;//开始采集数据
  Mot_State=2;//取得电机参数       
1.1版的链接:
https://www.amobbs.com/forum.php ... ;extra=#pid10484926

出0入0汤圆

发表于 2018-11-16 12:16:34 | 显示全部楼层
牛 管子有对管的,多方便  ST还有 带驱动的片子 多好,可以升级下

出0入0汤圆

 楼主| 发表于 2018-11-16 12:48:06 | 显示全部楼层
yufeistudio 发表于 2018-11-16 12:16
牛 管子有对管的,多方便  ST还有 带驱动的片子 多好,可以升级下

楼上就说了,升级到1.1版了。

出10入12汤圆

发表于 2018-11-16 13:39:19 | 显示全部楼层
非常好 mark!!!!!!

出0入0汤圆

发表于 2018-12-6 15:48:04 | 显示全部楼层

膜拜下  。学习ing.........

出0入0汤圆

发表于 2018-12-10 12:21:36 来自手机 | 显示全部楼层
大神,再来一个步进电机的

出0入0汤圆

 楼主| 发表于 2019-1-16 20:40:39 | 显示全部楼层
更新一下波形显示软件,原来的软件比较容易卡,现在这个能好点。

本帖子中包含更多资源

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

x

出0入0汤圆

发表于 2019-1-17 09:40:25 | 显示全部楼层
支持楼主开源分享!!

出0入0汤圆

发表于 2019-1-17 09:52:22 | 显示全部楼层
谢谢分享,跟着学习

出0入0汤圆

发表于 2019-2-12 16:06:00 | 显示全部楼层
感谢分享

出0入0汤圆

发表于 2019-2-12 16:43:44 | 显示全部楼层
保护怎么做的?没有用运放,采样怎么处理?

出0入0汤圆

 楼主| 发表于 2019-2-13 19:50:57 | 显示全部楼层
鸵鸟蝈蝈 发表于 2019-2-12 16:43
保护怎么做的?没有用运放,采样怎么处理?

保护暂未考虑,程序中可以加入过流保护。
因为取样电阻较大,所以没加运放,经电阻上拉后进ADC采样。

V1.1版有运放,可以去看看:
https://www.amobbs.com/thread-5702129-1-1.html

出0入0汤圆

发表于 2019-5-7 08:19:38 | 显示全部楼层
给楼主点赞,感谢分享!!!

出0入0汤圆

发表于 2019-5-7 08:56:03 | 显示全部楼层
谢谢技术资料           

出0入0汤圆

发表于 2019-5-7 21:47:35 | 显示全部楼层
学习了,好帖

出0入0汤圆

发表于 2019-9-5 13:41:29 | 显示全部楼层
lcw_swust 发表于 2018-10-19 14:23
没有啊,开环启动,不检测角度。
                        if(Mot_State==3)//启动
                        {

启动时可以考虑用电感计算方法,核心理论是:由于转子磁矢量的存在,导致转子在每一不同位置都可测得三相绕组的电感不一样,做一个表,每次查询即可得到转子的位置了

出0入0汤圆

 楼主| 发表于 2019-9-5 13:53:39 | 显示全部楼层
Fake-BBA 发表于 2019-9-5 13:41
启动时可以考虑用电感计算方法,核心理论是:由于转子磁矢量的存在,导致转子在每一不同位置都可测得三相 ...

嗯,等有空了研究下,比如高频注入什么的。

出0入0汤圆

发表于 2019-9-5 14:04:27 | 显示全部楼层
Fake-BBA 发表于 2019-9-5 13:41
启动时可以考虑用电感计算方法,核心理论是:由于转子磁矢量的存在,导致转子在每一不同位置都可测得三相 ...

详细说说看,怎么做

出0入0汤圆

发表于 2019-9-7 14:41:52 | 显示全部楼层
FOC驱动pmsm板,算法验证

出0入0汤圆

发表于 2019-9-9 09:16:21 | 显示全部楼层
你好,我对你FOC电调学习板有一个疑问(我没有实际运行过你的程序)。microchip对于滤波出来的两个反电势直接反tan得出角度,我猜是因为它的两个电动势是二轴坐标系的两个电动势,成90°的,但你用的是三相的反电动势,应该是120°的,你为什么也是直接atan得出theta呢,是我理解有误吗?

出0入0汤圆

 楼主| 发表于 2019-9-9 09:33:08 | 显示全部楼层
本帖最后由 lcw_swust 于 2019-9-9 09:39 编辑
Fake-BBA 发表于 2019-9-9 09:16
你好,我对你FOC电调学习板有一个疑问(我没有实际运行过你的程序)。microchip对于滤波出来的两个反电势直 ...


我的atan可不一样,是myatan,自己写的函数,查表(这表也是自己通过程序计算得到的)法实现两相相差120度波形的数据点得到角度;
这样的好处是省去了转换为90度的过程。
----------
补充一下,后来电路板改进了,请看下一帖的94楼:
https://www.amobbs.com/thread-5702129-1-1.html

出0入0汤圆

发表于 2019-9-9 10:12:28 | 显示全部楼层
lcw_swust 发表于 2019-9-9 09:33
我的atan可不一样,是myatan,自己写的函数,查表(这表也是自己通过程序计算得到的)法实现两相 ...

我没仔细看你的atan2。
第一次看microchip文档,差不多一个星期才搞懂它的原理,现在想看看自己实现的效果。
我是计算机专业的,只对数学模型和算法比较有兴趣,PCB方面不是很擅长,刚好看见你有现成的。
以前做四轴觉得三角函数很耗时,不知道标准库是不是用了麦克劳林级数做的,现在试下CORDIC算法,还请前辈多多指教,虚心想跟前辈学习下,哈哈。

出0入0汤圆

 楼主| 发表于 2019-9-9 10:15:57 | 显示全部楼层
Fake-BBA 发表于 2019-9-9 10:12
我没仔细看你的atan2。
第一次看microchip文档,差不多一个星期才搞懂它的原理,现在想看看自己实现的效 ...



标准库有一些是用到了浮点运算,所以可能慢些。
我这里把一个圆周只分为256点,所以用自己的算法就更快捷。

出0入0汤圆

发表于 2019-9-9 10:23:33 | 显示全部楼层
lcw_swust 发表于 2019-9-9 10:15
标准库有一些是用到了浮点运算,所以可能慢些。
我这里把一个圆周只分为256点,所以用自 ...

sinTab分成256这个我知道,我以前做家电的功率计也是用VS生成sin的整型表去查,虽然丢失的精度不足与实际误差比较,但我还是有一“心结”,CORDIC算法貌似不用查表,运算量较atan2标准库小,精度也可观,所以学习下。
我看见你做的东西和我兴趣上也差不多哈哈,我大二做的四轴,之后在学校两年帮校企做小家电,现在实习搞AI(让我有了想考研的想法)。

出0入0汤圆

发表于 2019-9-11 10:27:52 来自手机 | 显示全部楼层
顶起来,希望能早日看见零速启动

出0入0汤圆

发表于 2019-9-11 14:40:05 | 显示全部楼层
这个要长期关注啊

出0入0汤圆

发表于 2019-9-21 10:00:49 | 显示全部楼层
楼主,我有个小疑问,在检测电机参数时:

                else if(Mot_State==2)//固定的相电压,用于计算电机的相电感、相电阻参数
                {                                               
                        Vu=Mot_AMP;        //PWMA
                        Vv=-Mot_AMP/2;        //BBA:PWMB
                        Vw=0-Vu-Vv;        //PWMC
                       
                        TIM3->CCR2=Vu+128;//BBA:0.5V
                        TIM3->CCR3=Vv+128;//BBA:-0.025
                        TIM3->CCR4=Vw+128;/BBA:-0.025

Va=1V吧,电感计算时电压*2或者CCR2=Vu+128,CCR3=128,CCR4=128 这样比较准确?我试着将Mot_AMP*2,在电压固定时,我试过前者,速度会快一点,但电流也高一点
Mot_L=(U16)Mot_AMP*200/(adbuf[0][1]-adbuf[0][0]);//表示pwm=1时每周期的电流增量*100       
Mot_R=(U16)Mot_AMP*200/adbuf[0][ADCBUFSIZE-1];//表示PWM每变化1时电流的变化量*100       

本帖子中包含更多资源

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

x

出0入0汤圆

 楼主| 发表于 2019-9-21 11:19:30 | 显示全部楼层
Fake-BBA 发表于 2019-9-21 10:00
楼主,我有个小疑问,在检测电机参数时:

                else if(Mot_State==2)//固定的相电压,用于计算电机的相电感、 ...


这个我没看太懂,“Mot_AMP*2”是改的哪里?100改成了200?MOTFOC里估算电流时是否也把100改成了200?
其实计算的电感、电阻参数差一点也可以转的。

出0入0汤圆

发表于 2019-9-21 12:45:31 | 显示全部楼层
lcw_swust 发表于 2019-9-21 11:19
这个我没看太懂,“Mot_AMP*2”是改的哪里?100改成了200?MOTFOC里估算电流时是否也把100改成了200?
其 ...

只是将main开头的电感电阻估计时*2,即为Mot_L=(U16)Mot_AMP*200/(adbuf[0][1]-adbuf[0][0]);其它不改动。
        //指定相电压
        Mot_AMP=(7or5?*256/47);//需要0.5V,电源4.7V
按照你的逻辑应该是想在A相产生一个0.5V的压差,PWM应该是A=Mot_AMP+128;B=128;C=128;这样才是0.5V吧,还是我的理解有问题?

出0入0汤圆

 楼主| 发表于 2019-9-21 14:01:54 | 显示全部楼层
Fake-BBA 发表于 2019-9-21 12:45
只是将main开头的电感电阻估计时*2,即为Mot_L=(U16)Mot_AMP*200/(adbuf[0][1]-adbuf[0][0]);其它不改动 ...

哦,看来是你没想清楚。
来个简单的想一下,假如电机只有两相,当作两个阻值相等的电阻Ra\Rb串联,引出线只有两根A\B,
然后A端对地电压为1V,B端对地电压为0V,那么相电压为多少?
VRa=0.5V,VRb=-0.5V.
假如A端对地电压为2V,B端对地电压为1V,那么相电压为多少?
和上面一样的。

三相的情况也相似,当作三个电阻的星形接法,就像个Y形,
要注意相电压是以Y的中心点为参考的。

出0入0汤圆

发表于 2019-9-21 14:15:14 | 显示全部楼层
明白,是我糊涂了,看来还有很大的差距,日后要多多指教。
在microchip的文档,官方示意电感测法是通过电桥,楼主这个方法实在让我佩服,哈哈。

出0入0汤圆

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

本版积分规则

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

GMT+8, 2024-4-26 13:00

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

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