Note that the AX ST compiler generates code according to the IEC standard whereas the compiler in the TIA Portal is backward-compatible for the long history of PLC families. Functionality accordingly differs between the two compilers. Not all features of the STC can be supported in the TIA Portal and others will be ignored or may be transformed so that they conform to the TIA Portal feature set.
Note
AX2TIA will verify all restrictions and abort the convert if there are errors in the primary library and in any referenced code from the libraries you used in your project.
Source code in the test folder belonging to AxUnit testing will not be analyzed.
To provide early feedback, warnings and errors will be shown in AxCode and with STC, but only if AX2TIA is installed in your Apax project. No warnings or errors will be raised during development for dependency libraries already built.
| Feature | Applied operation |
|---|---|
Access modifier INTERNAL |
omitted. This may unintentionally expose functionality that is supposed to be hidden. |
| Parameter instances of function blocks and classes | are not supported in this version of AX2TIA in the INPUT and OUTPUT section. |
ARRAY returned by functions or methods |
are not supported in TIA Portal and hence in AX2TIA. |
STRUCT with relative addressing |
are not supported in this version of AX2TIA. |
| Classes | are not supported in the TIA Portal but can be used in the AX library. Write a wrapper FB that uses the class. |
| Interfaces | are not directly supported in the TIA Portal but can be used in the AX library. |
| Named values in variable declarations | transformed to their base type. The type itself is omitted. |
| Enumerations in variable declarations | transformed to the type INT. The type itself is omitted. |
| Named arrays in variable declarations | transformed into the type directly. The type itself is omitted. |
DATE and TIME data types |
transformed into the corresponding (long) type. Only DATE/LDATE produce an error message. |
Elementary types in IN_OUT section of functions |
transformed into REF_TO <type> in the INPUT section. |
Elementary types in IN_OUT section of function blocks |
are not supported in AX2TIA. |
STRING[_size_] used in functions or methods |
A definition of size for a STRING or WSTRING is not allowed in TIA Portal in the public interface of a FUNCTION and hence is stripped off. |
REF_TO in variable declarations |
transformed depending on their usage. |
BOOL in IN_OUT section of functions |
are not supported in this version of AX2TIA. |
REF_TO BOOL |
not supported in functions in this version of AX2TIA. |
| Overloading functions or methods with different parameter types | Block names are made unique by appending a type name and/or number. |
| Maximum nesting depth of named structures | AX2TIA does not limit nesting depth whereas the TIA importer applies the target specific limitation. |
| Maximum name length for namespace and blocks | 60 character limit in this version of AX2TIA. |
TIP
Features not explicitly mentioned as not being supported here are implicitly supported. Do file a service desk ticket if you experience any issues or problems.