Resolving S7 F Systems Driver Error 'Value BITVAL Is Not Defined in File AL_FCHN3.xml' During Module Driver Generation
The error 'Value BITVAL is not defined in file AL_FCHN3.xml / F_CH_DI3' occurs during PCS 7 module driver generation when a fail-safe digital input channel driver block (such as F_CH_DI or F_CH_DI3) is interconnected to an invalid, incomplete, or non-failsafe hardware address. The module driver generator uses XML rule files like AL_FCHN3.xml to map hardware addresses to F-channel parameters. If the driver block input 'VALUE' is wired to an absolute memory address (M), a standard I/O module channel, or a symbolic tag whose hardware module is missing from HW Config, the generator cannot resolve the channel bit offset ('BITVAL') and aborts. To fix this, verify that the 'VALUE' parameter is linked to a valid symbolic address pointing directly to a fail-safe digital input module (F-DI) configured in HW Config.
Table of Contents
- Executive Summary
- Architecture and Fundamental Mechanics
- Step-by-Step Implementation Procedure
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Executive Summary
In SIMATIC PCS 7 with S7 F Systems, fail-safe automation programs require automated module driver generation to establish safety diagnostic handshakes, PROFIsafe communication wrappers, and channel passivation routines. During compilation of the safety program, the module driver generator parses the hardware configuration and cross-references all fail-safe channel driver blocks against XML device description templates (e.g., AL_FCHN3.xml for ET 200M/ET 200SP F-DI modules). If a driver block parameter (specifically VALUE) is connected to an unassigned symbol, a memory bit, or a channel on a non-safety module, the driver generator fails to determine the hardware slot and bit position, throwing the error Value BITVAL is not defined in file AL_FCHN3.xml / F_CH_DI3. Ensuring proper symbolic interconnection to verified fail-safe hardware addresses resolves the error.
Architecture and Fundamental Mechanics
The PCS 7 module driver generator (Chart > Compile > Generate module drivers) automates the creation and interconnection of diagnostic and hardware monitoring blocks (F_MOD_DI, F_PS_DI, etc.) between the cyclic execution chart and the physical I/O hardware. For fail-safe architectures:
- XML Rule Engine: The generator relies on XML mapping files (located in the Step 7 driver library folders, e.g.,
AL_FCHN3.xml,AL_FCHN4.xml) that define how block parameters correspond to hardware properties. The attributeBITVALrepresents the specific bit offset (channel 0 through 15 or 23) within the fail-safe process input image byte of the F-DI module. - Hardware Association: When the generator processes an
F_CH_DIorF_CH_DI3block, it inspects the connection at input pinVALUE. It expects an interconnection to a symbolic operand mapped to an address defined in HW Config for an approved fail-safe input module (such as6ES7326-1BK02-0AB0or6ES7136-6BA00-0CA0). - Failure Mechanism: If an engineer manually connects
VALUEto an internal memory flag (M 10.0), a DB variable (DB10.DBX0.0), a standard (non-safety) DI address, or an address belonging to a module that was deleted or modified in HW Config without compiling, the XML parser cannot find the corresponding channel object in the hardware database. Because the channel object is absent, the parameterBITVALcannot be extracted from the XML rule file, leading to the fatal errorValue BITVAL is not defined in file AL_FCHN3.xml / F_CH_DI3.
Step-by-Step Implementation Procedure
Follow these steps to locate and resolve the BITVAL definition failure during module driver generation:
- Locate the Problematic Driver Block:
* Open the compilation log (CFC > Target system > Display Logs > Compile).
* Trace the warning or error entry immediately preceding theAL_FCHN3.xmlerror to identify the specific CFC chart and block instance name (e.g.,Chart_Safety/F_CH_DI_1). - Inspect the HW Config Configuration:
* Open HW Config in SIMATIC Manager.
* Locate the fail-safe digital input module (e.g., ET 200M F-DI24 or ET 200SP F-DI 8x24VDC).
* Note the start address and address range assigned to the module inputs (e.g., input address range 100 to 105).
* Verify that the F-parameters (F-source address, F-destination address, safety monitoring time) are valid and free of compilation errors.
* PerformStation > Save and Compilein HW Config. - Verify the Symbol Table Assignment:
* Open the Symbol Table for the S7 Program.
* Search for the symbol connected to theVALUEinput of the identified F-channel block.
* Ensure the symbol's address falls strictly within the input address range of the fail-safe module (e.g.,I 100.0throughI 102.7).
* Ensure the data type is strictlyBOOL. - Reconnect the Block Input in CFC:
* Open the CFC chart containing theF_CH_DIorF_CH_DI3block.
* Inspect input parameterVALUE. If it is interconnected to an internal tag, non-F address, or obsolete symbol, delete the connection.
* ReconnectVALUEby selecting the valid symbolic tag from the Symbol Table pointing to the F-DI channel. - Recompile the Program and Drivers:
* In CFC, selectChart > Compile > Charts as Program.
* Select 'Generate module drivers' and ensure 'Scope: Entire program' or 'Changes only' is selected.
* Verify that compilation completes without XML driver generator errors.
Verification
After updating the symbolic connection and compiling HW Config, recompile the CFC program with 'Generate module drivers' enabled. Inspect the compilation log; verify that the generator successfully instantiates the safety diagnostic blocks (F_MOD_DI, F_DIAG_F) and connects them to the F-channel blocks. Open the CFC chart and verify that the MODE, SUBSYS, and SIM_V parameters of the F_CH_DI block have been populated automatically by the driver generator.
Limitations and Operational Precautions
Fail-safe channel driver blocks must never be interconnected to non-failsafe signals or standard memory markers (M). If simulation or internal safety interlocking is required without physical I/O, use dedicated safety logic blocks (F_AND4, F_OR4, F_SR) or safety communication blocks (F_SNDBO, F_RCVBO), not physical F-channel hardware drivers.
Engineer FAQ
What is the purpose of AL_FCHN3.xml in S7 F Systems?
It is an internal XML rule definition file utilized by the PCS 7 module driver generator to map hardware diagnostic addresses, channel bit offsets, and subrack indices from HW Config into fail-safe channel driver blocks.
Can I manually enter the BITVAL value on the F_CH_DI block?
No. The BITVAL, MODE, and hardware addressing inputs are managed exclusively by the automated module driver generator and cannot be manually parametrized.
Why did this error appear after copying an F-chart from another project?
When an F-chart is copied, its symbolic connections may point to addresses that do not exist or are assigned to non-failsafe modules in the destination hardware configuration.
Does F_CH_DI3 require a different library version than F_CH_DI?
F_CH_DI3 is commonly used with SIMATIC Safety Matrix or updated S7 F Systems libraries supporting extended channel-level diagnostics; both require identical valid hardware symbolic bindings.
Technical References
- SIMATIC Industrial Software S7 F/FH Systems - Configuring and Programming (A5E00049068-12)
- SIMATIC Process Control System PCS 7 Basis Library (V9.0 SP3) Manual
- Siemens Industry Online Support Entry 109780813 - PCS 7 Licensing and Engineering Guidelines
Related Articles
- Configuring Fail-Safe Module Drivers and PROFIsafe Communication in S7 F Systems and PCS 7
- Resolving CFC Error 1739:460 'Operand Not Permitted' When Copying Charts Between PCS 7 Controllers
- Resolving SIMOCODE pro V Module Driver Generation Errors on CPU Integrated DP Ports in PCS 7
Related Tags
- S7 F Systems
- Module Drivers
- F_CH_DI
- AL_FCHN3.xml
- Fail-Safe
- Safety Matrix