Control device

JP7652888B2Active Publication Date: 2025-03-27FANUC LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2023511005
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-03-29
Filing Date
2022-03-22
Publication Date
2025-03-27
Estimated Expiration
2042-03-22

AI Technical Summary

Benefits of technology

【0010】 センサの接続間違いの状態でロボットが稼働することを未然に防ぐことができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007652888000001
    Figure 0007652888000001
  • Figure 0007652888000002
    Figure 0007652888000002
  • Figure 0007652888000003
    Figure 0007652888000003
Patent Text Reader

Abstract

The present invention enables detection of mistaken setting of a pair of a robot and a sensor. This control device controls a robot in which a sensor is disposed, the control device comprising: a sensor coordinate storage unit for storing coordinate system information of a sensor coordinate system of the sensor that has been preset; a sensor setting storage unit for storing setting information for communication with the sensor; a sensor data receiving unit for receiving sensor data detected by the sensor on the basis of the setting information; an axis angle detection unit for detecting an angle of each of a plurality of axes included in the robot; a sensor value estimation unit for estimating a sensor value to be detected by the sensor by forward transformation of detected angles of the plurality of axes and by coordinate transformation of the sensor coordinate system; and an abnormal sensor value determination unit for comparing the value of the sensor data and the sensor value estimated by the sensor value estimation unit and determining that the sensor data receiving unit is receiving sensor data from a sensor of another robot if the difference between the value of the sensor data and the estimated sensor value exceeds a preset threshold value.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a control device. [Background technology]

[0002] Reducing vibration during robot operation to increase speed and improve trajectory accuracy directly leads to improved production efficiency and quality. Therefore, there is a demand to reduce the vibration and trajectory deviation that occurs when robots operate. To address this issue, a method has been proposed in which acceleration sensors are attached to locations where vibrations need to be eliminated or where a highly accurate trajectory needs to be achieved, and the acceleration sensors measure the vibrations during robot operation, and then learning control is performed to reduce the vibrations (see, for example, Patent Document 1). Furthermore, when sensors are connected by wires, the trouble of managing the sensor cables has led to the proposal of a method in which a wireless acceleration sensor is attached to the robot to suppress vibrations of the robot (see, for example, Patent Document 2). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2011-167817 A [Patent Document 2] JP 2011-161562 A Summary of the Invention [Problem to be solved by the invention]

[0004] When connecting to a wireless acceleration sensor installed on a robot to be controlled, a mistake may occur in pairing with a wireless acceleration sensor installed on another robot. If the measurement of sensor values ​​is continued while wirelessly connected to an incorrect wireless acceleration sensor, the robot may be controlled in an unexpected way.

[0005] Therefore, a function that notifies the user when a pairing error occurs is desired. [Means for solving the problem]

[0006] (1) One aspect of a control device disclosed herein is a control device for controlling a robot equipped with a sensor, the control device including: a sensor coordinate memory unit that stores coordinate system information regarding a preset sensor coordinate system of the sensor; a sensor setting memory unit that stores setting information regarding communication with the sensor; a sensor data receiving unit that receives sensor data detected by the sensor based on the setting information; an axis angle detection unit that detects an angle of each of a plurality of axes included in the robot; a sensor value estimation unit that estimates a sensor value detected by the sensor by forward transformation of the angle of each of the plurality of axes detected by the axis angle detection units and coordinate transformation of the sensor coordinate system; and a sensor value abnormality determination unit that compares a value of the sensor data with the sensor value estimated by the sensor value estimation unit, and determines that the sensor data receiving unit is receiving sensor data from a sensor equipped on another robot if a difference between the value of the sensor data and the estimated sensor value exceeds a preset threshold.

[0007] (2) One aspect of the control device disclosed herein is a control device for controlling a robot equipped with a sensor, and includes a sensor coordinate memory unit that stores coordinate system information regarding a preset sensor coordinate system of the sensor, a sensor setting memory unit that stores setting information regarding communication with the sensor, a sensor data receiving unit that receives sensor data detected by the sensor based on the setting information, a sensor physical quantity calculation unit that calculates a physical quantity from the sensor data, a respective shaft angle detection unit that detects an angle of each of a plurality of axes included in the robot, a sensor physical quantity estimation unit that estimates a physical quantity related to the sensor by forward transformation of the angle of each of the plurality of axes detected by the respective shaft angle detection units and coordinate transformation of the sensor coordinate system, and a sensor value anomaly determination unit that compares the physical quantity calculated from the sensor data with the physical quantity estimated by the sensor physical quantity estimation unit, and determines that the sensor data receiving unit is receiving sensor data from a sensor equipped with another robot if a difference between the calculated physical quantity and the estimated physical quantity exceeds a preset threshold.

[0008] (3) One aspect of the control device disclosed herein is a control device for controlling a controlled robot having a sensor disposed therein, and includes a sensor coordinate memory unit that stores coordinate system information regarding a preset sensor coordinate system of the sensor, a sensor data receiving unit that receives sensor data detected by a sensor disposed on each of a plurality of robots including the controlled robot, an axis angle detection unit that detects the angle of each of a plurality of axes included in the controlled robot, a sensor value estimation unit that estimates a sensor value detected by the sensor of the controlled robot by forward transformation of the angle of each of the plurality of axes detected by the axis angle detection units and coordinate transformation of the sensor coordinate system, and an appropriate sensor determination unit that compares the sensor data value of the sensor disposed on each of the plurality of robots with the sensor value estimated by the sensor value estimation unit, and determines that a sensor whose difference from the estimated sensor value exceeds a preset threshold is a sensor disposed on a robot other than the controlled robot.

[0009] (4) One aspect of the control device disclosed herein is a control device for controlling a control target robot in which a sensor is arranged, and includes a sensor coordinate memory unit that stores coordinate system information regarding a preset sensor coordinate system of the sensor, a sensor data receiving unit that receives sensor data detected by a sensor arranged on each of a plurality of robots including the control target robot, a sensor physical quantity calculation unit that calculates a physical quantity from the sensor data of the sensor arranged on each of the plurality of robots, a respective axis angle detection unit that detects an angle of each of a plurality of axes included in the control target robot, a sensor physical quantity estimation unit that estimates a physical quantity related to the sensor of the control target robot by forward transformation of the angle of each of the plurality of axes detected by the respective axis angle detection units and coordinate transformation of the sensor coordinate system, and an appropriate sensor determination unit that compares the physical quantity calculated from the sensor data of the sensor arranged on each of the plurality of robots with the physical quantity estimated by the sensor physical quantity estimation unit, and determines that a sensor of sensor data whose difference from the estimated physical quantity exceeds a predetermined threshold is a sensor arranged on a robot other than the control target robot. Effect of the Invention

[0010] This makes it possible to prevent the robot from operating with the sensor connected incorrectly. [Brief description of the drawings]

[0011] [Figure 1] FIG. 2 is a functional block diagram showing an example of the functional configuration of the robot system according to the first embodiment. [Figure 2A] FIG. 2 is a diagram for explaining a coordinate system in the robot of FIG. [Figure 2B] FIG. 2 is a diagram for explaining a coordinate system in the robot of FIG. [Diagram 3] FIG. 2 is a functional block diagram showing an example of a functional configuration of a control device. [Figure 4A] FIG. 13 illustrates an example of a comparison between sensor data values ​​and estimated sensor values. [Figure 4B]FIG. 13 illustrates an example of a comparison between sensor data values ​​and estimated sensor values. [Diagram 5] 4 is a flowchart illustrating an abnormality determination process of the control device. [Figure 6] FIG. 11 is a functional block diagram showing an example of the functional configuration of a robot system according to a second embodiment. [Figure 7] FIG. 2 is a functional block diagram showing an example of a functional configuration of a control device. [Figure 8] 4 is a flowchart illustrating an abnormality determination process of the control device. [Figure 9] FIG. 13 is a functional block diagram showing an example of the functional configuration of a robot system according to a third embodiment. [Figure 10] FIG. 2 is a functional block diagram showing an example of a functional configuration of a control device. [Figure 11] FIG. 13 illustrates an example of a comparison between sensor data values ​​and estimated sensor values. [Figure 12] 5 is a flowchart illustrating an appropriate sensor determination process performed by the control device. [Figure 13] FIG. 2 is a functional block diagram showing an example of a functional configuration of a control device. [Figure 14] 5 is a flowchart illustrating an appropriate sensor determination process performed by the control device. [Figure 15] FIG. 2 is a functional block diagram showing an example of a functional configuration of the robot system. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0012] First Embodiment The configuration of this embodiment will be described in detail with reference to the drawings. Here, a wireless acceleration sensor is used as an example of the sensor. The present invention is also applicable to sensors such as gyro sensors and inertial sensors, and to a smart device such as a smartphone including one or more sensors being used as a sensor.

[0013] FIG. 1 is a functional block diagram illustrating an example of the functional configuration of a robot system according to the first embodiment. As shown in FIG. 1, the robot system 1 includes n robots 10(1) to 10(n), n controllers 20(1) to 20(n), and a wireless receiver 30 (n is an integer of 2 or more). The robots 10(1)-10(n), the control devices 20(1)-20(n), and the wireless receiver 30 may be directly connected to one another via a connection interface (not shown). The robots 10(1)-10(n) and the control devices 20(1)-20(n) may be connected to one another via a network such as a local area network (LAN). In this case, the robots 10(1)-10(n) and the control devices 20(1)-20(n) may include a communication unit (not shown) for communicating with one another via such a connection. In the following, when there is no need to distinguish between the robots 10(1) to 10(n), they will be collectively referred to as "robot 10." When there is no need to distinguish between the control devices 20(1) to 20(n), they will be collectively referred to as "control devices 20."

[0014] <Robot 10> 1, the robot 10 is a six-axis vertical articulated robot having six joint axes 11(1)-11(6) and an arm unit 12 connected by each of the joint axes 11(1)-11(6). The robot 10 drives movable members such as the arm unit 12 by driving each of servo motors (not shown) arranged in each of the joint axes 11(1)-11(6) based on a drive command from the control device 20. An end effector 13 such as a welding gun, a gripping hand, or a laser irradiation device is attached to the tip of a movable member of the robot 10, for example, the tip of the joint axis 11(6). A wireless acceleration sensor 101 is installed on the end effector 13.

[0015] Although the robot 10 is a six-axis vertical articulated robot, it may be a vertical articulated robot other than a six-axis robot, or may be a horizontal articulated robot, a parallel link robot, or the like.

[0016] 2A and 2B are diagrams for explaining a coordinate system in the robot 10 of FIG. 2A, the robot 10 has a robot reference point 14 and a robot coordinate system Σr centered on the robot reference point 14. In addition, the wireless acceleration sensor 101 has a sensor reference point 111 and a sensor coordinate system Σs centered on the sensor reference point 111. As shown in FIG. 2B, the robot 10 has a robot end point 15 and a mechanical interface coordinate system Σm centered on the robot end point 15 at the flange at the end of the joint shaft 11(6). The positional relationship between the mechanical interface coordinate system Σm and the sensor coordinate system Σs can be defined in the mechanical interface coordinate system Σm using six elements: a vector (x, y, z) from the origin of the mechanical interface coordinate system Σm to the origin of the sensor coordinate system Σs, and rotation angles (w, p, r) that define the direction of the sensor coordinate system Σs by rotation around each axis of the mechanical interface coordinate system Σm. The vector (x, y, z) and rotation angles (w, p, r) can be obtained using a known method (for example, JP 2017-74647 A). As a result, the control device 20, which will be described later, can calculate the distance from the robot tip point 15 of the joint axis 11 (6) to the origin of the sensor coordinate system Σs using the vector (x, y, z) and rotation angle (w, p, r), and thereby calculate the position of the wireless acceleration sensor 101 in the robot coordinate system Σr from the coordinates and angles described in the robot's operation program.

[0017] The wireless acceleration sensor 101 is, for example, a three-dimensional acceleration sensor that periodically detects acceleration for each X, Y and Z axis of a sensor coordinate system Σs at the tip of a movable member in association with the movement of the robot 10 at a predetermined sampling time. The wireless acceleration sensor 101 has a clock unit (not shown), and acquires time information output from the clock unit as the detected time each time acceleration is detected. The wireless acceleration sensor 101 also wirelessly transmits a sensor signal including the detected acceleration for each axis and time information to the wireless receiver 30. Although the wireless acceleration sensor 101 wirelessly transmits a sensor signal including the detected acceleration and time information to the wireless receiver 30, it may be connected to the control device 20 via a wire and transmit the sensor signal to the control device 20. Furthermore, the wireless acceleration sensor 101 is not limited to an acceleration sensor, and may be a gyro sensor, an inertial sensor, a force sensor, a laser tracker, a vision sensor, a motion capture sensor, etc. Furthermore, the wireless acceleration sensor 101 may be a smart device such as a smartphone that includes multiple sensors such as acceleration sensors.

[0018] <Radio Receiver 30> The wireless receiver 30 is, for example, a WiFi (registered trademark) router or the like, receives a sensor signal from the wireless acceleration sensor 101, and outputs the received sensor signal to the control device 20. The communication standard for wireless communication is not limited to WiFi (registered trademark), but may be one that uses radio waves such as Bluetooth (registered trademark), or one that uses infrared communication. It is preferable that the wireless receiver 30 uses a module that complies with the communication standard.

[0019] <Control device 20> The control device 20 is a control device (also called a "robot controller") that performs learning control using the acceleration detected by the wireless acceleration sensor 101, and outputs drive commands to the robot 10 based on an operation program to control the operation of the robot 10 so as to reduce vibrations generated in the arm portion 12 of the robot 10 during operation. FIG. 3 is a functional block diagram showing an example of the functional configuration of the control device 20. As shown in FIG. 3, the control device 20 according to this embodiment is connected to a teaching pendant 25 and includes a sensor coordinate storage unit 201, a sensor setting storage unit 202, an axis angle detection unit 203, a sensor value estimation unit 204, a sensor data receiving unit 205, and a sensor value abnormality determination unit 206. The teaching pendant 25 also includes a user notification unit 251 and a user input unit 252. The control device 20 includes a processor (not shown) such as a central processing unit (CPU) to realize the operation of the functional blocks in Fig. 3. The control device 20 also includes auxiliary storage devices (not shown) such as a read only memory (ROM) or hard disk drive (HDD) that stores various control programs, and a main storage device (not shown) such as a random access memory (RAM) for storing data temporarily required for the processor to execute a program.

[0020] In the control device 20, the arithmetic processing unit reads the OS and application software from the auxiliary storage device, and performs arithmetic processing based on the OS and application software while expanding the read OS and application software in the main storage device. Based on the results of this calculation, the control device 20 controls each piece of hardware. In this way, the processing by the functional blocks in Fig. 3 is realized. In other words, the control device 20 can be realized by the cooperation of hardware and software.

[0021] The sensor coordinate storage unit 201 is, for example, a memory such as a RAM, and stores coordinate system information regarding the sensor coordinate system Σs of the wireless acceleration sensor 101 that is preset based on input operations by the user via the user input unit 252 of the teaching operation panel 25 described later. Specifically, the sensor coordinate memory unit 201 stores, as coordinate system information, the vector (x, y, z) from the origin of the mechanical interface coordinate system Σm to the origin of the sensor coordinate system Σs, which is necessary to calculate the position and orientation of the wireless acceleration sensor 101, and the rotation angles (w, p, r) that define the direction of the sensor coordinate system Σs by rotation around each axis of the mechanical interface coordinate system Σm.

[0022] The sensor setting storage unit 202 is, for example, a memory such as a RAM, and stores setting information regarding communication with the wireless acceleration sensor 101 based on an input operation by a user via a user input unit 252 of the teaching pendant 25 described later. Specifically, the sensor setting storage unit 202 stores, as setting information, the communication address (for example, an IP address or a MAC address) of the wireless acceleration sensor 101 to be communicated with.

[0023] The shaft angle detection unit 203 detects the angle of each of the joint shafts 11(1) to 11(6) by using, for example, an encoder (not shown) or the like arranged on each of the joint shafts 11(1) to 11(6) of the robot 10. The shaft angle detection unit 203 outputs the detected angles of the joint shafts 11(1) to 11(6) to the sensor value estimation unit 204.

[0024] The sensor value estimation unit 204 estimates the sensor value detected by the wireless acceleration sensor 101 at the position where the wireless acceleration sensor 101 is attached by performing forward transformation of the angles of each of the joint axes 11(1) to 11(6) detected by the each axis angle detection unit 203 and coordinate transformation of the sensor coordinate system Σs. Specifically, the sensor value estimation unit 204 calculates the position and orientation of the mechanical interface coordinate system Σm in the robot coordinate system Σr by performing forward transformation using the angles of each of the joint axes 11(1) to 11(6) detected by the axis angle detection unit 203. The sensor value estimation unit 204 calculates the position at which the wireless acceleration sensor 101 is attached in the robot coordinate system Σr by using coordinate system information of the vector (x, y, z) and rotation angle (w, p, r) stored in the sensor coordinate storage unit 201. The sensor value estimation unit 204 calculates the acceleration of each axis in the robot coordinate system Σr by second-order differentiation of the time-series data of the calculated position with respect to time, and converts and estimates the calculated acceleration into a sensor value of the acceleration of each axis in the sensor coordinate system Σs via the mechanical interface coordinate system Σm. Then, when the robot 10 is in operation, the sensor value estimation unit 204 subtracts the gravitational acceleration component from the sensor value of the acceleration in the estimated sensor coordinate system Σs, and outputs the subtracted sensor value to the sensor value abnormality determination unit 206. When the robot 10 is stationary, the sensor value estimation unit 204 may output the sensor value of the estimated acceleration in the sensor coordinate system Σs to the sensor value abnormality determination unit 206 without subtracting the gravitational acceleration.

[0025] The sensor data receiving unit 205 receives sensor data detected by the wireless acceleration sensor 101 based on the setting information stored in the sensor setting storage unit 202 . Specifically, the sensor data receiving unit 205 pairs with the wireless acceleration sensor 101 based on the communication address of the setting information stored in the sensor setting storage unit 202. For example, the sensor data receiving unit 205 receives a sensor signal that includes the communication address of the paired wireless acceleration sensor 101 in the header of the sensor signal, among the sensor signals received via the wireless receiver 30. The sensor data receiving unit 205 outputs the acceleration of each axis of the sensor coordinate system Σs included in the received sensor signal to the sensor value abnormality determination unit 206 as sensor data. When outputting the sensor data to sensor value abnormality determination section 206, sensor data receiving section 205 may output the sensor data after removing noise using a low-pass filter (not shown).

[0026] The sensor value abnormality determination unit 206 compares the value of the sensor data from the sensor data receiving unit 205 with the sensor value estimated by the sensor value estimating unit 204 for each axis of the sensor coordinate system Σs. The sensor value abnormality determination unit 206 determines whether the maximum difference between the sensor data value for each axis and the estimated sensor value exceeds a preset threshold value (for example, "2 m / s 2 ", etc.), the sensor data receiving unit 205 determines that it is receiving sensor data from a wireless acceleration sensor 101 installed in another robot 10. The sensor value abnormality determining unit 206 outputs the determination result to a user notification unit 251 of the teaching pendant 25, which will be described later. 4A and 4B are diagrams showing an example of a comparison between a sensor data value and an estimated sensor value. Note that, for example, Fig. 4A shows a normal case where the difference between the sensor data value in the X-axis direction of the sensor coordinate system Σs during robot operation and the estimated sensor value is equal to or less than a threshold. Also, Fig. 4B shows an abnormal case where the difference between the sensor data value in the X-axis direction of the sensor coordinate system Σs during robot operation and the estimated sensor value exceeds a threshold. Although the sensor value abnormality determination unit 206 calculates the difference between the sensor data value and the estimated sensor value for each axis of the sensor coordinate system Σs and compares the calculated difference with a preset threshold, this is not limiting. For example, the sensor value abnormality determination unit 206 may calculate the difference between the magnitude of a vector that is the sensor data value for each axis of the sensor coordinate system Σs and the magnitude of a vector that is the estimated sensor value for each axis of the sensor coordinate system Σs, and compare the calculated difference with a threshold. Alternatively, using a predetermined function with the acceleration of each axis of the sensor coordinate system Σs as a variable, the sensor value abnormality determination unit 206 may calculate the difference between a value calculated by inputting the value of the sensor data of each axis of the sensor coordinate system Σs into the predetermined function and a value calculated by inputting the sensor value estimated on each axis of the sensor coordinate system Σs into the predetermined function, and compare the calculated difference with a threshold value.

[0027] Based on the determination result of sensor value abnormality determination section 206, user notification section 251 outputs an alert notifying that the value of the sensor data is abnormal. Specifically, when the value of the sensor data is abnormal, the user notification unit 251 displays an alert notifying the user of the abnormality on a display unit such as a liquid crystal display included in the teaching pendant 25 . The user notification unit 251 may output the setting information set in the sensor setting storage unit 202 and the value of the sensor data received by the sensor data receiving unit 205 together with the alert. This allows the user to check whether the setting information stored in the sensor setting storage unit 202 is incorrect, whether the wireless acceleration sensor 101 is broken, etc. If the setting information is incorrect, the user can reset the setting information to the correct information via a user input unit 252 of the teaching operation panel 25, which will be described later. Also, if the wireless acceleration sensor 101 is broken, the user can quickly deal with the abnormality in the sensor value by replacing it with a new wireless acceleration sensor 101. Although the user notification unit 251 is disposed in the teaching pendant 25, it may be disposed in the control device 20.

[0028] The user input unit 252 is, for example, an operation key or a touch panel arranged on the teaching pendant 25, and receives input from the user such as the setting of the sensor coordinate system Σs and the communication address of the wireless acceleration sensor 101. The user input unit 252 outputs the received input to the control device 20. Although the user input unit 252 is disposed on the teaching pendant 25, it may be disposed on the control device 20.

[0029] <Abnormality determination process of the control device 20> Next, the flow of the abnormality determination process of the control device 20 will be described with reference to FIG. 5 is a flowchart illustrating the abnormality determination process of the control device 20. The flow shown here is executed every time the sensor coordinate system Σs of the wireless acceleration sensor 101 is set by the user.

[0030] In step S1, in response to an input operation by the user, the user input unit 252 sets a vector (x, y, z) from the origin of the mechanical interface coordinate system Σm to the origin of the sensor coordinate system Σs of the wireless acceleration sensor 101, and rotation angles (w, p, r) that define the direction of the sensor coordinate system Σs by rotation around each axis of the mechanical interface coordinate system Σm, as coordinate system information, and stores them in the sensor coordinate storage unit 201. In addition, in response to an input operation by the user, the user input unit 252 sets the communication address of the wireless acceleration sensor 101 as setting information, and stores it in the sensor setting storage unit 202.

[0031] In step S2, when learning control begins, the wireless acceleration sensor 101 starts measuring the acceleration of each axis in the sensor coordinate system Σs, and the sensor data receiving unit 205 receives a sensor signal including the acceleration of each axis in the sensor coordinate system Σs measured via the wireless receiver 30, and acquires the received acceleration of each axis in the sensor coordinate system Σs as sensor data.

[0032] In step S3, the sensor value estimation unit 204 estimates the posture of the robot 10 obtained from a forward transformation of the angles of each of the joint axes 11(1) to 11(6) before the robot 10 moves (when the robot 10 is stationary) detected by the each axis angle detection unit 203, and the sensor value of each axis of the sensor coordinate system Σs at the position where the wireless acceleration sensor 101 is attached by coordinate transformation of the sensor coordinate system Σs. In step S3, it is preferable that the sensor value estimating unit 204 estimates the sensor value (gravitational acceleration) before the robot 10 moves (when the robot 10 is stationary), regardless of whether the operation program is being executed or not.

[0033] In step S4, the sensor value abnormality determination unit 206 determines whether the difference between the sensor data value acquired in step S2 and the sensor value estimated in step S3 is equal to or less than the threshold value on all axes of the sensor coordinate system Σs. If the difference between the sensor data value and the estimated sensor value is equal to or less than the threshold value on all axes of the sensor coordinate system Σs, the process proceeds to step S6. On the other hand, if the difference between the sensor data value and the estimated sensor value is not equal to or less than the threshold value on all axes of the sensor coordinate system Σs, the process proceeds to step S5.

[0034] In step S5, the sensor value abnormality determination unit 206 outputs the determination result of the abnormality of the sensor data to the user notification unit 251, and the user notification unit 251 displays an alert on the display unit (not shown) of the teaching pendant 25. Then, the process returns to step S1.

[0035] In step S6, the sensor value estimation unit 204 estimates the position and posture of the robot 10 obtained from a forward transformation of the angles of each of the joint axes 11(1) to 11(6) during the operation of the robot 10 detected by the each axis angle detection unit 203, and the sensor value of each axis of the sensor coordinate system Σs at the position where the wireless acceleration sensor 101 is attached by coordinate transformation of the sensor coordinate system Σs. The movement of the robot 10 may be a movement in an actual task, or may be a predetermined movement set in advance, such as a translation movement about the X-axis or Y-axis of the robot coordinate system Σr.

[0036] In step S7, the sensor value abnormality determination unit 206 determines whether the difference between the sensor data value acquired by the sensor data receiving unit 205 and the sensor value estimated in step S6 is equal to or less than the threshold value on all axes of the sensor coordinate system Σs. If the difference between the sensor data value and the estimated sensor value is equal to or less than the threshold value on all axes of the sensor coordinate system Σs, the process proceeds to step S8. On the other hand, if the difference between the sensor data value and the estimated sensor value is not equal to or less than the threshold value on all axes of the sensor coordinate system Σs, the process proceeds to step S5.

[0037] In step S8, if there is no abnormality in the sensor value, the control device 20 (sensor value abnormality determination unit 206) determines that the sensor value is normal, and continues to control the robot 10 according to the operation program based on learning control.

[0038] As described above, the control device 20 according to the first embodiment can prevent the robot from operating in a state where the wireless acceleration sensor 101 is connected incorrectly, by changing the settings of the communication address of the wireless acceleration sensor 101. Furthermore, the control device 20 detects abnormalities in the sensor data by comparing the sensor data values ​​with the estimated sensor values ​​before and while the robot 10 is in operation, and notifies the user of an alert of the detected abnormality. This allows the control device 20 to reduce unnecessary man-hours required to prevent continued control of the robot 10 with the wireless acceleration sensor 101 set incorrectly, and prevents unexpected control of the robot 10 (for example, motion that causes vibrations to radiate) due to incorrect settings of the wireless acceleration sensor 101. The first embodiment has been described above.

[0039] <Second embodiment> Next, a second embodiment will be described. In the first embodiment, the control device 20 estimates the position and posture of the robot 10 obtained from a forward transformation of the angles of the joint axes 11(1)-11(6) of the robot 10, and the sensor values ​​of each axis of the sensor coordinate system Σs at the position of the wireless acceleration sensor 101 by coordinate transformation of the sensor coordinate system Σs, and notifies the user of an abnormality in the sensor data (misconnection of the wireless acceleration sensor 101) by determining whether the difference between the value of the sensor data detected by the wireless acceleration sensor 101 and the estimated sensor value is equal to or smaller than a threshold value for all axes of the sensor coordinate system Σs. In contrast, in the second embodiment, the control device 20A estimates the movement distance and movement direction movement vector of the wireless acceleration sensor 101 in the robot coordinate system Σr as physical quantities based on the position and posture of the robot 10 obtained from a forward transformation of the angles of the joint axes 11(1) to 11(6) of the robot 10 and the coordinate transformation of the sensor coordinate system Σs, and calculates the movement distance and movement direction movement vector of the wireless acceleration sensor 101 in the robot coordinate system Σr as physical quantities from the sensor data received by the sensor data receiving unit, and determines whether all components of the difference between the movement vector of the physical quantity calculated from the sensor data and the movement vector of the estimated physical quantity are below threshold values, which is different from the first embodiment. As a result, the control device 20A according to the second embodiment can prevent the robot from operating in a state where the sensor is connected incorrectly. The second embodiment will be described below.

[0040] Fig. 6 is a functional block diagram showing an example of the functional configuration of a robot system according to the second embodiment. Elements having the same functions as those of the robot system 1 in Fig. 1 are denoted by the same reference numerals, and detailed description thereof will be omitted. As shown in FIG. 6, the robot system 1A includes n robots 10(1) to 10(n), n control devices 20A(1) to 20A(n), and a wireless receiver 30. Hereinafter, when there is no need to distinguish between the control devices 20A(1) to 20A(n), they will be collectively referred to as "control device 20A."

[0041] The robot 10, the wireless acceleration sensor 101, and the wireless receiver 30 have the same configurations as the robot 10, the wireless acceleration sensor 101, and the wireless receiver 30 of the first embodiment.

[0042] <Control device 20A> FIG. 7 is a functional block diagram showing an example of the functional configuration of the control device 20A. 7, the control device 20A is connected to a teaching pendant 25 and includes a sensor coordinate storage unit 201, a sensor setting storage unit 202, an axis angle detection unit 203, a sensor data receiving unit 205, a sensor value abnormality determination unit 206a, a sensor physical quantity estimation unit 207, and a sensor physical quantity calculation unit 208. The teaching pendant 25 also includes a user notification unit 251 and a user input unit 252. The sensor coordinate storage unit 201, the sensor setting storage unit 202, the axis angle detection unit 203, and the sensor data receiving unit 205 have functions equivalent to those of the sensor coordinate storage unit 201, the sensor setting storage unit 202, the axis angle detection unit 203, and the sensor data receiving unit 205 in the first embodiment. Furthermore, the user notification unit 251 and the user input unit 252 have the same functions as the user notification unit 251 and the user input unit 252 in the first embodiment.

[0043] The sensor physical quantity estimator 207 estimates a physical quantity related to the wireless acceleration sensor 101 by performing forward transformation of the angles of the joint axes 11(1) to 11(6) detected by the axis angle detector 203 and coordinate transformation of the sensor coordinate system Σs. Specifically, the sensor physical quantity estimation unit 207 calculates the position and orientation of the mechanical interface coordinate system Σm in the robot coordinate system Σr by, for example, performing a forward transformation using the angles of each of the joint axes 11(1) to 11(6) detected by the axis angle detection unit 203. The sensor physical quantity estimation unit 207 estimates, as a physical quantity, a movement vector consisting of the movement distance and movement direction of the position where the wireless acceleration sensor 101 is attached in the robot coordinate system Σr, using the vector (x, y, z) and rotation angle (w, p, r) stored in the sensor coordinate storage unit 201.

[0044] The sensor physical quantity calculation unit 208 calculates a physical quantity from the sensor data of the acceleration detected by the wireless acceleration sensor 101 . Specifically, the sensor physical quantity calculation unit 208 calculates the movement vector of the wireless acceleration sensor 101 in the robot coordinate system Σr as a physical quantity by performing a second-order integration over time of the acceleration time series data of the sensor data received from the sensor data receiving unit 205.

[0045] The sensor value abnormality determination unit 206a compares the movement vector, which is the physical quantity calculated by the sensor physical quantity calculation unit 208, with the movement vector, which is the physical quantity estimated by the sensor physical quantity estimation unit 207. When the maximum difference component among the XYZ components of the difference between the calculated movement vector and the estimated movement vector exceeds a preset threshold value (e.g., "1 mm"), the sensor value abnormality determination unit 206a determines that the sensor data receiving unit 205 is receiving sensor data from a wireless acceleration sensor 101 arranged on another robot 10. Then, the sensor value abnormality determination unit 206a outputs the determination result to the user notification unit 251 of the teaching pendant 25. In addition, the sensor value abnormality determination unit 206a may, for example, calculate the difference between the magnitude of the movement vector calculated by the sensor physical quantity calculation unit 208 and the magnitude of the movement vector estimated by the sensor physical quantity estimation unit 207, and compare the calculated difference with a threshold value.

[0046] <Abnormality determination process of the control device 20A> Next, the flow of the abnormality determination process of the control device 20A will be described with reference to FIG. 8 is a flowchart illustrating the abnormality determination process of the control device 20A. The flow shown here is executed every time the sensor coordinate system Σs of the wireless acceleration sensor 101 is set by the user. In the abnormality determination process shown in FIG. 8, the processes of steps S1, S2, and S8 are similar to the processes of steps S1, S2, and S8 in the first embodiment shown in FIG. 5, and therefore the description thereof will be omitted.

[0047] In step S3a, the sensor physical quantity estimation unit 207 estimates, as physical quantities, the posture of the robot 10 obtained from a forward transformation of the angles of each of the joint axes 11(1) to 11(6) before the robot 10 moves (when the robot 10 is stationary) detected by the each axis angle detection unit 203, and the movement vector of the position where the wireless acceleration sensor 101 is attached by coordinate transformation of the sensor coordinate system Σs.

[0048] In step S4a, the sensor value abnormality determination unit 206a determines whether or not all components of the difference between the physical quantity of the movement vector of the position of the wireless acceleration sensor 101 calculated by the sensor physical quantity calculation unit 208 using the sensor data acquired in step S2 and the physical quantity estimated in step S3a are equal to or less than a threshold. If all components of the difference are equal to or less than the threshold, the process proceeds to step S6a. On the other hand, if all components of the difference are not equal to or less than the threshold, the process proceeds to step S5a.

[0049] In step S5a, the sensor value abnormality determination unit 206a outputs the determination result of the abnormality of the physical quantity to the user notification unit 251, and the user notification unit 251 displays an alert on the display unit (not shown) of the teaching pendant 25. Then, the process returns to step S1.

[0050] In step S6a, the sensor physical quantity estimation unit 207 estimates, as physical quantities, the position and posture of the robot 10 obtained from a forward transformation of the angles of each of the joint axes 11(1) to 11(6) during the operation of the robot 10 detected by the each axis angle detection unit 203, and the movement vector of the position where the wireless acceleration sensor 101 is attached by coordinate transformation of the sensor coordinate system Σs.

[0051] In step S7a, sensor value abnormality determination unit 206a determines whether or not all components of the difference between the physical quantity of the movement vector calculated by sensor physical quantity calculation unit 208 and the physical quantity of the movement vector estimated in step S6a are equal to or less than a threshold. If all components of the difference are equal to or less than the threshold, the process proceeds to step S8. On the other hand, if all components of the difference are not equal to or less than the threshold, the process proceeds to step S5a.

[0052] As described above, the control device 20A according to the second embodiment can prevent the robot 10 from operating in a state where the wireless acceleration sensor 101 is incorrectly connected by changing the settings of the communication address of the wireless acceleration sensor 101. Furthermore, the control device 20A detects anomalies in the sensor data by comparing the physical quantities calculated from the sensor data with the estimated physical quantities before and during the operation of the robot 10, and notifies the user of an alert of the detected anomaly. This allows the control device 20A to reduce unnecessary man-hours required to prevent continued control of the robot 10 with the wireless acceleration sensor 101 set incorrectly, and prevents unexpected control of the robot 10 (for example, an operation that causes vibrations to radiate) due to an incorrect setting of the wireless acceleration sensor 101. The second embodiment has been described above.

[0053] <Third embodiment> Next, a control device 20B according to the third embodiment will be described. Note that the control device 20B according to the third embodiment differs from the control device 20B according to the first embodiment in the following points. (1) The control device 20B according to the third embodiment receives sensor data detected by the wireless acceleration sensor 101 disposed on each of the multiple robots 10 including the robot 10 to be controlled. (2) The control device 20B according to the third embodiment compares the sensor data value of the wireless acceleration sensor 101 of each robot 10 with the sensor value at the position of the wireless acceleration sensor 101 estimated by forward transformation of the angles of each axis of the robot 10 to be controlled and coordinate transformation of the sensor coordinate system, and determines that a sensor whose difference from the estimated value exceeds a preset threshold value is a sensor installed on a robot 10 other than the robot 10 to be controlled. As a result, the control device 20B according to the third embodiment can prevent the robot from operating in a state where the sensor is connected incorrectly. The third embodiment will be described below.

[0054] Fig. 9 is a functional block diagram showing an example of the functional configuration of a robot system according to the third embodiment. Elements having the same functions as those of the robot system 1 in Fig. 1 are denoted by the same reference numerals, and detailed description thereof will be omitted. As shown in FIG. 9, the robot system 1B includes n robots 10(1) to 10(n), n control devices 20B(1) to 20B(n), and a wireless receiver 30. Hereinafter, when there is no need to distinguish between the control devices 20B(1) to 20B(n), they will be collectively referred to as "control device 20B."

[0055] The robot 10, the wireless acceleration sensor 101, and the wireless receiver 30 have the same configurations as the robot 10, the wireless acceleration sensor 101, and the wireless receiver 30 of the first embodiment.

[0056] <Control device 20B> Fig. 10 is a functional block diagram showing an example of the functional configuration of the control device 20B(1). Note that, although Fig. 10 shows an example of the functional configuration of the control device 20B(1), the control devices 20B(2) to 20B(n) are similar to the control device 20B(1). 10, the control device 20B(1) is connected to a teaching pendant 25 and includes a sensor coordinate storage unit 201, a sensor setting storage unit 202, an axis angle detection unit 203, a sensor value estimation unit 204, a sensor data receiving unit 205b, and an appropriate sensor determination unit 209. The teaching pendant 25 also includes a user notification unit 251 and a user input unit 252. The sensor coordinate storage unit 201, the sensor setting storage unit 202, the axis angle detection unit 203, and the sensor value estimation unit 204 have functions equivalent to those of the sensor coordinate storage unit 201, the sensor setting storage unit 202, the axis angle detection unit 203, and the sensor value estimation unit 204 in the first embodiment. Furthermore, the user notification unit 251 and the user input unit 252 have the same functions as the user notification unit 251 and the user input unit 252 in the first embodiment.

[0057] The sensor data receiving unit 205b receives a sensor signal including acceleration detected by the wireless acceleration sensor 101 disposed in the robot 10(1) to be controlled, as well as a sensor signal including acceleration detected by the wireless acceleration sensor 101 disposed in each of the robots 10(2) to 10(n). That is, the wireless acceleration sensor 101 disposed in each robot 10 may transmit a sensor signal by, for example, multicast. In this case, the sensor data receiving unit 205b does not need to refer to the setting information in the sensor setting storage unit 202. The sensor data receiving unit 205b outputs the acceleration of each axis of the sensor coordinate system Σs contained in the received sensor signal of each wireless acceleration sensor 101 as sensor data to the appropriate sensor determination unit 209. When outputting the sensor data of each wireless acceleration sensor 101 to the appropriate sensor determination unit 209, the sensor data receiving unit 205b may remove noise using a low-pass filter (not shown) before outputting the sensor data.

[0058] The appropriate sensor determination unit 209 compares the sensor data values ​​of the wireless acceleration sensors 101 of the robots 10(1) to 10(n) received from the sensor data receiving unit 205b with the sensor values ​​estimated by the sensor value estimating unit 204 for each axis of the sensor coordinate system Σs. The appropriate sensor determination unit 209 determines whether the maximum difference among the differences for each axis between the sensor data values ​​of the wireless acceleration sensors 101 of the robots 10(1) to 10(n) and the estimated sensor values ​​is greater than or equal to a preset threshold value (for example, "2 m / s 2 ", etc.) is determined to be an inappropriate sensor installed on a robot 10 other than the robot 10(1) to be controlled. On the other hand, the appropriate sensor determination unit 209 determines whether the maximum difference is equal to or smaller than a preset threshold value (for example, “2 m / s 2", etc.) is determined to be an appropriate sensor installed on the robot 10(1) to be controlled. The appropriate sensor determination unit 209 outputs the determination result to the user notification unit 251 of the teaching operation panel 25. In this case, the user input unit 252 may set the communication address of the appropriate wireless acceleration sensor 101 as setting information in response to an input operation by the user based on the display of the user notification unit 251, and store it in the sensor setting storage unit 202. Fig. 11 is a diagram showing an example of a comparison between sensor data values ​​and estimated sensor values. Fig. 11 shows, for example, sensor data values ​​in the X-axis direction of a sensor coordinate system Σs detected by the wireless acceleration sensors 101 arranged on each of the robots 10(1) to 10(3) when the robots are in operation, and the estimated sensor values. Although the appropriate sensor determination unit 209 calculates the difference between the sensor data value and the estimated sensor value for each axis of the sensor coordinate system Σs and compares the calculated difference with a preset threshold, this is not limiting. For example, the appropriate sensor determination unit 209 may calculate the difference between the magnitude of a vector that is the sensor data value for each axis of the sensor coordinate system Σs and the magnitude of a vector that is the estimated sensor value for each axis of the sensor coordinate system Σs, and compare the calculated difference with a threshold. Alternatively, using a predetermined function with the acceleration of each axis of the sensor coordinate system Σs as a variable, the appropriate sensor determination unit 209 may calculate the difference between a value calculated by inputting the value of the sensor data of each axis of the sensor coordinate system Σs into the predetermined function and a value calculated by inputting the sensor value estimated on each axis of the sensor coordinate system Σs into the predetermined function, and compare the calculated difference with a threshold value.

[0059] <Proper Sensor Determination Process of the Control Device 20B> Next, the flow of the appropriate sensor determination process of the control device 20B will be described with reference to Fig. 12. Note that, although the appropriate sensor determination process of the control device 20B(1) will be described below, the process of the control devices 20B(2) to 20B(n) is similar to that of the control device 20B(1), and therefore the description will be omitted. 12 is a flowchart illustrating the appropriate sensor determination process of the control device 20B. The flow shown here is executed every time the sensor coordinate system Σs of the wireless acceleration sensor 101 is set by the user.

[0060] In step S11, in response to an input operation by the user, the user input unit 252 sets the vector (x, y, z) from the origin of the mechanical interface coordinate system Σm to the origin of the sensor coordinate system Σs of the wireless acceleration sensor 101, and the rotation angles (w, p, r) that define the direction of the sensor coordinate system Σs by rotation around each axis of the mechanical interface coordinate system Σm, as coordinate system information and stores them in the sensor coordinate memory unit 201.

[0061] In step S12, the wireless acceleration sensor 101 of each of the robots 10(1) to 10(n) starts measuring the acceleration of each axis of the sensor coordinate system Σs at the start of learning control, and the sensor data receiving unit 205b receives each of the sensor signals including the acceleration of each axis of the sensor coordinate system Σs measured by the wireless acceleration sensor 101 of each of the robots 10 including the robot 10(1) to be controlled via the wireless receiver 30, and obtains the acceleration of each axis of the sensor coordinate system Σs in each of the received sensor signals as sensor data.

[0062] In step S13, similar to step S3 in the first embodiment, the sensor value estimation unit 204 estimates the posture of the robot 10(1) to be controlled, which is determined by forward transformation of the angles of the joint axes 11(1) to 11(6) before the robot 10(1) to be controlled moves (when the robot 10(1) is stationary), detected by the each axis angle detection unit 203, and the sensor value of each axis of the sensor coordinate system Σs at the position where the wireless acceleration sensor 101 is attached, by coordinate transformation of the sensor coordinate system Σs. In step S13, regardless of whether the operation program is being executed or not, it is preferable that the sensor value estimation unit 204 estimates the sensor value (gravitational acceleration) before the robot 10(1) operates (when the robot 10(1) is stationary).

[0063] In step S14, the appropriate sensor determination unit 209 determines whether or not there is an appropriate wireless acceleration sensor 101 for which the difference between the sensor data value of the wireless acceleration sensor 101 of each robot 10 acquired in step S12 and the sensor value estimated in step S13 is equal to or less than a threshold value for all axes of the sensor coordinate system Σs. If there is an appropriate wireless acceleration sensor 101, the process proceeds to step S16. On the other hand, if there is no appropriate wireless acceleration sensor 101, the process proceeds to step S15.

[0064] In step S15, the appropriate sensor determination unit 209 outputs a determination result that there is no appropriate wireless acceleration sensor 101 to the user notification unit 251, and the user notification unit 251 displays an alert on a display unit (not shown) of the teaching operation panel 25. Then, the process returns to step S11.

[0065] In step S16, the sensor value estimation unit 204 estimates the position and posture of the robot 10(1) obtained from a forward transformation of the angles of each of the joint axes 11(1) to 11(6) during the movement of the robot 10(1) detected by the each axis angle detection unit 203, and the sensor value of each axis of the sensor coordinate system Σs at the position where the wireless acceleration sensor 101 is attached, by coordinate transformation of the sensor coordinate system Σs. The movement of the robot 10(1) may be a movement in an actual task, or may be a predetermined movement set in advance, such as a translation movement about the X-axis or Y-axis of the robot coordinate system Σr.

[0066] In step S17, the appropriate sensor determination unit 209 determines whether or not there is an appropriate wireless acceleration sensor 101 such that the difference between the sensor data value of the wireless acceleration sensor 101 of each robot 10, including the robot 10(1) to be controlled, acquired by the sensor data receiving unit 205b and the sensor value estimated in step S16 is equal to or less than the threshold value for all axes of the sensor coordinate system Σs. If there is an appropriate wireless acceleration sensor 101, the process proceeds to step S18. On the other hand, if there is no appropriate wireless acceleration sensor 101, the process proceeds to step S15.

[0067] In step S18, the user input unit 252 sets the communication address of the appropriate wireless acceleration sensor 101 as setting information in response to an input operation by the user, stores the setting information in the sensor setting storage unit 202, and pairs with the appropriate wireless acceleration sensor 101. Then, the control device 20B(1) continues to control the robot 10 by the operation program based on the learning control.

[0068] As described above, the control device 20B according to the third embodiment pairs with a proper wireless acceleration sensor 101, in which the difference between the sensor data value of the wireless acceleration sensor 101 installed on each robot 10 and the estimated sensor value is below a threshold value in all axes of the sensor coordinate system Σs, i.e., the wireless acceleration sensor 101 installed on the robot 10 to be controlled, thereby preventing the robot from operating with the wireless acceleration sensor 101 connected incorrectly and allowing the connection settings to be switched arbitrarily. Furthermore, the control device 20B compares the sensor data values ​​of the wireless acceleration sensors 101 arranged on each robot 10 with the estimated sensor values ​​before and while the robot 10 is in operation to determine whether or not there is a proper wireless acceleration sensor 101, and issues an alert to the user if there is no proper wireless acceleration sensor 101. This allows the control device 20B to reduce unnecessary man-hours required to prevent continued control of the robot 10 with an inappropriate wireless acceleration sensor 101 set, and prevents unexpected control of the robot 10 (for example, motion that causes vibrations to radiate) due to incorrect settings of the wireless acceleration sensor 101. The third embodiment has been described above.

[0069] <Fourth embodiment> Next, a fourth embodiment will be described. Note that a control device 20B according to the fourth embodiment differs from the first embodiment in the following points. (1) The control device 20B according to the fourth embodiment receives sensor data detected by the wireless acceleration sensor 101 disposed on each of the multiple robots 10 including the robot 10 to be controlled. (2) The control device 20B according to the fourth embodiment compares a physical quantity calculated from the sensor data of the wireless acceleration sensor 101 of each robot 10 with a physical quantity estimated by forward transformation of the angles of each axis of the robot 10 to be controlled and coordinate transformation of the sensor coordinate system, and determines that a sensor whose difference with the estimated physical quantity exceeds a preset threshold is a sensor installed on a robot 10 other than the robot 10 to be controlled. As a result, the control device 20B according to the fourth embodiment can prevent the robot from operating in a state where the sensor is connected incorrectly. The fourth embodiment will be described below.

[0070] The robot system according to the fourth embodiment is similar to the robot system 1B in FIG. 9, and elements having similar functions to those of the robot system 1B are denoted by the same reference numerals and detailed description thereof will be omitted.

[0071] The robot 10, the wireless acceleration sensor 101, and the wireless receiver 30 have the same configurations as the robot 10, the wireless acceleration sensor 101, and the wireless receiver 30 of the third embodiment.

[0072] <Control device 20B> Fig. 13 is a functional block diagram showing an example of the functional configuration of the control device 20B(1). Note that, although Fig. 13 shows an example of the functional configuration of the control device 20B(1), the control devices 20B(2) to 20B(n) are similar to the control device 20B(1). 13, the control device 20B(1) is connected to a teaching pendant 25 and includes a sensor coordinate storage unit 201, a sensor setting storage unit 202, an axis angle detection unit 203, a sensor data receiving unit 205b, a sensor physical quantity estimation unit 207, a sensor physical quantity calculation unit 208b, and an appropriate sensor determination unit 209b. The teaching pendant 25 also includes a user notification unit 251 and a user input unit 252. The sensor coordinate storage unit 201, the sensor setting storage unit 202, and the shaft angle detection unit 203 have functions equivalent to those of the sensor coordinate storage unit 201, the sensor setting storage unit 202, and the shaft angle detection unit 203 in the first embodiment. Moreover, the sensor physical quantity estimating unit 207 has a function equivalent to that of the sensor physical quantity estimating unit 207 in the second embodiment. Moreover, the sensor data receiving unit 205b has the same function as the sensor data receiving unit 205b in the third embodiment. Furthermore, the user notification unit 251 and the user input unit 252 have the same functions as the user notification unit 251 and the user input unit 252 in the first embodiment.

[0073] The sensor physical quantity calculation unit 208b calculates a physical quantity from sensor data of acceleration detected by the wireless acceleration sensor 101 disposed on each robot 10 including the robot 10(1) to be controlled. Specifically, the sensor physical quantity calculation unit 208b calculates the acceleration time series data of the sensor data for each wireless acceleration sensor 101 in the robot coordinate system Σr by performing a second-order integration with respect to time of the acceleration time series data of the sensor data for each wireless acceleration sensor 101 received from the sensor data receiving unit 205b. every The movement vector is calculated as a physical quantity.

[0074] The appropriate sensor determination unit 209b compares the movement vector for each wireless acceleration sensor 101, which is a physical quantity calculated by the sensor physical quantity calculation unit 208b, with the movement vector, which is a physical quantity estimated by the sensor physical quantity estimation unit 207. The appropriate sensor determination unit 209b compares the X, Y, and Z components of the difference between the movement vector calculated for each wireless acceleration sensor 101 and the estimated movement vector. of The maximum difference component exceeds a preset threshold value (e.g., 1 mm). The movement vector was calculated The wireless acceleration sensor 101 in the sensor data is determined to be an inappropriate sensor installed on a robot 10 other than the robot 10(1) to be controlled. On the other hand, the appropriate sensor determination unit 209b determines that the wireless acceleration sensor 101 having sensor data in which the maximum difference component is within a preset threshold value (for example, "1 mm") is an appropriate sensor arranged on the robot 10(1) to be controlled. The appropriate sensor determination unit 209b outputs the determination result to the user notification unit 251 of the teaching operation panel 25. In this case, the user input unit 252 may set the communication address of the appropriate wireless acceleration sensor 101 as setting information in response to an input operation by the user based on the display of the user notification unit 251, and store it in the sensor setting storage unit 202.

[0075] <Proper Sensor Determination Process of the Control Device 20B> Next, the flow of the appropriate sensor determination process of the control device 20B will be described with reference to Fig. 14. Note that, although the appropriate sensor determination process of the control device 20B(1) will be described below, the process of the control devices 20B(2) to 20B(n) is similar to that of the control device 20B(1), and therefore the description will be omitted. 14 is a flowchart illustrating the appropriate sensor determination process of the control device 20B. The flow shown here is executed every time the sensor coordinate system Σs of the wireless acceleration sensor 101 is set by the user. In the proper sensor determination process shown in FIG. 14, the processes of steps S11, S12, S15, and S18 are similar to the processes of steps S11, S12, S15, and S18 in the third embodiment of FIG. 12, and therefore will not be described.

[0076] In step S13a, the sensor physical quantity estimation unit 207 estimates, as physical quantities, the posture of the robot 10(1) obtained from a forward transformation of the angles of each of the joint axes 11(1) to 11(6) before the robot 10(1) moves (when the robot 10(1) is stationary) detected by the each axis angle detection unit 203, and a movement vector of the position where the wireless acceleration sensor 101 is attached by coordinate transformation of the sensor coordinate system Σs.

[0077] In step S14a, the appropriate sensor determination unit 209b determines whether there is an appropriate wireless acceleration sensor 101 in which all components of the difference between the physical quantity of the movement vector of the position of each wireless acceleration sensor 101 calculated by the sensor physical quantity calculation unit 208b using the sensor data of the wireless acceleration sensors 101 of each robot 10 including the control target robot 10(1) acquired in step S12 and the physical quantity estimated in step S13a are equal to or smaller than a threshold value. If there is an appropriate wireless acceleration sensor 101, the process proceeds to step S16a. On the other hand, if there is no appropriate wireless acceleration sensor 101, the process proceeds to step S15.

[0078] In step S16a, the sensor physical quantity estimation unit 207 estimates, as physical quantities, the position and orientation of the robot 10(1) obtained from a forward transformation of the angles of each of the joint axes 11(1) to 11(6) during the movement of the robot 10(1) detected by the each axis angle detection unit 203, and a movement vector of the position where the wireless acceleration sensor 101 is attached by coordinate transformation of the sensor coordinate system Σs.

[0079] In step S17a, the appropriate sensor determination unit 209b determines whether or not there is an appropriate wireless acceleration sensor 101 in which all components of the difference between the physical quantity of the movement vector for each wireless acceleration sensor 101 calculated by the sensor physical quantity calculation unit 208b and the physical quantity of the movement vector estimated in step S16a are equal to or smaller than a threshold value. If there is an appropriate wireless acceleration sensor 101, the process proceeds to step S18. On the other hand, if there is no appropriate wireless acceleration sensor 101, the process proceeds to step S15.

[0080] As described above, the control device 20B according to the fourth embodiment pairs with an appropriate wireless acceleration sensor 101, in which the difference between the physical quantity calculated using the sensor data of the wireless acceleration sensor 101 arranged on each robot 10 and the estimated physical quantity is below a threshold for all components, i.e., with the wireless acceleration sensor 101 arranged on the robot 10 to be controlled. This makes it possible to prevent the robot 10 from operating with the wireless acceleration sensor 101 connected incorrectly, and allows the connection settings to be switched arbitrarily. Furthermore, the control device 20B determines whether or not there is a proper wireless acceleration sensor 101 by comparing the physical quantity calculated using the sensor data of the wireless acceleration sensor 101 arranged on each robot 10 with the estimated physical quantity before and while the robot 10 is in operation, and notifies the user of an alert if there is no proper wireless acceleration sensor 101. This allows the control device 20B to reduce unnecessary man-hours required to prevent continued control of the robot 10 with an inappropriate wireless acceleration sensor 101 set, and prevents unexpected control of the robot 10 (for example, motion that radiates vibrations, etc.) due to incorrect settings of the wireless acceleration sensor 101. The fourth embodiment has been described above.

[0081] Although the first to fourth embodiments have been described above, the control device 20 (20A, 20B) is not limited to the above-described embodiments, and includes modifications, improvements, etc. within the scope that can achieve the object.

[0082] <Variation 1> In the above-described first to fourth embodiments, the sensor is the wireless acceleration sensor 101, but is not limited thereto. For example, a gyro sensor may be disposed in the robot 10 as the sensor. In this case, the sensor value detected by the gyro sensor is the angular velocity. Meanwhile, the control device 20 may calculate the position and posture of the mechanical interface coordinate system Σm in the robot coordinate system Σr by performing forward transformation using the detected angles of each of the joint axes 11(1) to 11(6), and estimate the sensor value of the angular velocity from the posture change of the robot 10 at that time, or may estimate the physical quantity of the movement distance and direction (movement vector) of the position of the gyro sensor from the posture change of the robot 10.

[0083] Furthermore, an inertial sensor may be disposed as a sensor in the robot 10. In the case of an inertial sensor, the control device 20 can operate in the same manner as in the case of the wireless acceleration sensor 101 or the above-mentioned gyro sensor. Furthermore, as a sensor, a force sensor may be disposed in the robot 10. In this case, the control device 20 may estimate, by simulation, a physical quantity other than the movement vector, for example, a force vector of the magnitude and direction of a force detected by the force sensor from internal data of the robot.

[0084] Furthermore, a laser tracker may be disposed as a sensor in the robot 10. In this case, since the laser tracker can directly measure the movement trajectory, the control device 20 may estimate the movement trajectory (position) by a forward transformation using each axis angle of the robot internal data and a coordinate transformation of the sensor coordinate system Σs. Instead of the laser tracker, a motion capture sensor may be arranged on the robot 10. In this case, the control device 20 can operate in the same manner as in the case of the laser tracker.

[0085] Furthermore, a vision sensor may be disposed in the robot 10 as a sensor. For example, when a tool attached to the robot 10 moves on a plane, the vision sensor attached to the tool continuously captures images of the plane, and the control device 20 can calculate the physical quantity of the movement distance from the difference between the captured images. The control device 20 can also estimate the movement distance from the robot's internal data. In addition, a combination of two or more sensors, such as the wireless acceleration sensor 101 and the above-mentioned gyro sensor, may be placed on the robot 10, or a smart device such as a smartphone including one or more sensors, such as the wireless acceleration sensor 101 and a gyro sensor, may be placed on the robot 10 as a sensor.

[0086] <Variation 2> For example, in the first and second embodiments, in the robot systems 1 and 1A, the wireless acceleration sensor 101 disposed in each robot 10 communicates with the control device 20 and 20A via the wireless receiver 30, but this is not limiting. 15As shown in FIG. 1, the robot system 1 may have wireless acceleration sensors 101 and control devices 20 and 20A communicating with each other using wireless receivers 31(1)-31(n) that are arranged on the respective robots 10 and receive only sensor signals from the paired wireless acceleration sensors 101. Fig. 15 is a functional block diagram showing an example of the functional configuration of the robot system. Elements having the same functions as those of the robot system 1 in Fig. 1 are given the same reference numerals, and detailed description thereof will be omitted.

[0087] 15, the wireless acceleration sensor 101 installed in the robot 10(i) forms a pair with the paired wireless receiver 31(i) (i is 1 to n). In other words, when the wireless acceleration sensor 101 installed in the robot 10(i) is installed in another robot 10(j), the control device 20(j) needs to switch the connection to the wireless receiver 31(i) (j ≠ i and j = 1 to n). In other words, since the wireless acceleration sensor 101 and the wireless receiver 31 are paired for each individual sensor, there is no need for the user to configure the wireless acceleration sensor 101, i.e., the sensor setting memory unit 202. The control devices 20, 20A can easily switch the pair between the robot 10 and the wireless acceleration sensor 101 by simply changing the connection with the wireless receiver 31.

[0088] In the first to fourth embodiments, each function included in the control devices 20, 20A, and 20B can be realized by hardware, software, or a combination of these. Here, being realized by software means being realized by a computer reading and executing a program.

[0089] The program can be stored and provided to the computer using various types of non-transitory computer readable media. The non-transitory computer readable media includes various types of tangible storage media. Examples of the non-transitory computer readable media include magnetic recording media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / Ws, and semiconductor memories (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, and RAMs). The program may also be provided to the computer by various types of transitory computer readable media. Examples of the transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. The transitory computer readable media can provide the program to the computer via wired communication paths such as electric wires and optical fibers, or wireless communication paths.

[0090] In addition, the steps of writing a program to be recorded on a recording medium include not only processes that are performed chronologically according to the order, but also processes that are not necessarily performed chronologically but are executed in parallel or individually.

[0091] In other words, the control device of the present disclosure can take various forms having the following configurations.

[0092] (1) The control device 20 of the present disclosure is a control device for controlling a robot 10 in which a wireless acceleration sensor 101 is arranged, and includes a sensor coordinate memory unit 201 that stores coordinate system information relating to a sensor coordinate system Σs of the wireless acceleration sensor 101 that has been preset, a sensor setting memory unit 202 that stores setting information relating to communication with the wireless acceleration sensor 101, a sensor data receiving unit 205 that receives sensor data detected by the wireless acceleration sensor 101 based on the setting information, an axis angle detection unit 203 that detects the angles of each of a plurality of joint axes 11(1) to 11(6) included in the robot 10, and The robot 10 further includes a sensor value estimation unit 204 which estimates a sensor value detected by the wireless acceleration sensor 101 by forward transformation of the angles of each of the multiple joint axes 11(1) to 11(6) detected by the axis angle detection unit 203 and coordinate transformation of the sensor coordinate system Σs, and a sensor value abnormality determination unit 206 which compares the value of the sensor data with the sensor value estimated by the sensor value estimation unit 204 and determines that the sensor data receiving unit 205 is receiving sensor data from a wireless acceleration sensor 101 installed in another robot 10 if the difference between the value of the sensor data and the estimated sensor value exceeds a preset threshold. According to this control device 20, it is possible to prevent the robot 10 from operating in a state where the wireless acceleration sensor 101 is connected incorrectly.

[0093] (2) The control device 20A of the present disclosure is a control device for controlling a robot 10 in which a wireless acceleration sensor 101 is arranged, and includes a sensor coordinate memory unit 201 that stores coordinate system information related to a sensor coordinate system Σs of the wireless acceleration sensor 101 that has been preset, a sensor setting memory unit 202 that stores setting information related to communication with the wireless acceleration sensor 101, a sensor data receiving unit 205 that receives sensor data detected by the wireless acceleration sensor 101 based on the setting information, a sensor physical quantity calculation unit 208 that calculates a physical quantity from the sensor data, and a sensor physical quantity calculation unit 209 that detects the angles of each of the joint axes 11(1) to 11(6) included in the robot. a sensor physical quantity estimation unit 207 that estimates a physical quantity related to the wireless acceleration sensor 101 by forward transformation of the angles of each of the joint axes 11(1) to 11(6) detected by the each shaft angle detection unit 203 and coordinate transformation of the sensor coordinate system Σs; and a sensor value abnormality determination unit 206a that compares the physical quantity calculated from the sensor data with the physical quantity estimated by the sensor physical quantity estimation unit 207 and determines that the sensor data receiving unit 205 is receiving sensor data from a sensor installed in another robot if a difference between the calculated physical quantity and the estimated physical quantity exceeds a preset threshold. According to this control device 20A, it is possible to achieve the same effect as (1).

[0094] (3) The control device 20, 20A described in (1) or (2) may be provided with a user notification unit 251 that outputs an alert when the sensor value abnormality determination unit 206, 206a determines that the sensor data receiving unit 205 is receiving sensor data from a wireless acceleration sensor 101 installed on another robot 10. By doing so, the control device 20, 20A can notify the user of the incorrect connection of the wireless acceleration sensor 101.

[0095] (4) In the control device 20, 20A described in (3), the user notification unit 251 may output, together with the alert, the setting information set in the sensor setting memory unit 202 and the value of the sensor data received by the sensor data receiving unit 205. This allows the user to check whether the setting information stored in the sensor setting storage unit 202 is incorrect, whether the wireless acceleration sensor 101 is out of order, and so on.

[0096] (5) In the control device 20, 20A according to any one of (1) to (4), two or more sensors measuring different physical quantities may be disposed on the robot. By doing so, the control devices 20 and 20A can detect an abnormality in the sensor data with higher accuracy.

[0097] (6) In the control device 20, 20A described in any one of (1) to (4), a smart device including one or more sensors may be arranged on the robot 10 as a sensor. By doing so, the control devices 20 and 20A can achieve the same effect as (5).

[0098] (7) The control device 20B of the present disclosure is a control device for controlling a robot 10 to be controlled in which a wireless acceleration sensor 101 is arranged, and includes a sensor coordinate memory unit 201 for storing coordinate system information relating to a sensor coordinate system Σs of the wireless acceleration sensor 101 that has been set in advance, a sensor data receiving unit 205b for receiving sensor data detected by the wireless acceleration sensor 101 arranged in each of a plurality of robots 10 including the robot 10 to be controlled, a shaft angle detection unit 203 for detecting the angles of each of the joint axes 11(1) to 11(6) included in the robot 10 to be controlled, and a sensor data receiving unit 205c for receiving sensor data detected by the wireless acceleration sensor 101 arranged in each of the robots 10 to be controlled. The system further comprises a sensor value estimation unit 204 which estimates a sensor value detected by the wireless acceleration sensor 101 of the robot 10 to be controlled by performing a forward transformation of the angles of each of the joint axes 11(1) to 11(6) and a coordinate transformation of the sensor coordinate system Σs, and a proper sensor determination unit 209 which compares the sensor data values ​​of the wireless acceleration sensors 101 arranged on each of the multiple robots 10 with the sensor values ​​estimated by the sensor value estimation unit 204, and determines that the wireless acceleration sensor 101 whose sensor data differs from the estimated sensor value by a preset threshold value is a sensor arranged on a robot 10 other than the robot 10 to be controlled. According to this control device 20B, it is possible to achieve the same effect as (1).

[0099] (8) The control device 20B of the present disclosure is a control device for controlling a control target robot 10 in which a wireless acceleration sensor 101 is arranged, and includes a sensor coordinate memory unit 201 that stores coordinate system information relating to a sensor coordinate system Σs of the preset wireless acceleration sensor 101, a sensor data receiving unit 205b that receives sensor data detected by the wireless acceleration sensor 101 arranged in each of a plurality of robots 10 including the control target robot 10, a sensor physical quantity calculation unit 208b that calculates a physical quantity from the sensor data of the wireless acceleration sensor 101 arranged in each of the plurality of robots 10, and each axis calculation unit 206 that detects the angle of each of the joint axes 11(1) to 11(6) included in the control target robot 10. The system includes an angle detection unit 203, a sensor physical quantity estimation unit 207 which estimates a physical quantity related to the wireless acceleration sensor 101 of the robot 10 to be controlled by forward transformation of the angles of each of the joint axes 11(1) to 11(6) detected by the each axis angle detection unit 203 and coordinate transformation of the sensor coordinate system Σs, and an appropriate sensor determination unit 209b which compares the physical quantity calculated from the sensor data of the wireless acceleration sensors 101 arranged on each of the multiple robots 10 with the physical quantity estimated by the sensor physical quantity estimation unit 207, and determines that the wireless acceleration sensor 101 whose sensor data differs from the estimated physical quantity by a preset threshold value is a sensor arranged on a robot 10 other than the robot 10 to be controlled. According to this control device 20B, it is possible to achieve the same effect as (1). [Explanation of symbols]

[0100] 1, 1A, 1B Robot System 10(1)~10(n) Robot 20, 20A, 20B Control device 201 Sensor coordinate memory unit 202 Sensor setting memory unit 203 Each axis angle detection unit 204 Sensor value estimation unit 205, 205b Sensor data receiving unit 206, 206a Sensor value abnormality determination unit 207 Sensor physical quantity estimation unit 208, 208b Sensor physical quantity calculation unit 209, 209b Appropriate sensor determination unit 30, 31(1)~31(n) Radio receivers 101 Wireless acceleration sensor

Claims

1. A control device that is connected one-to-one to a robot having a wireless sensor disposed thereon and controls the robot, a sensor coordinate storage unit that stores coordinate system information relating to a preset sensor coordinate system of the wireless sensor; a sensor setting storage unit that stores setting information regarding wireless communication with the wireless sensor; a sensor data receiving unit that receives, via wireless communication, sensor data detected by the wireless sensor based on the setting information; a shaft angle detection unit for detecting an angle of each of a plurality of shafts included in the robot; a sensor value estimating unit that estimates a sensor value detected by the wireless sensor by performing a forward transformation of the angles of the plurality of axes detected by the each axis angle detecting unit and a coordinate transformation of the sensor coordinate system; a sensor value abnormality determination unit that compares a value of the sensor data with a sensor value estimated by the sensor value estimation unit, and determines that the sensor data receiving unit is receiving sensor data from a wireless sensor installed in another robot when a difference between the value of the sensor data and the estimated sensor value exceeds a preset threshold value; A control device comprising:

2. A control device that is connected one-to-one to a robot having a wireless sensor disposed thereon and controls the robot, a sensor coordinate storage unit that stores coordinate system information relating to a preset sensor coordinate system of the wireless sensor; a sensor setting storage unit that stores setting information regarding wireless communication with the wireless sensor; a sensor data receiving unit that receives, via wireless communication, sensor data detected by the wireless sensor based on the setting information; a sensor physical quantity calculation unit that calculates a physical quantity from the sensor data; a shaft angle detection unit for detecting an angle of each of a plurality of shafts included in the robot; a sensor physical quantity estimating unit that estimates a physical quantity related to the wireless sensor by forward transformation of the angles of the plurality of axes detected by the each axis angle detecting unit and by coordinate transformation of the sensor coordinate system; a sensor value anomaly determination unit that compares the physical quantity calculated from the sensor data with the physical quantity estimated by the sensor physical quantity estimation unit, and determines that the sensor data receiving unit is receiving sensor data from a wireless sensor installed in another robot when a difference between the calculated physical quantity and the estimated physical quantity exceeds a preset threshold value; A control device comprising:

3. 3. The control device according to claim 1, further comprising a user notification unit that outputs an alert when the sensor value abnormality determination unit determines that the sensor data receiving unit is receiving sensor data from a wireless sensor installed on another robot.

4. The control device according to claim 3 , wherein the user notification unit outputs, together with the alert, the setting information set in the sensor setting storage unit and the value of the sensor data received by the sensor data receiving unit.

5. The control device according to claim 1 , wherein two or more wireless sensors measuring different physical quantities are disposed on the robot.

6. The control device according to claim 1 , wherein a smart device including one or more wireless sensors is disposed on the robot as the wireless sensor.

7. A control device that is connected one-to-one to a control target robot having a wireless sensor disposed thereon and controls the robot, a sensor coordinate storage unit that stores coordinate system information relating to a preset sensor coordinate system of the wireless sensor; a sensor data receiving unit that receives, via wireless communication, sensor data detected by a wireless sensor disposed on each of a plurality of robots including the robot to be controlled; a shaft angle detection unit for detecting an angle of each of a plurality of shafts included in the robot to be controlled; a sensor value estimation unit that estimates a sensor value detected by the wireless sensor of the robot to be controlled by performing a forward transformation of the angles of the plurality of axes detected by the axis angle detection units and a coordinate transformation of the sensor coordinate system; a proper sensor determination unit that compares sensor data values ​​of the wireless sensors disposed on each of the plurality of robots with the sensor values ​​estimated by the sensor value estimation unit, and determines that a wireless sensor whose sensor data has a difference from the estimated sensor value that exceeds a preset threshold value is a wireless sensor disposed on a robot other than the robot to be controlled; A control device comprising:

8. A control device that is connected one-to-one to a control target robot having a wireless sensor disposed thereon and controls the robot, a sensor coordinate storage unit that stores coordinate system information relating to a preset sensor coordinate system of the wireless sensor; a sensor data receiving unit that receives, via wireless communication, sensor data detected by a wireless sensor disposed on each of a plurality of robots including the robot to be controlled; a sensor physical quantity calculation unit that calculates a physical quantity from each sensor data of a wireless sensor disposed on each of the plurality of robots; a shaft angle detection unit for detecting an angle of each of a plurality of shafts included in the robot to be controlled; a sensor physical quantity estimating unit that estimates a physical quantity related to the wireless sensor of the robot to be controlled by a forward transformation of the angles of each of the plurality of axes detected by the each axis angle detecting unit and a coordinate transformation of the sensor coordinate system; an appropriate sensor determination unit that compares the physical quantity calculated from each sensor data of a wireless sensor disposed on each of the plurality of robots with the physical quantity estimated by the sensor physical quantity estimation unit, and determines that a wireless sensor of sensor data from which a difference between the calculated physical quantity and the estimated physical quantity exceeds a preset threshold value is a wireless sensor disposed on a robot other than the robot to be controlled; A control device comprising:

Citation Information

Patent Citations

  • Wireless transmission device, vibration suppression control device of robot using the same and robot control device

    JP2011161562A

  • Robot having learning control function

    JP2011167817A

  • Robot system

    JP2011224727A

  • Vibration suppression control robot system

    JP2014014897A

  • Motor module system

    JP2017135961A