Files
TSCP/TSCP/src/APP/ciapp/IO/DeviceRelayDataProcess.h
T

1211 lines
29 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/********************************************************
*
* 文 件 名: DeviceRelayDataProcess.h
* 版权说明: 北京交控科技有限公司
* 创建时间: 2012-09-21
* 作 者: 联锁组
* 功能描述: 设备间数据管理头文件
* 函数包括:
* 使用注意:
* 修改记录:
*
********************************************************/
#ifndef _DEVICE_RELAY_DATA_PROCESS_H_
#define _DEVICE_RELAY_DATA_PROCESS_H_
#include "../DataManage/DeviceDataManage.h"
#include "CommonTypes.h"
#include "../System/CiSystemDefine.h"
#include "../System/SystemParameterManage.h"
#include "../Relay/RelayConfigDataManage.h"
#include "../Relay/RelayDataManage.h"
#include "../Signal/SignalConfigDataManage.h"
#include "../Signal/SignalDataManage.h"
#include "../Switch/SwitchConfigDataManage.h"
#include "../Switch/SwitchDataManage.h"
#include "../Section/PhysicalSectionDataManage.h"
#include "../Section/PhysicalSectionConfigDataManage.h"
#include "../Section/AxisSectionConfigDataManage.h"
#include "../Section/AxisSectionDataManage.h"
#include "../Section/LogicSectionConfigDataManage.h"
#include "../Section/LogicSectionDataManage.h"
#include "../psd/PSDConfigDataManage.h"
#include "../psd/PSDDataManage.h"
#include "../esb/ESBConfigDataManage.h"
#include "../esb/ESBDataManage.h"
#include "../error/ErrorDataManage.h"
#include "../ParsePack/CiInterfaceDefine.h"
#include "../ParsePack/ParsePackAtsData.h"
#include "../ParsePack/ParsePackVobcData.h"
#include "../Route/RouteDataManage.h"
#include "../Route/RouteConfigDataManage.h"
#include "../Garagedoor/GaragedoorConfigDataManage.h"
#include "../Garagedoor/GaragedoorDataManage.h"
#include "../WashMachine/WashMachineConfigDataManage.h"
#include "../WashMachine/WashMachineDataManage.h"
#include "../ParsePack/ParsePackOcData.h"
#include "ReverseCutDataManage.h"
#include "ReverseCutConfigDataManage.h"
#ifdef __cplusplus
extern "C" {
#endif
/******************************信号机相关继电器处理****************************/
/*
* 功能描述: 信号机继电器状态->逻辑状态
* 参数说明: const UINT32 curCycleNum, 当前周期号
* 返回值 0: 更新失败
* 1: 更新成功
*/
void SignalRelayToDeviceStateProc(void);
/*
* 功能描述: 信号机逻辑状态->继电器状态
* 参数说明: void
* 返回值 0: 更新失败
* 1: 更新成功
*/
void SignalDeviceToRelayStateProc(void);
/*
* 功能描述: 根据信号机驱动信息驱动指定ID信号机继电器
* 参数说明: const UINT16 signalId
* 返回值 0:设置失败
* >0:设置成功
*/
UINT8 SetSignalRelayState(const UINT16 signalId);
/*
* 功能描述: 根据继电器采集数据获取指定ID信号机的当前显示颜色
* 参数说明: const UINT16 signalId
* 返回值 0: 获取错误
* >0: 当前显示颜色
*/
UINT8 GetSignalShowColor(const UINT16 signalId);
/*
* 功能描述: 信号机双系板卡故障,信号机当前设置颜色
* 参数说明:
UINT16 signalId:信号机id
UINT8 ocId OC ID
* 返回值 信号机颜色
*/
UINT8 GetOcBoardFaultSignalColor(UINT16 signalId, UINT8 ocId);
/*
* 功能描述: 信号机亮灯情况下,OC给全灭,信号机颜色设置
* 参数说明:
UINT16 signalId:信号机id
* 返回值 信号机颜色
*/
UINT8 SetSignalColorOcAllOff(const UINT16 signalId);
/******************************道岔相关继电器处理****************************/
/*
* 功能描述: 更新道岔逻辑状态
* 参数说明: const UINT32 curCycleNum, 当前周期号
* 返回值 0: 更新失败
* 1: 更新成功
*/
void SwitchRelayToDeviceStateProc(void);
/* zt 删除单轨相关代码 2022-02-15 */
/*
* 功能描述: 更新道岔继电器状态
* 参数说明: void
* 返回值 0: 更新失败
* 1: 更新成功
*/
void SwitchDeviceToRelayStateProc(void);
/******************************区段相关继电器处理****************************/
/*
* 功能描述: 更新物理区段占用状态
* 参数说明: const UINT32 curCycleNum, 当前周期号
* 返回值 void
*/
void PhySecRelayToDeviceStateProc(void);
#if 0
/*
* 功能描述: 更新区段计轴复位继电器状态
* 参数说明: void
* 返回值 void
*/
void PhySecResetToRelayStateProc(void);
#endif
/*
* 功能描述: 更新区段计轴复位继电器状态
* 参数说明: void
* 返回值 void
*/
void PhySecResetToRelayStateProc_Vir(UINT8 virCIid);
/*
* 功能描述: 更新所有区段计轴复位继电器状态
* 参数说明: void
* 返回值 void
*/
void UpDataAllPhySecResetRelay_VirCI(void);
/******************************站台相关继电器处理****************************/
/*
* 功能描述: 更新屏蔽门逻辑状态
* 参数说明: void
* 返回值 0: 更新失败
* 1: 更新成功
*/
void PsdRelayToDeviceStateProc(void);
#if 0
/*
* 功能描述: 屏蔽门状态转移处理函数
* 参数说明: void
* 返回值 void
*/
void PsdStateTransferProc(void);
#endif
/*
* 功能描述: 更新屏蔽门继电器状态
* 参数说明: void
* 返回值 0: 更新失败
* 1: 更新成功
*/
UINT8 PsdDeviceToRelayStateProc(void);
/*
* 功能描述: 更新洗车机继电器状态
* 参数说明: void
* 返回值 0: 更新失败
* 1: 更新成功
*/
UINT8 WashMachineDevToRelayStaProc(void);
/*
* 功能描述: 更新紧急停车按钮逻辑状态
* 参数说明: void
* 返回值 0: 更新失败
* 1: 更新成功
*/
UINT8 EsbRelayToDeviceStateProc(void);
/*
* 功能描述: 更新车库门的逻辑状态
* 参数说明: void
* 返回值 0: 更新失败
* 1: 更新成功
*/
UINT8 GaragedoorRelayToDevStaProc(void);
/*
* 功能描述: 更新车库门的逻辑开关门状态(仅配置开门、旁路继电器)
* 参数说明: void
* 返回值 0u: 更新失败
* 1: 更新成功
*/
UINT8 GDRelayToDeviceStateOnlyOpenPL(const UINT16 garagedoorId);
/*
* 功能描述: 更新车库门继电器状态
* 参数说明: void
* 返回值 0: 更新失败
* 1: 更新成功
*/
void GaragedoorDevToRelayStaProc(void);
/*
* 功能描述: 更新洗车机的逻辑状态
* 参数说明: void
* 返回值 0: 更新失败
* 1: 更新成功
*/
UINT8 WashMachineToDeviceStateProc(void);
/*
* 功能描述: 更新Spks按钮逻辑状态
* 参数说明: void
* 返回值 0: 更新失败
* 1: 更新成功
*/
UINT8 SpksRelayToDeviceStateProc(void);
/*
* 功能描述: 根据继电器采集数据获取指定ID信号机的显示颜色
* 参数说明: const UINT16 signalId
* 返回值 0: SIGNAL_SHOWCOLOUR_INVALID
* >0: 当前显示颜色
*/
UINT8 GetRelayToDeviceSignalColor(const UINT16 signalId);
/*
* 功能描述: 根据继电器采集数据获取指定ID信号机的显示颜色-没有配置DDJ的特殊处理
* 参数说明: const UINT16 signalId
* 返回值 0: SIGNAL_SHOWCOLOUR_INVALID
* >0: 当前显示颜色
*/
UINT8 GetNoDDJSignalColor(const UINT16 signalId);
/*
* 功能描述: 更新防淹门的设备逻辑状态
* 参数说明: void
* 返回值 void
*/
void FloodGateRelayToDeviceStateProc(void);
/*
* 功能描述: 更新防淹门继电器状态
* 参数说明: void
* 返回值
*/
void FloodGateDeviceToRelayStateProc(void);
/*
* 功能描述: 更新进路的调车同意逻辑状态
* 参数说明: void
* 返回值 void
* BY CGH 20250523
*/
void RouteDCTYRelayToDeviceStateProc(void);
/*
* 功能描述: 更新调车同意继电器状态
* 参数说明: void
* 返回值
*/
void RouteDCTYToRelayStateProc(void);
/*
* 功能描述: 设置只有采集列车信号继电器状态的信号机颜色
* 参数说明: const UINT16 signalId :信号机ID
* 返回值
*/
void SetNoDriveSignalCurColor(const UINT16 signalId);
/*
* 功能描述: OC信号机设备采集状态->逻辑状态
* 参数说明: void
* 返回值 void
*
*/
void OcSignalDeviceInput(void);
/*
* 功能描述: OC道岔设备采集状态->逻辑状态
* 参数说明: void
* 返回值 void
*/
void OcSwitchDeviceInput(void);
/*
* 功能描述: OC信号机设备输出处理
* 参数说明: void
* 返回值 void
*/
void OcSignalDeviceOutput(void);
/*
* 功能描述: OC道岔设备输出处理
* 参数说明: void
* 返回值 void
*/
void OcSwitchDeviceOutput(void);
/*
* 功能描述: 获取OC信号机设备颜色
* 参数说明:
UINT16 signalId:信号机id
* 返回值 void
*/
UINT8 GetOcSignalColor(UINT16 signalId);
/*
* 功能描述: 获取OC道岔设备状态
* 参数说明:
UINT16 switchId:道岔id
UINT8 mainControlOCId 主控OCId
* 返回值
* ((UINT8)0x01) 道岔定位
* ((UINT8)0x02) 道岔反位
* ((UINT8)0x04) 道岔四开
* ((UINT8)0x08) 道岔移动
*/
UINT8 GetOcSwitchState(UINT16 switchId, UINT8 mainControlOCId);
/*
* 功能描述: 间隙探测脉冲接口方式启动驱动处理
* 参数说明: UINT16 startJXTCRelayId 启动继电器
UINT16 stopJXTCRelayId 停止继电器
UINT16 psdId 屏蔽门ID
* 返回值
*/
void ProcessJXTCPulseInterfStartDrv (UINT16 startJXTCRelayId, UINT16 stopJXTCRelayId, UINT16 psdId);
/*
* 功能描述: 间隙探测脉冲接口方式停止驱动处理
* 参数说明: UINT16 startJXTCRelayId 启动继电器
UINT16 stopJXTCRelayId 停止继电器
UINT16 psdId 屏蔽门ID
* 返回值
*/
void ProcessJXTCPulseInterfStopDrv(UINT16 startJXTCRelayId, UINT16 stopJXTCRelayId, UINT16 psdId);
/******************************OC spks指示灯输出处理****************************/
/*
* 功能描述: OC spks指示灯、spks旁路指示灯及蜂鸣继电器处理
* 参数说明: void
* 返回值 void
*/
void SpksDisplayDrivOutput(void);
/***********************OC SPKS关联的门禁解锁继电器输出处理****************************/
/*
* 功能描述: OC spks关联的门禁解锁输出处理
* 参数说明: void
* 返回值 void
*/
void SpksMenjinJSDrivOutput(void);
/*
* 功能描述: OC 门禁关联的spks是否激活逻辑判断
* 参数说明: void
* 返回值 void
*/
UINT8 MJrelSpksMJStateProcess(UINT16 spksId);
/******************************OC esb指示灯输出处理****************************/
/*
* 功能描述: OC esb指示灯和esb旁路指示灯输出处理
* 参数说明: void
* 返回值 void
*/
void EsbDisplayDrivOutput(void);
/******************************OC 扣车旁路指示灯输出处理****************************/
/*
* 功能描述: OC 扣车和扣车旁路指示灯输出处理
* 参数说明: void
* 返回值 void
*/
void DetainDisplayDrivOutput(void);
/*
* 功能描述: 检查取消自动触发标志是否执行
* 参数说明: const UINT16 routeId :进路ID
* const UINT16 phySecId :物理区段ID
* 返回值 CI_ERROR 检查失败
* CI_SUCCESS 检查成功
*/
UINT8 CheckCancleAutoFlag(const UINT16 routeId,const UINT16 phySecId);
/*
* 功能描述: 更新联络线设备采集状态至逻辑状态
* 参数说明: void
* 返回值
*
*/
void ConnectLineRelayToDevStateProc(void);
/*
* 功能描述: 设置联络线道岔定反表继电器驱动状态
* 参数说明: const UINT16 devId 设备ID
* const UINT16 dbRelayId 定表继电器ID
* const UINT16 fbRelayId 反表继电器ID
* 返回值
*
*/
void SetConnectSwitchPosRelayDrvSta(const UINT16 devId, const UINT16 dbRelayId, const UINT16 fbRelayId);
/*
* 功能描述: 更新联络线设备逻辑状态至继电器驱动状态
* 参数说明: void
* 返回值
*
*/
void UpdateConnectDriveRelayOutput(void);
/*
* 功能描述: 检查是否混线状态
* 参数说明:
*
* 返回值 1:不是混线状态
* 0:混线状态
*
*/
UINT8 CheckRelayHunXiandState(const UINT16 relayId);
/*
* 功能描述:计轴总复位表示灯驱动输出处理
* 参数说明: void
* 返回值 void
*/
void PhyZFWBsRelayDriveOutput(void);
/*
* 功能描述: 驱动扣车指示灯、扣车旁路指示灯
* 参数说明:const UINT16 signalCutDetainRelayId, 扣车旁路继电器ID
* const UINT16 cutDetainDisplayId, 扣车旁路表示灯继电器ID
* const UINT16 signalDetainRelayId, 扣车继电器ID
* const UINT16 signalDetainDisplayId, 扣车表示灯继电器ID
* const UINT16 signalId, 信号机ID
*
* 返回值
*
*/
void DriveDetainBsRelay(const UINT16 signalId, const UINT16 signalCutDetainRelayId, const UINT16 cutDetainDisplayId, const UINT16 signalDetainRelayId, const UINT16 signalDetainDisplayId);
/*
* 功能描述: 更新倒切装置状态
* 参数说明: void
* 返回值
*/
void RvrsCutRlyToDvicSttPrc(void);
/*
* 功能描述: 更新是否可倒切原因
* 参数说明: void
* 返回值
*/
void ReverseCutReasonProcess(void);
/*
* 功能描述: TIOC影子模式设备输出处理
* 参数说明: void
* 返回值 void
*/
void TiocSysShadowDeviceOutputProc(void);
/*
* 功能描述: 处理物理区段上的占用落到计轴区段
* 参数说明: void
* 返回值 void
*/
void ProcessPhyOCcStateToAxisSection(void);
/*
* 功能描述: 获取ESB当前需要设置的状态
* 参数说明:UINT16 esbId ESB ID
*
* 返回值 ESB_STATE_VALID_YES:设置状态为有效
* ESB_STATE_VALID_NO:设置状态为无效
* CI_ERROR: 获取失败
* cgh-合并CID-2349-3
*/
UINT8 GetEsbCurNeedSetState(UINT16 esbId);
/*
* 功能描述: OC ESS和PEP操作下的闪灯、稳灯和蜂鸣器继电器驱动输出处理
* 参数说明: void
* 返回值 void
* cgh-合并CID-2349-3
*/
void EsbRelateDelayDriveOutputProc(void);
/*
* 功能描述: OC ESS和PEP操作下的闪灯、稳灯和蜂鸣器继电器驱动输出状态机管理函数
* 参数说明: UINT16 esbId ESB ID
* 返回值 void
* cgh-合并CID-2349-3
*/
void EsbRelateDelayDriveStateManage(UINT16 esbId);
/*
* 功能描述: 检查是否驱动超时
* 参数说明: const UINT16 relayId 继电器ID
*
* 返回值 : 1:不是驱动超时状态
* 0:驱动超时
* cgh-合并CID-2349-4
*/
UINT8 CheckRelayDriveOutTimeState(const UINT16 relayId);
/*
* 功能描述: 检查是否驱动超时
* 参数说明: const UINT16 psdId 屏蔽门ID
* const UINT8 psdDriveState psd驱动状态
* 返回值 : 0xff:不是驱动超时状态
* 0x55 驱动开门未开门
* 0xaa 驱动关门未关门
* cgh-合并CID-2349-4
*/
UINT8 CheckPsdDriveOutTimeState(const UINT16 psdId);
/*
* 功能描述:获取继电器是否驱动采集不一致
* 参数说明: const UINT16 relayId, 继电器ID
const UINT8 foreNodeColl 前采状态
const UINT8 backNodeColl 后采状态
* 返回值 : 0: 驱动采集不一致
* >0: 一致
*cgh-合并CID-2349-4
*/
UINT8 CheckRelayDriAndCollDiffSeat(const UINT16 relayId, const UINT8 foreNodeColl, const UINT8 backNodeColl);
/*
* 功能描述:获取PSD是否驱动采集不一致
* 参数说明: const UINT16 psdId, PSD ID
* 返回值 : 0xff: 无报警
* 0x55: 开门驱动采集不一致
* 0xaa: 关门驱动采集不一致
*cgh-合并CID-2349-4
*/
UINT8 CheckPsdDriAndCollDiff(const UINT16 psdId);
/*
* 功能描述: 总Spks按钮指示灯处理
* 参数说明: UINT16 spksId ID
* 返回值 void
*/
void TotalSpksOutsideDisPlayProc(UINT16 spksId);
/*
* 功能描述: 室外SPKS指示灯驱动
* 参数说明: UINT16 contrlspksId spksId ID
* UINT32 spksflockStartNum spks作用起始周期
* 返回值 void
*/
void SpksOutsideDisPlayDriv(UINT16 contrlspksId, UINT32 spksflockStartNum);
/*
* 功能描述: 判断硬件扣车是否执行
* 参数说明: const UINT16 detainCutRelayId 旁路继电
const UINT16 signalDetainRelayId 扣车继电器
* 返回值 CI_ERROR: 不执行
* CI_SUCCESS: 执行
*
*/
UINT8 CheakDeatainState(UINT16 detainCutRelayId, UINT16 signalDetainRelayId);
/*
* 功能描述: 获取具备虚拟ESB当前需要设置的状态
* 参数说明:UINT16 esbId ESB ID
*
* 返回值 ESB_STATE_VALID_YES:设置状态为有效
* ESB_STATE_VALID_NO:设置状态为无效
* CI_ERROR: 获取失败
* cgh-合并CID-3037-1
*/
UINT8 GetVirEsbCurNeedSetState(UINT16 esbId);
/*
* 功能描述: 虚拟ESB逻辑处理函数
* 参数说明: 无
* 返回值 void
* cgh-合并CID-3037-1
*/
void VirtualEsbLogicProcess(void);
/*
* 功能描述: OC ESS和PEP操作下的闪灯、稳灯和蜂鸣器继电器驱动输出状态机管理函数
* 参数说明: UINT16 esbId ESB ID
* 返回值 void
* 备注:cgh-合并CID-3037-1:。
*/
void VirEsbRelateDelayDriStaManage(UINT16 esbId);
/*
* 功能描述: 获取复示信号机驱动颜色
* 参数说明: const UINT8 signalColor, 主体信号机颜色
* 返回值 : 0x01 :驱红灭,0x02:驱黄,0x04:驱绿
*cgh-合并CID-3037-3
*/
UINT8 GetFushiSignalDriveColor(const UINT8 signalColor);
/*
* 功能描述: 站台清客确认按钮闪灯稳灯继电器驱动处理
* 参数说明: const UINT16 psdId, 屏蔽门ID
* 返回值
*cgh-合并CID-3037-7
*/
void StationCearPassenagerProcess(const UINT16 psdId);
/*
* 功能描述: 更新屏蔽门对应清客确认箱关门按钮及指示灯逻辑状态
* 参数说明: const UINT16 wPsdId 屏蔽门ID
* 返回值 0u: 更新失败
* 1: 更新成功
* * cgh修改成都四线清客需求
*/
UINT8 PsdCleFarePCBRelToDevStaProc(const UINT16 wPsdId);
/*
* 功能描述: 更新屏蔽门对应清客确认箱发车按钮及指示灯逻辑状态
* 参数说明: const UINT16 wPsdId 屏蔽门ID
* 返回值 0u: 更新失败
* 1: 更新成功
* cgh修改成都四线清客需求
*/
UINT8 PsdCleFarePDBRelToDevStaProc(const UINT16 wPsdId);
/*
* 功能描述: 清客确认箱发车按钮指示灯闪灯处理
* 参数说明: const UINT16 psdId, 屏蔽门ID
* 返回值
*cgh修改成都四线清客需求
*/
void PsdCleFarePDBFlashProcess(const UINT16 psdId);
/*
* 功能描述: 自复式扣车按钮处理
* 参数说明: const UINT16 signalId 信号机ID
* 返回值
*/
void SignalZfsDetainBtnPro(const UINT16 signalId);
/*
* 功能描述: 自复式取消扣车按钮处理
* 参数说明: const UINT16 signalId 信号机ID
* 返回值
*/
void SignalZfsCancelDetainBtnPro(const UINT16 signalId);
/*
* 功能描述: 自复式取消扣车按钮按下状态处理
* 参数说明: const UINT16 wSignalId 信号机ID
* const UINT16 wCancelDetBtnRelayId 取消扣车按钮采集继电器ID
* 返回值
* Created By LQ 2024.05.09
*/
void DetZfsCancelBtnPressStateProc(const UINT16 wSignalId, const UINT16 wCancelDetBtnRelayId);
/*
* 功能描述: 自复式取消扣车按钮激活标志处理
* 参数说明: const UINT16 wSignalId 信号机ID
* const UINT16 wCancelDetBtnRelayId 取消扣车按钮采集继电器ID
* 返回值
* Created By LQ 2024.05.09
*/
void DetZfsCancelBtnActFlagProc(const UINT16 wSignalId, const UINT16 wCancelDetBtnRelayId);
/*
* 功能描述:驱动自复式扣车相关指示灯
* 参数说明:const UINT16 signalId 信号机ID
* const UINT16 signalDetDisRelayId 扣车表示灯继电器ID
* const UINT16 signalDetCutDisRelayId 扣车旁路表示灯继电器
* 返 回 值:无
* Modified By LQ 2025.07.03
*/
void DriveZfsDetainBsRelay(const UINT16 signalId, const UINT16 signalDetDisRelayId, const UINT16 signalDetCutDisRelayId);
/*
* 功能描述:自复式紧急停车按钮处理
* 参数说明:UINT16 esbId ESB ID
* 返回值 :无
*/
void EsbZfsBtnProc(UINT16 esbId);
/*
* 功能描述:自复式取消紧急停车按钮处理
* 参数说明:UINT16 esbId ESB ID
* 返回值 :无
*/
void EsbZfsCancelBtnProc(UINT16 esbId);
/*
* 功能描述:自复式紧急停车按钮取消按钮按下状态处理
* 参数说明:const UINT16 wEsbId ESB ID
* const UINT16 wCancelEsbRelayId ESB取消按钮采集继电器ID
* 返回值 :无
* Created By LQ 2024.05.09
*/
void EsbZfsCancelBtnPressStateProc(const UINT16 wEsbId, const UINT16 wCancelEsbRelayId);
/*
* 功能描述:自复式紧急停车按钮取消按钮有效标志处理
* 参数说明:const UINT16 wEsbId ESB ID
* const UINT16 wCancelEsbRelayId ESB取消按钮采集继电器ID
* 返回值 :无
* Created By LQ 2024.05.09
*/
void EsbZfsCancelBtnValidFlagProc(const UINT16 wEsbId, const UINT16 wCancelEsbRelayId);
/*
* 功能描述: 根据SPKS状态更新逻辑区段SPKS封锁状态
* 参数说明: 无
* 返回值
* by cgh 20230919 逻辑区段封锁状态仅用于给ATS显示
*/
void SpksRelayToLogSecFlockStatus(void);
/*
* 功能描述: 屏蔽门再开/关门按钮指示灯处理
* 参数说明: const UINT16 psdId, 屏蔽门ID
* 返回值
* 成都13、27、30新需求——2023.09.21
*/
void PsdOpenAndCloseBsdProc(const UINT16 psdId);
/*
* 功能描述: 检查继电器是否驱动超时-带超时时间参数
* 参数说明: const UINT16 relayId 继电器ID
* const UINT32 dwTimeOutCycCount 最大时间
* 返回值 : 1:不是驱动超时状态
* 0:驱动超时
* by cgh 20230923
*/
UINT8 CheckRelayDriveOutTime(const UINT16 wRelayId, const UINT32 dwTimeOutCycCount);
/*
* 功能描述: 声光报警器输出处理
* 参数说明: void
* 返回值 void
* 成都三线新需求:声光报警器——2023.09.23 by LQ
*/
void SGBJDriveOutputProc(void);
/*
* 功能描述: 设置继电器驱动起始周期
* 参数说明: const UINT16 relayId 继电器ID
* 返回值
* by cgh 20230930
*/
void SetRelayDriveStartCyc(const UINT16 wRelayId);
/*
* 功能描述: 设置所有道岔单独位置
* 参数说明: UINT16 switchCurSum 道岔总数
* 返回值
*/
void SetAllSingleSwitchCurPosition(UINT16 switchCurSum);
/*
* 功能描述: 设置道岔当前逻辑位置
* 参数说明: UINT16 switchCurSum 道岔总数
* 返回值
*/
void UpdataSwitchCurPostion(UINT16 switchCurSum);
/*
* 功能描述: 根据道岔当前逻辑位置选择清理相关内容
* 参数说明: UINT16 switchCurSum 道岔总数
* 返回值
*/
void ClearSwitchMessageByCurPostion(UINT16 switchCurSum);
/*
* 功能描述: 洗车机工作模式继电器状态处理
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 0u: 更新失败
* 1: 更新成功
* by cgh 20231108
*/
UINT8 WashMachineWorkModeRelayProc(const UINT16 washMachineId);
/*
* 功能描述: 更新降级模式洗车继电器状态
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 CI_ERROR: 更新失败
* CI_SUCCESS: 更新成功
* by cgh 20231113
*/
void DownWashDevToRelayStaProc(const UINT16 washMachineId);
/*
* 功能描述: 降级模式洗车线关联进路状态检查
* 参数说明: const UINT16 wRouteId 进路ID
* const UINT8 chCheckType 进路检查类型
* 返回值 CI_ERROR: 更新失败
* CI_SUCCESS: 更新成功
* by cgh 20231113
*/
UINT8 DownWashRelRouteStateCheck(const UINT16 wRouteId, const UINT8 chCheckType);
/*
* 功能描述: 处理驱采两个继电器ID是否混线状态
* 参数说明:const UINT16 drvRelayId 驱动继电器ID
* const UINT16 collectRelayId 采集继电器ID
*
*/
void ProcessCoupleRelayHunXianState(const UINT16 drvRelayId, const UINT16 collectRelayId);
/*
* 功能描述: 设置洗车模式继电器驱动起始周期
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值
* by cgh 20231208
*/
void SetWorkModeRelayDriveStartCyc(const UINT16 washMachineId);
/*
* 功能描述: 屏蔽门视频清客驱动状态处理
* 参数说明: const UINT16 wPsdId, 屏蔽门ID
* 返回值
* by cgh 20231214
*/
void PsdVideoQkDriveStateProc(const UINT16 wPsdId);
/*
* 功能描述:道岔采集容忍处理(对存在锁闭状态的道岔采集四开增加3周期的容忍)
* 参数说明: const UINT16 switchId 道岔ID
* 返回值 道岔容忍后位置
* Create: fan 20250317
*/
UINT8 GetSwitchCollToleratePos(const UINT16 switchId);
/*
* 功能描述:检查道岔是否满足容忍条件
* 参数说明: const UINT16 switchId 道岔ID
* 返回值 CI_SUCCESS满足融合条件 CI_ERROR不满足容忍 需要立即四开
* Create: fan 20250317
*/
UINT8 CheckSwitchCollTolerateState(UINT16 switchId);
/*
* 功能描述:宁象市域铁路紧急停车按钮处理
* 参数说明:UINT16 esbId ESB ID
* 返 回 值:无
* Created By LQ 2025.03.28
*/
void EsbNXRailBtnProc(UINT16 esbId);
/*
* 功能描述:宁象市域铁路紧急停车取消按钮处理
* 参数说明:UINT16 esbId ESB ID
* 返 回 值:无
* Created By LQ 2025.03.28
*/
void EsbNXRailCancelBtnProc(UINT16 esbId);
/*
* 功能描述:宁象市域铁路紧急停车取消按钮有效标志处理
* 参数说明:const UINT16 wEsbId ESB ID
* const UINT16 wCancelEsbRelayId ESB取消按钮采集继电器ID
* 返回值 :无
* Created By LQ 2025.03.30
*/
void EsbNXRailCancelBtnValidFlagProc(const UINT16 wEsbId, const UINT16 wCancelEsbRelayId);
/*
* 功能描述:宁象市域铁路紧急停车旁路按钮处理
* 参数说明:UINT16 esbId ESB ID
* 返 回 值:无
* Created By LQ 2025.03.30
*/
void EsbNXRailCutBtnProc(UINT16 esbId);
/*
* 功能描述:宁象市域铁路紧急停车旁路按钮按下状态处理
* 参数说明:const UINT16 wEsbId ESB ID
* const UINT16 wCutEsbRelayId 紧急旁路按钮采集继电器ID
* 返回值 :无
* Created By LQ 2025.03.30
*/
void EsbNXRailCutBtnPressStateProc(const UINT16 wEsbId, const UINT16 wCutEsbRelayId);
/*
* 功能描述:宁象市域铁路ESB指示灯和ESB旁路指示灯输出处理
* 参数说明:const UINT16 wEsbId ESB ID
* 返 回 值:无
* Created By LQ 2025.03.30
*/
void EsbNXRailDisplayDrivOutput(const UINT16 wEsbId);
/*
* 功能描述:屏蔽门异常打开处理
* 参数说明:无
* 返 回 值:无
* Created By LQ 2025.05.23
*/
void PsdExceptOpenProc(void);
/*
* 功能描述:自复式扣车旁路按钮处理
* 参数说明:const UINT16 signalId 信号机ID
* 返 回 值:无
* Created By LQ 2025.06.20
*/
void SignalZfsDetainCutBtnPro(const UINT16 signalId);
/*
* 功能描述:自复式扣车旁路按钮按下状态处理
* 参数说明:const UINT16 wSignalId 信号机ID
* const UINT16 wDetCutBtnRelayId 扣车旁路按钮采集继电器ID
* 返 回 值:无
* Created By LQ 2025.06.20
*/
void ZfsDetCutBtnPressStateProc(const UINT16 wSignalId, const UINT16 wDetCutBtnRelayId);
/*
* 功能描述:自复式扣车旁路按钮有效状态处理
* 参数说明:const UINT16 wSignalId 信号机ID
* const UINT16 wDetCutBtnRelayId 扣车旁路按钮采集继电器ID
* 返 回 值:无
* Created By LQ 2025.06.20
*/
void ZfsDetCutBtnValidStateProc(const UINT16 wSignalId, const UINT16 wDetCutBtnRelayId);
/*
* 功能描述:获取SPKS按钮采集容忍结果
* 参数说明:const UINT16 wSpksId SPKS编号
* 返 回 值:CI_ERROR 0 容忍结束
* CI_SUCCESS 1 继续容忍
* Created By LQ 2025.06.26
*/
UINT8 GetSpksBtnCollTolerateRet(const UINT16 wSpksId);
/*
* 功能描述:获取Psd门开继电器采集容忍结果
* 参数说明:const UINT16 wPsdId PSD编号
* 返 回 值:CI_ERROR 0 容忍结束
* CI_SUCCESS 1 继续容忍
* Created By LQ 2025.06.26
*/
UINT8 GetPsdRelayCollTolerateRet(const UINT16 wPsdId);
/*
* 功能描述:获取Esb采集容忍结果
* 参数说明:const UINT16 wEsbId ESB编号
* 返 回 值:CI_ERROR 0 容忍结束
* CI_SUCCESS 1 继续容忍
* Created By LQ 2025.06.26
*/
UINT8 GetEsbCollTolerateRet(const UINT16 wEsbId);
/*
* 功能描述:获取扣车按钮1采集容忍结果
* 参数说明:const UINT16 wSignalId 信号机编号
* 返 回 值:CI_ERROR 0 容忍结束
* CI_SUCCESS 1 继续容忍
* Created By LQ 2025.06.26
*/
UINT8 GetFstDetBtnCollTolerateRet(const UINT16 wSignalId);
/*
* 功能描述:获取扣车按钮2采集容忍结果
* 参数说明:const UINT16 wSignalId 信号机编号
* 返 回 值:CI_ERROR 0 容忍结束
* CI_SUCCESS 1 继续容忍
* Created By LQ 2025.06.26
*/
UINT8 GetSndDetBtnCollTolerateRet(const UINT16 wSignalId);
/*
* 功能描述: 设置所有道岔转辙机位置
* 参数说明: UINT16 switchCurSum 道岔总数
* 返回值
*/
void SetAllSingleSwitchZzjState(UINT16 switchCurSum);
/*
* 功能描述: 指定洗车机ID降级模式洗车按钮状态更新
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineButtonStateProc(const UINT16 washMachineId);
/*
* 功能描述: 指定洗车机ID降级模式请求信息处理
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineApplyStateProc(const UINT16 washMachineId);
/*
* 功能描述: 指定洗车机ID降级模式洗车请求信息处理
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineApplyProc(const UINT16 washMachineId);
/*
* 功能描述: 指定洗车机ID降级模式反向通过请求信息处理
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachinePassApplyProc(const UINT16 washMachineId);
/*
* 功能描述: 洗车线控制室更新洗车同意按钮逻辑
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineButtonUpdate(const UINT16 washMachineId);
/*
* 功能描述: DCC更新洗车同意按钮逻辑
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineDCCButtonUpdate(const UINT16 washMachineId);
/*
* 功能描述: 融合洗车同意状态
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void FusionWashMachineAllowState(const UINT16 washMachineId);
/*
* 功能描述: 洗车线控制室更新反向洗车同意按钮逻辑
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachinePassButtonUpdate(const UINT16 washMachineId);
/*
* 功能描述: DCC更新反向洗车同意按钮逻辑
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineDCCPassButtonUpdate(const UINT16 washMachineId);
/*
* 功能描述: 融合反向通过同意按钮状态
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void FusionWashMachinePassAllowState(const UINT16 washMachineId);
/*
* 功能描述: 降级模式洗车线洗车请求指示灯
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineApplyLight(const UINT16 washMachineId);
/*
* 功能描述: 降级模式DCC洗车请求指示灯
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineDccApplyLight(const UINT16 washMachineId);
/*
* 功能描述: 降级模式洗车线洗车反向通过请求指示灯
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachinePassApplyLight(const UINT16 washMachineId);
/*
* 功能描述: 降级模式DCC洗车反向通过请求指示灯
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineDccPassApplyLight(const UINT16 washMachineId);
/*
* 功能描述: 降级模式洗车同意指示灯
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineAllowLight(const UINT16 washMachineId);
/*
* 功能描述: 降级模式DCC洗车同意指示灯
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineDccAllowLight(const UINT16 washMachineId);
/*
* 功能描述: 降级模式洗车同意反向通过指示灯
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachinePassAllowLight(const UINT16 washMachineId);
/*
* 功能描述: 降级模式DCC洗车同意反向通过指示灯
* 参数说明: const UINT16 washMachineId 洗车机ID
* 返回值 void
*/
void WashMachineDccPassAllowLight(const UINT16 washMachineId);
/*
* 功能描述: 更新屏蔽门对应IBP盘发车按钮继电器状态
* 参数说明: const UINT16 wPsdId 屏蔽门ID
* 返回值 CI_ERROR: 更新失败
* CI_SUCCESS: 更新成功
*/
UINT8 PsdIbpRelToDevStaProc(const UINT16 wPsdId);
/*
* 功能描述:同站紧急按钮及旁路按钮状态处理
* 参数说明:void
* 返 回 值:无
* Created By LQ 2025.12.30
*/
void OnePlatEsbAndCutBtnProc(void);
/*
* 功能描述:取消当前未异常打开的站台门的异常状态
* 参数说明: const UINT16 doorId,屏蔽门ID
* 返回值 :无
*Create fan 2026.03.26
*/
void CancelPsdExceptState(UINT16 doorId);
/*
* 功能描述: 设置道岔的每一个OC的主控状态
* 参数说明:
UINT16 switchId:道岔id
* 返回值 void
* add by mpt 20260326
*/
void SetOcSwitchControlState(UINT16 switchId);
/*
* 功能描述: 仲裁当前道岔的主控OC
* 参数说明: UINT16 switchCurSum 道岔总数
* 返回值
* add by mpt 20260326
*/
void SetAllSwitchCurMainControlOC(UINT16 switchCurSum);
/*
* 功能描述: OC道岔主控命令生成处理
* 参数说明: UINT16 switchId 道岔ID
* 返回值 void
*/
void OutSwitchControlModeCmd(UINT16 switchId);
/*
* 功能描述: 道岔无主控时产生主备控命令处理
* 参数说明: UINT16 switchId
* 返回值 void
*/
void SwitchMainControlCmdOut(UINT16 switchId, UINT8 ocId);
/*
* 功能描述: OC道岔主控状态管理
* 参数说明: void
* 返回值 void
*/
void OcSwitchControlModeCmdOutput(void);
/*
* 功能描述: 双主防护模块
* 参数说明: UINT16 switchId 道岔ID
* 返回值 void
*/
void SwitchDoubleMainProtect(UINT16 switchId);
/*
* 功能描述:道岔寻表模块
* 参数说明: UINT16 switchId 道岔ID
* 返回值 void
* add by mpt 20260328
*/
void FindSwitchPostionCmdOut(UINT16 switchId);
/*
* 功能描述:道岔寻表超时检测模块
* 参数说明: UINT16 switchId 道岔ID
* 返回值 void
* add by mpt 20260330
*/
void FindSwitchPostionCmdTimeOutCheck(UINT16 switchId);
#ifdef __cplusplus
}
#endif
#endif