板载智能部分增加

This commit is contained in:
Irene-Maxine
2025-05-25 15:45:42 +08:00
parent b53548462a
commit 5c69891c4b
15 changed files with 846 additions and 315 deletions

View File

@@ -951,7 +951,7 @@ export const set_power_output = {
this.appendDummyInput()
.appendField(Blockly.Msg.LISTS_SET_INDEX_SET + Blockly.Msg.ME_GO_MOTOR_EXTERN)
.appendField(Blockly.Msg.PIN_NUMBERING)
.appendField(new Blockly.FieldDropdown([["1", "1"], ["2", "2"], ["3", "3"]]), "index");
.appendField(new Blockly.FieldDropdown([["1", "1"], ["2", "2"], ["3", "3"],["4", "4"]]), "index");
this.appendValueInput('duty')
.setCheck(Number)
.setAlign(Blockly.inputs.Align.RIGHT)

View File

@@ -0,0 +1,474 @@
import * as Blockly from 'blockly/core';
const AI_LOCAL_VOICE_HUE = '#D1D431';
const AI_LOCAL_GRAPH_HUE = '#90A244';
//voice part
export const CI130X_IDENTIFY_AND_SAVE_SANT = {
init: function () {
this.setColour(AI_LOCAL_VOICE_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_AipSpeech_asr + Blockly.Msg.MIXLY_IDENTIFY_ONCE_AND_SAVE)
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const CI130X_GET_WHETHER_IDENTIFY_SANT = {
init: function () {
this.setColour(AI_LOCAL_VOICE_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_AipSpeech_asr + Blockly.Msg.MIXLY_GET)
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.MIXLY_HELLO_XIAOZHI, "1"],
[Blockly.Msg.MIXLY_XIAOZHIXIAOZHI, "2"],
[Blockly.Msg.MIXLY_THE_FIRST, "3"],
[Blockly.Msg.MIXLY_THE_SECOND, "4"],
[Blockly.Msg.MIXLY_THE_THIRD, "5"],
[Blockly.Msg.MIXLY_THE_FOURTH, "6"],
[Blockly.Msg.MIXLY_THE_FIFTH, "7"],
[Blockly.Msg.MIXLY_THE_SIXTH, "8"],
[Blockly.Msg.MIXLY_THE_SEVENTH, "9"],
[Blockly.Msg.MIXLY_THE_EIGHTH, "10"],
[Blockly.Msg.MIXLY_THE_NINTH, "11"],
[Blockly.Msg.MIXLY_THE_TENTH, "12"],
[Blockly.Msg.MIXLY_THE_ELEVENTH, "13"],
[Blockly.Msg.MIXLY_THE_TWELFTH, "14"],
[Blockly.Msg.MIXLY_THE_13TH, "15"],
[Blockly.Msg.MIXLY_THE_14TH, "16"],
[Blockly.Msg.MIXLY_THE_15TH, "17"],
[Blockly.Msg.MIXLY_THE_16TH, "18"],
[Blockly.Msg.MIXLY_THE_17TH, "19"],
[Blockly.Msg.MIXLY_THE_18TH, "20"],
[Blockly.Msg.MIXLY_THE_19TH, "21"],
[Blockly.Msg.MIXLY_THE_20TH, "22"],
[Blockly.Msg.MIXLY_Turn_on_the_lights, "23"],
[Blockly.Msg.MIXLY_Turn_off_the_lights, "24"],
[Blockly.Msg.MIXLY_Turn_up_the_brightness, "25"],
[Blockly.Msg.MIXLY_Turn_down_the_brightness, "26"],
[Blockly.Msg.MIXLY_Set_it_to_red, "27"],
[Blockly.Msg.MIXLY_Set_it_to_orange, "28"],
[Blockly.Msg.MIXLY_Set_it_to_yellow, "29"],
[Blockly.Msg.MIXLY_Set_it_to_green, "30"],
[Blockly.Msg.MIXLY_Set_it_to_cyan, "31"],
[Blockly.Msg.MIXLY_Set_it_to_blue, "32"],
[Blockly.Msg.MIXLY_Set_it_to_purple, "33"],
[Blockly.Msg.MIXLY_Set_it_to_white, "34"],
[Blockly.Msg.MIXLY_Turn_on_the_fan, "35"],
[Blockly.Msg.MIXLY_Turn_off_the_fan, "36"],
[Blockly.Msg.MIXLY_First_gear, "37"],
[Blockly.Msg.MIXLY_Wind_speed_second, "38"],
[Blockly.Msg.MIXLY_Third_gear, "39"],
[Blockly.Msg.MIXLY_Previous, "40"],
[Blockly.Msg.MIXLY_Next_page, "41"],
[Blockly.Msg.MIXLY_Show_smiley_face, "42"],
[Blockly.Msg.MIXLY_Show_crying_face, "43"],
[Blockly.Msg.MIXLY_Show_love, "44"],
[Blockly.Msg.MIXLY_Close_display, "45"],
[Blockly.Msg.MIXLY_Start_execution, "46"],
[Blockly.Msg.MIXLY_FORWARD, "47"],
[Blockly.Msg.MIXLY_BACKWARD, "48"],
[Blockly.Msg.MIXLY_TURNLEFT, "49"],
[Blockly.Msg.MIXLY_TURNRIGHT, "50"],
[Blockly.Msg.MIXLY_STOP, "51"],
[Blockly.Msg.MIXLY_Accelerate, "52"],
[Blockly.Msg.MIXLY_retard, "53"],
[Blockly.Msg.ROTATION_FORWARD, "54"],
[Blockly.Msg.ROTATION_BACKWARD, "55"],
[Blockly.Msg.MIXLY_Query_temperature, "56"],
[Blockly.Msg.MIXLY_Query_humidity, "57"],
[Blockly.Msg.MIXLY_Query_brightness, "58"],
[Blockly.Msg.MIXLY_Query_sound, "59"],
[Blockly.Msg.MIXLY_Query_time, "60"],
[Blockly.Msg.MIXLY_Query_distance, "61"],
[Blockly.Msg.MIXLY_Query_pressure, "62"],
[Blockly.Msg.MIXLY_Query_key, "63"],
[Blockly.Msg.MIXLY_Query_touch, "64"],
[Blockly.Msg.MIXLY_Query_color, "65"]
]), "cmd")
.appendField(Blockly.Msg.MIXLY_WHETHER + Blockly.Msg.MIXLY_BE_IDENTIFIED);
this.setOutput(true);
this.setInputsInline(true);
}
};
export const CI130X_GET_THE_RECOGNIZED_CMD_SANT = {
init: function () {
this.setColour(AI_LOCAL_VOICE_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_AipSpeech_asr + Blockly.Msg.MIXLY_GET)
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.MIXLY_RECOGNIZED_STATE, "status1"],
[Blockly.Msg.MIXLY_WHETHER_BROADCAST, "status2"],
[Blockly.Msg.MIXLY_THE_RECOGNIZED_CMD, "result"]
]), "key")
this.setOutput(true);
this.setInputsInline(true);
this.setTooltip(Blockly.Msg.MIXLY_CI130X_GET_THE_RECOGNIZED_STATE_TOOLTIP);
}
};
export const CI130X_BROADCAST_SANT = {
init: function () {
this.setColour(AI_LOCAL_VOICE_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_AipSpeech_asr + Blockly.Msg.MIXLY_MP3_PLAY)
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.MIXLY_MICROBIT_JS_INOUT_PULL_NONE, "None"],
[Blockly.Msg.MIXLY_WIND_SPEED, "154"],
[Blockly.Msg.MIXLY_HYETAL, "155"],
[Blockly.Msg.MIXLY_TEMPERATURE, "156"],
[Blockly.Msg.MIXLY_Humidity, "157"],
[Blockly.Msg.MIXLY_Altitude, "158"],
[Blockly.Msg.MIXLY_SOUND, "159"],
[Blockly.Msg.MIXLY_BRIGHTNESS, "160"],
[Blockly.Msg.ME_GO_HALL_SENSOR_DISTANCE, "161"],
[Blockly.Msg.MIXLY_SERVO, "162"],
[Blockly.Msg.MIXLY_MICROBIT_JS_BY_ANGLE, "163"],
[Blockly.Msg.MIXLY_BUTTON2, "164"],
[Blockly.Msg.MIXLY_ESP32_TOUCH, "165"],
[Blockly.Msg.MIXLY_PAY, "166"],
[Blockly.Msg.MIXLY_CARSH_CHANGE, "167"],
[Blockly.Msg.MIXLY_COUNTDOWN, "168"],
[Blockly.Msg.MIXLY_TIMING, "169"],
[Blockly.Msg.MIXLY_AT_THE_MOMENT, "170"],
[Blockly.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE, "171"],
[Blockly.Msg.MIXLY_FORWARD, "172"],
[Blockly.Msg.MIXLY_BACKWARD, "173"],
[Blockly.Msg.MIXLY_TURNLEFT, "174"],
[Blockly.Msg.MIXLY_TURNRIGHT, "175"],
[Blockly.Msg.MIXLY_STOP, "176"],
[Blockly.Msg.MIXLY_Accelerate, "177"],
[Blockly.Msg.MIXLY_retard, "178"],
[Blockly.Msg.ROTATION_FORWARD, "179"],
[Blockly.Msg.ROTATION_BACKWARD, "180"],
[Blockly.Msg.TUPLE_JOIN, "181"],
[Blockly.Msg.MIXLY_SHOW, "182"],
[Blockly.Msg.MIXLY_LAMPLIGHT, "183"],
[Blockly.Msg.MIXLY_ACCELERATION, "184"]
]), "star");
this.appendValueInput('NUM')
.appendField(Blockly.Msg.MIXLY_NUMBER);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_UNIT)
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.MIXLY_MICROBIT_JS_INOUT_PULL_NONE, "None"],
[Blockly.Msg.MIXLY_YEAR, "117"],
[Blockly.Msg.MIXLY_MONTH, "118"],
[Blockly.Msg.MIXLY_DAY, "119"],
[Blockly.Msg.MIXLY_HOUR, "120"],
[Blockly.Msg.MIXLY_MINUTE, "121"],
[Blockly.Msg.MIXLY_SECOND, "122"],
[Blockly.Msg.MIXLY_WEEK2, "123"],
[Blockly.Msg.MIXLY_RMB_UNIT, "124"],
[Blockly.Msg.blockpy_setheading_degree, "125"],
[Blockly.Msg.MIXLY_GEAR, "126"],
[Blockly.Msg.MIXLY_LAYER, "127"],
[Blockly.Msg.MIXLY_GRAM, "128"],
[Blockly.Msg.MIXLY_METER, "129"],
[Blockly.Msg.MIXLY_CENTIMETER, "130"],
[Blockly.Msg.MIXLY_MILLIMETER, "131"],
[Blockly.Msg.MIXLY_LUMEN, "132"],
[Blockly.Msg.MIXLY_DECIBEL, "133"],
[Blockly.Msg.MIXLY_hectopascal, "134"],
[Blockly.Msg.MIXLY_PERCENT, "135"],
[Blockly.Msg.MIXLY_CELSIUS, "136"],
[Blockly.Msg.MIXLY_METER_PER_SEC, "137"],
[Blockly.Msg.MIXLY_MICROBIT_Turn_on_display, "138"],
[Blockly.Msg.MIXLY_MICROBIT_Turn_off_display, "139"],
[Blockly.Msg.MIXLY_SUCCESS, "140"],
[Blockly.Msg.MIXLY_FAILED, "141"],
[Blockly.Msg.MIXLY_WRONG, "142"],
[Blockly.Msg.MIXLY_GOOD, "143"],
[Blockly.Msg.MIXLY_blockpy_set_add, "144"],
[Blockly.Msg.MIXLY_DECREASE, "145"],
[Blockly.Msg.COLOUR_RGB_RED, "146"],
[Blockly.Msg.COLOUR_RGB_ORANGE, "147"],
[Blockly.Msg.COLOUR_YELLOW, "148"],
[Blockly.Msg.COLOUR_RGB_GREEN, "149"],
[Blockly.Msg.COLOUR_CYAN, "150"],
[Blockly.Msg.COLOUR_RGB_BLUE, "151"],
[Blockly.Msg.COLOUR_RGB_PURPLE, "152"],
[Blockly.Msg.COLOUR_RGB_WHITE, "153"]
]), "end");
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
}
export const CI130X_SET_SYSTEM_CMD_SANT = {
init: function () {
this.setColour(AI_LOCAL_VOICE_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_AipSpeech_asr + Blockly.Msg.LISTS_SET_INDEX_SET + Blockly.Msg.MIXLY_SYSTEM + Blockly.Msg.MIXLY_CMD)
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.MILXY_ENTER_WAKE_UP, "1"],
[Blockly.Msg.MIXLY_INCREASE_VOLUME, "202"],
[Blockly.Msg.MIXLY_REDUCE_VOLUME, "203"],
[Blockly.Msg.MIXLY_MAX_VOLUME, "204"],
[Blockly.Msg.MIXLY_MINIMUM, "205"],
[Blockly.Msg.MIXLY_OPEN_RESPONSE, "206"],
[Blockly.Msg.MIXLY_CLOSE_RESPONSE, "207"],
[Blockly.Msg.MIXLY_QUIT_WAKE_UP, "208"]
]), "cmd")
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
//graph part
export const CREATE_CAMERA = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_SETUP + Blockly.Msg.MIXLY_SMARTCAMERA)
.appendField(Blockly.Msg.LISTS_SET_INDEX_SET + Blockly.Msg.MIXLY_SHOOTING_SIZE)
.appendField(new Blockly.FieldDropdown([
['VGA : 640px*480px', "VGA"],
['QVGA : 320px*240px', "QVGA"],
['LCD : 240px*240px', "LCD"],
['QQVGA : 160px*120px', "QQVGA"]
]), "cmd")
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const SHOOT_AND_SAVE_PICTURE = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendValueInput('direct')
.appendField(Blockly.Msg.MIXLY_SHOOT_AND_SAVE_PICTURE)
.appendField(Blockly.Msg.LISTS_SET_INDEX_SET + Blockly.Msg.MICROPYTHON_HUSKYLENS_SAVE_AS + Blockly.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const GET_PICTURE_DATA = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput()
.appendField(Blockly.Msg.MIXLY_GET_PICTURE_DATA);
this.setOutput(true);
this.setInputsInline(true);
}
};
export const SCREEN_SHOW_CAM_GRAPH_SHOOT = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput()
.appendField(Blockly.Msg.MIXlY_SCREEN_SHOW_CAM_SHOOT);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const STOP_SCREEN_DISPLAY = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput()
.appendField(Blockly.Msg.MIXlY_STOP_SCREEN_DISPLAY);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const INIT_QR_CODE_RECOGNITION= {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_SETUP + Blockly.Msg.MIXLY_QR_CODE_RECOGNTITION);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const START_QR_CODE_RECOGNITION= {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_MSTIMER2_START + Blockly.Msg.MIXLY_QR_CODE + Blockly.Msg.MIXLY_RECOGNITION);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const GET_QR_CODE_RECOGNITION_DATA = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput()
.appendField(Blockly.Msg.MIXLY_GET_QR_CODE_RECOGNITION_RESULT);
this.setOutput(true);
this.setInputsInline(true);
this.setTooltip(Blockly.Msg.MIXLY_GET_QR_CODE_RECOGNITION_RESULT_TOOLTIP);
}
};
export const INIT_COLOR_DETECTION= {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_SETUP + Blockly.Msg.MIXLY_ESP32_APDS9960_COLOR);
this.appendDummyInput("")
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.COLOUR_RGB_RED,"0"],
[Blockly.Msg.COLOUR_RGB_ORANGE,"1"],
[Blockly.Msg.COLOUR_RGB_YELLOW,"2"],
[Blockly.Msg.COLOUR_RGB_GREEN,"3"],
[Blockly.Msg.COLOUR_RGB_CYAN,"4"],
[Blockly.Msg.COLOUR_RGB_BLUE,"5"],
[Blockly.Msg.COLOUR_RGB_PURPLE,"6"],
[Blockly.Msg.COLOUR_RGB_WHITE,"7"],
[Blockly.Msg.COLOUR_RGB_GREY,"8"],
[Blockly.Msg.MIXLY_CUSTOM_STUDY,"9"]
]),'color')
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const START_COLOR_DETECTION= {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_MSTIMER2_START + Blockly.Msg.HTML_COLOUR + Blockly.Msg.MIXLY_RECOGNITION);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const GET_COLOR_DETECTION_RESULT = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput()
.appendField(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT);
this.setOutput(true);
this.setInputsInline(true);
this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
}
};
export const INIT_CAT_FACE_DETECTION= {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_SETUP + Blockly.Msg.MIXLY_CAT_FACE +Blockly.Msg.MIXLY_RECOGNITION);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const START_CAT_FACE_DETECTION= {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_MSTIMER2_START + Blockly.Msg.MIXLY_CAT_FACE + Blockly.Msg.MIXLY_RECOGNITION);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const GET_CAT_FACE_DETECTION_RESULT = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput()
.appendField(Blockly.Msg.MIXLY_GET_CAT_FACE_DETECTION_RESULT);
this.setOutput(true);
this.setInputsInline(true);
}
};
export const INIT_PEOPLE_FACE_DETECTION= {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_SETUP + Blockly.Msg.MIXLY_FACE_CLASSIFIER);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const START_PEOPLE_FACE_DETECTION= {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_MSTIMER2_START + Blockly.Msg.MIXLY_FACE_CLASSIFIER + '/' + Blockly.Msg.MIXLY_AipFace);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const GET_PEOPLE_FACE_DETECTION_RESULT = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput()
.appendField(Blockly.Msg.MIXLY_GET_PEOPLE_FACE_DETECTION_RESULT);
this.setOutput(true);
this.setInputsInline(true);
this.setTooltip(Blockly.Msg.MIXLY_GET_PEOPLE_FACE_DETECTION_RESULT_TOOLTIP);
}
};
export const INIT_PEOPLE_FACE_RECOGNITION= {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_SETUP + Blockly.Msg.MIXLY_AipFace);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const PEOPLE_FACE_ENROLL = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput()
.appendField(Blockly.Msg.FACE_ENROLL);
this.setOutput(true);
this.setInputsInline(true);
}
};
export const GET_PEOPLE_FACE_RECOGNITION_RESULT = {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendDummyInput()
.appendField(Blockly.Msg.MIXLY_GET_PEOPLE_FACE_RECOGNITION_RESULT);
this.setOutput(true);
this.setInputsInline(true);
this.setTooltip(Blockly.Msg.MIXLY_GET_PEOPLE_FACE_RECOGNITION_RESULT_TOOLTIP);
}
};
export const DELETE_PEOPLE_FACE_ID= {
init: function () {
this.setColour(AI_LOCAL_GRAPH_HUE);
this.appendValueInput("ID")
.appendField(Blockly.Msg.MIXLY_DELETE_PEOPLE_FACE_ID);
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};

View File

@@ -1079,7 +1079,25 @@ export const onboard_tft_show_image_xy = {
this.setPreviousStatement(true, null);
this.setNextStatement(true, null);
this.setInputsInline(true);
this.setTooltip(Blockly.Msg.OLED_BITMAP_OR_STRING);
}
};
export const onboard_tft_show_image_xy_direct = {
init: function () {
this.setColour(DISPLAY_ONBOARD_HUE);
this.appendValueInput("x")
.setCheck(Number)
.appendField(Blockly.Msg.OLED_BITMAP)
.appendField('x');
this.appendValueInput("y")
.setCheck(Number)
.appendField('y');
this.appendValueInput("direct")
.setCheck(String)
.appendField(Blockly.Msg.MIXLY_AipImageClassify_Image + Blockly.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH);
this.setPreviousStatement(true, null);
this.setNextStatement(true, null);
this.setInputsInline(true);
}
};

View File

@@ -1575,221 +1575,6 @@ export const educore_rfid_sensor_scan_data = {
}
};
export const CI130X_IDENTIFY_AND_SAVE_SANT = {
init: function () {
this.setColour(SENSOR_ONBOARD_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_AipSpeech_asr + Blockly.Msg.MIXLY_IDENTIFY_ONCE_AND_SAVE)
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const CI130X_GET_WHETHER_IDENTIFY_SANT = {
init: function () {
this.setColour(SENSOR_ONBOARD_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_AipSpeech_asr + Blockly.Msg.MIXLY_GET)
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.MIXLY_HELLO_XIAOZHI, "1"],
[Blockly.Msg.MIXLY_XIAOZHIXIAOZHI, "2"],
[Blockly.Msg.MIXLY_THE_FIRST, "3"],
[Blockly.Msg.MIXLY_THE_SECOND, "4"],
[Blockly.Msg.MIXLY_THE_THIRD, "5"],
[Blockly.Msg.MIXLY_THE_FOURTH, "6"],
[Blockly.Msg.MIXLY_THE_FIFTH, "7"],
[Blockly.Msg.MIXLY_THE_SIXTH, "8"],
[Blockly.Msg.MIXLY_THE_SEVENTH, "9"],
[Blockly.Msg.MIXLY_THE_EIGHTH, "10"],
[Blockly.Msg.MIXLY_THE_NINTH, "11"],
[Blockly.Msg.MIXLY_THE_TENTH, "12"],
[Blockly.Msg.MIXLY_THE_ELEVENTH, "13"],
[Blockly.Msg.MIXLY_THE_TWELFTH, "14"],
[Blockly.Msg.MIXLY_THE_13TH, "15"],
[Blockly.Msg.MIXLY_THE_14TH, "16"],
[Blockly.Msg.MIXLY_THE_15TH, "17"],
[Blockly.Msg.MIXLY_THE_16TH, "18"],
[Blockly.Msg.MIXLY_THE_17TH, "19"],
[Blockly.Msg.MIXLY_THE_18TH, "20"],
[Blockly.Msg.MIXLY_THE_19TH, "21"],
[Blockly.Msg.MIXLY_THE_20TH, "22"],
[Blockly.Msg.MIXLY_Turn_on_the_lights, "23"],
[Blockly.Msg.MIXLY_Turn_off_the_lights, "24"],
[Blockly.Msg.MIXLY_Turn_up_the_brightness, "25"],
[Blockly.Msg.MIXLY_Turn_down_the_brightness, "26"],
[Blockly.Msg.MIXLY_Set_it_to_red, "27"],
[Blockly.Msg.MIXLY_Set_it_to_orange, "28"],
[Blockly.Msg.MIXLY_Set_it_to_yellow, "29"],
[Blockly.Msg.MIXLY_Set_it_to_green, "30"],
[Blockly.Msg.MIXLY_Set_it_to_cyan, "31"],
[Blockly.Msg.MIXLY_Set_it_to_blue, "32"],
[Blockly.Msg.MIXLY_Set_it_to_purple, "33"],
[Blockly.Msg.MIXLY_Set_it_to_white, "34"],
[Blockly.Msg.MIXLY_Turn_on_the_fan, "35"],
[Blockly.Msg.MIXLY_Turn_off_the_fan, "36"],
[Blockly.Msg.MIXLY_First_gear, "37"],
[Blockly.Msg.MIXLY_Wind_speed_second, "38"],
[Blockly.Msg.MIXLY_Third_gear, "39"],
[Blockly.Msg.MIXLY_Previous, "40"],
[Blockly.Msg.MIXLY_Next_page, "41"],
[Blockly.Msg.MIXLY_Show_smiley_face, "42"],
[Blockly.Msg.MIXLY_Show_crying_face, "43"],
[Blockly.Msg.MIXLY_Show_love, "44"],
[Blockly.Msg.MIXLY_Close_display, "45"],
[Blockly.Msg.MIXLY_Start_execution, "46"],
[Blockly.Msg.MIXLY_FORWARD, "47"],
[Blockly.Msg.MIXLY_BACKWARD, "48"],
[Blockly.Msg.MIXLY_TURNLEFT, "49"],
[Blockly.Msg.MIXLY_TURNRIGHT, "50"],
[Blockly.Msg.MIXLY_STOP, "51"],
[Blockly.Msg.MIXLY_Accelerate, "52"],
[Blockly.Msg.MIXLY_retard, "53"],
[Blockly.Msg.ROTATION_FORWARD, "54"],
[Blockly.Msg.ROTATION_BACKWARD, "55"],
[Blockly.Msg.MIXLY_Query_temperature, "56"],
[Blockly.Msg.MIXLY_Query_humidity, "57"],
[Blockly.Msg.MIXLY_Query_brightness, "58"],
[Blockly.Msg.MIXLY_Query_sound, "59"],
[Blockly.Msg.MIXLY_Query_time, "60"],
[Blockly.Msg.MIXLY_Query_distance, "61"],
[Blockly.Msg.MIXLY_Query_pressure, "62"],
[Blockly.Msg.MIXLY_Query_key, "63"],
[Blockly.Msg.MIXLY_Query_touch, "64"],
[Blockly.Msg.MIXLY_Query_color, "65"]
]), "cmd")
.appendField(Blockly.Msg.MIXLY_WHETHER + Blockly.Msg.MIXLY_BE_IDENTIFIED);
this.setOutput(true);
this.setInputsInline(true);
}
};
export const CI130X_GET_THE_RECOGNIZED_CMD_SANT = {
init: function () {
this.setColour(SENSOR_ONBOARD_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_AipSpeech_asr + Blockly.Msg.MIXLY_GET)
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.MIXLY_RECOGNIZED_STATE, "status1"],
[Blockly.Msg.MIXLY_WHETHER_BROADCAST, "status2"],
[Blockly.Msg.MIXLY_THE_RECOGNIZED_CMD, "result"]
]), "key")
this.setOutput(true);
this.setInputsInline(true);
this.setTooltip(Blockly.Msg.MIXLY_CI130X_GET_THE_RECOGNIZED_STATE_TOOLTIP);
}
};
export const CI130X_BROADCAST_SANT = {
init: function () {
this.setColour(SENSOR_ONBOARD_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_AipSpeech_asr + Blockly.Msg.MIXLY_MP3_PLAY)
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.MIXLY_MICROBIT_JS_INOUT_PULL_NONE, "None"],
[Blockly.Msg.MIXLY_WIND_SPEED, "154"],
[Blockly.Msg.MIXLY_HYETAL, "155"],
[Blockly.Msg.MIXLY_TEMPERATURE, "156"],
[Blockly.Msg.MIXLY_Humidity, "157"],
[Blockly.Msg.MIXLY_Altitude, "158"],
[Blockly.Msg.MIXLY_SOUND, "159"],
[Blockly.Msg.MIXLY_BRIGHTNESS, "160"],
[Blockly.Msg.ME_GO_HALL_SENSOR_DISTANCE, "161"],
[Blockly.Msg.MIXLY_SERVO, "162"],
[Blockly.Msg.MIXLY_MICROBIT_JS_BY_ANGLE, "163"],
[Blockly.Msg.MIXLY_BUTTON2, "164"],
[Blockly.Msg.MIXLY_ESP32_TOUCH, "165"],
[Blockly.Msg.MIXLY_PAY, "166"],
[Blockly.Msg.MIXLY_CARSH_CHANGE, "167"],
[Blockly.Msg.MIXLY_COUNTDOWN, "168"],
[Blockly.Msg.MIXLY_TIMING, "169"],
[Blockly.Msg.MIXLY_AT_THE_MOMENT, "170"],
[Blockly.Msg.MIXLY_MICROBIT_JS_CURRENT_GESTURE, "171"],
[Blockly.Msg.MIXLY_FORWARD, "172"],
[Blockly.Msg.MIXLY_BACKWARD, "173"],
[Blockly.Msg.MIXLY_TURNLEFT, "174"],
[Blockly.Msg.MIXLY_TURNRIGHT, "175"],
[Blockly.Msg.MIXLY_STOP, "176"],
[Blockly.Msg.MIXLY_Accelerate, "177"],
[Blockly.Msg.MIXLY_retard, "178"],
[Blockly.Msg.ROTATION_FORWARD, "179"],
[Blockly.Msg.ROTATION_BACKWARD, "180"],
[Blockly.Msg.TUPLE_JOIN, "181"],
[Blockly.Msg.MIXLY_SHOW, "182"],
[Blockly.Msg.MIXLY_LAMPLIGHT, "183"],
[Blockly.Msg.MIXLY_ACCELERATION, "184"]
]), "star");
this.appendValueInput('NUM')
.appendField(Blockly.Msg.MIXLY_NUMBER);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_UNIT)
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.MIXLY_MICROBIT_JS_INOUT_PULL_NONE, "None"],
[Blockly.Msg.MIXLY_YEAR, "117"],
[Blockly.Msg.MIXLY_MONTH, "118"],
[Blockly.Msg.MIXLY_DAY, "119"],
[Blockly.Msg.MIXLY_HOUR, "120"],
[Blockly.Msg.MIXLY_MINUTE, "121"],
[Blockly.Msg.MIXLY_SECOND, "122"],
[Blockly.Msg.MIXLY_WEEK2, "123"],
[Blockly.Msg.MIXLY_RMB_UNIT, "124"],
[Blockly.Msg.blockpy_setheading_degree, "125"],
[Blockly.Msg.MIXLY_GEAR, "126"],
[Blockly.Msg.MIXLY_LAYER, "127"],
[Blockly.Msg.MIXLY_GRAM, "128"],
[Blockly.Msg.MIXLY_METER, "129"],
[Blockly.Msg.MIXLY_CENTIMETER, "130"],
[Blockly.Msg.MIXLY_MILLIMETER, "131"],
[Blockly.Msg.MIXLY_LUMEN, "132"],
[Blockly.Msg.MIXLY_DECIBEL, "133"],
[Blockly.Msg.MIXLY_hectopascal, "134"],
[Blockly.Msg.MIXLY_PERCENT, "135"],
[Blockly.Msg.MIXLY_CELSIUS, "136"],
[Blockly.Msg.MIXLY_METER_PER_SEC, "137"],
[Blockly.Msg.MIXLY_MICROBIT_Turn_on_display, "138"],
[Blockly.Msg.MIXLY_MICROBIT_Turn_off_display, "139"],
[Blockly.Msg.MIXLY_SUCCESS, "140"],
[Blockly.Msg.MIXLY_FAILED, "141"],
[Blockly.Msg.MIXLY_WRONG, "142"],
[Blockly.Msg.MIXLY_GOOD, "143"],
[Blockly.Msg.MIXLY_blockpy_set_add, "144"],
[Blockly.Msg.MIXLY_DECREASE, "145"],
[Blockly.Msg.COLOUR_RGB_RED, "146"],
[Blockly.Msg.COLOUR_RGB_ORANGE, "147"],
[Blockly.Msg.COLOUR_YELLOW, "148"],
[Blockly.Msg.COLOUR_RGB_GREEN, "149"],
[Blockly.Msg.COLOUR_CYAN, "150"],
[Blockly.Msg.COLOUR_RGB_BLUE, "151"],
[Blockly.Msg.COLOUR_RGB_PURPLE, "152"],
[Blockly.Msg.COLOUR_RGB_WHITE, "153"]
]), "end");
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
}
export const CI130X_SET_SYSTEM_CMD_SANT = {
init: function () {
this.setColour(SENSOR_ONBOARD_HUE);
this.appendDummyInput("")
.appendField(Blockly.Msg.MIXLY_AipSpeech_asr + Blockly.Msg.LISTS_SET_INDEX_SET + Blockly.Msg.MIXLY_SYSTEM + Blockly.Msg.MIXLY_CMD)
.appendField(new Blockly.FieldDropdown([
[Blockly.Msg.MILXY_ENTER_WAKE_UP, "1"],
[Blockly.Msg.MIXLY_INCREASE_VOLUME, "202"],
[Blockly.Msg.MIXLY_REDUCE_VOLUME, "203"],
[Blockly.Msg.MIXLY_MAX_VOLUME, "204"],
[Blockly.Msg.MIXLY_MINIMUM, "205"],
[Blockly.Msg.MIXLY_OPEN_RESPONSE, "206"],
[Blockly.Msg.MIXLY_CLOSE_RESPONSE, "207"],
[Blockly.Msg.MIXLY_QUIT_WAKE_UP, "208"]
]), "cmd")
this.setPreviousStatement(true);
this.setNextStatement(true);
this.setInputsInline(true);
}
};
export const sensor_get_the_coprocessor_version = {
init: function () {
this.setColour(SENSOR_ONBOARD_HUE);

View File

@@ -3,6 +3,7 @@ import * as MicroPythonActuatorOnBoardBlocks from './blocks/actuator_onboard';
import * as MicroPythonActuatorBlocks from './blocks/actuator';
import * as MicroPythonAISensorBlocks from './blocks/ai_sensor';
import * as MicroPythonAIBlocks from './blocks/ai';
import * as MicroPythonAILocalBlocks from './blocks/ai_local';
import * as MicroPythonBlynkBlocks from './blocks/blynk';
import * as MicroPythonCCG1Blocks from './blocks/cc_g1';
import * as MicroPythonCEGOBlocks from './blocks/ce_go';
@@ -29,6 +30,7 @@ import * as MicroPythonActuatorExternGenerators from './generators/actuator_exte
import * as MicroPythonActuatorOnBoardGenerators from './generators/actuator_onboard';
import * as MicroPythonActuatorGenerators from './generators/actuator';
import * as MicroPythonAISensorGenerators from './generators/ai_sensor';
import * as MicroPythonAILocalGenerators from './generators/ai_local';
import * as MicroPythonAIGenerators from './generators/ai';
import * as MicroPythonBlynkGenerators from './generators/blynk';
import * as MicroPythonCCG1Generators from './generators/cc_g1';
@@ -58,6 +60,7 @@ export {
MicroPythonActuatorBlocks,
MicroPythonAISensorBlocks,
MicroPythonAIBlocks,
MicroPythonAILocalBlocks,
MicroPythonBlynkBlocks,
MicroPythonCCG1Blocks,
MicroPythonCEGOBlocks,
@@ -84,6 +87,7 @@ export {
MicroPythonActuatorGenerators,
MicroPythonAISensorGenerators,
MicroPythonAIGenerators,
MicroPythonAILocalGenerators,
MicroPythonBlynkGenerators,
MicroPythonCCG1Generators,
MicroPythonCEGOGenerators,

View File

@@ -0,0 +1,218 @@
import { Boards } from 'mixly';
//voice part
export const CI130X_IDENTIFY_AND_SAVE_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mixgo_sant'){
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var code = 'onboard_asr.cmd_id()\n';
}
else if(version == 'mixgo_mini'){
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var code = 'ext_asr.cmd_id()\n';
}
return code;
}
export const CI130X_GET_WHETHER_IDENTIFY_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mixgo_sant'){
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var cmd = this.getFieldValue('cmd');
var code = 'onboard_asr.result(' + cmd + ')';
}
else if(version == 'mixgo_mini'){
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var cmd = this.getFieldValue('cmd');
var code = 'ext_asr.result(' + cmd + ')';
}
return [code, generator.ORDER_ATOMIC];
}
export const CI130X_GET_THE_RECOGNIZED_CMD_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mixgo_sant'){
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var key = this.getFieldValue('key');
if (key == 'status1') {
var code = 'onboard_asr.status()[0]';
} else if (key == 'status2') {
var code = 'onboard_asr.status()[1]';
} else {
var code = 'onboard_asr.' + key + '()';
}
}else if(version == 'mixgo_mini'){
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var key = this.getFieldValue('key');
if (key == 'status1') {
var code = 'ext_asr.status()[0]';
} else if (key == 'status2') {
var code = 'ext_asr.status()[1]';
} else {
var code = 'ext_asr.' + key + '()';
}
}
return [code, generator.ORDER_ATOMIC];
}
//graph part
export const CI130X_BROADCAST_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mixgo_sant'){
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var num = generator.valueToCode(this, 'NUM', generator.ORDER_ATOMIC);
var star = this.getFieldValue('star');
var end = this.getFieldValue('end');
var code = 'onboard_asr.play(' + star + ', ' + num + ', ' + end + ')\n';
}else if(version == 'mixgo_mini'){
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var num = generator.valueToCode(this, 'NUM', generator.ORDER_ATOMIC);
var star = this.getFieldValue('star');
var end = this.getFieldValue('end');
var code = 'ext_asr.play(' + star + ', ' + num + ', ' + end + ')\n';
}
return code;
}
export const CI130X_SET_SYSTEM_CMD_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mixgo_sant'){
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var cmd = this.getFieldValue('cmd');
var code = 'onboard_asr.sys_cmd(' + cmd + ')\n';
}else if(version == 'mixgo_mini'){
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var cmd = this.getFieldValue('cmd');
var code = 'ext_asr.sys_cmd(' + cmd + ')\n';
}
return code;
}
export const CREATE_CAMERA = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_camera'] = 'import camera';
var cmd = this.getFieldValue('cmd');
var code = 'cam = camera.GC032A(camera.' + cmd + ')\n';
return code;
}
export const SHOOT_AND_SAVE_PICTURE = function (_, generator) {
var direct = generator.valueToCode(this, 'direct', generator.ORDER_ATOMIC);
var code = 'cam.snapshot(' + direct + ')\n';
return code;
}
export const GET_PICTURE_DATA = function (_, generator) {
var code = 'cam.snapshot()';
return [code, generator.ORDER_ATOMIC];
}
export const SCREEN_SHOW_CAM_GRAPH_SHOOT = function (_, generator) {
var code = 'cam.display()\n'+'time.sleep(1)\n';
return code;
}
export const STOP_SCREEN_DISPLAY = function (_, generator) {
var code = 'cam.display_stop()\n';
return code;
}
export const INIT_QR_CODE_RECOGNITION = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'qr_code = esp_ai.code_recognition()\n';
return code;
}
export const START_QR_CODE_RECOGNITION = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'qr_code.start()\n';
return code;
}
export const GET_QR_CODE_RECOGNITION_DATA = function (_, generator) {
var code = 'qr_code.read()';
return [code, generator.ORDER_ATOMIC];
}
export const INIT_COLOR_DETECTION = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var color = this.getFieldValue('color');
var code = 'color = esp_ai.color_detection('+ color +')\n';
return code;
}
export const START_COLOR_DETECTION = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'color.start()\n';
return code;
}
export const GET_COLOR_DETECTION_RESULT = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'color.read()';
return [code, generator.ORDER_ATOMIC];
}
export const INIT_CAT_FACE_DETECTION = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'cat = esp_ai.cat_detection()\n';
return code;
}
export const START_CAT_FACE_DETECTION = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'cat.start()\n';
return code;
}
export const GET_CAT_FACE_DETECTION_RESULT = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'cat.read()';
return [code, generator.ORDER_ATOMIC];
}
export const INIT_PEOPLE_FACE_DETECTION = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'face = esp_ai.face_detection()\n';
return code;
}
export const START_PEOPLE_FACE_DETECTION = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'face.start()\n';
return code;
}
export const GET_PEOPLE_FACE_DETECTION_RESULT = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'face.read()';
return [code, generator.ORDER_ATOMIC];
}
export const INIT_PEOPLE_FACE_RECOGNITION = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'face = esp_ai.face_recognition()\n';
return code;
}
export const PEOPLE_FACE_ENROLL = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'face.enroll()';
return [code, generator.ORDER_ATOMIC];
}
export const GET_PEOPLE_FACE_RECOGNITION_RESULT = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var code = 'face.recognize()';
return [code, generator.ORDER_ATOMIC];
}
export const DELETE_PEOPLE_FACE_ID = function (_, generator) {
generator.definitions_['import_esp_ai'] = 'import esp_ai';
var id = generator.valueToCode(this, 'ID', generator.ORDER_ATOMIC);
var code = 'face.delete('+ id +')\n';
return code;
}

View File

@@ -840,6 +840,16 @@ export const onboard_tft_show_image_xy = function (_, generator) {
return code;
}
export const onboard_tft_show_image_xy_direct = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_tft'] = "from " + version + " import onboard_tft";
var x = generator.valueToCode(this, 'x', generator.ORDER_ASSIGNMENT);
var y = generator.valueToCode(this, 'y', generator.ORDER_ASSIGNMENT);
var direct = generator.valueToCode(this, 'direct', generator.ORDER_ASSIGNMENT);
var code = "onboard_tft.pictrue(" + x + ',' + y + ',' + direct + ")\n";
return code;
}
export const onboard_tft_show_image_or_string_delay = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_tft'] = "from " + version + " import onboard_tft";

View File

@@ -932,92 +932,6 @@ export const educore_rfid_sensor_scan_data = function (_, generator) {
return [code, generator.ORDER_ATOMIC];
}
export const CI130X_IDENTIFY_AND_SAVE_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mini_sant'){
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var code = 'onboard_asr.cmd_id()\n';
}
else if(version == 'mixgo_mini'){
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var code = 'ext_asr.cmd_id()\n';
}
return code;
}
export const CI130X_GET_WHETHER_IDENTIFY_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mini_sant'){
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var cmd = this.getFieldValue('cmd');
var code = 'onboard_asr.result(' + cmd + ')';
}
else if(version == 'mixgo_mini'){
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var cmd = this.getFieldValue('cmd');
var code = 'ext_asr.result(' + cmd + ')';
}
return [code, generator.ORDER_ATOMIC];
}
export const CI130X_GET_THE_RECOGNIZED_CMD_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mini_sant'){
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var key = this.getFieldValue('key');
if (key == 'status1') {
var code = 'onboard_asr.status()[0]';
} else if (key == 'status2') {
var code = 'onboard_asr.status()[1]';
} else {
var code = 'onboard_asr.' + key + '()';
}
}else if(version == 'mixgo_mini'){
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var key = this.getFieldValue('key');
if (key == 'status1') {
var code = 'ext_asr.status()[0]';
} else if (key == 'status2') {
var code = 'ext_asr.status()[1]';
} else {
var code = 'ext_asr.' + key + '()';
}
}
return [code, generator.ORDER_ATOMIC];
}
export const CI130X_BROADCAST_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mini_sant'){
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var num = generator.valueToCode(this, 'NUM', generator.ORDER_ATOMIC);
var star = this.getFieldValue('star');
var end = this.getFieldValue('end');
var code = 'onboard_asr.play(' + star + ', ' + num + ', ' + end + ')\n';
}else if(version == 'mixgo_mini'){
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var num = generator.valueToCode(this, 'NUM', generator.ORDER_ATOMIC);
var star = this.getFieldValue('star');
var end = this.getFieldValue('end');
var code = 'ext_asr.play(' + star + ', ' + num + ', ' + end + ')\n';
}
return code;
}
export const CI130X_SET_SYSTEM_CMD_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if(version == 'mini_sant'){
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var cmd = this.getFieldValue('cmd');
var code = 'onboard_asr.sys_cmd(' + cmd + ')\n';
}else if(version == 'mixgo_mini'){
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var cmd = this.getFieldValue('cmd');
var code = 'ext_asr.sys_cmd(' + cmd + ')\n';
}
return code;
}
export const sensor_get_the_coprocessor_version = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_bot'] = 'from ' + version + ' import onboard_bot';

View File

@@ -38,6 +38,7 @@ import {
MicroPythonActuatorOnBoardBlocks,
MicroPythonAISensorBlocks,
MicroPythonAIBlocks,
MicroPythonAILocalBlocks,
MicroPythonBlynkBlocks,
MicroPythonCCG1Blocks,
MicroPythonCEGOBlocks,
@@ -57,6 +58,7 @@ import {
MicroPythonActuatorOnBoardGenerators,
MicroPythonAISensorGenerators,
MicroPythonAIGenerators,
MicroPythonAILocalGenerators,
MicroPythonBlynkGenerators,
MicroPythonCCG1Generators,
MicroPythonCEGOGenerators,
@@ -120,6 +122,7 @@ Object.assign(
MicroPythonIotBlocks,
MicroPythonWeatherBlocks,
MicroPythonAISensorBlocks,
MicroPythonAILocalBlocks,
MicroPythonSensorOnBoardBlocks,
MicroPythonSensorExternBlocks,
MicroPythonNetworkBlocks,
@@ -160,6 +163,7 @@ Object.assign(
MicroPythonIotGenerators,
MicroPythonWeatherGenerators,
MicroPythonAISensorGenerators,
MicroPythonAILocalGenerators,
MicroPythonSensorOnBoardGenerators,
MicroPythonSensorExternGenerators,
MicroPythonNetworkGenerators,

View File

@@ -447,3 +447,23 @@ div.blocklyToolboxDiv>div.blocklyToolboxContents>div:nth-child(12)>div.blocklyTr
background: url('../../../../common/media/mark/comuni2.png') no-repeat;
background-size: 100% auto;
}
#catAIgraphsensor.blocklyTreeRow>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
background: url('../../../../common/media/mark/image.png') no-repeat;
background-size: 100% auto;
}
#catAIgraphsensor.blocklyTreeRow.blocklyTreeSelected>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
background: url('../../../../common/media/mark/image2.png') no-repeat;
background-size: 100% auto;
}
#catAIvoicesensor.blocklyTreeRow>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
background: url('../../../../common/media/mark/AIvoice.png') no-repeat;
background-size: 100% auto;
}
#catAIvoicesensor.blocklyTreeRow.blocklyTreeSelected>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
background: url('../../../../common/media/mark/AIvoice2.png') no-repeat;
background-size: 100% auto;
}

View File

@@ -38,6 +38,7 @@ import {
MicroPythonActuatorOnBoardBlocks,
MicroPythonAISensorBlocks,
MicroPythonAIBlocks,
MicroPythonAILocalBlocks,
MicroPythonBlynkBlocks,
MicroPythonCommunicateBlocks,
MicroPythonDisplayExternBlocks,
@@ -57,6 +58,7 @@ import {
MicroPythonActuatorOnBoardGenerators,
MicroPythonAISensorGenerators,
MicroPythonAIGenerators,
MicroPythonAILocalGenerators,
MicroPythonBlynkGenerators,
MicroPythonCommunicateGenerators,
MicroPythonDisplayExternGenerators,
@@ -117,6 +119,7 @@ Object.assign(
MicroPythonIotBlocks,
MicroPythonWeatherBlocks,
MicroPythonAISensorBlocks,
MicroPythonAILocalBlocks,
MicroPythonSensorOnBoardBlocks,
MicroPythonSensorExternBlocks,
MicroPythonPeG1Blocks,
@@ -156,6 +159,7 @@ Object.assign(
MicroPythonIotGenerators,
MicroPythonWeatherGenerators,
MicroPythonAISensorGenerators,
MicroPythonAILocalGenerators,
MicroPythonSensorOnBoardGenerators,
MicroPythonSensorExternGenerators,
MicroPythonPeG1Generators,

View File

@@ -1434,13 +1434,13 @@
</value>
</block>
<block type="sensor_mixgo_touch_slide"></block>
<block type="sensor_mixgo_pin_near" m-show='micropython:esp32s3:mixgo_sant'></block>
<block type="sensor_mixgo_nova_pin_near" m-show='micropython:esp32s3:mixgo_nova'></block>
<!-- <block type="sensor_mixgo_pin_near" m-show='micropython:esp32s3:mixgo_sant'></block> -->
<block type="sensor_mixgo_nova_pin_near"></block>
<block type="sensor_mixgo_LTR308" m-show='micropython:esp32s3:mixgo_sant'></block>
<block type="sensor_mixgo_nova_LTR308" m-show='micropython:esp32s3:mixgo_nova'></block>
<block type="sensor_mixgo_sant_color" m-show='micropython:esp32s3:mixgo_sant'></block>
<block type="sensor_sound"></block>
<block type="sensor_hp203" m-show='micropython:esp32s3:mixgo_sant'></block>
<!-- <block type="sensor_hp203" m-show='micropython:esp32s3:mixgo_sant'></block> -->
<block type="sensor_aht11"></block>
<block type="sensor_get_acceleration"></block>
<block type="sensor_mixgo_cc_mmc5603_calibrate_compass"></block>
@@ -1479,15 +1479,6 @@
</shadow>
</value>
</block>
<block type="CI130X_IDENTIFY_AND_SAVE_SANT" m-show='micropython:esp32s3:mixgo_sant'></block>
<block type="CI130X_GET_WHETHER_IDENTIFY_SANT" m-show='micropython:esp32s3:mixgo_sant'></block>
<block type="CI130X_GET_THE_RECOGNIZED_CMD_SANT" m-show='micropython:esp32s3:mixgo_sant'></block>
<block type="CI130X_BROADCAST_SANT" m-show='micropython:esp32s3:mixgo_sant'>
<value name="NUM">
<block type="logic_null"></block>
</value>
</block>
<block type="CI130X_SET_SYSTEM_CMD_SANT" m-show='micropython:esp32s3:mixgo_sant'></block>
<block type="onboard_RTC_set_datetime">
<value name="year">
<shadow type="math_number">
@@ -1873,6 +1864,23 @@
</shadow>
</value>
</block>
<block type="onboard_tft_show_image_xy_direct" m-show="micropython:esp32s3:mixgo_sant">
<value name="x">
<shadow type="math_number">
<field name="NUM">0</field>
</shadow>
</value>
<value name="y">
<shadow type="math_number">
<field name="NUM">0</field>
</shadow>
</value>
<value name="direct">
<shadow type="text">
<field name="TEXT">12.jpg</field>
</shadow>
</value>
</block>
<block type="display_show_image_or_string_delay">
<value name="data">
<shadow type="text">
@@ -2289,6 +2297,54 @@
</value>
</block>
</category>
<category id="catAIonboard" colour="#2FAD7A">
<category id="catAIgraphsensor" colour="#90A244">
<block type="CREATE_CAMERA"></block>
<block type="SHOOT_AND_SAVE_PICTURE">
<value name="direct">
<shadow type="text">
<field name="TEXT">12.jpg</field>
</shadow>
</value>
</block>
<block type="GET_PICTURE_DATA"></block>
<block type="SCREEN_SHOW_CAM_GRAPH_SHOOT"></block>
<block type="STOP_SCREEN_DISPLAY"></block>
<block type="INIT_QR_CODE_RECOGNITION"></block>
<block type="START_QR_CODE_RECOGNITION"></block>
<block type="GET_QR_CODE_RECOGNITION_DATA"></block>
<block type="INIT_COLOR_DETECTION"></block>
<block type="START_COLOR_DETECTION"></block>
<block type="GET_COLOR_DETECTION_RESULT"></block>
<block type="INIT_CAT_FACE_DETECTION"></block>
<block type="START_CAT_FACE_DETECTION"></block>
<block type="GET_CAT_FACE_DETECTION_RESULT"></block>
<block type="INIT_PEOPLE_FACE_DETECTION"></block>
<block type="START_PEOPLE_FACE_DETECTION"></block>
<block type="GET_PEOPLE_FACE_DETECTION_RESULT"></block>
<block type="INIT_PEOPLE_FACE_RECOGNITION"></block>
<block type="PEOPLE_FACE_ENROLL"></block>
<block type="GET_PEOPLE_FACE_RECOGNITION_RESULT"></block>
<block type="DELETE_PEOPLE_FACE_ID">
<value name="ID">
<shadow type="math_number">
<field name="NUM">0</field>
</shadow>
</value>
</block>
</category>
<category id="catAIvoicesensor" colour="#D1D431">
<block type="CI130X_IDENTIFY_AND_SAVE_SANT" m-show='micropython:esp32s3:mixgo_sant'></block>
<block type="CI130X_GET_WHETHER_IDENTIFY_SANT" m-show='micropython:esp32s3:mixgo_sant'></block>
<block type="CI130X_GET_THE_RECOGNIZED_CMD_SANT" m-show='micropython:esp32s3:mixgo_sant'></block>
<block type="CI130X_BROADCAST_SANT" m-show='micropython:esp32s3:mixgo_sant'>
<value name="NUM">
<block type="logic_null"></block>
</value>
</block>
<block type="CI130X_SET_SYSTEM_CMD_SANT" m-show='micropython:esp32s3:mixgo_sant'></block>
</category>
</category>
<category id="catSANT_G2" colour="40" m-show='micropython:esp32s3:mixgo_sant'>
<block type="rfid_status"></block>
<block type="rfid_readid"></block>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -39,6 +39,8 @@ ZhHans.MSG = {
catAIOT:"智能物联",
catAIsensor:"MixGoAI智能传感",
catAIsensor2:"MixGoAI图像识别",
catAIgraphsensor:"图像处理",
catAIvoicesensor:"语音处理",
catSensor: "传感器",
catActuator: "执行器",
catExternSensor: "外接传感",
@@ -65,6 +67,7 @@ ZhHans.MSG = {
catTurtle: "海龟画图",
catTuple: "元组",
catIot: "物联网",
catAIonboard:"板载智能",
catSet: "集合",
catData: "数据分析",
catAlgorithm: "算法",
@@ -4086,4 +4089,25 @@ ZhHans.MIXLY_SET_DEGREE = '将角度';
ZhHans.MIXLY_TRANS_TO_RADIAN = '转换为弧度';
ZhHans.MIXLY_REF_TO_PRESSURE = '参考气压';
ZhHans.MIXLY_CAL_TO_ALTITUDE = '计算获取海拔';
ZhHans.MIXLY_SHOOTING_SIZE = '拍摄尺寸';
ZhHans.MIXLY_SHOOT_AND_SAVE_PICTURE = '拍摄照片并保存';
ZhHans.MIXLY_GET_PICTURE_DATA = '获取图像数据';
ZhHans.MIXlY_SCREEN_SHOW_CAM_SHOOT = '屏幕显示摄像头采集图像';
ZhHans.MIXlY_STOP_SCREEN_DISPLAY = '关闭摄像头采集图像LCD实时显示';
ZhHans.MIXLY_RECOGNITION = '检测';
ZhHans.MIXLY_GET_QR_CODE_RECOGNITION_RESULT = '获取二维码检测结果';
ZhHans.MIXLY_GET_QR_CODE_RECOGNITION_RESULT_TOOLTIP = '无检测结果返回None,有结果左上角出现绿色小方块,并返回二维码信息。'
ZhHans.COLOUR_RGB_GREY = "灰色";
ZhHans.MIXLY_CUSTOM_STUDY = "自定义学习";
ZhHans.MIXLY_GET_COLOR_DETECTION_RESULT = '获取颜色检测结果';
ZhHans.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP ='获取颜色采集结果,返回矩形区域数量和对应的左上角和右下角坐标(4个值)。';
ZhHans.MIXLY_CAT_FACE = '猫脸';
ZhHans.MIXLY_GET_CAT_FACE_DETECTION_RESULT = '获取猫脸检测结果';
ZhHans.MIXLY_GET_CAT_FACE_DETECTION_RESULT_TOOLTIP = '获取猫脸检测结果,返回矩形区域数量和对应的左上角和右下角坐标(4个值)。';
ZhHans.MIXLY_GET_PEOPLE_FACE_DETECTION_RESULT = '获取人脸检测结果';
ZhHans.MIXLY_GET_PEOPLE_FACE_DETECTION_RESULT_TOOLTIP = '获取人脸检测结果,返回矩形区域数量、对应的矩形框左边以及五点关键特征值。说明:v[0]:人脸数量;v[1-4]:矩形左上角和右下角坐标;v[5-14]:左眼、右眼、鼻子、左嘴角、右嘴角坐标。';
ZhHans.MIXLY_GET_PEOPLE_FACE_RECOGNITION_RESULT = '获取人脸识别结果';
ZhHans.MIXLY_GET_PEOPLE_FACE_RECOGNITION_RESULT_TOOLTIP = '获取人脸识别结果,获取人识别结果,返回人脸ID(ID从1开始)、矩形区域和和对应的5点坐标。说明:v[0]:人脸数量;v[1-4]:矩形左上角和右下角坐标;v[5-14]:左眼、右眼、鼻子、左嘴角、右嘴角坐标。';
ZhHans.FACE_ENROLL = '录入人脸';
ZhHans.MIXLY_DELETE_PEOPLE_FACE_ID = '删除人脸ID信息';
})();