tirsdag den 3. juli 2018

PNC-3000 Part 4

The weekend was used designing and fabricating the PCB for the LinuxCNC interface.

The 4503 buffers to finish off the board wasn't yet in the mail, so it wasn't until Monday that I could do the final assembly and test of the board. It had the pleasant side effect that I also got a chance to enjoy the nice weather. The PCB was milled on my old 3D printer.


When everything was assembled the final result looked like this.


I had to do a bit hardware debugging before things was running smoothly, that's why there is an extra transistor and resistor on the board.. Sometimes things cannot be fixed in software..! :D

I can not take credit for the initial idea of pulling the 8255 chip and intercepting the control signals inside the mill, this was first done by this guy: https://www.youtube.com/watch?v=KTfs9lgCk1w
But he's design deals with SMD, which is a bit of a challenge when milling PCB's, and I thought that designing it myself, it would be a fun little project to activate the dormant brain cells.
When I'm done debugging, I'll post the design somewhere.. probably GitHub.

I had a bit of an issue, with the counter logic build into the mill.

The display has a resolution of 0.01mm, but the mill is specified to have 0.005mm, resolution both specifications is true, the last one being a modified truth. But I noted that when jogging the mill around, or if I ran some gcode, the display would get out of sync with the controller (LinuxCNC). Also the mill had a different sound, when running from LinuxCNC than with the build in controller.

The reason for this might be a bug/flaw in the counter logic, where the counter is incremented on the first pulse of the clock, which is actually ok, since 0.5 should be rounded to 1, but if the direction is changed when the position is at x.xx5mm the counter looses a count, and things gets out of sync.

Roland seem to have circumvented this issue in the firmware, by making sure to pulse the steppers an even count of pulses on every move, this is clearly visible on a osciloscope, where pulses can be seen paired, spaced with a few mS, you never see just one pulse..

This fix limits the resolution to 0.01mm with the build in controller, and explains the difference in sound, between running of LinuxCNC.

The issue is only cosmetic when the mill is controlled from LinuxCNC of Mach3, but never the less annoying..

Tonight I could take the first chips....



Ingen kommentarer:

Send en kommentar