Merge remote-tracking branch 'origin/dev_arch_opt_3.0' into dev_arch_opt_3.0

This commit is contained in:
donghongyu
2023-01-11 19:28:41 +08:00
16 changed files with 517 additions and 13 deletions

View File

@@ -180,6 +180,13 @@ class MoGoAdasListenerImpl : OnAdasListener {
CallerChassisThrottleStateListenerManager.invokeAutopilotThrottle(vehicleState.throttle)
//刹车
CallerChassisBrakeStateListenerManager.invokeAutopilotBrake(vehicleState.brake)
//电量
if (vehicleState.hasBmsSoc()) {
CallerBatteryManagementSystemListenerManager.invokeBatteryManagementSystemStates(
ChassisStatesOuterClass.BMSSystemStates.newBuilder()
.setBmsSoc(vehicleState.bmsSoc).build()
)
}
//清扫车(福田)清扫控制系统状态
vehicleState.sweeperFutianCleanSystemState?.also { sweeperState ->
val bytes: ByteArray = sweeperState.toByteArray()
@@ -188,6 +195,12 @@ class MoGoAdasListenerImpl : OnAdasListener {
CallerSweeperFutianCleanSystemListenerManager.invokeSweeperFutianCleanSystemState(it)
}
}
//金旅M1
vehicleState.roboBusJinlvM1State?.also {
if (vehicleState.hasRoboBusJinlvM1State()) {
CallerRoboBusJinlvM1StatesListenerManager.invokeRoboBusJinlvM1States(it)
}
}
} else {
CallerAutopilotVehicleStateListenerManager.invokeAutopilotDataException(header.timestamp.toLong())
}
@@ -239,6 +252,10 @@ class MoGoAdasListenerImpl : OnAdasListener {
//刹车
CallerChassisBrakeStateListenerManager.invokeAutopilotBrake(it.brakePedalResponsePosition)
}
chassisStates.bmsSystemStates?.let {
//电量
CallerBatteryManagementSystemListenerManager.invokeBatteryManagementSystemStates(it)
}
chassisStates.taskSystemStates?.let { taskSystemStates ->
taskSystemStates.sweeperFutianTaskSystemStates?.let {
//清扫车(福田)清扫控制系统状态

View File

@@ -0,0 +1,13 @@
package com.mogo.eagle.core.function.api.autopilot
import chassis.ChassisStatesOuterClass
/**
* 电池管理系统
*/
interface IMoGoBatteryManagementSystemListener {
/**
* 电池管理系统
*/
fun onBatteryManagementSystemStates(states: ChassisStatesOuterClass.BMSSystemStates)
}

View File

@@ -0,0 +1,12 @@
package com.mogo.eagle.core.function.api.autopilot
import chassis.ChassisStatesOuterClass
import chassis.VehicleStateOuterClass
/**
* 金旅M1
*/
interface IMoGoRoboBusJinlvM1StatesListener {
fun onRoboBusJinlvM1States(states: VehicleStateOuterClass.RoboBusJinlvM1State)
}

View File

@@ -0,0 +1,21 @@
package com.mogo.eagle.core.function.call.autopilot
import chassis.ChassisStatesOuterClass
import com.mogo.eagle.core.function.api.autopilot.IMoGoBatteryManagementSystemListener
import com.mogo.eagle.core.function.call.base.CallerBase
/**
* 电池管理系统 包含 电量剩余百分比 电压 电流等
*/
object CallerBatteryManagementSystemListenerManager : CallerBase<IMoGoBatteryManagementSystemListener>() {
/**
* 电池管理系统
*/
fun invokeBatteryManagementSystemStates(states: ChassisStatesOuterClass.BMSSystemStates) {
M_LISTENERS.forEach {
val listener = it.value
listener.onBatteryManagementSystemStates(states)
}
}
}

View File

@@ -0,0 +1,22 @@
package com.mogo.eagle.core.function.call.autopilot
import chassis.ChassisStatesOuterClass
import chassis.VehicleStateOuterClass
import com.mogo.eagle.core.function.api.autopilot.IMoGoRoboBusJinlvM1StatesListener
import com.mogo.eagle.core.function.call.base.CallerBase
/**
* 金旅M1
*/
object CallerRoboBusJinlvM1StatesListenerManager : CallerBase<IMoGoRoboBusJinlvM1StatesListener>() {
/**
* 电池管理系统
*/
fun invokeRoboBusJinlvM1States(states: VehicleStateOuterClass.RoboBusJinlvM1State) {
M_LISTENERS.forEach {
val listener = it.value
listener.onRoboBusJinlvM1States(states)
}
}
}