Fixed issues with fusion gcode motion control
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "bbctrl",
|
"name": "bbctrl",
|
||||||
"version": "1.0.7",
|
"version": "1.0.8b1",
|
||||||
"homepage": "https://onefinitycnc.com/",
|
"homepage": "https://onefinitycnc.com/",
|
||||||
"repository": "https://github.com/OneFinityCNC/onefinity",
|
"repository": "https://github.com/OneFinityCNC/onefinity",
|
||||||
"license": "GPL-3.0+",
|
"license": "GPL-3.0+",
|
||||||
|
|||||||
@@ -4,8 +4,14 @@ cd /mnt/host
|
|||||||
scons -j 8 -C cbang disable_local="re2 libevent"
|
scons -j 8 -C cbang disable_local="re2 libevent"
|
||||||
export CBANG_HOME="/mnt/host/cbang"
|
export CBANG_HOME="/mnt/host/cbang"
|
||||||
|
|
||||||
perl -i -0pe 's/case 610: setPathMode.*;/case 610: break;/gm' /mnt/host/camotics/src/gcode/ControllerImpl.cpp
|
CAMOTICS_ROOT="/mnt/host/camotics"
|
||||||
perl -i -0pe 's/case 611: setPathMode.*;/case 611: break;/gm' /mnt/host/camotics/src/gcode/ControllerImpl.cpp
|
CAMOTICS_PLAN="${CAMOTICS_ROOT}/src/gcode/plan"
|
||||||
perl -i -0pe 's/case 640: {[^}]+}/case 640: break;/gm' /mnt/host/camotics/src/gcode/ControllerImpl.cpp
|
|
||||||
|
mkdir -p ${CAMOTICS_ROOT}/build
|
||||||
|
touch ${CAMOTICS_ROOT}/build/version.txt
|
||||||
|
|
||||||
|
perl -i -0pe 's/(fabs\((config\.maxVel\[axis\]) \/ unit\[axis\]\));/std::min(\2, \1);/gm' ${CAMOTICS_PLAN}/LineCommand.cpp ${CAMOTICS_PLAN}/LinePlanner.cpp
|
||||||
|
perl -i -0pe 's/(fabs\((config\.maxJerk\[axis\]) \/ unit\[axis\]\));/std::min(\2, \1);/gm' ${CAMOTICS_PLAN}/LineCommand.cpp ${CAMOTICS_PLAN}/LinePlanner.cpp
|
||||||
|
perl -i -0pe 's/(fabs\((config\.maxAccel\[axis\]) \/ unit\[axis\]\));/std::min(\2, \1);/gm' ${CAMOTICS_PLAN}/LineCommand.cpp ${CAMOTICS_PLAN}/LinePlanner.cpp
|
||||||
|
|
||||||
scons -j 8 -C camotics gplan.so with_gui=0 with_tpl=0
|
scons -j 8 -C camotics gplan.so with_gui=0 with_tpl=0
|
||||||
|
|||||||
@@ -164,6 +164,10 @@ class Config(object):
|
|||||||
motor['max-jerk'] = 1000
|
motor['max-jerk'] = 1000
|
||||||
motor['zero-backoff'] = 1
|
motor['zero-backoff'] = 1
|
||||||
|
|
||||||
|
if version < (1, 0, 8):
|
||||||
|
config['settings']['max-deviation'] = 0.05
|
||||||
|
config['settings']['junction-accel'] = 200000
|
||||||
|
|
||||||
config['version'] = self.version.split('b')[0]
|
config['version'] = self.version.split('b')[0]
|
||||||
config['full_version'] = self.version
|
config['full_version'] = self.version
|
||||||
|
|
||||||
|
|||||||
@@ -83,6 +83,7 @@ class Planner():
|
|||||||
state = self.ctrl.state
|
state = self.ctrl.state
|
||||||
config = self.ctrl.config
|
config = self.ctrl.config
|
||||||
is_pwm = config.get('tool-type') == 'PWM Spindle'
|
is_pwm = config.get('tool-type') == 'PWM Spindle'
|
||||||
|
deviation = config.get('max-deviation')
|
||||||
|
|
||||||
cfg = {
|
cfg = {
|
||||||
# NOTE Must get current units not configured default units
|
# NOTE Must get current units not configured default units
|
||||||
@@ -91,8 +92,9 @@ class Planner():
|
|||||||
'max-accel': state.get_axis_vector('am', 1000000),
|
'max-accel': state.get_axis_vector('am', 1000000),
|
||||||
'max-jerk': state.get_axis_vector('jm', 1000000),
|
'max-jerk': state.get_axis_vector('jm', 1000000),
|
||||||
'rapid-auto-off': config.get('rapid-auto-off') and is_pwm,
|
'rapid-auto-off': config.get('rapid-auto-off') and is_pwm,
|
||||||
'max-blend-error': config.get('max-deviation'),
|
'max-blend-error': deviation,
|
||||||
'max-merge-error': config.get('max-deviation'),
|
'max-merge-error': deviation,
|
||||||
|
'max-arc-error': deviation / 10,
|
||||||
'junction-accel': config.get('junction-accel'),
|
'junction-accel': config.get('junction-accel'),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
"help":
|
"help":
|
||||||
"Default allowed deviation from programmed path. Also see G64 & G61.",
|
"Default allowed deviation from programmed path. Also see G64 & G61.",
|
||||||
"type": "float",
|
"type": "float",
|
||||||
"min": 0.001,
|
"min": 0.05,
|
||||||
"max": 100,
|
"max": 100,
|
||||||
"unit": "mm",
|
"unit": "mm",
|
||||||
"default": 0.1
|
"default": 0.1
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
"junction-accel": 200000,
|
"junction-accel": 200000,
|
||||||
"max-deviation": 0.001,
|
"max-deviation": 0.05,
|
||||||
"units": "METRIC",
|
"units": "METRIC",
|
||||||
"probing-prompts": true
|
"probing-prompts": true
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
"junction-accel": 200000,
|
"junction-accel": 200000,
|
||||||
"max-deviation": 0.001,
|
"max-deviation": 0.05,
|
||||||
"units": "METRIC",
|
"units": "METRIC",
|
||||||
"probing-prompts": true
|
"probing-prompts": true
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user