Remora - ethernet NVEM / EC300 / EC500 cnc board

More
3 years 6 months ago #268929 by zmrdko
Thanks Scott. It was set to 0, but I changed it to 0.0001 and it seems to work fine now. I have now issue with motor accuracy. The scale is set to 160 and I have set jumpers on JMC ihsv57 motor to 800 steps per rotation so 5mm jog should be exactly one full circle. However its a little less than that. After few 5mm jogs its obvious. So do I have problem with step pulse lenghts?

Please Log in or Create an account to join the conversation.

More
3 years 6 months ago - 3 years 6 months ago #268931 by meister
You can try to move very, very slow and check the distance if its better.

If you have a rt1052 based board:
and if it's not too much trouble, you could try my version: github.com/multigcs/Remora-RT1052/tree/l...jitter_test/firmware

its compiled for the EC300 V5

I would be interested to know if it makes a difference
Last edit: 3 years 6 months ago by meister.

Please Log in or Create an account to join the conversation.

More
3 years 6 months ago #268932 by zmrdko
I have an ec500 with rt1052

Please Log in or Create an account to join the conversation.

More
3 years 6 months ago #268941 by scotta

Thanks Scott. It was set to 0, but I changed it to 0.0001 and it seems to work fine now. I have now issue with motor accuracy. The scale is set to 160 and I have set jumpers on JMC ihsv57 motor to 800 steps per rotation so 5mm jog should be exactly one full circle. However its a little less than that. After few 5mm jogs its obvious. So do I have problem with step pulse lenghts?
Sounds like some calibration is needed to dial in the step scale.

forum.linuxcnc.org/38-general-linuxcnc-q...rating-axis-movement
www.forum.linuxcnc.org/plasmac/45808-scale-axis#242146

Formula is: (distance commanded / distance moved) * old step scale = new step scale

 
The following user(s) said Thank You: zmrdko

Please Log in or Create an account to join the conversation.

More
3 years 6 months ago #268942 by scotta

source/baseThread.c:

Code:
void makeSteps() {     static int8_t i;     static int32_t stepNow;     if (rxDataFlag == 1) {         rxDataFlag = 0;         memcpy(rxDataCopy.rxBuffer, rxData.rxBuffer, BUFFER_SIZE);     } .... but i think its better to move this part to the end of the makeSteps() function  
Yes, I saw that. But where is rxDataCopy being filled with the packet data?

Please Log in or Create an account to join the conversation.

More
3 years 6 months ago - 3 years 6 months ago #268951 by zmrdko
Thanks Scott for patiently replying to all my queries.

i know this formula for correcting travel, but I was expecting the exact numbers to work. If the motor needs 800 pulses to make one turn, I would expect 160 scale times 5mm to work.

I have read that it might be caused by too short pulses. This is diagram I found in motor manual:

is there a way to set up these values?


 
Last edit: 3 years 6 months ago by zmrdko.

Please Log in or Create an account to join the conversation.

Time to create page: 0.197 seconds
Powered by Kunena Forum