86 lines
3.1 KiB
Go
86 lines
3.1 KiB
Go
package component
|
||
|
||
import "joylink.club/ecs"
|
||
|
||
// 道岔标签
|
||
var TurnoutTag = ecs.NewTag()
|
||
|
||
// 道岔的实际位置
|
||
type TurnoutPosition struct {
|
||
Dw bool // 是否定位
|
||
Fw bool // 是否反位
|
||
}
|
||
|
||
// 实际道岔的实际位置组件类型
|
||
var TurnoutPositionType = ecs.NewComponentType[TurnoutPosition]()
|
||
|
||
// ZDJ9单机电路元器件
|
||
type Zdj9OneElectronic struct {
|
||
TDC_YCJ *ecs.Entry // 运行操作继电器
|
||
TDC_DCJ *ecs.Entry // 定操继电器
|
||
TDC_FCJ *ecs.Entry // 反操继电器
|
||
|
||
TDFJ_BB *ecs.Entry // 道岔表示变压器
|
||
TDFJ_1DQJ *ecs.Entry // 一启动继电器
|
||
TDFJ_BHJ *ecs.Entry // 保护继电器
|
||
TDFJ_2DQJ *ecs.Entry // 二启动继电器
|
||
TDFJ_1DQJF *ecs.Entry // 一启动复示继电器
|
||
TDFJ_DBQ *ecs.Entry // 断相保护器
|
||
TDFJ_DBJ *ecs.Entry // 定位表示继电器
|
||
TDFJ_FBJ *ecs.Entry // 反位表示继电器
|
||
TDFJ_R1 *ecs.Entry // 电阻
|
||
}
|
||
|
||
// ZDJ9单机电路元器件组件类型
|
||
var Zdj9OneElectronicType = ecs.NewComponentType[Zdj9OneElectronic]()
|
||
|
||
type Zdj9TwoElectronic struct {
|
||
TDC_DCJ *ecs.Entry // 定操继电器
|
||
TDC_FCJ *ecs.Entry // 反操继电器
|
||
TDC_YCJ *ecs.Entry // 允许操作继电器
|
||
TDC_ZDBJ *ecs.Entry // 总定表继电器
|
||
TDC_ZFBJ *ecs.Entry // 总反表继电器
|
||
|
||
// 一机
|
||
TDFJ1_1DQJ *ecs.Entry // 一启动继电器
|
||
TDFJ1_BHJ *ecs.Entry // 保护继电器
|
||
TDFJ1_2DQJ *ecs.Entry // 二启动继电器
|
||
TDFJ1_1DQJF *ecs.Entry // 一启动复示继电器
|
||
TDFJ1_DBQ *ecs.Entry // 断相保护器
|
||
TDFJ1_DBJ *ecs.Entry // 定位表示继电器
|
||
TDFJ1_FBJ *ecs.Entry // 反位表示继电器
|
||
TDFJ1_QDJ *ecs.Entry // 切断继电器
|
||
TDFJ1_ZBHJ *ecs.Entry // 总保护继电器
|
||
|
||
// 二机
|
||
TDFJ2_1DQJ *ecs.Entry // 一启动继电器
|
||
TDFJ2_BHJ *ecs.Entry // 保护继电器
|
||
TDFJ2_2DQJ *ecs.Entry // 二启动继电器
|
||
TDFJ2_1DQJF *ecs.Entry // 一启动复示继电器
|
||
TDFJ2_DBQ *ecs.Entry // 断相保护器
|
||
TDFJ2_DBJ *ecs.Entry // 定位表示继电器
|
||
TDFJ2_FBJ *ecs.Entry // 反位表示继电器
|
||
|
||
Zzj1 *ecs.Entry //转辙机一
|
||
Zzj2 *ecs.Entry //转辙机二
|
||
|
||
}
|
||
|
||
// ZDJ9双机电路元器件组件类型
|
||
var Zdj9TwoElectronicType = ecs.NewComponentType[Zdj9TwoElectronic]()
|
||
|
||
// 转辙机状态
|
||
type Zzj struct {
|
||
// 自动开闭器接点位置,默认定位接通1/3排,反位接通2/4排
|
||
// 由定位转反位(1DQJ和1DQJF励磁吸起,2DQJ在反位——即落下),三相电路导通,电机开始反转,转辙机将第3排接点接通第4排,到位锁闭后,转辙机的自动开闭器拉簧将第1排接点拉到第2排,接点到2排后,三相电路断路
|
||
// 由反位转定位(1DQJ和1DQJF励磁吸起,2DQJ在定位——即吸起),三相电路导通,电机开始正转,转辙机将第2排接点接通第1排,到位锁闭后,转辙机的自动开闭器拉簧将第4排接点拉到第3排,接点到3排后,三相电路断路
|
||
JD12 bool // 接点在1/2排的位置,false-接点在1排,true-接点在2排
|
||
JD34 bool // 接点在3/4排的位置,false-接点在3排,true-接点在4排
|
||
|
||
Td bool // 是否通电
|
||
Dw bool // 是否转动到定位
|
||
}
|
||
|
||
// 转辙机状态
|
||
var ZzjType = ecs.NewComponentType[Zzj]()
|