RobotStudio event

Third-Party (Toolbox) Controls

How do I create my own ?_oThird-Party Controls?__ in Screen Maker (Toolbox) ?  Does anyone have any links to help with that? 

 

 I need a control that reads the state of 16 (binary) checkboxes or switches  and then converts the result (0-65535) to a num data that I can bind to a RAPID variable.  Conversely, it also must read the num data value and update the state of the switches.

 

Any help would be greatly appreciated.

Thanks,

Toby

Comments

  • Hello Toby,
     

    ScreenMaker does not support creating third party controls.

    But thirdy party controls created by the user can be added into ScreenMaker.

    Consider creating custom device usercontrols using FPSDK and adding them into ScreenMaker.

     

    How to make them available in ScreenMaker, its benefits and limitations can be mentioned in another post ?

     

    Thanks
  • Hello Abhishek,Toby,
    I would like also how I can insert my third party control on third party control tab in RS. Do I need some special configuration in my control library? Can you give more clues about these issues?

  • Hello,

    The solution mentioned here is temporary and would involve modifying ScreenMaker.dll.config file.

    There are two things two take note of :

    1. Adding the component (dll) which has this control implemented into the config file in the xml format mentioned below.

     <!-- THIS IS A TEMPORALLY SOLUTION-->
        <!-- Type names of the dll in a separated xml node. Do NOT add the extension -->
        <add key="BindDLL1" value="ABB.Robotics.AssParamOpt.Extended"/>

    2. To make the control visible in toolbox use the following xml format. For example Button_PBAnalyse is a button control with some additional features.

     <!-- THIS IS A TEMPORALLY SOLUTION-->
        <!-- Type full names of the classes that will be added to the tool box -->
        <add key="ToolBoxItem1" value=" ABB.Robotics.AssParamOpt.Extended.Button_PBAnalyse"/>
        <add key="ToolBoxItem2" value=" ABB.Robotics.AssParamOpt.Extended.Button_PBOptimize"/>

    Place the files in ScreenMaker bin folder.
    The solution is not tested completely.

    Thanks
  • Hello Abhishek,
    The main problem is that with version of RobotStudio 5.13.02 Screen Maker folder do not exist I now what you  are talking about because I have seen this xml before but now I can not find it. With one colleghe that has the previous version appears and now no. Can you help me again? Are you from ABB?

  • Ok ,I have the solution,

    C:Program FilesABB Industrial ITRobotics ITRobotStudio 5.13BinAddinsScreenMakerBin

    I am near the solutionClap

  • Ok, just imaging that I have a dll that is called Lib1, inside this Lib1 ( same namespace)
    I have ...
    namespace Lib1
    {
        public class TpsControl1 : TpsControl
        {

            /// <summary>
            /// Required designer variable.
            /// </summary>
            private System.ComponentModel.IContainer components = null;


            public TpsControl1()
            {
                InitializeComponent();
            }

            /// <summary>
            /// Clean up any resources used by this class
            /// </summary>
            /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
            protected override void Dispose(bool disposing)
            {
                if (!IsDisposed)
                {
                    try
                    {
                        if (disposing)
                        {
                            //ToDo: Call the Dispose method of all FP SDK instances that may otherwise cause memory leak

                            if (components != null)
                            {
                                components.Dispose();
                            }
                        }
                    }
                    finally
                    {
                        base.Dispose(disposing);
                    }
                }
            }

            #region Windows Form Designer generated code

            /// <summary>
            /// Required method for Designer support - do not modify
            /// the contents of this method with the code editor.
            /// </summary>
            private void InitializeComponent()
            {
                this.SuspendLayout();
                //
                // TpsControl1
                //
                this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
                this.Name = "TpsControl1";
                this.Size = new System.Drawing.Size(640, 390);
                this.ResumeLayout(false);

            }

            #endregion

        }
    }

    I put this dll in the bin folder...
    A?What shoul I put in the XML?

  • Try this ...
     

    <add key="ToolBoxItem1" value=" Lib1.TpsControl1"/>
    Carlos Martinez
    ABB