About creating controller applications
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.
PC SDK allows system integrators, third parties or end-users to add their own customized operator interfaces for the IRC5 or OmniCore controller. Such custom applications can be realized as independent PC applications, which communicate with the robot controller over a network. You can also use PC SDK to communicate with a virtual or real controller from a RobotStudio add-in.
For FlexPendant based applications please refer the FlexPendant SDK Application manual .
Important
Robot Web Services is the recommended solution for development that targets OmniCore controllers.
Note
Controller applications are platform dependent. You must choose to develop the application for either the PC platform or the FlexPendant.
Local vs Remote client
The difference between the two platforms is that a PC application is a remote client, whereas a FlexPendant application is a local client.
Remote clients do not have all the privileges of a local client. For example, both PC and FlexPendant applications can reset the program pointer and start RAPID execution, for example, but for a PC SDK application to do this there are certain restrictions. Mastership of the Rapid domain must be requested explicitly by the application programmer and the robot controller has to be in automatic operating mode.
An advantage of a remote client, on the other hand, is the possibility to monitor and access several robot controllers from one location. As for large applications the PC platform is also less limited than the FlexPendant as regards memory resources and process power.
Note
A minimum response time for a real controller should be expected to be in the order of 10-100 milliseconds, meaning that hard real time demands cannot be met on any platform. For more information, see Communication between PC and controller.
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.
PC SDK enables customized user interfaces for IRC5 and OmniCore. It is important to keep in mind, however, that PC SDK itself does not guarantee increased customer value. To achieve this, PC SDK 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.
.NET and Visual Studio
PC SDK uses Microsoft .NET and Microsoft Visual Studio. It is thus assumed that you know how to program Windows platforms using Visual Studio. Among programmers .NET distinguishes itself by the programming model provided by the Microsoft .NET Framework.
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. In 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 Microsoft Visual Studio and .NET, developing a customized operator view is rather straight-forward.
Considerable efforts have been made to allow controller application developers to start working without having to overcome a steep learning curve. To further speed up the development process, the virtual controller in RobotStudio can be used to test and debug controller applications.
Note
Some knowledge in Windows programming, object orientation and .NET is necessary to use PC SDK.
Robustness and performance
Developing an application using PC SDK involves issues related to performance and reliability that one needs to know about before getting started.
It is strongly advisable to read this manual to learn about specific PC SDK issues while moving to PC SDK development.
Note
We recommend you to read PC SDK Application manual and Release notes before you start coding.