lankuaker
控制PMSM,电机极对数=7,使用旋变解码器AU6802N1,绝对式,12分辨率,串行读出数据。
因为看到 电角度angle =机械角度*p。
我是这样想的,那么转一圈从解码器读出的数据应该是连续增大或者减小,范围(0~360×7)=(0~2520)
实际上我手动扳动电机旋转,每次扳动一个位置,从旋变读出的数据,这些数据并不是连续的,有时大,有时小。
请问,这是 因为我理解的电角度范围错了?还是我读出的数据错了?
谢谢!
通讯网-原创军团
ShowMotion
如果数据格式理解不对,高低位全反了有可能出现这种情况,比如渐变的原读数:0,1,2,3,
原读数: 0000,0000,0000;0000,0000,0001;0000,0000,0010;0000,0000,0011;0000,0000,0100
不变 变大 变大 变大 变大
反着读: 0000,0000,0000;1000,0000,0000;0100,0000,0000;1100,0000,0000;0010,0000,0000
不变 变大 变小 变大 变小
时三——王者之师
旋转一周,看一下显示数据,与预定先十万位是否一致,
比如:预定0-359;显示会出现593,就基本说明处理时位置颠倒了。
上面是就是多摩川au6802n1英文和中文的,SPI通信时时序图。
刚看过手册,你这个AU6802N1确实和极对数相关,你的旋变极对数如果是6对极的,你的结果就是对的。
三番五次
你的旋转编码器安装如不是和电机同轴的(一体的),6倍减速后安装编码器,电机和编码器就同步了。
同轴的话,程序处理时,最终读数=4060*a+b;a过零计数0-5,进6清零;b现在显示读数;最终读数也会与电机同步。
假定你同步电机的极对数和旋变的极对数一致,用的12位精度:
那你的电角度θ=360°* Datax/4096-偏移量;(偏移量是编码器0位与实际电角度0°的差值需要另外标定);
如果极对数不一致,就比较复杂,一般厂家不会这样配置的。
一次串行读取到的值就可以决定电角度在哪个位置可以理解为是绝对式。
sgyuyang
同样的问题我也遇到了,不过我彻底解决了。给个红包,我一招教会你,绝对搞定。