Panel Screens – Applications

Modified on Wed, 23 Jun 2021 at 06:59 PM



Panel screens can be implemented during the application development phase to greatly aid in setting up the application, troubleshooting, fine-tuning, and providing shortcuts for repetitive tasks.  Below are some commonly used panel screen tools that assist in the development phase of the application, but continue to be useful throughout the project.

End of Arm Tooling Control

Controlling the end of arm tooling will generally be part of any application. Typically, these actions will be coded in a subroutine that is called when needed.  A small issue with this is that you can’t run a program or subroutine while the robot is in manual mode.  Say you’re jogging the robot and teaching points, it could be cumbersome and time-consuming to constantly switch into Auto mode and back.


With a panel screen, you have the ability to create a pushbutton that toggles the IO you need, without having to switch operation modes.  See an example below: 


I/O Monitoring

Another good use of a panel screen is monitoring IO that you care about.  On your panel screen, there is the ability to use Pilot Lamps, which can be tied to IO status.  This can allow for quick referencing of relevant IO status’s, be it system IO or user IO.


A concept to note with IO Monitoring is that the code for these must be inside a TIMER element.  The TIMER object in panel designer will automatically refresh the status of whatever is in side of it at predetermined time intervals.  So if you want a pilot light showing the status of an IO, you’ll want it refreshed say every 100-200 ms.  


I/O Output Control

You can control and toggle IO outputs from panel screens.  The same way you can have a pushbutton toggle a set of IOs to control your end of arm tooling, pushbuttons (or illuminated pushbuttons) can control single IOs that can start/stop whatever the output may be tied to.

Program Start

Commonly, panel screens will incorporate pushbuttons or illuminated pushbuttons to automate tasks and programs. The savings here comes in having a button to do exactly what you want in a convenient place.  On the panel screen, you simply switch to Auto mode and press your pushbutton instead of navigating to the programs screen and running from there.  


Pushbuttons for program starts can be for your main application programs, but also for simple program.  For example, it’s useful to have several simple programs that return the robot to a home position, or to a standby or loading position, etc. Having a pushbutton to quickly and easily return the robot to a desired position can save time during development and an iterative design process.


Variable Monitoring

The numerical input button (aka Numetic Box) is great for monitoring variables in real time, again both during development and application.  These are generally placed inside the timer object to be constantly refreshed for monitoring purposes.  What the numerical input buttons are displaying could be anything from positional element data, integer variables, floats, any of the numerical global variable types.


For example, these numerical input buttons could display the progress of a parts counter as the robot processes parts; these could display measurement or positional data from a vision system for verification; they can display the current position that the robot is moving to; and many others.


The counterpart to this is the Text Box, which can display strings for the same monitoring purposes as the numerical input button.  These strings can be custom display messages, error messages, and inputs from external devices, among others.

Variable Entry

Just as you can use the numerical input button and the text boxes to monitor and view different variables, you can also use these same tools to input values to those variables.  They go both ways, both displaying the current value and setting the value of variables, depending on how they’re coded.


Some examples of using the numerical input buttons for variable input include: inputting the number of cycles to run, inputting speed values, inputting positional offset values, among others.


The text box functions much the same way in that you can type in a string to dictate what program to run, a notation for future reference, a specific command to process, etc.


Note that when you’re reading a global variable and displaying it on the panel screen, the code is written so that the object value equals the variable:  nbPartsCounter.value = I[7]; however when the panel screen is setting the value of a global variable you flip the equation so that the variable equals the value of the object: I[7] = nbPartsCounter.value.


Panel Template Import/Export

Once your panel screens have been created and fine-tuned, they can be saved and reused for other projects.  WinCAPS allows you to import programs into projects. This not only applies to *.pcs programs, but also to panel files (*.pns).  For example, if you create a panel screen to monitor system I/O, it would make sense to reuse this screen as it is applicable to more than just 1 project.


It can be beneficial to have a collection of panel screens saved separately to be used as quick start templates that can be easily imported into projects. 


Function Keys

When creating a panel screen, we also have access to the 12 function keys across the bottom of the screen.  These buttons can be used and customized just like a regular pushbutton as found above.  Since these will always be visible, it is common to use them for page navigation (page changes), or other non-application specific tasks.  These non-application specific tasks could range from a button to reset variables, or buttons to run a simple program to quickly and easily move the robot to a desired position such as a home position, calibration position, shipment position, or other configuration.

Page Changes/Multiple Panel Screens

It can be very helpful to have multiple panel screens in your project.  This allows better organization of information, and customization of different screens for different uses: development, run time, operator, and maintenance and so on.  

Creating these various panels is done within the WinCAPS project.  Within the individual panel screens you utilize the PageChange command to switch between the various panels.


As you create multiple panel screens for your project, and you add page change commands to navigate between them, don’t forget to give yourself a way back.  For example if you have your main page, and you navigate to a maintenance page, you’ll want to add another page change command on the maintenance page to take you back to the main page.  If this isn’t done, you’ll need to use the cancel button to exit the entire panel screen system, then return back to it.

The page change command can also be utilized in the PacScript environment in WinCAPS.  Therefore, as your program is running, you can actively change the panel being displayed as the program progresses.  This could be used to display different operator options, or simply show what the robot or the work piece looks like at any given stage.


Custom Pictures on Panel Screens

Whether it be for a company logo or displaying what the part or operation should currently be looking like, the ability to put your own pictures on the panel screen can be very useful.  You accomplish this by inserting a pushbutton object, then in the Picture property, direct it to the picture you would like.  The picture must be in the Bitmap format (*.bmp).

Code Organization

As you create more intricate and complicated panel screens it is important to organize your code to make troubleshooting and editing simpler and more streamlined.  We recommend you do this by grouping like tasks and objects together, and using comments to section them off from one another.  There is no penalty for extra or empty lines, so it is encouraged to organize the code in a way that makes sense.

Here are some example groupings: 

  • Function Keys
  • Pushbuttons
  • Timer
  • Program Starts

Panel Screen Control Settings

There are some settings and options that control how your panel screens will behave and be accessed in the teach pendant.  It is important to ensure these settings are set properly for the desired behavior.  They can be found from the main screen:

Main Screen: 


Pendant and Panel:

Panel Settings:

In the panel settings menu, you have 3 different settings that can be adjusted: 

Show Automatically

  • This setting can make the panel screen (named main.pns) show automatically upon the booting up of the controller.  In the case of a power cycle, power loss etc. The panel screen will either be hidden and the blank main screen will be shown, or the panel screen will be shown automatically.

Close Mode

  • The close mode determines how to exit a panel screen once you’re already viewing one.  Closing the panel screens will return you back to the main teach pendant screen.
    • Shift + Cancel: Press the CANCEL button while holding down the SHIFT button.
    • Shift + Cancel + Password: Press the CANCEL button while holding down the SHIFT button, and then you will be prompted to enter a numeric password in order to exit.  This password can be set by pressing the SETTINGS button and entering the desired password.

Enable Shortcut

  • This shows or hides the Panel Screen shortcut (F5) on the main panel screen.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select atleast one of the reasons

Feedback sent

We appreciate your effort and will try to fix the article