Over time we have converged to a reliable way to download code to Beckhoff PLC (local or remote runtimes). The key steps are listed below:
Beckhoff code development happens on two applications:
TwinCAT PLC Control
This is the IDE for code development. Code projects are opened as *.pro file and editing is allowed in any of the standard IEC-61131 languages (Structured Text, Ladder Logic etc.). Compiling and downloading to PLC runtime is also done from here.
TwinCAT System Manager
This is the tool for configuring hardware and linking code variables to I/O terminals.