modify:
1. 删掉文本输入框,hz改为赫兹; 2. 曝光时间超过最大值后,设置为最大值:psdk取消曝光时间检测,让ximeaAirborneSystem设置曝光时间的最大值; 5. bin修改后,自动杀掉程序; 3. 去掉采集流程控制:高光谱采集提示请先设置曝光时间; 4. 去掉帧率完成和曝光完成,只保留连接成功;
This commit is contained in:
@ -54,6 +54,7 @@ static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType
|
|||||||
|
|
||||||
static void *PsdkTest_IrisRecordSystemChanged(void *arg);
|
static void *PsdkTest_IrisRecordSystemChanged(void *arg);
|
||||||
static void extractSpectralBinAndBandnumber(bool isModifyBin);
|
static void extractSpectralBinAndBandnumber(bool isModifyBin);
|
||||||
|
static void closeXimeaRecordSystem();
|
||||||
|
|
||||||
/* Private values ------------------------------------------------------------*/
|
/* Private values ------------------------------------------------------------*/
|
||||||
static T_DjiTaskHandle s_widgetTestThread;
|
static T_DjiTaskHandle s_widgetTestThread;
|
||||||
@ -84,6 +85,7 @@ static char * s_strSbgAccuracy=" ";
|
|||||||
char XimeaFramerate[100]=" ";
|
char XimeaFramerate[100]=" ";
|
||||||
int framerate = 0;
|
int framerate = 0;
|
||||||
char XimeaExposeTime[100]=" ";
|
char XimeaExposeTime[100]=" ";
|
||||||
|
int exposeTimeInt = 0;
|
||||||
char XimeaExposeMaxValue[100]=" ";
|
char XimeaExposeMaxValue[100]=" ";
|
||||||
char s_spectralBin[100]=" ";
|
char s_spectralBin[100]=" ";
|
||||||
int spectralBinInt = 0;
|
int spectralBinInt = 0;
|
||||||
@ -285,18 +287,24 @@ static void *DjiTest_WidgetTask(void *arg)
|
|||||||
T_DjiReturnCode djiStat;
|
T_DjiReturnCode djiStat;
|
||||||
T_DjiOsalHandler *osalHandler = DjiPlatform_GetOsalHandler();
|
T_DjiOsalHandler *osalHandler = DjiPlatform_GetOsalHandler();
|
||||||
|
|
||||||
extractSpectralBinAndBandnumber(false);
|
|
||||||
|
|
||||||
USER_UTIL_UNUSED(arg);
|
USER_UTIL_UNUSED(arg);
|
||||||
|
|
||||||
while (1) {
|
while (1)
|
||||||
|
{
|
||||||
|
s_widgetValueList[6] = framerate;
|
||||||
|
s_widgetValueList[8] = exposeTimeInt;
|
||||||
|
if (systemON_Control == 4)
|
||||||
|
{
|
||||||
|
s_widgetValueList[5] = 0;
|
||||||
|
}
|
||||||
|
|
||||||
djiStat = osalHandler->GetTimeMs(&sysTimeMs);
|
djiStat = osalHandler->GetTimeMs(&sysTimeMs);
|
||||||
if (djiStat != DJI_ERROR_SYSTEM_MODULE_CODE_SUCCESS) {
|
if (djiStat != DJI_ERROR_SYSTEM_MODULE_CODE_SUCCESS) {
|
||||||
USER_LOG_ERROR("Get system time ms error, stat = 0x%08llX", djiStat);
|
USER_LOG_ERROR("Get system time ms error, stat = 0x%08llX", djiStat);
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef USER_FIRMWARE_MAJOR_VERSION
|
#ifndef USER_FIRMWARE_MAJOR_VERSION
|
||||||
snprintf(message, DJI_WIDGET_FLOATING_WINDOW_MSG_MAX_LEN, "%s\n高光谱: %s; 惯导: %s;\n卫星: %s; 惯导状态: %s;\n帧率: %s;曝光: %s;max: %s;\nP: %s; R: %s; Y: %s;\n光谱bin: %s;\n时间: %s min; 空间: %s G;\n",
|
snprintf(message, DJI_WIDGET_FLOATING_WINDOW_MSG_MAX_LEN, "%s\n高光谱: %s 惯导: %s\n卫星: %s 惯导状态: %s\n帧率: %s 曝光: %s max: %s \nP: %s R: %s Y: %s \n光谱bin: %s \n时间: %s min 空间: %s G\n",
|
||||||
s_strUIMessage, s_strStateOfXimea, s_strStateOfSbg, s_strSbgSatelliteCounter, s_strSbgSolutionMode, XimeaFramerate, XimeaExposeTime, XimeaExposeMaxValue, s_strPitch, s_strRoll, s_strYaw, s_spectralBin, s_remainingTime, s_remainingSpace);
|
s_strUIMessage, s_strStateOfXimea, s_strStateOfSbg, s_strSbgSatelliteCounter, s_strSbgSolutionMode, XimeaFramerate, XimeaExposeTime, XimeaExposeMaxValue, s_strPitch, s_strRoll, s_strYaw, s_spectralBin, s_remainingTime, s_remainingSpace);
|
||||||
#else
|
#else
|
||||||
snprintf(message, DJI_WIDGET_FLOATING_WINDOW_MSG_MAX_LEN,
|
snprintf(message, DJI_WIDGET_FLOATING_WINDOW_MSG_MAX_LEN,
|
||||||
@ -367,6 +375,8 @@ static void *DjiTest_WidgetTask(void *arg)
|
|||||||
// 关闭文件指针
|
// 关闭文件指针
|
||||||
pclose(fp);
|
pclose(fp);
|
||||||
|
|
||||||
|
extractSpectralBinAndBandnumber(false);
|
||||||
|
|
||||||
|
|
||||||
//判断ximeaAirborneSystem系统是否存活
|
//判断ximeaAirborneSystem系统是否存活
|
||||||
// if(ximeaAirborneSystemSurvivalTime > 10)
|
// if(ximeaAirborneSystemSurvivalTime > 10)
|
||||||
@ -467,7 +477,7 @@ static void *PsdkTest_IrisRecordSystemChanged(void *arg)//
|
|||||||
case 0:
|
case 0:
|
||||||
s_strStateOfSbg="未打开";
|
s_strStateOfSbg="未打开";
|
||||||
|
|
||||||
if (systemON_Control == 0 || systemON_Control == 4)
|
if (systemON_Control == 0 || systemON_Control == 3 || systemON_Control == 4)
|
||||||
{
|
{
|
||||||
strcpy(s_strUIMessage,"系统已就绪!");
|
strcpy(s_strUIMessage,"系统已就绪!");
|
||||||
messageTimeCounter = 0;
|
messageTimeCounter = 0;
|
||||||
@ -476,13 +486,6 @@ static void *PsdkTest_IrisRecordSystemChanged(void *arg)//
|
|||||||
systemON_Control = 1;//ximeaAirborneSystem系统一启动就会发送此信息 → 代表采集系统就绪;
|
systemON_Control = 1;//ximeaAirborneSystem系统一启动就会发送此信息 → 代表采集系统就绪;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (systemON_Control == 3)
|
|
||||||
{
|
|
||||||
strcpy(s_strUIMessage,"数据量过大,采集系统已经停止,请重新上电!");
|
|
||||||
messageTimeCounter = 0;
|
|
||||||
messageTimespan = 1000;
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
s_strStateOfSbg="波特率设置失败";
|
s_strStateOfSbg="波特率设置失败";
|
||||||
@ -531,19 +534,19 @@ static void *PsdkTest_IrisRecordSystemChanged(void *arg)//
|
|||||||
switch (s_sbgMagState)
|
switch (s_sbgMagState)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
s_strSbgSolutionMode="UNINITI";//UNINITIALIZED
|
s_strSbgSolutionMode="dis_UNINIT";//UNINITIALIZED
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
s_strSbgSolutionMode="GYRO";//VERTICAL_GYRO
|
s_strSbgSolutionMode="dis_GYRO";//VERTICAL_GYRO
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
s_strSbgSolutionMode="AHRS";
|
s_strSbgSolutionMode="dis_AHRS";
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
s_strSbgSolutionMode="VELOCITY";//NAV_VELOCITY
|
s_strSbgSolutionMode="dis_VELOCITY";//NAV_VELOCITY
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
s_strSbgSolutionMode="FULL";//NAV_POSITION
|
s_strSbgSolutionMode="en_FULL";//NAV_POSITION
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@ -586,10 +589,10 @@ static void *PsdkTest_IrisRecordSystemChanged(void *arg)//
|
|||||||
messageTimespan = 200;
|
messageTimespan = 200;
|
||||||
break;
|
break;
|
||||||
case 100:
|
case 100:
|
||||||
s_strStateOfXimea="未打开";
|
s_strStateOfXimea="未连接";
|
||||||
break;
|
break;
|
||||||
case 101:
|
case 101:
|
||||||
s_strStateOfXimea="打开成功";
|
s_strStateOfXimea="连接成功";
|
||||||
|
|
||||||
strcpy(s_strUIMessage,"系统启动成功!");
|
strcpy(s_strUIMessage,"系统启动成功!");
|
||||||
messageTimeCounter = 0;
|
messageTimeCounter = 0;
|
||||||
@ -597,10 +600,10 @@ static void *PsdkTest_IrisRecordSystemChanged(void *arg)//
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
case 102:
|
case 102:
|
||||||
s_strStateOfXimea="帧率完成";
|
s_strStateOfXimea="连接成功";
|
||||||
break;
|
break;
|
||||||
case 103:
|
case 103:
|
||||||
s_strStateOfXimea="曝光完成";
|
s_strStateOfXimea="连接成功";
|
||||||
break;
|
break;
|
||||||
case 104:
|
case 104:
|
||||||
s_strStateOfXimea="采集中";
|
s_strStateOfXimea="采集中";
|
||||||
@ -614,9 +617,9 @@ static void *PsdkTest_IrisRecordSystemChanged(void *arg)//
|
|||||||
{
|
{
|
||||||
strcpy(XimeaExposeMaxValue, result[1]);
|
strcpy(XimeaExposeMaxValue, result[1]);
|
||||||
|
|
||||||
int exposeTimeTmp = atoi(result[2]);
|
exposeTimeInt = atoi(result[2]);
|
||||||
sprintf(XimeaExposeTime,"%d",exposeTimeTmp);
|
sprintf(XimeaExposeTime,"%d",exposeTimeInt);
|
||||||
s_widgetValueList[8] = exposeTimeTmp;
|
s_widgetValueList[8] = exposeTimeInt;
|
||||||
|
|
||||||
strcpy(s_strUIMessage,"曝光时间设置成功!");
|
strcpy(s_strUIMessage,"曝光时间设置成功!");
|
||||||
messageTimeCounter = 0;
|
messageTimeCounter = 0;
|
||||||
@ -667,7 +670,6 @@ static T_DjiReturnCode DjiTestWidget_GetWidgetValue(E_DjiWidgetType widgetType,
|
|||||||
return DJI_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
|
return DJI_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
int frameRateGlobel = 0;
|
|
||||||
static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType widgetType, uint32_t index, int32_t value,
|
static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType widgetType, uint32_t index, int32_t value,
|
||||||
void *userData)
|
void *userData)
|
||||||
{
|
{
|
||||||
@ -675,6 +677,7 @@ static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType
|
|||||||
|
|
||||||
USER_LOG_INFO("Set widget value, widgetType = %s, widgetIndex = %d ,widgetValue = %d",
|
USER_LOG_INFO("Set widget value, widgetType = %s, widgetIndex = %d ,widgetValue = %d",
|
||||||
s_widgetTypeNameArray[widgetType], index, value);
|
s_widgetTypeNameArray[widgetType], index, value);
|
||||||
|
int32_t valueTmp = s_widgetValueList[index];
|
||||||
s_widgetValueList[index] = value;
|
s_widgetValueList[index] = value;
|
||||||
|
|
||||||
switch (index)
|
switch (index)
|
||||||
@ -685,7 +688,7 @@ static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType
|
|||||||
printf("systemON_Control的值为:%d\n", systemON_Control);
|
printf("systemON_Control的值为:%d\n", systemON_Control);
|
||||||
if (0 <= systemON_Control && systemON_Control <= 4)
|
if (0 <= systemON_Control && systemON_Control <= 4)
|
||||||
{
|
{
|
||||||
strcpy(s_strUIMessage,"系统已经关闭!");
|
strcpy(s_strUIMessage,"系统正在关闭!");
|
||||||
messageTimeCounter = 0;
|
messageTimeCounter = 0;
|
||||||
messageTimespan = 1000;
|
messageTimespan = 1000;
|
||||||
|
|
||||||
@ -700,25 +703,7 @@ static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType
|
|||||||
// printf("命令行指令为:%s\n",commandtmp);
|
// printf("命令行指令为:%s\n",commandtmp);
|
||||||
// system(commandtmp);
|
// system(commandtmp);
|
||||||
|
|
||||||
FILE *fp;
|
closeXimeaRecordSystem();
|
||||||
fp = popen("kill $(ps aux | grep ximeaAirborneSystem | grep -v grep | awk \'{print $2}\')", "r");
|
|
||||||
if (fp == NULL)
|
|
||||||
{
|
|
||||||
perror("popen");
|
|
||||||
}
|
|
||||||
|
|
||||||
s_strStateOfXimea=" ";
|
|
||||||
s_strStateOfSbg=" ";
|
|
||||||
s_strSbgSatelliteCounter=" ";
|
|
||||||
s_strSbgSolutionMode=" ";
|
|
||||||
sprintf(XimeaFramerate,"%s"," ");
|
|
||||||
sprintf(XimeaExposeTime,"%s"," ");
|
|
||||||
sprintf(XimeaExposeMaxValue,"%s"," ");
|
|
||||||
sprintf(s_spectralBin,"%s"," ");
|
|
||||||
s_remainingTime=" ";
|
|
||||||
|
|
||||||
s_widgetValueList[6] = 0;
|
|
||||||
s_widgetValueList[8] = 0;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (value==1)//系统启动
|
else if (value==1)//系统启动
|
||||||
@ -763,6 +748,13 @@ static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType
|
|||||||
messageTimeCounter = 0;
|
messageTimeCounter = 0;
|
||||||
messageTimespan = 10;
|
messageTimespan = 10;
|
||||||
|
|
||||||
|
// printf("index-------:%d\n", index);
|
||||||
|
// printf("valueTmp-------:%d\n", valueTmp);
|
||||||
|
|
||||||
|
//下面的代码没有作用:无法恢复界面的值为默认值(valueTmp)
|
||||||
|
// DjiTestWidget_SetWidgetValue(widgetType, index, valueTmp, userData);
|
||||||
|
// s_widgetValueList[index] = valueTmp;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
else if (s_stateOfXimea > 103)
|
else if (s_stateOfXimea > 103)
|
||||||
@ -794,12 +786,10 @@ static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType
|
|||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
frameRateGlobel = value;
|
|
||||||
|
|
||||||
char command[50] = "5,";
|
char command[50] = "5,";
|
||||||
char framerate[20];
|
char framerate_str[20];
|
||||||
sprintf(framerate,"%d",value);
|
sprintf(framerate_str,"%d",value);
|
||||||
strcat(command,framerate);
|
strcat(command,framerate_str);
|
||||||
sendto(s_sockfd, command,strlen(command),0,(struct sockaddr *)&s_server,sizeof(s_server));
|
sendto(s_sockfd, command,strlen(command),0,(struct sockaddr *)&s_server,sizeof(s_server));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -855,24 +845,13 @@ static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType
|
|||||||
}
|
}
|
||||||
|
|
||||||
//曝光时间有效性判断
|
//曝光时间有效性判断
|
||||||
if(frameRateGlobel == 0)
|
float maxExposureTime = 1 / (float)framerate * 1000;//单位是ms
|
||||||
{
|
|
||||||
strcpy(s_strUIMessage,"请先设置帧率!");
|
|
||||||
messageTimeCounter = 0;
|
|
||||||
messageTimespan = 10;
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
float maxExposureTime = 1 / (float)frameRateGlobel * 1000;//单位是ms
|
|
||||||
|
|
||||||
if(value > maxExposureTime)
|
if(value > maxExposureTime)
|
||||||
{
|
{
|
||||||
strcpy(s_strUIMessage,"曝光时间超过上限,无效!");
|
strcpy(s_strUIMessage,"曝光时间已设置为最大!");
|
||||||
messageTimeCounter = 0;
|
messageTimeCounter = 0;
|
||||||
messageTimespan = 10;
|
messageTimespan = 10;
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
else if(value == 0)
|
else if(value == 0)
|
||||||
{
|
{
|
||||||
@ -908,22 +887,6 @@ static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType
|
|||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
else if (s_stateOfXimea == 101)
|
|
||||||
{
|
|
||||||
strcpy(s_strUIMessage,"请先设置帧率!");
|
|
||||||
messageTimeCounter = 0;
|
|
||||||
messageTimespan = 10;
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
else if (s_stateOfXimea == 102)
|
|
||||||
{
|
|
||||||
strcpy(s_strUIMessage,"请先设置曝光时间!");
|
|
||||||
messageTimeCounter = 0;
|
|
||||||
messageTimespan = 10;
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
char* command = "3";
|
char* command = "3";
|
||||||
sendto(s_sockfd, command,strlen(command),0,(struct sockaddr *)&s_server,sizeof(s_server));
|
sendto(s_sockfd, command,strlen(command),0,(struct sockaddr *)&s_server,sizeof(s_server));
|
||||||
@ -970,10 +933,11 @@ static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType
|
|||||||
{
|
{
|
||||||
system("sudo sed -i 's/spectralBin =.*/spectralBin = 2;/g' /media/nvme/300TC/config/ximea.cfg");
|
system("sudo sed -i 's/spectralBin =.*/spectralBin = 2;/g' /media/nvme/300TC/config/ximea.cfg");
|
||||||
}
|
}
|
||||||
|
closeXimeaRecordSystem();
|
||||||
|
|
||||||
extractSpectralBinAndBandnumber(true);
|
extractSpectralBinAndBandnumber(true);
|
||||||
|
|
||||||
strcpy(s_strUIMessage,"请重新上电!");
|
strcpy(s_strUIMessage,"请等待采集系统重启!");
|
||||||
messageTimeCounter = 0;
|
messageTimeCounter = 0;
|
||||||
messageTimespan = 10000;
|
messageTimespan = 10000;
|
||||||
|
|
||||||
@ -985,6 +949,34 @@ static T_DjiReturnCode PsdkTestWidget_SetWidgetValue_StartRecord(E_DjiWidgetType
|
|||||||
return DJI_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
|
return DJI_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void closeXimeaRecordSystem()
|
||||||
|
{
|
||||||
|
FILE *fp;
|
||||||
|
fp = popen("kill $(ps aux | grep ximeaAirborneSystem | grep -v grep | awk \'{print $2}\')", "r");
|
||||||
|
if (fp == NULL)
|
||||||
|
{
|
||||||
|
perror("popen");
|
||||||
|
}
|
||||||
|
|
||||||
|
s_strStateOfXimea=" ";
|
||||||
|
s_strStateOfSbg=" ";
|
||||||
|
s_strSbgSatelliteCounter=" ";
|
||||||
|
s_strSbgSolutionMode=" ";
|
||||||
|
sprintf(XimeaFramerate,"%s"," ");
|
||||||
|
sprintf(XimeaExposeTime,"%s"," ");
|
||||||
|
sprintf(XimeaExposeMaxValue,"%s"," ");
|
||||||
|
sprintf(s_spectralBin,"%s"," ");
|
||||||
|
s_remainingTime=" ";
|
||||||
|
|
||||||
|
s_widgetValueList[5] = 0;
|
||||||
|
// s_widgetValueList[6] = 0;
|
||||||
|
// s_widgetValueList[8] = 0;
|
||||||
|
framerate = 0;
|
||||||
|
exposeTimeInt = 0;
|
||||||
|
|
||||||
|
system("sudo gpio write 10 0");
|
||||||
|
}
|
||||||
|
|
||||||
static void extractSpectralBinAndBandnumber(bool isModifyBin)
|
static void extractSpectralBinAndBandnumber(bool isModifyBin)
|
||||||
{
|
{
|
||||||
unsigned long long spectralBin, height;
|
unsigned long long spectralBin, height;
|
||||||
@ -1029,17 +1021,7 @@ static void extractSpectralBinAndBandnumber(bool isModifyBin)
|
|||||||
pclose(fp);
|
pclose(fp);
|
||||||
}
|
}
|
||||||
|
|
||||||
char command[256];
|
s_widgetValueList[11] = spectralBin;
|
||||||
memset(command, 0, sizeof(command));
|
|
||||||
|
|
||||||
sprintf(command,"sudo sed -i 's/.*bin.*/ \"widget_name\": \"bin%d_%d\",/g' %s", spectralBin, height, jsonPathCn);
|
|
||||||
// printf("command: %s", command);
|
|
||||||
system(command);
|
|
||||||
|
|
||||||
memset(command, 0, sizeof(command));
|
|
||||||
sprintf(command,"sudo sed -i 's/.*bin.*/ \"widget_name\": \"bin%d_%d\",/g' %s", spectralBin, height, jsonPathEn);
|
|
||||||
// printf("command: %s", command);
|
|
||||||
system(command);
|
|
||||||
|
|
||||||
if (!isModifyBin)
|
if (!isModifyBin)
|
||||||
{
|
{
|
||||||
|
@ -8,96 +8,13 @@
|
|||||||
"is_enable": true
|
"is_enable": true
|
||||||
},
|
},
|
||||||
"speaker": {
|
"speaker": {
|
||||||
"is_enable_tts": true,
|
"is_enable_tts": false,
|
||||||
"is_enable_voice": false
|
"is_enable_voice": false
|
||||||
},
|
},
|
||||||
"widget_list": [
|
"widget_list": [
|
||||||
{
|
|
||||||
"widget_index": 0,
|
|
||||||
"widget_type": "button",
|
|
||||||
"widget_name": "按钮",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_button1.png",
|
|
||||||
"icon_file_name_unselected": "icon_button1.png"
|
|
||||||
},
|
|
||||||
"customize_rc_buttons_config": {
|
|
||||||
"is_enable": true,
|
|
||||||
"mapping_config_display_order": 0
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"widget_index": 1,
|
|
||||||
"widget_type": "list",
|
|
||||||
"widget_name": "列表",
|
|
||||||
"list_item": [
|
|
||||||
{
|
|
||||||
"item_name": "选项_1",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_list_item1.png",
|
|
||||||
"icon_file_name_unselected": "icon_list_item1.png"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"item_name": "选项_2",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_list_item2.png",
|
|
||||||
"icon_file_name_unselected": "icon_list_item2.png"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"customize_rc_buttons_config": {
|
|
||||||
"is_enable": true,
|
|
||||||
"mapping_config_display_order": 1
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"widget_index": 2,
|
|
||||||
"widget_type": "switch",
|
|
||||||
"widget_name": "开关",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_switch_select.png",
|
|
||||||
"icon_file_name_unselected": "icon_switch_unselect.png"
|
|
||||||
},
|
|
||||||
"customize_rc_buttons_config": {
|
|
||||||
"is_enable": true,
|
|
||||||
"mapping_config_display_order": 2
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"widget_index": 3,
|
|
||||||
"widget_type": "scale",
|
|
||||||
"widget_name": "范围条",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_scale.png",
|
|
||||||
"icon_file_name_unselected": "icon_scale.png"
|
|
||||||
},
|
|
||||||
"customize_rc_buttons_config": {
|
|
||||||
"is_enable": true,
|
|
||||||
"mapping_config_display_order": 3,
|
|
||||||
"button_value_step_length": 5
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"widget_index": 4,
|
|
||||||
"widget_type": "button",
|
|
||||||
"widget_name": "按钮",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_button1.png",
|
|
||||||
"icon_file_name_unselected": "icon_button1.png"
|
|
||||||
},
|
|
||||||
"customize_rc_buttons_config": {
|
|
||||||
"is_enable": true,
|
|
||||||
"mapping_config_display_order": 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"config_interface": {
|
"config_interface": {
|
||||||
"text_input_box": {
|
|
||||||
"widget_name": "文本输入框",
|
|
||||||
"placeholder_text": "请输入消息",
|
|
||||||
"is_enable": true
|
|
||||||
},
|
|
||||||
"widget_list": [
|
"widget_list": [
|
||||||
{
|
{
|
||||||
"widget_index": 5,
|
"widget_index": 5,
|
||||||
@ -108,7 +25,7 @@
|
|||||||
"widget_index": 6,
|
"widget_index": 6,
|
||||||
"widget_type": "int_input_box",
|
"widget_type": "int_input_box",
|
||||||
"widget_name": "帧率",
|
"widget_name": "帧率",
|
||||||
"int_input_box_hint": "单位:hz"
|
"int_input_box_hint": "单位:赫兹"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"widget_index": 7,
|
"widget_index": 7,
|
||||||
|
@ -8,96 +8,13 @@
|
|||||||
"is_enable": true
|
"is_enable": true
|
||||||
},
|
},
|
||||||
"speaker": {
|
"speaker": {
|
||||||
"is_enable_tts": true,
|
"is_enable_tts": false,
|
||||||
"is_enable_voice": false
|
"is_enable_voice": false
|
||||||
},
|
},
|
||||||
"widget_list": [
|
"widget_list": [
|
||||||
{
|
|
||||||
"widget_index": 0,
|
|
||||||
"widget_type": "button",
|
|
||||||
"widget_name": "Button",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_button1.png",
|
|
||||||
"icon_file_name_unselected": "icon_button1.png"
|
|
||||||
},
|
|
||||||
"customize_rc_buttons_config": {
|
|
||||||
"is_enable": true,
|
|
||||||
"mapping_config_display_order": 0
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"widget_index": 1,
|
|
||||||
"widget_type": "list",
|
|
||||||
"widget_name": "List",
|
|
||||||
"list_item": [
|
|
||||||
{
|
|
||||||
"item_name": "Item_1",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_list_item1.png",
|
|
||||||
"icon_file_name_unselected": "icon_list_item1.png"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"item_name": "Item_2",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_list_item2.png",
|
|
||||||
"icon_file_name_unselected": "icon_list_item2.png"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"customize_rc_buttons_config": {
|
|
||||||
"is_enable": true,
|
|
||||||
"mapping_config_display_order": 1
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"widget_index": 2,
|
|
||||||
"widget_type": "switch",
|
|
||||||
"widget_name": "Switch",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_switch_select.png",
|
|
||||||
"icon_file_name_unselected": "icon_switch_unselect.png"
|
|
||||||
},
|
|
||||||
"customize_rc_buttons_config": {
|
|
||||||
"is_enable": true,
|
|
||||||
"mapping_config_display_order": 2
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"widget_index": 3,
|
|
||||||
"widget_type": "scale",
|
|
||||||
"widget_name": "Scale",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_scale.png",
|
|
||||||
"icon_file_name_unselected": "icon_scale.png"
|
|
||||||
},
|
|
||||||
"customize_rc_buttons_config": {
|
|
||||||
"is_enable": true,
|
|
||||||
"mapping_config_display_order": 3,
|
|
||||||
"button_value_step_length": 5
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"widget_index": 4,
|
|
||||||
"widget_type": "button",
|
|
||||||
"widget_name": "Button",
|
|
||||||
"icon_file_set": {
|
|
||||||
"icon_file_name_selected": "icon_button1.png",
|
|
||||||
"icon_file_name_unselected": "icon_button1.png"
|
|
||||||
},
|
|
||||||
"customize_rc_buttons_config": {
|
|
||||||
"is_enable": true,
|
|
||||||
"mapping_config_display_order": 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"config_interface": {
|
"config_interface": {
|
||||||
"text_input_box": {
|
|
||||||
"widget_name": "TextInputBox",
|
|
||||||
"placeholder_text": "Please input message",
|
|
||||||
"is_enable": true
|
|
||||||
},
|
|
||||||
"widget_list": [
|
"widget_list": [
|
||||||
{
|
{
|
||||||
"widget_index": 5,
|
"widget_index": 5,
|
||||||
@ -108,7 +25,7 @@
|
|||||||
"widget_index": 6,
|
"widget_index": 6,
|
||||||
"widget_type": "int_input_box",
|
"widget_type": "int_input_box",
|
||||||
"widget_name": "帧率",
|
"widget_name": "帧率",
|
||||||
"int_input_box_hint": "单位:hz"
|
"int_input_box_hint": "单位:赫兹"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"widget_index": 7,
|
"widget_index": 7,
|
||||||
|
Reference in New Issue
Block a user