Developer Portal Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    24 tips (Advent calendar) for Control plus programmers

    SteffenR-
    Community Moderator

    #10

    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

    #11

    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

    #12

    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

    #13

    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

    #14

    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