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

330 lines
5.9 KiB
Protocol Buffer
Raw Normal View History

2023-11-16 16:12:37 +08:00
syntax = "proto3";
package message;
option go_package = "./repository/message_proto";
message Simulation {
enum Type {
// 城市轨道交通
CG = 0;
// 国铁
GT = 1;
}
}
message Repo {
// 仿真类型
Simulation.Type simType = 1;
oneof data {
CG cg = 2;
GT gt = 3;
}
}
// 国铁数据
message GT {
}
// 城轨数据
message CG {
repeated Line lines = 1;
}
// 城轨线路数据
message Line {
// 所在城市
string city = 1;
// 线路编号
int32 lineId = 2;
}
// 信号布置数据
message XHBZ {
// 数据id
string gid = 1;
// 车站
repeated Station stations = 2;
// 站台
repeated Platform platforms = 3;
// 屏蔽门
repeated Psd psds = 4;
// 物理区段
repeated PhysicalSection physicalSections = 5;
// 道岔
repeated Turnout turnouts = 6;
// 信号机
repeated Signal signals = 7;
// 应答器
repeated Balise balises = 8;
// 停车点
repeated ParkingSpot parkingSpots = 9;
// 坡度
repeated Pd pds = 10;
// 曲度
repeated Qd qds = 11;
// 紧急关闭/停车按钮
repeated EMP emps = 12;
// 发车计时器
repeated TDT tdts = 13;
// 门控箱
repeated Mkx mkxs = 14;
// 就地控制盘
repeated PSL psls = 15;
// 人员防护开关
repeated SPKS spks = 16;
}
// 人员防护开关
message SPKS {
uint32 id = 1;
}
// 就地控制盘
message PSL {
uint32 id = 1;
}
// 门控箱
message Mkx {
uint32 id = 1;
}
// 发车计时器
message TDT {
uint32 id = 1;
}
// 紧急关闭/停车按钮
message EMP {
uint32 id = 1;
}
// 曲度
message Qd {
uint32 id = 1;
}
// 坡度
message Pd {
uint32 id = 1;
}
// 停车点
message ParkingSpot {
uint32 id = 1;
}
// 应答器
message Balise {
uint32 id = 1;
}
//区段检测点
message CheckPoint{
// 检测点类型
enum Type {
Boundary = 0; //区段边界
JZ = 1; //计轴器
JYJ = 2; //绝缘节
}
uint32 id = 1;
// 检测点类型
Type type = 2;
// 公里标
GLB glb = 3;
// 关联的物理区段/道岔端口
repeated DevicePort devicePorts = 4;
}
// 设备
message Device {
// 设备类型
enum Type {
// 区段
Section = 0;
// 道岔
Turnout = 1;
// 信号机
Signal = 2;
}
// 设备端点(区段、道岔)
enum Port {
A = 0;
B = 1;
C = 2;
}
// 设备id
uint32 id = 1;
// 设备类型
Type type = 2;
}
// 设备端点
message DevicePort {
// 设备id
uint32 id = 1;
// 设备类型
Device.Type type = 2;
// 设备端
Device.Port port = 3;
}
// 信号机
message Signal {
enum Model {
HLU = 0;
}
uint32 id = 1;
// 信号机编号
string code = 2;
}
// 道岔
message Turnout {
uint32 id = 1;
}
// 物理区段
message PhysicalSection {
uint32 id = 1;
}
// 屏蔽门
message Psd {
uint32 id = 1;
}
//站台
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;
// 车站公里标(站台中心点)
GLB glb = 4;
}
//公里标
message GLB {
//坐标系编号
string zbx = 1;
//左右行
bool right = 2;
//公里标值,单位mm
int64 value = 3;
}
// 联锁设备布置数据
message CiSBBZ {
// 设备集中站uid
string ecsId = 1;
// 继电器
repeated Relay relays = 2;
// 断相保护器
repeated PFP pfps = 3;
// 设备电气组合组
repeated DeviceEcc deviceEcgs = 4;
// 联锁采集码表
repeated CiCjTable cjt = 5;
// 联锁驱动码表
repeated CiQdTable qdt = 6;
// 联锁区段码位表
repeated string sectionIds = 7;
}
// 联锁区段码位表
message CiSectionTable {
// 区段id
repeated uint32 sectionIds = 1;
}
// 联锁驱动码表
message CiQdTable {
// 继电器id
repeated uint32 relayIds = 1;
}
// 联锁采集码表
message CiCjTable {
repeated CiCjItem items = 1;
}
// 联锁采集项
message CiCjItem {
// 继电器id
uint32 relayId = 1;
// 采集继电器前后接点(前接点为吸起/定位),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 {
enum Type {
IBP = 0;
PSL = 1;
MKX = 2;
}
// 数据id
uint32 gid = 1;
// 开关
repeated KaiGuan kgs = 2;
// 灯
repeated Lamp lamps = 3;
// 警铃
repeated Alarm alarms = 4;
// 设备电子元件组合
repeated DeviceEcc deviceEccs = 5;
}
// 警铃/蜂鸣器
message Alarm {
uint32 id = 1;
// 编号
string code = 2;
}
// 开关
message KaiGuan {
uint32 id = 1;
// 编号
string code = 2;
// 是否有背光灯
bool lamp = 3;
}
// 灯
message Lamp {
uint32 id = 1;
// 编号
string code = 2;
}
// 设备电子元件组合
message DeviceEcc {
// 设备编号
string deviceCode = 1;
// 设备类型
Device.Type deviceType = 2;
// 电子元件组合
repeated Ecc ecc = 3;
}
// 电子元件组合
message Ecc {
// 组合名称
string code = 1;
// 关联的电子元件id
repeated uint32 ids = 2;
}