Developer Portal Community

    We are moving! We are currently migrating our community to the new Bosch Connected Industry Online Portal. The community will be available latest in the new year again, until then it will be in read-only mode. Click here for more information.

    cancel
    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

    SteffenR-
    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

    SteffenR-
    Community Moderator
    Community Moderator

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

    SteffenR_0-1639125880163.png

    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.

     

    SteffenR-
    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:
    SteffenR_0-1639204793418.png

    Then import PlcOpenXml in Control plus Studio:
    SteffenR_1-1639204793423.png

    SteffenR-
    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:

    SteffenR_0-1639302383126.png

    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

    SteffenR-
    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.
      SteffenR_0-1639401894148.png

       

    2. A smarter solution uses the manual function conditions in the methods OnManRelease:
      SteffenR_4-1639401964206.png

      Create a global variable called CommissingActive:
      SteffenR_7-1639402223534.png

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

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

      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.
      SteffenR_3-1639401894156.png

      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:
      SteffenR_6-1639402154003.png

    SteffenR-
    Community Moderator
    Community Moderator

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

    SteffenR_0-1639478959897.png

    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.

    Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist