@@ -1330,7 +1330,7 @@ Blockly.Blocks['niryo_one_conveyor_models'] = {
1330
1330
1331
1331
Blockly . Blocks [ 'niryo_one_conveyor_use' ] = {
1332
1332
init : function ( ) {
1333
- this . appendDummyInput ( ) . appendField ( 'Activate conveyor' ) ;
1333
+ this . appendDummyInput ( ) . appendField ( 'Activate conveyor and return its ID ' ) ;
1334
1334
this . setColour ( conveyor_color ) ;
1335
1335
this . setOutput ( true , 'String' ) ;
1336
1336
this . setHelpUrl ( '' ) ;
@@ -1340,6 +1340,20 @@ Blockly.Blocks['niryo_one_conveyor_use'] = {
1340
1340
}
1341
1341
} ;
1342
1342
1343
+ Blockly . Blocks [ 'niryo_one_conveyor_unset' ] = {
1344
+ init : function ( ) {
1345
+ this . appendValueInput ( 'CONVEYOR_SWITCH' )
1346
+ . setCheck ( 'niryo_one_conveyor_models' )
1347
+ . appendField ( 'Remove conveyor' ) ;
1348
+
1349
+ this . setColour ( conveyor_color ) ;
1350
+ this . setHelpUrl ( '' ) ;
1351
+ this . setTooltip ( 'Remove specific conveyor.' ) ;
1352
+ this . setPreviousStatement ( true , null ) ;
1353
+ this . setNextStatement ( true , null ) ;
1354
+ }
1355
+ } ;
1356
+
1343
1357
Blockly . Blocks [ 'niryo_one_conveyor_control' ] = {
1344
1358
init : function ( ) {
1345
1359
this . appendValueInput ( 'CONVEYOR_SWITCH' )
@@ -1369,6 +1383,34 @@ Blockly.Blocks['niryo_one_conveyor_control'] = {
1369
1383
}
1370
1384
} ;
1371
1385
1386
+ Blockly . Blocks [ 'niryo_one_conveyor_run' ] = {
1387
+ init : function ( ) {
1388
+ this . appendValueInput ( 'CONVEYOR_SWITCH' )
1389
+ . setCheck ( 'niryo_one_conveyor_models' )
1390
+ . appendField ( 'Run conveyor:' ) ;
1391
+
1392
+ this . appendValueInput ( 'SPEED_PERCENT' )
1393
+ . setCheck ( 'Number' )
1394
+ . appendField ( 'with speed (%):' ) ;
1395
+
1396
+ this . appendDummyInput ( )
1397
+ . appendField ( 'in direction:' )
1398
+ . appendField (
1399
+ new Blockly . FieldDropdown ( [
1400
+ [ 'FORWARD' , '1' ] ,
1401
+ [ 'BACKWARD' , '-1' ]
1402
+ ] ) ,
1403
+ 'DIRECTION_SELECT'
1404
+ ) ;
1405
+ this . setColour ( conveyor_color ) ;
1406
+ this . setHelpUrl ( '' ) ;
1407
+ this . setTooltip ( 'Run conveyor' ) ;
1408
+ this . setPreviousStatement ( true , null ) ;
1409
+ this . setNextStatement ( true , null ) ;
1410
+ this . setInputsInline ( false ) ;
1411
+ }
1412
+ } ;
1413
+
1372
1414
Blockly . Blocks [ 'niryo_one_conveyor_stop' ] = {
1373
1415
init : function ( ) {
1374
1416
this . appendValueInput ( 'CONVEYOR_SWITCH' )
@@ -1383,6 +1425,17 @@ Blockly.Blocks['niryo_one_conveyor_stop'] = {
1383
1425
}
1384
1426
} ;
1385
1427
1428
+ Blockly . Blocks [ 'niryo_one_get_connected_conveyors_id' ] = {
1429
+ init : function ( ) {
1430
+ this . appendDummyInput ( ) . appendField ( 'Get list of connected conveyors' ) ;
1431
+ this . setOutput ( true , null ) ;
1432
+ this . setColour ( conveyor_color ) ;
1433
+ this . setPreviousStatement ( true , null ) ;
1434
+ this . setNextStatement ( true , null ) ;
1435
+ this . setHelpUrl ( '' ) ;
1436
+ this . setTooltip ( 'Conveyors directions available with Niryo One.' ) ;
1437
+ }
1438
+ } ;
1386
1439
/*
1387
1440
* Generators
1388
1441
*/
@@ -2215,6 +2268,20 @@ BlocklyPy['niryo_one_conveyor_use'] = function (block) {
2215
2268
return code ;
2216
2269
} ;
2217
2270
2271
+ BlocklyPy [ 'niryo_one_conveyor_use' ] = function ( block ) {
2272
+ var code = 'n.set_conveyor()\n' ;
2273
+ return code ;
2274
+ } ;
2275
+
2276
+ BlocklyPy [ 'niryo_one_conveyor_unset' ] = function ( block ) {
2277
+ var conveyor_id =
2278
+ BlocklyPy . valueToCode ( block , 'CONVEYOR_SWITCH' , BlocklyPy . ORDER_ATOMIC ) ||
2279
+ '(0)' ;
2280
+ conveyor_id = conveyor_id . replace ( '(' , '' ) . replace ( ')' , '' ) ;
2281
+ var code = 'n.unset_conveyor(' + conveyor_id + ')\n' ;
2282
+ return code ;
2283
+ } ;
2284
+
2218
2285
BlocklyPy [ 'niryo_one_conveyor_control' ] = function ( block ) {
2219
2286
var conveyor_id =
2220
2287
BlocklyPy . valueToCode ( block , 'CONVEYOR_SWITCH' , BlocklyPy . ORDER_ATOMIC ) ||
@@ -2236,6 +2303,27 @@ BlocklyPy['niryo_one_conveyor_control'] = function (block) {
2236
2303
return code ;
2237
2304
} ;
2238
2305
2306
+ BlocklyPy [ 'niryo_one_conveyor_run' ] = function ( block ) {
2307
+ var conveyor_id =
2308
+ BlocklyPy . valueToCode ( block , 'CONVEYOR_SWITCH' , BlocklyPy . ORDER_ATOMIC ) ||
2309
+ '(0)' ;
2310
+ conveyor_id = conveyor_id . replace ( '(' , '' ) . replace ( ')' , '' ) ;
2311
+ var speed_percent =
2312
+ BlocklyPy . valueToCode ( block , 'SPEED_PERCENT' , BlocklyPy . ORDER_ATOMIC ) ||
2313
+ '(0)' ;
2314
+ speed_percent = speed_percent . replace ( '(' , '' ) . replace ( ')' , '' ) ;
2315
+ var direction = block . getFieldValue ( 'DIRECTION_SELECT' ) ;
2316
+ var code =
2317
+ 'n.run_conveyor(' +
2318
+ conveyor_id +
2319
+ ', ' +
2320
+ speed_percent +
2321
+ ', ' +
2322
+ direction +
2323
+ ')\n' ;
2324
+ return code ;
2325
+ } ;
2326
+
2239
2327
BlocklyPy [ 'niryo_one_conveyor_stop' ] = function ( block ) {
2240
2328
var conveyor_id =
2241
2329
BlocklyPy . valueToCode ( block , 'CONVEYOR_SWITCH' , BlocklyPy . ORDER_ATOMIC ) ||
@@ -2245,6 +2333,11 @@ BlocklyPy['niryo_one_conveyor_stop'] = function (block) {
2245
2333
return code ;
2246
2334
} ;
2247
2335
2336
+ BlocklyPy [ 'niryo_one_get_connected_conveyors_id' ] = function ( block ) {
2337
+ var code = 'n.get_connected_conveyors_id()\n' ;
2338
+ return code ;
2339
+ } ;
2340
+
2248
2341
// Creating a toolbox containing all the main (default) blocks.
2249
2342
const TOOLBOX = {
2250
2343
kind : 'categoryToolbox' ,
@@ -2858,13 +2951,25 @@ const TOOLBOX = {
2858
2951
kind : 'BLOCK' ,
2859
2952
type : 'niryo_one_conveyor_use'
2860
2953
} ,
2954
+ {
2955
+ kind : 'BLOCK' ,
2956
+ type : 'niryo_one_conveyor_unset'
2957
+ } ,
2861
2958
{
2862
2959
kind : 'BLOCK' ,
2863
2960
type : 'niryo_one_conveyor_control'
2864
2961
} ,
2962
+ {
2963
+ kind : 'BLOCK' ,
2964
+ type : 'niryo_one_conveyor_run'
2965
+ } ,
2865
2966
{
2866
2967
kind : 'BLOCK' ,
2867
2968
type : 'niryo_one_conveyor_stop'
2969
+ } ,
2970
+ {
2971
+ kind : 'BLOCK' ,
2972
+ type : 'niryo_one_get_connected_conveyors_id'
2868
2973
}
2869
2974
]
2870
2975
}
0 commit comments