Hi
If I have undrstood corretly, K8097 does not permit to send vectors to the card (vector like [x,y,z]), instead the next position has to be sent separately for each axis with help of the Move methode. This fact implies in case of complex movements of the axes (e.g. elispe, circle), that each axis has to be positioned by a kind of “step by step” mode, running through each axis. For instance for a two axes system, the very crude program would be like:
for n number of loops
MoveMethod(x(n))
MoveMethode(y(n));
end;
where abs(x(n+1)) – x(n)) <= 1 and abs(y(n+1)) – y(n)) <= 1.
I discovered, that it is not as easy as that, then between each task, a pause has to be insereted, otherwise the tasks do not arrive at the K8097, so the correct way is:
for n number of loops
MoveMethod(x(n));
Pause(x seconds);
MoveMethode(y(n));
Pause(x seconds);
end;
Similar if you want to get the status of a motor in a whlie loop (using GetMoving Method). If the while loop consits only of GetMoving you HAVE to add a pause in the while loop to make run the program correctly.
My first question is: Do you agree with my argumentation? Or could you propose a better way to handle complex movements of the axes?
My second question is: Could you indicate the necessary minimum length of the pause between two tasks sent to the K8097?
Third question: Could you give an (approximated) equation of speed and the value handed over to K8097. I discovered, that the higher the value the lower the speed of the motor. Is the value a kind of divider of the driving frequency?
Forth question: Could you extend the NET library so that vectors are handeld as well, even that a consecutive (limited) number of vectors can be send to a memory of the K8097 PIC’s, which are then automatically worked through?
Otherwise, I am happy with the K8097!
Best regards
Urs