ROBOT CONTROL
The robot controller facilitates easy and efficient addition of new functions through an external storage device with an archive file, addressing the inefficiency of traditional system software installation processes.
Patent Information
- Application Number
- DE102020214307
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-12-10
- Filing Date
- 2020-11-13
- Publication Date
- 2025-07-10
- Estimated Expiration
- 2040-11-13
AI Technical Summary
Existing robot controllers require lengthy processes to add new system software, necessitating deletion and reinstallation, which is inefficient and time-consuming.
A robot controller design that allows for easy addition of new functions using an external storage device with an archive file containing additional function files, including function definition, system software, and graphical user interface configurations, enabling selective addition and deletion of functions without re-installing the entire system software.
Enables rapid and efficient integration of new functions to robot controllers, reducing installation time and enhancing usability by allowing selective function addition and removal.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
The present invention relates to a robot controller.Conventionally, a robot controller uses system software for controlling a robot. The system software is stored in a storage unit such as a memory in the robot controller (for example, see Patent Document 1).See also Patent Documents 2-7.Patent Document 1: JP 2015-150 636 APatent Document 2: DE 38 55 958 T2Patent Document 3: EP 2 998 079 A2Patent Document 4: US 2018 / 0 095 467 A1Patent Document 5: U.S. Pat. No. 7,801,644 B2Patent Document 6: US 2006 / 0 150 188 A1Patent Document 7: US 6 029 168 AIn order to add a new function to existing system software for robot control, it is necessary to delete the existing system software and then add to the robot control the system software having the new function.However, in order to newly add system software, robot programs and calculated data such as setting data are separately stored in an external storage device or the like device, and then read again in a storage unit in the robot controller after the system software is added.In order for such system software to have a new function as described above, it takes a long time to install the entire system software and read the calculated data. Therefore, it is an object to provide a robot controller to which a new function can be added more easily.This object is achieved by the robot controller according to claims 1 and 8.With the present invention, it is possible to add a new function more easily. FIG. 1 is a block diagram showing a configuration of a robot controller; FIG. 2 is a view showing a configuration of an archive file; and FIG. 3 is a view showing a setting example of a GUI setting screen and an auxiliary device.An example of an embodiment of the present invention will now be described herein. A robot controller 1 is coupled to a robot 3 and performs various types of processing to control the robot 3.A teach pendant 2 represents a display and input device including, for example, a display and a hardware button. The teach pendant 2 is coupled to the robot controller 1. An operator operates the teach pendant 2 to execute calculation, correction, and registration of a robot program, for example, to set various types of parameters, run a teaching robot program, and perform manual operations for robot positioning.The robot 3 is coupled to the robot controller 1 and operates according to the control by the robot controller 1. an external storage device 4 represents a storage device connectable to the robot controller 1, such as a USB (Universal Serial Bus) memory or a CF (Compact Flash) card. The external storage device 4 stores, for example, an additional function file 41.An auxiliary device 5 represents hardware that adds a function such as a robot hand to the robot 3. The auxiliary device 5 is associated with the auxiliary function file 41 in the external storage device 4. The additional function file 41 and the additional device 5 are used to add a new function to the robot controller 1 and the robot 3.The robot controller 1 includes a control unit 11 and a storage unit 12. the control unit 11 represents a processor such as a CPU (Central Processing Unit) that executes programs stored in the storage unit 12 to serve as a function addition area 111, a screen addition area 112, a setting change area 113, and a deletion area 114.The storage unit 12 includes, for example, a ROM (Read Only Memory), a RAM (Random Access Memory), a nonvolatile memory, and a hard disk drive value to store various types of data.For example, system software used for controlling the robot 3 and system software used for image processing are stored in the ROM in the storage unit 12. A robot program according to an application used for teaching work contents to the robot and its related setting data are stored in the nonvolatile memory in the storage unit 12. The RAM in the storage unit 12 serves as a storage region used for temporarily storing data which the control unit 11 uses for various types of arithmetic processing.The storage unit 12 stores system software 121, a robot program 122, and an address table 123. The system software 121 represents system software used to control the robot 3. The robot program 122 represents a program that causes the robot 3 to execute various types of operations.The address table 123 contains a plurality of starting addresses (entry points) for auxiliary system software files, all of which are used to add a function to the system software 121 for the robot controller 1. An index value with respect to the address table may be used to acquire an entry point value. Since the auxiliary system software files to be added are all associated with a unique index value, the robot controller 1 can use one of the index values to invoke newly added system software. The additional function file 41 stored in the external storage device 4 contains files all used to add a function to the system software 121. The files form an archive file which is a single file containing a plurality of programs and a plurality of data files.The auxiliary function file 41 includes function definition information files 411, auxiliary system software files 412, operation screen configuration files 413, operation screen control files 414, application program command files 415, setting purpose data files 416, and command files 417.The function definition information files 411 contain all the definition information (name, version number, ID name, description of the function, for example). The function definition information files 411 are each registered as entries in an additional function database added to the storage unit 12. For example, the function addition section 111 in the control unit 11 causes the teach pendant 2 to display, for the robot controller 1, a list of functions to be added based on the data in the additional function database.The additional function file 41 further contains identification information for functions to be added. Therefore, the control unit 11 can discriminate an added function from other functions.The auxiliary system software files 412 each represent a file containing machine code that the control unit 11 in the robot controller 1 can execute. Note that the programs included in the system software 121 and the auxiliary system software files 412 all use position-independent code based on relative addressing. The relative addressing is referred to as a method of specifying an address having a relative distance from a certain address. Therefore, the robot controller 1 can load a program at a desired address into the storage unit 12 for execution.The operation screen configuration files 413 and the operation screen control files 414 represent files all used to add an operation screen to the teach pendant 2 for the robot controller 1. The operation screen configuration files 413 and the operation screen control files 414 are registered in a screen control database added in the storage unit 12.The application program command files 415 all represent a file used to add a new robot command. The setting purpose data files 416 all represent a file used to cause the robot controller 1 to change the settings for the robot 3. The command files 417 all represent a file containing commands that cause the robot controller 1 to perform various kinds of processing (for example, file operations and system setting operations).Next, controls by the control unit 11 will be described below. The function addition portion 111 adds a function to the system software 121 based on the additional function file 41 stored in the external storage device 4. for example, the function addition portion 111 may selectively add a function to the system software based on the additional function file 41. specifically, when the external storage device 4 is coupled to the robot controller 1, the function addition portion 111 causes the teach pendant 2 to display, to the robot controller 1, a list of additional functions based on the function definition information files 411.When selecting an additional function through an operation on the teach pendant 2, the function addition section 111 introduces the selected additional function from the additional function file 41 into the robot controller 1. The introduction of the additional function is carried out, for example, through such processing as described below. (a) The function addition section 111 stations one of the files included in the additional function file 41 into the RAM in the storage unit 12. (b) The function addition section 111 reads function information (for example, ID name and version number) from one of the corresponding function definition information files 411, and saves a region (function introduction region) used to store the additional function in the nonvolatile memory in the storage unit 12. The function addition portion 111 uses the ID name of the additional function as a name of the function insertion region. (c) The function addition portion 111 completely copies the file located in the storage unit 12 to the secured function insertion region and then deletes the located file. (d) The control unit 11 performs processing corresponding to each of the files included in the additional function file 41. (e) After the processing has been completely completed and the robot controller 1 is restarted, the robot controller 1 may perform the additional function.The screen addition portion 112 adds a new graphical user interface (GUI) screen to the system software 121 based on one of the operation screen configuration files 413 and an operation screen control file 414. For example, the screen addition section 112 adds the system software 121 to a new GUI screen used to operate the accessory device 5, based on the one of the operation screen configuration files 413 and the one of the operation screen control files 414. Therefore, a user can use the teach pendant 2 to operate the accessory 5.The setting change portion 113 changes system settings for the system software 121 based on each of the setting purpose data files 416 and each of the command files 417. For example, the setting change section 113 changes the system settings of the system software 121 related to the operations of the accessory device 5 based on each of the setting-purpose data files 416 and each of the command files 417.The deletion portion 114 selectively deletes a function added by the function addition portion 111. Specifically, when selecting a certain function from the list of the additional functions displayed on the teach pendant 2, the erasing section 114 erases the selected certain function.FIG. 3 is a view showing a setting example of a GUI setting screen and the auxiliary device 5. The example in FIG. 3 shows the GUI setting screen for DI / DO (Digital Input and Output) items used to control the auxiliary device 5.Index values are used to access the DI / DO points. The index values set by the GUI setting screen are internally set to divided variables in the nonvolatile memory and are stored in the nonvolatile memory. The divided variables are respectively associated with setting items and effectively become dynamic and prompt upon a setting change.The robot program 122, which causes input and output operations of the signals at the DI / DO points to take place, may refer to the divided variables each having the index values to access the DI / DO points.With the insertion of the index values (divided variables), the GUI setting screen and the robot programs are associated with each other via the index values.The robot program 122 associated with the GUI setting screen then sends a DI / DO control signal to the accessory device 5.According to the present embodiment, the robot controller 1 includes the storage unit 12 that stores the address table 123 that stores a plurality of start addresses for the additional system software files 412, all of which are used to add a function to the system software 121 for the robot controller 1, and the function addition portion 111 that adds a function to the system software 121 based on the additional function file 41 stored in the external storage device 4. the function addition portion 111 uses an index value with respect to the address table 123 to acquire one of the start addresses for the additional system software files 412. Programs contained in system software 121 and auxiliary system software files 412 all use position independent code based on relative addressing.Therefore, when installing the system software 121, the robot controller 1 can introduce a new additional function without re-installing the system software 121. Although a robot controller may use only menus, screens, and the like specified in advance, for example, the robot controller 1 according to the present embodiment may conventionally use menus, screens, and the like that are newly added.The auxiliary function file 41 constitutes an archive file which is a single file including a plurality of programs and a plurality of data files. Therefore, the robot controller 1 can preferably introduce a file having an additional function.The function addition portion 111 selectively adds a function to the system software 121 based on the additional function file 41. therefore, the user can appropriately introduce a necessary additional function into the robot controller 1.The additional function file 41 further contains identification information for functions to be added. Therefore, the robot controller 1 can distinguish an added function from other functions.The auxiliary function file 41 contains files that respectively configure new graphical user interface screens corresponding to the auxiliary system software files. The robot controller 1 further includes the screen adding section 112 that adds each of the new user interface graphic screens to the system software 121. Therefore, the robot controller 1 can add a new GUI screen corresponding to an additional function to the system software 121.The auxiliary function file 41 contains the setting purpose data files 416 and the command files 417, all of which are used to change system settings for the system software 121. The robot controller 1 further includes the setting change portion 113 that changes the system settings for the system software 121 based on each of the setting purpose data files 416 and each of the command files 417. Therefore, the robot controller 1 can preferably change the system settings for the system software 121 having a new additional function.The robot controller 1 further includes the deletion portion 114 that selectively deletes a function added by the function addition portion 111. Therefore, the robot controller 1 can preferably cancel an additional function unnecessary for the user.EXPLANATION OF REFERENCE NUMERALS1 Robot controller 2 Teach pendant 3 Robot 4 Storage device 5 Additional device 11 Control unit 12 Storage unit 41 Additional function file 111 Function addition area 112 Screen addition area 113 Setting change area 114 Deletion area
Claims
A robot controller (1) controlling a robot (2), the robot controller (1) comprising: a storage unit (12) storing an address table (123) including a plurality of start addresses for auxiliary system software files (412) all used to add a function to the system software (121) for the robot controller (1); and a function addition section (111) adding a function to the system software (121) based on an auxiliary function file (41) stored in an external storage device (4), wherein the function addition section (111) uses an index value with respect to the address table (123) to acquire one of the start addresses for the auxiliary system software files (412), Programs included in the system software (1) and the auxiliary system software files (412) all use a position independent code based on relative addressing, digital input and output (DI / DO) points are used to control the function to be added, index values are used to access the DI / DO points and the index values are internally set and stored to divided variables, and the divided variables are respectively associated with setting items and dynamically and promptly become effective upon setting change.The robot controller (1) according to claim 1, wherein the auxiliary function file (41) constitutes an archive file that is a single file including a plurality of programs and a plurality of data files.The robot controller (1) according to claim 1 or 2, wherein the function addition section (111) selectively adds a function to the system software (121) based on the additional function file (41).The robot controller (1) according to any one of claims 1 to 3, wherein the additional function file (41) contains identification information for information to be added.The robot controller (1) according to any one of claims 1 to 4, wherein the additional function file (41) includes files that respectively configure new user interface graphic screens corresponding to the additional system software files (412), and the robot controller (1) further comprises a screen addition area (112) that adds one of the new user interface graphic screens to the system software (121).The robot controller (1) according to any one of claims 1 to 5, wherein the additional function file (41) includes setting purpose setting files and command files all used to change system settings for the system software (121), and the robot controller further comprises a setting change area (113) that changes the system settings for the system software (121) based on the setting purpose setting files and the command files.The robot controller (1) according to any one of claims 1 to 6, further comprising a deletion area (114) that selectively deletes a function added by the function addition area (111).A robot controller (1) controlling a robot (2), the robot controller (1) comprising: a storage unit (12) storing an address table (123) including a plurality of start addresses for auxiliary system software files (412) all used to add a function to the system software (121) for the robot controller (1); and a function addition section (111) adding a function to the system software (121) based on an auxiliary function file (41) stored in an external storage device (4), wherein the function addition section (111) uses an index value with respect to the address table (123) to acquire one of the start addresses for the auxiliary system software files (412), Programs included in the system software (1) and the additional system software files (412) all use a position-independent code based on relative addressing, the storage unit (12) secures a divided variable area in accordance with a function added to the system software (121), the additional system software files (412) are assigned a unique index value with respect to the address table (123), and the additional function file (41) controls the function added to the system software (121) by the divided variable.
Citation Information
Patent Citations
REGULATIONS FOR ROBOTS
DE3855958T2
Image processing apparatus, robot system and method for processing an image
EP2998079A2
Robot system utilizing visual feedback
JP2015150636A
Method and apparatus for supporting soft real-time behavior
US20060150188A1
General purpose robotics operating system with unmanned and autonomous vehicle extensions
US20180095467A1