8 Debugging and troubleshooting. ABB RobotWare 5.0
Robot Application Builder (RAB) is a software tool, which enables ABB programmers to develop customized operator interfaces for the IRC5 robot controller. Robot Application Builder is fully integrated with Microsoft Visual Studio, which means that a .NET programmer will recognize wizards for project setup, tools for visual design support, and debug etc.
Advertisement
Advertisement
8 Debugging and troubleshooting
8.1.1. Debug output
8 Debugging and troubleshooting
8.1 FlexPendant - Debugging and troubleshooting
8.1.1. Debug output
Overview
It is possible to get debug output from the FlexPendant by using the network. This is useful for several reasons. It will reveal any exceptions thrown during execution, for example, providing you with error messages and call stacks. Moreover, it can help you check memory consumption and memory leaks in your application.
The FP message is packed into a network message and sent out on the network as a broadcast message on port 9998. Such a message can be picked up in different ways:
•
Connect a hub on the local FlexPendant network and connect a PC to it. Use nc.exe to pick up the messages (nc - lup 9998).
• The messages sent are also stored in a ring-buffer of size 100kB. To read the buffer to file and store it on the controller, you can use the FlexPendant Command Server. Use
fpcmd “-d”.
•
It is also possible to start a task on the controller that listens to port 9998 and displays all messages in the console buffer. Use command fp_enable_console_output.
TIP!
For a list of exceptions that the IRC5 Controller may throw, see
Exception error codes on page 292
.
Enable debug output
To enable debug output write fpcmd_enable_console_output
in the controller console window.
These are the console commands used to enable and disable printouts:
Console command
fpcmd_enable_console_output 1 fpcmd_enable_console_output 2 fpcmd_enable_console_output 3
Result
Starts producing printouts from RobotWare to the robot controller console.
Starts producing printouts from SDK application.
Combines the two above: RW + SDK printouts.
fpcmd_disable_console_output Stops printout to the robot controller console.
The command below can be used to retrieve detailed status of the robot controller, which may be useful, although it may not be specifically related to your application.
Console command
fpcmd “-d”
Result
Produces a log file with extensive information on system status to the robot controller file system(hd0a/ temp). Use an ftp client or the File Manager in
RobotStudio to transfer the file to your PC.
3HAC028083-001 Revision: D
Continues on next page
279
8 Debugging and troubleshooting
8.1.1. Debug output
Continued
FlexPendant Command Server
By using the command line on the controller you can send commands to the FlexPendant. The
FlexPendant has a command server that interprets the commands and performs the requested operation. The syntax for command line commands is fpcmd “<command>”. The only command you need to remember is fpcmd "-h"
, which is the Help command. It produces a printout of available FlexPendant commands in the controller console:
-> fpcmd “-h”value = 8 = 0x8-> [fp]: FlexPendantCmd: Help fpcmd “-h”: Help fpcmd
“-a”: Adapter show routine fpcmd “-m”: Measure time in adapters fpcmd “-i”: Display
FlexPendant Information fpcmd “-f”: Bring GTPU Services to front fpcmd “-x”: Hide startup progress bar fpcmd “-s”: Start application fpcmd “-d”: Copy Debug file to controller fpcmd “-as”: Print screen fpcmd “-rd”: RobAPI debug fpcmd “-restart”:
280
Continues on next page
3HAC028083-001 Revision: D
8 Debugging and troubleshooting
8.1.1. Debug output
Continued
Restart Device fpcmd “-memShow”: Available memory fpcmd “-module”: Module information of a process fpcmd “-filePut”: Upload a file to the FlexPendant fpcmd
“-filleted”: Download a file to the FlexPendant fpcmd “-diarist”: List a directory
NOTE!
All commands support -? (e.g. fpcmd “-memShow -?”), which gives further information about the specific command.
TIP!
It is possible to monitor memory consumption in the robot controller console window:
1. Write fpcmd_enable_console_output 3
.
2. Write fpcmd "-memShow"
.
Discover memory leaks on page 186
Trace and Debug
The
ABB.Robotics.Diagnostics namespace provides trace and debug services. Its
Trace
and
Debug
classes are specifically designed for the FlexPendant environment.
The properties and methods in the
Trace
class are used to instrument release builds, which allows you to monitor the health of your application running in a real-life setting. Tracing can help you to isolate problems and fix them without disturbing a running system.
If you use methods in the
Debug
class to print debugging information and check your logic with assertions, you can make your code more robust without impacting the performance and code size of your shipping product. In Visual Studio, creating a debug build enables
Debug
.
Trace
and
Debug
give printout information during execution. Messages are displayed on the
FlexPendant screen or in the robot controller console. The functionality is similar to that provided by the .Net
Trace
and
Debug
classes.
The
Assert
method checks for a condition and displays an assert message on the
FlexPendant, including detailed information and a stack trace, if the condition is false. The message is also displayed in the controller console window if you enter the command fpcmd_enable_console_output
first.
NOTE!
Add the
ABB.Robotics.Diagnostics
namespace to the using
section at the top of your source code file.
3HAC028083-001 Revision: D 281
8 Debugging and troubleshooting
8.1.2. Debugging the virtual FlexPendant
8.1.2. Debugging the virtual FlexPendant
Overview
When debugging your application it is often convenient to use the virtual environment, but it is almost as easy to attach the Visual Studio debugger to the real FlexPendant device. For information about how that is done see
Debugging the FlexPendant device on page 286
.
This section describes how to start the VS debugger, attach a running Virtual FlexPendant to it, set up break points and step through the source code of a FlexPendant application.
282
Continues on next page
3HAC028083-001 Revision: D
8 Debugging and troubleshooting
8.1.2. Debugging the virtual FlexPendant
Continued
Debugging procedure
There are several ways of attaching a Visual Studio debugger to a running Virtual
FlexPendant application. In this section one method is described in detail.
There is no way to start your FlexPendant application from inside the Visual Studio environment. You must start by deploying the application to the Virtual FlexPendant in
RobotStudio. How to do this is described in
Hands on - Hello world on page 86
start the Virtual FlexPendant and attach the Visual Studio debugger to it.
NOTE!
In order to use break points the project build configuration must be Debug. You set it in the the Build tab of the Project Properties. The output directory, where you find the assembly
(*.dll), the proxy assembly (*gtpu.dll) and the program database (*.pdb) is the bin/Debug directory, a sub-directory of your VS project.
Attach to Process
When you have a running application on the Virtual FlexPendant follow these steps:
Step Action
1 In Visual Studio on the Debug menu, select Attach to Process. It brings up this dialog:
2
3
4
9.1.3_1
Select the Virtual FlexPendant.exe process and press the Attach button.
Set a break point in your source code.
On the Virtual FlexPendant, press a button of your application or something else that will make program execution hit the breakpoint.
3HAC028083-001 Revision: D
Continues on next page
283
8 Debugging and troubleshooting
8.1.2. Debugging the virtual FlexPendant
Continued
Step Action
5 On the Debug menu, point at Windows and select the debugging information to be displayed while debugging. See example below:
284
6
7
9.1.3_2
On the Debug menu, select the appropriate Step command when stepping through your code.
On the Debug menu, click Detach All or Stop Debugging when you want to stop debugging.
Continues on next page
3HAC028083-001 Revision: D
8 Debugging and troubleshooting
8.1.2. Debugging the virtual FlexPendant
Continued
Windows Task Manager
You can also attach a running application through the Windows Task Manager.
Step
1 Start Windows Task Manager and select the Processes tab.
2
3
9.1.3_3
Select the Virtual FlexPendant.exe process and right-click to get the context menu.
In that menu select Debug. You will get a warning message, but select Yes.
A Just -In -Time Debugging dialog will appear. Select your application project as the debugger to use.
Launching debugger programatically
Yet another way of attaching a debugger is to launch it programatically, by writing code in your application.
Step Action
Insert the following line where you want the debugger to start:
System.Diagnostics.Debugger.Launch()
Start the application in the Virtual FlexPendant and perform the action which is to launch the debugger. A Just- In-Time Debugging dialog will appear.
Select your VS project as the debugger. Click OK and start the debug session.
3HAC028083-001 Revision: D 285
8 Debugging and troubleshooting
8.1.3. Debugging the FlexPendant device
8.1.3. Debugging the FlexPendant device
Overview
This section provides information on how to do debug an application executing on the real
FlexPendant device.
In general, using the Visual Studio debugger to debug the device works very well and is strongly recommended, but depending on the OS, Visual Studio version and FlexPendant version you are using the requirements for setting up and attaching the Visual Studio debugger will differ somewhat.
Further information and updates concerning this topic will from this release be published on the RAB User Forum (and not in the User's Guide). See
Prerequisites
The following requirements have to be met:
•
VS 2005 with SP1 is required to debug the FlexPendant without any adaptations.
• Service Pack 1 or 2 for .NET Compact Framework 2.0 (.NET CF 2.0 SP2) is required for setting up and using the Visual Studio debugger on the FlexPendant device. It can be downloaded from http://www.microsoft.com/downloads.
•
To debug with VS 2008 (as well as VS 2005 without SP1) you must follow a procedure that will be presented on the RAB User Forum. The procedure will be different for each RobotWare release.
• If your PC is running under Windows Vista “Windows Mobile Device Center” needs to be installed in order to connect to the device.
Setting up the network
This illustration shows how to connect the FlexPendant, the Robot Controller and your PC in order to debug your application using the Visual Studio debugger.
286
9.1.4_3
The FlexPendant has a static IP address 192.168.126.10. Your PC IP address must be one on the 126 subnet, i.e. 192.168.126.x (not 1 or 255).
Note that this setup is completely independent of the LAN and Service ports. You are plugging the TPU cable from the RC into the switch, a cable from the switch to the RC, and a cable from your PC to the switch.
A connection over the LAN port is optional, but useful, as you may need to use RSO or FTP at the same time. To use both connections, your PC requires two NICs.
Continues on next page
3HAC028083-001 Revision: D
8 Debugging and troubleshooting
8.1.3. Debugging the FlexPendant device
Continued
Debugging procedure
Follow these steps to set up and attach the Visual Studio 2005 SP1debugger to the
FlexPendant device:
Step Action
1
2
On the Tools menu in Visual Studio 2005 click Options.
In the Options dialog expand the Device Tools node and select Devices. Select
Windows CE 5.0 Device as shown below.
3
4
9.1.4_6
Note! If your FlexPendant version is SxTpu1 the option Windows CE 5.0 Device is not available. Instead you should select Pocket PC 2003 Device.
When the right device has been selected click Properties and then Configure.
Apply the settings shown in the picture.
9.1.4_7
3HAC028083-001 Revision: D
Continues on next page
287
8 Debugging and troubleshooting
8.1.3. Debugging the FlexPendant device
Continued
Step Action
5 On the Debug/Tools menu in Visual Studio click Attach To Process. In the dialog select Smart Device for Transport and click the Browse button to specify platform and device. Then click Connect.
6
7
8
9.1.4_8
In the Available Processes list select taf.exe. Click Attach.
Set a break point in your source code.
On the FlexPendant, press a button of your application or something else that will make program execution hit the breakpoint.
NOTE!
If your PC is NOT using XP with VS 2005 SP1 you need to find information on how to attach the VS debugger for your specific environment on the RAB User Forum.
RAB User Forum
The User Forum of ABB’s RobotStudio Community has a section dedicated to Robot
Application Builder. Here beginners as well as experts discuss code and solutions online. This is also where you find RAB releases for free download and any information that the
development or support team want to share with you. See
288 3HAC028083-001 Revision: D
8 Debugging and troubleshooting
8.1.4. Troubleshooting FlexPendant applications
8.1.4. Troubleshooting FlexPendant applications
Overview
If you encounter problems when running your application there are a few things you should do before contacting your service organization. The following steps represent a rough guideline:
Action
1 Is it possible to start your application? If not see
FlexPendant application does not start on page 289
.
2 Have you checked the RAB Release Notes? Many questions will find an answer in the
Release Notes of the specific release. These are available on the RW DVD and at the
Software Download Site.
3 Have you tried to pinpoint the problem by debugging the FlexPendant? If not see
Debugging the FlexPendant device on page 286
for information about how to do it.
4 Have you tried to get debug printouts? See
for further information.
5 Is the problem FlexPendant hangings? Make sure you use
Invoke
when modifying the
user interface due to a robot controller event. See
GUI and controller event threads in conflict on page 68
When a hanging occurs attach the Visual Studio debugger to the FlexPendant. On the
Debug menu, point at Windows and select Threads. Examine the threads to discover any deadlocks.
TIP!
If you still have not found a solution to your problem, take a look at the User Forum of
RobotStudio Community, which includes a forum dedicated to discussion and chat on Robot
Application Builder topics. See
RobotStudio Community on page 17
FlexPendant application does not start
If you are unable to start your application the table below suggests possible scenarios.
Problem
The proxy assembly (*.gtpu.dll) is not built.
Possible solution
Correct any parameter error in the TpsView
FlexPendant TpsView attribute on page 54
3HAC028083-001 Revision: D
Continues on next page
289
8 Debugging and troubleshooting
8.1.4. Troubleshooting FlexPendant applications
Continued
Problem Possible solution
The ABB Compliance Tool complains it cannot find the C# compiler.
The application does not appear in the
ABB menu.
It happens that the installation of Visual Studio does not set the path to the C# compiler properly.
The C# compiler is necessary for running the ABB
Compliance Tool.
Confirm that the C# compiler is available by starting a command window and run “CSC.EXE”.
If the result is similar to this the path is properly set:
C:\>csc.exe
Microsoft (R) Visual C# .NET Compiler version
7.10.3052.4
for Microsoft (R) .NET Framework version
1.1.4322Copyright (C) Microsoft Corporation
2001-2002. All rights reserved.
fatal error CS2008: No inputs specified
If not, find CSC.EXE and copy its path to the
Properties dialog of your Visual Studio project.
Also add the path to the system PATH environment variables.For Windows 2000 Pro and
Windows XP find the dialog for this at:Control
Panel -> System -> Advanced ->Environment
Variables -> System variables-> Add new. Add the path to the directory where the C# compiler is kept. Notice that a semicolon separates the path items.Verify in the command window afterwards that the CSC.EXE runs.
Make sure the robot system has the FlexPendant
Interface option.
Null reference exception or “Can’t find
object” when tapping the application icon in the ABB menu.
Make sure all arguments in the TpsView attribute are appropriate. See
FlexPendant TpsView attribute on page 54
The bitmap constructor fails when the real FlexPendant tries to load your images, in the virtual environment this does not happen.
Change your images if they use more than 256 colors. The operating system of the first generation FlexPendant device (SxTPU1) only supports 256 colors.
The Virtual FlexPendant process remains alive.
If you forget to dispose an object that has a COM reference, such as the Controller object or a
Signal, the Virtual FlexPendant process might stay alive. Go through the application and make sure that you dispose of all objects that have a
Dispose method.
Important support information
If you cannot solve the problem on your own, make sure that before taking contact with a support organization this information is available:
•
Written description of the problem.
• Application source code.
•
System error logs.
• A backup of the system.
•
Description of work-around if such exists.
290
Continues on next page
3HAC028083-001 Revision: D
8 Debugging and troubleshooting
8.1.4. Troubleshooting FlexPendant applications
Continued
TIP!
Even better than the complete application is a small repro program, which exposes your problem.
3HAC028083-001 Revision: D 291
8 Debugging and troubleshooting
8.2.1. Debugging
8.2 PC - Debugging and troubleshooting
8.2.1. Debugging
Introduction
Using the Visual Studio debugger for a PC SDK application presents no difference compared to standard .NET development. Debugging can be done using the virtual IRC5 in
RobotStudio or a real controller.
Exception error codes
Some exceptions that may appear during development have error codes associated with them.
The error codes may help you correct the problem.
Code
0x80040401
0x80040402
0xC0040401
0xC0040402
0xC0040403
0xC0040404
0xC0040405
0xC0040406
0xC0040408
0xC0040409
0xC0040410
0xC0040411
0xC0040412
0xC0040413
0xC0040414
0xC0040415
0xC0040416
0xC0040417
0xC0040418
0xC0040601
Description
The requested poll level could not be met, poll level low is used.
The requested poll level could not be met, poll level medium is used.
No connection with controller.
Error connecting to controller.
No response from controller.
Message queue full. (Should only happen if asynchronous calls are made.)
Waiting for a resource.
The message sent is too large to handle.
A string does not contain characters exclusively from a supported encoding, e.g. ISO-8859-1 (ISO-Latin1).
The resource can not be released since it is in use.
The client is already logged on as a controller user.
The controller was not present in NetScan.
The NetScanID is no longer in use. Controller removed from list.
The client id is not associated with a controller user. Returned only by methods that need to check this before sending request to controller. Otherwise, see 0xC004840F.
The RW version is later than the installed RobAPI. A newer
RobAPI needs to be installed. Returned by RobHelperFactory.
The major and minor part of the RW version is known, but the revision is later and not fully compatible. A newer RobAPI needs to be installed. Code returned by RobHelperFactory.
The RW version is no longer supported. Code returned by Rob-
HelperFactory.
The helper type is not supported by the RW. Helper might be obsolete or for later RW versions, or the helper may not be supported by a BootLevel controller. Code returned by Rob-
HelperFactory.
System id and network id mismatch, they do not identify the same controller.
Call was made by other client than the one that made the
Connect() call.
292
Continues on next page
3HAC028083-001 Revision: D
0xC0040703
0xC0040704
0xC0040705
0xC0048401
0xC0048402
0xC0048403
0xC0048404
0xC0048405
0xC0048406
0xC0048407
0xC0048408
0xC0048409
0xC004840A
0xC004840B
0xC004840C
0xC004840D
0xC004840F
0xC0048410
0xC0048411
0xC0048412
0xC0048413
0xC0048414
0xC0048415
Code
0xC0040602
0xC0040603
0xC0040604
0xC0040605
0xC0040606
0xC0040607
0xC0040608
0xC0040609
0xC0040701
0xC0040702
3HAC028083-001 Revision: D
8 Debugging and troubleshooting
8.2.1. Debugging
Continued
Description
File not found on the local file system. Can be that file, directory or device does not exist.
File not found on the remote file system. Can be that file, directory or device does not exist.
Error when accessing/creating file on the local file system.
Error when accessing/creating file on the remote file system.
The path or filename is too long or otherwise bad for the
VxWorks file system.
The file transfer was interrupted. When transferring to remote system, the cause may be that the remote device is full.
The local device is full.
Client already has a connection and can not make a new connection until the present one is disconnected.
One or more files in the release directory is corrupt and cannot be used when launching a VC.
One or more files in the system directory is corrupt and cannot be used when launching a VC.
A VC for this system has already been started; only one VC per system is allowed.
Could not warm start VC since it must be cold started first.
The requested operation failed since VC ownership is not held or could not be obtained.
Out of memory.
Not yet implemented.
The service is not supported in this version of the controller.
Operation not allowed on active system.
The data requested does not exist.
The directory does not contain all required data to complete the operation.
Operation rejected by the controller safety access restriction mechanism.
The resource is not held by caller.
An argument specified by the client is not valid for this type of operation.
Mismatch in controller id between backup and current system.
Mismatch in key id, i.e. options, languages etc. between backup and current system.
Mismatch in robot type between backup and current system.
Client not allowed to log on as local user.
The client is not logged on as a controller user.
The requested resource is already held by caller
The max number of the requested resources has been reached.
No request active for the given user.
Operation/request timed out on controller.
No local user is logged on.
The operation was not allowed for the given user.
Continues on next page
293
8 Debugging and troubleshooting
8.2.1. Debugging
Continued
Code
0xC0048416
0xC0048417
0xC0048418
0xC0048419
0xC004841A
0xC004841B
0xC004841C
294
0xC004841D
0xC004841E
0xC004841F
0xC0048420
0xC004900A
0xC004900B
0xC004900C
0xC004900D
0xC004900E
0xC004900F
0xC0049010
0xC0049011
0xC0049012
0xC0049013
0xC0049014
0xC0048421
0xC0048422
0xC0048423
0xC0049000
0xC0049001
0xC0049002
0xC0049003
0xC0049004
0xC0049005
0xC0049006
0xC0049007
0xC0049008
0xC0049009
Description
The URL used to initialize the helper does not resolve to a valid object.
The amount of data is too large to fulfill the request.
Controller is busy. Try again later.
The request was denied.
Requested resource is held by someone else.
Requested feature is disabled.
The operation is not allowed in current operation mode. For example, a remote user may not be allowed to perform the operation in manual mode.
The user does not have required mastership for the operation.
Operation not allowed while backup in progress.
Operation not allowed when tasks are in synchronized state.
Operation not allowed when task is not active in task selection panel.
Mismatch in controller id between backup and current system.
Mismatch in controller id between backup and current.
Invalid client id.
RAPID symbol was not found.
The given source position is illegal for the operation.
The given file was not recognized as a program file, e.g. the
XML semantics may be incorrect.
Ambiguous module name.
The RAPID program name is not set.
Module is read protected.
Module is write protected.
Operation is illegal in current execution state.
Operation is illegal in current task state.
The robot is not on path and is unable to restart. Regain to or clear path.
Operation is illegal at current execution level.
Operation can not be performed without destroying the current execution context.
The RAPID heap memory is full.
Operation not allowed due to syntax error(s).
Operation not allowed due to semantic error(s).
Given routine is not a legal entry point. Possible reasons are: routine is a function, or routine has parameters.
Illegal to move PCP to given place.
Max number of rob targets exceeded.
Object is not mod possible. Possible reasons are: object is a variable, object is a parameter, object is an array.
Operation not allowed with displacement active.
The robot is not on path and is unable to restart. Regain to path.
Clear is not allowed.
Continues on next page
3HAC028083-001 Revision: D
Code
0xC0049015
0xC004A000
0xC004A001
0xC004A002
0xC004A003
0xC004A004
0xC004A005
0xC004A006
0xC004A007
0xC004A008
0xC004A009
0xC004A00B
0xC004A00C
0xC004A200
8 Debugging and troubleshooting
8.2.1. Debugging
Continued
Description
Previously planned path remains. Choose to either consume the path, which means the initial movement might be in an unexpected direction, or to clear the path and move directly to next target.
General file handling error.
The device is full.
Wrong disk. Change disk and try again.
The device is not ready.
Invalid path.
Not a valid device.
Unable to create directory.
The directory does not exist.
The directory already exists.
The directory contains data.
Unable to create file.
File not found or could not be opened for reading.
Disable of unit not allowed at trustlevel 0.
3HAC028083-001 Revision: D 295
8 Debugging and troubleshooting
8.2.2. Troubleshooting
8.2.2. Troubleshooting
Overview
If you encounter problems with your PC SDK application follow these steps before contacting ABB support.
Action
1 See if your problem is in the checklist of the next section.
2 Many questions will find an answer in the Release Notes of the specific RAB release.
The document is available on the RW DVD and on the Software Download Site.
3 Pinpoint the problem by debugging your code so that a precise problem description can be provided.
4 See the User Forum of ABB’s RobotStudio Community, which includes a forum dedicated to discussion and chat on Robot Application Builder topics.
TIP!
At www.abb.com/roboticssoftware there is a link to the RobotStudio Community.
Checklist
•
Cannot connect to controllers? Make sure the system on the controller has the
RobotWare option PC Interface. This applies to both virtual and real controllers.
• Is the problem GUI hangings? Make sure you use
Invoke
when modifying the user
interface due to a robot controller event. See
GUI and controller event threads in conflict on page 68
and
•
Is the problem related to netscan? If NetworkScanner.Scan does not find the robot controller during netscan you should try to increase the time allowed for scanning.
Increase the networks canner delay time in an app.config file as explained in
Application configuration file on page 43
or add the time directly in the code like this:
NetworkScanner aScanner = new NetworkScanner(); aScanner.Scan();
System.Threading.Thread.Sleep(4000);aScanner.Scan();
• Do you get “Invalid Client ID” when trying to do a read operation toward the robot controller? If so, the reason is probably that you have forgotten to log on to the controller. To be able to write to RAPID data or to the configuration database, for example, you also need to require mastership. For further information see
•
If you are working with a previous version of RAB (earlier than 5.10) you might run into problems related to licence verification? If you get the run-time error “A valid
license cannot be granted for the type ABB.Robotics.Controllers.Licenses.PCSdk.
Contact the manufacturer of the component for more information“ when accessing the
NetworkScanner
and the
Controller
classes you need to add a licx file to the project. See
for further information.
296
Continues on next page
3HAC028083-001 Revision: D
8 Debugging and troubleshooting
8.2.2. Troubleshooting
Continued
Important support information
If you cannot solve the problem on your own, make sure this information is available when taking contact with ABB’s support organization:
• Written description of the problem.
•
Application source code.
• System error logs.
•
A backup of the system.
• Description of work-around if such exists.
TIP!
Even better than the complete application is a small repro program, which exposes your problem.
3HAC028083-001 Revision: D 297
8 Debugging and troubleshooting
8.2.2. Troubleshooting
298 3HAC028083-001 Revision: D
Download
Advertisement
Key features
Develop custom operator interfaces
FlexPendant SDK
PC SDK
Visual Studio integration
.NET programming
Virtual IRC5
Frequently asked questions
Robot Application Builder (RAB) is a software tool, which enables programmers to develop customized operator interfaces for the IRC5 robot controller.
The supported operating systems are Microsoft Windows XP + SP2 or Windows Vista + SP1.
The supported versions are Visual Studio 2005 and Visual Studio 2008.
The supported programming languages are C# and Visual Basic.NET for FlexPendant applications. For PC applications, any of the .NET languages should work, however, ABB support is only offered for Visual Basic and C#.