1 Introduction. 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
1 Introduction
1 Introduction
Safety
3HAC028083-001 Revision: D 13
1 Introduction
1.1. About Robot Application Builder
1.1. About Robot Application Builder
Flexible user interfaces
Robots are usually delivered with a general operator interface. However, different processes require different operator handling and customers need flexible solutions, where the user interface is adapted to user specific needs.
Robot Application Builder (RAB) allows system integrators, third parties or end-users to add their own customized operator interfaces for the IRC5 controller. Such custom applications can either be added to the standard views of the FlexPendant or realized as independent PC applications, which communicate with the robot controller over a network.
To accommodate this, RAB includes the following two components:
• FlexPendant SDK
•
PC SDK
NOTE!
RAB applications are not platform independent. You must choose to develop the application for either the FlexPendant or the PC platform.
Ease-of-use on the factory floor
A well-designed user interface presents relevant information and functionality at the right time. In this respect, customized user interfaces are clearly very desirable to the end-user. As tailored solutions are easier to operate, they also optimize user’s investment in automation.
RAB is the tool enabling customized user interfaces for IRC5. It is important to keep in mind, however, that RAB itself does not guarantee increased customer value. To achieve this, RAB applications should be developed with care and with a heavy emphasis placed on ease-of-use.
Understanding end-users’ needs is in fact crucial to realizing the benefits of customized interfaces.
14
Continues on next page
3HAC028083-001 Revision: D
1 Introduction
1.1. About Robot Application Builder
Continued
.NET and Visual Studio
Robot Application Builder uses Microsoft .NET and Microsoft Visual Studio. It is thus assumed that the user knows how to program Windows platforms using Visual Studio.
Among programmers .NET distinguishes itself by the programming model provided by the
Microsoft .NET Framework. The programming model is very similar for the two run-time platforms supported by Robot Application Builder.
One feature is the programming language independence, leaving the choice to the developer to use any language provided by the integrated development environment Visual Studio. Most prefer C# or Visual Basic, which both offer safe and efficient development. For FlexPendant applications only these two languages are available. For PC applications any of the .NET languages should work, but ABB support is only offered for Visual Basic and C#.
For a Windows programmer familiar with Visual Studio and .NET, developing a customized operator view is rather straight-forward. RAB is fully integrated with Visual Studio, which means that a .NET programmer will recognize wizards for project setup and tools for visual design support and debug etc.
Considerable efforts have been made to allow RAB programmers to start working without having to overcome a steep learning curve. To further speed up the development process, the virtual IRC5 of RobotStudio can be used to test and debug RAB applications.
NOTE!
Some knowledge in Windows programming, object orientation and a .NET programming language is necessary to be able to use Robot Application Builder.
Robustness and performance
Do not underestimate the concern and effort required to achieve the quality and performance needed in industry.
Developing an application for the FlexPendant, a device with limited process and memory resources, can be quite demanding. Issues such as performance and memory management need to be addressed.
As for PC SDK applications as well, there are issues related to performance and reliability that you need to know about before getting started.
In short, even if you are an experienced Windows programmer, you are strongly recommended to read this manual to learn about specific RAB issues when moving to RAB development.
NOTE!
Take the time to study this manual along with the release notes, and avoiding rushing into coding.
3HAC028083-001 Revision: D 15
1 Introduction
1.2. Documentation and help
1.2. Documentation and help
Introduction
Robot Application Builder includes an extensive on-line help module, which comes with the installation of the product. After having installed RAB, by clicking Windows’ Start menu, then pointing at Programs > ABB Industrial IT > Robotics IT > Robot Application Builder
5.xx you will find:
• User’s Guide - Application manual - Robot Application Builder
•
FP SDK Reference
• PC SDK Reference
•
FP StyleGuide
User’s Guide
This user’s guide, Application manual - Robot Application Builder, is the recommended way to get started if you are new to RAB development. It explains how RAB works. It has code examples in C# and VB and provides hands-on exercises.
The user’s guide is provided in two formats, Html Help and PDF. Html is the recommended format for the PC screen and PDF is the best choice if you want printouts.
SDK Reference Help
The SDK Reference Help files should be used while programming.
Notice that the FlexPendant SDK and the PC SDK have separate help files:
• FP SDK Reference
•
PC SDK Reference
These make up the complete reference to the RAB class libraries. Method signatures are provided in C# and Visual Basic.
Please note that they are not integrated with the Visual Studio Help function. Pressing F1 when pointing at code, for example, will open the Visual Studio Programmer’s Reference or the .NET Framework Class Library for the specific language and topic. Many times this is what you want, but if your problem is RAB-related you need to open the appropriate SDK
Reference Help to find a solution.
NOTE!
You are recommended to keep the help files open while programming, as you will frequently need them for RAB-related issues.
FP StyleGuide
NOTE!
User’s Guide.PDF can be found in the installation directory, at \Program Files\ABB Industrial
IT\Robotics IT\Robot Application Builder 5.xx\.
16
Good usability is achieved when the program itself communicates possible actions and how to perform them. To encourage careful design of the visual appearance the FP StyleGuide is also part of the RAB installation. It is ABB Robotics’ best practices for visual design of the
FlexPendant user interface.
Continues on next page
3HAC028083-001 Revision: D
1 Introduction
1.2. Documentation and help
Continued
RobotStudio Community
In 2008 ABB Robotics launched a new site, RobotStudio Community, for its PC Software users. The Developer Section of RobotStudio Community has information and some videos about programming with the FlexPendant and PC SDKs. At Content Sharing there is a complete FlexPendant SDK application available for download. It is recommended for average users and for beginners.
ABB encourage open conversations and believe everyone has something to contribute. The
User Forum of RobotStudio Community has a section dedicated to Robot Application
Builder. Here beginners as well as experts discuss code and solutions online. If you are facing a coding problem the User Forum should be your first choice, as there is a good chance that someone will give you the help you need to proceed.
RobotStudio Community also provides the means to share code and videos. Your contribution will be appreciated. Working together is many times the key to success.
RobotStudio Community is also where you find RAB releases for free download.
TIP!
Try it out at www.abb.com/robotics > RobotStudio Community.
RAB Product Specification
The product specification for Robot Application Builder (3HAC025595-001) is available from RobotStudio Community and from ABB Library. It is updated for each new release.
MSDN
MSDN (Microsoft Developer Network) at www.msdn.com is a one of many sources of information for general programming issues related to .NET and Visual Studio.
3HAC028083-001 Revision: D 17
1 Introduction
1.3. Terminology
1.3. Terminology
About terms and acronyms
Some terms used in this manual are product specific and crucial for understanding. Moreover, acronyms, words formed from initial letters, are sometimes used instead of long terms. To avoid confusion, important terminology is clarified below.
Definitions
Term Definition
IRC5
Virtual IRC5
ABB’s new generation robot controller.
Virtual robot technology makes it possible to run a virtual IRC5 controller, virtual mechanical units and a virtual FlexPendant on the desktop. Included as freeware in ABB’s RobotStudio from
RAB 5.11.
FlexPendant ABB’s new generation hand held device, used with the IRC5 robot controller. It is developed with Microsoft’s latest technology for embedded systems, Windows CE and .NET
Compact Framework.
Device The FlexPendant is a “smart device” in the .NET vocabulary, i.e. a complete computer in itself with its own processor, operating system etc.
Robot Application Builder ABB software tool, which enables the development of custom operator interfaces for IRC5. Often referred to as RAB.
RAB programmer A programmer who uses RAB to develop custom applications.
RAB application
Controller Application
Programming Interface
Network socket
Microsoft Visual Studio
A custom application developed with Robot Application Builder.
The public class libraries of Robot Application Builder, which offer robot controller functionality. Also referred to as CAPI.
A communication end-point unique to a machine communicating on an Internet Protocol-based network.
The integrated development environment that developers work inside when using the .NET Framework.
Microsoft .NET Framework An integral Windows component supporting the building and running of applications.
.NET Compact Framework
(.NET CF)
Version of Microsoft's .NET framework providing the run-time environment for applications running on embedded devices, such as the FlexPendant. It includes a class library, which is almost a subset of the rich .NET framework for the desktop.
Common Language
Runtime
The core runtime engine in the .NET Framework for execution of managed code. Provides services such as cross-language integration, code access security, object lifetime management, and debugging and profiling support.
C# and Visual Basic.NET
.NET programming languages.
Windows CE managed code
The embedded operating system running on the FlexPendantdevice.
Code that is executed and managed by the Microsoft .NET
Framework’s common language runtime. All code produced by
Visual Studio executes as managed code.
18
Continues on next page
3HAC028083-001 Revision: D
Acronym
CAPI
CLR
GUI
MSDN
VS
RAB
SDK
VB
TAF
TCP/IP
Term
unmanaged code
JIT compiler
1 Introduction
1.3. Terminology
Continued
Definition
Code that is executed directly by the operating system, outside the .NET Framework. Unmanaged code must provide its own memory management, type checking, and security support, unlike managed code, which receives these services from the common language runtime. All code executing in the robot controller, as well as part of the code executing in the
FlexPendant is unmanaged.
When compiling managed code, the compiler translates the source code into Microsoft Intermediate Language (MSIL), which is a CPU-independent set of instructions. Before code can be executed, MSIL must be converted to CPU-specific code, usually by a just-in-time (JIT) compiler.
Definition
Controller Application Programming Interface
Common Language Runtime
Graphical User Interface
Microsoft Developer Network, source of information for .NET developers at: http://msdn2.microsoft.com/en-au/netframework/default.aspx
Visual Studio
Robot Application Builder
Software Development Kit
Visual Basic
Teach Pendant Application Framework, all applications using
the FlexPendant SDK must run as TAF clients. See
Application host framework on page 52
Transmission Control Protocol (TCP) and Internet Protocol (IP)
3HAC028083-001 Revision: D 19
1 Introduction
1.3. Terminology
20 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#.