iscs bas 大系统
This commit is contained in:
parent
cb1c16aeae
commit
88260cb721
@ -1,7 +1,11 @@
|
||||
package component
|
||||
|
||||
// SpaceAreaEnv 空间区域BAS环境(如站厅、设备室等的温度、湿度、烟雾浓度、CO2浓度等)
|
||||
type SpaceAreaEnv struct {
|
||||
T int16 //温度
|
||||
|
||||
// ExhaustPavilion 排风亭
|
||||
type ExhaustPavilion struct {
|
||||
Normal bool //true-正常
|
||||
}
|
||||
|
||||
// AirSupplyPavilion 送风亭
|
||||
type AirSupplyPavilion struct {
|
||||
Normal bool //true-正常
|
||||
}
|
||||
|
@ -327,22 +327,18 @@ enum DeviceType {
|
||||
DeviceType_PowerSource = 385;
|
||||
//ISCS 接地装置
|
||||
DeviceType_EarthingDevice = 386;
|
||||
//ISCS 排风亭
|
||||
DeviceType_ExhaustPavilion = 387;
|
||||
//ISCS 送风亭
|
||||
DeviceType_AirSupplyPavilion = 388;
|
||||
//ISCS 电动调节阀
|
||||
DeviceType_ElectricControlValve = 389;
|
||||
//ISCS 电动风阀
|
||||
DeviceType_ElectricAirValve = 390;
|
||||
//ISCS 风亭
|
||||
DeviceType_AirPavilion = 387;
|
||||
//ISCS 阀门
|
||||
DeviceType_Valve = 388;
|
||||
//ISCS 混合静压室
|
||||
DeviceType_GasMixingChamber = 391;
|
||||
DeviceType_GasMixingChamber = 389;
|
||||
//ISCS 组合式空调
|
||||
DeviceType_CombinationAirConditioner = 392;
|
||||
DeviceType_CombinationAirConditioner = 390;
|
||||
//ISCS 净化装置
|
||||
DeviceType_AirPurificationDevice = 393;
|
||||
DeviceType_AirPurificationDevice = 391;
|
||||
//ISCS 气体环境(正常空气+有害烟雾)
|
||||
DeviceType_GasEnvironment = 394;
|
||||
DeviceType_GasEnvironment = 392;
|
||||
}
|
||||
|
||||
|
||||
@ -649,32 +645,29 @@ message WireCabinet{
|
||||
string code = 2;
|
||||
}
|
||||
|
||||
//排风亭
|
||||
//有一个输入端口A,该端口连接排气管
|
||||
message ExhaustPavilion{
|
||||
string id = 1;
|
||||
string code = 2;
|
||||
}
|
||||
//送风亭
|
||||
//有一个输出端口A,该端口与送风管连接
|
||||
message AirSupplyPavilion{
|
||||
string id = 1;
|
||||
string code = 2;
|
||||
}
|
||||
//电动调节阀
|
||||
//有两个端口,分别为A和B
|
||||
message ElectricControlValve{
|
||||
//风亭(排风亭、送风亭)
|
||||
message AirPavilion{
|
||||
string id = 1;
|
||||
string code = 2;
|
||||
enum Type{
|
||||
ExhaustPavilion = 0;//排风亭
|
||||
AirSupplyPavilion = 1;//送风亭
|
||||
}
|
||||
Type pavilionType = 3;//风亭子类型
|
||||
}
|
||||
|
||||
//电动风阀
|
||||
//有两个端口,分别为A和B
|
||||
message ElectricAirValve{
|
||||
//阀门(电动调节阀、电动风阀)
|
||||
message Valve{
|
||||
string id = 1;
|
||||
string code = 2;
|
||||
enum Type{
|
||||
ElectricControlValve = 0;//电动调节阀
|
||||
ElectricAirValve = 1;//电动风阀
|
||||
}
|
||||
Type valveType = 3;//阀门子类型
|
||||
}
|
||||
|
||||
|
||||
//混合室静压箱(气体)
|
||||
//有四个端口,ABC三个端口为输入口,D端口为输出口
|
||||
message GasMixingChamber{
|
||||
|
@ -4,67 +4,88 @@ import "joylink.club/rtsssimulation/repository/model/proto"
|
||||
|
||||
//ISCS BAS 大系统相关
|
||||
|
||||
// ExhaustPavilion 排风亭
|
||||
// 有一个输入端口A,该端口连接排气管
|
||||
type ExhaustPavilion struct {
|
||||
// AirPavilion 风亭(排、送)
|
||||
type AirPavilion struct {
|
||||
Identity
|
||||
Code string
|
||||
Code string
|
||||
PavilionType proto.AirPavilion_Type //风亭子类型
|
||||
PortA DevicePort //风亭A端口连接的设备
|
||||
}
|
||||
|
||||
func NewExhaustPavilion(id string, code string) *ExhaustPavilion {
|
||||
return &ExhaustPavilion{
|
||||
Identity: &identity{id: id, deviceType: proto.DeviceType_DeviceType_ExhaustPavilion},
|
||||
Code: code,
|
||||
func NewAirPavilion(id string, code string, pavilionType proto.AirPavilion_Type) *AirPavilion {
|
||||
return &AirPavilion{
|
||||
Identity: &identity{id: id, deviceType: proto.DeviceType_DeviceType_AirPavilion},
|
||||
Code: code,
|
||||
PavilionType: pavilionType,
|
||||
}
|
||||
}
|
||||
|
||||
// AirSupplyPavilion 送风亭
|
||||
// 有一个输出端口A,该端口与送风管连接
|
||||
type AirSupplyPavilion struct {
|
||||
Identity
|
||||
Code string
|
||||
func (p *AirPavilion) PortNum() int {
|
||||
return 1
|
||||
}
|
||||
|
||||
func NewAirSupplyPavilion(id string, code string) *AirSupplyPavilion {
|
||||
return &AirSupplyPavilion{
|
||||
Identity: &identity{id: id, deviceType: proto.DeviceType_DeviceType_AirSupplyPavilion},
|
||||
Code: code,
|
||||
// AirPavilionPort 风亭端口
|
||||
//
|
||||
// implement DevicePort
|
||||
type AirPavilionPort struct {
|
||||
port proto.Port
|
||||
device *CircuitBreaker
|
||||
}
|
||||
|
||||
func (p *AirPavilionPort) Port() proto.Port {
|
||||
return p.port
|
||||
}
|
||||
func (p *AirPavilionPort) Device() PortedDevice {
|
||||
return p.device
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////
|
||||
|
||||
// Valve 阀门(电动调节阀、电动风阀)
|
||||
type Valve struct {
|
||||
Identity
|
||||
Code string
|
||||
ValveType proto.Valve_Type //阀门子类型
|
||||
PortA DevicePort //阀门A端口连接的设备
|
||||
PortB DevicePort //阀门B端口连接的设备
|
||||
}
|
||||
|
||||
func NewValve(id string, code string, valveType proto.Valve_Type) *Valve {
|
||||
return &Valve{
|
||||
Identity: &identity{id: id, deviceType: proto.DeviceType_DeviceType_Valve},
|
||||
Code: code,
|
||||
ValveType: valveType,
|
||||
}
|
||||
}
|
||||
|
||||
// ElectricControlValve 电动调节阀
|
||||
// 有两个端口,分别为A和B
|
||||
type ElectricControlValve struct {
|
||||
Identity
|
||||
Code string
|
||||
func (p *Valve) PortNum() int {
|
||||
return 2
|
||||
}
|
||||
|
||||
func NewElectricControlValve(id string, code string) *ElectricControlValve {
|
||||
return &ElectricControlValve{
|
||||
Identity: &identity{id: id, deviceType: proto.DeviceType_DeviceType_ElectricControlValve},
|
||||
Code: code,
|
||||
}
|
||||
// ValvePort 风亭端口
|
||||
//
|
||||
// implement DevicePort
|
||||
type ValvePort struct {
|
||||
port proto.Port
|
||||
device *Valve
|
||||
}
|
||||
|
||||
// ElectricAirValve 电动风阀
|
||||
// 有两个端口,分别为A和B
|
||||
type ElectricAirValve struct {
|
||||
Identity
|
||||
Code string
|
||||
func (p *ValvePort) Port() proto.Port {
|
||||
return p.port
|
||||
}
|
||||
func (p *ValvePort) Device() PortedDevice {
|
||||
return p.device
|
||||
}
|
||||
|
||||
func NewElectricAirValve(id string, code string) *ElectricAirValve {
|
||||
return &ElectricAirValve{
|
||||
Identity: &identity{id: id, deviceType: proto.DeviceType_DeviceType_ElectricAirValve},
|
||||
Code: code,
|
||||
}
|
||||
}
|
||||
//////////////////////////////////////////////////
|
||||
|
||||
// GasMixingChamber 混合室静压箱(气体)
|
||||
// 有四个端口,ABC三个端口为输入口,D端口为输出口
|
||||
type GasMixingChamber struct {
|
||||
Identity
|
||||
Code string
|
||||
Code string
|
||||
PortA DevicePort //A端口连接的设备
|
||||
PortB DevicePort //B端口连接的设备
|
||||
PortC DevicePort //C端口连接的设备
|
||||
PortD DevicePort //D端口连接的设备
|
||||
}
|
||||
|
||||
func NewGasMixingChamber(id string, code string) *GasMixingChamber {
|
||||
@ -73,13 +94,37 @@ func NewGasMixingChamber(id string, code string) *GasMixingChamber {
|
||||
Code: code,
|
||||
}
|
||||
}
|
||||
func (p *GasMixingChamber) PortNum() int {
|
||||
return 4
|
||||
}
|
||||
|
||||
// GasMixingChamberPort 混合室静压箱端口
|
||||
//
|
||||
// implement DevicePort
|
||||
type GasMixingChamberPort struct {
|
||||
port proto.Port
|
||||
device *GasMixingChamber
|
||||
}
|
||||
|
||||
func (p *GasMixingChamberPort) Port() proto.Port {
|
||||
return p.port
|
||||
}
|
||||
func (p *GasMixingChamberPort) Device() PortedDevice {
|
||||
return p.device
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////
|
||||
|
||||
// CombinationAirConditioner 组合式空调
|
||||
// 有四个端口,新风输入端口A,工作风输出端口B;
|
||||
// 端口C输出风再通过端口D输入,通过C->D实现对风再处理。
|
||||
type CombinationAirConditioner struct {
|
||||
Identity
|
||||
Code string
|
||||
Code string
|
||||
PortA DevicePort //新风输入A端口连接的设备
|
||||
PortB DevicePort //工作风输出B端口连接的设备
|
||||
PortC DevicePort //C端口连接的设备
|
||||
PortD DevicePort //D端口连接的设备
|
||||
}
|
||||
|
||||
func NewCombinationAirConditioner(id string, code string) *CombinationAirConditioner {
|
||||
@ -88,12 +133,34 @@ func NewCombinationAirConditioner(id string, code string) *CombinationAirConditi
|
||||
Code: code,
|
||||
}
|
||||
}
|
||||
func (p *CombinationAirConditioner) PortNum() int {
|
||||
return 4
|
||||
}
|
||||
|
||||
// CombinationAirConditionerPort 组合式空调端口
|
||||
//
|
||||
// implement DevicePort
|
||||
type CombinationAirConditionerPort struct {
|
||||
port proto.Port
|
||||
device *CombinationAirConditioner
|
||||
}
|
||||
|
||||
func (p *CombinationAirConditionerPort) Port() proto.Port {
|
||||
return p.port
|
||||
}
|
||||
func (p *CombinationAirConditionerPort) Device() PortedDevice {
|
||||
return p.device
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////////////
|
||||
|
||||
// AirPurificationDevice 净化装置(对组合式空调B端口输出的工作风进行净化)
|
||||
// 有两个端口,端口A输入,端口B输出
|
||||
type AirPurificationDevice struct {
|
||||
Identity
|
||||
Code string
|
||||
Code string
|
||||
PortA DevicePort //A端口连接的设备
|
||||
PortB DevicePort //B端口连接的设备
|
||||
}
|
||||
|
||||
func NewAirPurificationDevice(id string, code string) *AirPurificationDevice {
|
||||
@ -102,6 +169,26 @@ func NewAirPurificationDevice(id string, code string) *AirPurificationDevice {
|
||||
Code: code,
|
||||
}
|
||||
}
|
||||
func (p *AirPurificationDevice) PortNum() int {
|
||||
return 2
|
||||
}
|
||||
|
||||
// AirPurificationDevicePort 净化装置端口
|
||||
//
|
||||
// implement DevicePort
|
||||
type AirPurificationDevicePort struct {
|
||||
port proto.Port
|
||||
device *AirPurificationDevice
|
||||
}
|
||||
|
||||
func (p *AirPurificationDevicePort) Port() proto.Port {
|
||||
return p.port
|
||||
}
|
||||
func (p *AirPurificationDevicePort) Device() PortedDevice {
|
||||
return p.device
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////////
|
||||
|
||||
// AirCurtain 空气幕
|
||||
type AirCurtain struct {
|
||||
@ -116,10 +203,14 @@ func NewAirCurtain(id string, code string) *AirCurtain {
|
||||
}
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////
|
||||
|
||||
// Fan 风机
|
||||
type Fan struct {
|
||||
Identity
|
||||
Code string
|
||||
Code string
|
||||
PortA DevicePort //A端口连接的设备
|
||||
PortB DevicePort //B端口连接的设备
|
||||
}
|
||||
|
||||
func NewFan(id string, code string) *Fan {
|
||||
@ -128,6 +219,26 @@ func NewFan(id string, code string) *Fan {
|
||||
Code: code,
|
||||
}
|
||||
}
|
||||
func (p *Fan) PortNum() int {
|
||||
return 2
|
||||
}
|
||||
|
||||
// FanPort 风机端口
|
||||
//
|
||||
// implement DevicePort
|
||||
type FanPort struct {
|
||||
port proto.Port
|
||||
device *Fan
|
||||
}
|
||||
|
||||
func (p *FanPort) Port() proto.Port {
|
||||
return p.port
|
||||
}
|
||||
func (p *FanPort) Device() PortedDevice {
|
||||
return p.device
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////
|
||||
|
||||
// GasEnvironment 气体环境(正常空气+有害烟雾)
|
||||
// 有多个输入口,统一为端口A,用来为环境补充新鲜空气;
|
||||
@ -135,12 +246,26 @@ func NewFan(id string, code string) *Fan {
|
||||
// 排出气体动力源为该环境。
|
||||
type GasEnvironment struct {
|
||||
Identity
|
||||
Code string
|
||||
Code string
|
||||
PortsA []DevicePort // 有多个输入口,统一为端口A,用来为环境补充新鲜空气;
|
||||
PortsB []DevicePort // 有多个输出口,统一为端口B,用户将环境的混浊气体排除;
|
||||
}
|
||||
|
||||
func NewGasEnvironment(id string, code string) *GasEnvironment {
|
||||
return &GasEnvironment{
|
||||
Identity: &identity{id: id, deviceType: proto.DeviceType_DeviceType_GasEnvironment},
|
||||
Code: code,
|
||||
}
|
||||
func (p *GasEnvironment) PortNum() int {
|
||||
return len(p.PortsA) + len(p.PortsB)
|
||||
}
|
||||
|
||||
// GasEnvironmentPort 气体环境端口
|
||||
//
|
||||
// implement DevicePort
|
||||
type GasEnvironmentPort struct {
|
||||
port proto.Port
|
||||
device *GasEnvironment
|
||||
}
|
||||
|
||||
func (p *GasEnvironmentPort) Port() proto.Port {
|
||||
return p.port
|
||||
}
|
||||
func (p *GasEnvironmentPort) Device() PortedDevice {
|
||||
return p.device
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user