On Sunday 10 May 2020 06:28:28 andrew beck wrote: > hey gene > > I have been playing with this since the last email. > > I found a forum post here which was really helpful. > > https://forum.linuxcnc.org/10-advanced-configuration/35997-step-dir-wi >th-following-error-setup?start=0 > > > basicely I needed to keep my step gen hal connections all working > still but put the encoder feedback in there too. I pretty much copied > the examples and went on from there. The Axis DRO now is referenced > by the encoder feedback showing the actual position. But my servo > tuning is already not that bad and the encoder count definitely > follows the stepgen pretty close. > > I am still not sure how to get the scope to capture the difference > between the commanded velocity and the encoder feedback yet and allow > me to fix it in the drive but I am really close not I think. > > here are my ini and hal files for you to look at if you want. I have > commented the HAL file showing the new stuff I put in there > > > I changed the encoder to negative instead of inverting the A and B > channels. and I got the correct encoder scale all working > > now when I move the axis I can see the encoder following I can't map > the error but as soon as I stop the encoder is within .002 mm of the > requested position. that is fine. But I just want to make sure it is > following the path correctly during motion. which is probably is not. > I'd suggest at this point, to do a temp freeze with what you have, and see if you can get familiar with how the hal-scope works. What you have is now a signal generator to teach you about the scope.
> regards > > Andrew > > On Sun, May 10, 2020 at 9:52 PM Gene Heskett <ghesk...@shentel.net> wrote: > > On Sunday 10 May 2020 02:18:00 andrew beck wrote: > > > just a follow up here. after much searching on the forum I now > > > have my feedback connecting up to the pid loop. and the machine > > > takes off all over the place. with about 70 mm feedback error > > > > Feedback is backwards, interchange the A and B connections. > > > > > problem is I don't want to actually change my open loop step gen > > > pid loop. I just want to be able to compare commanded position and > > > the encoder position and then adjust the tuning values in my servo > > > drive until it is tuned nicely. > > > > > > anyway I will post on the forum also and see what people think > > > > > > regards > > > > > > Andrew > > > > > > On Sun, May 10, 2020 at 4:47 PM andrew beck > > > <andrewbeck0...@gmail.com> > > > > > > wrote: > > > > just to add on here. I know people are connecting up encoder > > > > feedback to step dir control servo drive systems on here. so it > > > > has been done before. I am just having a little trouble > > > > following along. > > > > > > > > regards > > > > > > > > Andrew > > > > > > > > On Sun, May 10, 2020 at 4:46 PM andrew beck > > > > <andrewbeck0...@gmail.com> > > > > > > > > wrote: > > > >> hey Gene > > > >> > > > >> I am tuning my chinese servos and can't connect up the tuning > > > >> software so want to show it in Halscope so that I can track the > > > >> following error and then adjust it in the servo drive. This is > > > >> just a temporary thing. I have the feedback from the X axis > > > >> encoder plugged into the Spindle encoder pins on the 7i76 as > > > >> that is the only high speed encoder counter I currently have to > > > >> use. > > > >> > > > >> I am not sure exactly how to set this thing up. > > > >> > > > >> *Ideally I just want to be able to graph the encoder following > > > >> error between my encoder and the commanded position that is > > > >> going through the step gens. I don't want to touch the PID > > > >> loop in Linux at the moment as I only have the once encoder > > > >> counter and will have to remove the feedback once the tuning is > > > >> done and connect up the Y axis encoder next to the 7i76 spindle > > > >> encoder pins* > > > >> > > > >> this is my first time using Halscope (actually any sort of > > > >> scope) and I am getting stuck > > > >> > > > >> regards > > > >> > > > >> Andrew > > > >> > > > >> On Sun, May 10, 2020 at 4:02 PM Gene Heskett > > > >> <ghesk...@shentel.net> > > > >> > > > >> wrote: > > > >>> On Saturday 09 May 2020 23:25:42 andrew beck wrote: > > > >>> > hey guys > > > >>> > > > > >>> > getting a bit stuck here and it is the same issue as this > > > >>> > old email so I thought I would answer it and see what you > > > >>> > guys think > > > >>> > > > > >>> > I have a standard Hal and ini file generated from Pncconf > > > >>> > for a 5i25 and 7i76 combo. > > > >>> > > > > >>> > just trying to connect my encoder and graph the following > > > >>> > error in Halscope. > > > >>> > > > > >>> > all I want to do at the moment is use Halscope to allow me > > > >>> > to manually tune my servo drive parameters. (I will not be > > > >>> > tuning inside linuxcnc at the moment that will have to wait > > > >>> > until my new mesa cards come > > > >>> > > > > >>> > Can someone please advise what hal and ini stuff needs to be > > > >>> > changed to get my feedback into halscope > > > >>> > > > > >>> > regards > > > >>> > > > > >>> > Andrew > > > >>> > > > > >>> > > > > >>> > > > > >>> > I have just connected my x axis encoder to my spindle > > > >>> > > > >>> For what purpose? > > > >>> > > > >>> > On Thu, Feb 27, 2020 at 7:01 AM Ed W <li...@wildgooses.com> > > > > wrote: > > > >>> > > Hi, I've made good progress converting my little OmioCNC > > > >>> > > X6 from Mach3 to LinuxCNC. I think I owe a writeup at some > > > >>> > > point, but I still have a few glitches before I'm ready to > > > >>> > > do that. > > > >>> > > > > > >>> > > First thing which I'm worrying about is that having run > > > >>> > > pncconf, it generates an output for my open loop steppers > > > >>> > > which involves a PID type setup, eg here is my X axis from > > > >>> > > the ini > > > >>> > > > >>> PID's are optional for microstepped steppers. I have 2 lathes, > > > >>> one running with and one w/o. Both work well. My 6040 is > > > >>> running well w/o PID's. My GO704 has them. They are needed > > > >>> with servo's as thats what drives the servo's to a null, no > > > >>> error position. PID are useful IF you have feedback from glass > > > >>> scales or separate encoders on the motors, basicly treating > > > >>> the stepper as a servo, and the better motor kits today are > > > >>> moving in that direction. > > > >>> > > > >>> > > [AXIS_X] > > > >>> > > MAX_VELOCITY = 100.0 > > > >>> > > MAX_ACCELERATION = 750.0 > > > >>> > > MIN_LIMIT = -0.01 > > > >>> > > MAX_LIMIT = 355.0 > > > >>> > > > > > >>> > > [JOINT_0] > > > >>> > > TYPE = LINEAR > > > >>> > > HOME = 0.0 > > > >>> > > FERROR = 1.0 > > > >>> > > MIN_FERROR = 0.01 > > > >>> > > MAX_VELOCITY = 100.0 > > > >>> > > MAX_ACCELERATION = 750.0 > > > >>> > > # The values below should be 25% larger than > > > >>> > > MAX_VELOCITY and MAX_ACCELERATION > > > >>> > > # If using BACKLASH compensation STEPGEN_MAXACCEL > > > >>> > > should be 100% larger. > > > >>> > > STEPGEN_MAXVEL = 125.00 > > > >>> > > STEPGEN_MAXACCEL = 937.50 > > > >>> > > P = 1000.0 > > > >>> > > I = 0.0 > > > >>> > > D = 0.0 > > > >>> > > FF0 = 0.0 > > > >>> > > FF1 = 1.0 > > > >>> > > FF2 = 0.0 > > > >>> > > BIAS = 0.0 > > > >>> > > DEADBAND = 0.0 > > > >>> > > MAX_OUTPUT = 0.0 > > > >>> > > # these are in nanoseconds > > > >>> > > DIRSETUP = 10000 > > > >>> > > DIRHOLD = 10000 > > > >>> > > STEPLEN = 5000 > > > >>> > > STEPSPACE = 5000 > > > >>> > > STEP_SCALE = 320.0 > > > >>> > > MIN_LIMIT = -0.01 > > > >>> > > MAX_LIMIT = 355.0 > > > >>> > > HOME_OFFSET = -5.000000 > > > >>> > > HOME_SEARCH_VEL = -33.333333 > > > >>> > > HOME_LATCH_VEL = 0.500000 > > > >>> > > HOME_FINAL_VEL = 33.333333 > > > >>> > > HOME_USE_INDEX = NO > > > >>> > > HOME_IGNORE_LIMITS = YES > > > >>> > > HOME_SEQUENCE = 1 > > > >>> > > > > > >>> > > > > > >>> > > The corresponding .hal (again by pncconf) is as follows: > > > >>> > > > > > >>> > > > > > >>> > > #******************* > > > >>> > > # AXIS X JOINT 0 > > > >>> > > #******************* > > > >>> > > > > > >>> > > setp pid.x.Pgain [JOINT_0]P > > > >>> > > setp pid.x.Igain [JOINT_0]I > > > >>> > > setp pid.x.Dgain [JOINT_0]D > > > >>> > > setp pid.x.bias [JOINT_0]BIAS > > > >>> > > setp pid.x.FF0 [JOINT_0]FF0 > > > >>> > > setp pid.x.FF1 [JOINT_0]FF1 > > > >>> > > setp pid.x.FF2 [JOINT_0]FF2 > > > >>> > > setp pid.x.deadband [JOINT_0]DEADBAND > > > >>> > > setp pid.x.maxoutput [JOINT_0]MAX_OUTPUT > > > >>> > > setp pid.x.error-previous-target true > > > >>> > > setp pid.x.maxerror .0005 > > > >>> > > > > > >>> > > net x-index-enable <=> pid.x.index-enable > > > >>> > > net x-enable => pid.x.enable > > > >>> > > net x-pos-cmd => pid.x.command > > > >>> > > net x-pos-fb => pid.x.feedback > > > >>> > > net x-output <= pid.x.output > > > >>> > > > > > >>> > > # Step Gen signals/setup > > > >>> > > > > > >>> > > setp hm2_5i25.0.stepgen.00.dirsetup > > > >>> > > [JOINT_0]DIRSETUP setp hm2_5i25.0.stepgen.00.dirhold > > > >>> > > [JOINT_0]DIRHOLD setp hm2_5i25.0.stepgen.00.steplen > > > >>> > > [JOINT_0]STEPLEN setp hm2_5i25.0.stepgen.00.stepspace > > > >>> > > [JOINT_0]STEPSPACE setp > > > >>> > > hm2_5i25.0.stepgen.00.position-scale [JOINT_0]STEP_SCALE > > > >>> > > setp hm2_5i25.0.stepgen.00.step_type 0 > > > >>> > > setp hm2_5i25.0.stepgen.00.control-type 1 > > > >>> > > setp hm2_5i25.0.stepgen.00.maxaccel > > > >>> > > [JOINT_0]STEPGEN_MAXACCEL setp > > > >>> > > hm2_5i25.0.stepgen.00.maxvel [JOINT_0]STEPGEN_MAXVEL setp > > > >>> > > hm2_5i25.0.stepgen.00.step.invert_output true setp > > > >>> > > hm2_5i25.0.stepgen.00.direction.invert_output true > > > >>> > > > > > >>> > > # ---closedloop stepper signals--- > > > >>> > > > > > >>> > > net x-pos-cmd <= joint.0.motor-pos-cmd > > > >>> > > net x-vel-cmd <= joint.0.vel-cmd > > > >>> > > net x-output <= hm2_5i25.0.stepgen.00.velocity-cmd > > > >>> > > net x-pos-fb <= hm2_5i25.0.stepgen.00.position-fb > > > >>> > > net x-pos-fb => joint.0.motor-pos-fb > > > >>> > > net x-enable <= joint.0.amp-enable-out > > > >>> > > net x-enable => hm2_5i25.0.stepgen.00.enable > > > >>> > > > > > >>> > > # ---setup home / limit switch signals--- > > > >>> > > > > > >>> > > net min-home-x => joint.0.home-sw-in > > > >>> > > net min-home-x => joint.0.neg-lim-sw-in > > > >>> > > net x-pos-limit => joint.0.pos-lim-sw-in > > > >>> > > > > > >>> > > > > > >>> > > What would someone experienced recommend I do here? This > > > >>> > > is a simple openloop stepper machine, no feedback or > > > >>> > > position sensors. Just a 6i25 to a basic breakout board, > > > >>> > > going to a chinese 556 stepper driver clone and onto some > > > >>> > > small steppers on a 6040 type of machine? > > > >>> > > > > > >>> > > Is there any disadvantage (or advantage) to leaving all > > > >>> > > the PID and closed loop stuff in here? > > > >>> > > > > > >>> > > > > > >>> > > Thanks > > > >>> > > > > > >>> > > Ed W > > > >>> > > > > > >>> > > > > > >>> > > > > > >>> > > _______________________________________________ > > > >>> > > Emc-users mailing list > > > >>> > > Emc-users@lists.sourceforge.net > > > >>> > > https://lists.sourceforge.net/lists/listinfo/emc-users > > > >>> > > > >>> Cheers, Gene Heskett > > > >>> -- > > > >>> "There are four boxes to be used in defense of liberty: > > > >>> soap, ballot, jury, and ammo. Please use in that order." > > > >>> -Ed Howdershelt (Author) > > > >>> If we desire respect for the law, we must first make the law > > > >>> respectable. - Louis D. Brandeis > > > >>> Genes Web page <http://geneslinuxbox.net:6309/gene> > > > >>> > > > >>> > > > >>> _______________________________________________ > > > >>> Emc-users mailing list > > > >>> Emc-users@lists.sourceforge.net > > > >>> https://lists.sourceforge.net/lists/listinfo/emc-users > > > > > > _______________________________________________ > > > Emc-users mailing list > > > Emc-users@lists.sourceforge.net > > > https://lists.sourceforge.net/lists/listinfo/emc-users > > > > Cheers, Gene Heskett > > -- > > "There are four boxes to be used in defense of liberty: > > soap, ballot, jury, and ammo. Please use in that order." > > -Ed Howdershelt (Author) > > If we desire respect for the law, we must first make the law > > respectable. - Louis D. Brandeis > > Genes Web page <http://geneslinuxbox.net:6309/gene> > > > > > > _______________________________________________ > > Emc-users mailing list > > Emc-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/emc-users Cheers, Gene Heskett -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author) If we desire respect for the law, we must first make the law respectable. - Louis D. Brandeis Genes Web page <http://geneslinuxbox.net:6309/gene> _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users