【电机控制】无感FOC的关键---状态观测器

       已经有快两个月没有写博客了,哎,研发过程极其艰难啊,在做了有霍尔BLDC的FOC程序之后,由于没有购买负载,而且公司最终的目标电机是无感BLDC,因此我决定先放弃调试带载与双环,先做无感的状态观测器。

 

       为什么要做状态观测器?因为无感BLDC无法直接获取电角度,也无法直接获取反电动势。因此需要构造状态观测器,来估计反电动势,进而估计电角度与转速,也即位置与转速。关于状态观测器的内容,请自行恶补现代控制理论。

       不用状态观测器行不行?我尝试了方波启动,然后切换正弦波(我的有霍尔BLDC程序就是这么干的),是可以切换成功的,但是效果很不好,主要是高速性能不好,因此决定放弃,不过用来作为方波切换观测器的过渡还是可以考虑。

        对于各大芯片公司的电机控制方案各不相同,总的来说就是这两种:滑模观测器+反正切,滑模观测器+PLL,如果我没记错的话,TI是使用的反正切,ST是使用的PLL,这也是目前两大巨头的方案。相对来说,反正切程序稍微简单一些,我决定先尝试一下反正切。

        关于反正切,我使用的是F103,以后应该会用F030,计算能力受限,因此做什么都要首先考虑计算能力(FOC的程序我没少恶补C语言的指针),哎,现实就是这样,有难度就要克服,反正切是不能直接用atan函数的,计算能力不够,因此需要使用反正切的快速计算算法,具体请查阅相关资料,也不是很难写,快速计算反正切我大概写了一百行吧,就可以计算0~359度了,因为我只需要整形数据,因此计算也全部使用整形,最后精度还可以,计算时间也可以,差不多每次迭代3~4次就能计算完毕。

     

        关于系统建模的话,推荐一本书《现代永磁同步电机控制原理及MATLAB仿真》,这本书写得还是挺好的,不过还是推荐先复习(预习)一下现代控制理论,我也是先看了一周半现代控制理论的视频才开始看的这本书,同时也参考了一些知网论文。不过书上的滑模控制率,我在实际调试中稍微修改了一些,可能是在实际中与理论有些偏差吧,不过都还可以接受。滑模观测器的程序基本上搞了快两周,奉劝后来的朋友,模型一定要建对,模型的程序一定要写对,否则基本调不出来。

        我现在也只是刚刚调出来能看的波形,具体真的用它来驱动无感电机效果如何,还需要继续验证。目前我的电角度观测波形如图,应该还是可以继续优化的:

(PS:为自己打打气:从刚开始的方波程序就决定不用别人的库,全都自己动手撸,到现在调到观测器,着实不容易啊,最开始还会问一些网友有没有写电机控制程序的经验什么的,有很多网友的观点是:明明有库为什么要自己写,自己写的有别人的好吗?要学会站在巨人的肩膀上等等,对于这些观点,我呸!后面我就没再问过了,道路艰难,但风雨无阻,后面还会有高频注入,顺逆风,变载等一个个难关等着我,加油吧!)

  • 15
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值