[8.1.0]多链路数据控制

This commit is contained in:
xuxinchao
2025-06-08 17:42:46 +08:00
parent d7430b8dfd
commit a6a6437d17

View File

@@ -368,7 +368,7 @@ class OperatePanelLayout : LinearLayout {
when (pref.key) {
//NDE数据上车上行
NDE_UPWARD_SWITCH->{
return FunctionBuildConfig.ndeUpwardSwitch
}
//车辆图像上传行云大模型
IMAGE_UPLOAD_SWITCH->{
@@ -376,27 +376,27 @@ class OperatePanelLayout : LinearLayout {
}
//NDE数据上车下行
NDE_DOWNWARD_SWITCH->{
return FunctionBuildConfig.ndeDownwardSwitch
}
//事件数据进PNC应用
NDE_EVENT_DATA_TO_PNC->{
return FunctionBuildConfig.ndeEventDataToPnc
}
//感知数据进PNC应用
NDE_PERCEPTION_DATA_TO_PNC->{
return FunctionBuildConfig.ndePerceptionDataToPnc
}
//云控基础平台上行
CLOUD_CONTROL_UPWARD->{
return FunctionBuildConfig.cloudControlUpward
}
//云控基础平台下行
CLOUD_CONTROL_DOWNWARD->{
return FunctionBuildConfig.cloudControlDownward
}
//OBU上报V2I、V2V上行
OBU_UPWARD_SWITCH->{
return FunctionBuildConfig.obuUpwardSwitch
}
//V2I下行
V2I_DOWNWARD_SWITCH->{
@@ -408,7 +408,7 @@ class OperatePanelLayout : LinearLayout {
}
//感知数据进PNC应用
V2I_PERCEPTION_DATA_TO_PNC->{
return FunctionBuildConfig.v2iPerceptionDataToPnc
}
//V2V下行
V2V_DOWNWARD_SWITCH->{
@@ -423,7 +423,28 @@ class OperatePanelLayout : LinearLayout {
when (preference.key) {
//NDE数据上车上行
NDE_UPWARD_SWITCH->{
val isChecked = newValue as? Boolean ?: false
FunctionBuildConfig.ndeUpwardSwitch = isChecked
//NDE数据上车上行命令开关
CallerAutoPilotControlManager.sendForceStopOrStartCloudReq(1,1,isChecked)
//查询NDE数据上车上行设置状态设置完成后延迟500毫秒进行查询
UiThreadHandler.postDelayed({
CallerAutoPilotControlManager.sendCloudConfigRequest()
}, 500)
if(isChecked){
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(IMAGE_UPLOAD_SWITCH)?.also { changeValue(it, FunctionBuildConfig.isImageUpload) }//车辆图像上传行云大模型
}else{
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(IMAGE_UPLOAD_SWITCH)?.also { changeValue(it, false) }//车辆图像上传行云大模型
//域控摄像头上传NDE云开关命令
CallerAutoPilotControlManager.sendImgUploadCloudEnable(false)
//查询域控摄像头上传NDE云开关状态查询,设置完成后延迟500毫秒进行查询
UiThreadHandler.postDelayed({
CallerAutoPilotControlManager.sendImgUploadCloudStatusQuery()
}, 500)
}
hmiAction("NDE数据上车上行, ", isChecked)
clickEventAnalytics("NDE数据上车上行", isChecked)
return true
}
//车辆图像上传行云大模型
IMAGE_UPLOAD_SWITCH->{
@@ -435,43 +456,124 @@ class OperatePanelLayout : LinearLayout {
UiThreadHandler.postDelayed({
CallerAutoPilotControlManager.sendImgUploadCloudStatusQuery()
}, 500)
hmiAction("SOP 车辆图像上传行云大模型, ", isChecked)
hmiAction("车辆图像上传行云大模型, ", isChecked)
clickEventAnalytics("车辆图像上传行云大模型", isChecked)
return true
}
//NDE数据上车下行
NDE_DOWNWARD_SWITCH->{
val isChecked = newValue as? Boolean ?: false
FunctionBuildConfig.ndeDownwardSwitch = isChecked
CallerAutoPilotControlManager.sendForceStopOrStartCloudReq(1,2,isChecked)
//查询NDE数据上车上行设置状态设置完成后延迟500毫秒进行查询
UiThreadHandler.postDelayed({
CallerAutoPilotControlManager.sendCloudConfigRequest()
}, 500)
hmiAction("NDE数据上车下行, ", isChecked)
clickEventAnalytics("NDE数据上车下行", isChecked)
if(isChecked){
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(NDE_EVENT_DATA_TO_PNC)?.also { changeValue(it, FunctionBuildConfig.ndeEventDataToPnc) }//事件数据进PNC应用
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(NDE_PERCEPTION_DATA_TO_PNC)?.also { changeValue(it, FunctionBuildConfig.ndePerceptionDataToPnc) }//感知数据进PNC应用
}else{
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(NDE_EVENT_DATA_TO_PNC)?.also { changeValue(it, false) }//事件数据进PNC应用
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(NDE_PERCEPTION_DATA_TO_PNC)?.also { changeValue(it, false) }//感知数据进PNC应用
}
return true
}
//事件数据进PNC应用
NDE_EVENT_DATA_TO_PNC->{
val isChecked = newValue as? Boolean ?: false
FunctionBuildConfig.ndeEventDataToPnc = isChecked
if(isChecked){
CallerAutoPilotControlManager.sendNdeDownEventToPnc(1)
}else{
CallerAutoPilotControlManager.sendNdeDownEventToPnc(0)
}
//查询事件数据进PNC应用
UiThreadHandler.postDelayed({
CallerAutoPilotControlManager.sendGetParamReq(AdasConstants.MapSystemParamType.V2N_TO_PNC)
}, 500)
hmiAction("事件数据进PNC应用, ", isChecked)
clickEventAnalytics("事件数据进PNC应用", isChecked)
return true
}
//感知数据进PNC应用
NDE_PERCEPTION_DATA_TO_PNC->{
val isChecked = newValue as? Boolean ?: false
FunctionBuildConfig.ndePerceptionDataToPnc = isChecked
if(isChecked){
CallerAutoPilotControlManager.sendNdeDownPerceptionToPnc(1)
}else{
CallerAutoPilotControlManager.sendNdeDownPerceptionToPnc(0)
}
//查询感知数据进PNC应用
UiThreadHandler.postDelayed({
CallerAutoPilotControlManager.sendGetParamReq(AdasConstants.MapSystemParamType.PERCEPTION_TO_PNC)
}, 500)
hmiAction("感知数据进PNC应用, ", isChecked)
clickEventAnalytics("感知数据进PNC应用", isChecked)
return true
}
//云控基础平台上行
CLOUD_CONTROL_UPWARD->{
val isChecked = newValue as? Boolean ?: false
FunctionBuildConfig.cloudControlUpward = isChecked
CallerAutoPilotControlManager.sendForceStopOrStartCloudReq(2,1,isChecked)
//查询云控基础平台上行状态
UiThreadHandler.postDelayed({
CallerAutoPilotControlManager.sendCloudConfigRequest()
}, 500)
hmiAction("云控基础平台上行, ", isChecked)
clickEventAnalytics("云控基础平台上行", isChecked)
return true
}
//云控基础平台下行
CLOUD_CONTROL_DOWNWARD->{
val isChecked = newValue as? Boolean ?: false
FunctionBuildConfig.cloudControlDownward = isChecked
CallerAutoPilotControlManager.sendForceStopOrStartCloudReq(2,2,isChecked)
//查询云控基础平台下行状态
UiThreadHandler.postDelayed({
CallerAutoPilotControlManager.sendCloudConfigRequest()
}, 500)
hmiAction("云控基础平台下行, ", isChecked)
clickEventAnalytics("云控基础平台下行", isChecked)
return true
}
//OBU上报V2I、V2V上行
OBU_UPWARD_SWITCH->{
val isChecked = newValue as? Boolean ?: false
FunctionBuildConfig.obuUpwardSwitch = isChecked
//域控上报OBU开关控制
if(isChecked){
CallerAutoPilotControlManager.sendSetObuUploadReq(1)
}else{
CallerAutoPilotControlManager.sendSetObuUploadReq(0)
}
//域控上报OBU开关状态查询,设置完成后延迟500毫秒进行查询
UiThreadHandler.postDelayed({
CallerAutoPilotControlManager.sendObuUploadStatusQuery()
}, 500)
hmiAction("OBU上报V2I、V2V上行, ", isChecked)
clickEventAnalytics("OBU上报V2I、V2V上行", isChecked)
return true
}
//V2I下行
V2I_DOWNWARD_SWITCH->{
val isChecked = newValue as? Boolean ?: false
FunctionBuildConfig.v2iDownwardSwitch = isChecked
hmiAction("V2I下行, ", isChecked)
if (!isChecked) {
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(V2I_WEAK_TRAFFIC_PARTICIPANT)?.also { changeValue(it, false) }
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(V2I_PERCEPTION_DATA_TO_PNC)?.also { changeValue(it, false) }
}
if(isChecked){
CallerAutoPilotControlManager.sendV2iDownPerceptionToPnc(1)
}else{
CallerAutoPilotControlManager.sendV2iDownPerceptionToPnc(0)
}
//TODO 查询
hmiAction("V2I下行, ", isChecked)
clickEventAnalytics("V2I下行", isChecked)
return true
}
@@ -485,14 +587,20 @@ class OperatePanelLayout : LinearLayout {
}
//感知数据进PNC应用
V2I_PERCEPTION_DATA_TO_PNC->{
val isChecked = newValue as? Boolean ?: false
FunctionBuildConfig.v2iPerceptionDataToPnc = isChecked
//TODO
hmiAction("感知数据进PNC应用, ", isChecked)
clickEventAnalytics("感知数据进PNC应用", isChecked)
return true
}
//V2V下行
V2V_DOWNWARD_SWITCH->{
val isChecked = newValue as? Boolean ?: false
FunctionBuildConfig.v2vDownwardSwitch = isChecked
clickEventAnalytics("V2V下行", isChecked)
hmiAction("V2V下行, ", isChecked)
clickEventAnalytics("V2V下行", isChecked)
return true
}
}
@@ -504,7 +612,23 @@ class OperatePanelLayout : LinearLayout {
* @param config 数据
*/
override fun onCloudConfig(config: MessagePad.CloudConfig) {
//TODO
// //云连接地址
// message CloudLinkAddr
// {
// uint32 type = 1;//0:蘑菇云 1:NDE云 2:基础平台云
// uint32 direction = 2;//0:上行和下行 1:上行 2:下行
// string domain = 3;//域名
// uint32 port = 4;//端口 0xFFFFFFFF 无效值
// bool enable = 5;//连接使能开关, true:开 false:关闭
// string ip = 6;//ip
// }
//
////域控连接的云端配置
// message CloudConfig
// {
// repeated CloudLinkAddr addrs = 1;
// }
}
/**
@@ -520,7 +644,12 @@ class OperatePanelLayout : LinearLayout {
* @param adasParam 解析后的配置参数
*/
override fun onGetParamResp(getParamResp: MessagePad.SetParamReq, adasParam: AdasParam) {
//融合v2n开关 NDE下行事件数据进pnc
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(NDE_EVENT_DATA_TO_PNC)?.also { changeValue(it,adasParam.v2nToPnc==1) }
//融合v2i开关 V2I下行感知数据进pnc
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(V2I_PERCEPTION_DATA_TO_PNC)?.also { changeValue(it,adasParam.v2iToPnc==1) }
//NDE下行感知数据进pnc
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(NDE_PERCEPTION_DATA_TO_PNC)?.also { changeValue(it,adasParam.perceptionToPnc==1) }
}
/**
@@ -528,7 +657,7 @@ class OperatePanelLayout : LinearLayout {
* @param enable 数据
*/
override fun onObuUploadStatus(enable: MessagePad.SetEnableReq) {
preferenceScreen.findPreferenceReal<SwitchPreferenceCompat>(OBU_UPWARD_SWITCH)?.also { changeValue(it, enable.enable==1) }
}
}
@@ -1346,7 +1475,9 @@ class OperatePanelLayout : LinearLayout {
return true
}
KEY_CHANGE_LANE_SPEED_THRESHOLDS -> {
FunctionBuildConfig.detouringSpeed = preference.extras.getDouble(PreferenceWithSpeedSetting.KEY_BUNDLE_CURRENT_VALUE, FunctionBuildConfig.detouringSpeed.toDouble())
FunctionBuildConfig.detouringSpeed = preference.extras.getDouble(PreferenceWithSpeedSetting.KEY_BUNDLE_CURRENT_VALUE,
FunctionBuildConfig.detouringSpeed
)
hmiAction("SOP 变道绕障的目标障碍物速度阈值", FunctionBuildConfig.detouringSpeed)
val isSuccess = CallerAutoPilotControlManager.sendDetouringSpeed(FunctionBuildConfig.detouringSpeed)
if (isSuccess == true) {