- 积分
- 425
- 回帖
- 0
- 西莫币
-
- 贡献
-
- 威望
-
- 存款
-
- 阅读权限
- 20
- 最后登录
- 1970-1-1
该用户从未签到
|
楼主 |
发表于 2010-12-4 09:27
|
显示全部楼层
来自: 中国江苏南京
回复 2# archdevil
是不是说控制里用的电流可以不是实际值,只要相对应就可以了?
比如TI的例程中
//Ia,正数,电流流向电机,-1~+1代表-25A~25A
DatQ15 = AdcRegs.ADCRESULT0^0x8000; // ^按位异或,将转换结果转换为Q15格式的双极性数据
Tmp = (int32)p->ImeasAGain*(int32)DatQ15; // Tmp = gain*dat => Q28 = Q13*Q15
p->ImeasA = (int16)(Tmp>>13); // Convert Q28 to Q15
p->ImeasA += p->ImeasAOffset; // Add offset
p->ImeasA *= -1; // 正数,电流流向电机,-1~+1代表-25A~25A
中 DatQ15 = AdcRegs.ADCRESULT0^0x8000;这句是说读取转换结果,如果AdcRegs.ADCRESULT0是0xFFF0,则 DatQ15 =0x7FF0,对应3V,也就是说对应的就是25A吗?
如果AdcRegs.ADCRESULT0是0x0000,则 DatQ15 =0x8000,对应0V,也就是说对应的就是
-25A吗?
不知道我这样理解是否对?是否还要做些特殊处理才能进行3s/2s坐标变换呢?
另外例程中的最后一句 p->ImeasA *= -1; 这句话该如何解释呢? |
|