Home › Forums › TinyG › TinyG Support › more jerking than on linuxcnc
- This topic has 11 replies, 5 voices, and was last updated 11 years ago by Makerboost.
-
AuthorPosts
-
December 4, 2013 at 5:14 pm #5015kajukMember
Today I had another chance to do more testing.
As I mentioned before, I’m coming from LinuxCNC and I noticed that the same gcode jobs produce with TinyG considerably more jerking at junctions, in fact it even sounds like knocking. To show a comparison, I loaded the same simple job in both TinyG and LinuxCNC.This is the video showing the job in TinyG: http://www.youtube.com/watch?v=XSALMDGnIkc
Note the knocking sounds at junctions.This is the video showing the job in LinuxCNC: http://www.youtube.com/watch?v=2Xmq2YDumqE
No knocking sounds.On smaller holes the knocking sound (and vibration) is even worse. And lowering ‘Jerk maximum’ makes no difference to this effect, although the jobs runs much slower. Changing ‘Junction deviation’ in either direction also makes no difference to this effect.
The gcode I used and TinyG settings are below. I hope I just missed something and it can be fixed with a configuration change.
This is the the gcode I used:
(A-TEST)
(F_CONTOUR.NC)
(COMPENSATION-WEAR)
(Post Rev 1.0)
(DEC-04-2013-7:47:13PM)
(TOOL 1 – DIA 3.)
G90 G17 G40 G80 G00 G21 G91.1 G64 P0.01
T1 M6()
T1
(F-contour)
G00
S1000 M03
G00 G54 G90 X20.5 Y16. A0.
G43 H1 Z10.
Z2.
G01 Z-2. F300.
G03 X20.5 Y16. I4.5 J0. F2000.
G01 Z-4. F300.
G03 X20.5 Y16. I4.5 J0. F2000.
G01 Z-6. F300.
G03 X20.5 Y16. I4.5 J0. F2000.
G01 Z-8. F300.
G03 X20.5 Y16. I4.5 J0. F2000.
G01 Z-10. F300.
G03 X20.5 Y16. I4.5 J0. F2000.
G01 Z-12. F300.
G03 X20.5 Y16. I4.5 J0. F2000.
G00 Z10.
X26.2834 Y37.6962
Z2.
G01 Z-2. F300.
X22.4332 F2000.
G03 X22.4332 Y30.3038 I2.5668 J-3.6962
G01 X27.5668
G03 X27.5668 Y37.6962 I-2.5668 J3.6962
G01 X26.2834
Z-4. F300.
X22.4332 F2000.
G03 X22.4332 Y30.3038 I2.5668 J-3.6962
G01 X27.5668
G03 X27.5668 Y37.6962 I-2.5668 J3.6962
G01 X26.2834
Z-6. F300.
X22.4332 F2000.
G03 X22.4332 Y30.3038 I2.5668 J-3.6962
G01 X27.5668
G03 X27.5668 Y37.6962 I-2.5668 J3.6962
G01 X26.2834
Z-8. F300.
X22.4332 F2000.
G03 X22.4332 Y30.3038 I2.5668 J-3.6962
G01 X27.5668
G03 X27.5668 Y37.6962 I-2.5668 J3.6962
G01 X26.2834
Z-10. F300.
X22.4332 F2000.
G03 X22.4332 Y30.3038 I2.5668 J-3.6962
G01 X27.5668
G03 X27.5668 Y37.6962 I-2.5668 J3.6962
G01 X26.2834
Z-12. F300.
X22.4332 F2000.
G03 X22.4332 Y30.3038 I2.5668 J-3.6962
G01 X27.5668
G03 X27.5668 Y37.6962 I-2.5668 J3.6962
G01 X26.2834
G00 Z10.
M05And these are the settings on TinyG:
[fb] firmware build 380.08
[fv] firmware version 0.96
[hv] hardware version
8.00
[id] TinyG ID 1H4973-DHL
[ja] junction acceleration 2000000 mm
[ct] chordal tolerance 0.001 mm
[st] switch type 0 [0=NO,1=NC]
[mt] motor disble timeout 60 Sec
[ej] enable json mode 0 [0=text,1=JSON]
[jv] json verbosity 3 [0=silent,1=footer,2=messages,3=configs,4=linenum,5=verbose]
[tv] text verbosity 0 [0=silent,1=verbose]
[qv] queue report verbosity 0 [0=off,1=filtered,2=verbose]
[sv] status report verbosity 1 [0=off,1=filtered,2=verbose]
[si] status interval 100 ms
[ic] ignore CR or LF on RX 0 [0=off,1=CR,2=LF]
[ec] expand LF to CRLF on TX 0 [0=off,1=on]
[ee] enable echo 0 [0=off,1=on]
[ex] enable flow control 1 [0=off,1=XON/XOFF, 2=RTS/CTS]
[baud] USB baud rate 5 [1=9600,2=19200,3=38400,4=57600,5=115200,6=230400]
[gpl] default gcode plane 0 [0=G17,1=G18,2=G19]
[gun] default gcode units mode 1 [0=G20,1=G21]
[gco] default gcode coord system 1 [1-6 (G54-G59)]
[gpa] default gcode path control 2 [0=G61,1=G61.1,2=G64]
[gdi] default gcode distance mode 0 [0=G90,1=G91]
[1ma] m1 map to axis 0 [0=X,1=Y,2=Z…]
[1sa] m1 step angle 1.800 deg
[1tr] m1 travel per revolution 5.000 mm
[1mi] m1 microsteps 8 [1,2,4,8]
[1po] m1 polarity 0 [0=normal,1=reverse]
[1pm] m1 power management 1 [0=remain powered,1=shut off when idle]
[2ma] m2 map to axis 1 [0=X,1=Y,2=Z…]
[2sa] m2 step angle 1.800 deg
[2tr] m2 travel per revolution 5.000 mm
[2mi] m2 microsteps 8 [1,2,4,8]
[2po] m2 polarity 0 [0=normal,1=reverse]
[2pm] m2 power management 1 [0=remain powered,1=shut off when idle]
[3ma] m3 map to axis 2 [0=X,1=Y,2=Z…]
[3sa] m3 step angle 1.800 deg
[3tr] m3 travel per revolution 4.000 mm
[3mi] m3 microsteps 8 [1,2,4,8]
[3po] m3 polarity 1 [0=normal,1=reverse]
[3pm] m3 power management 1 [0=remain powered,1=shut off when idle]
[4ma] m4 map to axis 3 [0=X,1=Y,2=Z…]
[4sa] m4 step angle 1.800 deg
[4tr] m4 travel per revolution 45.000 mm
[4mi] m4 microsteps 8 [1,2,4,8]
[4po] m4 polarity 0 [0=normal,1=reverse]
[4pm] m4 power management 1 [0=remain powered,1=shut off when idle]
[xam] x axis mode 1 [standard]
[xvm] x velocity maximum 4300.000 mm/min
[xfr] x feedrate maximum 4000.000 mm/min
[xtm] x travel maximum 300.000 mm
[xjm] x jerk maximum 200000000 mm/min^3
[xjh] x jerk homing 1000000000 mm/min^3
[xjd] x junction deviation 0.0500 mm (larger is faster)
[xsn] x switch min 0 [0=off,1=homing,2=limit,3=limit+homing]
[xsx] x switch max 3 [0=off,1=homing,2=limit,3=limit+homing]
[xsv] x search velocity 1000.000 mm/min
[xlv] x latch velocity 100.000 mm/min
[xlb] x latch backoff 4.000 mm
[xzb] x zero backoff 2.000 mm
[yam] y axis mode 1 [standard]
[yvm] y velocity maximum 4300.000 mm/min
[yfr] y feedrate maximum 4000.000 mm/min
[ytm] y travel maximum 270.000 mm
[yjm] y jerk maximum 200000000 mm/min^3
[yjh] y jerk homing 1000000000 mm/min^3
[yjd] y junction deviation 0.0500 mm (larger is faster)
[ysn] y switch min 3 [0=off,1=homing,2=limit,3=limit+homing]
[ysx] y switch max 0 [0=off,1=homing,2=limit,3=limit+homing]
[ysv] y search velocity 1000.000 mm/min
[ylv] y latch velocity 100.000 mm/min
[ylb] y latch backoff 4.000 mm
[yzb] y zero backoff 2.000 mm
[zam] z axis mode 1 [standard]
[zvm] z velocity maximum 4300.000 mm/min
[zfr] z feedrate maximum 4000.000 mm/min
[ztm] z travel maximum 110.000 mm
[zjm] z jerk maximum 200000000 mm/min^3
[zjh] z jerk homing 1000000000 mm/min^3
[zjd] z junction deviation 0.0500 mm (larger is faster)
[zsn] z switch min 0 [0=off,1=homing,2=limit,3=limit+homing]
[zsx] z switch max 3 [0=off,1=homing,2=limit,3=limit+homing]
[zsv] z search velocity 1000.000 mm/min
[zlv] z latch velocity 100.000 mm/min
[zlb] z latch backoff 3.000 mm
[zzb] z zero backoff 1.500 mm
[aam] a axis mode 1 [standard]
[avm] a velocity maximum 172800.000 deg/min
[afr] a feedrate maximum 172800.000 deg/min
[atm] a travel maximum -1.000 deg
[ajm] a jerk maximum
5760000000 deg/min^3
[ajh] a jerk homing 5760000000 mm/min^3
[ajd] a junction deviation 0.0500 deg (larger is faster)
[ara] a radius value 0.1989 deg
[asn] a switch min 1 [0=off,1=homing,2=limit,3=limit+homing]
[asx] a switch max 0 [0=off,1=homing,2=limit,3=limit+homing]
[asv] a search velocity 600.000 deg/min
[alv] a latch velocity 100.000 deg/min
[alb] a latch backoff 5.000 deg
[azb] a zero backoff 2.000 deg
[bam] b axis mode 0 [disabled]
[bvm] b velocity maximum 3600.000 deg/min
[bfr] b feedrate maximum 3600.000 deg/min
[btm] b travel maximum -1.000 deg
[bjm] b jerk maximum 20000000 deg/min^3
[bjd] b junction deviation 0.0500 deg (larger is faster)
[bra] b radius value 1.0000 deg
[cam] c axis mode 0 [disabled]
[cvm] c velocity maximum 3600.000 deg/min
[cfr] c feedrate maximum 3600.000 deg/min
[ctm] c travel maximum -1.000 deg
[cjm] c jerk maximum 20000000 deg/min^3
[cjd] c junction deviation 0.0500 deg (larger is faster)
[cra] c radius value 1.0000 deg
[p1frq] pwm frequency 100.000 Hz
[p1csl] pwm cw speed lo 1000.000 RPM
[p1csh] pwm cw speed hi 2000.000 RPM
[p1cpl] pwm cw phase lo 0.125 [0..1]
[p1cph] pwm cw phase hi 0.200 [0..1]
[p1wsl] pwm ccw speed lo 1000.000 RPM
[p1wsh] pwm ccw speed hi 2000.000 RPM
[p1wpl] pwm ccw phase lo 0.125 [0..1]
[p1wph] pwm ccw phase hi 0.200 [0..1]
[p1pof] pwm phase off 0.100 [0..1]
[g54x] g54 x offset 0.000 mm
[g54y] g54 y offset 0.000 mm
[g54z] g54 z offset 0.000 mm
[g54a] g54 a offset 0.000 deg
[g54b] g54 b offset 0.000 deg
[g54c] g54 c offset 0.000 deg
[g55x] g55 x offset 75.000 mm
[g55y] g55 y offset 75.000 mm
[g55z] g55 z offset 0.000 mm
[g55a] g55 a offset 0.000 deg
[g55b] g55 b offset 0.000 deg
[g55c] g55 c offset 0.000 deg
[g56x] g56 x offset 0.000 mm
[g56y] g56 y offset 0.000 mm
[g56z] g56 z offset 0.000 mm
[g56a] g56 a offset 0.000 deg
[g56b] g56 b offset 0.000 deg
[g56c] g56 c offset 0.000 deg
[g57x] g57 x offset 0.000 mm
[g57y] g57 y offset 0.000 mm
[g57z] g57 z offset 0.000 mm
[g57a] g57 a offset 0.000 deg
[g57b] g57 b offset 0.000 deg
[g57c] g57 c offset 0.000 deg
[g58x] g58 x offset 0.000 mm
[g58y] g58 y offset 0.000 mm
[g58z] g58 z offset 0.000 mm
[g58a] g58 a offset 0.000 deg
[g58b] g58 b offset 0.000 deg
[g58c] g58 c offset 0.000 deg
[g59x] g59 x offset 0.000 mm
[g59y] g59 y offset 0.000 mm
[g59z] g59 z offset 0.000 mm
[g59a] g59 a offset 0.000 deg
[g59b] g59 b offset 0.000 deg
[g59c] g59 c offset 0.000 deg
[g92x] g92 x offset -64.866 mm
[g92y] g92 y offset -29.215 mm
[g92z] g92 z offset -15.000 mm
[g92a] g92 a offset 0.000 deg
[g92b] g92 b offset 0.000 deg
[g92c] g92 c offset 0.000 deg
[g28x] g28 x location 0.000 mm
[g28y] g28 y location 0.000 mm
[g28z] g28 z location 0.000 mm
[g28a] g28 a location 0.000 deg
[g28b] g28 b location 0.000 deg
[g28c] g28 c location 0.000 deg
[g30x] g30 x location 0.000 mm
[g30y] g30 y location 0.000 mm
[g30z] g30 z location 0.000 mm
[g30a] g30 a location 0.000 deg
[g30b] g30 b location 0.000 deg
[g30c] g30 c location 0.000 degDecember 4, 2013 at 11:59 pm #5019RileyKeymasterhow are you sending the files to TinyG?
December 5, 2013 at 4:44 am #5021kajukMemberWith tgFX
December 7, 2013 at 2:32 pm #5031kajukMemberDoes anyone have an idea what the problem is?
Could it be a hardware fault in the TinyG board?December 8, 2013 at 7:49 am #5033aldenMemberLet me take a look at this this week. I am traveling now but will be home mid-week to try it.
December 13, 2013 at 7:15 pm #5058kajukMemberHi alden,
Did you look at it? What are your thoughts about the jerking?
December 14, 2013 at 5:35 pm #5065aldenMemberI have had a chance to run them. There is definitely a “grunch” in the tinyg 380.08 code for the Gcode file you provided. Thanks for posting it. We have been working on another rev that eliminates this (and dome a number of other things). I will post a couple of videos on Flickr or Youtube that show the difference. I’ll either amend this message or post a new one once they are up.
December 14, 2013 at 6:26 pm #5073aldenMemberVideos are here:
…there appears to be something really wrong with trying to embed URLs in the page. So try this. Put the pieces together. Sorry for the inconvenience.
build 380.08
http://youtu.be/ _ObnEoOqpmgbuild 406.03
http://youtu.be/ yut6X3hdJ_0December 14, 2013 at 6:57 pm #5074kajukMemberIt seem to sound better but I need to test it myself to compare to my LinuxCNC. Is this firmware version ready for general use?
December 14, 2013 at 8:00 pm #5075aldenMemberI don’t think I’d run 406.03 just yet. It’s in the dev branch, which is pretty rough. I’d at least wait until (or some later version, more likely) is pushed to edge.
Also, bear in mind that Linux CNC is a venerable code base that can do many. many things that TinyG cannot. There are also things that TinyG does that Linux CNC doesn’t – they are not equivalent.
Are you using NURBS in LinuxCNC to round corners? In TinyG I’d recommend playing with the junction deviation (xjd, yjd) and see what results you get.
December 15, 2013 at 7:43 pm #5076tomking505MemberThis turns out to be the same problem I was having. I thought it was a particular geared stepper motor. But I have seen the same clunking with my other motors.
December 16, 2013 at 3:23 pm #5081MakerboostMemberThat is exactly the problem I’ve been having. My motors kept missing steps at the end of arcs, and I’ve had to be really careful to cut useful pieces. I’m really looking forward to the update as my machine is not very fun to use at the moment.
It’s nice to see the problem replicated on your machine alden 😉 -
AuthorPosts
- You must be logged in to reply to this topic.