rts-sim-module/proto/src/cg_repo.proto

479 lines
10 KiB
Protocol Buffer
Raw Normal View History

2023-11-16 16:12:37 +08:00
syntax = "proto3";
package message;
2023-12-27 09:15:26 +08:00
option go_package = "./repo/dto";
2023-11-16 16:12:37 +08:00
2023-12-27 13:04:19 +08:00
// 城轨数据
message CgRepo {
2023-12-27 09:15:26 +08:00
string id = 1;
2023-12-27 13:04:19 +08:00
// 线路数据
repeated Line lines = 2;
// 监控盘(IBP/PSL/MKX等)数据,线路相关数据会引用这里
repeated JKP jkps = 3;
2023-11-16 16:12:37 +08:00
}
2023-12-27 09:15:26 +08:00
// 列车运行方向(Train Running Direction)
enum TRD {
// 上行
Upward = 0;
// 下行
Downward = 1;
}
2023-11-16 16:12:37 +08:00
// 城轨线路数据
message Line {
// 所在城市
string city = 1;
// 线路编号
2023-12-27 09:15:26 +08:00
string lineId = 2;
// 信号布置
XHBZ xhbz = 3;
// 继电器柜布置
repeated CiJDQBZ jdqbz = 4;
2023-11-16 16:12:37 +08:00
}
// 信号布置数据
message XHBZ {
// 数据id
2023-12-27 09:15:26 +08:00
string id = 1;
2023-11-16 16:12:37 +08:00
// 车站
repeated Station stations = 2;
// 站台
repeated Platform platforms = 3;
// 屏蔽门
repeated Psd psds = 4;
2023-12-27 09:15:26 +08:00
// 区段
repeated Section sections = 5;
2023-11-16 16:12:37 +08:00
// 道岔
repeated Turnout turnouts = 6;
2023-12-27 09:15:26 +08:00
// 检测点
repeated DevidingPoint devidingPoints = 7;
2023-11-16 16:12:37 +08:00
// 信号机
2023-12-27 09:15:26 +08:00
repeated Signal signals = 8;
// 应答器(欧标)
repeated Balise balises = 9;
2023-11-16 16:12:37 +08:00
// 停车点
2023-12-27 09:15:26 +08:00
repeated ParkingSpot parkingSpots = 10;
2023-11-16 16:12:37 +08:00
// 坡度
2023-12-27 09:15:26 +08:00
repeated Pd pds = 11;
2023-11-16 16:12:37 +08:00
// 曲度
2023-12-27 09:15:26 +08:00
repeated Qd qds = 12;
// 紧急关闭(停车)按钮
repeated EMP emps = 13;
// 发车计时器(Train Depart Timer,TDT 或 Depart Time Indicator,DTI)
repeated TDT tdts = 14;
2023-11-16 16:12:37 +08:00
// 门控箱
2023-12-27 09:15:26 +08:00
repeated Mkx mkxs = 15;
2023-11-16 16:12:37 +08:00
// 就地控制盘
2023-12-27 09:15:26 +08:00
repeated PSL psls = 16;
2023-11-16 16:12:37 +08:00
// 人员防护开关
2023-12-27 09:15:26 +08:00
repeated SPKS spks = 17;
// 设备电子元件组合
repeated DeviceEcc deviceEccs = 18;
2023-11-16 16:12:37 +08:00
}
// 人员防护开关
message SPKS {
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 编号
string code = 2;
// 关联站台id
uint32 platformId = 3;
2023-11-16 16:12:37 +08:00
}
// 就地控制盘
message PSL {
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 编号
string code = 2;
// 关联屏蔽门id
uint32 psdId = 3;
2023-11-16 16:12:37 +08:00
}
// 门控箱
message Mkx {
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 编号
string code = 2;
// 关联屏蔽门id
uint32 psdId = 3;
2023-11-16 16:12:37 +08:00
}
// 发车计时器
message TDT {
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 编号
string code = 2;
// 关联站台id
uint32 platformId = 3;
2023-11-16 16:12:37 +08:00
}
// 紧急关闭/停车按钮
message EMP {
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 编号
string code = 2;
// 关联站台id
uint32 platformId = 3;
2023-11-16 16:12:37 +08:00
}
// 曲度
message Qd {
uint32 id = 1;
}
// 坡度
message Pd {
uint32 id = 1;
}
// 停车点
message ParkingSpot {
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 列车编组数量
uint32 tgn = 2;
// 公里标
GLB glb = 3;
2023-11-16 16:12:37 +08:00
}
// 应答器
message Balise {
2023-12-27 09:15:26 +08:00
// 应答器类型
enum Type {
// 无源应答器
FB = 0;
// 有源应答器
TB = 1;
}
2023-11-16 16:12:37 +08:00
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 应答器类型
Type type = 2;
// 应答器编号
string code = 3;
// 所属设备集中站id
uint32 ecsId = 4;
2023-11-16 16:12:37 +08:00
}
2023-12-27 09:15:26 +08:00
//区段分界点
message DevidingPoint {
// 区段分界点类型
2023-11-16 16:12:37 +08:00
enum Type {
2023-12-27 09:15:26 +08:00
//区段边界
Boundary = 0;
//计轴器
JZ = 1;
//绝缘节
JYJ = 2;
2023-11-16 16:12:37 +08:00
}
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 区段分界点类型
2023-11-16 16:12:37 +08:00
Type type = 2;
2023-12-27 09:15:26 +08:00
// 区段分界点编号
string code = 3;
2023-11-16 16:12:37 +08:00
// 公里标
2023-12-27 09:15:26 +08:00
GLB glb = 4;
// 关联的物理区段/道岔端点
repeated SectionPort sectionPorts = 5;
// 所属设备集中站id
repeated uint32 ecsIds = 6;
2023-11-16 16:12:37 +08:00
}
2023-12-27 13:04:19 +08:00
// 模型
message Model {
// 模型类型
2023-11-16 16:12:37 +08:00
enum Type {
2023-12-27 13:04:19 +08:00
// 未知无效
2023-12-27 09:15:26 +08:00
Unknown = 0;
2023-11-16 16:12:37 +08:00
// 区段
2023-12-27 09:15:26 +08:00
Section = 1;
2023-11-16 16:12:37 +08:00
// 道岔
2023-12-27 09:15:26 +08:00
Turnout = 2;
2023-11-16 16:12:37 +08:00
// 信号机
2023-12-27 09:15:26 +08:00
Signal = 3;
2023-11-16 16:12:37 +08:00
}
2023-12-27 13:04:19 +08:00
// 模型id
2023-11-16 16:12:37 +08:00
uint32 id = 1;
2023-12-27 13:04:19 +08:00
// 模型类型
2023-11-16 16:12:37 +08:00
Type type = 2;
}
2023-12-27 09:15:26 +08:00
// 区段端点
message SectionPort {
2023-12-27 13:04:19 +08:00
enum Type {
2023-12-27 09:15:26 +08:00
A = 0;
B = 1;
C = 2;
}
2023-12-27 13:04:19 +08:00
// 元素类型
// enum ElementType {
// // 区段
// Section = 0;
// // 道岔
// Turnout = 1;
// }
2023-12-27 09:15:26 +08:00
// 类型
2023-12-27 13:04:19 +08:00
Model.Type type = 1;
2023-12-27 09:15:26 +08:00
// 区段/道岔 id
uint32 id = 2;
// 端点
2023-12-27 13:04:19 +08:00
Type port = 3;
2023-11-16 16:12:37 +08:00
}
// 信号机
message Signal {
2023-12-27 09:15:26 +08:00
// 信号机模型型号
2023-11-16 16:12:37 +08:00
enum Model {
2023-12-27 09:15:26 +08:00
// 红绿黄三显示信号机
// 红绿黄三显示引导为红黄
// 红绿黄三显示,不封,有单黄,有引导
HLU_0_1_1 = 0;
// 红绿黄三显示,不封,无单黄,有引导
HLU_0_0_1 = 1;
// 红绿黄三显示,不封,有单黄,无引导
HLU_0_1_0 = 2;
// 红绿黄三显示,封黄,无单黄,有引导
HLU_U_0_0 = 3;
// 红绿黄三显示,封绿,有单黄,有引导
HLU_L_1_1 = 4;
// 红绿黄三显示,封绿,有单黄,无引导
HLU_L_1_0 = 5;
// 红绿黄三显示,全封
HLU_LU_0_0 = 6;
// 红绿二显示信号机
// 红绿二显示,不封
HL_0 = 7;
// 红绿二显示,封绿
HL_L = 8;
// 红黄二显示,不封
HU_0 = 9;
// 红黄二显示,封黄
HU_U = 10;
// 单红显示信号机
H = 11;
// 蓝白二显示信号机
AB = 12;
// 红白黄三显示信号机
// 红白黄三显示,不封,有单黄,无引导
HBU_0_1_0 = 13;
// 红白黄三显示,封黄,无单黄,无引导
HBU_U_0_0 = 14;
2023-11-16 16:12:37 +08:00
}
uint32 id = 1;
// 信号机编号
string code = 2;
2023-12-27 09:15:26 +08:00
// 信号机模型型号
Model model = 3;
// 所属设备集中站id
uint32 ecsId = 4;
2023-12-27 13:04:19 +08:00
// 列车运行方向(上下行)
TRD trd = 5;
2023-11-16 16:12:37 +08:00
}
// 道岔
message Turnout {
2023-12-27 09:15:26 +08:00
// 道岔模型型号
enum Model {
// ZDJ9单机牵引
ZDJ9_1 = 0;
// ZDJ9双机牵引
ZDJ9_2 = 1;
}
2023-11-16 16:12:37 +08:00
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 道岔编号
string code = 2;
// 道岔模型型号
Model model = 3;
// 道岔A端关联的区段/道岔端点
SectionPort asp = 4;
// 道岔B端关联的区段/道岔端点
SectionPort bsp = 5;
// 道岔C端关联的区段/道岔端点
SectionPort csp = 6;
// 所属设备集中站id
uint32 ecsId = 7;
2023-11-16 16:12:37 +08:00
}
// 物理区段
2023-12-27 09:15:26 +08:00
message Section {
// 物理区段类型
enum Type {
// 一般物理区段
Physical = 0;
// 道岔物理区段
TurnoutPhysical = 1;
// 逻辑区段
Logical = 2;
}
2023-11-16 16:12:37 +08:00
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 编号
string code = 2;
// 物理区段类型
Type type = 3;
// 物理区段A端关联的区段/道岔端点
SectionPort asp = 4;
// 物理区段B端关联的区段/道岔端点
SectionPort bsp = 5;
// 所属设备集中站id
uint32 ecsId = 6;
2023-12-27 13:04:19 +08:00
// 列车运行方向(上下行)
TRD trd = 7;
2023-11-16 16:12:37 +08:00
}
// 屏蔽门
message Psd {
uint32 id = 1;
2023-12-27 09:15:26 +08:00
// 编号
string code = 2;
// 关联的站台
uint32 platformId = 3;
2023-11-16 16:12:37 +08:00
}
//站台
message Platform {
uint32 id = 1;
// 编号
string code = 2;
// 所属车站
uint32 stationId = 3;
// 关联物理区段(站台轨)
uint32 physicalSectionId = 4;
}
// 车站
message Station {
uint32 id = 1;
// 车站名
string name = 2;
// 车站站名
string zname = 3;
2023-12-27 09:15:26 +08:00
// 车站公里标
2023-11-16 16:12:37 +08:00
GLB glb = 4;
2023-12-27 09:15:26 +08:00
// 是否设备集中站(Equipment centralized station)
bool isEcs = 5;
// 是否停车场/车辆段
bool isCd = 6;
// 集中站关联下属车站
repeated uint32 ecsStationIds = 7;
2023-11-16 16:12:37 +08:00
}
//公里标
message GLB {
//坐标系编号
string zbx = 1;
//左右行
bool right = 2;
//公里标值,单位mm
int64 value = 3;
}
// 联锁设备布置数据
2023-12-27 09:15:26 +08:00
message CiJDQBZ {
2023-11-16 16:12:37 +08:00
// 设备集中站uid
2023-12-27 09:15:26 +08:00
string ecsName = 1;
2023-11-16 16:12:37 +08:00
// 继电器
repeated Relay relays = 2;
// 断相保护器
repeated PFP pfps = 3;
// 设备电气组合组
2023-12-27 09:15:26 +08:00
repeated DeviceEcc deviceEcgDatas = 4;
2023-11-16 16:12:37 +08:00
// 联锁采集码表
repeated CiCjTable cjt = 5;
// 联锁驱动码表
repeated CiQdTable qdt = 6;
// 联锁区段码位表
2023-12-27 09:15:26 +08:00
repeated uint32 sectionIds = 7;
2023-11-16 16:12:37 +08:00
}
// 联锁区段码位表
message CiSectionTable {
// 区段id
repeated uint32 sectionIds = 1;
}
// 联锁驱动码表
message CiQdTable {
2023-12-27 09:15:26 +08:00
// 继电器id(按位顺序排列)
repeated string relayIds = 1;
2023-11-16 16:12:37 +08:00
}
// 联锁采集码表
message CiCjTable {
2023-12-27 09:15:26 +08:00
// 采集继电器接点(按位顺序排列)
2023-11-16 16:12:37 +08:00
repeated CiCjItem items = 1;
}
// 联锁采集项
message CiCjItem {
// 继电器id
2023-12-27 09:15:26 +08:00
string uint32 = 1;
2023-11-16 16:12:37 +08:00
// 采集继电器前后接点(前接点为吸起/定位),true-前接点,false-后接点
bool q = 2;
}
// 断相保护器(Phase failure protector)
message PFP {
uint32 id = 1;
// 编号
string code = 2;
}
// 继电器
message Relay {
// 继电器型号
enum Model {
JPXC_1000 = 0;
JPXC_1700 = 1;
JWJXC_480 = 2;
JWJXC_H125_80 = 3;
JWXC_1700 = 4;
JWXC_H340 = 5;
JYJXC_160_260 = 6;
JZXC_H18 = 7;
}
uint32 id = 1;
// 继电器型号
Model model = 2;
// 编号
string code = 3;
}
// 按钮、灯等监控盘(IBP/门控箱/PSL等)
message JKP {
2023-12-27 09:15:26 +08:00
// 监控盘类型
2023-11-16 16:12:37 +08:00
enum Type {
2023-12-27 09:15:26 +08:00
// IBP盘(综合后备盘)
2023-11-16 16:12:37 +08:00
IBP = 0;
2023-12-27 09:15:26 +08:00
// 屏蔽门就地控制盘
2023-11-16 16:12:37 +08:00
PSL = 1;
2023-12-27 09:15:26 +08:00
// 门控箱
2023-11-16 16:12:37 +08:00
MKX = 2;
}
// 数据id
2023-12-27 09:15:26 +08:00
string gid = 1;
// 数据类型
Type type = 2;
2023-11-16 16:12:37 +08:00
// 开关
2023-12-27 09:15:26 +08:00
repeated KaiGuan kgs = 3;
2023-11-16 16:12:37 +08:00
// 灯
2023-12-27 09:15:26 +08:00
repeated Lamp lamps = 4;
2023-11-16 16:12:37 +08:00
// 警铃
2023-12-27 09:15:26 +08:00
repeated Alarm alarms = 5;
2023-11-16 16:12:37 +08:00
// 设备电子元件组合
2023-12-27 09:15:26 +08:00
repeated DeviceEcc deviceEccs = 6;
2023-11-16 16:12:37 +08:00
}
// 警铃/蜂鸣器
message Alarm {
uint32 id = 1;
// 编号
string code = 2;
}
// 开关
message KaiGuan {
uint32 id = 1;
// 编号
string code = 2;
2023-12-27 09:15:26 +08:00
// 是否自复位
bool zfw = 3;
2023-11-16 16:12:37 +08:00
// 是否有背光灯
2023-12-27 09:15:26 +08:00
bool lamp = 4;
2023-11-16 16:12:37 +08:00
}
// 灯
message Lamp {
uint32 id = 1;
// 编号
string code = 2;
}
// 设备电子元件组合
message DeviceEcc {
// 模型类型
2023-12-27 13:04:19 +08:00
Model.Type deviceType = 1;
// 模型编号
2023-12-27 09:15:26 +08:00
string deviceCode = 2;
2023-11-16 16:12:37 +08:00
// 电子元件组合
repeated Ecc ecc = 3;
}
// 电子元件组合
message Ecc {
// 组合名称
string code = 1;
2023-12-27 09:15:26 +08:00
// 关联的电子元件(包括但不限于继电器、断相保护器、按钮、灯等)id
2023-11-16 16:12:37 +08:00
repeated uint32 ids = 2;
}