diff --git a/protos/device_state.proto b/protos/device_state.proto index 63ddbc2..b389750 100644 --- a/protos/device_state.proto +++ b/protos/device_state.proto @@ -2,6 +2,7 @@ syntax = "proto3"; import "stationLayoutGraphics.proto"; import "common_data.proto"; import "request.proto"; +import "tccGraphics.proto"; package state; option java_package = "club.joylink.bjrtss.ats.verify.protos"; option java_outer_classname = "DeviceStateProto"; @@ -181,8 +182,7 @@ message TrainState{ string tailDevicePort = 22; // BTM状态 BTMState btmState = 23; - //列车连接三方状态 - TrainConnState connState = 24; + TrainControlState tcc = 24; } // 动力学列车状态 @@ -436,7 +436,7 @@ message TrainMapState{ string tailDevicePort = 68; // BTM状态 BTMState btmState = 69; - TrainConnState connState = 70; + } message BTMState { @@ -696,3 +696,34 @@ message SimulationThirdPartyApiServiceState { // 服务状态 SimulationThirdPartyApiService.State state = 2; } + +message TrainControlState{ + TrainConnState connState = 1; + EmergentButton ebutton = 2; + repeated DriverKeySwitch driverKey = 3; + DirectionKeySwitch dirKey = 4; + PushHandler pushHandler = 5; + + message EmergentButton{ + uint32 id = 1; + bool passed = 3; + + } + message DriverKeySwitch{ + uint32 id = 1; + bool val = 2; //0=关,1=开 + request.DriverType dt = 3; + + } + message DirectionKeySwitch{ + uint32 id = 1; + uint32 val = 2; //0=关,1=开,2=中间 + } + //牵引制动手柄 + message PushHandler{ + uint32 id = 1; + int32 val = 2; // 牵引或制动 大于0是牵引,小于0是制动 整体按照整型传输(*100),使用时除以100 + } +} + + diff --git a/protos/request.proto b/protos/request.proto index 7b65a94..740c2af 100644 --- a/protos/request.proto +++ b/protos/request.proto @@ -185,3 +185,45 @@ message PsdParam { Psd.Force force = 2; // 屏蔽门强制设置 Psd.Fault fault = 3; // 屏蔽门故障设置 } + +//列车控制 +message TrainControl{ + string simulationId = 1; // 仿真id + uint32 trainId = 2; + uint32 deviceId = 3;//设备id + TrainControlType controlType = 4; + EmergentButton button = 5;// 紧急制动 + DriverKeySwitch driverKey = 6; + DirectionKeySwitch dirKey = 7; //方向 + PushHandler handler = 8; //手柄 + enum TrainControlType{ + EMERGENT_BUTTON = 0; // 摁钮 + DRIVER_KEY_SWITCH = 1; //驾驶端钥匙 + DIRECTION_KEY_SWITCH = 2;//方向钥匙 + HANDLER = 3; //手柄 + } + + //紧急制动 + message EmergentButton{ + bool active = 1; + } + + //驾驶 + message DriverKeySwitch{ + bool val = 1; //0=关,1=开 + DriverType dt = 2; + + } + message DirectionKeySwitch{ + uint32 val = 1; //0=后,1=前,2=中位 + } + //牵引或制动手柄 + message PushHandler{ + int32 val = 1; // 牵引或制动 大于0是牵引,小于0是制动 整体按照整型传输(*100),使用时除以100 + } + +} +enum DriverType{ + ONE_END = 0; + TWO_END = 1; +} diff --git a/protos/tccGraphics.proto b/protos/tccGraphics.proto index 8ad7e25..06f4c09 100644 --- a/protos/tccGraphics.proto +++ b/protos/tccGraphics.proto @@ -30,16 +30,16 @@ message TccText { /** TCC钥匙 */ message TccKey { - enum TccKeyType { - driverControllerActivationClint = 0; //司控器激活端 - frontAndRearDirectionalControl = 1;//前后方向控制 - } + graphicData.CommonInfo common = 1; string code = 2; TccKeyType type = 3; } - +enum TccKeyType { + driverControllerActivationClint = 0; //司控器激活端 + frontAndRearDirectionalControl = 1;//前后方向控制 +} /** TCC手柄 */ message TccHandle { graphicData.CommonInfo common = 1;