Hi Simen,
I am attempting to use GRBL with a Makerbot DC Servo Controller, It uses GND, Step, Direction, Enable and Reset pins.
The controller has stepper to servo emulation, so I can use servo motors.
I read the post from dirktheeng about creating a new branch that more then likely would include modifications to stepper.c to include the changes I need for enabling the stepper.
I have looked for new branches and cannot locate the branch that contains dirktheeng’s code with enablement.
Any suggestions about how I can setup stepper enablement? I would need active low to enable the stepper emulation.
Thanks
Joe Pitz
评论 (4)
#2 – chamnit 于 2012-01-16
To do active low, all you need to do is set the stepper mask in the EEPROM settings. To do this, flash grbl to your Arduino, connect to it through a terminal interface. ‘$’ shows the EEPROM settings. The mask correlates to the config.h pins: so pins 1/2 are serial rx/tx and are ignored, 3/4/5 is the stepper XYZ pulse active high/low mask, and 6/7/8 is the stepper XYZ direction mask. Just set the mask with the integer number of the binary mask.
#3 – jpitz31 于 2012-01-17
So if I am understanding you correctly, Since pins 0,1 are tx,rx, and I want XYZ step set to active low (000) and XYZ direction either set to 000 or 111. That would create a mask of 11100000 or 00000000. Would that be correct?
My servo controller is calling for pins for step, direction, stepper enable and of course gnd. By setting the mask to either of the above two masks and not being able to have a pin for each enable axis. When I send a jog (pulse) on the X asis my motor turns on and does not stop until I send a jog (pulse) in the opposite direction. I cannot get the servo to operate off of a single pulse, I am sending the following gcode: “G91\nG20\nG00 X” + speed + ” Y0.000 Z0.000\n
Thanks
Joe
Is my mask correct and do you know why my servo motors turn on and do not turn off unless I send an opposite jog (pulse)
#4 – chamnit 于 2012-01-17
You’re correct about how to set the mask, but the mask is there to set the correct orientation of your machine coordinate system. Traditionally the positive directions are X-right, Y-away, Z-up. If this is flipped, you use the mask to flip them. Also, I think there is a misunderstanding what the G00 command does. It move to a position not a speed. If you use G00 X10, it’ll move 10mm (unless in inch mode) to the right. If it’s G00 X-10, it’ll move 20mm to the left to the X-10 position. To set speed, use the G01 with the F command, which will set feed rate. So move back to the origin from X-10 at a feedrate of 100mm/min, you would type G01 X0 F100. Hope that helps.
#1 – nullsub 于 2012-01-15
I dont know anything about your particular problem. but this fork seems to be dead. Look at the fork at github.com/chamnit for a more recent version. The probability that someone will help you is higher;)