JP6601201B2 - Robot operation device and robot operation program - Google Patents

Robot operation device and robot operation program Download PDF

Info

Publication number
JP6601201B2
JP6601201B2 JP2015243152A JP2015243152A JP6601201B2 JP 6601201 B2 JP6601201 B2 JP 6601201B2 JP 2015243152 A JP2015243152 A JP 2015243152A JP 2015243152 A JP2015243152 A JP 2015243152A JP 6601201 B2 JP6601201 B2 JP 6601201B2
Authority
JP
Japan
Prior art keywords
drag
speed
robot
display
operating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015243152A
Other languages
Japanese (ja)
Other versions
JP2016175174A (en
Inventor
淳子 菅野
博太 當眞
Original Assignee
株式会社デンソーウェーブ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to JP2015056504 priority Critical
Priority to JP2015056504 priority
Application filed by 株式会社デンソーウェーブ filed Critical 株式会社デンソーウェーブ
Priority claimed from US15/075,876 external-priority patent/US20160274787A1/en
Publication of JP2016175174A publication Critical patent/JP2016175174A/en
Application granted granted Critical
Publication of JP6601201B2 publication Critical patent/JP6601201B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

  The present invention relates to a robot operation device used for manually operating a robot, and a robot operation program used for the robot operation device.
  For example, in an industrial robot system, a manual operation for manually operating a robot is possible. The manual operation is used, for example, when performing teaching work (teaching). In this case, the user manually operates the robot (referred to as manual operation or manual operation) using a teaching pendant connected to a controller that controls the robot.
  Many teaching pendants are equipped with touch panels that can be touched. In the teaching pendant equipped with a touch panel, the user performs a manual operation of the robot by performing an operation called a drag operation, that is, an operation of tracing the touch panel with a finger or a dedicated pen. There is something that can be done.
Japanese Patent Laid-Open No. 11-262883
  However, since the drag operation on the touch panel is an operation of tracing a flat touch panel with a user's finger or the like, there is no physical change such as pressing or tilting of the operation key when operating a mechanical operation key. Therefore, in the teaching pendant that performs a drag operation on the touch panel, the user is less likely to obtain an operation sensation than the one that operates a mechanical operation key, and it is difficult to perform an intuitive operation.
  The present invention has been made in view of the above circumstances, and an object of the present invention is to perform a manual operation of a robot by inputting a drag operation to a touch panel, thereby enabling an intuitive operation and improving user operability. An object of the present invention is to provide a robot operation device that can be used, and a robot operation program used for the robot operation device.
(Claim 1)
The robot operation device according to claim 1, wherein a touch panel that receives input of a touch operation and a drag operation from a user, an operation detection unit that can detect the touch operation and the drag operation on the touch panel, and an operation detection unit An operation command generation unit configured to generate an operation command for operating the robot based on the detection result. That is, the robot operation device realizes a manual operation of the robot by a touch operation and a drag operation.
  Here, the touch operation refers to an operation of touching the touch panel with a user's finger or pen device (hereinafter referred to as a finger or the like). The drag operation is performed following the touch operation, and refers to an operation of moving the user's finger or the like along the touch panel while touching the touch panel. That is, the drag operation is an operation of continuously moving a certain distance while the user's finger or the like is in contact with the touch panel.
  In this robot operation device, the motion command generation unit can perform a motion direction determination process and a motion speed determination process. The motion direction determination process is a process for determining the motion direction of the robot. In the operation speed determination process, when the operation detection unit detects a drag operation in a positive or negative direction in a specific linear direction with respect to the touch panel after the operation direction determination process is performed, the absolute value of the operation speed Vd of the drag operation is determined. This is a process of determining an operation speed Vr for operating the robot in the operation direction determined in the operation direction determination process based on | Vd |.
  That is, in this configuration, the operation speed Vr of the robot is determined by the operation of the drag operation when the operation direction of the robot is determined and a drag operation in the positive or negative direction with respect to a specific linear direction is performed on the touch panel. It is determined based on the absolute value | Vd | of the velocity Vd. In other words, in the drag operation performed to determine the operation speed Vr of the robot, the positive / negative direction of the drag operation does not affect the operation direction of the robot. Therefore, the user operates the robot at an operation speed Vr corresponding to the operation speed of the drag operation by performing a drag operation so as to reciprocate on a specific straight line on the touch panel, that is, by rubbing the touch panel with a finger or the like. Can continue to.
  For example, if the user continues to perform a drag operation so as to reciprocate at a high operation speed in a certain direction, that is, if the user continues to rub the touch panel with a finger or the like at a high speed, the robot will increase to the high operation speed. It continues to operate at the corresponding high operating speed Vr. On the other hand, if the user keeps dragging so as to reciprocate in a certain direction at a slow speed, that is, if the user keeps rubbing the touch panel with a finger or the like at a slow speed, the robot responds to the slow operation speed. The operation continues at the slow operation speed Vr. If the user stops the drag operation, the robot also stops.
  Thus, according to this robot operation device, the user can continue to operate the robot by continuously moving his / her finger or the like, and can stop the robot by stopping his / her finger or the like. . The user can adjust the operation speed Vr of the robot by adjusting the moving speed of his / her finger or the like. As a result, the user is likely to receive an impression that the movement of the finger or the like due to his / her drag operation and the movement of the robot are related. Therefore, the user can directly and intuitively determine the relevance between the drag operation performed by the user and the robot operation performed by the drag operation. As a result, the user's operability can be improved. Can be planned.
  Furthermore, according to this robot operation device, the user can continue the operation of the robot by continuously performing the drag operation so as to reciprocate on the touch panel. For this reason, the user can continue the drag operation for operating the robot without being limited to the screen size of the touch panel. Therefore, it is possible to avoid the robot operation being stopped unintentionally by being restricted by the screen size of the touch panel and being unable to continue the drag operation. Thereby, the operability is improved. Further, since the continuation of the drag operation for operating the robot is not limited to the screen size of the touch panel, the touch panel can be miniaturized.
  Further, according to the robot operation apparatus, the robot operation distance is obtained by multiplying the robot operation speed Vr by the drag operation time, that is, the operation time. The robot operation speed Vr correlates with the operation speed of the drag operation. That is, the movement distance of the robot correlates with the operation speed of the drag operation multiplied by the operation time of the drag operation, that is, the movement distance of the finger or the like by the drag operation. In this case, for example, when the moving distance of the finger or the like by the drag operation is short, the operating distance of the robot becomes short, and when the moving distance of the finger or the like by the drag operation becomes long, the operating distance of the robot becomes long. That is, the user can shorten the movement distance of the robot, for example, by performing a drag operation that reciprocates in small increments to shorten the movement distance of the finger or the like. In addition, the user can increase the movement distance of the robot by, for example, performing a drag operation that reciprocates greatly to increase the movement distance of the finger or the like.
  Thus, according to this robot operation device, the user can adjust the movement distance of the robot by adjusting the movement distance of the finger or the like by the drag operation of the user. According to this, the user is likely to receive an impression that the movement distance of the finger or the like by his / her drag operation is reflected in the movement distance of the robot. That is, it is possible to directly and intuitively determine the relevance between the drag operation performed by the user and the robot operation performed by the drag operation, and as a result, the user operability can be improved. it can.
(Claim 2)
3. The robot operation device according to claim 2, wherein the movement direction determination process determines the movement direction of the robot as a positive direction when the operation direction immediately after the start of the drag operation is a positive direction in a specific linear direction, and performs a drag operation. When the operation direction immediately after starting is a negative direction in a specific linear direction, a process of determining the movement direction of the robot as a negative direction is included. That is, the movement direction of the robot is determined by the operation direction immediately after the start of the drag operation. Then, the robot operation speed Vr is determined by the absolute value | Vd | of the operation speed Vd of the drag operation that is subsequently performed. According to this, it is not necessary for the user to separately perform an operation for determining the operation direction of the robot, and both the operation for determining the operation direction of the robot and the operation for determining the operation speed Vr by a series of drag operations. It can be performed. As a result, the number of operations can be reduced, and the operability can be improved.
(Claim 3)
The robot operation device according to claim 3, wherein the specific linear direction includes a first direction that is an arbitrary linear direction on the touch panel and a second direction that is a linear direction orthogonal to the first direction. Yes. Then, the operation command generation unit can perform an operation mode determination process. In the operation mode determination process, when the operation direction of the drag operation detected by the operation detection unit is the first direction, the operation mode of the robot based on the drive axis of the robot or the combination of the drive axes is determined as the first operation mode, and the drag operation is performed. When the operation direction is the second direction, the operation mode of the robot is determined to be the second operation mode. According to this, the user can manually operate the two operation modes of the robot by properly using the drag operation in the first direction and the second direction. Therefore, it is possible to reduce the operation for selecting the operation mode of the robot, and as a result, the number of operations is reduced and the operability is improved.
  Further, the first direction and the second direction are orthogonal to each other. In this case, the angle formed by the first direction and the second direction is the largest right angle in the range that the angle formed by the first direction and the second direction can take. Therefore, it is easy for the user to distinguish between the drag operation in the first direction and the drag operation in the second direction. Therefore, it is possible to reduce the case where the user operates the wrong operation direction of the drag operation or the drag operation becomes an operation direction not intended by the user. As a result, the erroneous operation of the drag operation is reduced, and the operability is further improved and the safety is improved.
(Claim 4)
According to a fourth aspect of the present invention, the robot operation device further includes a display capable of displaying a graphic and a display control unit for controlling the display content of the display. The display control unit can perform a direction graphic display process. The direction graphic display process is a process for displaying, on the display, a direction graphic indicating a specific straight line direction based on the touch position of the touch operation when the operation detection unit detects the touch operation. According to this, when the user performs a touch operation on the touch panel to perform a drag operation, a directional graphic indicating a specific straight line direction is displayed on the display. The specific linear direction is an operation direction of a drag operation performed when determining the operation speed Vr of the robot. Therefore, the user can easily determine in which direction the drag operation should be performed by looking at the direction graphic on the display before starting the drag operation. As a result, the operability is further improved.
(Claim 5)
According to a fifth aspect of the present invention, the robot operation device further includes a display capable of displaying a graphic and a display control unit for controlling display contents of the display. The display control unit can perform an operation graphic display process. The operation graphic display process is a process for displaying, on the display, an operation graphic whose form changes with the movement of the current position of the drag operation when the operation detection unit detects a drag operation in a specific linear direction. According to this, the user visually checks whether or not the user's drag operation is properly performed by looking at the operation figure that changes as the finger moves by the user's drag operation, that is, the current position. Can be judged. As a result, an intuitive operation can be performed, and the user's operational feeling can be improved, and as a result, the operability can be improved.
(Claim 6)
The robot operation apparatus according to claim 6, wherein the operation figure includes a bar and a slider. The bar is formed in a straight line extending in a specific linear direction. The slider is movable along the bar in accordance with the drag operation, and indicates the current position of the drag operation on the bar. According to this, the user can easily visually determine whether or not the user's drag operation is appropriately performed by looking at the position of the slider that moves with the user's drag operation. As a result, a more intuitive operation is possible, and the user's operational feeling can be further improved. Further, the user can perform a drag operation as if the slider is reciprocated along a linear bar. As a result, it is possible to further improve the operation feeling of the user.
(Claim 7)
Here, if the robot movement speed is a value that simply refers to the operation speed of the current drag operation, that is, if the absolute value of the operation speed is simply proportional, Such a problem may occur. That is, for example, if an abrupt drag operation unintended by the user is input, the abrupt drag operation is directly reflected in the robot operation speed. Then, the robot can operate in a manner not intended by the user.
  Therefore, the robot operation device according to claim 7 further includes a storage area in which the operation speed of the drag operation can be stored at a constant sampling cycle. The operation speed determination process includes a process of calculating a correction value obtained by correcting the absolute value of the operation speed of the drag operation and determining the operation speed based on the correction value. In the operation speed determination process, when the operation speed of the current drag operation is the first operation speed and the operation speed of the drag operation before the predetermined sampling period is the second operation speed with respect to the current, the first operation speed Is less than ½ of the absolute value of the second operating speed, the correction value is set to 0, and the absolute value of the first operating speed is 1 / of the absolute value of the second operating speed. When the value is 2 or more, the correction value is set to a value obtained by subtracting the absolute value of the difference between the absolute value of the first operating speed and the absolute value of the second operating speed from the absolute value of the first operating speed. To do.
  According to this, the correction value is always greater than or equal to 0 and less than or equal to the absolute value of the first operating speed. Therefore, the operation speed of the robot is not determined based on a value exceeding the absolute value of the first operation speed that is the current operation speed. That is, for example, even if a sudden drag operation unintended by the user is input, the correction value is a value equal to or smaller than the absolute value of the first operation speed that is the current operation speed. Therefore, it is possible to prevent an abrupt drag operation unintended by the user from being directly reflected on the operation speed of the robot. That is, according to this, in the touch panel operation in which the operation speed of the robot is determined depending on the user's operation, the acceleration at the initial input can be suppressed. Thereby, it is possible to prevent the robot from operating in a manner not intended by the user as much as possible, and as a result, safety can be improved.
  Further, since the correction value is always less than or equal to the absolute value of the first operation speed, when the robot is decelerated, the robot decelerates faster than the user's operation speed is reduced. Therefore, for example, when the user wants to stop the operation of the robot, the user can stop the robot immediately and is safe. Thus, according to this configuration, at the time of acceleration, the acceleration of the robot can be suppressed with respect to the user's operation speed, and at the time of deceleration, the robot can be decelerated faster than the user's operation speed. Therefore, safety can be improved both during acceleration and deceleration of the robot.
(Claim 8)
In a site where a robot is handled, it is assumed that oil or dirt adheres to the touch panel of the robot operation device or the user's finger. For example, when oil adheres to the touch panel or the user's finger, the user's finger performing the drag operation easily slips. If the user's finger slips during the drag operation, the operation speed of the drag operation may change abruptly. Further, for example, when dirt adheres to the touch panel or the user's finger, the user's finger performing the drag operation becomes difficult to slip. Then, so-called chattering may occur on the finger of the user who performs the drag operation, and the operation speed of the drag operation may change vibrationally. Under these circumstances, when the robot movement speed is a value that simply refers to the operation speed of the current drag operation, that is, when the absolute value of the operation speed is simply a proportional value. That is, the rapid change in the speed of the drag operation and the change in the speed of the vibrational drag operation are directly reflected in the movement speed of the robot. Then, the robot can operate in a manner not intended by the user.
  In view of this, the robot operation device according to an eighth aspect further includes a storage area capable of storing the operation speed of the drag operation at a constant sampling period. The operation speed determination process includes a process of determining the operation speed of the robot based on a moving average value of absolute values of a plurality of past operation speeds. According to this, the speed change of the drag operation can be averaged, that is, smoothed. Therefore, for example, even if a user's finger slips and a sudden speed change occurs in the drag operation, the robot motion is based on a moving average value obtained by smoothing the rapid speed change, that is, a value obtained by reducing the rapid speed change. The speed can be determined. Also, for example, even if a chatter occurs on the user's finger and a vibration speed change occurs in the drag operation, the robot operation speed is determined based on a moving average value obtained by smoothing and smoothing the vibration speed change. can do. As a result, it is possible to suppress the rapid change in the drag operation and the change in the vibration speed from being directly reflected in the operation speed of the robot. As a result, it is possible to prevent the robot from operating in a manner not intended by the user as much as possible, thereby improving safety.
(Claim 9)
Typical examples of the moving average include a simple moving average, a weighted moving average, and an exponential moving average. In this case, the simple moving average value is an average value obtained by adding the absolute values of a plurality of past operation speeds and dividing the total value by the number of the operation speeds. Even in this simple moving average value, a rapid change in the operation speed of the drag operation can be smoothed to some extent. For this reason, even this simple moving average value has some effects such as that the rapid speed change or the vibration speed change of the drag operation is not directly reflected on the operation speed of the robot. However, the simple moving average value greatly fluctuates in an attempt to return to the actual operation speed that is not averaged at the moment when the value that causes a rapid speed change is not included in the plurality of operation speeds to be averaged. . Then, although the operation speed of the drag operation does not change greatly, the simple moving average value changes greatly. As a result, for example, there is a possibility that the operation speed of the robot suddenly fluctuates despite the user operating at a constant speed. Then, the operation of the robot is contrary to the user's intention, which may cause the user to feel uncomfortable or cause the user to be confused. For this reason, the simple moving average is not sufficient as a countermeasure against a rapid speed change of the drag operation.
  Therefore, in the robot operating device according to claim 9, the moving average value is a weighted moving average value or an exponential moving average value. That is, the motion speed determination process determines the motion speed of the robot based on a weighted moving average value or an exponential moving average value of absolute values of a plurality of past operation speeds. The weighted moving average value and the exponential moving average value are averages obtained by weighting the absolute values of a plurality of past operation speeds by a predetermined coefficient, and dividing the total value of the weighted operation speeds by the number of the operation speeds. Value. In this case, the coefficient in the weighted moving average is a coefficient that linearly decreases with the past operation speed. Further, the coefficient in the exponential moving average is a coefficient that decreases exponentially as the past operation speed is reached.
  The weighted moving average value and the exponential moving average value are weighted to the value to be averaged, so even if a value that causes a sudden speed change is not included in the multiple operating speeds to be averaged, it is smooth Changes. Therefore, according to this configuration, it is possible to suppress a phenomenon in which the operation speed of the robot changes greatly even though the operation speed of the drag operation does not change significantly. As a result, for example, it is possible to prevent a situation in which the operation speed of the robot suddenly fluctuates even though the user is operating at a constant speed, and the user can operate the robot without any sense of incongruity as intended. it can.
(Claim 10)
A robot operation program according to claim 10 realizes the robot operation apparatus according to claim 1. By executing this robot operation program with, for example, a general-purpose tablet PC or smartphone equipped with a touch panel display, the function as the robot operation device described above can be added to the general-purpose tablet PC or smartphone.
Overall configuration diagram showing an example of a robot system using a 4-axis horizontal articulated robot according to the first embodiment Overall configuration diagram showing an example of a robot system using a six-axis vertical articulated robot in the first embodiment The block diagram which shows an example of the electrical structure of the teaching pendant by 1st Embodiment Flow chart showing an example of the contents of various processes performed by the control unit in the first embodiment (part 1) Flowchart (part 2) showing an example of the contents of various processes performed by the control unit in the first embodiment The figure which shows an example of the display content of a touchscreen display immediately after starting manual operation about 1st Embodiment. The figure which shows an example at the time of displaying a direction figure on a touch-panel display by detection of touch operation about 1st Embodiment. The figure which shows an example of the display content displayed on a touchscreen display when the operation direction immediately after the start of drag | drug operation is a 1st direction and a positive direction about 1st Embodiment. The figure which shows an example of the display content displayed on a touch-panel display when the slider is reciprocated when the operation direction immediately after the start of the drag operation is the first direction and the forward direction in the first embodiment 1) The figure which shows an example of the display content displayed on a touch-panel display when the slider is reciprocated when the operation direction immediately after the start of the drag operation is the first direction and the forward direction in the first embodiment 2) The figure which shows an example of the display content displayed on a touchscreen display when the operation direction immediately after the start of drag | drug operation is a 2nd direction and a negative direction about 1st Embodiment. The figure which shows an example of the display content displayed on a touch panel display when the slider is reciprocated when the operation direction immediately after the start of the drag operation is the second direction and the negative direction in the first embodiment 1) The figure which shows an example of the display content displayed on a touch panel display when the slider is reciprocated when the operation direction immediately after the start of the drag operation is the second direction and the negative direction in the first embodiment 2) The first embodiment shows the relationship between the operation speed of the drag operation and the operation speed of the robot. (A) shows the operation speed of the drag operation, and (b) corresponds to the operation speed of (a). The figure which shows the operating speed Vr of a robot The flowchart which shows an example of the content of the various processes which a control part performs about 2nd Embodiment. The figure which shows an example of the operation | movement mode selection screen for 4-axis robots displayed on a touch-panel display about 2nd Embodiment. The figure which shows an example of the operation | movement mode selection screen for 6-axis robots displayed on a touch-panel display about 2nd Embodiment. The figure which shows an example of touch operation with respect to 2nd Embodiment with respect to the operation mode selection screen for 4-axis robots The figure which shows an example of the display content displayed on a touch-panel display about 2nd Embodiment (the 1) The figure which shows an example of the display content displayed on a touch-panel display about 2nd Embodiment (the 2) The figure which shows the concept of the data of the operation speed memorize | stored in a storage area about 3rd Embodiment. The figure which shows an example of a time-dependent change with respect to 3rd Embodiment of the absolute value of the operation speed of drag | drug operation, and the correction value based on the absolute value (the 1) The figure which shows an example of a time-dependent change with respect to 3rd Embodiment of the absolute value of the operation speed of drag | drug operation, and the correction value based on the absolute value (the 2) The figure which shows an example of a time-dependent change with respect to 4th Embodiment of the absolute value of operation speed of drag | drug operation, the simple moving average value based on the absolute value, a weighted moving average value, and an exponential moving average value FIG. 24 is an enlarged view showing the X25 portion of FIG. 24 according to the fourth embodiment. FIG. 24 is an enlarged view of a portion X26 in FIG. 24 according to the fourth embodiment. FIG. 24 is an enlarged view showing a portion X27 in FIG. 24 according to the fourth embodiment.
  Hereinafter, a plurality of embodiments of the present invention will be described. In each embodiment, substantially the same components are denoted by the same reference numerals and description thereof is omitted.
(First embodiment)
Hereinafter, a first embodiment of the present invention will be described with reference to FIGS.
1 and 2 show a system configuration of a general industrial robot. The robot system 10 includes, for example, a 4-axis horizontal articulated robot 20 (hereinafter referred to as a 4-axis robot 20) shown in FIG. 1 and a 6-axis vertical articulated robot 30 (hereinafter referred to as a 6-axis robot) shown in FIG. 30) and the like. Note that the robot to be operated by the robot system 10 is not limited to the four-axis robot 20 or the six-axis robot 30 described above.
  First, a schematic configuration of the 4-axis robot 20 shown in FIG. 1 will be described. The 4-axis robot 20 operates based on a unique robot coordinate system (a three-dimensional orthogonal coordinate system including an X axis, a Y axis, and a Z axis). In this embodiment, the robot coordinate system is defined with the center of the base 21 as the origin O, the upper surface of the work table P as the XY plane, and the coordinate axis orthogonal to the XY plane as the Z axis. The upper surface of the work table P is an installation surface for installing the 4-axis robot 20. In this case, the installation surface corresponds to the operation reference surface. Note that the operation reference plane is not limited to the installation plane, and may be an arbitrary plane.
  The 4-axis robot 20 includes a base 21, a first arm 22, a second arm 23, a shaft 24, and a flange 25. The base 21 is fixed to the upper surface of the work table P (hereinafter also referred to as an installation surface). The first arm 22 is connected to the upper part of the base 21 so as to be rotatable in the horizontal direction around a first axis J21 having an axis in the Z-axis (vertical axis) direction. The second arm 23 is coupled to the upper portion of the tip of the first arm 22 so as to be rotatable about a second axis J22 having an axis in the Z-axis direction. The shaft 24 is provided so as to be movable up and down and rotatable with respect to the distal end portion of the second arm 23. The axis when the shaft 24 is moved up and down is the third axis J23, and the axis when the shaft 24 is rotated is the fourth axis J24. The flange 25 is detachably attached to the distal end portion, that is, the lower end portion of the shaft 24.
  The base 21, the first arm 22, the second arm 23, the shaft 24, and the flange 25 function as the arms of the four-axis robot 20. Although not shown, an end effector (hand) is attached to the flange 25 which is the arm tip. For example, when a part inspection or the like is performed using the 4-axis robot 20, a camera or the like for photographing a target part is used as the end effector. A plurality of axes (J21 to J24) provided in the 4-axis robot 20 are driven by motors (not shown) provided corresponding to the respective axes. In the vicinity of each motor, a position detector (not shown) for detecting the rotation angle of each rotation shaft is provided.
  When manipulating an articulated robot manually, the operation of each axis system that drives each drive axis individually and the combination of multiple drive axes can be used to move the robot's hand on an arbitrary coordinate system. There is a movement of the hand system to move with. In this case, the 4-axis robot 20 can individually drive the drive axes J21 to J24 in the operation of each axis system. Further, the four-axis robot 20 is, for example, a movement in the XY plane direction combining the first axis J21 and the second axis J22, and a movement in the Z direction by the third axis J23. The movement in the Rz direction by the fourth axis J24 can be performed.
  Next, a schematic configuration of the 6-axis robot 30 shown in FIG. 2 will be described. Similarly to the 4-axis robot 20, the 6-axis robot 30 operates based on a unique robot coordinate system (a three-dimensional orthogonal coordinate system including an X axis, a Y axis, and a Z axis). The six-axis robot 30 includes a base 31, a shoulder portion 32, a lower arm 33, a first upper arm 34, a second upper arm 35, a wrist 36, and a flange 37. The base 31 is fixed to the upper surface of the work table P. The shoulder portion 32 is connected to the upper portion of the base 31 so as to be rotatable in the horizontal direction around a first axis J31 having an axis in the Z-axis (vertical axis) direction. The lower arm 33 is provided so as to extend upward with respect to the shoulder portion 32. The lower arm 33 is connected to the shoulder portion 32 so as to be rotatable in a vertical direction around a second axis J32 having an axis in the Y-axis direction.
  The first upper arm 34 is connected to the tip of the lower arm 33 so as to be rotatable in the vertical direction around a third axis J33 having an axis in the Y-axis direction. The second upper arm 35 is coupled to the distal end portion of the first upper arm 34 so as to be able to twist and rotate about a fourth axis J34 having an axis in the X-axis direction. The wrist 36 is connected to the distal end portion of the second upper arm 35 so as to be rotatable in the vertical direction around a fifth axis J25 having an axis in the Y-axis direction. The flange 37 is connected to the wrist 36 so as to be capable of twisting and rotating about a sixth axis J36 having an axis in the X-axis direction.
  The base 31, the shoulder portion 32, the lower arm 33, the first upper arm 34, the second upper arm 35, the wrist 36 and the flange 37 function as an arm of the robot 30. Although not shown, a tool such as an air chuck is attached to the flange 37 (corresponding to the hand) that is the tip of the arm. A plurality of axes (J31 to J36) provided in the 6-axis robot 30 are driven by motors (not shown) provided corresponding to the respective axes, as in the 4-axis robot 20. Further, in the vicinity of each motor, a position detector (not shown) for detecting the rotational position of each rotating shaft is provided.
  The six-axis robot 30 can individually drive the drive axes J31 to J36 in the operation of each axis system. Further, the 6-axis robot 30 can perform an operation of rotating the hand around two axes different from the Z-axis in addition to the operation that the 4-axis robot 20 can perform in the operation of the hand system. The two axes are two axes (X axis and Y axis) that are horizontal to the installation surface P and orthogonal to each other. In this case, the rotation direction around the X axis is the Rx direction, and the rotation direction around the Y axis is the Ry direction. In other words, the 6-axis robot 30 moves, for example, the movement in the XY plane direction combining the first axis J31, the second axis J32, and the third axis J33, the second axis J32, Performs movement in the Z direction by combining the three axes J33, movement in the Rx direction by the fourth axis J34, movement in the Ry direction by the fifth axis J35, and movement in the Rz direction by the sixth axis. be able to.
  The robot system 10 shown in FIGS. 1 and 2 includes a controller 11 and a teaching pendant 40 (corresponding to a robot operating device) in addition to the robots 20 and 30. The controller 11 controls the robots 20 and 30. The controller 11 is connected to the robots 20 and 30 via connection cables. The teaching pendant 40 is connected to the controller 11 via a connection cable. Data communication is performed between the controller 11 and the teaching pendant 40. As a result, various types of operation information input in response to user operations are transmitted from the teaching pendant 40 to the controller 11. Further, the controller 11 transmits various control signals, display signals, and the like to the teaching pendant 40 and supplies driving power. The teaching pendant 40 and the controller 11 may be connected by wireless communication.
  When a signal for instructing a manual operation is given from the teaching pendant 40, the controller 11 performs a control to manually operate the robots 20 and 30. Further, when a signal for instructing an automatic operation is given from the teaching pendant 40, the controller 11 performs control to automatically operate the robots 20 and 30 by starting an automatic program stored in advance.
  The teaching pendant 40 has such a size that it can be operated, for example, by being carried by the user or held in the hand. The teaching pendant 40 includes, for example, a case 41, a touch panel display 42, and a switch 43. The case 41 has a thin, substantially rectangular box shape, for example, and constitutes the outer shell of the teaching pendant 40. The touch panel display 42 is provided so as to occupy most of the surface side of the case 41. As illustrated in FIG. 3, the touch panel display 42 includes a touch panel 421 and a display 422, and the touch panel 421 and the display 422 are arranged to overlap each other.
  The touch panel display 42 can receive input of a touch operation and a drag operation from the user through the touch panel 421, and can display images such as letters, numbers, symbols, and figures through the display 422. The switch 43 is a physical switch, for example, and is provided around the touch panel display 42. The switch 43 may be replaced with a button displayed on the touch panel display 42. The user performs various input operations by operating the touch panel display 42 and the switch 43.
  The user can execute various functions such as operation and setting of the robots 20 and 30 by using the teaching pendant 40, and invokes a control program stored in advance to start the robots 20 and 30 and set various parameters. Etc. can be executed. Also, various teaching operations can be performed by operating the robots 20 and 30 by manual operation, that is, manual operation. For example, a menu screen, a setting input screen, a status display screen, and the like are displayed on the touch panel display 42 as necessary.
Next, the electrical configuration of the teaching pendant 40 will be described with reference to FIG.
The teaching pendant 40 includes a communication interface (I / F) 44, a control unit 45, an operation detection unit 46, an operation command generation unit 47, and a display control unit 48 in addition to the touch panel display 42 and the switch 43. The communication interface 44 connects the controller 45 of the teaching pendant 40 and the controller 11 so that they can communicate with each other.
  The control unit 45 is configured mainly with a microcomputer having a storage area 452 such as a CPU 451, ROM, RAM, and rewritable flash memory, for example, and controls the teaching pendant 40 as a whole. The storage area 452 stores a robot operation program. The control unit 45 executes the robot operation program in the CPU 451 to virtually realize the operation detection unit 46, the operation command generation unit 47, the display control unit 48, and the like by software. The operation detection unit 46, the operation command generation unit 47, and the display control unit 48 may be realized in hardware as an integrated circuit integrated with the control unit 45, for example.
  The operation detection unit 46 can detect a touch operation and a drag operation on the touch panel 421. The operation detection unit 46 can detect whether the user's finger or the like has touched the touch panel display 42 and the position (touch position) of the touched finger or the like as detection of the touch operation. Further, the operation detection unit 46 can detect the current position, moving direction, moving speed, and moving amount of a finger or the like related to the drag operation as detection of the drag operation.
  The operation command generation unit 47 generates an operation command for operating the robots 20 and 30 based on the detection result of the operation detection unit 46. The operation command generated by the operation command generation unit 47 is given to the controller 11 through the communication interface 44. The display control unit 48 controls display contents to be displayed on the display 422 based on an operation on the switch 43, a detection result of the operation detection unit 46, and the like. By using the teaching pendant 40 having such a configuration, the user can perform manual operations of the robots 20 and 30 by touch operations and drag operations.
  Next, the control content performed by the control unit 45 will be described with reference to FIGS. In the following description, the operation mode of the robots 20 and 30 means the operation mode of the robots 20 and 30 by the drive axes of the robots 20 and 30 or a combination of the drive axes. In this case, the movement modes of the robots 20 and 30 do not include the movement direction in the positive (+) direction or the negative (−) direction in the movement system such as the hand system or each axis system described above. To do. Further, the following description shows a case where manual operation in the XY plane direction is performed on the same screen in the operation of the robot 20 or 30-hand system. Note that the teaching pendant 40 is not limited to the operation mode of the hand system in the XY plane direction described above, and the robots 20 and 30 can be manually operated in any operation mode of each axis system and the hand system.
  The control unit 45 of the teaching pendant 40 executes the control contents shown in FIGS. 4 and 5 when manual operation of the robots 20 and 30 is started. Specifically, when the process related to the manual operation is started, the control unit 45 first performs a touch operation on the touch panel display 42 based on the detection result of the operation detection unit 46 in step S11 of FIG. It is determined whether or not. When the touch operation is not performed (NO in step S11), the control unit 45 stands by without displaying anything on the touch panel display 42 as shown in FIG. On the other hand, as shown in FIG. 7, when the user performs a touch operation on an arbitrary point on the touch panel display 42 with the finger 90 or the like, the control unit 45 determines that the touch operation has been performed (YES in step S11), and FIG. Step S12 is executed.
  In step S12, the control unit 45 executes a direction graphic display process. When the operation detection unit 46 detects a touch operation, the direction graphic display process is a directional graphic indicating a specific linear direction on the touch panel display 42 with reference to the touch position P0 of the touch operation, as shown in FIG. In this case, it is a process of displaying the direction graphic 50 indicating the first direction and the second direction. The direction graphic 50 includes a first direction graphic 51, a second direction graphic 52, and a circle graphic 53. The first direction graphic 51 is a graphic indicating the first direction with respect to the touch panel display 42. The second direction graphic 52 is a graphic indicating the second direction with respect to the touch panel display 42. In the present embodiment, the first direction is set to the longitudinal direction of the touch panel display 42. The second direction is set to a direction orthogonal to the first direction. The first direction and the second direction can be set arbitrarily.
  The circle figure 53 indicates the first direction and the second direction with reference to the touch position P0. The circle figure 53 is formed in a circular shape, and the inside of the circle is equally divided into two times the number in a specific linear direction. In this case, the inside of the circle of the circle graphic 53 is equally divided into multiples of 2, that is, the numbers in the first direction and the second direction, that is, four. And each area | region inside the circle figure 53 equally divided into the 1st area | region 531 which shows the positive (+) direction of a 1st direction, and the 2nd area | region 532 which shows the negative (-) direction of a 1st direction. The third region 533 indicating the positive (+) direction in the second direction and the fourth region 534 indicating the negative (−) direction in the second direction are set.
  In the direction graphic display process, the control unit 45 sets the touch position P0 by the touch operation to the center position P0 of the first direction graphic 51, the second direction graphic 52, and the circle graphic 53. And the control part 45 makes the 1st direction figure 51 and the 2nd direction figure 52 orthogonal, and touches the touch panel display 42 in the state which accumulated the circle figure 53 on these 1st direction figures 51 and the 2nd direction figure 52. To display. In the present embodiment, with respect to the positive and negative directions of the first direction, the right side of the drawing is the positive (+) direction of the first direction and the left side of the drawing is the first direction with respect to the center position P0 of the first direction graphic 51. The negative (-) direction. Regarding the positive / negative direction of the second direction, with respect to the center position P0 of the second direction graphic 52, the upper side of the drawing is the positive (+) direction of the second direction, and the lower side of the drawing is the negative (−) direction of the second direction. And
  Arbitrary operation modes of the robots 20 and 30 are assigned to the drag operation in the first direction and the second direction. In the present embodiment, the X-direction operation mode of the hand system is assigned to the drag operation in the first direction. In addition, an operation mode in the Y direction of the hand system is assigned to the drag operation in the second direction. Then, the operation mode and the operation direction of the robots 20 and 30 are determined by the operation direction immediately after the start of the drag operation performed following the touch operation detected in step S11.
  In this case, the user sets the robot 20 or 30 in the X direction by setting the operation direction immediately after the start of the drag operation to the (+) positive direction along the first direction graphic 51, that is, to the right of the center position P0. In the operation mode, it can be operated in the positive (+) direction. In addition, the user sets the robot 20 and 30 in the X direction by setting the operation direction immediately after the start of the drag operation to the negative (−) direction along the first direction graphic 51, that is, to the left of the center position P0. It can be operated in the negative (-) direction in the operation mode. On the other hand, the user moves the robots 20 and 30 in the Y direction by setting the operation direction immediately after the start of the drag operation to the positive (+) direction along the second direction figure 52, that is, the center position P0. In the aspect, it can be operated in the positive (+) direction. In addition, the user moves the robots 20 and 30 in the Y direction by setting the operation direction immediately after the start of the drag operation to the negative (−) direction along the second direction graphic 52, that is, the lower side of the page with respect to the center position P0. In the aspect, it can be operated in the negative (-) direction.
  Specifically, when the directional graphic 50 is displayed in step S12 of FIG. 4, the control unit 45 determines in step S13 whether or not a drag operation has been performed following the touch operation detected in step S11. When the drag operation is not detected (NO in step S13), the control unit 45 executes step S27 in FIG. On the other hand, when the drag operation is detected (YES in step S13), the control unit 45 executes step S14. In step S14, the control unit 45 determines whether the operation direction immediately after the start of the drag operation is the first direction or the second direction.
  The operation direction immediately after the start of the drag operation can be determined as follows, for example. That is, the operation direction immediately after the start of the drag operation is the touch position P0 related to the touch operation detected in step S11, and the current position P1 such as the finger 90 is the touch position P0 for the first time after the touch operation is detected in step S11. It can be a straight line direction connecting the current position P1 of the finger 90 or the like when the positions are different. Further, immediately after the start of the drag operation, for example, a period from when the operation detection unit 46 detects a drag operation in the positive or negative direction in a specific linear direction to when the positive or negative direction of the drag operation is changed to the reverse direction. May be included.
  When the operation direction immediately after the start of the drag operation is the first direction (the first direction in step S14), the control unit 45 executes steps S15 and S16. On the other hand, when the operation direction immediately after the start of the drag operation is the second direction (the second direction in step S14), the control unit 45 executes steps S17 and S18. In the determination in step S14, positive or negative in the first direction or the second direction is not a problem.
  In steps S15 and S17, the control unit 45 executes an operation mode determination process by the process of the operation command generation unit 47. In the operation mode determination process, when the operation direction immediately after the start of the drag operation is the first direction (the first direction in step S14), the operation mode of the robots 20 and 30 is determined as the first operation mode, and the drag operation is performed. When the operation direction immediately after the start is the second direction (second direction in step S14), the operation mode of the robots 20 and 30 is determined to be the second operation mode.
  In this case, the operation direction immediately after the start of the drag operation is the direction toward the first area 531 side or the second area 532 side of the circle figure 53 shown in FIG. 7, for example, the first direction figure as shown by the arrow A1 in FIG. 51 (first direction in step S14), the controller 45 changes the operation mode of the robots 20 and 30 to the X direction of the hand system that is the first operation mode in step S15. Decide on behavior. On the other hand, the operation direction immediately after the start of the drag operation is the direction toward the third area 533 side or the fourth area 534 side of the circle figure 53, for example, the second direction figure 52 along the second direction figure 52 as shown by the arrow B1 in FIG. If there are two directions (the second direction in step S14), in step S17, the control unit 45 determines the operation mode of the robots 20 and 30 to be the second operation mode movement in the Y direction of the hand system.
  Next, the control part 45 performs an operation figure display process by the process of the display control part 48 in step S16, S18. The operation graphic display process is a process of displaying the first operation graphic 61 or the second operation graphic 62 on the touch panel display 42 as shown in FIG. 8 or FIG. In this case, the operation direction immediately after the start of the drag operation is the direction toward the first region 531 side or the second region 532 side of the circle graphic 53, that is, the first direction along the first direction graphic 51 (step S14). In the first direction), the control unit 45 causes the first operation graphic 61 extending in the first direction to be displayed on the touch panel display 42 as shown in FIG. 8 (step S16). On the other hand, if the operation direction of the drag operation is the second direction along the second direction graphic 52 (the second direction in step S15), the control unit 45 extends the second direction as shown in FIG. The operation figure 62 is displayed on the touch panel display 42 (step S19).
  The first operation graphic 61 and the second operation graphic 62 are examples of the operation graphic. The first operation graphic 61 is displayed so as to overlap the first direction graphic 51, and the second operation graphic 62 is displayed superimposed on the second direction graphic 52. Note that the circle graphic 53 is erased from the touch panel display 42 as one of the first operation graphic 61 and the second operation graphic 62 is displayed.
  The first operation figure 61 and the second operation figure 62 are figures whose forms change with the movement of the current position P1 of the drag operation. The first operation graphic 61 corresponds to, for example, an operation mode in the X direction of the hand system. The second operation graphic 62 corresponds to, for example, the movement mode in the Y direction of the hand system. The basic configuration of the first operation graphic 61 and the second operation graphic 62 is the same except that the operation modes and display directions of the corresponding robots 20 and 30 are different.
  As shown in FIG. 8, the first operation graphic 61 has a first bar 611 and a first slider 612. The first bar 611 is a figure formed linearly in a specific linear direction, in this case, in the first direction. In this case, the first bar 611 is formed in a horizontally long rectangular shape along the first direction with the starting position P0 of the drag operation as a base point. The first slider 612 can move along the first bar 611 in accordance with the drag operation. The first slider 612 is a graphic indicating the current position P1 of the drag operation on the first bar 611. That is, when a drag operation in the first direction is input, the display position of the first slider 612 moves with the movement of the current position P1 by the drag operation. The change in the form of the first operation graphic 61 includes a change in the relative positional relationship of the first slider 612 with respect to the first bar 611. That is, as the current position P1 is moved by the drag operation in the first direction, the form of the first operation graphic 61 changes.
  Similarly, the second operation graphic 62 includes a second bar 621 and a second slider 622 as shown in FIG. The second bar 621 is a figure formed linearly in a specific linear direction, in this case in the second direction. In this case, the second bar 621 is formed in a vertically long rectangular shape along the second direction with the starting position P0 of the drag operation as a base point. The second slider 622 can move along the second bar 621 in accordance with the drag operation. The second slider 622 is a graphic indicating the current position P1 of the drag operation on the second bar 621. That is, when a drag operation in the second direction is input, the display position of the second slider 622 moves with the movement of the current position P1 of the drag operation. The change in the form of the second operation graphic 62 includes a change in the relative positional relationship of the second slider 622 with respect to the second bar 621. That is, as the current position P0 is moved by the drag operation in the second direction, the form of the second operation graphic 62 changes.
  Next, the control unit 45 executes step S19 of FIG. 5 and determines whether the operation direction of the drag operation is the positive direction or the negative direction in the first direction or the second direction. And the control part 45 performs a motion direction determination process by the process of the motion command production | generation part 47 in step S20 or step S21. The motion direction determination process is a process for determining the motion direction of the robots 20 and 30. In the movement direction determination process, when the operation direction immediately after the start of the drag operation is the positive direction in the first direction or the second direction, the movement direction of the robots 20 and 30 is determined as the positive direction, and immediately after the start of the drag operation. When the operation direction is the negative direction in the first direction or the second direction, a process of determining the movement direction of the robots 20 and 30 as the negative direction is included.
  For example, in this embodiment, when the operation direction of the drag operation is the first direction (X direction in this case) and the positive direction (the first direction in step S14 and the positive direction in step S19), the control unit 45 The movement mode of the robots 20 and 30 is determined in the X direction of the hand system, and the movement direction in the movement mode is determined as the positive direction. Further, when the operation direction of the drag operation is the first direction (in this case, the X direction) and the negative direction (the first direction in step S14 and the negative direction in step S19), the control unit 45 controls the robots 20 and 30. The movement mode is determined in the X direction of the hand system, and the movement direction in the movement mode is determined as the negative direction.
  Similarly, when the operation direction of the drag operation is the second direction (Y direction in this case) and the positive direction (the second direction in step S14 and the positive direction in step S19), the control unit 45 controls the robots 20 and 30. Is determined in the Y direction of the hand system, and the operation direction in the operation mode is determined as the positive direction. When the operation direction of the drag operation is the second direction (Y direction in this case) and the negative direction (the second direction in step S14 and the negative direction in step S19), the control unit 45 controls the robots 20 and 30. The movement mode is determined in the Y direction of the hand system, and the movement direction in the movement mode is determined as a negative direction.
  Next, in step S22, the controller 45 measures the operation speed of the drag operation. And the control part 45 performs an operation | movement speed determination process in step S23. The operation speed determination process is an operation speed for operating the robots 20 and 30 in the operation direction determined in steps S20 and 21 based on the absolute value | Vd | of the drag operation speed Vd measured in step S22. This is a process for determining Vr.
  In this case, the determination of the operation speed Vr of the robots 20 and 30 does not consider the sign of the operation direction of the drag operation. That is, in the drag operation in the first direction or the second direction, the operation speed of the drag operation in the positive direction, that is, the right side of the page is a positive (+) value, and the operation speed of the drag operation in the negative direction, that is, the left side of the page. Is a negative (-) value. Therefore, for example, a drag operation that repeats movement in the directions of arrows A2 and A3 as shown in FIGS. 9 and 10, and a drag operation that repeats movement in the directions of arrows B2 and B3 as shown in FIGS. When a drag operation is performed such that the sliders 612 and 622 are reciprocated on the bars 611 and 621 as in the operation, the operation speed Vd of the drag operation is a positive value and a negative value as illustrated in FIG. Repeat with the value of. As shown in FIG. 14B, the control unit 45 determines the operation speed Vr of the robots 20 and 30 based on the absolute value | Vd | of the drag operation speed Vd in which positive and negative values are alternately generated.
  Next, in step S24, the control unit 45 executes an operation command generation process, and the operation mode of the robots 20 and 30 determined in the operation mode determination process (steps S15 and S17) and the operation direction determination process (step S20, Based on the operation direction of the robots 20 and 30 determined in S21) and the operation speed Vr of the robots 20 and 30 determined in the operation speed determination process (step S23), an operation command for operating the robots 20 and 30 is issued. Generate. In step S25, the controller 45 transmits the operation command generated in step S24 to the controller 11. The controller 11 operates the robots 20 and 30 based on the operation command received from the teaching pendant 40.
  Next, in step S26, the control unit 45 executes an operation graphic display process, and according to the current position P1 of the drag operation, the first operation graphic 61 displayed in step S16 or the second operation graphic displayed in step S18. The form of the operation figure 62 is changed and displayed. In this case, if the first operation graphic 61 is displayed on the touch panel display 42 by executing step S16, the control unit 45 moves the first slider 612 of the first operation graphic 61 according to the current position P1 of the drag operation. Let If the second operation graphic 62 is displayed on the touch panel display 42 by executing step S18, the control unit 45 moves the second slider 622 of the second operation graphic 62 in accordance with the current position P1 of the drag operation. . Accordingly, the sliders 612 and 622 of the operation figures 61 and 62 displayed on the touch panel display 42 move so as to follow the drag operation.
  In the case of the present embodiment, as shown in FIG. 8 or FIG. 11, the control unit 45 displays the operation display 65 on the touch panel display 42 by the processing of the display control unit 48. The operation display 65 displays the currently set operation mode and operation direction of the robots 20 and 30. That is, the motion display 65 shows the motion mode determined in steps S15 and S17 and the motion direction determined in steps S20 and S21.
  Next, the control unit 45 executes step S <b> 27 and determines whether or not the operation is ended based on the detection result of the operation detection unit 46. In this case, the end of the operation means that the user's finger 90 or the like is separated from the touch panel display 42. That is, it is not determined that the operation is finished only when the operation speed of the drag operation becomes zero.
  When the drag operation is continued (NO in step S27), the control unit 45 proceeds to step S22 and repeats steps S22 to S27. Note that the processing in steps S22 to S27 is repeated, for example, every 0.5 seconds. Therefore, there is no large time difference between the input of the drag operation, the movement of the robots 20 and 30 and the movement of the sliders 612 and 622. Therefore, the user can receive an impression that the robots 20 and 30 are manually operated in substantially real time.
  Further, after the operation mode is determined in steps S15 and S17 and the operation direction is determined in steps S20 and S21, the user moves in the reciprocating direction as shown in FIG. 9 and FIG. 10 or FIG. 12 and FIG. By continuing the drag operation, it is possible to continue the operations of the robots 20 and 30 in the operation mode and the operation direction. If the control unit 45 determines that the drag operation has ended based on the detection result of the operation detection unit 46 (YES in step S27), the control unit 45 executes steps S28 and S29.
  In step S <b> 28, the control unit 45 cancels, that is, initializes the setting of the operation mode and the operation direction of the robots 20 and 30 determined in the above-described processing. Thereby, the operations of the robots 20 and 30 are completed. In step S29, the control unit 45 erases the direction graphic 50 and the operation graphics 61 and 62 from the touch panel display 42 by the processing of the display control unit 48, and initializes the display content of the screen. As a result, a series of processing ends. And the control part 45 returns to step S11 of FIG. 4, and performs the process of step S11-S29 again. As a result, the user can manually operate with a new operation mode and operation direction. That is, the user can change the operation mode and the operation direction of the robots 20 and 30.
  According to the present embodiment, the control unit 45 can perform a motion direction determination process and a motion speed determination process by the processing of the motion command generation unit 47. The motion direction determination process is a process for determining the motion direction of the robots 20 and 30. In the operation speed determination process, after the operation direction determination process is performed, the operation detection unit 46 detects a drag operation in a specific linear direction with respect to the touch panel display 42, in this case, a positive or negative direction in the first direction or the second direction. In this case, based on the absolute value | Vd | of the operation speed Vd of the drag operation, the operation speed Vr for operating the robots 20 and 30 in the operation direction determined in the operation direction determination process is determined.
  That is, in the configuration described above, the operation speed Vr of the robots 20 and 30 is determined by the drag operation in the positive direction or the negative direction with respect to the first direction or the second direction on the touch panel display 42 when the operation direction of the robots 20 and 30 is determined. Is determined based on the absolute value | Vd | of the operation speed Vd of the drag operation. That is, in the drag operation performed to determine the operation speed Vr of the robots 20 and 30, the positive / negative direction of the drag operation does not affect the operation direction of the robots 20 and 30. Therefore, the user performs a drag operation by linearly reciprocating in the first direction or the second direction on the touch panel display 42, that is, by dragging the touch panel display 42 with a finger 90 or the like. The robots 20 and 30 can be continuously operated at the operation speed Vr corresponding to the operation speed Vd.
  For example, when the user continues to perform a drag operation so as to reciprocate at a high operation speed Vd in the first direction or the second direction, that is, when the user continues to rub the touch panel display 42 with a finger 90 or the like at a high speed, The robots 20 and 30 continue to operate at a high operation speed Vr corresponding to the high operation speed Vd. On the other hand, when the user continues to perform a drag operation so as to reciprocate at a low speed in the first direction or the second direction, that is, when the user continues to rub the touch panel with a finger 90 or the like at a low speed, the robots 20 and 30 The operation continues at a slow operation speed Vr corresponding to the slow operation speed Vd. When the user stops the drag operation, the robots 20 and 30 are also stopped.
  As described above, according to the teaching pendant 40 of the present embodiment, the user can continue to operate the robots 20 and 30 by continuously moving his / her finger 90 and the like, and by stopping his / her finger and the like, The robots 20 and 30 can be stopped. Then, the user can adjust the operation speed Vr of the robot 20 or 30 by adjusting the moving speed Vd of his / her finger 90 or the like. As a result, the user is likely to receive an impression that the movement of the finger 90 and the like due to his / her drag operation and the movement of the robots 20 and 30 are related. Therefore, the user can intuitively determine the relevance between the drag operation performed by the user and the operations of the robots 20 and 30 performed by the drag operation. As a result, the user's operability can be improved. Can be planned.
  Furthermore, according to the teaching pendant 40 of the present embodiment, the operation of the robots 20 and 30 can be continued by the user performing a drag operation continuously so as to reciprocate on the touch panel display 42. For this reason, the user can continue the drag operation for operating the robots 20 and 30 without being limited to the screen size of the touch panel display 42. Therefore, the drag operation is restricted by the screen size of the touch panel display 42 and cannot be continued, so that the operation of the robots 20 and 30 can be avoided from being stopped unintentionally. As a result, the operability is improved. Is planned. In addition, the continuation of the drag operation for operating the robots 20 and 30 is not limited to the screen size of the touch panel display 42, and thus the touch panel display 42 can be downsized. For example, even when the teaching pendant 40 is configured by a wristwatch-type wearable terminal that can be worn on the user's arm, the user can appropriately manually operate the robots 20 and 30 on a small screen on the wearable terminal. it can.
  Further, according to the teaching pendant 40 of the present embodiment, the operation distance of the robots 20 and 30 is obtained by multiplying the operation speed Vr of the robots 20 and 30 by the time during which the drag operation is performed, that is, the operation time. The operation speed Vr of the robots 20 and 30 correlates with the operation speed of the drag operation. That is, the movement distance of the robots 20 and 30 correlates with the movement speed of the drag operation multiplied by the drag operation time, that is, the movement distance of the finger or the like by the drag operation. In this case, for example, when the moving distance of the finger or the like by the drag operation is short, the operating distance of the robot 20 or 30 becomes short, and when the moving distance of the finger or the like by the drag operation becomes long, the operating distance of the robot 20 or 30 becomes long. Become. That is, the user can shorten the movement distance of the robots 20 and 30 by, for example, performing a drag operation that reciprocates in small increments to shorten the movement distance of the finger or the like. In addition, the user can increase the movement distance of the robots 20 and 30 by, for example, performing a drag operation that reciprocates greatly to increase the movement distance of a finger or the like.
  As described above, according to the teaching pendant 40 of the present embodiment, the user can adjust the movement distance of the robots 20 and 30 by adjusting the movement distance of the finger or the like by his / her drag operation. According to this, the user is likely to receive an impression that the movement distance of the finger or the like by his / her drag operation is reflected in the movement distance of the robots 20 and 30. That is, it is possible to directly and intuitively determine the relevance between the drag operation performed by the user and the operation of the robots 20 and 30 performed by the drag operation, and as a result, the user operability can be improved. Can be planned.
  The motion direction determination process determines the motion direction of the robots 20 and 30 as the positive direction when the operation direction immediately after the start of the drag operation is the positive direction in the first direction or the second direction, and the operation immediately after the start of the drag operation. When the direction is a negative direction in the first direction or the second direction, a process of determining the movement direction of the robots 20 and 30 as a negative direction is included. That is, the movement direction of the robots 20 and 30 is determined by the operation direction immediately after the start of the drag operation. Then, the operation speed Vr of the robots 20 and 30 is determined by the absolute value | Vd | of the operation speed Vd of the drag operation performed continuously thereafter. According to this, the user does not need to separately perform an operation for determining the movement direction of the robots 20 and 30, and the operation and the operation speed Vr for determining the movement direction of the robots 20 and 30 by a series of drag operations. Both the determining operation and the determining operation can be performed. As a result, the number of operations can be reduced, and the operability can be improved.
  Further, the control unit 45 can perform an operation mode determination process by the process of the operation command generation unit 47. In the operation mode determination process, when the operation direction of the drag operation detected by the operation detection unit 46 is the first direction, the operation mode of the robots 20 and 30 is determined as the first operation mode, and the operation direction of the drag operation is the second operation direction. This is a process of determining the operation mode of the robots 20 and 30 as the second operation mode when the direction is the direction. According to this, the user can manually operate the two operation modes of the robots 20 and 30 by properly using the drag operation in the first direction and the second direction. Therefore, it is possible to reduce operations for selecting the operation mode of the robots 20 and 30, and as a result, it is possible to reduce the number of operations and improve operability.
  Further, the first direction and the second direction are orthogonal to each other. In this case, the angle formed by the first direction and the second direction is the largest right angle in the range that the angle formed by the first direction and the second direction can take. Therefore, it is easy for the user to distinguish between the drag operation in the first direction and the drag operation in the second direction. Therefore, it is possible to reduce the case where the user operates the wrong operation direction of the drag operation or the drag operation becomes an operation direction not intended by the user. As a result, the erroneous operation of the drag operation is reduced, and the operability is further improved and the safety is improved.
  The teaching pendant 40 further includes a touch panel display 42 that can display a graphic and a display control unit 48 that controls the display content of the touch panel display 42. The control unit 45 can perform the direction graphic display process by the process of the display control unit 48. The direction graphic display process is a process of causing the touch panel display 42 to display the direction graphic 50 indicating the first direction and the second direction with reference to the touch position P0 of the touch operation when the operation detection unit 46 detects the touch operation. . According to this, when the user performs a touch operation on the touch panel display 42 in order to perform a drag operation, the direction graphic 50 indicating the first direction and the second direction is displayed on the touch panel display 42. The first direction and the second direction are the operation directions of the drag operation performed when the operation speed Vr of the robots 20 and 30 is determined. Therefore, the user can easily determine which direction the drag operation should be performed by looking at the direction graphic 50 on the touch panel display 42 before starting the drag operation. As a result, the operability is further improved.
  The control unit 45 can perform an operation graphic display process by the process of the display control unit 48. In the operation graphic display process, when the operation detection unit 46 detects a drag operation in the first direction or the second direction, the operation graphic 61 or 62 whose form changes with the movement of the current position P1 of the drag operation is displayed on the touch panel. This is processing to be displayed on the display 42. According to this, the user can appropriately perform his own drag operation by looking at the operation figures 61 and 62 that change with the movement of the finger 90 or the like by the own drag operation, that is, the movement of the current position P1. It can be judged visually. As a result, an intuitive operation is possible, and the user's operational feeling can be improved. As a result, the operability can be improved.
  Further, the robot operation program according to the present embodiment is executed by, for example, a general-purpose tablet PC or smartphone equipped with a touch panel display, thereby adding a function equivalent to the above-described teaching pendant 40 to the general-purpose tablet PC or smartphone. be able to.
  In the above embodiment, the user can operate the robots 20 and 30 by a touch operation and a drag operation on the touch panel display 42. According to this, the user can perform a manual operation intuitively and easily compared with the case of operating a physical operation key. Further, according to this, for example, physical operation keys for performing manual operation can be reduced. As a result, it can be expected that the teaching pendant 40 can be miniaturized, the screen size of the touch panel display 42 can be increased, and the price can be reduced.
  In addition, the circle figure 53 of the direction figure 50 shown in FIG. 7 is not restricted circularly, For example, a polygon etc. may be sufficient. Moreover, in this embodiment, the direction figure 50 should just have any one of the 1st direction figure 51, the 2nd direction figure 52, or the circle figure 53 at least. This is because by displaying at least one of the first direction graphic 51, the second direction graphic 52, or the circle graphic 53 on the touch panel display 42, the first direction and the second direction can be presented to the user. . Therefore, in the present embodiment, any one of the first direction graphic 51, the second direction graphic 52, and the circle graphic 53 can be omitted and not displayed.
(Second Embodiment)
Next, a second embodiment will be described with reference to FIGS.
In the present embodiment, the control unit 45 can determine the operation mode and the operation direction of the robots 20 and 30 by a method different from the drag operation. That is, in the present embodiment, the specific contents of the operation mode determination process in steps S15 and S17 in FIG. 4 and the operation direction determination process in steps S20 and S21 in FIG. 5 are different from those in the first embodiment. That is, when the manual operation is started and step S31 of FIG. 15 is executed, the control unit 45 displays the operation mode selection screens 70 and 80 shown in FIG. 16 or FIG. Display above. The operation mode selection screens 70 and 80 are for the user to select the operation mode of the robots 20 and 30 by a touch operation.
  For example, the operation mode selection screen 70 shown in FIG. 16 is for the 4-axis robot 20 and includes a selection unit 71 for each axis system and a selection unit 72 for the hand system. The external shapes of the selection units 71 and 72 are circular. The inner sides of the circles of the selection units 71 and 72 are equally divided by the number of driving modes of each operation system. In the case of the operation mode selection screen 70 for the 4-axis robot, the inner sides of the circles of the selection units 71 and 72 are equally divided into four which are the number of drive modes in each operation system of the 4-axis robot 20. The areas inside the selection units 71 and 72 divided into four equal parts are set as selection areas 711 to 714 for each axis system and selection areas 721 to 724 for the hand system, respectively.
  In this case, in the selection unit 71 of each axis system, the selection area 711 is assigned to the operation mode of the first axis J21, the selection area 712 is assigned to the operation mode of the second axis J22, and the selection area 713 is the third axis J23. The selection area 714 is assigned to the operation mode of the fourth axis J24. Further, in the hand system selection unit 72, the selection area 721 is assigned to the operation mode in the X direction, the selection area 722 is assigned to the operation mode in the Y direction, and the selection area 723 is assigned to the operation mode in the Z direction. The selection region 724 is assigned to the operation mode in the Rz direction. Thereby, the user can operate the robot 20 in an operation mode assigned to the selected area 711 to 714 or 721 to 724 by touching the selected area.
  Further, for example, an operation mode selection screen 80 shown in FIG. 17 is for a 6-axis robot, and includes a selection unit 81 for each axis system and a selection unit 82 for a hand system. The external shape of the selection parts 81 and 82 is formed in a circle. The inner sides of the circles of the selection units 81 and 82 are equally divided by the number of driving modes of each operation system. In the case of the operation mode selection screen 80 for the 6-axis robot, the inner sides of the circles of the selection units 81 and 82 are equally divided into 6 which are the number of drive modes in each operation system of the 6-axis robot 30. The regions inside the selection units 81 and 82 divided into six equal parts are set as selection regions 811 to 816 for the respective axis systems and selection regions 821 to 826 for the hand systems.
  In this case, in the selection unit 81 of each axis system, the selection area 811 is assigned to the operation mode of the first axis J31, the selection area 812 is assigned to the operation mode of the second axis J32, and the selection area 813 is the third axis J33. The selection area 814 is assigned to the movement aspect of the fourth axis J34, the selection area 815 is assigned to the movement aspect of the fifth axis J35, and the selection area 816 is assigned to the movement aspect of the sixth axis J36. It has been. Further, in the hand system selection unit 82, the selection area 821 is assigned to the operation mode in the X direction, the selection area 822 is assigned to the operation mode in the Y direction, and the selection area 823 is assigned to the operation mode in the Z direction. The selection area 824 is allocated to the operation mode in the Rz direction, the selection area 825 is allocated to the operation mode in the Ry direction, and the selection area 826 is allocated to the operation mode in the Rx direction. As a result, the user can operate the robot 30 in the operation mode assigned to the selected area 811 to 816 or 821 to 826 by touching the selected area.
  In step S32 of FIG. 15, the control unit 45 selects one of the selection regions 711 to 714 and 721 to 724 or one of the selection regions 811 to 816 and 821 to 826 based on the detection result of the operation detection unit 46. To determine whether there has been an operation. When no touch operation is performed on any of the selection areas (NO in step S32), the control unit 45 stands by with the operation mode selection screens 70 and 80 displayed. On the other hand, when there is a touch operation on any selected region (YES in step S32), the control unit 45 proceeds to step S33. Then, when executing step S33, the control unit 45 determines the operation mode of the robots 20 and 30 by manual operation to be the operation mode selected in step S32 by the processing of the operation command generation unit 47. For example, as illustrated in FIG. 18, when the user touches the selection area 711 of the selection unit 71 of each axis system on the operation mode selection screen 70 of the four-axis robot 20, the control unit 45 performs the operation mode of the robot 20. Is determined as an operation mode for driving the first axis J21 of each axis system.
  Next, the control unit 45 executes step S34 in FIG. 15, and, as shown in FIG. 19, the third control graphic 63, the operation display 66, the positive direction button 55, and the negative direction are processed by the display control unit 48. A button 56 is displayed on the touch panel display 42. The third operation graphic 63 has the same configuration as the first operation graphic 61 and the second operation graphic 62, and includes a third bar 631 and a third slider 632. In this case, the third operation graphic 63 is arranged so as to be horizontally long with respect to the touch panel display 42, similarly to the first operation graphic 61. However, the present invention is not limited to this, and the second operation graphic 62 may be arranged so as to be vertically long with respect to the touch panel display 42 or may be arranged in another manner.
  In addition, the operation display 66 indicates the operation mode and the operation direction of the robots 20 and 30 as in the operation display 65 of the first embodiment. The motion display 66 shown in FIG. 19 shows a state in which the motion mode of the robots 20 and 30 is determined to drive the first axis J21, but the motion direction has not yet been determined. In this case, the operation display 66 is displayed as “J21” indicating the driving of the first axis J21 of each axis system.
  The forward direction button 55 corresponds to the movement of the robots 20 and 30 in the forward direction. The negative direction button 56 corresponds to the operation of the robot 20 or 30 in the negative direction. The user moves the third slider 632 back and forth along the third bar 631 while touching the forward direction button 55 to move the robots 20 and 30 in the forward direction in the operation mode determined in step S33. Can be made. In addition, the user reciprocates the third slider 632 along the third bar 631 while touching the negative direction button 56, so that the robots 20 and 30 move in the negative direction in the operation mode determined in step S33. Can be operated.
  That is, in step S35, the control unit 45 determines whether or not a touch operation has been performed on the direction buttons 55 and 56 based on the detection result of the operation detection unit 46. When the touch operation is not performed (NO in step S35), the control unit 45 stands by in the state of FIG. On the other hand, for example, as shown in FIG. 20, when either the positive direction button 55 or the negative direction button 56 is touch-operated, the control unit 45 determines that the touch operation has been performed (YES in step S35). Step S36 is executed.
  In step S36, the control unit 45 executes an operation direction determination process. The control unit 45 determines the movement direction of the robots 20 and 30 as a positive direction if the positive direction button 55 is touch-operated, and the movement direction of the robots 20 and 30 if the negative direction button 56 is touch-operated. Is determined in the negative direction. For example, as shown in FIG. 20, when the operation direction of the first axis J21 of each axis system is selected, when the negative direction button 56 is touch-operated, the operation display 66 displays the first axis of each axis system. “(−)” Indicating an operation in the negative direction is added to “J21” indicating the operation mode of the axis J21. Although not shown in detail, when the operation mode of the first axis J21 of each axis system is selected and the forward direction button 55 is touched, the operation display 66 displays the first axis J21 of each axis system. In this case, “(+)” indicating the operation in the positive direction is added to “J21” indicating the operation mode.
  Thereafter, the controller 45 determines whether or not a drag operation on the third slider 632 of the third operation graphic 63 has been performed in step S37. If no drag operation is detected on the third slider 632 (NO in step S37), the controller 45 waits until the drag operation is performed. Then, when a drag operation on the third slider 632 is detected (YES in step S37), the control unit 45 executes step S22 and subsequent steps in FIG. Thereby, the user can continue to operate the robots 20 and 30 in the operation mode and the operation direction selected by the user by continuing the drag operation on the third operation graphic 63.
  According to this, since the user can manually operate by switching three or more operation modes, it is possible to improve the operability from a viewpoint different from the first embodiment. The selection units 71, 72, 81, and 82 are formed in a circular shape, and the inside of the circle is equally divided according to the number of operation modes of the robots 20 and 30. Each operation mode of the robots 20 and 30 is assigned to an area inside the equally divided circle. According to this, the user can easily recognize which operation mode is assigned to which selection region, and as a result, the operability can be further improved.
(Third embodiment)
Next, a third embodiment will be described with reference to FIGS.
The robot system 10 according to the present embodiment is characterized by a method for determining the operation speed Vr of the robots 20 and 30 by the operation speed determination process. That is, when the movement speed Vr of the robots 20 and 30 is a value that is simply proportional to the absolute value | Vd | of the operation speed Vd of the drag operation, the following problem may occur. In this case, for example, if an abrupt drag operation unintended by the user is input, the abrupt drag operation is directly reflected in the operation speed Vr of the robots 20 and 30. Then, the robots 20 and 30 can operate in a manner not intended by the user. Therefore, in the present embodiment, the operation speed determination process corrects the absolute value | Vd | of the operation speed Vd of the drag operation input by the user by a predetermined method, and the robots 20 and 30 based on the correction value Vdx. Includes a process for determining the operation speed Vr.
  Specifically, the control unit 45 stores the operation speed Vd of the drag operation in the storage area 452 shown in FIG. 3 at a constant sampling period. In the case of this embodiment, the sampling period is set to several to several tens of milliseconds, for example. The storage area 452 can store data of n operation speeds Vd, for example. FIG. 21 shows data of the operation speed Vd stored in the storage area 452 at a certain time. The storage area 452 stores data of n operation speeds Vd over a predetermined sampling period in the past.
  In this case, as shown in FIG. 21, let Vd (i) be the operation speed Vd stored before the i sampling period with respect to the current time. That is, i in FIG. 21 is an arbitrary positive integer, and represents the new or old data of the operation speed Vd stored in the storage area 452. That is, as the value of i increases, the time when the operation speed Vd (i) is acquired is older, and as the value of i decreases, the time when the operation speed Vd (i) is acquired is newer. Yes. In this case, the data of the operation speed Vd (1) when i = 1 is the latest data among the operation speeds Vd (i) stored in the storage area 452.
  The control unit 45 stores the data of the operation speed Vd (i) in the storage area 452 by a so-called first-in first-out method. That is, when acquiring the latest operation speed Vd (i), the control unit 45 stores the latest operation speed Vd (i) in the storage area 452 as the operation speed Vd (1). Then, the control unit 45 lowers Vd (1), Vd (2)... Before one sampling period to Vd (2) |, | Vd (3) | ... and stores them in the storage area 452. . In this way, the control unit 45 updates the data of the operation speed Vd (i) stored in the storage area 452 every sampling cycle.
  Here, the current operation speed Vd (1) is the first operation speed, and the operation speed Vd (2) before the predetermined sampling period, for example, one sampling period before the current is the second operation speed. Note that the second operation speed does not have to be a sampling period adjacent to the first operation speed, that is, continuous with the first operation speed. That is, the second operation speed may be, for example, an operation speed Vd (i) that is several sampling periods away from the first operation speed.
The operation speed determination process includes a process of calculating a correction value Vdx obtained by correcting the absolute value | Vd | of the operation speed Vd of the drag operation and determining the operation speed Vr based on the correction value Vdx. The correction value Vdx is calculated based on the absolute value | Vd (1) | of the first operating speed Vd (1) and the absolute value | Vd (2) | of the second operating speed Vd (2). Specifically, as shown in the following equation (1), the operation speed determination process is performed such that the absolute value | Vd (1) | of the first operation speed Vd (1) is the absolute value of the second operation speed Vd (2). If the value | Vd (2) | is less than ½, the correction value Vdx is set to zero.
In addition, as shown in the following equation (2), the operation speed determination process is performed such that the absolute value | Vd (1) | of the first operation speed Vd (1) is equal to the absolute value | Vd of the second operation speed Vd (2). (2) If it is 1/2 or more of |, the correction value Vdx is calculated based on the following equation (3). In this case, the correction value Vdx is determined from the absolute value | Vd (1) | of the first operating speed Vd (1) to the absolute value | Vd (1) | of the first operating speed Vd (1) and the second operating speed Vd ( The value obtained by subtracting the absolute value of the difference from the absolute value | Vd (2) |
  That is, when executing the operation speed determination process in step S23 of FIG. 5, the control unit 45 calculates the correction value Vdx corrected according to the above-described equations (1) to (3). Then, the control unit 45 determines the operation speed Vr of the robots 20 and 30 by a magnitude corresponding to the correction value Vdx, for example, a value obtained by multiplying the correction value Vdx by a predetermined coefficient.
Here, there are three possible magnitude relationships between the absolute value | Vd (1) | of the first operating speed Vd (1) and the absolute value | Vd (2) | of the second operating speed Vd (2). It is done.
| Vd (1) |> | Vd (2) | ... Condition (1)
| Vd (1) | = | Vd (2) | ... condition (2)
| Vd (1) | <| Vd (2) | ... condition (3)
Further, the absolute value | Vd (2) | of the second operation speed Vd (2) means the absolute value | Vd | of the operation speed Vd of the drag operation that is operated before a predetermined sampling period, that is, immediately before the present. . Therefore, as shown in the above condition (1), the absolute value | Vd (1) | of the first operating speed Vd (1) is greater than the absolute value | Vd (2) | of the second operating speed Vd (2). The larger value means that the absolute value | Vd | of the operation speed Vd of the drag operation is increased, that is, the drag operation is accelerated. In this case, according to the above-described equation (3), the correction value Vdx can be expressed by the following equation (4). That is, in this case, the correction value Vdx is equal to the absolute value | Vd (2) | of the second operating speed Vd (2).
Further, as indicated by the above condition (2), the absolute value | Vd (1) | of the first operating speed Vd (1) and the absolute value | Vd (2) | of the second operating speed Vd (2) are The equal value means that the absolute value | Vd | of the operation speed Vd of the drag operation is not changed, that is, the drag operation is performed at a constant speed. In this case, according to the above-described equation (3), the correction value Vdx can be expressed by the following equation (5). That is, in this case, the correction value Vdx is equal to the absolute value | Vd (1) | of the first operating speed Vd (1).
As indicated by the above condition (3), the absolute value | Vd (1) | of the first operating speed Vd (1) is greater than the absolute value | Vd (2) | of the second operating speed Vd (2). The smaller value means that the absolute value | Vd | of the operation speed Vd of the drag operation is decreasing, that is, the drag operation is decelerating. In this case, the correction value Vdx can be expressed by the following equation (6) based on the above-described equation (3).
  Thus, as shown in the condition (1), the absolute value | Vd (1) | of the first operating speed Vd (1) is greater than the absolute value | Vd (2) | of the second operating speed Vd (2). When the direction is larger, that is, when the drag operation is accelerated, the correction value Vdx is equal to the absolute value | Vd (2) | of the second operation speed Vd (2) according to the equation (4) described above. Further, as shown in the condition (2), when the absolute value | Vd (1) | of the first operating speed Vd (1) is equal to the absolute value | Vd (2) | of the second operating speed Vd (2) That is, when the drag operation is performed at a constant speed, the correction value Vdx is equal to the absolute value | Vd (1) | of the first operation speed Vd (1) according to the above-described equation (5). Therefore, in both cases, the correction value Vdx is 0 or more.
On the other hand, as shown in condition (3), the absolute value | Vd (1) | of the first operating speed Vd (1) is greater than the absolute value | Vd (2) | of the second operating speed Vd (2). When it is small, that is, when the drag operation is decelerated, the correction value Vdx can take a negative value according to the above-described equation (6). Therefore, the control unit 45 sets the correction value Vdx to 0 when the correction value Vdx calculated based on the above-described equation (6) becomes a negative value. The correction value Vdx becomes a negative value because the absolute value | Vd (1) | of the first operating speed Vd (1) is equal to the second operating speed Vd (2) as shown in the following equation (7). This is a case where the absolute value | Vd (2) | That is, rapid deceleration is performed such that the absolute value | Vd (1) | of the first operating speed Vd (1) is less than half of the absolute value | Vd (2) | of the second operating speed Vd (2). In this case, the correction value Vdx can be a negative value in the above equation (6).
  Next, the effects of the above configuration will be described with reference to FIGS. A broken line C1 shown in FIGS. 22 and 23 indicates, in a time series, the absolute value | Vd | of the operation speed Vd of the drag operation when a drag operation of a certain mode is input. A solid line C2 indicates the correction value Vdx calculated based on the absolute value | Vd | indicated by the broken line C1.
  As shown in FIG. 22, in the section where the drag operation is accelerating (hereinafter referred to as the acceleration section), the correction value Vdx is the absolute value of the second operation speed Vd (2) as shown in the above equation (4). Vd (2) | Therefore, in this acceleration section, the correction value Vdx does not exceed the absolute value | Vd (1) | of the first operation speed Vd (1) that is the absolute value | Vd | of the current drag operation speed Vd. . In the section where the drag operation is performed at a constant speed (hereinafter referred to as a constant section), the correction value Vdx is the absolute value | Vd ( 1) | Therefore, even in this fixed interval, the correction value Vdx does not exceed the absolute value | Vd (1) | of the first operation speed Vd (1), which is the absolute value | Vd | of the current operation speed Vd of the drag operation. Absent.
In a section where the drag operation is decelerating (hereinafter referred to as a deceleration section), | Vd (1) | <| Vd (2) |. In this case, based on the above-described equation (6), the relationship between the correction value Vdx and the absolute value | Vd (1) | of the first operating speed Vd (1) is the following equation (8). That is, in this deceleration zone, the correction value Vdx is smaller than the absolute value | Vd (1) | of the first operating speed Vd (1). Accordingly, even in this deceleration zone, the correction value Vdx does not exceed the absolute value | Vd (1) | of the first operation speed Vd (1) which is the absolute value | Vd | of the current operation speed Vd of the drag operation. Absent. In other words, the correction value Vdx does not exceed the absolute value | Vd (1) | of the first operating speed Vd (1) in all the sections of the acceleration section, the constant section, and the deceleration section.
  As described above, according to the present embodiment, the operation speed determination process is performed such that the absolute value | Vd (1) | of the first operation speed Vd (1) is equal to the absolute value | Vd (2) of the second operation speed Vd (2). ) | Is less than ½, the correction value Vdx is set to zero. The operation speed determination process is performed when the absolute value | Vd (1) | of the first operation speed Vd (1) is ½ or more of the absolute value | Vd (2) | of the second operation speed Vd (2). The correction value Vdx is changed from the absolute value | Vd (1) | of the first operating speed Vd (1) to the absolute value | Vd (1) | of the first operating speed Vd (1) and the second operating speed Vd (2 ) Minus the absolute value | Vd (2) |.
  According to this, as shown in FIG. 22, the correction value Vdx is equal to or less than the absolute value | Vd (1) | of the first operating speed Vd (1) in all of the acceleration section, the constant section, and the deceleration section. Become. Therefore, the operating speed Vr of the robots 20 and 30 is not determined based on a value exceeding the absolute value | Vd (1) | of the first operating speed Vd (1) that is the current operating speed Vd. That is, for example, as shown in FIG. 23, even if a sudden drag operation unintended by the user is input, the correction value Vdx is the absolute value | Vd of the first operation speed Vd (1) that is the current operation speed Vd. (1) | Therefore, when the user performs an operation on the touch panel 421 such that the operation speed Vr of the robots 20 and 30 is determined depending on the user's own operation, acceleration at the initial input can be suppressed. Thereby, it is possible to prevent an abrupt drag operation unintended by the user from being reflected on the operation speed Vr of the robot 20 or 30 as it is. Therefore, it is possible to prevent the robots 20 and 30 from operating in a manner not intended by the user, and as a result, safety can be improved.
  Further, since the correction value Vdx is always equal to or less than the absolute value | Vd (1) | of the first operation speed Vd (1), when the robots 20 and 30 are decelerated, the robots 20 and 30 Decelerate faster than Vd decelerates. Therefore, for example, when the user wants to stop the operation of the robots 20 and 30, the user can stop the robots 20 and 30 immediately and is safe. Thus, according to the present embodiment, at the time of acceleration, the acceleration of the robots 20 and 30 can be suppressed with respect to the user's operation speed Vd, and at the time of deceleration, the robot 20, 30 can be decelerated. Therefore, safety is improved both when the robots 20 and 30 are accelerated and decelerated.
(Fourth embodiment)
Next, a fourth embodiment will be described with reference to FIGS.
The robot system 10 according to the present embodiment is also characterized by a method for determining the operation speed Vr of the robots 20 and 30 by the operation speed determination process. That is, at the site where the robots 20 and 30 are handled, it is assumed that oil or dirt adheres to the touch panel 421 of the teaching pendant 40 or the user's finger.
  For example, when oil adheres to the touch panel 421 or the user's finger, the user's finger performing the drag operation becomes easy to slip. If the user's finger slips during the drag operation, the drag operation speed Vd may change abruptly. For example, if dirt adheres to the touch panel 421 or the user's finger, the user's finger performing the drag operation is difficult to slip. Then, a so-called chattering occurs on the finger of the user who performs the drag operation, and the operation speed Vd of the drag operation may change in vibration. Under such circumstances, when the operation speed Vr of the robot 20 or 30 is a value that simply refers to the operation speed Vd of the current drag operation, that is, the absolute value | Vd | of the operation speed Vd is simply proportional. If the value is just a value, the rapid change in the speed of the drag operation or the change in the speed of the vibrational drag operation is directly reflected in the operation speed Vr of the robot 20 or 30. Then, the robots 20 and 30 can operate in a manner not intended by the user.
  Therefore, the robot system 10 of this embodiment includes a storage area 452 that can store the operation speed Vd of the drag operation at a constant sampling period, as in the third embodiment described above. In the operation speed determination process, a moving average value of absolute values | Vd | of a plurality of past operation speeds Vd, for example, n is set as a correction value Vdx, and the operation speeds of the robots 20 and 30 are determined based on the correction value Vdx. Includes processing to determine.
Here, representative examples of the moving average include a simple moving average, a weighted moving average, and an exponential moving average. In this case, a simple moving average correction value Vdx is a simple moving average value VdS, a weighted moving average correction value Vdx is a weighted moving average value VdW, and an exponential moving average correction value Vdx is an exponential moving average value VdE. The simple moving average value VdS, the weighted moving average value VdW, and the exponential moving average value VdE are calculated by the following equations (9) to (12), respectively.
  As shown in the equation (9), the simple moving average value VdS is obtained by summing the absolute values | Vd | of a plurality of past operating speeds Vd in this case, and the total value is the number of operating speeds Vd. The value divided by n. According to this simple moving average value VdS, a sudden speed change of the drag operation speed Vd can be smoothed to some extent. For this reason, even the simple moving average value VdS has some effects such as that the rapid speed change or the vibration speed change of the drag operation is not directly reflected on the operation speed Vr of the robots 20 and 30. However, the simple moving average value VdS tries to return to the actual operation speed Vd that has not been averaged at the moment when a value that causes a rapid speed change is not included in the plurality of operation speeds Vd to be averaged. It fluctuates greatly. Then, although the operation speed Vd of the drag operation is not greatly changed, the simple moving average value VdS is greatly changed. As a result, for example, the operating speed Vr of the robots 20 and 30 may suddenly fluctuate despite the user operating at a constant speed. Then, the operation of the robots 20 and 30 is contrary to the user's intention, which may cause the user to feel uncomfortable or cause the user to be confused.
  Therefore, in the present embodiment, the correction value Vdx is preferably the weighted moving average value VdW or the exponential moving average value VdE rather than the simple moving average value VdS. That is, in the operation speed determination process, the operation speed Vr of the robots 20 and 30 is determined based on the weighted moving average value VdW or the exponential moving average value VdE of the absolute values | Vd | of a plurality of past operation speeds Vd. preferable. For the weighted moving average value VdW and the exponential moving average value VdE, the absolute values | Vd | It is calculated by weighting with a coefficient. In this case, the coefficient in the weighted moving average value VdW is a coefficient that linearly decreases as the past operation speed is reached. Further, the coefficient in the exponential moving average is a coefficient that decreases exponentially as the past operation speed is reached.
  Next, the effects of the above configuration will be described with reference to FIGS. A broken line D1 shown in FIGS. 24 to 27 indicates, in a time series, the absolute value | Vd | of the operation speed Vd of the drag operation when a drag operation of a certain mode is input. A solid line D2 indicates the simple moving average value VdS calculated based on the absolute value | Vd | indicated by the broken line D1. An alternate long and short dash line D3 indicates the weighted moving average value VdW calculated based on the absolute value | Vd | indicated by the broken line D1. A two-dot chain line D4 indicates the exponential moving average value VdE calculated based on the absolute value | Vd | indicated by the broken line D1.
  As shown in FIGS. 25 to 27, the absolute value | Vd | of the operation speed Vd indicated by the broken line D1 changes abruptly at points P1 to P3. In this case, as can be seen from FIGS. 25 to 27, the moving average values VdS, VdW, and VdE suppress the rapid change in the operation speed Vd that occurs at the points P1 to P3, respectively. In addition, points P4 to P6 in FIGS. 25 to 27 are points at which the operation speed Vd at each of the points P1 to P3 is no longer included in the values of the n operation speeds Vd to be averaged, that is, a value that causes a rapid speed change. is there. In this case, the simple moving average value VdS indicated by the solid line D2 shows a relatively large change at each of the points P4 to P6.
  That is, although the weighted moving average value VdW and the exponential moving average value VdE are larger than the simple moving average value VdS immediately after the operation speed Vd is changed abruptly, that is, immediately after the points P1 to P3, It smoothly approaches and follows the absolute value | Vd | of the operation speed Vd without causing a large change. On the other hand, the simple moving average value VdS is smaller than the weighted moving average value VdW and the exponential moving average value VdE immediately after the operation speed Vd is suddenly changed. The simple moving average value VdS changes in parallel with the absolute value | Vd | of the operation speed Vd for a while, and then reaches the points P4 to P6 before the weighted moving average value VdW and the exponential moving average value. Reverses with VdE. The simple moving average value VdS is the absolute value of the operation speed Vd when the value that causes a rapid speed change is not included in the n operation speeds Vd to be averaged, that is, when the points P1 to P3 are reached. It greatly changes so as to approach | Vd |.
  Thus, according to the present embodiment, the control unit 45 determines the operation speed Vr of the robots 20 and 30 based on the moving average value of the absolute values | Vd | of the past plurality of operation speeds Vd. According to this, the operation speed Vd of the drag operation can be averaged, that is, smoothed. Therefore, for example, even if a user's finger slips and a sudden speed change occurs in the drag operation, the robot 20 based on a moving average value obtained by smoothing the rapid speed change, that is, a value obtained by reducing the rapid speed change, Thirty operating speeds Vr can be determined. For example, even if chatter occurs on the user's finger and a vibration speed change occurs in the drag operation, the robot 20 or 30 operates based on the moving average value obtained by smoothing and smoothing the vibration speed change. The speed Vr can be determined. As a result, it is possible to suppress a rapid change in speed and a change in vibration speed of the drag operation from being directly reflected in the operation speed Vr of the robots 20 and 30. As a result, it is possible to prevent the robot from operating in a manner not intended by the user as much as possible, thereby improving safety.
  Further, according to the present embodiment, the control unit 45 operates the operation speed Vr of the robots 20 and 30 based on the weighted moving average value VdW or the exponential moving average value VdE for the absolute value | Vd | of the drag operation speed Vd. To decide. According to this, since the weighted moving average value VdW and the exponential moving average value VdE weight the values to be averaged, a value that causes a rapid speed change is not included in the plurality of operation speeds Vd to be averaged. Even if it is, it shows a smooth change. Therefore, according to this embodiment, it is possible to suppress a phenomenon in which the operation speed Vr of the robots 20 and 30 changes greatly even though the operation speed Vd of the drag operation does not change significantly. As a result, the user can operate the robot without any discomfort as intended.
(Other embodiments)
The embodiments of the present invention are not limited to the embodiments described above and illustrated in the drawings, and can be modified as appropriate without departing from the scope of the invention. The embodiment of the present invention can be modified or expanded as follows, for example.
In each of the above embodiments, the touch panel 421 and the display 422 are integrally configured as the touch panel display 42. However, the touch panel and the display may be separately separated from each other. In this case, a direction figure indicating a specific linear direction can be provided on the touch panel in advance by printing or the like.
  Further, the robot to be operated by the teaching pendant 40 according to the above embodiment is not limited to the 4-axis robot 20 or the 6-axis robot 30. For example, a 4-axis robot 20 or a 6-axis robot 30 may be installed on a so-called XY stage (2-axis stage). The robot that is the operation target of the teaching pendant 40 includes, for example, a linear robot having one drive axis and an orthogonal robot having a plurality of drive axes. In this case, the drive shaft is not limited to a mechanical rotary shaft, and includes a method of driving by a linear motor, for example.
  In the drawings, 10 is a robot system, 20 is a 4-axis horizontal articulated robot (robot), 30 is a 6-axis vertical articulated robot (robot), 40 is a teaching pendant (robot operating device), and 42 is a touch panel display. , 421 is a touch panel, 422 is a display, 452 is a storage area, 46 is an operation detection unit, 47 is an operation command generation unit, 48 is a display control unit, 50 is a direction graphic, 51 is a first direction graphic (direction graphic), 52 Is a second direction figure (direction figure), 53 is a circle figure (direction figure), 61 is a first operation figure (operation figure), 611 is a first bar (bar), 612 is a first slider (slider), and 62 is The second operation graphic (operation graphic), 621 is the second bar (bar), 622 is the second slider (slider), 63 is the third operation graphic (operation graphic), and 631 is the third. Chromatography (bar), 632 denotes a third slider (slider).

Claims (10)

  1. A touch panel that receives input of a touch operation and a drag operation from a user;
    An operation detection unit capable of detecting the touch operation and the drag operation on the touch panel;
    An operation command generation unit that generates an operation command for operating the robot based on the detection result of the operation detection unit,
    The operation command generator is
    An operation direction determination process for determining an operation direction of the robot;
    When the operation detection unit detects a drag operation in a positive or negative direction in a specific linear direction with respect to the touch panel after the operation direction determination process is performed, the operation direction of the robot is determined whether the operation direction of the drag operation is positive or negative. An operation speed determination process for determining an operation speed for operating the robot in the operation direction determined in the operation direction determination process based on the absolute value of the operation speed of the drag operation without affecting the direction. It can be carried out,
    Robot operating device.
  2. The movement direction determination process determines the movement direction of the robot as a positive direction when the operation direction immediately after the start of the drag operation is a positive direction in the specific linear direction, and the operation direction immediately after the start of the drag operation. Including a process of determining the direction of movement of the robot as a negative direction when is a negative direction in the specific linear direction,
    The robot operation device according to claim 1.
  3. The specific linear direction includes a first direction that is an arbitrary linear direction on the touch panel, and a second direction that is a linear direction orthogonal to the first direction.
    The operation command generation unit sets the operation mode of the robot based on the drive axis of the robot or a combination of drive axes when the operation direction of the drag operation detected by the operation detection unit is the first direction. When the operation direction of the drag operation is the second direction, an operation mode determination process for determining the operation mode of the robot as the second operation mode can be performed.
    The robot operating device according to claim 1 or 2.
  4. A display capable of displaying shapes,
    A display control unit for controlling the display content of the display,
    The display control unit performs a direction graphic display process for displaying, on the display, a direction graphic indicating the specific linear direction with reference to a touch position of the touch operation when the operation detection unit detects the touch operation. be able to,
    The robot operating device according to any one of claims 1 to 3.
  5. A display capable of displaying shapes,
    A display control unit for controlling the display content of the display,
    When the operation detection unit detects the drag operation in the specific linear direction, the display control unit causes the display to display an operation graphic whose form changes with the movement of the current position of the drag operation. Operation graphic display processing can be performed.
    The robot operating device according to any one of claims 1 to 4.
  6. The operation figure is
    A linearly formed bar extending in the specific linear direction;
    A slider that is movable along the bar along with the drag operation and that indicates a current position of the drag operation on the bar;
    The robot operation device according to claim 5.
  7. A storage area capable of storing the operation speed of the drag operation at a constant sampling period;
    The operation speed determination process includes:
    Calculating a correction value obtained by correcting the absolute value of the operation speed of the drag operation, and determining the operation speed based on the correction value;
    In the case where the operation speed of the current drag operation is the first operation speed and the operation speed of the drag operation before a predetermined sampling period is the second operation speed with respect to the current time,
    When the absolute value of the first operating speed is less than half of the absolute value of the second operating speed, the correction value is set to 0,
    When the absolute value of the first operating speed is ½ or more of the absolute value of the second operating speed, the correction value is changed from the absolute value of the first operating speed to the absolute value of the first operating speed. And the value obtained by subtracting the absolute value of the difference between the absolute value of the second operating speed and
    The robot operating device according to any one of claims 1 to 6.
  8. A storage area capable of storing the operation speed of the drag operation at a constant sampling period;
    The operation speed determination process includes a process of determining the operation speed of the robot based on a moving average value of absolute values of the plurality of past operation speeds.
    The robot operating device according to any one of claims 1 to 6.
  9. The moving average value is a weighted moving average value or an exponential moving average value.
    The robot operation device according to claim 8.
  10. A touch panel that receives input of a touch operation and a drag operation from a user;
    An operation detection unit capable of detecting the touch operation and the drag operation on the touch panel;
    An operation command generation unit that generates an operation command for operating the robot based on the detection result of the operation detection unit;
    A robot operation program to be executed by a computer incorporated in a robot operation device comprising:
    In the computer,
    An operation direction determination process for determining an operation direction of the robot;
    When the operation detection unit detects a drag operation in a positive or negative direction in a specific linear direction with respect to the touch panel after the operation direction determination process is performed, the operation direction of the robot is determined whether the operation direction of the drag operation is positive or negative. An operation speed determination process for determining an operation speed for operating the robot in the operation direction determined by the operation direction determination process based on the absolute value of the operation speed of the drag operation without affecting the direction ;
    Robot operation program that can be executed.
JP2015243152A 2015-03-19 2015-12-14 Robot operation device and robot operation program Active JP6601201B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015056504 2015-03-19
JP2015056504 2015-03-19

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US15/075,876 US20160274787A1 (en) 2015-03-19 2016-03-21 Apparatus for operating robots

Publications (2)

Publication Number Publication Date
JP2016175174A JP2016175174A (en) 2016-10-06
JP6601201B2 true JP6601201B2 (en) 2019-11-06

Family

ID=57070768

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015243152A Active JP6601201B2 (en) 2015-03-19 2015-12-14 Robot operation device and robot operation program

Country Status (1)

Country Link
JP (1) JP6601201B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018176320A (en) * 2017-04-07 2018-11-15 株式会社ディスコ Processing device

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3675004B2 (en) * 1995-10-04 2005-07-27 株式会社安川電機 Robot control device
JPH09152856A (en) * 1995-11-28 1997-06-10 Fuji Facom Corp Screen scrolling controller
JPH11262883A (en) * 1998-03-19 1999-09-28 Denso Corp Manual operation device for robot
JP2004139321A (en) * 2002-10-17 2004-05-13 Fujitsu Ten Ltd Scroll bar operation device
JP2006350602A (en) * 2005-06-15 2006-12-28 Yushin Precision Equipment Co Ltd Operation terminal equipment
US8451238B2 (en) * 2009-09-02 2013-05-28 Amazon Technologies, Inc. Touch-screen user interface
JP5547457B2 (en) * 2009-11-20 2014-07-16 旭光電機株式会社 Motion input device
JP5671318B2 (en) * 2010-12-07 2015-02-18 任天堂株式会社 Information processing program, information processing apparatus, information processing system, and information processing method
JP5776544B2 (en) * 2011-12-28 2015-09-09 トヨタ自動車株式会社 Robot control method, robot control device, and robot
DE102012102749A1 (en) * 2012-03-29 2013-10-02 Reis Group Holding Gmbh & Co. Kg Device and method for operating an industrial robot
CN104736969B (en) * 2012-10-16 2016-11-02 三菱电机株式会社 information display device and display information operation method
JP6142564B2 (en) * 2013-02-18 2017-06-07 コニカミノルタ株式会社 Information display device and display control program
JP6297784B2 (en) * 2013-03-21 2018-03-20 株式会社椿本チエイン Manipulator device

Also Published As

Publication number Publication date
JP2016175174A (en) 2016-10-06

Similar Documents

Publication Publication Date Title
US9857962B2 (en) Robot operation apparatus and robot operation program product
US10048851B2 (en) Apparatus for operating robots
TWI654055B (en) Robot operating device and robot operating program
JP3841439B2 (en) Robot jog feed method
US10001912B2 (en) Robot operation apparatus, robot system, and robot operation program
KR102042115B1 (en) Method for generating robot operation program, and device for generating robot operation program
EP2660014A1 (en) Control device and teaching method for seven-shaft multi-joint robot
JP2019188530A (en) Simulation device of robot
JP6683671B2 (en) Robot controller for setting the jog coordinate system
US20160274787A1 (en) Apparatus for operating robots
JP2021100788A (en) Robot operation device, and robot operation program
JP6379902B2 (en) Robot operation device, robot system, and robot operation program
JP6601201B2 (en) Robot operation device and robot operation program
US10654171B2 (en) Operation device for operating robot, robot system, and operation method
US10086517B2 (en) Apparatus and method for operating robots
JP6710919B2 (en) Robot operating device
JP6642054B2 (en) Robot operation device and robot operation program
JP6803650B2 (en) Robot operation device, robot operation program
JP6435940B2 (en) Robot operation device and robot operation program
JP2016175132A (en) Robot operation device and robot operation method
JP6379921B2 (en) Robot operation device, robot system, and robot operation program
JP2018200278A (en) Operation method of position measurement device
JP2016068237A (en) Robot operation device, robot system, and robot operation program
KR20180007569A (en) 3-dimensional mouse using rotary sensor
JP2015217477A (en) Operation input device and robot system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180618

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190507

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190426

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190708

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190910

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190923

R150 Certificate of patent or registration of utility model

Ref document number: 6601201

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150