Даю команду G31 Z-100
Мало того что это самое -100 он отрабатывает относительно машинных координат (хотя тут еще надо покопаться, до этого руки не дошли),
Так в результате в переменной 2002 оказывается не значение координаты Z во время касания, а, судя по всему, значение work offset. (во всяком случае что-то похожее)
На первом скриншоте (SC1.png) видно состояние системы в момент касания зондом (После G31 Z-100)
После этого, я выполнил скрипт чтобы определить значения внутренних переменных мача:
Код: Выделить всё
Set objFSO=CreateObject("Scripting.FileSystemObject")
outFile="c:\text.txt"
Set objFile = objFSO.CreateTextFile(outFile,True)
For i = 1 To 30000
If (GetVar(i) <> 0) Then
objFile.Write i & " " & GetVar(i) & ";" & VbCrLf
End If
Next
objFile.Close Т.е. по оси Z значение ~84.88.2000 -23.9875;
2001 21.7875;
2002 84.884375;
2010 -23.9875;
2011 21.7875;
2012 84.884375;
5220 1;
5221 23.9875;
5222 -21.7875;
5223 -84.884375;
Может кто подскажет где я (или не я) косячу.
Пока у меня варианты следующие:
1 - Я косячу с системами координат или настройками мача.
2 - Я особо нигде не косячу, но просто не до конца понимаю принцип работы G31 (хотя тогда код от программы pcbzcorrect работал бы правильно, что не так)
3 - Это глюк китайской USB платы упревления. Китаец дров не дал, сам нашел и качал отсюда:
https://translate.google.com/translate? ... t=&act=url
Мач судя по всему не причем, т.к. тестил на разных версиях, но с одним и тем-же XML.
В общем SOS.