On 15 Jan 2014, at 16:57, Charles Steinkuehler <char...@steinkuehler.net> wrote:
> On 1/15/2014 10:02 AM, Bas de Bruijn wrote: >> >> On 15 Jan 2014, at 15:52, Charles Steinkuehler >> <char...@steinkuehler.net> wrote: >> >>> On 1/15/2014 7:55 AM, Bas de Bruijn wrote: >>>> >>>> Hi Charles, >>>> >>>> I’d like to support you with testing/adding to the >>>> lineardeltakins types of 3D printer. I recently added rudimentary >>>> M109 and M106 in the linuxcnc/nc_files directory. >>> >>> Yes, there will be an example of a lineardeltakins configuration in >>> the next release. This is long overdue. >>> >>>> During calibrating I noticed that i should add a variable to >>>> change height of the home position in real time. Now i change >>>> lineardeltakins.L (rod length) and lineardeltakins.R (radius) via >>>> a halcmd in the terminal when tuning the printer. This is needed >>>> for getting straight movement in the plane, instead of >>>> convex/concave movement. Nice about it is that the position gets >>>> adjusted in real time. very nifty and fast for calibrating, no >>>> homing in between. >>>> >>>> The heights of the end positions are still adjusted via the .ini >>>> file and i’d like to change them in real time to find the >>>> correction, and then once adjust the values in the .ini file. >>>> Because changing them means reloading linuxcnc. >>>> >>>> in addition to the Pinout/Driver board let’s add BeBoPr++ too. >>> >>> I believe the BeBoPr++ uses the same pins as the BeBoPr+ which is >>> the same as the BeBoPr-Bridge, so hopefully one configuration will >>> work with all of them, but I don't have details yet. >>> >>> As for the end positions, some things cannot be changed at runtime >>> via HAL (apparently some really old stuff that pre-dates HAL and >>> never got migrated to HAL signals/parameters). But you may be able >>> to do what you want using G92 offsets. You should at least be able >>> to use G92 to do a bit more testing between re-launches of >>> LinuxCNC. >> >> I’m not trying to hijack this thread but I’ll try to explain what I >> have in mind. >> >> I use G92 to set the offset the nozzle from the bed. I have not found >> a way yet to change the homing height, that pin is not writable. The >> homing height is important and have effect on the delta radius. so >> when i calibrate a machine i need to do a few iterations. >> >> for now it’s not a problem, but in the future i hope to calibrate >> more machines per day (and I’m a lazy guy) >> >> I propose to add calibration functionality in the kinematics module >> (need to compile and test it though) > > <snip> > >> and then in lineardeltakins-common.h i can take these offset heights >> to narrow down the offset height during calibration. Then when i have >> written them down i need to change the .ini file once for everything. >> radius, rod length and homing heights. >> >> that way i could calibrate everything in one go, via Axis and halcmd >> in a terminal. > > Yes, it is annoying that some machine parameters can not be adjusted at > runtime, and for non-trivial kinematics, the conventional 'touch-off' > performed in XYZ space doesn't help fix any mis-alignment in joint > space. I'd like to fix this so everything could be updated live via > HAL, but that's for further down the road. > > You can add offsets to the kinematics module, as you propose, but for > what you're wanting, I think you could just add an offset between the > step/dir generator and the motion module via HAL, ie: > > Connect hal_pru_generic.stepgen.00.position-fb to the input of a new > sum2 component (http://linuxcnc.org/docs/html/man/man9/sum2.9.html) > where you add an offset, then connect the sum2 output to the motion > controller's axis.0.motor-pos-fb pin. > > Then you won't need to add code. Don't forget to add the sum2 function > to the servo-thread (using addf, there's a list of them at the top of > the HAL file). The sum2 functions should go between the > capture-position function that reads the current stepper position and > the motion-* functions that calculate new motor positions. > I’ll investigate! Thanks for the tip. In the end it is just for myself calibrating machines. So keeping it simple for others counts for something. > -- > Charles Steinkuehler > char...@steinkuehler.net > > ------------------------------------------------------------------------------ > CenturyLink Cloud: The Leader in Enterprise Cloud Services. > Learn Why More Businesses Are Choosing CenturyLink Cloud For > Critical Workloads, Development Environments & Everything In Between. > Get a Quote or Start a Free Trial Today. > http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk_______________________________________________ > Emc-developers mailing list > Emc-developers@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/emc-developers ------------------------------------------------------------------------------ CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk _______________________________________________ Emc-developers mailing list Emc-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-developers