From: Joseph Coffland Date: Mon, 25 Jun 2018 00:25:50 +0000 (-0700) Subject: Implemented fine jogging control in Web interface. #147 X-Git-Url: https://git.buildbotics.com/?a=commitdiff_plain;h=170cd1d2d7613f344e776346ed4598a2b7ff42e9;p=bbctrl-firmware Implemented fine jogging control in Web interface. #147 --- diff --git a/CHANGELOG.md b/CHANGELOG.md index 4118c6f..1d5589f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ Buildbotics CNC Controller Firmware Changelog - Decrease boot time networking delay. - Default to US keyboard layout. #145 - Added configuration option to show metric or imperial units in browser. #74 + - Implemented fine jogging control in Web interface. #147 ## v0.3.24 - Added unhome button on axis position popup. diff --git a/src/jade/templates/axis-control.jade b/src/jade/templates/axis-control.jade index 83be919..37ec1f3 100644 --- a/src/jade/templates/axis-control.jade +++ b/src/jade/templates/axis-control.jade @@ -96,8 +96,10 @@ script#axis-control-template(type="text/x-template") v-if="enabled[1]") use.button(xlink:href="#pie-1", transform="translate(124 111) rotate(-135)") - text(x="125", y="24", transform="rotate(22 125 125)") 100% - text(x="125", y="24", transform="rotate(-22 125 125)") 100% + text(x="125", y="24", transform="rotate(22 125 125)") + | {{adjust | fixed 0}}% + text(x="125", y="24", transform="rotate(-22 125 125)") + | {{adjust | fixed 0}}% use.button(xlink:href="#pie-1", fill="transparent", transform="translate(124 111) rotate(-135)") @@ -119,7 +121,7 @@ script#axis-control-template(type="text/x-template") v-if="enabled[1]") use.button(xlink:href="#pie-2", transform="translate(124 111) rotate(-135)") - text(x="125", y="48") 50% + text(x="125", y="48") {{0.5 * adjust | fixed 1}}% use.button(xlink:href="#pie-2", fill="transparent", transform="translate(124 111) rotate(-135)") @@ -142,7 +144,7 @@ script#axis-control-template(type="text/x-template") v-if="enabled[1]") use.button(xlink:href="#pie-3", transform="translate(124 111) rotate(-135)") - text(x="125", y="73") 25% + text(x="125", y="73") {{0.25 * adjust | fixed 1}}% use.button(xlink:href="#pie-3", fill="transparent", transform="translate(124 111) rotate(-135)") @@ -165,7 +167,7 @@ script#axis-control-template(type="text/x-template") v-if="enabled[1]") use.button(xlink:href="#pie-4", transform="translate(124 111) rotate(-135)") - text(x="125", y="95") 10% + text(x="125", y="95") {{0.1 * adjust | fixed 1}}% use.button(xlink:href="#pie-4", fill="transparent", transform="translate(124 111) rotate(-135)") diff --git a/src/jade/templates/control-view.jade b/src/jade/templates/control-view.jade index 1318ffc..d4e0963 100644 --- a/src/jade/templates/control-view.jade +++ b/src/jade/templates/control-view.jade @@ -267,15 +267,19 @@ script#control-view-template(type="text/x-template") .jog axis-control(axes="XY", :colors="['red', 'green']", :enabled="[enabled('x'), enabled('y')]", - v-if="enabled('x') || enabled('y')") + v-if="enabled('x') || enabled('y')", :adjust="jog_adjust") axis-control(axes="AZ", :colors="['orange', 'blue']", :enabled="[enabled('a'), enabled('z')]", - v-if="enabled('a') || enabled('z')") + v-if="enabled('a') || enabled('z')", :adjust="jog_adjust") axis-control(axes="BC", :colors="['cyan', 'purple']", :enabled="[enabled('b'), enabled('c')]", - v-if="enabled('b') || enabled('c')") + v-if="enabled('b') || enabled('c')", :adjust="jog_adjust") + + .jog-adjust + | Fine adjust + input(type="range", v-model="jog_adjust", min=1, max=100, step=1) center | Left click the axes above holding down the mouse button to jog the diff --git a/src/js/axis-control.js b/src/js/axis-control.js index 059e6b0..bf21b74 100644 --- a/src/js/axis-control.js +++ b/src/js/axis-control.js @@ -30,11 +30,15 @@ module.exports = { template: '#axis-control-template', - props: ['axes', 'colors', 'enabled'], + props: ['axes', 'colors', 'enabled', 'adjust'], methods: { - jog: function (axis, power) {this.$dispatch('jog', this.axes[axis], power)}, + jog: function (axis, power) { + this.$dispatch('jog', this.axes[axis], power * this.adjust / 100.0) + }, + + release: function (axis) {this.$dispatch('jog', this.axes[axis], 0)} } } diff --git a/src/js/control-view.js b/src/js/control-view.js index 05b253f..0ebbb84 100644 --- a/src/js/control-view.js +++ b/src/js/control-view.js @@ -59,6 +59,7 @@ module.exports = { position_msg: {x: false, y: false, z: false, a: false, b: false, c: false}, axis_position: 0, + jog_adjust: 100, video_url: '', deleteGCode: false } diff --git a/src/stylus/style.styl b/src/stylus/style.styl index 7d0ac76..b00e5f0 100644 --- a/src/stylus/style.styl +++ b/src/stylus/style.styl @@ -396,6 +396,14 @@ span.unit > svg margin 1em + .jog-adjust + text-align center + margin-bottom 1em + + input + margin 0 0.5em + vertical-align middle + .console .console-wrapper max-height 400px