WO2023276149A1 - 最適化支援装置 - Google Patents

最適化支援装置 Download PDF

Info

Publication number
WO2023276149A1
WO2023276149A1 PCT/JP2021/025158 JP2021025158W WO2023276149A1 WO 2023276149 A1 WO2023276149 A1 WO 2023276149A1 JP 2021025158 W JP2021025158 W JP 2021025158W WO 2023276149 A1 WO2023276149 A1 WO 2023276149A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
position data
support device
operation program
program
Prior art date
Application number
PCT/JP2021/025158
Other languages
English (en)
French (fr)
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
Application filed by ファナック株式会社 filed Critical ファナック株式会社
Priority to CN202180099926.9A priority Critical patent/CN117561146A/zh
Priority to PCT/JP2021/025158 priority patent/WO2023276149A1/ja
Priority to DE112021007579.9T priority patent/DE112021007579T5/de
Priority to JP2023531325A priority patent/JPWO2023276149A1/ja
Priority to TW111121023A priority patent/TW202302297A/zh
Publication of WO2023276149A1 publication Critical patent/WO2023276149A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems

Definitions

  • the present invention relates to an optimization support device.
  • Cartesian coordinate values or axis values are used as position data when creating a robot operation program.
  • Each axis value specifies the value of each axis of the robot.
  • the orthogonal coordinate value specifies the coordinate value (x, y, z) from the origin of the orthogonal coordinate in space to the origin of the orthogonal coordinate system on the tool side, and the X axis, Y axis, Z axis of the orthogonal coordinate system Specifies the rotation angles w, p, r of the tool coordinate system about the axis.
  • Patent Document 1 motion simulation is performed so that all combinations of multiple hand posture candidates for each position data are covered, but the hand posture candidates include hand postures that the robot cannot reach. Therefore, Patent Document 1 has a problem that motion simulation is performed even for a hand posture candidate that does not move. To optimize a motion program by selecting suitable hand posture candidates and combining them to perform a motion simulation without changing the placement or position coordinates of the robot for a motion program that has already been created and can be executed to the end. is desired.
  • the robot in executing the motion simulation, without changing the placement and position coordinates of the robot in the already created motion program that can be executed to the end, the robot can reach the designated position data. It is desired to optimize an operation program by easily setting candidates and simulating the operation.
  • One aspect of the optimization support device of the present disclosure is an optimization support device that optimizes an operation program of the robot in consideration of the form of the robot, and includes an operation trajectory of the robot used in the operation program of the robot.
  • a position data acquisition unit for acquiring a plurality of position data of coordinate values in an orthogonal coordinate system taught according to the above;
  • a posture provisional designation unit that excludes, from among the plurality of shapes, shapes that the robot cannot reach;
  • an operation program selection unit that simulates each of the plurality of operation programs thus obtained, calculates an evaluation index value, and selects an operation program with the smallest calculated evaluation index value as an optimum operation program.
  • the robot in executing the motion simulation, the robot reaches each specified position data without changing the placement and position coordinates of the robot with respect to an already created motion program that can be executed to the end.
  • the operation program can be optimized by easily setting candidates for possible forms and simulating the operation.
  • FIG. 1 is a functional block diagram showing a functional configuration example of a robot system according to an embodiment
  • FIG. It is a figure which shows an example of the modelized robot.
  • It is a functional block diagram which shows the functional structural example of an optimization support apparatus.
  • It is a figure which shows an example of an operation program.
  • FIG. 10 is a diagram showing an example of position data candidates with different joint axis arrangements for one position data
  • FIG. 10 is a diagram showing an example of robot forms that are different even with the same Cartesian coordinate values
  • FIG. 10 is a diagram showing an example of robot forms that are different even with the same Cartesian coordinate values
  • It is a figure which shows an example of deletion of position data.
  • It is a figure which shows an example of the singularity of the form of a robot.
  • FIG. 4 is a diagram showing an example of an operation program before update and an operation program after update; 4 is a flowchart for explaining optimization processing of the optimization support device;
  • FIG. 1 is a functional block diagram showing a functional configuration example of a robot system according to one embodiment.
  • the robot system 1 has a robot 10, a robot controller 20, and an optimization support device 30.
  • the robot 10, robot control device 20, and optimization support device 30 may be directly connected to each other via a connection interface (not shown).
  • the robot 10, the robot control device 20, and the optimization support device 30 may be interconnected via a network such as a LAN (Local Area Network).
  • the robot 10, the robot control device 20, and the optimization support device 30 may have a communication unit (not shown) for mutual communication through such connection.
  • the optimization support device 30 may be included in the robot control device 20 as described later.
  • Robot controller 20 is a device known to those skilled in the art for controlling the motion of robot 10 .
  • the robot control device 20 for example, is taught by the user operating a teaching operation panel (not shown) included in the robot control device 20, and the orthogonal coordinate values of the position of the tip point of the robot 10 in the world coordinate system to be described later.
  • An operation program generated based on each of (x, y, z, w, p, r) is output to the optimization support device 30, which will be described later.
  • the robot control device 20 acquires the optimized motion program from the optimization support device 30 .
  • the robot control device 20 generates a control signal by executing an optimized operation program, and outputs the generated control signal to the robot 10 to operate the robot 10 .
  • FIG. 2 is a schematic diagram showing an example of the robot 10.
  • the robot 10 is a 6-axis vertical articulated robot, and has 6 joints J1 to J6 and an arm portion 12 connecting each of the joints J1 to J6.
  • the robot 10 drives movable members such as the arm section 12 by driving servo motors (not shown) arranged at each of the joints J1 to J6.
  • An end effector T such as a grasping hand is attached to the distal end of the movable member of the robot 10, for example, the distal end of the joint J6.
  • FIG. 1 the robot 10 is a 6-axis vertical articulated robot, and has 6 joints J1 to J6 and an arm portion 12 connecting each of the joints J1 to J6.
  • the robot 10 drives movable members such as the arm section 12 by driving servo motors (not shown) arranged at each of the joints J1 to J6.
  • An end effector T such as a grasping hand is attached to the distal end of the movable member of the robot
  • the robot 10 has a world coordinate system ⁇ w of a three-dimensional Cartesian coordinate system fixed in space, and a tool coordinate system of three-dimensional Cartesian coordinates set on the flange at the tip of the joint J6 of the robot 10. and ⁇ t.
  • the robot controller 20 can control the position of the tip of the robot 10 to which the end effector T is attached using the position (orthogonal coordinate values) defined by the world coordinate system ⁇ w.
  • the robot 10 is a 6-axis vertical articulated robot, it may be a vertical articulated robot other than 6-axis, a horizontal articulated robot, a parallel link robot, or the like.
  • FIG. 3 is a functional block diagram showing a functional configuration example of the optimization support device 30. As shown in FIG. As shown in FIG. 3, it has a control section 31, an input section 32, a display section 33, and a storage section .
  • the control unit 31 also has a position data acquisition unit 310 , a posture provisional designation unit 311 , an operation program generation unit 312 , and an operation program selection unit 313 .
  • the input unit 32 is, for example, a keyboard or a touch panel arranged on the display unit 33 to be described later. ) is accepted from the user.
  • the display unit 33 is, for example, a liquid crystal display or the like, and displays an operation program and position data acquired by a position data acquisition unit 310 (to be described later), and a form ( Posture), an operation program selected by an operation program selection unit 313 to be described later, and the like are displayed.
  • the storage unit 34 is a ROM (Read Only Memory), a HDD (Hard Disk Drive), or the like, and may store position data 341 together with various control programs.
  • the position data 341 is orthogonal coordinate values (x, y, z, w, p, r ) is stored as position data.
  • the control unit 31 includes a CPU (Central Processing Unit), a ROM, a RAM (Random Access Memory), a CMOS (Complementary Metal-Oxide-Semiconductor) memory, etc., which are configured to communicate with each other via a bus. , are known to those skilled in the art.
  • the CPU is a processor that controls the optimization support device 30 as a whole.
  • the CPU reads the system program and application program stored in the ROM through the bus, and controls the entire optimization support device 30 according to the system program and application program.
  • the control unit 31 is configured to implement the functions of the position data acquisition unit 310, the posture provisional designation unit 311, the operation program generation unit 312, and the operation program selection unit 313.
  • CMOS memory is backed up by a battery (not shown), and configured as a non-volatile memory that retains the memory state even when the power of the optimization support device 30 is turned off.
  • the position data acquisition unit 310 acquires, for example, a plurality of position data of coordinate values of an orthogonal coordinate system (world coordinate system ⁇ w) taught along the motion trajectory of the robot 10 used in the motion program of the robot 10 .
  • the position data acquisition unit 310 acquires, for example, an already created motion program that can be executed to the end from the robot control device 20, and the coordinate values of the world coordinate system ⁇ w ( x, y, z, w, p, r).
  • FIG. 4 is a diagram showing an example of an operating program. As shown in FIG. 4, the operation program includes coordinate values (x , y, z, w, p, r).
  • the position data acquisition unit 310 extracts and acquires "position data A”, “position data B”, “position data X”, etc. from the operation program of FIG.
  • the position data acquisition unit 310 may store the acquired plurality of position data in the position data 341 .
  • the position data acquisition unit 310 may directly acquire a plurality of position data, which are coordinate values (x, y, z, w, p, r) of the world coordinate system ⁇ w, from the robot control device 20 .
  • the posture provisional designation unit 311 provisionally designates a plurality of postures that the robot 10 can take in each of the plurality of position data acquired by the position data acquisition unit 310, and determines whether the robot 10 cannot reach one of the plurality of provisionally designated postures. Exclude bad posture. Specifically, the posture provisional designation unit 311 acquires the coordinate values (x , y, z, w, p, r), the form (posture) of the robot 10 (displacement of the joints J1 to J6) when moving the end point (end effector T) of the robot 10 is calculated by known inverse kinematics calculation. Ask from
  • FIG. 5 is a diagram showing an example of position data candidates A1 to A8 with different axis arrangements of joints J5, J3, and J1 for one position data. Position data candidates A1 to A8 shown in FIG.
  • the axis arrangement indicates on which side the control points of the arms and wrists of the robot 10 are located with respect to the control surfaces of the joints J1, J3, and J5.
  • the number of morphology (or position data) candidates is eight or more, for example, by considering the number of rotations of the joints J4, J5, and J6.
  • 6A and 6B are diagrams showing an example of the form of the robot 10 that differs even with the same Cartesian coordinate values. 6A shows the form of the robot 10 when the position data is (N, U, T), and FIG. 6B shows the form of the robot 10 when the position data is (N, D, T).
  • the posture provisional designation unit 311 provisionally designates a plurality of form (orientation) candidates, such as eight, obtained for each of the plurality of position data by inverse kinematics calculation, and temporarily designates the plurality of form (orientation) candidates.
  • the candidates illegitimate forms that the robot 10 cannot reach are excluded from the candidates.
  • the posture provisional designation unit 311 excludes a form that exceeds the stroke limit, a form that interferes with an obstacle, a form that becomes a singular point, and the like.
  • the posture provisional designation unit 311 excludes the position data candidates A2, A4, and A6 to A8 from the position data candidates A1 to A8 for the "position data A" shown in FIG.
  • the position data that exceeds the stroke limit is position data that exceeds the stroke limit value
  • the posture provisional designation unit 311 may compare the position data with the stroke limit value specific to the robot 10 for determination. Further, regarding the position data that interferes with an interfering object, the posture provisional designation unit 311 may determine whether or not the CAD data of the robot 10 interferes with other CAD data such as peripheral devices and workpieces. Further, the posture provisional designation unit 311 may determine the position data to be the singular point by comparing the provisionally designated form and the singular point unique to the robot 10 .
  • 8A and 8B are diagrams showing an example of singularity in the form of the robot 10. FIG. The form (posture) of the robot 10 in FIG.
  • FIG. 8A is a singular point when the joint J1 and the joint J6 are aligned on a straight line.
  • the form (orientation) of the robot 10 in FIG. 8B is a singular point when the joint J4 and the joint J6 are aligned on a straight line.
  • the motion program generation unit 312 generates a plurality of motion programs by combining position data candidates of forms (postures) that have not been excluded from each of the plurality of position data. Specifically, as shown in FIG. 9 , the motion program generation unit 312 causes the position provisional designation unit 311 to set the “position data A”, “position data B”, “position data X”, etc., which are not excluded but remain. A plurality of operation programs are generated by combining candidates for the position data (morphology) obtained.
  • the operation program selection unit 313 simulates each of the plurality of generated operation programs to calculate the evaluation index value, and selects the operation program with the smallest calculated evaluation index value as the optimum operation program. Specifically, for example, the operating program selection unit 313 interpolates and executes the simulation for each of the generated operating programs as necessary. If the execution of the motion program is not completed in the simulation, the motion program selection unit 313 selects incorrect position data that the robot 10 cannot reach in the execution of the motion program, such as stroke limit, singularity, interference with obstacles, and the like. Excludes and deletes the operation program whose execution is not completed because it passes through the following orthogonal coordinate values.
  • the operation program selection unit 313 calculates the cycle time of the robot 10 as an evaluation index value from the simulation of each of the remaining operation programs.
  • the operation program selection unit 313 selects the operation program with the smallest cycle time among the calculated cycle times as the optimum operation program.
  • FIG. 10 is a diagram showing an example of an operation program before update and an operation program after update.
  • the operation program selection unit 313 selects, for example, position data candidate A1, position An operation program that is a combination of data candidate B3, position data candidate X3, etc. is selected.
  • the operation program selection unit 313 then outputs the selected (optimized) operation program to the robot controller 20 .
  • the operation program selection unit 313 may store the selected (optimized) operation program in the storage unit 34 .
  • the operation program selection unit 313 has calculated the cycle time of the robot 10 as the evaluation index value, it is not limited to this.
  • the operation program selection unit 313 may calculate the power consumption of the robot 10 for each operation program as an evaluation index value by executing a simulation for each operation program.
  • the operation program selection unit 313 may select the operation program that minimizes the amount of power consumption among the calculated amounts of power consumption as the optimum operation program.
  • FIG. 11 is a flowchart for explaining optimization processing of the optimization support device 30 . The flow shown here is executed each time the specification of the evaluation index value to be optimized is received from the user.
  • step S11 the input unit 32 receives specification of evaluation index values for the cycle time and power consumption to be optimized from the user.
  • step S ⁇ b>12 the position data acquisition unit 310 acquires the motion program to be optimized from the robot controller 20 .
  • step S13 the position data acquisition unit 310 acquires a plurality of position data of coordinate values (x, y, z, w, p, r) of the world coordinate system ⁇ w used in the operation program acquired in step S12. .
  • step S14 the posture provisional designation unit 311 provisionally designates candidates for a plurality of forms (position data) that the robot 10 can take for each position data acquired in step S13.
  • step S15 the posture provisional designation unit 311 excludes forms (position data) that the robot 10 cannot reach from among the plurality of form (position data) candidates provisionally designated for each position data in step S14.
  • step S16 the operation program generator 312 generates a plurality of operation programs from combinations of the remaining configuration (position data) candidates.
  • step S17 the operating program selection unit 313 executes a simulation of each of the plurality of operating programs generated in step S16.
  • step S18 the operation program selection unit 313 determines whether or not there is an operation program whose execution has not been completed when the simulation of the operation program is executed. If there is an operation program whose execution has not been completed, the process proceeds to step S19. On the other hand, if there is no operation program whose execution has not been completed, the process proceeds to step S20.
  • step S19 the operation program selection unit 313 excludes and deletes the operation program whose execution has not been completed.
  • step S20 the operation program selection unit 313 calculates the evaluation index value specified in step S11 of the robot 10 from the simulation of each operation program, and selects the operation program with the smallest evaluation index value among the calculated evaluation index values. Select as the best operating program. The operation program selection unit 313 then outputs the selected (optimized) operation program to the robot controller 20 .
  • the optimization support apparatus 30 can execute a motion simulation without changing the placement and position coordinates of the robot in an already created motion program that can be executed to the end.
  • a motion program can be optimized by easily setting candidate forms that the robot can reach for each position data and performing motion simulation.
  • the optimization support device 30 is not limited to the above-described embodiment, and includes modifications, improvements, etc. within a range that can achieve the purpose.
  • the optimization support device 30 acquires from the robot control device 20 a motion program that has already been created and is executable to the end, but is not limited to this.
  • the optimization support device 30 is taught by the user operating a teaching operation panel (not shown) of the robot control device 20, and the position of the end point of the robot 10 in the world coordinate system ⁇ w may be acquired from the robot controller 20 .
  • the robot control device 20 can acquire an operation program optimized from the beginning from the optimization support device 30 .
  • the optimization support device 30 is a device different from the robot control device 20, but it is not limited to this.
  • the optimization support device 30 may be included in the robot control device 20.
  • the optimization support device 30 deletes an operation program whose execution has not been completed, but the present invention is not limited to this.
  • the optimization support device 30 can operate on unreachable incorrect position data of the robot 10 being used even if it is an operation program whose execution is not completed, and has the shortest cycle time or the lowest power consumption. By replacing the position data with the position data of , an optimal program that can complete the execution to the end may be generated.
  • Each function included in the optimization support device 30 can be realized by hardware, software, or a combination thereof.
  • “implemented by software” means implemented by a computer reading and executing a program.
  • each component included in the optimization support device 30 can be realized by hardware including electronic circuits, software, or a combination thereof.
  • Non-transitory computer-readable media include various types of tangible storage media.
  • Examples of non-transitory computer-readable media include magnetic recording media (e.g., flexible discs, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical discs), CD-ROMs (Read Only Memory), CD- R, CD-R/W, semiconductor memory (eg, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM).
  • the program may also be supplied to the computer on various types of transitory computer readable medium. Examples of transitory computer-readable media include electrical signals, optical signals, and electromagnetic waves. Transitory computer-readable media can deliver the program to the computer via wired communication channels, such as wires and optical fibers, or wireless communication channels.
  • steps of writing a program recorded on a recording medium include not only processes that are executed chronologically in order, but also processes that are executed in parallel or individually, even if they are not necessarily processed chronologically. is also included.
  • optimization support device of the present disclosure can take various embodiments having the following configurations.
  • the optimization support device 30 of the present disclosure is an optimization support device that optimizes the motion program of the robot 10 in consideration of the form of the robot 10, and is used in the motion program of the robot 10.
  • a position data acquisition unit 310 that acquires a plurality of position data of coordinate values of an orthogonal coordinate system taught along the motion trajectory;
  • a posture provisional designation unit 311 that excludes shapes that the robot 10 cannot reach from among the designated multiple shapes, and an operation program generation unit 312 that combines the shapes remaining in each of the plurality of position data to generate a plurality of motion programs.
  • an operation program selection unit 313 that simulates each of the plurality of generated operation programs to calculate an evaluation index value, and selects an operation program with the smallest calculated evaluation index value as an optimum operation program.
  • this optimization support device 30 in executing a motion simulation, for each designated position data, without changing the robot layout and position coordinates for an already created motion program that can be executed to the end. It is possible to optimize the motion program by easily setting candidate shapes that the robot can reach by using the robot and simulating the motion.
  • the evaluation index value may be the cycle time of the robot 10 .
  • the optimization support device 30 can generate an optimum operation program with the shortest cycle time.
  • the evaluation index value may be the power consumption of the robot 10 .
  • the optimization support device 30 can generate an optimum operation program that minimizes power consumption.
  • the posture provisional designation unit 311 makes interference near stroke limits, singular points, and obstacles unreachable for the robot 10. may be excluded. By doing so, the optimization support device 30 can avoid generation of unnecessary motion programs and execution of unnecessary motion program simulations by preliminarily excluding forms that the robot 10 cannot reach, reducing the processing time to can be shortened.
  • the operation program selection unit 313 deletes an operation program whose execution is not completed when each of the plurality of operation programs is simulated. You may By doing so, the optimization support device 30 can avoid selecting an operation program whose operation is not completed.

Abstract

動作シミュレーションの実行にあたり、既に作成された最後まで実行可能な動作プログラムに対してロボットの配置や位置座標を変更することなく、指定された各位置データに対してロボットが到達可能な形態の候補を容易に設定し、動作シミュレーションすることで、動作プログラムを最適化すること。 最適化支援装置は、ロボットの動作プログラムから直交座標系の座標値の複数の位置データを取得する位置データ取得部と、複数の位置データそれぞれにおいて、ロボットが取り得る複数の形態を仮指定し、ロボットが到達不可能な形態を除外する姿勢仮指定部と、複数の位置データそれぞれにおいて残った形態を組み合わせて複数の動作プログラムを生成する動作プログラム生成部と、複数の動作プログラムそれぞれをシミュレーションして評価指標値を算出し、評価指標値が最小の動作プログラムを最適な動作プログラムとして選択する動作プログラム選択部と、を備える。

Description

最適化支援装置
 本発明は、最適化支援装置に関する。
 ロボットの動作プログラム作成時、位置データとして直交座標値もしくは各軸値を使用する。各軸値はロボットの各軸の値を指定する。一方、直交座標値は空間上の直交座標の原点から、ツール側の直交座標系の原点までの座標値(x,y,z)を指定するとともに、直交座標系のX軸、Y軸、Z軸回りに対するツール座標系の回転角w,p,rを指定する。ただし、ロボットの直交座標値(x,y,z,w,p,r)の条件を満たす形態(ロボット本体の姿勢)は幾つか存在する。このため、直交座標値(x,y,z,w,p,r)のみでは、1つの姿勢を指示することができないため、形態を決定するために各軸の軸配置と回転数とを指定する必要があり、手間がかかる。
 また、直交座標系を用いて作成されるロボットの動作プログラムの中には、動作プログラムを実行しロボットを既定の位置まで移動させることはできるが、形態を考慮していないために改善余地が残された動作プログラムが生成されてしまうことがある。
 この点、作業者及びロボットの位置及び姿勢が指定された位置データそれぞれにおける、作業者及びロボットそれぞれの手先姿勢の複数候補全ての組み合わせについて動作シミュレーションを行い、作業者とロボットとの協調による生産作業の所要時間を算出して、所要時間が最も短い作業者の位置とロボットの位置との組み合せを決定することにより、作業者とロボットとの協調作業による生産システムの立上げ時間を短縮する技術が知られている。例えば、特許文献1参照。
特許2010-211726号公報
 特許文献1は、位置データそれぞれにおける複数の手先姿勢候補全ての組み合わせが網羅されるように動作シミュレーションを行うが、当該手先姿勢候補の中には、ロボットが到達不可能な手先姿勢まで含まれる。このため、特許文献1は、動作しない手先姿勢候補の動作シミュレーションまで行ってしまうという問題がある。既に作成された最後まで実行可能な動作プログラムに対してロボットの配置や位置座標を変更することなく、適切な手先姿勢候補を選択し、組み合わせて動作シミュレーションを行うことで動作プログラムを最適化することが望まれている。
 そこで、動作シミュレーションの実行にあたり、既に作成された最後まで実行可能な動作プログラムに対してロボットの配置や位置座標を変更することなく、指定された各位置データに対してロボットが到達可能な形態の候補を容易に設定し、動作シミュレーションすることで、動作プログラムを最適化することが望まれている。
 本開示の最適化支援装置の一態様は、ロボットの形態を考慮して前記ロボットの動作プログラムを最適化する最適化支援装置であって、前記ロボットの動作プログラムで使用される前記ロボットの動作軌跡に沿って教示された直交座標系の座標値の複数の位置データを取得する位置データ取得部と、前記複数の位置データそれぞれにおいて、前記ロボットが取り得る複数の形態を仮指定し、仮指定した前記複数の形態のうち前記ロボットが到達不可能な形態を除外する姿勢仮指定部と、前記複数の位置データそれぞれにおいて残った形態を組み合わせて複数の動作プログラムを生成する動作プログラム生成部と、生成された前記複数の動作プログラムそれぞれをシミュレーションして評価指標値を算出し、算出した前記評価指標値が最小の動作プログラムを最適な動作プログラムとして選択する動作プログラム選択部と、を備える。
 一態様によれば、動作シミュレーションの実行にあたり、既に作成された最後まで実行可能な動作プログラムに対してロボットの配置や位置座標を変更することなく、指定された各位置データに対してロボットが到達可能な形態の候補を容易に設定し、動作シミュレーションすることで、動作プログラムを最適化することができる。
一実施形態に係るロボットシステムの機能的構成例を示す機能ブロック図である。 模式化したロボットの一例を示す図である。 最適化支援装置の機能的構成例を示す機能ブロック図である。 動作プログラムの一例を示す図である。 1つの位置データに対して関節の軸配置が異なる位置データ候補の一例を示す図である。 同じ直交座標値でも異なるロボットの形態の一例を示す図である。 同じ直交座標値でも異なるロボットの形態の一例を示す図である。 位置データの削除の一例を示す図である。 ロボットの形態の特異点の一例を示す図である。 ロボットの形態の特異点の一例を示す図である。 位置データの組み合わせの一例を示す図である。 更新前の動作プログラムと更新後の動作プログラムとの一例を示す図である。 最適化支援装置の最適化処理について説明するフローチャートである。
 以下、一実施形態について図面を用いて説明する。
<一実施形態>
 図1は、一実施形態に係るロボットシステムの機能的構成例を示す機能ブロック図である。
 図1に示すように、ロボットシステム1は、ロボット10、ロボット制御装置20、及び最適化支援装置30を有する。
 ロボット10、ロボット制御装置20、及び最適化支援装置30は、図示しない接続インタフェースを介して互いに直接接続されてもよい。なお、ロボット10、ロボット制御装置20、及び最適化支援装置30は、LAN(Local Area Network)等のネットワークを介して相互に接続されていてもよい。この場合、ロボット10、ロボット制御装置20、及び最適化支援装置30は、かかる接続によって相互に通信を行うための図示しない通信部を備えてもよい。
 また、最適化支援装置30は、後述するように、ロボット制御装置20に含まれてもよい。
<ロボット制御装置20>
 ロボット制御装置20は、ロボット10の動作を制御するための当業者にとって公知の装置である。ロボット制御装置20は、例えば、ユーザがロボット制御装置20に含まれる教示操作盤(図示しない)を操作することにより教示された、後述するワールド座標系におけるロボット10の先端点の位置の直交座標値(x,y,z,w,p,r)それぞれに基づいて生成された動作プログラムを後述する最適化支援装置30に出力する。そして、ロボット制御装置20は、最適化された動作プログラムを最適化支援装置30から取得する。ロボット制御装置20は、最適化された動作プログラムを実行することで制御信号を生成し、生成した制御信号をロボット10に対して出力することにより、ロボット10を動作させる。
<ロボット10>
 図2は、模式化したロボット10の一例を示す図である。
 ロボット10は、例えば、図2に示すように、6軸の垂直多関節ロボットであり、6つの関節J1~J6と、関節J1~J6の各々を連結するアーム部12と、を有する。ロボット10は、ロボット制御装置20からの制御信号に基づいて、関節J1~J6の各々に配置される図示しないサーボモータを駆動することにより、アーム部12等の可動部材を駆動する。また、ロボット10の可動部材の先端部、例えば、関節J6の先端部には、把持ハンド等のエンドエフェクタTが取り付けられる。
 ロボット10は、図2に示すように、空間上に固定された3次元直交座標系のワールド座標系Σwと、ロボット10の関節J6の先端のフランジに設定された3次元直交座標のツール座標系Σtと、を有する。ロボット制御装置20は、ワールド座標系Σwで定義される位置(直交座標値)を用いて、エンドエフェクタTが取付けられたロボット10の先端部の位置を制御することができる。
 なお、ロボット10は、6軸の垂直多関節ロボットとしたが、6軸以外の垂直多関節ロボットでもよく、水平多関節ロボットやパラレルリンクロボット等でもよい。
<最適化支援装置30>
 最適化支援装置30は、当業者にとって公知のコンピュータ装置である。
 図3は、最適化支援装置30の機能的構成例を示す機能ブロック図である。
 図3に示すように、制御部31、入力部32、表示部33、及び記憶部34を有する。また、制御部31は、位置データ取得部310、姿勢仮指定部311、動作プログラム生成部312、及び動作プログラム選択部313を有する。
<入力部32>
 入力部32は、例えば、キーボードや、後述する表示部33に配置されたタッチパネル等であり、ロボット10の動作プログラムを最適化するにあたり最適化したい評価指標値(例えば、サイクルタイムや消費電力量等)の指定をユーザから受け付ける。
<表示部33>
 表示部33は、例えば、液晶ディスプレイ等であり、後述する位置データ取得部310により取得された動作プログラムや位置データ、後述する姿勢仮指定部311により仮指定されたロボット(図示しない)の形態(姿勢)、後述する動作プログラム選択部313により選択された動作プログラム等を表示する。
<記憶部34>
 記憶部34は、ROM(Read Only Memory)やHDD(Hard Disk Drive)等であり、各種の制御用プログラムとともに、位置データ341を記憶してもよい。
 位置データ341は、後述する位置データ取得部310により取得された動作プログラムに設定されたワールド座標系Σwにおけるロボット10の先端点の位置の直交座標値(x,y,z,w,p,r)を位置データとして格納する。
<制御部31>
 制御部31は、CPU(Central Processing Unit)、ROM、RAM(Random Access Memory)、CMOS(Complementary Metal-Oxide-Semiconductor)メモリ等を有し、これらはバスを介して相互に通信可能に構成される、当業者にとって公知のものである。
 CPUは最適化支援装置30を全体的に制御するプロセッサである。CPUは、ROMに格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、システムプログラム及びアプリケーションプログラムに従って最適化支援装置30全体を制御する。これにより、図3に示すように、制御部31が、位置データ取得部310、姿勢仮指定部311、動作プログラム生成部312、及び動作プログラム選択部313の機能を実現するように構成される。RAMには一時的な計算データや表示データ等の各種データが格納される。また、CMOSメモリは図示しないバッテリでバックアップされ、最適化支援装置30の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。
<位置データ取得部310>
 位置データ取得部310は、例えば、ロボット10の動作プログラムで使用されるロボット10の動作軌跡に沿って教示された直交座標系(ワールド座標系Σw)の座標値の複数の位置データを取得する。
 具体的には、位置データ取得部310は、例えば、既に作成された最後まで実行可能な動作プログラムをロボット制御装置20から取得し、取得した動作プログラムで使用されるワールド座標系Σwの座標値(x,y,z,w,p,r)である複数の位置データを取得する。
 図4は、動作プログラムの一例を示す図である。
 図4に示すように、動作プログラムは、「位置データA」、「位置データB」、「位置データX」等のロボット10の動作軌跡に沿って教示されたワールド座標系Σwの座標値(x,y,z,w,p,r)を含む。位置データ取得部310は、図4の動作プログラムから「位置データA」、「位置データB」、「位置データX」等を抽出し取得する。位置データ取得部310は、取得した複数の位置データを位置データ341に記憶してもよい。
 なお、位置データ取得部310は、ワールド座標系Σwの座標値(x,y,z,w,p,r)である複数の位置データをロボット制御装置20から直接取得するようにしてもよい。
<姿勢仮指定部311>
 姿勢仮指定部311は、位置データ取得部310により取得された複数の位置データそれぞれにおいて、ロボット10が取り得る複数の姿勢を仮指定し、仮指定した複数の姿勢のうちロボット10が到達不可能な姿勢を除外する。
 具体的には、姿勢仮指定部311は、位置データ取得部310により取得された「位置データA」、「位置データB」、「位置データX」等それぞれのワールド座標系Σwの座標値(x,y,z,w,p,r)に、ロボット10の先端点(エンドエフェクタT)を移動させるときのロボット10の形態(姿勢)(関節J1~J6の変位)を公知の逆運動学計算から求める。
 しかしながら、逆運動学計算により求まるロボット10の先端点(エンドエフェクタT)が座標値(x,y,z,w,p,r)となるロボット10の形態(関節J1~J6の変位)は、無数に存在する。例えば、関節J5、J3、J1それぞれの軸配置だけでも、「位置データA」、「位置データB」、「位置データX」等それぞれにおいて「手首の上下」、「腕の上下」、「腕の前後」の8通りの組み合わせの候補があることが知られている。
 図5は、1つの位置データに対して関節J5、J3、J1の軸配置が異なる位置データ候補A1~A8の一例を示す図である。
 図5に示す位置データ候補A1~A8は、例えば、関節J5、J3、J1の軸配置が(F,U,T)、(F、U,B)、(F,D,T)、(F,D,B)、(N,U,T)、(N,U,B)、(N,D,T)、(N,D,B)となる位置データである。なお、「F」は手首が上(Flip)を示し、「N」は手首が下(Noflip)を示す。また、「U」は腕が上(Up)を示し、「D」は腕が下(Down)を示す。また、「T」は腕が前(FronT)を示し、「B」は腕が後ろ(Back)を示す。
 なお、軸配置は、各関節J1、J3、J5における制御面に対しロボット10の腕や手首の制御点がどちらにあるかを示す。この場合、形態(又は位置データ)の候補の数は、例えば、関節J4、J5、J6の回転数等も考慮することで8通り以上の数となる。
 図6A及び図6Bは、同じ直交座標値でも異なるロボット10の形態の一例を示す図である。なお、図6Aは、位置データが(N,U,T)の場合のロボット10の形態を示し、図6Bは、位置データが(N,D,T)の場合のロボット10の形態を示す。
 次に、姿勢仮指定部311は、逆運動学計算により複数の位置データそれぞれにおいて求めた8通り等の複数の形態(姿勢)の候補を仮指定し、仮指定した複数の形態(姿勢)の候補のうち、ロボット10が到達不可能な不正な形態を候補から除外する。
 具体的には、姿勢仮指定部311は、ストロークリミットを超えた形態、障害物に干渉する形態、特異点となる形態等を除外する。例えば、姿勢仮指定部311は、図7に示すように、図5に示した「位置データA」に対する位置データ候補A1~A8のうち、位置データ候補A2、A4、A6~A8を除外する。
 なお、ストロークリミットを超えた位置データとは、ストロークリミット値を超えている位置データであり、姿勢仮指定部311は、ロボット10固有のストロークリミット値と比較して判断するようにしてもよい。
 また、干渉物に干渉する位置データについて、姿勢仮指定部311は、ロボット10のCADと、周辺機器やワーク等の他のCADデータが干渉するか否かを判断するようにしてもよい。
 また、特異点となる位置データについて、姿勢仮指定部311は、仮指定した形態とロボット10固有の特異点とを比較して判断してもよい。
 図8A及び図8Bは、ロボット10の形態の特異点の一例を示す図である。
 図8Aのロボット10の形態(姿勢)は、関節J1と関節J6とが一直線上に並んだときの特異点である。一方、図8Bのロボット10の形態(姿勢)は、関節J4と関節J6とが一直線上に並んだときの特異点である。
<動作プログラム生成部312>
 動作プログラム生成部312は、複数の位置データそれぞれにおいて除外されずに残った形態(姿勢)の位置データ候補を組み合わせて複数の動作プログラムを生成する。
 具体的には、動作プログラム生成部312は、図9に示すように、姿勢仮指定部311により「位置データA」、「位置データB」、「位置データX」等それぞれにおいて除外されずに残った位置データ(形態)の候補を組み合わせて複数の動作プログラムを生成する。
<動作プログラム選択部313>
 動作プログラム選択部313は、生成された複数の動作プログラムそれぞれをシミュレーションして評価指標値を算出し、算出した評価指標値が最小の動作プログラムを最適な動作プログラムとして選択する。
 具体的には、動作プログラム選択部313は、例えば、生成された動作プログラムそれぞれについて必要に応じて補間してシミュレーションを実行する。動作プログラム選択部313は、当該シミュレーションで動作プログラムの実行が完了しない場合、当該動作プログラムの実行においてロボット10の到達不可能な不正な位置データ、すなわちストロークリミット、特異点、障害物に干渉等となる直交座標値を通過することから、実行が完了しない動作プログラムを除外し削除する。
 そして、動作プログラム選択部313は、残りの動作プログラムそれぞれのシミュレーションからロボット10のサイクルタイムを評価指標値として算出する。動作プログラム選択部313は、算出したサイクルタイムのうちサイクルタイムが最小となる動作プログラムを最適な動作プログラムとして選択する。
 図10は、更新前の動作プログラムと更新後の動作プログラムとの一例を示す図である。
 図10に示すように、動作プログラム選択部313は、図9に示した位置データの組み合わせから生成された動作プログラムのうち、サイクルタイムが最小となる動作プログラムとして、例えば、位置データ候補A1、位置データ候補B3、位置データ候補X3等の組み合わせの動作プログラムを選択する。
 そして、動作プログラム選択部313は、選択(最適化)した動作プログラムをロボット制御装置20に出力する。また、動作プログラム選択部313は、選択(最適化)した動作プログラムを記憶部34に記憶してもよい。
 なお、動作プログラム選択部313は、評価指標値としてロボット10のサイクルタイムを算出したが、これに限定されない。例えば、動作プログラム選択部313は、動作プログラムそれぞれのシミュレーションを実行することで、動作プログラム毎にロボット10の消費電力量を評価指標値として算出するようにしてもよい。動作プログラム選択部313は、算出した消費電力量のうち消費電力量が最小となる動作プログラムを最適な動作プログラムとして選択するようにしてもよい。
<最適化支援装置30の最適化処理>
 次に、本実施形態に係る最適化支援装置30の最適化処理に係る動作について説明する。
 図11は、最適化支援装置30の最適化処理について説明するフローチャートである。ここで示すフローは、ユーザより最適化したい評価指標値の指定を受け付ける度に実行される。
 ステップS11において、入力部32は、ユーザより最適化したいサイクルタイムや消費電力量の評価指標値の指定を受け付ける。
 ステップS12において、位置データ取得部310は、ロボット制御装置20から最適化する動作プログラムを取得する。
 ステップS13において、位置データ取得部310は、ステップS12で取得した動作プログラムで使用されるワールド座標系Σwの座標値(x,y,z,w,p,r)の複数の位置データを取得する。
 ステップS14において、姿勢仮指定部311は、ステップS13で取得された位置データ毎にロボット10が取り得る複数の形態(位置データ)の候補を仮指定する。
 ステップS15において、姿勢仮指定部311は、ステップS14で位置データ毎に仮指定した複数の形態(位置データ)の候補のうちロボット10が到達不可能な形態(位置データ)を除外する。
 ステップS16において、動作プログラム生成部312は、残った形態(位置データ)の候補の組み合わせから複数の動作プログラムを生成する。
 ステップS17において、動作プログラム選択部313は、ステップS16で生成された複数の動作プログラムそれぞれのシミュレーションを実行する。
 ステップS18において、動作プログラム選択部313は、動作プログラムのシミュレーションを実行したときに、実行が完了しない動作プログラムがあるか否かを判定する。実行が完了しない動作プログラムがある場合、処理はステップS19に進む。一方、実行が完了しない動作プログラムがない場合、処理はステップS20に進む。
 ステップS19において、動作プログラム選択部313は、実行が完了しない動作プログラムを除外し削除する。
 ステップS20において、動作プログラム選択部313は、動作プログラムそれぞれのシミュレーションからロボット10のステップS11で指定された評価指標値を算出し、算出した評価指標値のうち評価指標値が最小となる動作プログラムを最適な動作プログラムとして選択する。そして、動作プログラム選択部313は、選択(最適化)した動作プログラムをロボット制御装置20に出力する。
 以上により、一実施形態に係る最適化支援装置30は、動作シミュレーションの実行にあたり、既に作成された最後まで実行可能な動作プログラムに対してロボットの配置や位置座標を変更することなく、指定された各位置データに対してロボットが到達可能な形態の候補を容易に設定し、動作シミュレーションすることで、動作プログラムを最適化することができる。
 以上、一実施形態について説明したが、最適化支援装置30は、上述の実施形態に限定されるものではなく、目的を達成できる範囲での変形、改良等を含む。
<変形例1>
 一実施形態では、最適化支援装置30は、既に作成された最後まで実行可能な動作プログラムをロボット制御装置20から取得したが、これに限定されない。例えば、最適化支援装置30は、動作プログラムに替えて、ユーザがロボット制御装置20の教示操作盤(図示しない)を操作することにより教示された、ワールド座標系Σwにおけるロボット10の先端点の位置の直交座標値(x,y,z,w,p,r)をロボット制御装置20から取得してもよい。
 そうすることで、ロボット制御装置20は、最初から最適化された動作プログラムを最適化支援装置30から取得することができる。
<変形例2>
 また例えば、上述の実施形態では、1つの位置データに対して関節J5、J3、J1それぞれの軸配置から「手首の上下」、「腕の上下」、「腕の前後」の8(=2)通りの組み合わせの候補を例示したが、これに限定されない。例えば、ロボット10の構成に応じて当業者は例示以外の候補を適宜作成してもよい。
<変形例3>
 また例えば、上述の実施形態では、最適化支援装置30は、ロボット制御装置20と異なる装置としたが、これに限定されない。例えば、最適化支援装置30は、ロボット制御装置20に含まれてもよい。
<変形例4>
 また例えば、上述の実施形態では、最適化支援装置30は、実行が完了しない動作プログラムを削除したが、これに限定されない。例えば、最適化支援装置30は、実行が完了しない動作プログラムであっても、使用されているロボット10の到達不可能な不正な位置データに対して動作可能かつサイクルタイムが最短もしくは消費電力が最小となる位置データに置き換えることで、実行を最後まで完了可能な最適なプログラムを生成するようにしてもよい。
 なお、一実施形態に係る最適化支援装置30に含まれる各機能は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
 また、最適化支援装置30に含まれる各構成部は、電子回路等を含むハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。
 プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(Tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(Transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は、無線通信路を介して、プログラムをコンピュータに供給できる。
 なお、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
 以上を換言すると、本開示の最適化支援装置は、次のような構成を有する各種各様の実施形態を取ることができる。
 (1) 本開示の最適化支援装置30は、ロボット10の形態を考慮してロボット10の動作プログラムを最適化する最適化支援装置であって、ロボット10の動作プログラムで使用されるロボット10の動作軌跡に沿って教示された直交座標系の座標値の複数の位置データを取得する位置データ取得部310と、複数の位置データそれぞれにおいて、ロボット10が取り得る複数の形態を仮指定し、仮指定した複数の形態のうちロボット10が到達不可能な形態を除外する姿勢仮指定部311と、複数の位置データそれぞれにおいて残った形態を組み合わせて複数の動作プログラムを生成する動作プログラム生成部312と、生成された複数の動作プログラムそれぞれをシミュレーションして評価指標値を算出し、算出した評価指標値が最小の動作プログラムを最適な動作プログラムとして選択する動作プログラム選択部313と、を備える。
 この最適化支援装置30によれば、動作シミュレーションの実行にあたり、既に作成された最後まで実行可能な動作プログラムに対してロボットの配置や位置座標を変更することなく、指定された各位置データに対してロボットが到達可能な形態の候補を容易に設定し、動作シミュレーションすることで、動作プログラムを最適化することができる。
 (2) (1)に記載の最適化支援装置30において、評価指標値は、ロボット10のサイクルタイムであってもよい。
 そうすることで、最適化支援装置30は、サイクルタイムが最短となる最適な動作プログラムを生成することができる。
 (3) (1)に記載の最適化支援装置30において、評価指標値は、ロボット10の消費電力量であってもよい。
 そうすることで、最適化支援装置30は、消費電力量が最小となる最適な動作プログラムを生成することができる。
 (4) (1)から(3)のいずれか記載の最適化支援装置30において、姿勢仮指定部311は、ストロークリミット近傍、特異点、障害物に干渉をロボット10が到達不可能な形態として除外してもよい。
 そうすることで、最適化支援装置30は、ロボット10が到達不可能な形態を予め除外することにより、不要な動作プログラムの生成、及び不要な動作プログラムのシミュレーションの実行を回避でき、処理時間を短縮できる。
 (5) (1)から(4)のいずれか記載の最適化支援装置30において、動作プログラム選択部313は、複数の動作プログラムそれぞれをシミュレーションしたときに動作プログラムの実行が完了しない動作プログラムを削除してもよい。
 そうすることで、最適化支援装置30は、動作が完了しない動作プログラムが選択されることを回避することができる。
 1 ロボットシステム
 10 ロボット
 20 ロボット制御装置
 30 最適化支援装置
 31 制御部
 310 位置データ取得部
 311 姿勢仮指定部
 312 動作プログラム生成部
 313 動作プログラム選択部

Claims (5)

  1.  ロボットの形態を考慮して前記ロボットの動作プログラムを最適化する最適化支援装置であって、
     前記ロボットの動作プログラムで使用される前記ロボットの動作軌跡に沿って教示された直交座標系の座標値の複数の位置データを取得する位置データ取得部と、
     前記複数の位置データそれぞれにおいて、前記ロボットが取り得る複数の形態を仮指定し、仮指定した前記複数の形態のうち前記ロボットが到達不可能な形態を除外する姿勢仮指定部と、
     前記複数の位置データそれぞれにおいて残った形態を組み合わせて複数の動作プログラムを生成する動作プログラム生成部と、
     生成された前記複数の動作プログラムそれぞれをシミュレーションして評価指標値を算出し、算出した前記評価指標値が最小の動作プログラムを最適な動作プログラムとして選択する動作プログラム選択部と、
     を備える最適化支援装置。
  2.  前記評価指標値は、前記ロボットのサイクルタイムである、請求項1に記載の最適化支援装置。
  3.  前記評価指標値は、前記ロボットの消費電力量である、請求項1に記載の最適化支援装置。
  4.  前記姿勢仮指定部は、ストロークリミット近傍、特異点、障害物に干渉を前記ロボットが到達不可能な形態として除外する、請求項1から請求項3のいずれか1項に記載の最適化支援装置。
  5.  前記動作プログラム選択部は、前記複数の動作プログラムそれぞれをシミュレーションしたときに動作プログラムの実行が完了しない動作プログラムを削除する、請求項1から請求項4のいずれか1項に記載の最適化支援装置。
PCT/JP2021/025158 2021-07-02 2021-07-02 最適化支援装置 WO2023276149A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202180099926.9A CN117561146A (zh) 2021-07-02 2021-07-02 优化辅助装置
PCT/JP2021/025158 WO2023276149A1 (ja) 2021-07-02 2021-07-02 最適化支援装置
DE112021007579.9T DE112021007579T5 (de) 2021-07-02 2021-07-02 Optimierungsassistenzvorrichtung
JP2023531325A JPWO2023276149A1 (ja) 2021-07-02 2021-07-02
TW111121023A TW202302297A (zh) 2021-07-02 2022-06-07 最佳化支援裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/025158 WO2023276149A1 (ja) 2021-07-02 2021-07-02 最適化支援装置

Publications (1)

Publication Number Publication Date
WO2023276149A1 true WO2023276149A1 (ja) 2023-01-05

Family

ID=84690981

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/025158 WO2023276149A1 (ja) 2021-07-02 2021-07-02 最適化支援装置

Country Status (5)

Country Link
JP (1) JPWO2023276149A1 (ja)
CN (1) CN117561146A (ja)
DE (1) DE112021007579T5 (ja)
TW (1) TW202302297A (ja)
WO (1) WO2023276149A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09128024A (ja) * 1995-10-27 1997-05-16 Fanuc Ltd 冗長軸を有するロボットの動作プログラムの最適化方法
JP2003103481A (ja) * 2001-09-28 2003-04-08 Honda Motor Co Ltd 多関節ロボットの姿勢適正化方法および適正化装置
JP2005352643A (ja) * 2004-06-09 2005-12-22 Kawasaki Heavy Ind Ltd ロボット動作計画方法、ロボット動作計画装置、プログラムおよび記録媒体
JP2007203380A (ja) * 2006-01-30 2007-08-16 Kawasaki Heavy Ind Ltd ロボットの教示支援装置
JP2009134352A (ja) * 2007-11-28 2009-06-18 Toyota Motor Corp ロボットの動作経路作成装置及びロボットの動作経路作成方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5502348B2 (ja) 2009-03-12 2014-05-28 ファナック株式会社 シミュレーション方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09128024A (ja) * 1995-10-27 1997-05-16 Fanuc Ltd 冗長軸を有するロボットの動作プログラムの最適化方法
JP2003103481A (ja) * 2001-09-28 2003-04-08 Honda Motor Co Ltd 多関節ロボットの姿勢適正化方法および適正化装置
JP2005352643A (ja) * 2004-06-09 2005-12-22 Kawasaki Heavy Ind Ltd ロボット動作計画方法、ロボット動作計画装置、プログラムおよび記録媒体
JP2007203380A (ja) * 2006-01-30 2007-08-16 Kawasaki Heavy Ind Ltd ロボットの教示支援装置
JP2009134352A (ja) * 2007-11-28 2009-06-18 Toyota Motor Corp ロボットの動作経路作成装置及びロボットの動作経路作成方法

Also Published As

Publication number Publication date
TW202302297A (zh) 2023-01-16
CN117561146A (zh) 2024-02-13
DE112021007579T5 (de) 2024-02-29
JPWO2023276149A1 (ja) 2023-01-05

Similar Documents

Publication Publication Date Title
US10525594B2 (en) Teaching system, robot system, and teaching method
JP6576255B2 (ja) ロボット軌道生成方法、ロボット軌道生成装置、および製造方法
US20190240833A1 (en) Trajectory generating method, and trajectory generating apparatus
EP1777600B1 (en) Offline teaching apparatus for robot
JP5686775B2 (ja) ロボット制御インターフェイスの動的最適化のための方法
JP5606816B2 (ja) 溶接ロボットのティーチング装置およびティーチング方法
US9186792B2 (en) Teaching system, teaching method and robot system
US20150151431A1 (en) Robot simulator, robot teaching device, and robot teaching method
US10534876B2 (en) Simulation device and simulation method that carry out simulation of operation of robot system, and recording medium that records computer program
KR20150044812A (ko) 티칭 시스템 및 티칭 방법
CN111791228B (zh) 编程辅助装置、机器人系统和编程辅助方法
JP2024040344A (ja) 情報処理方法、情報処理装置、プログラム、記録媒体、生産システム、ロボットシステム、物品の製造方法
JP2015066668A (ja) ロボットの教示点調整方法、ロボットの設置位置算出方法、ロボットシステム、プログラム及び記録媒体
JP6750909B2 (ja) ロボット軌道生成方法、ロボット軌道生成装置、および製造方法
EP3638463A1 (en) Method and system for teaching a robot in reaching a given target in robot manufacturing
JP2015174184A (ja) 制御装置
WO2023276149A1 (ja) 最適化支援装置
JP6862849B2 (ja) 演算装置、演算方法、演算プログラムおよびロボットシステム
JP2020175471A (ja) 情報処理装置、情報処理方法、プログラム、及び記録媒体
JPH1083208A (ja) ロボット間相対位置演算機構
JP2012106316A (ja) 干渉検出方法及び干渉検出装置
JPH07223181A (ja) マニピュレータの干渉チェック装置
JP7232704B2 (ja) ロボットプログラム評価装置、ロボットプログラム評価方法及びロボットプログラム評価プログラム
JP7276359B2 (ja) 動作指令生成装置、機構制御システム、コンピュータプログラム、動作指令生成方法及び機構制御方法
US20220355478A1 (en) Robot slider position setting device, robot slider position setting method, and robot slider position setting program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21948453

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023531325

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 112021007579

Country of ref document: DE