Skip to content

Commit dc811ef

Browse files
committed
RC5
1 parent d37d6ca commit dc811ef

File tree

8 files changed

+158
-82
lines changed

8 files changed

+158
-82
lines changed

package-lock.json

Lines changed: 7 additions & 46 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
"vue-i18n": "^9.2.2",
3636
"vue-prism-component": "^2.0.0",
3737
"vue-router": "^4.1.6",
38-
"vuetify": "^3.0.0",
38+
"vuetify": "^3.0.2",
3939
"vuex": "^4.1.0"
4040
},
4141
"devDependencies": {

src/assets/js/blockly/blocks.js

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -504,6 +504,8 @@ Blockly.Blocks.coderbot_adv_move_distance = {
504504
const ACTIONS = [
505505
[Blockly.Msg.CODERBOT_MOVE_ADV_TIP_FORWARD, 'FORWARD'],
506506
[Blockly.Msg.CODERBOT_MOVE_ADV_TIP_BACKWARD, 'BACKWARD'],
507+
[Blockly.Msg.CODERBOT_MOVE_ADV_TIP_LEFT, 'LEFT'],
508+
[Blockly.Msg.CODERBOT_MOVE_ADV_TIP_RIGHT, 'RIGHT'],
507509
];
508510
this.setHelpUrl('http://code.google.com/p/blockly/wiki/Move');
509511
this.setColour(40);
@@ -523,6 +525,8 @@ Blockly.Blocks.coderbot_adv_move_distance = {
523525
const TOOLTIPS = {
524526
FORWARD: Blockly.Msg.CODERBOT_MOVE_ADV_TIP_FORWARD,
525527
BACKWARD: Blockly.Msg.CODERBOT_MOVE_ADV_TIP_BACKWARD,
528+
LEFT: Blockly.Msg.CODERBOT_MOVE_ADV_TIP_LEFT,
529+
RIGHT: Blockly.Msg.CODERBOT_MOVE_ADV_TIP_RIGHT,
526530
};
527531
return TOOLTIPS[mode] + Blockly.Msg.CODERBOT_MOVE_ADV_TIP_TAIL;
528532
});
@@ -539,12 +543,19 @@ Blockly.Python.coderbot_adv_move_distance = function (block) {
539543
const OPERATORS = {
540544
FORWARD: ['forward'],
541545
BACKWARD: ['backward'],
546+
LEFT: ['motor_control'],
547+
RIGHT: ['motor_control'],
542548
};
543549
const tuple = OPERATORS[block.getFieldValue('ACTION')];
544550
const action = tuple[0];
545551
const speed = 100;
546552
const distance = Blockly.Python.valueToCode(block, 'DISTANCE', Blockly.Python.ORDER_NONE);
547-
const code = `${sbsPrefix}get_bot().${action}(speed=${speed}, distance=${distance})\n`;
553+
let code = '';
554+
if(action == 'motor_control') {
555+
code = `${sbsPrefix}get_bot().motor_control(speed_left=${speed}, speed_right=-${speed}, target_distance=${distance})\n`;
556+
} else {
557+
code = `${sbsPrefix}get_bot().${action}(speed=${speed}, distance=${distance})\n`;
558+
}
548559
return code;
549560
};
550561

@@ -555,6 +566,8 @@ Blockly.Blocks.coderbot_adv_move_speed_distance = {
555566
const ACTIONS = [
556567
[Blockly.Msg.CODERBOT_MOVE_ADV_TIP_FORWARD, 'FORWARD'],
557568
[Blockly.Msg.CODERBOT_MOVE_ADV_TIP_BACKWARD, 'BACKWARD'],
569+
[Blockly.Msg.CODERBOT_MOVE_ADV_TIP_LEFT, 'LEFT'],
570+
[Blockly.Msg.CODERBOT_MOVE_ADV_TIP_RIGHT, 'RIGHT'],
558571
];
559572
this.setHelpUrl('http://code.google.com/p/blockly/wiki/Move');
560573
this.setColour(40);
@@ -590,12 +603,19 @@ Blockly.Python.coderbot_adv_move_speed_distance = function (block) {
590603
const OPERATORS = {
591604
FORWARD: ['forward'],
592605
BACKWARD: ['backward'],
606+
LEFT: ['motor_control'],
607+
RIGHT: ['motor_control'],
593608
};
594609
const tuple = OPERATORS[block.getFieldValue('ACTION')];
595610
const action = tuple[0];
596611
const speed = Blockly.Python.valueToCode(block, 'SPEED', Blockly.Python.ORDER_NONE);
597612
const distance = Blockly.Python.valueToCode(block, 'DISTANCE', Blockly.Python.ORDER_NONE);
598-
const code = `${sbsPrefix}get_bot().${action}(speed=${speed}, distance=${distance})\n`;
613+
let code = '';
614+
if(action == 'motor_control') {
615+
code = `${sbsPrefix}get_bot().motor_control(speed_left=${speed}, speed_right=-${speed}, target_distance=${distance})\n`;
616+
} else {
617+
code = `${sbsPrefix}get_bot().${action}(speed=${speed}, distance=${distance})\n`;
618+
}
599619
return code;
600620
};
601621

src/common/coderbot.js

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,9 +181,18 @@ class CoderBot {
181181
data.ctrlFwdSpeed = remoteConfig.ctrl_fw_speed;
182182
data.ctrlTurnElapse = remoteConfig.ctrl_tr_elapse;
183183
data.ctrlTurnSpeed = remoteConfig.ctrl_tr_speed;
184+
data.pidKP = remoteConfig.pid_kp
185+
data.pidKD = remoteConfig.pid_kd;
186+
data.pidKI = remoteConfig.pid_ki;
187+
data.pidMaxSpeed = remoteConfig.pid_max_speed,
188+
data.pidSampleTime = remoteConfig.pid_sample_time,
184189
data.audioLevel = remoteConfig.audio_volume_level;
185190
data.adminPassword = remoteConfig.admin_password;
186191
data.hardwareVersion = remoteConfig.hardware_version;
192+
data.progScrollbars = remoteConfig.prog_scrollbars;
193+
data.movementUseMPU = remoteConfig.movement_use_mpu;
194+
data.movementUseMotion = remoteConfig.movement_use_motion;
195+
data.movementUseEncoder = remoteConfig.movement_use_encoder;
187196
this.$store.commit('setSettings', data);
188197
}
189198

@@ -220,13 +229,22 @@ class CoderBot {
220229
move_fw_speed: settings.moveFwdSpeed,
221230
move_tr_elapse: settings.moveTurnElapse,
222231
move_tr_speed: settings.moveTurnSpeed,
232+
pid_kp: settings.pidKP,
233+
pid_kd: settings.pidKP,
234+
pid_ki: settings.pidKI,
235+
pid_max_speed: settings.pidMaxSpeed,
236+
pid_sample_time: settings.pidSampleTime,
223237
ctrl_fw_elapse: settings.ctrlFwdElapse,
224238
ctrl_fw_speed: settings.ctrlFwdSpeed,
225239
ctrl_tr_elapse: settings.ctrlTurnElapse,
226240
ctrl_tr_speed: settings.ctrlTurnSpeed,
227241
audio_volume_level: settings.audioLevel,
228242
admin_password: settings.adminPassword,
229243
hardware_version: settings.hardwareVersion,
244+
prog_scrollbars: settings.progScrollbars,
245+
movement_use_mpu: settings.movementUseMPU,
246+
movement_use_motion: settings.movementUseMotion,
247+
movement_use_encoder: settings.movementUseEncoder
230248
};
231249
this.$store.commit('setSettings', settings);
232250
return this.$axios.put(`${this.CB}/settings`, legacySettings);
@@ -371,10 +389,11 @@ class CoderBot {
371389
});
372390
}
373391

374-
turn(speed, elapse) {
392+
turn(speed, elapse, distance) {
375393
return this.$axios.post(`${this.CB}/control/turn`, {
376394
speed: speed,
377-
elapse: elapse
395+
elapse: elapse,
396+
distance: distance
378397
});
379398
}
380399

src/components/BlocklyWorkspace.vue

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -147,11 +147,10 @@ export default {
147147
Blockly.Blocks.CoderBotSettings.CODERBOT_MOV_FW_DEF_ELAPSE = settings.moveFwdElapse; // to check
148148
Blockly.Blocks.CoderBotSettings.CODERBOT_MOV_TR_DEF_SPEED = settings.moveTurnSpeed;
149149
Blockly.Blocks.CoderBotSettings.CODERBOT_MOV_TR_DEF_ELAPSE = settings.moveTurnElapse; // to check
150-
Blockly.Blocks.CoderBotSettings.CODERBOT_PROG_MOVE_MOTION = false; // should come from config
151-
Blockly.Blocks.CoderBotSettings.CODERBOT_PROG_MOVE_MPU = false; // should come from config
152-
Blockly.Blocks.CoderBotSettings.CODERBOT_ENCODER_AVAILABLE = true; // should come from config
150+
Blockly.Blocks.CoderBotSettings.CODERBOT_PROG_MOVE_MOTION = settings.movementUseMotion; // should come from config
151+
Blockly.Blocks.CoderBotSettings.CODERBOT_PROG_MOVE_MPU = settings.movementUseMPU; // should come from config
152+
Blockly.Blocks.CoderBotSettings.CODERBOT_ENCODER_AVAILABLE = settings.movementUseEncoder; // should come from config
153153
Blockly.Blocks.CoderBotSettings.CODERBOT_PROG_LEVEL = settings.progLevel;
154-
155154
Blockly.Blocks.CoderBotSettings.CODERBOT_PROG_SCROLLBARS = true; // to check
156155
Blockly.Blocks.CoderBotSettings.CODERBOT_PROG_MAXBLOCKS = -1;
157156
Blockly.Blocks.CoderBotSettings.CODERBOT_PROG_SAVEONRUN = true; // to check
@@ -160,8 +159,8 @@ export default {
160159
Blockly.Blocks.CoderBotSettings.CODERBOT_CTRL_TR_SPEED = settings.ctrlTurnSpeed;
161160
Blockly.Blocks.CoderBotSettings.CODERBOT_CTRL_TR_ELAPSE = settings.ctrlTurnElapse; // to check
162161
Blockly.Blocks.CoderBotSettings.CODERBOT_CTRL_COUNTER = true; // to check, never used
163-
Blockly.Blocks.CoderBotSettings.CODERBOT_CTRL_MOVE_MOTION = false; // should come from config
164-
Blockly.Blocks.CoderBotSettings.CODERBOT_CTRL_MOVE_MPU = false; // should come from config
162+
Blockly.Blocks.CoderBotSettings.CODERBOT_CTRL_MOVE_MOTION = settings.movementUseMotion; // should come from config
163+
Blockly.Blocks.CoderBotSettings.CODERBOT_CTRL_MOVE_MPU = settings.movementUseMPU; // should come from config
165164
Blockly.Blocks.CoderBotSettings.CODERBOT_CNN_MODEL_LIST = [
166165
['generic_fast_low', 'generic_fast_low'],
167166
['generic_slow_high', 'generic_slow_high'],

src/components/Control.vue

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,8 @@ export default {
206206
// RIGHT, turn right
207207
this.$coderbot.turn(
208208
-80, // speed
209-
-1 // elapse
209+
- 1, // elapse
210+
null
210211
)
211212
.catch((error) => {
212213
console.log(`turn error: ${error}`);
@@ -215,7 +216,8 @@ export default {
215216
// LEFT, turn left
216217
this.$coderbot.turn(
217218
80, // speed
218-
-1 // elapse
219+
-1, // elapse
220+
null
219221
)
220222
.catch((error) => {
221223
console.log(`turn error: ${error}`);

0 commit comments

Comments
 (0)