Beckhoff code development and modification 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.
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:
Clean Project
After performing necessary modifications to project in TwinCAT PLC Control click Project → Clean All. This command executes the cleanup process which deletes the compile information (compile log) that enables online change. After cleanup online change is not possible without a full rebuild and download. The command pops up a series of dialog boxes to lead through the process
It’s always a good idea to perform a clean rebuild and download after code modification. On the second popup asking to leave Configuration unchanged only press ‘Yes’ if no variables are to be linked to hardware. Pressing ‘Yes’ breaks the hardware configuration and requires code rescan in System Manager.Compile Project
Click Project → Rebuild All. This command compiles all the components of the project including the new changes. The results window shows the compile results (shown below for the case where we pressed ‘Yes’).
Notice the warning indicating missing VAR_CONFIG. This indicates the need to rescan and reactivate project on the PLC using System Manager.Rescan Project
The rescan operation happens in the System Manager. Launch System Manager and open the file currently linked to the project in question. Navigate to the project under ‘PLC - Configuration’ in the explorer window and click the ‘Rescan’ button. This operation inducts the newly added “addressed” variables into the System Manager configuration so that they could be attached to hardware I/O terminals.
At this point it’s a good idea to confirm that the rescan didn’t disturb your existing hardware links. In the figure below the hardware links are indicated by the small arrows next to the hardware I/O terminal.Activate Configuration
The rescanned configuration is now saved and the next step is to activate it on the PLC. Click on the ‘Activate’ button in the menu bar.