발진(ExecuteWelding) 직전 PLC Head_Theta_Position(D70510)을 읽어 헤드 각도가 수평/수직 ±허용오차를 둘 다 벗어나면 알람 후 발진 차단. - 세팅 메뉴 UI: 수평/수직/허용오차/PLC스케일 + 사용 체크박스 (LaserInterlockSetting, 기본 미사용) - fail-closed: PLC 미연결/미활성·스케일0 시 차단, 알람 호출 try/catch - eWordInput.HEAD_THETA_POSITION(=D70510), 알람코드 210620 추가 - 런타임 설정(CSV 주소맵 D70510, AlarmDescriptions.xlsm 210620 행)은 별도 필요 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
30 lines
1.1 KiB
C#
30 lines
1.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using WeldingCommon.Alarm;
|
|
|
|
namespace ILSOS_PrismaticRD_PTOP.Alarm
|
|
{
|
|
internal class AlarmCode_PTOP : AlarmCode
|
|
{
|
|
public const int ALARM_DEVICE_PLC_Light = 210004;
|
|
public const int ALARM_DEVICE_PLC_Heavy = 210005;
|
|
public const int ALARM_DEVICE_PLC_DOOR_INTERLOCK = 210006;
|
|
|
|
public const int ALARM_DEVICE_IO_CCCAPASSYLaserMC1ON = 210605;
|
|
public const int ALARM_DEVICE_IO_CCCAPASSYLaserMC2ON = 210606;
|
|
public const int ALARM_DEVICE_IO_BOXTempAlarm = 210607;
|
|
public const int ALARM_DEVICE_IO_CCCAPChillerLeakSensor = 210608;
|
|
public const int ALARM_DEVICE_IO_FanAlarm1 = 210609;
|
|
public const int ALARM_DEVICE_IO_FanAlarm2 = 210610;
|
|
public const int ALARM_DEVICE_IO_FanAlarm3 = 210611;
|
|
public const int ALARM_DEVICE_IO_FanAlarm4 = 210612;
|
|
public const int ALARM_DEVICE_IO_FanAlarm5 = 210613;
|
|
public const int ALARM_DEVICE_IO_FanAlarm6 = 210614;
|
|
|
|
public const int ALARM_LASER_HEAD_THETA_INTERLOCK = 210620;
|
|
}
|
|
}
|