Spare robot controller
A spare robot controller for replacing any one of a plurality of initial robot controllers configured to control operation of respective industrial robots includes a key storage storing a plurality of shared keys and a secure storage. The spare robot controller is configured to decrypt, using one of the shared keys, an encrypted backup copy of the initial robot controller to be replaced, and to store resulting data in the secure storage. In embodiments, the is configured to extract data from the secure storage during operation and to encrypt the extracted data, using a selected one of the shared keys, for storage as a backup copy in a backup storage available to all of the initial robot controllers.
1 . A method of maintaining an industrial robot that has an initial robot controller which is configured to control operation of the industrial robot, the method comprising:
providing a spare robot controller for said industrial robot;
during a pre-programming phase, supplying a plurality of shared keys (K 10 , K 20 , K 30 ) to the spare robot controller;
enabling loading of a backup copy ({C} K 10 , {C} K 20 , {C} K 30 ) of the initial robot controller encrypted with one of the plurality of shared keys into the spare robot controller from a backup storage available to a plurality of initial robot controllers;
causing the spare robot controller to decrypt the loaded backup copy by sequentially trying the plurality of shared keys and store resulting data (C) in a secure storage of the spare robot controller to configure the spare robot controller with a system configuration of the initial robot controller; and
deploying the spare robot controller to the industrial robot by replacing the initial robot controller with the spare robot controller and connecting the spare robot controller to said industrial robot.
2 . The method of claim 1 , wherein at least one the shared keys has been shared with the initial robot controller.
3 . The method of claim 2 , wherein the encrypted backup copy is loaded from a backup storage.
4 . The method of claim 2 , wherein the shared keys are supplied to the spare robot controller prior to the loading of the encrypted backup copy.
5 . The method of claim 1 , wherein the encrypted backup copy is loaded from a backup storage.
6 . The method of claim 5 , wherein the backup storage is available to one or more further robot controllers.
7 . The method of claim 6 , wherein the backup storage comprises at least one backup copy encrypted using another one of the plurality of shared keys.
8 . The method of claim 1 , wherein the shared keys are supplied to the spare robot controller prior to the loading of the encrypted backup copy.
9 . The method of claim 8 , wherein the pre-programming phase is separate from an individualization phase including the loading of the encrypted backup copy.
10 . The method of claim 9 , wherein the pre-programming phase is performed by an owner of one of the plurality of shared keys.
11 . The method of claim 10 , wherein said owner is an owner of another one of the plurality of shared keys.
12 . The method of claim 10 , wherein said owner is a system administrator.
13 . The method of claim 1 , wherein the secure storage of the spare robot controller is an isolated trust domain.
14 . The method of claim 1 , wherein the backup copy includes one or more of:
a system configuration of the initial robot controller;
project-related data;
generic software;
data relating to past operation of the robot;
user settings.
15 . The method of claim 1 , wherein the secure storage is protected by an encryption key.
16 . The method of claim 1 , further comprising:
during operation of the industrial robot with the spare robot controller, extracting data from the secure storage and encrypting the extracted data using one of the shared keys; and
transmitting the encrypted data to the backup storage.
17 . The method of claim 1 , wherein:
each shared key corresponds to one of the plurality of initial robot controllers; and
the backup copy is enabled to be loaded from the backup storage available to another one or more of the plurality of initial robot controllers, which correspond to respective further shared keys.
18 . A configurable spare robot controller adapted to replace any one of a plurality of initial robot controllers configured to control operation of respective industrial robots, the spare robot controller comprising:
a key storage storing a plurality of shared keys (K 10 , K 20 , K 30 ) received during a pre-programming phase; and
a secure storage,
wherein the spare robot controller is configured to decrypt an encrypted backup copy ({C} K 10 , {C} K 20 , {C} K 30 ) of one of the initial robot controllers by sequentially trying the plurality of shared keys, and to store resulting data (C) in the secure storage to configure the spare robot controller with a system configuration of said one of the initial robot controllers;
wherein the spare robot controller is configured for deployment to the respective industrial robot associated with said one of the initial robot controllers via replacing said one of the initial robot controllers with the spare robot controller and connecting the spare robot controller to the respective industrial robot.
19 . The spare robot controller of claim 18 , further configured to extract data from the secure storage during operation and to encrypt the extracted data, using a selected one of the shared keys, for storage as a backup copy in a backup storage available to all of the initial robot controllers.