Developer Portal Community

    Showing results for 
    Search instead for 
    Did you mean: 

    24 tips (Advent calendar) for Control plus programmers

    24 tips (Advent calendar) for Control plus programmers

    Community Moderator
    Community Moderator

    Hey, it’s december. The time when the day starts with opening a door of an Advent calendar.

    Check out the official BCI Advent calendar on LinkedIn with some interesting piece of information every day.

    But just these days I noticed in a discussion that there are so many small improvements from Control plus bundle V1.0 to V2.3 that some of you maybe missed. What would be more obvious than showing you a tip every day ...

    #01  #02  #03  #04  #05  #06
    #07  #08  #09  #10  #11  #12
    #13  #14  #15  #16  #17  #18
    #19  #20  #21  #22  #23  #24

    24 REPLIES 24

    Community Moderator
    Community Moderator

    Do you know that Control plus Studio has a project compare function?


    As most of the work in Control plus Studio is exported to files it is also possible to compare the station folder, for example with Beyond Compare.

    Additionally the PLC editors have a quite powerful compare function. TwinCAT has the Project Compare tool in the Windows start menu, in ctrlX it is included in the PLC editor under Project > Compare.


    Community Moderator
    Community Moderator

    You can import PlcOpenXml in Control plus Studio. This helps if you want to move structures, enums or FB definitions from the PLC editor into Control plus Studio.

    Export PlcOpenXml in the PLC editor:

    Then import PlcOpenXml in Control plus Studio:

    Community Moderator
    Community Moderator

    If you have two or more machines that are (almost) identical you can manage them in one Control plus Studio project. The target system settings can be managed in this menu:


    There are several options to manage two identical machines in one production line or two identical machines in different production lines, for example:

    SteffenR_2-1639302801697.png  SteffenR_3-1639302816584.png

    Community Moderator
    Community Moderator

    During commissioning all manual functions need to be tested. There are two possibilities to get an overview of what has been tested:

    1. Generate a list of manual functions like you can do for the digital IO. Mark all manual functions that you have tested in the printed list.


    2. A smarter solution uses the manual function conditions in the methods OnManRelease:

      Create a global variable called CommissingActive:

      Use Search & Replace in the PLC editor (CTRL+H):
      Find what:
      FALSE;               // add your conditions here
      Replace with:

      Now you can release all manual functions by setting the commissioning variable TRUE (but be careful!):

      When testing a manual function replace the commissing variable with the real condition. At the end of the commissing the variable should not be used anymore and can be removed again.

      Additional tip:
      Create a commissioning BinIo flag in Control plus Studio and use a Set Event Addon to automatically show a warning if the commissioning flag is set:

    Community Moderator
    Community Moderator

    Beginning with Control plus Studio 5.3 you can automatically create constants for the maximum value of an enumeration:


    This is a great feature to use the constant as an array limit, for example for the axis teach points in station data and for FOR loops in the PLC.