zengan007 发表于 2016-6-14 20:12:09

2相电机程序移植到3相电机!高手们出来论剑啦!!!

大神们,2相电机相电流相差90度,那数组const u16 SinDataA与const u16 SinDataC 里这些点所描绘的sin曲线是不是就是相差90度啊?我大概描了一下,好像是相差90度,不知道是不是巧合呢。
于是我就寻思着把那两个数组里面的值的位置移动了一下,使那些点所描绘的曲线相差120度,再用原来的2相驱动程序做,一直让电机转会有点卡而且有点吵,但是单步走的时候效果还是不错的,希望大神们来看看是啥问题。
const u16 SinDataA =   //128*4
{
0, 9, 18, 28, 37, 46, 55, 64, 74, 83, 92, 101, 110, 120, 129, 138, \
147, 156, 165, 174, 184, 193, 202, 211, 220, 229, 238, 247, 256, 266, \
275, 284, 293, 302, 311, 320, 329, 338, 347, 356, 364, 373, 382, 391, \
400, 409, 418, 427, 435, 444, 453, 462, 471, 479, 488, 497, 505, 514, \
523, 531, 540, 548, 557, 566, 574, 583, 591, 599, 608, 616, 625, 633, \
641, 650, 658, 666, 674, 683, 691, 699, 707, 715, 723, 731, 739, 747, \
755, 763, 771, 779, 787, 795, 802, 810, 818, 826, 833, 841, 849, 856, \
864, 871, 879, 886, 894, 901, 908, 916, 923, 930, 937, 944, 952, 959, \
966, 973, 980, 987, 994, 1000, 1007, 1014, 1021, 1028, 1034, 1041, \
1048, 1054, 1061, 1067, 1074, 1080, 1086, 1093, 1099, 1105, 1111, \
1118, 1124, 1130, 1136, 1142, 1148, 1154, 1160, 1165, 1171, 1177, \
1183, 1188, 1194, 1199, 1205, 1210, 1216, 1221, 1226, 1232, 1237, \
1242, 1247, 1252, 1257, 1262, 1267, 1272, 1277, 1282, 1287, 1291, \
1296, 1301, 1305, 1310, 1314, 1319, 1323, 1327, 1331, 1336, 1340, \
1344, 1348, 1352, 1356, 1360, 1364, 1368, 1371, 1375, 1379, 1382, \
1386, 1389, 1393, 1396, 1399, 1403, 1406, 1409, 1412, 1415, 1418, \
1421, 1424, 1427, 1430, 1433, 1435, 1438, 1441, 1443, 1446, 1448, \
1450, 1453, 1455, 1457, 1459, 1462, 1464, 1466, 1467, 1469, 1471, \
1473, 1475, 1476, 1478, 1479, 1481, 1482, 1484, 1485, 1486, 1488, \
1489, 1490, 1491, 1492, 1493, 1494, 1494, 1495, 1496, 1497, 1497, \
1498, 1498, 1499, 1499, 1499, 1500, 1500, 1500, 1500, 1500, 1500, \
1500, 1500, 1500, 1499, 1499, 1499, 1498, 1498, 1497, 1497, 1496, \
1495, 1494, 1494, 1493, 1492, 1491, 1490, 1489, 1488, 1486, 1485, \
1484, 1482, 1481, 1479, 1478, 1476, 1475, 1473, 1471, 1469, 1467, \
1466, 1464, 1462, 1459, 1457, 1455, 1453, 1450, 1448, 1446, 1443, \
1441, 1438, 1435, 1433, 1430, 1427, 1424, 1421, 1418, 1415, 1412, \
1409, 1406, 1403, 1399, 1396, 1393, 1389, 1386, 1382, 1379, 1375, \
1371, 1368, 1364, 1360, 1356, 1352, 1348, 1344, 1340, 1336, 1331, \
1327, 1323, 1319, 1314, 1310, 1305, 1301, 1296, 1291, 1287, 1282, \
1277, 1272, 1267, 1262, 1257, 1252, 1247, 1242, 1237, 1232, 1226, \
1221, 1216, 1210, 1205, 1199, 1194, 1188, 1183, 1177, 1171, 1165, \
1160, 1154, 1148, 1142, 1136, 1130, 1124, 1118, 1111, 1105, 1099, \
1093, 1086, 1080, 1074, 1067, 1061, 1054, 1048, 1041, 1034, 1028, \
1021, 1014, 1007, 1000, 994, 987, 980, 973, 966, 959, 952, 944, 937, \
930, 923, 916, 908, 901, 894, 886, 879, 871, 864, 856, 849, 841, 833, \
826, 818, 810, 802, 795, 787, 779, 771, 763, 755, 747, 739, 731, 723, \
715, 707, 699, 691, 683, 674, 666, 658, 650, 641, 633, 625, 616, 608, \
599, 591, 583, 574, 566, 557, 548, 540, 531, 523, 514, 505, 497, 488, \
479, 471, 462, 453, 444, 435, 427, 418, 409, 400, 391, 382, 373, 364, \
356, 347, 338, 329, 320, 311, 302, 293, 284, 275, 266, 256, 247, 238, \
229, 220, 211, 202, 193, 184, 174, 165, 156, 147, 138, 129, 120, 110, \
101, 92, 83, 74, 64, 55, 46, 37, 28, 18, 9, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
};
const u16 SinDataB =   //128*4
{
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,       
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,        
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,        
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 9, 18, 28, 37, 46, 55, 64, 74, 83, 92, 101, 110, \
120, 129, 138, 147, 156, 165, 174, 184, 193, 202, 211, 220, 229, 238, \
247, 256, 266, 275, 284, 293, 302, 311, 320, 329, 338, 347, 356, 364, \
373, 382, 391, 400, 409, 418, 427, 435, 444, 453, 462, 471, 479, 488, \
497, 505, 514, 523, 531, 540, 548, 557, 566, 574, 583, 591, 599, 608, \
616, 625, 633, 641, 650, 658, 666, 674, 683, 691, 699, 707, 715, 723, \
731, 739, 747, 755, 763, 771, 779, 787, 795, 802, 810, 818, 826, 833, \
841, 849, 856, 864, 871, 879, 886, 894, 901, 908, 916, 923, 930, 937, \
944, 952, 959, 966, 973, 980, 987, 994, 1000, 1007, 1014, 1021, 1028, \
1034, 1041, 1048, 1054, 1061, 1067, 1074, 1080, 1086, 1093, 1099, \
1105, 1111, 1118, 1124, 1130, 1136, 1142, 1148, 1154, 1160, 1165, \
1171, 1177, 1183, 1188, 1194, 1199, 1205, 1210, 1216, 1221, 1226, \
1232, 1237, 1242, 1247, 1252, 1257, 1262, 1267, 1272, 1277, 1282, \
1287, 1291, 1296, 1301, 1305, 1310, 1314, 1319, 1323, 1327, 1331, \
1336, 1340, 1344, 1348, 1352, 1356, 1360, 1364, 1368, 1371, 1375, \
1379, 1382, 1386, 1389, 1393, 1396, 1399, 1403, 1406, 1409, 1412, \
1415, 1418, 1421, 1424, 1427, 1430, 1433, 1435, 1438, 1441, 1443, \
1446, 1448, 1450, 1453, 1455, 1457, 1459, 1462, 1464, 1466, 1467, \
1469, 1471, 1473, 1475, 1476, 1478, 1479, 1481, 1482, 1484, 1485, \
1486, 1488, 1489, 1490, 1491, 1492, 1493, 1494, 1494, 1495, 1496, \
1497, 1497, 1498, 1498, 1499, 1499, 1499, 1500, 1500, 1500, 1500, \
1500,
1500, 1500, 1500, 1500, 1499, 1499, 1499, 1498, 1498, 1497, \
1497, 1496, 1495, 1494, 1494, 1493, 1492, 1491, 1490, 1489, 1488, \
1486, 1485, 1484, 1482, 1481, 1479, 1478, 1476, 1475, 1473, 1471, \
1469, 1467, 1466, 1464, 1462, 1459, 1457, 1455, 1453, 1450, 1448, \
1446, 1443, 1441, 1438, 1435, 1433, 1430, 1427, 1424, 1421, 1418, \
1415, 1412, 1409, 1406, 1403, 1399, 1396, 1393, 1389, 1386, 1382, \
1379, 1375, 1371, 1368, 1364, 1360, 1356, 1352, 1348, 1344, 1340, \
1336, 1331, 1327, 1323, 1319, 1314, 1310, 1305, 1301, 1296, 1291, \
1287, 1282, 1277, 1272, 1267, 1262, 1257, 1252, 1247, 1242, 1237, \
1232, 1226, 1221, 1216, 1210, 1205, 1199, 1194, 1188, 1183, 1177, \
1171, 1165, 1160, 1154, 1148, 1142, 1136, 1130, 1124, 1118, 1111, \
1105, 1099, 1093, 1086, 1080, 1074, 1067, 1061, 1054, 1048, 1041, \
1034, 1028, 1021, 1014, 1007, 1000, 994, 987, 980, 973, 966, 959, \
952, 944, 937, 930, 923, 916, 908, 901, 894, 886, 879, 871, 864, 856, \
849, 841, 833, 826, 818, 810, 802, 795, 787, 779, 771, 763, 755, 747, \
739, 731, 723, 715, 707, 699, 691, 683, 674, 666, 658, 650, 641, 633, \
625, 616, 608, 599, 591, 583, 574, 566, 557, 548, 540, 531, 523, 514, \
505, 497, 488, 479, 471, 462, 453, 444, 435, 427, 418, 409, 400, 391, \
382, 373, 364, 356, 347, 338, 329, 320, 311, 302, 293, 284, 275, 266, \
256, 247, 238, 229, 220, 211, 202, 193, 184, 174, 165, 156, 147, 138, \
129, 120, 110, 101, 92, 83, 74, 64, 55, 46, 37, 28, 18, 9, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
};const u16 SinDataC =   //128*4
{
1296, 1291, 1287, 1282,
1277, 1272, 1267, 1262, 1257, 1252, 1247, 1242, 1237, 1232, 1226,
1221, 1216, 1210, 1205, 1199, 1194, 1188, 1183, 1177, 1171, 1165,
1160, 1154, 1148, 1142, 1136, 1130, 1124, 1118, 1111, 1105, 1099,
1093, 1086, 1080, 1074, 1067, 1061, 1054, 1048, 1041, 1034, 1028,
1021, 1014, 1007, 1000, 994, 987, 980, 973, 966, 959, 952, 944, 937,
930, 923, 916, 908, 901, 894, 886, 879, 871, 864, 856, 849, 841, 833,
826, 818, 810, 802, 795, 787, 779, 771, 763, 755, 747, 739, 731, 723,
715, 707, 699, 691, 683, 674, 666, 658, 650, 641, 633, 625, 616, 608,
599, 591, 583, 574, 566, 557, 548, 540, 531, 523, 514, 505, 497, 488,
479, 471, 462, 453, 444, 435, 427, 418, 409, 400, 391, 382, 373, 364,
356, 347, 338, 329, 320, 311, 302, 293, 284, 275, 266, 256, 247, 238,
229, 220, 211, 202, 193, 184, 174, 165, 156, 147, 138, 129, 120, 110,
101, 92, 83, 74, 64, 55, 46, 37, 28, 18, 9, 0,
0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 9, 18, 28, 37, 46, 55, 64, 74, 83, 92, 101, 110, 120, 129, 138, \
147, 156, 165, 174, 184, 193, 202, 211, 220, 229, 238, 247, 256, 266, \
275, 284, 293, 302, 311, 320, 329, 338, 347, 356, 364, 373, 382, 391, \
400, 409, 418, 427, 435, 444, 453, 462, 471, 479, 488, 497, 505, 514, \
523, 531, 540, 548, 557, 566, 574, 583, 591, 599, 608, 616, 625, 633, \
641, 650, 658, 666, 674, 683, 691, 699, 707, 715, 723, 731, 739, 747, \
755, 763, 771, 779, 787, 795, 802, 810, 818, 826, 833, 841, 849, 856, \
864, 871, 879, 886, 894, 901, 908, 916, 923, 930, 937, 944, 952, 959, \
966, 973, 980, 987, 994, 1000, 1007, 1014, 1021, 1028, 1034, 1041, \
1048, 1054, 1061, 1067, 1074, 1080, 1086, 1093, 1099, 1105, 1111, \
1118, 1124, 1130, 1136, 1142, 1148, 1154, 1160, 1165, 1171, 1177, \
1183, 1188, 1194, 1199, 1205, 1210, 1216, 1221, 1226, 1232, 1237, \
1242, 1247, 1252, 1257, 1262, 1267, 1272, 1277, 1282, 1287, 1291, \
1296, 1301, 1305, 1310, 1314, 1319, 1323, 1327, 1331, 1336, 1340, \
1344, 1348, 1352, 1356, 1360, 1364, 1368, 1371, 1375, 1379, 1382, \
1386, 1389, 1393, 1396, 1399, 1403, 1406, 1409, 1412, 1415, 1418, \
1421, 1424, 1427, 1430, 1433, 1435, 1438, 1441, 1443, 1446, 1448, \
1450, 1453, 1455, 1457, 1459, 1462, 1464, 1466, 1467, 1469, 1471, \
1473, 1475, 1476, 1478, 1479, 1481, 1482, 1484, 1485, 1486, 1488, \
1489, 1490, 1491, 1492, 1493, 1494, 1494, 1495, 1496, 1497, 1497, \
1498, 1498, 1499, 1499, 1499, 1500, 1500, 1500, 1500, 1500, 1500,
1500, 1500, 1500, 1499, 1499, 1499, 1498, 1498, 1497, 1497, 1496, \
1495, 1494, 1494, 1493, 1492, 1491, 1490, 1489, 1488, 1486, 1485, \
1484, 1482, 1481, 1479, 1478, 1476, 1475, 1473, 1471, 1469, 1467, \
1466, 1464, 1462, 1459, 1457, 1455, 1453, 1450, 1448, 1446, 1443, \
1441, 1438, 1435, 1433, 1430, 1427, 1424, 1421, 1418, 1415, 1412, \
1409, 1406, 1403, 1399, 1396, 1393, 1389, 1386, 1382, 1379, 1375, \
1371, 1368, 1364, 1360, 1356, 1352, 1348, 1344, 1340, 1336, 1331, \
1327, 1323, 1319, 1314, 1310, 1305, 1301
};      
TIM2->CCR1 =          SinDataA>>0;
         TIM2->CCR2 =          SinDataB>>0;
         TIM2->CCR3 =          SinDataC>>0;

ap0705307 发表于 2016-6-14 20:47:27

2相电机相电流相差90度,3相相差120度没错,但表数据具体看硬件。

sunrosewang 发表于 2016-6-14 21:20:41

你用的是什么电机,导步或者同步三相电机吗,还是无刷电机?三相电机可以用svpwm发波,算法也不是很难的。

zengan007 发表于 2016-6-15 08:43:17

sunrosewang 发表于 2016-6-14 21:20
你用的是什么电机,导步或者同步三相电机吗,还是无刷电机?三相电机可以用svpwm发波,算法也不是很难的。 ...

是用spwm做的,大神有做过?我觉得好难,无从下手

zengan007 发表于 2016-6-15 08:43:52

ap0705307 发表于 2016-6-14 20:47
2相电机相电流相差90度,3相相差120度没错,但表数据具体看硬件。

哦,表数据我是用两相的数据,两相用的还不错!

zengan007 发表于 2016-6-15 08:52:15

某一相的相电流曲线

gmyu 发表于 2016-6-15 09:19:36

跟步进的角度没有关系么?

weichao4808335 发表于 2016-6-15 09:24:22

还不是一样的查表么?只是相位差不同而已

zengan007 发表于 2016-6-15 09:57:57

weichao4808335 发表于 2016-6-15 09:24
还不是一样的查表么?只是相位差不同而已

嗯,但就是不知道咋整呢,好失落!

zengan007 发表于 2016-6-15 09:58:44

gmyu 发表于 2016-6-15 09:19
跟步进的角度没有关系么?

64细分,不知道有没有关系,单步走挺好的!

ap0705307 发表于 2016-6-15 21:31:51

zengan007 发表于 2016-6-15 08:52
某一相的相电流曲线

明显有问题吧,你对比一下两相的曲线。表数据是否相同要看硬件的!
页: [1]
查看完整版本: 2相电机程序移植到3相电机!高手们出来论剑啦!!!