This section goes over all the internal relay flags in MapleLogic such as execution modes, error codes, interval system clocks, and more.
Execution Mode Relay Flags (F000)
The execution mode flags, F000, are used to indicate the current operation mode of the PLC.
These flags provide critical status information for system monitoring and control.
| Flag Bit | Name | Description | Use Case |
|---|---|---|---|
| F000.0 | Run Mode | ON when the PLC is in RUN mode | Indicates the PLC is executing the program |
| F000.1 | Stop Mode | ON when the PLC is in STOP mode | Indicates the PLC is not executing the program |
| F000.2 | Pause Mode | ON when the PLC is in Pause mode | Helps identify temporary pauses in execution |
| F000.3 | Debug Mode | ON when the PLC is in Debug mode | Assists with step-by-step program debugging |
| F000.7 | Remote Mode | ON when the PLC is in Remote mode | Indicates control via a remote device or network |
| F000.F | Execute STOP Instruction | ON when the STOP instruction is executed | Used to confirm that a program STOP was issued |
F000.0 – Run Mode
Description
The RUN Mode flag is ON (1) when the PLC is actively executing the program.
This indicates that the PLC is performing normal operations.
Use Case
- Used to monitor if the PLC is operational and running the current program.
- Essential for diagnostics when verifying system activity.
F000.1 – STOP Mode
Description
The STOP Mode flag is ON (1) when the PLC is NOT actively executing the program.
This indicates that the PLC is NOT performing normal operations.
This flag is ON (1) when the RUN/STOP switch is turned to STOP on the PLC.
Use Case
- Used to confirm the PLC is ready for program modifications.
- Prevents inadvertent program execution during updates.
F000.2 – Pause Mode
Description
The Pause Mode flag is ON (1) when the PLC is temporarily paused.
This halts execution without changing the program.
Use Case
- Useful during debugging to pause execution and analyze specific states.
- Allows for temporary halts without terminating the program.
F000.3 – Debug Mode
Description
The Debug Mode flag is ON (1) when the PLC is in debugging mode.
This enables step-by-step execution for testing and troubleshooting.
Use Case
- Allows precise control over the program execution during testing.
- Helps identify logic errors in the program.
F000.7 – Remote Mode
Description
The Remote Mode flag is ON (1) when the PLC is controlled via a remote device or network.
This is typically used in distributed or automated systems.
When the PLC is being monitored by the computer, this flag is ON (1).
Use Case
- Indicates the PLC is under remote supervision or operation.
- Helps monitor network-based control operations.
F000.F – Executes STOP Instruction
Description
The Execute STOP Instruction flag is ON (1) when the PLC executes the STOP instruction.
This halts the current program.
The PLC RUN/STOP mode is changed from RUN→STOP when the STOP instruction is executed.
As a result, the STOP Mode flag (F0.1) is ON (1).
Use Case
- Confirms that a STOP instruction has been issued in the program.
- Can be used as part of safety protocols to ensure proper shutdown.
First Scan Relay Flags (F001)
The first scan flags, F001, provide initialization statuses during the first scan of the PLC after a program start or reset.
These flags are commonly used to initialize variables, settings, or other logic components in a predictable way at the start of program execution.
| Flag Bit | Name | Description | Use Case |
|---|---|---|---|
| F001.0 | Always ON | This flag is always ON (1) | Used for triggering logic that should always execute |
| F001.1 | Always OFF | This flag is always OFF (0) | Used for disabling specific conditions or logic paths |
| F001.2 | ON at First Scan Only | This flag is ON (1) only during the first scan after the program starts or resets | Useful for initializing variables or settings at program start |
| F001.3 | OFF at First Scan Only | This flag is OFF (0) only during the first scan after the program starts or resets | Used to prevent execution during initialization |
| F001.4 | Toggle at Each Scan | Toggles between ON (1) and OFF (0) at each scan | Used for timing logic or alternating states |
F001.0 – Always ON
Description
The Always ON flag is ON (1) regardless of the program execution or conditions.
Use Case
- Used as a base condition to ensure specific logic or actions are always executed.
- Can serve as a default true condition in ladder logic or other control processes.
F001.1 – Always OFF
Description
The Always OFF flag is OFF (0) regardless of the program execution or conditions.
Use Case
- Useful for logic paths or operations that should never trigger.
- Can disable unused parts of logic for testing or development.
F001.2 – ON at First Scan Only
Description
The ON at First Scan Only flag is ON (1) only during the first scan after a program starts or resets.
After the first scan, this flag remains OFF (0).
Use Case
- Initializes variables, counters, timers, or settings during startup.
- Used to reset program states or trigger setup routines.
F001.3 – OFF at First Scan Only
Description
The OFF at First Scan Only flag is OFF (0) only during the first scan after a program starts or resets.
After the first scan, this flag remains ON (1).
Use Case
- Used to delay certain operations or logic until after initialization is complete.
- Helps prevent unintended execution during the first program cycle.
F001.4 – Toggle at Each Scan
Description
The Toggle at Each Scan flag alternates between ON (1) and OFF (0) with each scan cycle.
Use Case
- Ideal for creating alternating states or timing events.
- Can be used for blinking indicators or flip-flop logic.
Error Relay Flags (F003)
The module error flags, F003, indicate error states and warnings in the PLC.
These flags assist in diagnosing issues, monitoring system performance, and responding to critical system states.
| Flag Bit | Name | Description | Use Case |
|---|---|---|---|
| F003.0 | Error (Major Error) | ON (1) during any error condition | Used to monitor the system for active errors |
| F003.1 | Warning (Minor Error) | ON (1) during warning conditions | Used to identify non-critical error warnings |
| F003.2 | Watchdog Timer Error | ON (1) when a watchdog timer error occurs | Used to handle program execution timeout errors |
| F003.3 | I/O Error | ON (1) during I/O combined errors | Helps detect hardware or communication issues |
| F003.4 | Battery Low | ON (1) when the battery voltage is below the threshold | Used to prompt battery replacement |
| F003.5 | Forced ON/OFF | ON (1) when forced ON/OFF is applied to I/O points | Monitors overrides or forced settings |
F003.0 – Error (Major Error)
Description
The Error (Major Error) flag is ON (1) during any error condition in the system.
Use Case
- Monitor the system for active errors.
- Trigger alarms or notifications to alert operators of system issues.
F003.1 – Warning (Minor Error)
Description
The Warning (Minor Error) flag is ON (1) during non-critical warning conditions.
Use Case
- Identify warning signals that require attention but are not critical to operation.
- Can be used to plan maintenance or check system health.
F003.2 – Watchdog Timer Error
Description
The Watchdog Timer Error flag is ON (1) when a watchdog timer error occurs.
This is typically caused by program execution delays or system overloads.
Use Case
- Detect program execution timeouts.
- Initiate recovery actions to prevent system hangups.
F003.3 – I/O Error
Description
The I/O Error flag is ON (1) during input or output combined errors like communication or hardware failures.
Use Case
- Diagnose issue in input/output modules.
- Trigger fault routines or safety mechanisms.
F003.4 – Battery Low
Description
The Battery Low flag is ON (1) when the PLC’s battery voltage drops below the acceptable threshold.
Use Case
- Prompt timely battery replacement.
- Prevent loss of data stored in volatile memory.
F003.5 – Forced ON/OFF
Description
The Force ON/OFF flag is ON (1) when forced ON/OFF settings are applied to any I/O points.
Use Case
- Monitor overrides or forced operations.
- Ensure that overrides are intentional and controlled.
I/O Errors Relay Flags (F004)
| Flag Bit | Name | Description | Use Case |
|---|---|---|---|
| F004.0 ~ F004.7 | I/O Error (Slot Storage) | ON (1) if the reserved I/O and physical chassis I/O are different Number of differing slots (0 ~ 11) is stored | Used to identify and resolve slot-based configuration mismatches |
| F004.8 ~ F004.F | I/O Error (Expansion Storage) | ON (1) if the reserved I/O and physical chassis I/O are different Number of differing expansions (0 ~ 11) is stored | Used to identify and resolve mismatches in expansion modules |
F004.0 ~ F004.7 – I/O Error (Slot Storage)
Description
The I/O Error (Slot Storage) flag is ON (1) when the reserved I/O configurations differ from the physically mounted chassis I/O configuration.
The range of differing slots stored is 0 ~ 11.
Use Case
- Detect and resolve slot-based mismatches in I/O configurations.
- Ensure that all reserved slots match the physical hardware setup.
F004.8 ~ F004.F – I/O Error (Expansion Storage)
Description
The I/O Error (Expansion Storage) flag is ON (1) when the reserved I/O configurations differ from the physically mounted chassis I/O configuration.
The range of differing expansions stored is 0 ~ 11.
Use Case
- Identify mismatches in connected expansion modules.
- Ensure expansion configurations align with the program’s reserved setup.
Error Code Internal Relay Flag (F005)
The interval relay, F005, will be ON if any of the below CPU errors occur.
CPU Error Code – 0x0100
| Code | Error | CPU | LED RUN | LED STOP | Troubleshooting |
|---|---|---|---|---|---|
| 0x0101 | RAM Fault | STOP | Off | Blinking | Hardware failure. Replace CPU module. |
| 0x0102 | Flash Memory Fault | STOP | Off | Blinking | Hardware failure. Replace CPU module. |
| 0x0103 | User Program Error (RAM) | STOP | Off | Blinking | Delete the current program. Power cycle the PLC. Download the program again. If the issue still persists, replace the CPU module. |
| 0x0104 | User Program Error (Flash Memory) | STOP | Off | Blinking | Delete the current program. Power cycle the PLC. Download the program again. If the issue still persists, replace the CPU module. |
| 0x0105 | Parameter PBT Checksum Error | STOP | Off | Blinking | Delete the current program. Power cycle the PLC. Download the program again. If the issue still persists, replace the CPU module. |
| 0x0106 | Flash Data Error Backup Data Load Fail (BP) | STOP | Off | Blinking | Download the program again. Power cycle the PLC. If the issue still persists, replace the CPU module. |
| 0x0107 | ROM Pack Program Error Load Failure | STOP | Off | Blinking | Download a new program or delete the existing program. Power cycle the PLC. If the PLC connection is unavailable, remove the ROM pack from the CPU after powering off. The CPU will operate in RAM mode. |
| 0x0108 | Parameter Checksum Error | STOP | Off | Blinking | Download the program or project again. If the issue still persists, replace the CPU module. |
| 0x0109 | PBT Checksum Error | STOP | Off | Blinking | Download the program or project again. If the issue still persists, replace the CPU module. |
| 0x010A | User Program Checksum Error | STOP | Off | Blinking | Download the program or project again. If the issue still persists, replace the CPU module. |
CPU Error Code – 0x0200
| Code | Error | CPU | LED RUN | LED STOP | Troubleshooting |
|---|---|---|---|---|---|
| 0x0201 | RTC Data Failure | RUN | ON | Off | RTC error in CPU module. Contact Maple Systems if issue persists. |
| 0x0202 | RTC Data Failure (Sub) | RUN | ON | Off | RTC error in CPU module. Contact Maple Systems. |
| 0x0203 | WDT Timeout | STOP | OFF | Blinking | Modify the program to NOT go over the watchdog timer value or change the watchdog timer PLC parameter. Reset the PLC mode after modification. |
| 0x0204 | CPU WDT Occurrence | STOP | OFF | Blinking | The watchdog timer occurred during CPU operation. Contact Maple Systems if issue persists. |
| 0x0205 | Battery Fault (Low Voltage) | RUN | ON | Blinking | Low voltage or dead battery. Change the PLC battery. |
| 0x0206 | ASIC STOP1 | STOP | OFF | Blinking | Contact Maple Systems if issue persists. |
| 0x0207 | ASIC STOP2 | STOP | OFF | Blinking | Contact Maple Systems if issue persists. |
| 0x0208 | ASIC STOP3 | STOP | OFF | Blinking | Contact Maple Systems if issue persists. |
| 0x0209 | Scan Program Timeout | STOP | OFF | Blinking | Timeout occurred during scan program operation. Contact Maple Systems if issue persists. |
CPU Error Code – 0x0300
| Code | Error | CPU | LED RUN | LED STOP | Troubleshooting |
|---|---|---|---|---|---|
| 0x0301 | Base Type Mismatched with Reservation | STOP | Off | Blinking | Set the base and parameter identically. Power cycle the PLC. |
| 0x0302 | Module Dismount during RUN Mode | STOP | Off | Blinking | Check the installation of the module from the F007 flag. Power cycle the PLC. |
| 0x0303 | Module Type Reservation Error | STOP | Off | Blinking | Check the installation of the module from the F007 flag. Modify the base and slot number identically with the module installation. Power cycle the PLC. |
| 0x0304 | I/O Reservation Setting Error | STOP | Off | Blinking | Reserved I/O or installed I/O modules exceed the CPU capacity. Decrease the I/O count or upgrade the CPU module. |
| 0x0305 | Expansion Module Reset Failure | RUN/STOP | On/Off | Blinking | Hardware failure of the expansion module. Reset the error. Contact Maple Systems support if the issue still persists. |
| 0x0306 | Expansion Module System Data Read/Write Failure | RUN/STOP | On/Off | Blinking | Reset the PLC mode.Examine the operating environment. There is a possibility of external noise. |
| 0x0307 | Expansion Module User Data Read/Write Failure | RUN/STOP | On/Off | Blinking | Hardware failure of the expansion module. Replace the expansion module. |
| 0x0308 | No Response from Expansion Base | STOP | Off | Blinking | Check if the number of expansion bases are the same with the current PLC configuration. Check if the DIP switch is set correctly. Reset the PLC mode. Examine the operating environment. There is a possibility of external noise. |
| 0x0309 | Receive Data Error in Expansion Communication | STOP | Off | Blinking | Transmitted data from the expansion module can be corrupted. Power cycle the PLC. |
| 0x030A | I/O Error in Expansion Communication | STOP | Off | Blinking | I/O error code received from the expansion module. Power cycle the PLC. |
| 0x030B | NAK Received in Expansion Communication | STOP | Off | Blinking | Response failure from expansion module. Power cycle the PLC. |
| 0x030C | FROM/TO Instruction Base/Slot Error | RUN/STOP | On/Off | Blinking | There is no module at the base/slot where the FROM/TO instructions is assigned. Examine the operating environment. There is a possibility of external noise. Hardware failure of the expansion module. Replace the expansion module. |
| 0x030D | Duplicated Redundancy Module | STOP | Off | Blinking | Remove the duplicated redundancy module. |
| 0x030E | Digital Output Failure | RUN/STOP | On/Off | Blinking | Hardware failure of the expansion module. Replace the expansion module. |
| 0x030F | Timeout of CPU Instruction | STOP | Off | Blinking | Expansion module hasn’t received any commands from the CPU for certain time. Power cycle the PLC. |
| 0x0310 | Expansion Module User Data Read/Write Failure | STOP | Off | Blinking | Failed to read/write user data to the expansion module. Power cycle the PLC. |
| 0x0311 | No Response from Expansion Module User Data Read/Write | STOP | Off | Blinking | There is no response from the expansion module after the execution of the user data read/write command. Examine the operating environment. There is a possibility of external noise. Reset the PLC Mode. |
| 0x0312 | Wrong Redundancy Module Switch Setting | STOP | Off | Blinking | The switch setting on the redundancy MMI module may be wrong. Differentiate switches as primary and secondary. Set the power. |
| 0x0313 | Expansion Module Data Read/Write Failure | STOP | Off | Blinking | Failed to read/write data to the expansion module. Power cycle the PLC. |
| 0x0314 | Mount Error of Module in Expansion Base | STOP | Off | Blinking | A module on the expansion base may have been installed or dismounted during RUN mode. Check the installation status. Power cycle the PLC. |
| 0x0315 | Unknown CPU Module Detected | RUN/STOP | On/Off | Blinking | Replace the current CPU module with the correct CPU module. |
| 0x0316 | Duplicate Starting Base Address | STOP | Off | Blinking | The starting address from the base is duplicated Check the I/O reservation settings. Download the project again. |
| 0x0317 | Exceeded IO-SD0016R/IO-SD0808R Amount | STOP | Off | Blinking | More than a combination of 4 IO-SD0016R or IO-SD0808R modules are installed. Remove the additional modules. Power cycle the PLC. |
| 0x0318 | CPU and Expansion Base Connection Error | STOP | Off | Blinking | Check the connection status of the expansion base. Power cycle the PLC. |
CPU Error Code – 0x0400
| Code | Error | CPU | LED RUN | LED STOP | Troubleshooting |
|---|---|---|---|---|---|
| 0x0401 | User Program Compile Error | STOP | Off | Blinking | Check the information of the PLC project file, PLC CPU firmware version, and the MapleLogic version. |
| 0x0402 | User Program Exceeds Step Maximum | STOP | Off | Blinking | Decrease the number of steps in the program. Change the CPU module with one that allows for more steps. |
| 0x0403 | Error in Reading or Writing to D Data Register | STOP | Off | Blinking | Check the D data register range allowed by the CPU. |
| 0x0404 | FOR/NEXT Syntax Error | STOP | Off | Blinking | Modify the use of the FOR and NEXT instructions. |
| 0x0405 | JUMP/CALL Syntax Error | STOP | Off | Blinking | Modify the use of the JUMP and CALL instructions. |
| 0x0406 | JME/SBRT Index Exceeds 127 | STOP | Off | Blinking | Ensure the value of the JME and SBRT instructions does NOT exceed 127. |
| 0x0407 | Duplicate JME/SBRT Index | STOP | Off | Blinking | Ensure the value of the JME and SBRT instructions are NOT duplicates. |
| 0x0408 | Invalid Location of JME Instruction | STOP | Off | Blinking | Modify the JME instruction to be in the correct location. Compile the modified program. |
| 0x0409 | Invalid Location of JUMP Instruction | STOP | Off | Blinking | Modify the JUMP instruction to be in the correct location. Compile the modified program. |
| 0x040A | SBRT Nesting Error | STOP | Off | Blinking | The SBRT instruction must be used inside a subroutine program. Remove the SBRT from the scan program. |
| 0x040B | No RET Instruction Found in Subroutine | STOP | Off | Blinking | Add the RET instruction to the subroutine program. Compile the modified program. |
| 0x040C | FOR Loop Amount Exceeds 20 | STOP | Off | Blinking | Ensure there are 20 or less FOR loops. |
| 0x040D | Base/Slot Number in Special Program Mismatch | STOP | Off | Blinking | Set the correct base/slot number of expansion modules in the special program correctly. Compile the modified program. |
| 0x040E | Duplicate High-Speed Counter Program | STOP | Off | Blinking | Remove the duplicate high-speed counter program. Compile the modified project. |
| 0x040F | Duplicate Positioning Program | STOP | Off | Blinking | Remove the duplicate positioning program. Compile the modified project. |
| 0x0410 | Duplicate Communication Program | STOP | Off | Blinking | Remove the duplicate high-speed Ethernet link program. Compile the modified project. |
| 0x0411 | Duplicate PID Program | STOP | Off | Blinking | Remove the duplicate PID program. Compile the modified project. |
| 0x0412 | Duplicate Web Server Program | STOP | Off | Blinking | Remove the duplicate web server program. Compile the modified project. |
| 0x0413 | Duplicate Security Program | STOP | Off | Blinking | Remove the duplicate security program. Compile the modified project. |
CPU Error Code – 0x0500
| Code | Error | CPU | LED RUN | LED STOP | Troubleshooting |
|---|---|---|---|---|---|
| 0x0501 | Invalid Instruction | STOP | Off | Blinking | Replace the current CPU with the latest model. |
| 0x0502 | Exceed CALL Level | STOP | Off | Blinking | Modify the program to fix the error. Compiled the modified program. |
| 0x0503 | @D Out of Range | STOP | Off | Blinking | Modify the program to fix the error. Compiled the modified program. |
| 0x0504 | No Scan Program | STOP | Off | Blinking | Download the scan program. Reset the PLC mode. |
| 0x0505 | Invalid Data Register Memory Accessed | STOP | Off | Blinking | Ensure the data register maximum value is used correctly. Compile the modified program. |
| 0x0506 | FREAD/FWRITE Overuse | STOP | Off | Blinking | Too many FREAD and FWRITE instructions are used at the same time. Maximum 200 FREAD/FWRITE instructions can be used. |
| 0x0507 | No Expansion Module at Instruction for Expansion Module | STOP | Off | Blinking | FROM, TO, SEND, RECV, SND, RCV, FREAD, FWRITE Modify the instruction to call the correct module. Compile the modified program. |
| 0x0508 | Expansion Module Instruction Overuse | STOP | Off | Blinking | POSCTRL, TEACHn, PSTRTn, WGBATCH Too many instructions are used at the same time. Modify the program to call less instructions. Compile the modified program. |
| 0x0509 | Multiple Actions of Interrupt | STOP | Off | Blinking | Too many interrupts are used at the same time. Modify the project to use less interrupts. Compile the modified program. |
| 0x050A | Wrong Program ID (PID) | STOP | Off | Blinking | Incorrect program ID input into an instruction. Modify the program to call the correct program ID. Compile the modified program. |
| 0x050B | Index Error in Timer | STOP | Off | Blinking | Check if the timer instruction is duplicated. Modify the program to remove the duplicated timer instruction. Compile the modified program. |
| 0x050C | File System Error in SD Card | STOP | Off | Blinking | File system error occurred during web server operation. Backup or replace the SD card. |
| 0x050D | SD Card Error | STOP | Off | Blinking | SD card error occurred during web server operation. Replace the SD card. |
CPU Error Code – 0x0600
| Code | Error | CPU | LED RUN | LED STOP | Troubleshooting |
|---|---|---|---|---|---|
| 0x0601 | SFC Implementation Timeout | RUN | Off | Blinking | A timeout occurred in a sequential function chart transition condition. Modify the sequential function chart implementation time. |
| 0x0602 | No Web Server Program | RUN | Off | Blinking | There is no web server program in the current project. Add a web server program to the project. |
| 0x0603 | No Security Program | RUN | Off | Blinking | There is no security program in the current project. Add a security program to the project. |
RAM Errors Relay Flags (F007)
| Flag Bit | Name | Description | Use Case |
|---|---|---|---|
| F007.0 ~ F007.7 | RAM Error (Slot Storage) | ON (1) if Dual Port RAM access errors occur for a slot Number of differing slots (0 ~ 11) is stored | Diagnose and resolve slot-based Dual Port RAM errors |
| F007.8 ~ F007.F | RAM Error (Expansion Storage) | ON (1) if Dual Port RAM access errors occur for expansions Number of differing expansions (0 ~ 11) is stored | Diagnose and resolve expansion-related Dual Port RAM errors |
F007.0 ~ F007.7 – I/O Error (Slot Storage)
Description
The RAM Error (Slot Storage) flag is ON (1) when the reserved I/O configurations differ from the physically mounted chassis I/O configuration.
The range of differing slots stored is 0 ~ 11.
Use Case
- Detect and resolve slot-based mismatches in I/O configurations.
- Ensure that all reserved slots match the physical hardware setup.
F007.8 ~ F007.F – I/O Error (Expansion Storage)
Description
The RAM Error (Expansion Storage) flag is ON (1) when the reserved I/O configurations differ from the physically mounted chassis I/O configuration.
The range of differing expansions stored is 0 ~ 11.
Use Case
- Identify mismatches in connected expansion modules.
- Ensure expansion configurations align with the program’s reserved setup.
Interval System Clocks Relay Flag (F009)
| Flag Bit | Name | Description | Use Case |
|---|---|---|---|
| F009.0 | 0.02s | This flag toggles ON (1) and OFF (0) every 0.02 seconds | Used for high-frequency timing operations |
| F009.1 | 0.1s | This flag toggles ON (1) and OFF (0) every 0.1 seconds | Ideal for short-interval process monitoring |
| F009.2 | 0.2s | This flag toggles ON (1) and OFF (0) every 0.2 seconds | Suitable for mid-range timing applications |
| F009.3 | 1s | This flag toggles ON (1) and OFF (0) every 1 seconds | Commonly used for second-based operations |
| F009.4 | 2s | This flag toggles ON (1) and OFF (0) every 2 seconds | Used for slower timing or periodic processes |
| F009.5 | 10s | This flag toggles ON (1) and OFF (0) every 10 seconds | Ideal for low-frequency repetitive tasks |
| F009.6 | 20s | This flag toggles ON (1) and OFF (0) every 20 seconds | Suitable for monitoring or logging intervals |
| F009.7 | 1m | This flag toggles ON (1) and OFF (0) every 1 minute | Used for long-term periodic operations |
F009.0 – 0.02s
Description
The 0.02s internal system clock flag is ON (1) and OFF (0) every 0.02 seconds during RUN mode.
Use Case
- Suitable for high-frequency timing operations.
- Used for tasks requiring precise time intervals, such as fast data sampling.
F009.1 – 0.1s
Description
The 0.1s internal system clock flag is ON (1) and OFF (0) every 0.1 seconds during RUN mode.
Use Case
- Used for short-duration event monitoring.
- Ideal for process control tasks with quick response times.
F009.2 – 0.2s
Description
The 0.2s internal system clock flag is ON (1) and OFF (0) every 0.2 seconds during RUN mode.
Use Case
- Useful for medium-duration timing needs.
- Can be applied to repetitive mid-range tasks.
F009.3 – 1s
Description
The 1s internal system clock flag is ON (1) and OFF (0) every 1 second during RUN mode.
Use Case
- Commonly used for time-sensitive periodic operations.
- Suitable for creating a basic 1-second timer.
F009.4 – 2s
Description
The 2s internal system clock flag is ON (1) and OFF (0) every 2 seconds during RUN mode.
Use Case
- Used for slower periodic events.
- Ideal for tasks that require actions every 2 seconds.
F007.8 ~ F007.F – I/O Error (Expansion Storage)
Description
The 10s internal system clock flag is ON (1) and OFF (0) every 10 seconds during RUN mode.
Use Case
- Suitable for low-frequency repetitive tasks.
- Can be used for logging or monitoring operations at 10-second intervals.
F007.8 ~ F007.F – I/O Error (Expansion Storage)
Description
The 20s internal system clock flag is ON (1) and OFF (0) every 20 seconds during RUN mode.
Use Case
- Ideal for longer periodic tasks.
- Suitable for slower processes or system checks.
F007.8 ~ F007.F – I/O Error (Expansion Storage)
Description
The 1m internal system clock flag is ON (1) and OFF (0) every 1 minute during RUN mode.
Use Case
- Ideal for long-duration periodic operations.
- Commonly used for monitoring and logging tasks or as a clock signal for minute-based processes.
User Clocks Relay Flags (F010)
| Flag Bit | Name | Description | Use Case |
|---|---|---|---|
| F010.0 | User Clock 0 | User-configurable clock controlled by the DUTY instruction | Used for custom periodic tasks |
| F010.1 | User Clock 1 | User-configurable clock controlled by the DUTY instruction | Used for custom periodic tasks |
| F010.2 | User Clock 2 | User-configurable clock controlled by the DUTY instruction | Used for custom periodic tasks |
| F010.3 | User Clock 3 | User-configurable clock controlled by the DUTY instruction | Used for custom periodic tasks |
| F010.4 | User Clock 4 | User-configurable clock controlled by the DUTY instruction | Used for custom periodic tasks |
| F010.5 | User Clock 5 | User-configurable clock controlled by the DUTY instruction | Used for custom periodic tasks |
| F010.6 | User Clock 6 | User-configurable clock controlled by the DUTY instruction | Used for custom periodic tasks |
| F010.7 | User Clock 7 | User-configurable clock controlled by the DUTY instruction | Used for custom periodic tasks |
F010.0 – User Clock 0
Description
The user clock 0 flag is ON (1) and OFF (0) based on a user-defined value during RUN mode.
Use Case
- Allows for custom timing in parallel operations.
- Useful for managing time-sensitive processes.
- Suitable for creating multi-clock systems in a single PLC.
- Useful for asynchronous timing of processes.
- Useful for timing individual subsystems or tasks.
- Enables precise control over time-based operations.
F010.1 – User Clock 1
Description
The user clock 1 flag is ON (1) and OFF (0) based on a user-defined value during RUN mode.
Use Case
- Allows for custom timing in parallel operations.
- Useful for managing time-sensitive processes.
- Suitable for creating multi-clock systems in a single PLC.
- Useful for asynchronous timing of processes.
- Useful for timing individual subsystems or tasks.
- Enables precise control over time-based operations.
F010.2 – User Clock 2
Description
The user clock 2 flag is ON (1) and OFF (0) based on a user-defined value during RUN mode.
Use Case
- Allows for custom timing in parallel operations.
- Useful for managing time-sensitive processes.
- Suitable for creating multi-clock systems in a single PLC.
- Useful for asynchronous timing of processes.
- Useful for timing individual subsystems or tasks.
- Enables precise control over time-based operations.
F010.3 – User Clock 3
Description
The user clock 3 flag is ON (1) and OFF (0) based on a user-defined value during RUN mode.
Use Case
- Allows for custom timing in parallel operations.
- Useful for managing time-sensitive processes.
- Suitable for creating multi-clock systems in a single PLC.
- Useful for asynchronous timing of processes.
- Useful for timing individual subsystems or tasks.
- Enables precise control over time-based operations.
F010.4 – User Clock 4
Description
The user clock 4 flag is ON (1) and OFF (0) based on a user-defined value during RUN mode.
Use Case
- Allows for custom timing in parallel operations.
- Useful for managing time-sensitive processes.
- Suitable for creating multi-clock systems in a single PLC.
- Useful for asynchronous timing of processes.
- Useful for timing individual subsystems or tasks.
- Enables precise control over time-based operations.
F010.5 – User Clock 5
Description
The user clock 5 flag is ON (1) and OFF (0) based on a user-defined value during RUN mode.
Use Case
- Allows for custom timing in parallel operations.
- Useful for managing time-sensitive processes.
- Suitable for creating multi-clock systems in a single PLC.
- Useful for asynchronous timing of processes.
- Useful for timing individual subsystems or tasks.
- Enables precise control over time-based operations.
F010.6 – User Clock 6
Description
The user clock 6 flag is ON (1) and OFF (0) based on a user-defined value during RUN mode.
Use Case
- Allows for custom timing in parallel operations.
- Useful for managing time-sensitive processes.
- Suitable for creating multi-clock systems in a single PLC.
- Useful for asynchronous timing of processes.
- Useful for timing individual subsystems or tasks.
- Enables precise control over time-based operations.
F010.7 – User Clock 7
Description
The user clock 7 flag is ON (1) and OFF (0) based on a user-defined value during RUN mode.
Use Case
- Allows for custom timing in parallel operations.
- Useful for managing time-sensitive processes.
- Suitable for creating multi-clock systems in a single PLC.
- Useful for asynchronous timing of processes.
- Useful for timing individual subsystems or tasks.
- Enables precise control over time-based operations.
Control Relay Flags (F011)
| Flag Bit | Name | Description | Use Case |
|---|---|---|---|
| F011.0 | Operation Error | ON (1) when an operation error occurs | Detect and respond to operation errors |
| F011.1 | Zero | Indicates that the result of an operation is 0 | Monitor 0 results in arithmetic operations |
| F011.2 | Carry | Indicates a carry bit result from an arithmetic operation | Useful for overflow detection in calculations |
| F011.8 | All Outputs OFF | ON (1) when all outputs are turned OFF | Verify complete shutdown of outputs |
| F011.9 | DPRAM Access Error | Indicates a Dual Port RAM (DPRAM) access error Details are stored in the F007 flag | Diagnose DPRAM-related issues |
F011.0 – Operation Error
Description
The operation error flag is ON (1) when an error occurs during a PLC operation.
This could be due to invalid instructions or incompatible operations.
Use Case
- Detect operation errors in real time.
- Trigger alarms or diagnostic routines to respond to faulty operations.
F011.1 – Zero
Description
The zero flag is ON (1) when the result of an arithmetic or logical operation equals zero.
Use Case
- Monitor calculations to detect zero results.
- Useful in conditional operations or error-checking logic.
F011.2 – Carry
Description
The carry flag is ON (1) when a carry bit is generated during arithmetic operations, indicating an overflow in the calculation.
Use Case
- Detect overflow conditions during addition or subtraction.
- Ensure accurate handling of arithmetic results.
F011.8 – All Outputs OFF
Description
The all outputs OFF flag is ON (1) when all output points of the PLC are deactivated.
Use Case
- Verify complete shutdown of system outputs.
- Monitor system safety during idle or maintenance states.
F011.9 – DPRAM
Description
The DPRAM error flag is ON (1) when there is an issue accessing the Dual Port RAM.
Additional details are stored in the F007 flags for more in-depth diagnostics.
Use Case
- Diagnose issues with DPRAM access, such as read/write errors.
- Trigger fault routines to handle memory access problems.
Comparison Relay Flag (F012)
| Flag Bit | Name | Description | Use Case |
|---|---|---|---|
| F012.0 | Less Than (<) | ON (1) when the result of an unsigned comparison is less than | Used to evaluate conditions where one value is less than another |
| F012.1 | Less Than Equal To (≤) | ON (1) when the result of an unsigned comparison is less than or equal | Used to evaluate conditions where one value is less than or equal to another |
| F012.2 | Equal (=) | ON (1) when the result of an unsigned comparison is equal | Used to evaluate conditions where one value is equal to another |
| F012.3 | Greater Than (>) | ON (1) when the result of an unsigned comparison is greater than | Used to evaluate conditions where one value is greater than another |
| F012.4 | Greater Than Equal To (≥) | ON (1) when the result of an unsigned comparison is less than or equal | Used to evaluate conditions where one value is less than or equal to another |
| F012.5 | Not Equal (≠) | ON (1) when the result of an unsigned comparison is not equal | Used to evaluate conditions where one value is not equal to another |
F012.0 – Less Than (<)
Description
The less than (<) flag is ON (1) when the result of a comparison indicates that the first value is less than the second value.
Use Case
- Used to evaluate conditions in control logic where one value must be smaller than another.
- Example: Check if the current temperature is below the set point.
F012.1 – Less Than Equal To (≤)
Description
The less than equal to (≤) flag is ON (1) when the result of a comparison indicates that the first value is less than or equal to the second value.
Use Case
- Monitor conditions where a value must not exceed a threshold.
- Example: Ensure the machine load is within safe operational limits.
F012.2 – Equal (=)
Description
The equal (=) flag is ON (1) when the result of a comparison indicates that the first value is equal to the second value.
Use Case
- Verify equality between two variables or parameters.
- Example: Check if the target and actual positions of a motor are the same.
F012.3 – Greater Than (>)
Description
The greater than (>) flag is ON (1) when the result of a comparison indicates that the first value is greater than the second value.
Use Case
- Detect when one parameter exceeds another.
- Example: Trigger an alert when the current exceeds a predefined limit.
F012.4 – Greater Than Equal To (≥)
Description
The greater than equal to (≥) flag is ON (1) when the result of a comparison indicates that the first value is greater than or equal to the second value.
Use Case
- Monitor conditions requiring a minimum threshold.
- Example: Ensure sufficient material is available before starting a process.
F012.5 – Not Equal (≠)
Description
The not equal (≠) flag is ON (1) when the result of a comparison indicates that the first value is not equal to the second value.
Use Case
- Detect mismatches or unexpected values.
- Example: Check if a safety condition is violated.
Status Relay Flags (F126)
The status flags, F126, indicate the state and configuration of system operations in the PLC.
These flags provide insights into program mode, redundancy, web server status, and I/O error handling.
| Flag Bit | Name | Description | Use Case |
|---|---|---|---|
| F126.0 | Program RUN Mode | ON (1) when PLC is in program RUN mode | Monitor and manage program execution states |
| F126.1 | INITEND Bit | Indicates the completion of the initialization process when the INITEND instruction is executed | Used to trigger operations post-initialization |
| F126.2 | Redundancy Status | Provides the status of redundancy in the PLC system | Monitor redundancy status for fault-tolerant systems |
| F126.3 | Redundancy Configuration | Indicates the current redundancy configuration | Verify and manage system redundancy settings |
| F126.4 | Web Server OS | Indicates if the PLC is using the web server operating system | Monitor and troubleshoot web server functionality |
| F126.5 | I/O Error Process | Indicates the process for handling I/O errors | Diagnose and manage I/O error-handling mechanisms |
F126.0 – Program RUN Mode
Description
The program RUN mode flag is ON (1) when the PLC is in program RUN mode.
Use Case
- Monitor the operational state of the PLC.
- Trigger alarms if the system is unexpectedly stopped.
F126.1 – INITEND Bit
Description
The INITEND bit flag is ON (1) when the PLC executes the INITEND instruction.
Use Case
- Start operations only after the initialization phase is confirmed.
- Ensure system readiness before execution.
F126.2 – Redundancy Status
Description
The redundancy status flag is ON (1) when redundancy system is active.
Use Case
- Start operations only after the initialization phase is confirmed.
- Ensure system readiness before execution.
F126.3 – Redundancy Configuration
Description
The redundancy configuration flag is ON (1) when redundancy configuration is set.
Use Case
- Verify that redundancy configurations match the system’s requirements.
- Diagnose issues related to redundancy mismatches.
F126.4 – Web Server OS
Description
The web server os flag is ON (1) when the PLC’s firmware is the web server operating system.
Use Case
Monitor web server availability for remote diagnostics or control.
Troubleshoot web server-related errors.
F126.5 – I/O Error Process
Description
The I/O process error flag is ON (1) if there are any errors while handling the I/O process.
Use Case
- Diagnose and resolve I/O errors during operations.
- Monitor fault-handling mechanisms to ensure minimal downtime.
Scan Time Relay Flags (F300 ~ F320)
The scan time relay flags, F300 ~ F320, display the minimum, current, and maximum scan time.
These flags can help diagnose the scan time of the PLC for a specific program.
The scan time relay flags, F300 ~ F320, are WORD data registers that can be accessed with the MOV instruction.
| Flag | Minimum Scan Time (ms) |
|---|---|
| F300 | Minimum Scan Time (ms) |
| F310 | Current Scan Time (ms) |
| F320 | Maximum Scan Time (ms) |
Real-Time Clock Data Relay Flags (F400 ~ F430)
The real-time clock data relay flags, F400 ~ F430, display the year, month, date, day of the week, hour, minute, and second of the real-time clock.
These flags identify the real-time clock information of the PLC.
The real-time clock data relay flags, F400 ~ F430, are WORD data registers that can be accessed with the MOV instruction.
For more information about real-time clock data, refer to the DATERD instruction.
- The month, date, day of the week, hour, and minute flags, F410 ~ F430, should be converted to with respect to 2’s complement.
- After converting the number to binary, convert each portion of the binary number back to decimal.
Conversion Examples:
- Example 1: The flag F460 has the value 3,077.
- Converted to binary: 0000 1100 0000 0101
- 1100 (upper WORD) converted to decimal: 12 (month)
- 0101 (lower WORD) converted to decimal: 5 (day)
- Converted to binary: 0000 1100 0000 0101
- Example 2: The flag F470 has the value 1,025.
- Converted to binary: 0000 0100 0000 0001
- 0100 (upper WORD) converted to decimal: 4 (day of the week: Thursday)
- 0100 (lower WORD) converted to decimal: 1 (hour)
- Converted to binary: 0000 0100 0000 0001
- Example 3: The flag F480 has the value 1,288.
- Converted to binary: 0000 0101 0000 1000
- 0101 (upper WORD) converted to decimal: 5 (minute)
- 1000 (lower WORD) converted to decimal: 8 (second)
- Converted to binary: 0000 0101 0000 1000
| Flag | Item | Word |
|---|---|---|
| F400 | Year | |
| F410 | Month | Upper |
| F410 | Date | Lower |
| F420 | Day of the week | Upper |
| F420 | Hour | Lower |
| F430 | Minute | Upper |
| F430 | Second | Lower |
Program Clock Data Relay Flags (F450 ~ F480)
The program clock data relay flags, F450 ~ F480, display the year, month, date, day of the week, hour, minute, and second from when the program execution begins.
These flags identify when the PLC began execution of the current program.
The program clock data relay flags, F460 ~ F480, are WORD data registers that can be accessed with the MOV instruction.
For more information about program clock data, refer to the DATERD instruction.
- The month, date, day of the week, hour, and minute flags, F450 ~ F480, should be converted to binary with respect to 2’s complement.
- After converting the number to binary, convert each portion of the binary number back to decimal.
- Conversion Example 1: The flag F460 has the value 3,077.
- Converted to binary: 0000 1100 0000 0101
- 1100 (upper WORD) converted to decimal: 12 (month)
- 0101 (lower WORD) converted to decimal: 5 (day)
- Converted to binary: 0000 1100 0000 0101
- Conversion Example 2: The flag F470 has the value 1,024.
- Converted to binary: 0000 0100 0000 0000
- 0100 (upper WORD) converted to decimal: 4 (day of the week: Thursday)
- Converted to binary: 0000 0100 0000 0000
- Conversion Example 3: The flag F480 has the value 11,554.
- Converted to binary: 0010 1101 0010 0010
- 0010 1101 (upper WORD) converted to decimal: 45 (minute)
- 0010 0010 (lower WORD) converted to decimal: 34 (second)
- Converted to binary: 0010 1101 0010 0010
| Flag | Item | Word |
|---|---|---|
| F450 | Year | |
| F460 | Month | Upper |
| F460 | Date | Lower |
| F470 | Day of the week | Upper |
| F470 | Hour | Lower |
| F480 | Minute | Upper |
| F480 | Second | Lower |
Clock Power Failure Relay Flags (F500 ~ F540)
The clock power failure relay flags, F500 ~ F540, display the count, year, month, date, day of the week, hour, minute, and second from when the power failure occurred.
These flags identify when the real-time clock experienced a power failure.
The clock power failure relay flags, F500 ~ F540, are WORD data registers that can be accessed with the MOV instruction.
For more information about clock power failure, refer to the DATERD instruction.
- The month, date, day of the week, hour, and minute flags, F520 ~ F540, should be converted to binary.
- After converting the number to binary, convert it back to decimal.
- Example: The flag F520 has the value 2,329.
- Converted to binary: 0000 1001 0001 1001
- Converted to decimal: 9/25
- Converted to binary: 0000 1001 0001 1001
The count flag, F500, records the number of power failures.
| Flag | Item | Word |
|---|---|---|
| F500 | Count | |
| F510 | Year | |
| F520 | Month | Upper |
| F520 | Date | Lower |
| F530 | Date of the week | Upper |
| F530 | Hour | Lower |
| F540 | Minute | Upper |
| F540 | Second | Lower |
