WO2023149507A1 - 加工機械、加工機械の制御装置および加工機械の制御方法 - Google Patents

加工機械、加工機械の制御装置および加工機械の制御方法 Download PDF

Info

Publication number
WO2023149507A1
WO2023149507A1 PCT/JP2023/003410 JP2023003410W WO2023149507A1 WO 2023149507 A1 WO2023149507 A1 WO 2023149507A1 JP 2023003410 W JP2023003410 W JP 2023003410W WO 2023149507 A1 WO2023149507 A1 WO 2023149507A1
Authority
WO
WIPO (PCT)
Prior art keywords
depth
work
cut
tool
target shape
Prior art date
Application number
PCT/JP2023/003410
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 株式会社小松製作所
Publication of WO2023149507A1 publication Critical patent/WO2023149507A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q17/00Arrangements for observing, indicating or measuring on machine tools
    • B23Q17/22Arrangements for observing, indicating or measuring on machine tools for indicating or measuring existing or desired position of tool or work
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q17/00Arrangements for observing, indicating or measuring on machine tools
    • B23Q17/24Arrangements for observing, indicating or measuring on machine tools using optics or electromagnetic waves
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B24GRINDING; POLISHING
    • B24BMACHINES, DEVICES, OR PROCESSES FOR GRINDING OR POLISHING; DRESSING OR CONDITIONING OF ABRADING SURFACES; FEEDING OF GRINDING, POLISHING, OR LAPPING AGENTS
    • B24B49/00Measuring or gauging equipment for controlling the feed movement of the grinding tool or work; Arrangements of indicating or measuring equipment, e.g. for indicating the start of the grinding operation
    • B24B49/12Measuring or gauging equipment for controlling the feed movement of the grinding tool or work; Arrangements of indicating or measuring equipment, e.g. for indicating the start of the grinding operation involving optical means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4097Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by using design data to control NC machines, e.g. CAD/CAM

Definitions

  • the present disclosure relates to a processing machine, a control device for the processing machine, and a control method for the processing machine.
  • This application claims priority to Japanese Patent Application No. 2022-015574 filed in Japan on February 3, 2022, the contents of which are incorporated herein.
  • the control device of the processing machine reads the processing program used for processing the workpiece, and drives the processing machine by executing the program to cut the workpiece into the desired shape.
  • Japanese Patent Application Laid-Open No. 2002-200001 discloses a technique for superimposing and displaying a machining trajectory by a machining program on a camera image of a workpiece.
  • An object of the present disclosure is to provide a processing machine capable of processing a workpiece without preparing a processing program, a control device for the processing machine, and a control method for the processing machine.
  • a processing machine includes a tool for machining a workpiece, a depth camera that is installed so that the workpiece is within an imaging range and captures the depth of a subject, and a depth captured by the depth camera.
  • a position measuring unit that calculates the three-dimensional position of the surface of the work based on the image; and the work and the target shape based on the three-dimensional data representing the target shape of the work and the three-dimensional position of the work.
  • a depth-of-cut determination unit that determines depths of cut at each of a plurality of points on the surface of the workpiece based on the difference in line-of-sight direction between the and a part.
  • the workpiece can be processed without preparing a processing program.
  • FIG. 1 is a perspective view of a processing machine according to a first embodiment
  • FIG. 1 is a perspective view showing the configuration of a robot arm according to a first embodiment
  • FIG. 1 is a schematic block diagram showing the configuration of a control device according to a first embodiment
  • FIG. It is an example of a display screen according to the first embodiment.
  • 4 is a flowchart (part 1) showing a method of controlling a processing machine by the control device according to the first embodiment
  • 4 is a flowchart (part 2) showing a method of controlling the processing machine by the control device according to the first embodiment
  • 1 is a schematic block diagram showing a configuration of a computer according to at least one embodiment
  • FIG. 1 is a perspective view of a processing machine according to the first embodiment.
  • a processing machine 1 includes a table 10 , a jig 20 , a plurality of stereo cameras 30 , a robot arm 40 , a tool 60 and a control device 70 .
  • processing machine 1 may be, for example, a machining center.
  • the table 10 is the base of the processing machine 1.
  • a jig 20 is provided on the table 10 .
  • the jig 20 supports the workpiece W by sandwiching it.
  • the stereo camera 30 captures a depth image of the subject included in the imaging range.
  • Stereo camera 30 is an example of a depth camera.
  • the stereo camera 30 is provided so that the setting area of the work W is included in the imaging range.
  • the stereo camera 30 is installed, for example, on the inner wall of the processing machine 1 so as to look down on the table 10 . It is preferable that the stereo camera 30 be fixed with a jig made of a material that does not easily expand thermally so that the relative position of the stereo camera 30 with respect to the table 10 does not change.
  • a plurality of stereo cameras 30 are arranged so as to compensate for blind spots.
  • the processing machine 1 is equipped with four stereo cameras 30 and can capture depth images from four directions.
  • one or more stereo cameras 30 may be provided. Further, the depth image may be measured from two directions or one direction instead of four directions.
  • the stereo cameras 30 are attached to the four corners of the ceiling of a substantially rectangular parallelepiped housing that covers the processing machine 1 . Note that the stereo camera 30 may be fixed to the processing machine 1 as long as it is fixed to the processing machine 1, so it may be fixed to, for example, four pillars instead of the housing.
  • FIG. 2 is a perspective view showing the configuration of the robot arm 40 according to the first embodiment.
  • Robot arm 40 movably supports tool 60 .
  • a tool 60 is supported at the tip of the robot arm 40 .
  • the tool 60 cuts the work W.
  • the tool 60 may grind the workpiece W.
  • Robotic arm 40 may be, for example, a 6-axis vertical articulated robot.
  • the robot arm 40 includes a base 41 , a first arm 42 , a second arm 43 , a third arm 44 , a fourth arm 45 , a fifth arm 46 and a spindle 47 .
  • the base 41 is rotatably fixed to the table 10 around a first axis O1 extending in the vertical direction.
  • the first arm 42 is rotatably connected around a second axis O2 orthogonal to the first axis O1.
  • the second arm 43 is rotatably connected to the first arm 42 about a third axis O3 parallel to the second axis O2.
  • the third arm 44 is rotatably connected around a fourth axis O4 parallel to the third axis O3.
  • the fourth arm 45 is rotatably connected to the third arm 44 around the fifth axis O5 extending in the axial direction of the third arm 44 .
  • the fifth arm 46 is rotatably connected to the fourth arm 45 about a sixth axis O6 perpendicular to the fifth axis O5.
  • a spindle 47 is provided at the tip of the fifth arm 46 and rotatably supports the tool 60 .
  • the robot arm 40 includes a first motor 51, a second motor 52, a third motor 53, a fourth motor 54, a fifth motor 55, a sixth motor 56, and a seventh motor 57.
  • the first motor 51 rotates the base 41 .
  • the second motor 52 rotates the first arm 42 with respect to the base 41 .
  • a third motor 53 rotates the second arm 43 with respect to the first arm 42 .
  • a fourth motor 54 rotates the third arm 44 with respect to the second arm 43 .
  • a fifth motor 55 rotates the fourth arm 45 with respect to the third arm 44 .
  • a sixth motor 56 rotates the fifth arm 46 with respect to the fourth arm 45 .
  • a seventh motor 57 rotates the spindle 47 .
  • Each motor is provided with an encoder (not shown) to measure the rotation angle of each arm.
  • the robot arm 40 is provided with a driver 58.
  • the driver 58 drives each motor of the robot arm 40 according to control instructions.
  • the driver 58 calculates the position and orientation of the tip of the spindle 47 based on the rotation angle measured by the encoder.
  • Driver 58 specifies the position and orientation of spindle 47 in the base coordinate system and the tool coordinate system.
  • the base coordinate system is a coordinate system whose origin is the center of the bottom surface of the base 41, and is represented by the Zb axis extending in the vertical direction and the Xb axis and the Yb axis orthogonal to the Zb axis.
  • the tool coordinate system is a coordinate system whose origin is the tip of the spindle 47, and is represented by the Zt-axis extending in the axial direction of the spindle 47 and the Xt-axis and Yt-axis perpendicular to the Zt-axis.
  • the driver 58 receives the control instruction indicating the amount of movement related to the translation or rotation of the coordinate axes, the driver 58 adjusts the angle of each motor to move the spindle 47 by the amount of movement indicated by the control instruction along the coordinate axis indicated by the control instruction. Calculate and control each motor.
  • the driver 58 receives a control instruction indicating the coordinate system and the position and orientation in the coordinate system, the driver 58 calculates the angle of each motor for moving the spindle 47 to the position indicated by the control instruction, and controls each motor. .
  • the control device 70 controls the robot arm 40 based on the depth image captured by the stereo camera 30 and the position of the tip of the robot arm 40 .
  • FIG. 3 is a schematic block diagram showing the configuration of the control device 70 according to the first embodiment.
  • the control device 70 includes a data acquisition unit 71, a storage unit 72, a position measurement unit 73, an alignment unit 74, a display control unit 75, a difference calculation unit 76, a cutting amount determination unit 77, a path generation unit 78, and a tool control unit 79. , and a correction unit 80 .
  • the data acquisition unit 71 acquires the depth image from the stereo camera 30 and acquires the measured value of the angle of each arm from the robot arm 40 .
  • a depth image is obtained by associating each pixel constituting an image captured by one of the main cameras of the stereo camera 30 with a depth indicating the distance from the camera.
  • the storage unit 72 stores tool data that is three-dimensional data representing the shape of the tool 60, matching data that is three-dimensional data representing the shape of the work W before machining, and three-dimensional data representing the target shape of the work W.
  • Tool data, matching data and target data may be CAD data, for example.
  • the target data is created and recorded by an operator who operates the processing machine 1 .
  • Storage unit 72 also stores the position and orientation of stereo camera 30 in the base coordinate system.
  • the position measurement unit 73 identifies the three-dimensional position of the workpiece W based on the depth images acquired from the stereo camera 30 . Specifically, the position measuring unit 73 according to the first embodiment identifies the three-dimensional position of the work W by the following procedure. First, the position measurement unit 73 generates point cloud data in the base coordinate system based on the depth image generated by at least one stereo camera 30 and the position and orientation of the stereo camera 30 in the base coordinate system. Next, the position measurement unit 73 matches the matching data stored in the storage unit 72 with the point cloud data. The position measurement unit 73 can perform matching using, for example, an ICP algorithm. Thereby, the position measurement unit 73 identifies the position and orientation of the matching data in the base coordinate system as the three-dimensional position of the work W. FIG.
  • the alignment unit 74 arranges the target data stored in the storage unit 72 at the three-dimensional position of the workpiece W measured by the position measurement unit 73 . That is, the positioning unit 74 determines the position and orientation of the target shape of the workpiece W represented by the target data in the base coordinate system.
  • the alignment unit 74 generates a depth image corresponding to the stereo camera 30 from the aligned target shape. That is, the positioning unit 74 aligns the workpiece W from the viewpoint of the stereo camera 30 based on the position and orientation of the stereo camera 30 in the base coordinate system stored in the storage unit 72 and the position and orientation of the target shape in the base coordinate system. Generate a depth image when projecting the target shape of .
  • the depth image generated by the alignment unit 74 is hereinafter referred to as a target depth image.
  • the alignment unit 74 is an example of a target depth calculation unit that calculates the depth of the surface of the target shape with the stereo camera 30 as a reference based on the three-dimensional position of the target shape.
  • the display control unit 75 Based on the target depth image generated by the alignment unit 74, the display control unit 75 renders a target image P1 representing the target shape of the workpiece W viewed from one of the main cameras for each of the stereo cameras 30. .
  • the target image P1 may be, for example, a line drawing obtained by outline rendering of a three-dimensional model, or a translucent image.
  • the display control unit 75 causes the display to display a display screen in which the image (captured image P0) captured by the stereo camera 30 and the target image P1 corresponding to the stereo camera 30 are superimposed.
  • FIG. 4 is an example of a display screen according to the first embodiment. Note that the display control unit 75 does not necessarily have to display the alignment and the like on the display screen.
  • the target image P1 is displayed so as to be included in the workpiece W appearing in the captured image P0.
  • the captured image P0 may be a composite of images captured by the four stereo cameras 30 .
  • the difference calculation unit 76 calculates the depth difference for each pixel between the depth image acquired by the stereo camera 30 and the target depth image generated by the alignment unit 74 .
  • the depth-of-cut determination unit 77 determines the depth of cut at the position corresponding to each pixel in the workpiece W based on the depth difference of each pixel and the maximum depth of cut of the tool 60 .
  • a pixel of the work W represents a point on the surface of the work W.
  • FIG. Specifically, the depth-of-cut determination unit 77 determines the depth-of-cut in the following procedure. First, the depth-of-cut determination unit 77 specifies the maximum value of the depth difference calculated by the difference calculation unit 76 . The depth-of-cut determination unit 77 determines the expected number of scans by adding 1 to the integer part of the value obtained by dividing the maximum value of the depth difference by the maximum depth-of-cut.
  • a predetermined depth of cut that is smaller than the maximum depth of cut preset by the operator may be used to determine the expected number of scans.
  • the estimated number of scans is the number of scans until the cutting is completed when the workpiece W can be cut as planned. Note that the actual number of scans does not necessarily match the expected number of scans due to the effects of control errors of the robot arm 40, deflection of the tool 60, and the like.
  • the depth of cut determination unit 77 determines the depth of cut of a position corresponding to a pixel with a depth difference equal to or greater than the maximum depth of cut as the maximum depth of cut.
  • the depth of cut determination unit 77 determines the depth of cut of a position corresponding to a pixel whose depth difference is less than the maximum depth of cut to be an amount obtained by dividing the depth difference by the number of scans. As a result, at positions corresponding to pixels where the depth difference is less than the maximum depth of cut, cutting with a small depth of cut is repeatedly performed, thereby achieving highly accurate cutting.
  • the depth-of-cut determining section 77 may determine the depth of cut at the position corresponding to each pixel by another method. For example, the depth-of-cut determining unit 77 according to another embodiment may determine the depth of cut to be an amount obtained by dividing the depth difference by the number of scans regardless of the magnitude of the depth difference.
  • the depth-of-cut determination unit 77 may determine the depth-of-cut at a position corresponding to a pixel whose depth difference is less than the maximum depth-of-cut to be the depth-of-cut corresponding to the depth difference. Note that the depth-of-cut determination unit 77 may thin out the pixels of the depth image and calculate the depth of cut only for the remaining pixels. In this case, the depth-of-cut determining section 77 may calculate the depth of cut by interpolation using a moving average for the thinned pixels.
  • the path generation unit 78 determines a path, which is the movement path of the tip of the tool 60, based on the depth image acquired from the stereo camera 30 and the depth of cut determined by the depth of cut determination unit 77.
  • the path generation unit 78 determines the position of the tip of the tool 60 during cutting by adding the depth of cut determined by the depth of cut determination unit 77 to the depth of each pixel of the depth image, and performs predetermined path planning. Determine the path of the tool 60 according to the algorithm. Examples of path planning algorithms include Dijkstra's method, A* method, PRM method, RRT method, RRT* method, and the like.
  • the path generator 78 may generate a smooth path by interpolating the position of the tip of the tool 60 with a NURBS curve.
  • the tool control unit 79 generates movement instructions to be output to the driver 58 of the robot arm 40 so as to move the tool according to the paths generated by the path generation unit 78 .
  • the tool control unit 79 controls the tool 60 based on the orientation of the stereo camera 30 stored in the storage unit 72 in order to match the orientation of the tool 60 (rotation angle around each axis in the base coordinate system) with the orientation of the stereo camera 30 .
  • a movement instruction to rotate 60 is generated and sent to driver 58 .
  • the orientation of the tool 60 is made to match the orientation of one of the main cameras of the stereo camera 30 .
  • the driver 58 matches the attitude of the spindle 47 of the robot arm 40 with the attitude of the stereo camera 30 .
  • the direction in which the tool 60 faces matches the line-of-sight direction of the stereo camera 30 . That is, the direction in which the Zt axis of the tool coordinate system extends matches the depth direction of the depth image.
  • the tool control section 79 generates a movement instruction based on the path generated by the path generation section 78 and transmits it to the driver 58 .
  • the tool control unit 79 corrects the position in the Zt-axis direction to a position ahead of the tip position of the tool 60 indicated by the path by the length of the tool 60 .
  • the initial posture of the tool 60 matches the posture of the stereo camera 30, the posture of the tool 60 may change according to the machining surface when the tool 60 moves along the paths.
  • the correction unit 80 corrects the deviation between the instruction of the tool control unit 79 and the machining position of the robot arm 40 after one pass of cutting by the tool control unit 79 . Specifically, the correction unit 80 searches for the Xb-axis deviation amount dx and the Yb-axis direction deviation amount dy that minimize the SAD (Sum of Absolute Difference) represented by the following equation (1).
  • x is the Xb-axis component of the base coordinate system
  • y is the Yb-axis component of the base coordinate system
  • h is the length of the minimum rectangle enclosing the path in the Xb-axis direction
  • w is the length of the minimum rectangle enclosing the path in the Yb-axis direction
  • p(x, y) is the cutting instruction amount at position (x, y) in the base coordinate system.
  • is a constant to prevent division by zero.
  • I(x, y) is the depth difference at the position (x, y) between the depth image captured before processing and the depth image captured after processing, that is, the actual depth of cut.
  • the correction unit 80 adds the calculated deviation to subsequent movement instructions. By subtracting the amount, the control deviation is corrected. Note that, in order to prevent over-shaving, the correction unit 80 may add a significantly large penalty value to the SAD when there is a portion where the actual depth of cut is greater than the designated depth of cut.
  • FIG. 5 is a flowchart (part 1) showing a method of controlling the processing machine 1 by the control device 70.
  • FIG. 6 is a flowchart (part 2) showing a method of controlling the processing machine 1 by the control device 70.
  • FIG. When the operator places the workpiece W on the table 10, records the target data in the storage unit 72, and inputs an instruction to start machining, the control device 70 starts machining the workpiece W.
  • FIG. 1 When the operator places the workpiece W on the table 10, records the target data in the storage unit 72, and inputs an instruction to start machining, the control device 70 starts machining the workpiece W.
  • the data acquisition unit 71 acquires depth images from the stereo camera 30 (step S1).
  • the position measurement unit 73 generates point cloud data in the base coordinate system based on the depth image generated by the stereo camera 30 and the position and orientation of the stereo camera 30 in the base coordinate system stored in the storage unit 72. (Step S2).
  • the position measurement unit 73 merges the generated four point cloud data (step S3).
  • the position measurement unit 73 identifies the three-dimensional position of the workpiece W by matching the merged point cloud data with the matching data stored in the storage unit 72 (step S4).
  • the positioning unit 74 arranges the target data stored in the storage unit 72 at the three-dimensional position of the workpiece W specified in step S4 in the virtual space (step S5).
  • the alignment unit 74 generates a target depth image corresponding to the stereo camera 30 from the aligned target shape (step S6).
  • the alignment unit 74 records the generated target depth image in the storage unit 72 .
  • the display control unit 75 renders a target image representing the target shape of the work W viewed from one of the stereo cameras 30 based on the target depth image corresponding to the stereo camera 30 generated in step S6 (step S7 ).
  • the display control section 75 records the generated target image in the storage section 72 .
  • the display control unit 75 causes the display to display a display screen in which the image captured by one of the stereo cameras 30 and the target image generated in step S6 are superimposed (step S8). Thereafter, every time the stereo camera 30 acquires an image captured at a constant frame rate, the display control unit 75 updates the display screen by superimposing the image on the target image stored in the storage unit 72, and displays the image on the display. display. This allows the operator to compare the shape of the workpiece W and the target shape in real time.
  • the control device 70 selects the stereo cameras 30 one by one (step S9), and executes the processing from step S10 to step S22 below.
  • the tool control unit 79 reads out the orientation of the stereo camera 30 selected in step S9 from the storage unit 72, generates a movement instruction to match the orientation of the spindle 47 in the base coordinate system with the orientation of the stereo camera 30, and transmits it to the driver 58. do. That is, the tool control unit 79 matches the direction in which the tool 60 faces with the line-of-sight direction of the stereo camera 30 (step S10).
  • the data acquisition unit 71 acquires a new depth image from the stereo camera 30 selected in step S9 (step S11).
  • the difference calculator 76 calculates the depth difference for each pixel between the depth image acquired in step S11 and the target depth image corresponding to the stereo camera 30 selected in step S9 (step S12).
  • the depth-of-cut determination unit 77 adds 1 to the integer part of the value obtained by dividing the calculated maximum depth difference by the maximum depth of cut of the tool 60, thereby determining the expected number of scans (step S13 ). Based on the depth difference, the maximum depth of cut of the tool 60, and the estimated number of scans, the depth of cut determining unit 77 determines the depth of cut at the position corresponding to each pixel of the depth image (step S14). Specifically, the depth-of-cut determination unit 77 determines the depth-of-cut at a position corresponding to a pixel with a depth difference equal to or greater than the maximum depth-of-cut as the maximum depth-of-cut. The depth of cut determination unit 77 determines the depth of cut of a position corresponding to a pixel whose depth difference is less than the maximum depth of cut to be an amount obtained by dividing the depth difference by the maximum depth of cut.
  • the path generation unit 78 generates a path for the tool 60 based on the depth image and the depth of cut determined by the depth of cut determination unit 77 (step S15).
  • the path generation unit 78 corrects the path based on the correction amount.
  • the tool control unit 79 issues a movement instruction for moving the tool according to the path generated in step S15, and outputs it to the driver 58 of the robot arm 40 (step S16). Thereby, the robot arm 40 moves the tool according to the path and cuts the workpiece.
  • the data acquisition unit 71 acquires a new depth image from the stereo camera 30 selected in step S9 (step S17).
  • the difference calculator 76 calculates the depth difference for each pixel between the depth image acquired in step S17 and the target depth image corresponding to the stereo camera 30 selected in step S9 (step S18).
  • the control device 70 determines whether or not the depth differences of all pixels are less than a predetermined allowable error (step S19). If the depth difference of at least one pixel is not less than the predetermined allowable error (step S19: NO), the control device 70 determines to continue cutting the surface imaged by the stereo camera 30 selected in step S9. do.
  • the correction unit 80 obtains the depth difference between the depth image used for path generation and the newly acquired depth image for each pixel of the depth image, thereby determining the position corresponding to the pixel.
  • An actual depth of cut is calculated (step S20).
  • the correction unit 80 searches for the displacement amount of the machining position using the above-described formula (1) based on the cutting instruction amount indicated by the instruction output to the driver 58 in step S16 and the actual cutting amount. (step S21).
  • the correction unit 80 updates the correction amount by adding the obtained deviation amount to the correction amount stored in the storage unit 72 (step S22). Note that when the correction amount is not recorded in the storage unit 72, the correction unit 80 records the obtained deviation amount in the storage unit 72 as the correction amount.
  • the control device 70 returns the process to step S13, and performs cutting again based on the depth image acquired in step S17 and the depth difference calculated in step S18.
  • step S19: YES When the depth difference of all pixels is less than the predetermined allowable error (step S19: YES), the control device 70 selects the next stereo camera 30 and executes the processing from step S10 to step S22. When the processing from step S10 to step S22 is completed for all the stereo cameras 30, the control device 70 determines that the processing of the workpiece W is completed, and terminates the processing. That is, the control device 70 ends the machining of the workpiece W when the difference from the target shape becomes less than the allowable error as seen from the plurality of stereo cameras 30 provided to compensate for blind spots.
  • the processing machine 1 processes the work W in the following procedure.
  • the control device 70 calculates the three-dimensional position of the surface of the workpiece W based on the depth images captured by the stereo camera 30 . Based on the target data representing the target shape of the work W and the three-dimensional position of the work W, the control device 70 calculates the three-dimensional position of the target shape when the work W and the target shape are superimposed. Based on the difference in the line-of-sight direction between the three-dimensional position of the surface of the work W when the work W is viewed from the viewpoint of the stereo camera 30 and the three-dimensional position of the surface of the target shape, the control device 70 determines the surface of the work W.
  • the control device 70 moves the tool 60 based on the determined depth of cut.
  • the processing machine 1 can automatically control the tool 60 based on the depth image and the target data without the operator having to prepare a processing program.
  • control device 70 of the processing machine 1 according to the first embodiment calculates the depth of the surface of the target shape with reference to the stereo camera 30 based on the three-dimensional position of the target shape, and the depth of the calculated target shape.
  • the processing machine 1 according to the first embodiment does not need to convert the depth image into three-dimensional data each time cutting is performed in order to determine the depth of cut.
  • the point cloud data is generated in step S2 shown in FIG.
  • the target shape of the work W does not change from the start of machining to the end of machining.
  • the control device 70 generates a target depth image before processing in step S8 and stores it in the storage unit 72
  • the target depth image stored in the storage unit 72 can be used in calculating the depth difference in subsequent steps S12 and S18.
  • the transformation from the target data to the target depth image can be omitted.
  • the three-dimensional data is data representing the positions of a plurality of points in a three-axis orthogonal coordinate system.
  • Point cloud data is an example of three-dimensional data.
  • a depth image is data that associates a depth with each point on a two-dimensional plane. Depth is not necessarily orthogonal to a two-dimensional plane, as it represents the distance from the camera's point of view.
  • the processing machine 1 can quickly process the work W by reducing the number of three-dimensional data calculations according to the above procedure. Further, since the volume of three-dimensional data is large, it is necessary to secure a large storage area in the storage unit 72. However, by using a depth image in place of the three-dimensional data as in the first embodiment, the data You can reduce the amount. Note that in other embodiments, the depth difference may be calculated using three-dimensional data instead of the depth image, although the amount of calculation increases.
  • control device 70 of the processing machine 1 is based on the difference between the three-dimensional position of the surface of the work W after cutting the work W with the tool 60 and the three-dimensional position of the surface of the target shape. to determine the depth of cut for each pixel on the surface of the workpiece W again. In this way, the control device 70 recalculates the shape of the workpiece W each time cutting is performed, so that the error between the actual shape and the target shape can always be recognized, and the workpiece W can be cut while reducing the error. .
  • control device 70 may be configured by a single computer, or the configuration of the control device 70 may be divided into a plurality of computers, and the plurality of computers may cooperate with each other. may function as the control device 70. At this time, the control device 70 may have a part of the functions of the driver 58 of the robot arm 40 , or the driver 58 may have a part of the functions of the control device 70 .
  • the processing machine 1 includes the stereo camera 30 as a depth camera, it is not limited to this.
  • other embodiments may use a TOF camera, LiDAR, 3D scanner, etc. as the depth camera.
  • the processing machine 1 is provided with a plurality of single cameras in place of the stereo camera 30, performs stereo matching processing on images captured by two adjacent cameras among the plurality of single cameras, and uses the stereo camera as a stereo camera. may be used.
  • the processing machine 1 may have only one depth camera.
  • the processing machine 1 according to another embodiment may include a depth camera directly above the workpiece W, and may perform processing by directing the tool 60 in the line-of-sight direction of the depth camera.
  • the depth camera may be a combination camera and depth measuring device.
  • control device 70 generates a tool path without converting the depth image by aligning the direction of the tool 60 with the line-of-sight direction of the stereo camera 30, but is not limited to this.
  • the control device 70 according to another embodiment may convert the line-of-sight direction of the depth image into the orientation of the tool 60 to determine the depth of cut and create the path.
  • the control device 70 according to another embodiment may convert the line-of-sight direction of the depth image to the vertically downward direction to determine the depth of cut and create a path.
  • the converted depth image is expressed in a triaxial orthogonal coordinate system.
  • three-dimensional data may be generated from the depth image to determine the depth of cut.
  • the arm that supports the tool 60 does not have to have a high degree of freedom like the robot arm 40 does.
  • the arm may translate the tool 60 without changing the angle of the tool 60 .
  • control device 70 identifies the three-dimensional position of the work W based on matching data representing the shape of the work W before processing, but is not limited to this.
  • the control device 70 may specify the three-dimensional position of the work W by the difference between the depth image before the work W is placed and the depth image after the work W is placed.
  • the shape of the held portion of the work W face, side, etc.
  • the shape of the held portion of the target data may be identified and the target data may be aligned by matching with the . Also, in other embodiments, the alignment may be performed manually by an operator.
  • control device 70 cuts depth images captured by one stereo camera 30 until the depth difference is less than the allowable error, and then cuts based on the next stereo camera 30.
  • the control device 70 may switch the target stereo camera 30 each time one path of cutting is performed. That is, the control device 70 according to another embodiment may perform the processing of steps S10 to S18 for all the stereo cameras 30, and then determine the end of processing in step S19.
  • FIG. 7 is a schematic block diagram showing the configuration of a computer according to at least one embodiment.
  • Computer 900 comprises processor 901 , main memory 902 , storage 903 and interface 904 .
  • the control device 70 described above is implemented in a computer 900 .
  • the operation of each processing unit described above is stored in the storage 903 in the form of a program.
  • the processor 901 reads a program from the storage 903, develops it in the main memory 902, and executes the above processing according to the program.
  • the processor 901 secures storage areas corresponding to the storage units described above in the main memory 902 according to the program. Examples of the processor 901 include a CPU (Central Processing Unit), a GPU (Graphic Processing Unit), a microprocessor, and the like.
  • the program may be for realizing a part of the functions to be exhibited by the computer 900.
  • the program may function in combination with another program already stored in the storage or in combination with another program installed in another device.
  • the computer 900 may include a custom LSI (Large Scale Integrated Circuit) such as a PLD (Programmable Logic Device) in addition to or instead of the above configuration.
  • PLDs include PAL (Programmable Array Logic), GAL (Generic Array Logic), CPLD (Complex Programmable Logic Device), and FPGA (Field Programmable Gate Array).
  • part or all of the functions implemented by processor 901 may be implemented by the integrated circuit.
  • Such an integrated circuit is also included as an example of a processor.
  • Examples of the storage 903 include magnetic disks, magneto-optical disks, optical disks, and semiconductor memories.
  • the storage 903 may be an internal medium directly connected to the bus of the computer 900, or an external medium connected to the computer 900 via an interface 904 or communication line. Further, when this program is distributed to the computer 900 via a communication line, the computer 900 receiving the distribution may develop the program in the main memory 902 and execute the above process.
  • storage 903 is a non-transitory, tangible storage medium.
  • the program may be for realizing part of the functions described above.
  • the program may be a so-called difference file (difference program) that implements the above-described functions in combination with another program already stored in the storage 903 .
  • the workpiece can be processed without preparing a processing program.

Abstract

加工機械は、ワークを機械加工する工具と、撮像範囲にワークが入るように設置され、被写体の深度を撮像する深度カメラとを備える。位置計測部は、深度カメラが撮像した深度画像に基づいて、ワークの表面の三次元位置を計算する。位置合わせ部は、ワークの目標形状を表す三次元データとワークの三次元位置とに基づいて、ワークと目標形状とを重ね合わせたときの目標形状の三次元位置を計算する。切込量決定部は、ワークを所定の視点から見たときのワークの表面の三次元位置と目標形状の表面の三次元位置との視線方向における差に基づいてワークの表面上の複数の点それぞれにおける切込量を決定する。工具制御部は、決定された切込量に基づいて工具を移動させる。

Description

加工機械、加工機械の制御装置および加工機械の制御方法
 本開示は、加工機械、加工機械の制御装置および加工機械の制御方法に関する。
 本願は、2022年2月3日に日本に出願された特願2022-015574号について優先権を主張し、その内容をここに援用する。
 加工機械の制御装置は、ワークの加工に用いる加工プログラムを読み取り、当該プログラムの実行によって加工機械を駆動させることで、ワークを所望の形状に切削する。特許文献1には、ワークを撮影したカメラ画像上に加工プログラムによる加工軌跡を重畳表示する技術が開示されている。
特許第6253847号公報
 ワークを加工するための加工プログラムを用意することは、容易ではない。ワークの目標形状に基づいて加工プログラムを作成しても、実際の加工機械に実行させると、加工機械の特性によって切削誤差が生じる。そのため、作業者は、ワークの試加工を繰り返しながら加工プログラムを修正することで、加工プログラムを作成する必要がある。
 本開示の目的は、加工プログラムを用意することなくワークを加工することができる加工機械、加工機械の制御装置および加工機械の制御方法を提供することにある。
 本開示の一態様によれば、加工機械は、ワークを機械加工する工具と、撮像範囲に前記ワークが入るように設置され、被写体の深度を撮像する深度カメラと、前記深度カメラが撮像した深度画像に基づいて、前記ワークの表面の三次元位置を計算する位置計測部と、前記ワークの目標形状を表す三次元データと前記ワークの三次元位置とに基づいて、前記ワークと前記目標形状とを重ね合わせたときの前記目標形状の三次元位置を計算する位置合わせ部と、前記ワークを所定の視点から見たときの前記ワークの表面の三次元位置と前記目標形状の表面の三次元位置との視線方向における差に基づいて前記ワークの表面上の複数の点それぞれにおける切込量を決定する切込量決定部と、決定された前記切込量に基づいて前記工具を移動させる工具制御部とを備える。
 上記態様によれば、加工プログラムを用意することなくワークを加工することができる。
第一の実施形態に係る加工機械の斜視図である。 第一の実施形態に係るロボットアームの構成を示す斜視図である。 第一の実施形態に係る制御装置の構成を示す概略ブロック図である。 第一の実施形態に係る表示画面の一例である。 第一の実施形態に係る制御装置による加工機械の制御方法を示すフローチャート(パート1)である。 第一の実施形態に係る制御装置による加工機械の制御方法を示すフローチャート(パート2)である。 少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
〈第一の実施形態〉
《加工機械1の構成》
 以下、図面を参照しながら実施形態について詳しく説明する。
 図1は、第一の実施形態に係る加工機械の斜視図である。加工機械1は、テーブル10、治具20、複数のステレオカメラ30、ロボットアーム40、工具60、制御装置70を備える。他の実施形態においては、加工機械1は、例えばマシニングセンタであってもよい。
 テーブル10は、加工機械1の基台である。治具20は、テーブル10の上に設けられる。治具20はワークWを挟み込むことで支持する。
 ステレオカメラ30は、撮像範囲に含まれる被写体の深度画像を撮像する。ステレオカメラ30は、深度カメラの一例である。ステレオカメラ30は、撮像範囲にワークWの設置領域が含まれるように設けられる。ステレオカメラ30は、例えば加工機械1の内壁に、テーブル10を見下ろすように設置される。ステレオカメラ30は、テーブル10との相対位置が変化しないよう、熱膨張が生じ難い材料で構成される治具で固定されることが好ましい。複数のステレオカメラ30は、互いに死角を補うように配置される。図1に示す例では、加工機械1は4つのステレオカメラ30を備え、4方向から深度画像を撮像することができる。なお、他の実施形態においては、ステレオカメラ30は1つでも複数でもよい。また、4方向ではなく2方向や1方向から深度画像を計測してもよい。ステレオカメラ30は加工機械1を覆う略直方体の筐体の天井の四隅に取り付けられている。なお、ステレオカメラ30は加工機械1に対して固定されていればよいため、筐体に限らず、例えば4本の柱に固定されてもよい。
 図2は、第一の実施形態に係るロボットアーム40の構成を示す斜視図である。ロボットアーム40は、工具60を移動可能に支持する。工具60はロボットアーム40の先端に支持される。工具60はワークWを切削する。なお他の実施形態においては、工具60はワークWを研削するものであってもよい。ロボットアーム40は、例えば6軸垂直間接ロボットであってよい。ロボットアーム40は、ベース41、第一アーム42、第二アーム43、第三アーム44、第四アーム45、第五アーム46、スピンドル47とを備える。ベース41は、テーブル10に上下方向に伸びる第一軸O1回りに回転可能に固定される。第一アーム42は、第一軸O1に直交する第二軸O2回りに回転可能に連結されている。第二アーム43は、第一アーム42に対して第二軸O2と平行な第三軸O3回りに回転自在に連結されている。第三アーム44は、第三軸O3と平行な第四軸O4回りに回転可能に連結されている。第四アーム45は、第三アーム44に対して第三アーム44の軸方向に伸びる第五軸O5回りに回転可能に連結されている。第五アーム46は、第四アーム45に対して第五軸O5に直交する第六軸O6回りに回転可能に連結されている。スピンドル47は、第五アーム46の先端に設けられ、工具60を回転可能に支持する。
 ロボットアーム40は、第一モータ51、第二モータ52、第三モータ53、第四モータ54、第五モータ55、第六モータ56、第七モータ57を備えている。第一モータ51は、ベース41を回転させる。第二モータ52は、ベース41に対して第一アーム42を回転させる。第三モータ53は、第一アーム42に対して第二アーム43を回転させる。第四モータ54は、第二アーム43に対して第三アーム44を回転させる。第五モータ55は、第三アーム44に対して第四アーム45を回転させる。第六モータ56は、第四アーム45に対して第五アーム46を回転させる。第七モータ57は、スピンドル47を回転させる。また、各モータには、図示しないエンコーダが設けられ、各アームの回転角を計測する。
 ロボットアーム40は、ドライバ58を備える。ドライバ58は、制御指示に従ってロボットアーム40の各モータを駆動させる。ドライバ58は、エンコーダが計測する回転角に基づいて、スピンドル47の先端の位置および姿勢を計算する。ドライバ58は、スピンドル47の位置および姿勢を、ベース座標系とツール座標系で特定する。ベース座標系は、ベース41の底面の中心を原点とする座標系であって、上下方向に伸びるZb軸と、Zb軸に直交するXb軸およびYb軸によって表される。ツール座標系は、スピンドル47の先端を原点とする座標系であって、スピンドル47の軸方向に伸びるZt軸と、Zt軸に直交するXt軸およびYt軸によって表される。ドライバ58は、座標軸と平行移動または回転に係る移動量を示す制御指示を受信すると、制御指示が示す座標軸に沿って、制御指示が示す移動量だけスピンドル47を移動させるための各モータの角度を演算し、各モータを制御する。また、ドライバ58は、座標系と当該座標系における位置および姿勢を示す制御指示を受信すると、制御指示が示す位置へスピンドル47を移動させるための各モータの角度を演算し、各モータを制御する。
 制御装置70は、ステレオカメラ30が撮像した深度画像とロボットアーム40の先端の位置とに基づいて、ロボットアーム40を制御する。
《制御装置70の構成》
 図3は、第一の実施形態に係る制御装置70の構成を示す概略ブロック図である。
 制御装置70は、データ取得部71、記憶部72、位置計測部73、位置合わせ部74、表示制御部75、差分算出部76、切込量決定部77、パス生成部78、工具制御部79、補正部80を備える。
 データ取得部71は、ステレオカメラ30から深度画像を取得し、ロボットアーム40から各アームの角度の計測値を取得する。深度画像は、ステレオカメラ30の主カメラとなる一方のカメラが撮像した画像を構成する各画素に、当該カメラからの距離を示す深度を対応付けたものである。
 記憶部72は、工具60の形状を示す三次元データである工具データと、加工前のワークWの形状を示す三次元データであるマッチングデータと、ワークWの目標形状を表す三次元データである目標データを記憶する。工具データ、マッチングデータおよび目標データは、例えばCADデータであってよい。なお、目標データは、加工機械1を操作するオペレータによって作成され、記録される。また記憶部72は、ステレオカメラ30のベース座標系における位置および姿勢を記憶する。
 位置計測部73は、ステレオカメラ30から取得した深度画像に基づいて、ワークWの三次元位置を特定する。具体的には、第一の実施形態に係る位置計測部73は、以下の手順でワークWの三次元位置を特定する。まず位置計測部73は、少なくとも1つのステレオカメラ30が生成した深度画像と、ステレオカメラ30のベース座標系における位置および姿勢とに基づいて、ベース座標系の点群データを生成する。次に、位置計測部73は、点群データに対して記憶部72が記憶するマッチングデータのマッチングを行う。位置計測部73は、例えばICPアルゴリズムによってマッチングを行うことができる。これにより、位置計測部73は、マッチングデータのベース座標系における位置及び姿勢を、ワークWの三次元位置として特定する。
 位置合わせ部74は、位置計測部73が計測したワークWの三次元位置に記憶部72が記憶する目標データを配置する。すなわち位置合わせ部74は、目標データが表すワークWの目標形状のベース座標系における位置および姿勢を決定する。位置合わせ部74は、位置合わせされた目標形状から、ステレオカメラ30に対応する深度画像を生成する。すなわち、位置合わせ部74は、記憶部72が記憶するステレオカメラ30のベース座標系における位置および姿勢と、目標形状のベース座標系における位置および姿勢とに基づいて、ステレオカメラ30の視点からワークWの目標形状を投影したときの深度画像を生成する。以下、位置合わせ部74が生成した深度画像を目標深度画像という。位置合わせ部74は、目標形状の三次元位置に基づいて、ステレオカメラ30を基準とする目標形状の表面の深度を計算する目標深度計算部の一例である。
 表示制御部75は、位置合わせ部74が生成した目標深度画像に基づいて、ステレオカメラ30のそれぞれについて、主カメラとなる一方のカメラから見たワークWの目標形状を表す目標画像P1をレンダリングする。目標画像P1は、例えば三次元モデルのアウトラインレンダリングによって得られた線画や、半透明の画像であってよい。表示制御部75は、ステレオカメラ30が撮像した画像(撮像画像P0)と、当該ステレオカメラ30に対応する目標画像P1とを重畳した表示画面を、ディスプレイに表示させる。図4は、第一の実施形態に係る表示画面の一例である。なお、表示制御部75は、位置合わせ等について必ずしも表示画面へ表示しなくてもよい。図4に示すように、目標画像P1は、撮像画像P0に写るワークWに内包されるように表示される。撮像画像P0は、4つのステレオカメラ30が撮像した画像を合成したものであってもよい。
 差分算出部76は、ステレオカメラ30が取得した深度画像と、位置合わせ部74が生成した目標深度画像との画素ごとの深度差分を算出する。
 切込量決定部77は、各画素の深度差分と工具60の最大切込量とに基づいて、ワークWのうち各画素に対応する位置における切込量を決定する。ワークWの画素は、ワークWの表面上の点を表す。切込量決定部77は、具体的には以下の手順で切込量を決定する。
 まず、切込量決定部77は、差分算出部76が算出した深度差分の最大値を特定する。切込量決定部77は、深度差分の最大値を最大切込量で除算した値の整数部分に1を加算することで、見込み走査回数を決定する。なお、他の実施形態においては、最大切込量に代えて予め作業者が設定した最大切込量より小さい所定切込量を用いて見込み走査回数を決定してもよい。見込み走査回数は、ワークWを計画通りに切削できた場合に切削が完了するまでの走査の回数である。なお、ロボットアーム40の制御誤差や工具60の撓み等の影響により、実際の走査回数は必ずしも見込み走査回数と一致しない。切込量決定部77は、深度差分が最大切込量以上の画素に対応する位置の切込量を、最大切込量に決定する。切込量決定部77は、深度差分が最大切込量未満の画素に対応する位置の切込量を、深度差分を走査回数で除算した量に決定する。これにより、深度差分が最大切込量未満の画素に対応する位置については、小さい切込量での切削を繰り返し行うことで、精度の高い切削を実現することができる。他の実施形態においては、切込量決定部77は他の方法で各画素に対応する位置における切込量を決定してもよい。例えば、他の実施形態に係る切込量決定部77は、深度差分の大きさによらず、深度差分を走査回数で除算した量に切込量を決定してもよい。また他の実施形態に係る切込量決定部77は、深度差分が最大切込量未満の画素に対応する位置の切込量を、深度差分に相当する切込量に決定してもよい。
 なお、切込量決定部77は、深度画像の画素を間引き、残った画素のみについて切込量を算出してもよい。この場合、切込量決定部77は、間引かれた画素について移動平均による補間によって切込量を算出してもよい。
 パス生成部78は、ステレオカメラ30から取得した深度画像と切込量決定部77が決定した切込量とに基づいて、工具60の先端の移動経路であるパスを決定する。パス生成部78は、深度画像の各画素の深度に、切込量決定部77が決定した切込量を加算することで、切削時の工具60の先端の位置を決定し、所定のパスプランニングアルゴリズムに従って工具60のパスを決定する。パスプランニングアルゴリズムの例としては、ダイクストラ法、A*法、PRM法、RRT法、RRT*法などが挙げられる。パス生成部78は、工具60の先端の位置を、NURBS曲線によって補間することで滑らかなパスを生成してよい。
 工具制御部79は、パス生成部78が生成したパスに従って工具を移動させるように、ロボットアーム40のドライバ58に出力する移動指示を生成する。工具制御部79は、まず工具60の姿勢(ベース座標系における各軸回りの回転角)をステレオカメラ30の姿勢と一致させるために、記憶部72が記憶するステレオカメラ30の姿勢に基づいて工具60を回転させる移動指示を生成し、ドライバ58に送信する。なお、工具60をステレオカメラ30の姿勢と一致させる場合は、ステレオカメラ30の主カメラとなる一方のカメラの姿勢に、工具60の姿勢を一致させることが好ましい。これにより、ドライバ58はロボットアーム40のスピンドル47の姿勢をステレオカメラ30の姿勢と一致させる。これにより、工具60が向く方向は、ステレオカメラ30の視線方向と一致する。すなわちツール座標系のZt軸が伸びる方向は、深度画像の深さ方向と一致する。
 その後、工具制御部79は、パス生成部78が生成したパスに基づいて、移動指示を生成し、ドライバ58に送信する。このとき、工具制御部79は、Zt軸方向の位置を、パスが示す工具60の先端位置より工具60の長さだけ手前の位置に修正する。なお、工具60の初期姿勢はステレオカメラ30の姿勢と一致するが、パスにしたがって工具60が移動する際は、加工面に応じて工具60の姿勢が変化し得る。
 補正部80は、工具制御部79による1パス分の切削後に、工具制御部79の指示とロボットアーム40の加工位置とのずれを補正する。具体的には、補正部80は、下記に示す式(1)が示すSAD(Sum of Absolute Difference)が最小となるXb軸のずれ量dおよびYb軸方向のずれ量dを探索する。
Figure JPOXMLDOC01-appb-M000001
 式(1)において、xはベース座標系のXb軸成分、yはベース座標系のYb軸成分である。hはパスを内包する最小の矩形のXb軸方向の長さであり、wはパスを内包する最小の矩形のYb軸方向の長さである。p(x,y)は、ベース座標系における位置(x,y)における切込指示量である。δは、ゼロでの除算を防ぐための定数である。I(x,y)は、加工前に撮像された深度画像と加工後に撮像された深度画像の位置(x,y)における深度差分、すなわち実際の切込量である。式(1)でSADが最小となるd、dが、工具制御部79の指示とロボットアーム40の加工位置とのずれを表すため、補正部80は、以降の移動指示に算出したずれ量を減算することで、制御ずれを補正する。なお、削りすぎを防ぐために、補正部80は、実際の切込量が切込指示量より大きい部分が存在する場合に、SADに有意に大きいペナルティ値を加えてもよい。
《加工機械1の制御》
 図5は、制御装置70による加工機械1の制御方法を示すフローチャート(パート1)である。図6は、制御装置70による加工機械1の制御方法を示すフローチャート(パート2)である。作業者がテーブル10にワークWを設置し、記憶部72に目標データを記録し、加工開始の指示を入力すると、制御装置70はワークWの加工を開始する。
 まずデータ取得部71は、ステレオカメラ30から深度画像を取得する(ステップS1)。次に、位置計測部73はステレオカメラ30が生成した深度画像と、記憶部72が記憶するステレオカメラ30のベース座標系における位置および姿勢とに基づいて、ベース座標系の点群データを生成する(ステップS2)。位置計測部73は、生成された4つの点群データをマージする(ステップS3)。
 位置計測部73は、マージした点群データに対して記憶部72が記憶するマッチングデータのマッチングを行うことで、ワークWの三次元位置を特定する(ステップS4)。次に、位置合わせ部74は、仮想空間においてステップS4で特定されたワークWの三次元位置に、記憶部72が記憶する目標データを配置する(ステップS5)。次に、位置合わせ部74は、位置合わせされた目標形状から、ステレオカメラ30に対応する目標深度画像を生成する(ステップS6)。位置合わせ部74は、生成した目標深度画像を記憶部72に記録する。
 表示制御部75は、ステップS6で生成されたステレオカメラ30に対応する目標深度画像に基づいて、ステレオカメラ30の一方のカメラから見たワークWの目標形状を表す目標画像をレンダリングする(ステップS7)。表示制御部75は、生成した目標画像を記憶部72に記録する。表示制御部75は、ステレオカメラ30の一方のカメラが撮像した画像と、ステップS6で生成した目標画像とを重畳した表示画面を、ディスプレイに表示させる(ステップS8)。以降、表示制御部75は、ステレオカメラ30が一定のフレームレートで撮像する画像を取得するたびに、当該画像と記憶部72が記憶する目標画像とを重畳して表示画面を更新し、ディスプレイに表示させる。これにより、作業者はワークWの形状と目標形状とをリアルタイムに比較することができる。
 次に、制御装置70は、ステレオカメラ30を1つずつ選択して(ステップS9)、以下のステップS10からステップS22の処理を実行する。
 工具制御部79は、ステップS9で選択したステレオカメラ30の姿勢を記憶部72から読み出し、スピンドル47のベース座標系における姿勢をステレオカメラ30の姿勢と一致させる移動指示を生成し、ドライバ58に送信する。つまり、工具制御部79は、工具60が向く方向を、ステレオカメラ30の視線方向と一致させる(ステップS10)。
 次に、データ取得部71は、ステップS9で選択したステレオカメラ30から新たな深度画像を取得する(ステップS11)。次に、差分算出部76は、ステップS11で取得した深度画像と、ステップS9で選択したステレオカメラ30に対応する目標深度画像との画素ごとの深度差分を算出する(ステップS12)。
 次に、切込量決定部77は、算出した深度差分の最大値を工具60の最大切込量で除算した値の整数部分に1を加算することで、見込み走査回数を決定する(ステップS13)。切込量決定部77は、深度差分と工具60の最大切込量と見込み走査回数とに基づいて、深度画像の各画素に対応する位置の切込量を決定する(ステップS14)。具体的には、切込量決定部77は、深度差分が最大切込量以上の画素に対応する位置の切込量を、最大切込量に決定する。切込量決定部77は、深度差分が最大切込量未満の画素に対応する位置の切込量を、深度差分を最大切込量で除算した量に決定する。
 パス生成部78は、深度画像と切込量決定部77が決定した切込量とに基づいて、工具60のパスを生成する(ステップS15)。記憶部72に補正量が記録されている場合、パス生成部78は当該補正量に基づいてパスを補正する。次に、工具制御部79は、ステップS15で生成したパスに従って工具を移動させるための移動指示をし、ロボットアーム40のドライバ58に出力する(ステップS16)。これにより、ロボットアーム40は、パスに従って工具を移動させ、ワークを切削する。
 次に、データ取得部71は、ステップS9で選択したステレオカメラ30から新たな深度画像を取得する(ステップS17)。次に、差分算出部76は、ステップS17で取得した深度画像と、ステップS9で選択したステレオカメラ30に対応する目標深度画像との画素ごとの深度差分を算出する(ステップS18)。
 制御装置70は、全ての画素の深度差分が所定の許容誤差未満になったか否かを判定する(ステップS19)。少なくとも1つの画素の深度差分が所定の許容誤差未満になっていない場合(ステップS19:NO)、制御装置70は、ステップS9で選択したステレオカメラ30が撮像する面の切削を継続することを決定する。
 切削を継続する場合、補正部80は、深度画像の各画素について、パスの生成に用いた深度画像と、新たに取得した深度画像との深度差分を求めることで、当該画素に対応する位置の実際の切込量を算出する(ステップS20)。次に補正部80は、ステップS16でドライバ58に出力した指示が示す切込指示量と、実際の切込量とに基づいて、上述した式(1)を用いて加工位置のずれ量を探索する(ステップS21)。補正部80は、記憶部72に記憶された補正量に得られたずれ量を加算することで、補正量を更新する(ステップS22)。なお、記憶部72に補正量が記録されていない場合、補正部80は、得られたずれ量を補正量として記憶部72に記録する。そして、制御装置70は処理をステップS13に処理を戻し、ステップS17で取得された深度画像とステップS18で算出した深度差分とに基づいて再度切削を行う。
 全ての画素の深度差分が所定の許容誤差未満になった場合(ステップS19:YES)、制御装置70は、次のステレオカメラ30を選択し、ステップS10からステップS22の処理を実行する。
 すべてのステレオカメラ30についてステップS10からステップS22の処理が完了すると、制御装置70はワークWの加工が終了したと判断し、処理を終了する。つまり、制御装置70は、死角を補うように設けられた複数のステレオカメラ30から見て、目標形状との差が許容誤差未満となった場合に、ワークWの加工を終了する。
《作用・効果》
 このように、第一の実施形態に係る加工機械1は、以下の手順でワークWを加工する。制御装置70が、ステレオカメラ30が撮像した深度画像に基づいてワークWの表面の三次元位置を計算する。制御装置70が、ワークWの目標形状を表す目標データとワークWの三次元位置とに基づいて、ワークWと目標形状とを重ね合わせたときの目標形状の三次元位置を計算する。制御装置70が、ワークWをステレオカメラ30の視点から見たときのワークWの表面の三次元位置と目標形状の表面の三次元位置との視線方向における差に基づいて、ワークWの表面上の複数の点それぞれにおける切込量を決定する。制御装置70が決定された切込量に基づいて工具60を移動させる。
 これにより、第一の実施形態に係る加工機械1は、作業者が加工プログラムを用意することなく、深度画像と目標データとに基づいて自動的に工具60を制御することができる。
 また、第一の実施形態に係る加工機械1の制御装置70は、目標形状の三次元位置に基づいて、ステレオカメラ30を基準とする目標形状の表面の深度を計算し、深度画像におけるワークWの深度と計算された目標形状の深度とに基づいて切込量を決定する。これにより、第一の実施形態に係る加工機械1は、切込量を決定するために、切削を進めるたびに深度画像から三次元データへ変換し直さなくてよい。具体的には、制御装置70は、図5に示すステップS2で点群データを一度生成すれば、選択したステレオカメラ30におけるステップS9からステップS22のループや、ステップS13からステップS22のループにおいて点群データを生成する必要がない。ワークWの目標形状は加工開始から加工終了まで変わらない。そのため、制御装置70はステップS8で加工前に目標深度画像を生成して記憶部72に記録しておけば、以降のステップS12やステップS18における深度差分の計算において、記憶部72が記憶する目標深度画像を用いることで、目標データから目標深度画像への変換を省略することができる。なお、三次元データは、3軸直交座標系で複数の点の位置を表すデータである。点群データは三次元データの一例である。深度画像は、二次元平面上の各点に深度を関連付けたデータである。深度は、カメラの視点からの距離を表すため、必ずしも二次元平面に直交しない。
 深度画像から三次元データへの変換は計算量が多いため、上記手順により三次元データの計算を減らすことで、加工機械1はワークWの加工を迅速に行うことができる。また、三次元データは容量が大きいため、記憶部72に大きな記憶領域を確保しておく必要があるところ、第一の実施形態のように三次元データに代えて深度画像を用いることで、データ量を抑えることができる。なお、他の実施形態においては、計算量は多くなるが、深度画像に代えて3次元データを用いて深度差分を算出してもよい。
 また、第一の実施形態に係る加工機械1の制御装置70は、工具60によるワークWの切削後におけるワークWの表面の三次元位置と、目標形状の表面の三次元位置との差に基づいて、再度ワークWの表面上の画素ごとの切込量を決定する。このように、制御装置70は切削の都度ワークWの形状を計算しなおすことで、実際の形状と目標形状との誤差を常に認識し、誤差を低減しながらワークWの切削を行うことができる。
〈他の実施形態〉
 以上、図面を参照して一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、様々な設計変更等をすることが可能である。すなわち、他の実施形態においては、上述の処理の順序が適宜変更されてもよい。また、一部の処理が並列に実行されてもよい。
 上述した実施形態に係る制御装置70は、単独のコンピュータによって構成されるものであってもよいし、制御装置70の構成を複数のコンピュータに分けて配置し、複数のコンピュータが互いに協働することで制御装置70として機能するものであってもよい。このとき、制御装置70がロボットアーム40のドライバ58の機能の一部有していてもよいし、制御装置70の一部の機能をドライバ58が有していてもよい。
 上述した実施形態に係る加工機械1は、深度カメラとしてステレオカメラ30を備えるが、これに限られない。例えば、他の実施形態においては深度カメラとしてTOFカメラ、LiDAR、3次元スキャナなどを用いてもよい。また、他の実施形態においては、加工機械1は、ステレオカメラ30に代えて複数の単カメラを備え、複数の単カメラのうち隣接する2つのカメラの撮像画像をステレオマッチング処理し、ステレオカメラとして用いてもよい。
 なお、他の実施形態においては、加工機械1は深度カメラを1つだけ備えてもよい。例えば、他の実施形態に係る加工機械1は深度カメラをワークWの直上に備え、深度カメラの視線方向に工具60を向けて加工を行ってもよい。また他の実施形態においては、深度カメラはカメラと深度計測装置との組み合わせであってもよい。
 また、上述した実施形態に係る制御装置70は、工具60の向きをステレオカメラ30の視線方向に合わせることで、深度画像を変換せずに工具のパスを生成するが、これに限られない。例えば、他の実施形態に係る制御装置70は、深度画像の視線方向を工具60の向きに変換して、切込量の決定およびパスの作成を行ってもよい。例えば、他の実施形態に係る制御装置70は、深度画像の視線方向を鉛直下方向に変換して、切込量の決定およびパスの作成を行ってもよい。この場合、変換後の深度画像は、3軸の直交座標系で表される。また、他の実施形態においては計算量は多くなるが、深度画像から三次元データを生成して、切込量を決定してもよい。深度画像の変換を行う場合、工具60を支持するアームはロボットアーム40のように高い自由度を有しなくてもよい。例えば、アームは工具60の角度を変化させずに工具60を平行移動させるものであってもよい。
 また、上述した実施形態に係る制御装置70は、加工前のワークWの形状を表すマッチングデータに基づいてワークWの三次元位置を特定するが、これに限られない。例えば、他の実施形態に係る制御装置70は、ワークWの設置前の深度画像とワークWの設置後の深度画像との差分によってワークWの三次元位置を特定してもよい。また、他の実施形態においては、ワークWのうち治具20に保持される部分は加工されないことから、ワークWの被保持部分の形状(面、辺など)と目標データの被保持部分の形状とのマッチングを行うことで、ワークWの三次元位置の特定および目標データの位置合わせを行ってもよい。また他の実施形態においては、作業者が手作業で位置合わせを行ってもよい。
 また、上述した実施形態に係る制御装置70は、1つのステレオカメラ30が撮像する深度画像について、深度差分が許容誤差未満になるまで切削を行った後、次のステレオカメラ30に基づく切削を行うが、これに限られない。例えば、他の実施形態においては、制御装置70は、1つのパスの切削を行うたびに対象のステレオカメラ30を切り替えてもよい。すなわち、他の実施形態に係る制御装置70は、ステップS10からステップS18の処理を全てのステレオカメラ30について行った後、ステップS19の加工の終了の判定を行ってもよい。
〈コンピュータ構成〉
 図7は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
 コンピュータ900は、プロセッサ901、メインメモリ902、ストレージ903、インタフェース904を備える。
 上述の制御装置70は、コンピュータ900に実装される。そして、上述した各処理部の動作は、プログラムの形式でストレージ903に記憶されている。プロセッサ901は、プログラムをストレージ903から読み出してメインメモリ902に展開し、当該プログラムに従って上記処理を実行する。また、プロセッサ901は、プログラムに従って、上述した各記憶部に対応する記憶領域をメインメモリ902に確保する。プロセッサ901の例としては、CPU(Central Processing Unit)、GPU(Graphic Processing Unit)、マイクロプロセッサなどが挙げられる。
 プログラムは、コンピュータ900に発揮させる機能の一部を実現するためのものであってもよい。例えば、プログラムは、ストレージに既に記憶されている他のプログラムとの組み合わせ、または他の装置に実装された他のプログラムとの組み合わせによって機能を発揮させるものであってもよい。なお、他の実施形態においては、コンピュータ900は、上記構成に加えて、または上記構成に代えてPLD(Programmable Logic Device)などのカスタムLSI(Large Scale Integrated Circuit)を備えてもよい。PLDの例としては、PAL(Programmable Array Logic)、GAL(Generic Array Logic)、CPLD(Complex Programmable Logic Device)、FPGA(Field Programmable Gate Array)が挙げられる。この場合、プロセッサ901によって実現される機能の一部または全部が当該集積回路によって実現されてよい。このような集積回路も、プロセッサの一例に含まれる。
 ストレージ903の例としては、磁気ディスク、光磁気ディスク、光ディスク、半導体メモリ等が挙げられる。ストレージ903は、コンピュータ900のバスに直接接続された内部メディアであってもよいし、インタフェース904または通信回線を介してコンピュータ900に接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ900に配信される場合、配信を受けたコンピュータ900が当該プログラムをメインメモリ902に展開し、上記処理を実行してもよい。少なくとも1つの実施形態において、ストレージ903は、一時的でない有形の記憶媒体である。
 また、当該プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、当該プログラムは、前述した機能をストレージ903に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であってもよい。
 上記態様によれば、加工プログラムを用意することなくワークを加工することができる。
 1…加工機械 10…テーブル 20…治具 30…ステレオカメラ 40…ロボットアーム 41…ベース 42…第一アーム 43…第二アーム 44…第三アーム 45…第四アーム 46…第五アーム 47…スピンドル 51…第一モータ 52…第二モータ 53…第三モータ 54…第四モータ 55…第五モータ 56…第六モータ 57…第七モータ 58…ドライバ 60…工具 70…制御装置 71…データ取得部 72…記憶部 73…位置計測部 74…位置合わせ部 75…表示制御部 76…差分算出部 77…切込量決定部 78…パス生成部 79…工具制御部 80…補正部 900…コンピュータ 901…プロセッサ 902…メインメモリ 903…ストレージ 904…インタフェース W…ワーク 

Claims (7)

  1.  ワークを機械加工する工具と、
     撮像範囲に前記ワークが入るように設置され、被写体の深度を撮像する深度カメラと、
     前記深度カメラが撮像した深度画像に基づいて、前記ワークの表面の三次元位置を計算する位置計測部と、
     前記ワークの目標形状を表す三次元データと前記ワークの三次元位置とに基づいて、前記ワークと前記目標形状とを重ね合わせたときの前記目標形状の三次元位置を計算する位置合わせ部と、
     前記ワークを所定の視点から見たときの前記ワークの表面の三次元位置と前記目標形状の表面の三次元位置との視線方向における差に基づいて前記ワークの表面上の複数の点それぞれにおける切込量を決定する切込量決定部と、
     決定された前記切込量に基づいて前記工具を移動させる工具制御部と
     を備える加工機械。
  2.  前記目標形状の三次元位置に基づいて、前記深度カメラを基準とする前記目標形状の表面の深度を計算する目標深度計算部を備え、
     前記位置計測部は、前記深度画像に基づいて前記ワークの表面の深度を特定し、
     前記切込量決定部は、前記ワークの表面の深度と前記目標形状の表面の深度との差に基づいて、前記切込量を決定する
     請求項1に記載の加工機械。
  3.  前記位置合わせ部は、前記工具の加工方向を前記深度カメラの撮像方向と一致させ、決定された前記切込量に基づいて前記工具を移動させる
     請求項2に記載の加工機械。
  4.  前記切込量決定部は前記ワークの表面と前記目標形状の表面との差が前記工具の最大切込量を超える点における切込量を、前記最大切込量に決定し、前記ワークの表面と前記目標形状の表面との差が前記工具の最大切込量を超えない点における切込量を、前記ワークの表面と前記目標形状の表面との差を所定数で除算した量に決定する、
     請求項1から請求項3の何れか1項に記載の加工機械。
  5.  前記切込量決定部は、前記工具による前記ワークの加工後における前記ワークの表面の三次元位置と前記目標形状の表面の三次元位置との差に基づいて、再度前記ワークの表面上の複数の点それぞれにおける切込量を決定する
     請求項1から請求項4の何れか1項に記載の加工機械。
  6.  ワークを機械加工する工具と、撮像範囲に前記ワークが入るように設置され、被写体の深度を撮像する深度カメラと、前記工具を駆動させるアクチュエータとを備える加工機械の制御装置であって、
     前記深度カメラが撮像した深度画像に基づいて、前記ワークの表面の三次元位置を計算する位置計測部と、
     前記ワークの目標形状を表す三次元データと前記ワークの三次元位置とに基づいて、前記ワークと前記目標形状とを重ね合わせたときの前記目標形状の三次元位置を計算する位置合わせ部と、
     前記ワークを所定の視点から見たときの前記ワークの表面の三次元位置と前記目標形状の表面の三次元位置との視線方向における差に基づいて前記ワークの表面上の複数の点それぞれにおける切込量を決定する切込量決定部と、
     決定された前記切込量に基づいて前記アクチュエータを制御する工具制御部と
     を備える加工機械の制御装置。
  7.  ワークを機械加工する工具と、撮像範囲に前記ワークが入るように設置され、被写体の深度を撮像する深度カメラと、前記工具を駆動させるアクチュエータとを備える加工機械の制御方法であって、
     前記深度カメラが撮像した深度画像に基づいて、前記ワークの表面の三次元位置を計算するステップと、
     前記ワークの目標形状を表す三次元データと前記ワークの三次元位置とに基づいて、前記ワークと前記目標形状とを重ね合わせたときの前記目標形状の三次元位置を計算するステップと、
     前記ワークを所定の視点から見たときの前記ワークの表面の三次元位置と前記目標形状の表面の三次元位置との視線方向における差に基づいて前記ワークの表面上の複数の点それぞれにおける切込量を決定するステップと、
     決定された前記切込量に基づいて前記アクチュエータを制御するステップと
     を備える加工機械の制御方法。
PCT/JP2023/003410 2022-02-03 2023-02-02 加工機械、加工機械の制御装置および加工機械の制御方法 WO2023149507A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022015574A JP2023113305A (ja) 2022-02-03 2022-02-03 加工機械、加工機械の制御装置および加工機械の制御方法
JP2022-015574 2022-02-03

Publications (1)

Publication Number Publication Date
WO2023149507A1 true WO2023149507A1 (ja) 2023-08-10

Family

ID=87552558

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/003410 WO2023149507A1 (ja) 2022-02-03 2023-02-02 加工機械、加工機械の制御装置および加工機械の制御方法

Country Status (2)

Country Link
JP (1) JP2023113305A (ja)
WO (1) WO2023149507A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4337566A (en) * 1980-06-09 1982-07-06 Solid Photography, Inc. Gauging system for machining surfaces
JPH0852638A (ja) * 1994-08-15 1996-02-27 Toshiba Mach Co Ltd 干渉チェック方法および加工プログラムチェック方法および加工適否チェック方法
JPH11138388A (ja) * 1997-11-14 1999-05-25 Toyoda Mach Works Ltd 3次元造形装置
JP2001264047A (ja) * 2000-03-17 2001-09-26 Hitachi Ltd 立体物造形作業の処理方法
JP2013107144A (ja) * 2011-11-18 2013-06-06 Disco Corp バイト切削装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4337566A (en) * 1980-06-09 1982-07-06 Solid Photography, Inc. Gauging system for machining surfaces
JPH0852638A (ja) * 1994-08-15 1996-02-27 Toshiba Mach Co Ltd 干渉チェック方法および加工プログラムチェック方法および加工適否チェック方法
JPH11138388A (ja) * 1997-11-14 1999-05-25 Toyoda Mach Works Ltd 3次元造形装置
JP2001264047A (ja) * 2000-03-17 2001-09-26 Hitachi Ltd 立体物造形作業の処理方法
JP2013107144A (ja) * 2011-11-18 2013-06-06 Disco Corp バイト切削装置

Also Published As

Publication number Publication date
JP2023113305A (ja) 2023-08-16

Similar Documents

Publication Publication Date Title
JP4167954B2 (ja) ロボット及びロボット移動方法
EP2682711B1 (en) Apparatus and method for three-dimensional measurement and robot system comprising said apparatus
JP4506685B2 (ja) 移動型ロボット
US9457470B2 (en) Robot system and method for calibration
JP5310130B2 (ja) 3次元視覚センサによる認識結果の表示方法および3次元視覚センサ
JP5606786B2 (ja) キャリブレーション方法及びキャリブレーション装置
JP3343682B2 (ja) ロボット動作教示装置および動作教示方法
TWI672207B (zh) 機械設備之定位系統及其方法
CN104215199B (zh) 一种假发头壳制作方法及系统
JP6171457B2 (ja) ロボット制御装置、ロボットシステム、ロボット、ロボット制御方法及びロボット制御プログラム
JP2005103644A (ja) 立体視誘導レーザ穿設システム
KR20220113781A (ko) 환경의 지형을 측정하는 방법
WO2023149507A1 (ja) 加工機械、加工機械の制御装置および加工機械の制御方法
CN113808272A (zh) 三维虚拟人头脸建模中的纹理映射方法
JP2018176185A (ja) 変形加工支援システムおよび変形加工支援方法
JP6029938B2 (ja) キャリブレーション方法および三次元加工装置
WO2010007960A1 (ja) 車載用カメラの視点変換映像システム及び視点変換映像取得方法
US11118899B2 (en) Work support system and work support method
KR100784734B1 (ko) 산업용 로봇 시스템의 타원 보간방법
Hyla Stereovision system for overhead travelling crane workspace visualization—Validation approach
JP7030906B2 (ja) 情報処理装置、情報処理方法及びプログラム
WO2022181500A1 (ja) 視覚センサの出力から得られる3次元位置情報を用いるシミュレーション装置
JP7465133B2 (ja) 情報処理装置、情報処理方法
JPH05197416A (ja) ロボット動作点教示装置
WO2023074882A1 (ja) 制御装置、産業機械および制御方法

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: 23749823

Country of ref document: EP

Kind code of ref document: A1