WO2022145299A1 - キサゲ加工を行うロボットシステム、方法、及びコンピュータプログラム - Google Patents

キサゲ加工を行うロボットシステム、方法、及びコンピュータプログラム Download PDF

Info

Publication number
WO2022145299A1
WO2022145299A1 PCT/JP2021/047417 JP2021047417W WO2022145299A1 WO 2022145299 A1 WO2022145299 A1 WO 2022145299A1 JP 2021047417 W JP2021047417 W JP 2021047417W WO 2022145299 A1 WO2022145299 A1 WO 2022145299A1
Authority
WO
WIPO (PCT)
Prior art keywords
force
robot
scraper
target value
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2021/047417
Other languages
English (en)
French (fr)
Inventor
忠則 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Priority to DE112021005623.9T priority Critical patent/DE112021005623T5/de
Priority to US18/266,863 priority patent/US20240051171A1/en
Priority to JP2022573017A priority patent/JP7469518B2/ja
Priority to CN202180086481.0A priority patent/CN116802019B/zh
Publication of WO2022145299A1 publication Critical patent/WO2022145299A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B26HAND CUTTING TOOLS; CUTTING; SEVERING
    • B26DCUTTING; DETAILS COMMON TO MACHINES FOR PERFORATING, PUNCHING, CUTTING-OUT, STAMPING-OUT OR SEVERING
    • B26D5/00Arrangements for operating and controlling machines or devices for cutting, cutting-out, stamping-out, punching, perforating, or severing by means other than cutting
    • B26D5/005Computer numerical control means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/005Manipulators for mechanical processing tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23DPLANING; SLOTTING; SHEARING; BROACHING; SAWING; FILING; SCRAPING; LIKE OPERATIONS FOR WORKING METAL BY REMOVING MATERIAL, NOT OTHERWISE PROVIDED FOR
    • B23D79/00Methods, machines, or devices not covered elsewhere, for working metal by removal of material
    • B23D79/02Machines or devices for scraping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1628Program controls characterised by the control loop
    • B25J9/1633Program controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1679Program controls characterised by the tasks executed
    • B25J9/1684Tracking a line or surface by means of sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B26HAND CUTTING TOOLS; CUTTING; SEVERING
    • B26DCUTTING; DETAILS COMMON TO MACHINES FOR PERFORATING, PUNCHING, CUTTING-OUT, STAMPING-OUT OR SEVERING
    • B26D3/00Cutting work characterised by the nature of the cut made; Apparatus therefor
    • B26D3/08Making a superficial cut in the surface of the work without removal of material, e.g. scoring, incising
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45058Grinding, polishing robot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45096Polishing manipulator

Definitions

  • a robot system that performs a scraping process to flatten the surface of a work includes a robot that moves a scraper that scrapes the surface and a control device that controls the robot, and the control device is a robot.
  • the robot By moving the scraper against the surface while pressing it in the direction along the surface, the robot performs the shaving process, and the robot repeatedly increases or decreases the pressing force that presses the scraper against the surface while the shaving processing is being performed.
  • the position of the depth of scraping the surface is repeatedly increased or decreased.
  • the robot system 10 includes a robot 12, a force sensor 14, a scraper 16, and a control device 18.
  • the robot 12 is a vertical articulated robot and has a robot base 20, a swivel body 22, a lower arm portion 24, an upper arm portion 26, and a wrist portion 28.
  • the robot base 20 is fixed on the floor of the work cell.
  • the swivel body 22 is provided on the robot base 20 so as to be able to swivel around the vertical axis.
  • the lower arm portion 24 is rotatably provided on the swivel body 22 around a horizontal axis
  • the upper arm portion 26 is rotatably provided on the tip portion of the lower arm portion 24.
  • the wrist portion 28 has a wrist base 28a rotatably provided at the tip of the upper arm portion 26 and a wrist flange 28b provided on the wrist base 28a so as to be rotatable around the wrist axis A1. ..
  • Servo motors 34 are provided on each component of the robot 12 (robot base 20, swivel body 22, lower arm 24, upper arm 26, wrist 28). These servomotors 34 rotate each movable element of the robot 12 (swivel body 22, lower arm 24, upper arm 26, wrist 28, wrist flange 28b) around the drive shaft in response to a command from the control device 18. Move it. As a result, the robot 12 can move the scraper 16 and arrange it in an arbitrary position and posture.
  • the scraper 16 is fixed to the tip of the force sensor 14 and scrapes the surface of the work W for scraping.
  • the scraper 16 has a flexible handle portion 30 and a blade portion 32 fixed to the tip end portion of the handle portion 30.
  • the base end portion of the handle portion 30 is fixed to the tip end portion of the force sensor 14, and is connected to the wrist flange 28b of the robot 12 via the force sensor 14.
  • FIG. 4 shows a state in which the robot 12 presses the tip 32a of the blade portion 32 of the scraper 16 against the surface Q of the work W.
  • the reaction force F'of the pressing force F passes from the surface Q via the scraper 16. It is applied to the force sensor 14.
  • Each of the strain gauges of the force sensor 14 transmits the detection data corresponding to the force acting on the force sensor 14 to the control device 18.
  • the processor 40 acts on the force sensor 14 at this time, and the force f in the x-axis, y-axis, and z-axis directions of the sensor coordinate system C3.
  • the torque ⁇ in the directions around the x-axis, around the y-axis, and around the z-axis.
  • the processor 40 has a magnitude of reaction force F'acting on the tip 32a of the blade portion 32 in a direction orthogonal to the surface Q based on the force f and the torque ⁇ and the state data CD of the scraper 16 at this time. Is calculated.
  • a plurality of teaching points TP 1 , TP 2 and TP 3 for positioning the tip 32a (that is, TCP) of the scraper 16 in order to perform scraping are known positions in the robot coordinate system C1. It is set along the surface Q of the work W positioned at.
  • the teaching point TP 2 is set at a position separated to the right of the teaching point TP 1
  • the teaching point TP 3 is set at a position separated to the upper right of the teaching point TP 2 . ..
  • the positions of the teaching points TP 1 and TP 2 in the robot coordinate system C1 in the z-axis direction are substantially the same as each other.
  • the processor 40 When scraping, the processor 40 starts the position control ⁇ and generates the position control command PC n for moving the scraper 16 to the teaching point TP n by the robot 12.
  • the processor 40 positions the scraper 16 in the order of teaching points TP 1 ⁇ TP 2 ⁇ TP 3 by operating each servomotor 34 of the robot 12 according to the position control command PC n .
  • the processor 40 moves the scraper 16 (specifically, the tip 32a) along the movement path MP defined by the plurality of teaching points TP n .
  • the processor 40 moves the scraper 16 (or the wrist flange 28b) along the surface Q in the direction MD of the movement path MP according to the position control command PC n , and moves the scraper 16 to the work W according to the force control command FC. It is moved in the direction of approaching or separating from the surface Q of the robot (that is, the z-axis direction of the robot coordinate system C1).
  • the processor 40 generates a speed command FC V_0 to control the pressing force F to the target value ⁇ , and by adding the speed command FC V_2 to the speed command PC V_2 to the servomotor 34, the scraper 16 is directed toward the surface Q (that is,). , Downward) at the speed VF_0 corresponding to (specifically, matching) the speed command FC V_0 .
  • the robot 12 moves the scraper 16 in the direction MD'in FIG. 6 after passing through the teaching point TP1.
  • the distances in the x-axis and z-axis directions of the robot coordinate system C1 between the teaching point TP1 and the position P1 in FIG. 7 are the distances x1 and z1, respectively, the distances x1 and z1 and the speeds.
  • the command PC V_2 (speed VP_2 ) and the speed command FC V_0 (speed VF_0 ) satisfy the following equation (1).
  • the angle ⁇ 2 can be set in a desired range (for example, for example). It can be controlled from 15 ° to 35 °).
  • the maximum value of the velocity command FC V_1 (that is, the velocity VF_1 ) generated while the scraper 16 is in contact with the surface Q is the velocity command FC V_1 generated before the scraper 16 is in contact with the surface Q (that is, the velocity VF_1 ). That is, it can be set larger than the speed VF_0 ).
  • the processor 40 moves to the right along the surface Q while pressing the scraper 16 with the pressing force F having a size corresponding to the target value ⁇ by the robot 12, whereby the surface Q is moved by the tip 32a of the scraper 16. Perform scraping.
  • the processor 40 terminates the force control ⁇ , while the position control command PC 3 for moving the scraper 16 to the teaching point TP 3 . To generate. Then, the processor 40 moves the scraper 16 to the upper right toward the teaching point TP 3 by operating the robot 12 according to the position control command PC 3 .
  • the scraper 16 moves upward to the right on the orbit TR inclined so as to form an angle ⁇ 3 ( ⁇ 90 °) with respect to the surface Q of the work W, and the tip 32a of the scraper 16 is on the surface at the position P2. Separate from Q. In this way, the surface Q is scraped by the scraper 16 from the position P1 to the position P2 over a distance x2, and scraping is completed.
  • the coordinates of the position P2 in the x-axis direction of the robot coordinate system C1 are substantially the same as the teaching point TP2. After that, the scraper 16 reaches the teaching point TP 3 (or a position immediately below the teaching point TP 3).
  • FIG. 8 shows an example of the time change characteristic of the pressing force F during scraping.
  • the pressing force F is repeatedly increased or decreased between the first force F1 and the second force F2 (> 0) smaller than the first force F1 during scraping. It is changing.
  • the processor 40 increases or decreases the pressing force F as shown in FIG. 8 by the force control ⁇ executed during scraping.
  • the processor 40 generates the force command FC F as the force control command FC as follows. That is, after the start of the force control ⁇ , the processor 40 generates a force command FC F that specifies the initial target value ⁇ 0 of the pressing force F, and operates the robot 12 in accordance with the force command FC F. As a result, the scraper 16 comes into contact with the surface Q at the position P1 as shown in FIG. 7, the pressing force F begins to increase, and reaches the second force F2 at the time point t1.
  • the processor 40 generates a force command FC F for increasing the pressing force F by the amount of change ⁇ F from the time point t 1 at a predetermined time ⁇ 1 and then decreasing the pressing force F by the amount of change ⁇ F at a predetermined time ⁇ 2 .
  • the above-mentioned initial target value ⁇ 0 may be set to a force F1 or F2, or may be set to any force value.
  • the processor 40 may generate the force command FC F as the force control command FC as follows. That is, after the start of the force control ⁇ , the processor 40 generates a force command FC F for designating the first target value ⁇ 1-2 corresponding to the first force F1. By operating the robot 12 according to this force command FC F , the scraper 16 abuts on the surface Q at the position P1, the pressing force F reaches the second force F2 at the time point t1, and then at the time point t2. Reach the first force F1.
  • ⁇ 2_2 ⁇ F2 the pressing force F does not reach the second target value ⁇ 2_2 at the time point t3, and the processor 40 uses the processor 40 before the pressing force F reaches the second target value ⁇ 2_2 .
  • the force command FC F that specifies the target value ⁇ 1_2 of 1 will be generated.
  • the processor 40 generates a force command FC F so that the target value ⁇ of the pressing force F changes with time with the time change characteristic corresponding to the characteristic shown in FIG. You may.
  • the processor 40 generates a force command FC F so as to change the target value ⁇ stepwise with time in a predetermined control cycle T'( ⁇ T).
  • the target value ⁇ can be periodically changed between the first target value ⁇ 1 and the second target value ⁇ 2 so as to have a time change characteristic corresponding to the characteristic shown in FIG. can.
  • the processor 40 executes force control ⁇ while executing scraping, and repeatedly increases / decreases the target value ⁇ in the force control ⁇ to increase / decrease the pressing force F.
  • the processor 40 sets the target value ⁇ as the first target value ⁇ 1 ( ⁇ 1_1 , ⁇ 1_1 ) and the second target value ⁇ 2 ( ⁇ 2_1 , ⁇ 2_1 ). It is changing between.
  • the pressing force F can be controlled with high accuracy so as to change with time with the characteristics shown in FIG. Therefore, the depth Z of the recess R can be managed with high accuracy.
  • the processor 40 executes the position control ⁇ together with the force control ⁇ to move the scraper 16 in the direction MD while pressing the scraper 16 against the surface Q. According to this configuration, the trajectory TR of the scraper 16 can be controlled with high accuracy. Further, in the present embodiment, the processor 40 increases / decreases the pressing force F periodically (specifically, in the period T). According to this configuration, it is possible to form recesses R in which valley portions En are lined up at equal intervals in the x-axis direction of the robot coordinate system C1.
  • the above-mentioned first target value ⁇ 1 causes the handle portion 30 to bend when the blade portion 32 is pressed against the surface Q by the first force F1 during scraping. It may be defined as a value that can be used.
  • FIG. 11 schematically shows a state in which the handle portion 30 is bent during scraping.
  • the robot 12 presses the tip 32a of the scraper 16 against the surface Q with the first force F1, whereby the handle portion 30 of the scraper 16 is curved so as to bulge downward. It is bent.
  • the second target value ⁇ 2 ( ⁇ 2_1 , ⁇ 2_1 , ⁇ F) is set so that the handle portion 30 of the scraper 16 bends even when the scraper 16 is pressed against the surface Q by the second force F2. You may.
  • the memory 42 may store the target value setting program PG1 for changing the target value ⁇ as described above in advance.
  • the processor 40 determines the target value ⁇ according to the target value setting program PG1 and generates the force command FC F for designating the target value ⁇ .
  • the form for increasing or decreasing the pressing force F (target value ⁇ ) during scraping is not limited to the example shown in FIG.
  • other modes for increasing or decreasing the pressing force F (target value ⁇ ) will be described with reference to FIGS. 12 to 15.
  • the processor 40 changes the pressing force F between the first force F1 and the second force F2 ( ⁇ F1) in the period T.
  • the processor 40 increases the pressing force F by the amount of change ⁇ F from the time point t 1 at the time ⁇ 1 , maintains it for a predetermined time ⁇ 3 , and then decreases it by the amount of change ⁇ F at the time ⁇ 2 .
  • the processor 40 again designates the first target value ⁇ 1-2 with the force command FCF .
  • the processor 40 repeats the cycle of designating the second target value ⁇ 2_2 after the time ⁇ 1 + ⁇ 3 and designating the first target value ⁇ 1-2 after the time ⁇ 2 in the force command FC F.
  • the pressing force F can be changed in the period T between the first force F1 and the second force F2.
  • the processor 40 controls the target value ⁇ of the pressing force F in the force command FC F so as to correspond to the time change characteristic shown in FIG. 13 in the control cycle T'( ⁇ T). You may change the time step by step.
  • a recess R having a valley portion En extending linearly in parallel with the x-axis of the robot coordinate system C1 can be formed.
  • the processor 40 changes the peak value of the first force F1 every cycle T. Specifically, the processor 40 maintains the pressing force F at the force F1 _A in the waveform of the second m-1st (m is a positive integer) peak FP 2m-1 in FIG. In the waveform of the second peak FP 2m , the pressing force F is maintained at the force F1 _B ( ⁇ F1 _A ).
  • a first valley portion En_A extending linearly and a second valley portion En_B having a depth shallower than the first valley portion En_A and extending linearly are used.
  • a recess R having the above can be formed.
  • the processor 40 maintains the pressing force F at the force F1 _B in the waveform of the second m-1st peak FP 2m-1 in FIG. 14, while the pressing force F is the waveform of the second peak FP 2m in FIG.
  • a force command FC F may be generated to maintain F at force F1 _A .
  • the processor 40 maintains the pressing force F at the first force F1 for a predetermined time as in FIG. 13, but the second force F2 shown in FIG. 15 is shown in FIG. It is set higher than the second force F2 shown in 13. According to the example shown in FIG. 15, the depth F of the mountain portion Gn of the formed recess R can be made relatively large.
  • the processor 40 can control the pressing force F so as to have the time change characteristic shown in FIG. 15 by executing the force control ⁇ described with reference to FIG.
  • the processor 40 may automatically determine at least one of the machining conditions MC according to the input data from the operator.
  • the machining condition MC is the length of the recess R to be formed in addition to the angles ⁇ 2, the distances x1 and z1, the speed command PC V_2 (speed VP_2 ), and the speed command FC V_0 (speed VF_0 ) shown in FIG. x2, the number k and the depth Z (FIG. 9) of the valley portions En (or mountain portions G n ) formed in the recess R, and the two mountain portions G n and G adjacent to each other in the x-axis direction of the robot coordinate system C1.
  • the distance X (FIG.
  • the operator operates the input device 46 to input the speed command PC V_2 (speed VP_2 ), the length x2 of the recess R, the number k, and the depth Z as the machining condition MC.
  • the processor 40 automatically determines the target value ⁇ from the input depth Z.
  • the memory 42 stores data in which the first target value ⁇ 1 and the depth Z of the valley portion En (or the depth Z of the second target value ⁇ 2 and the mountain portion G n ) are associated with each other and stored.
  • the table DT1 may be stored in advance. In this case, the processor 40 can automatically determine the target value ⁇ by searching the data table DT1 for the target value ⁇ 1 (or ⁇ 2 ) corresponding to the input depth Z.
  • the operator may input the gain Ga as the machining condition MC instead of the speed command PC V_2 (speed VP_2 ) described above.
  • the processor 40 may automatically determine the period T from the input gain Ga.
  • the memory 42 may store in advance the data table DT2 in which the gain Ga and the period T are stored in association with each other.
  • step S12 the processor 40 determines whether or not the scraper 16 has reached the teaching point TP1.
  • the servomotor 34 of the robot 12 is provided with a rotation detector (encoder, Hall element, etc.) that detects the rotation (specifically, the rotation angle or the rotation position) of the servomotor 34.
  • the processor 40 acquires the position data of the scraper 16 (specifically, TCP) in the robot coordinate system C1 based on the feedback from the rotation detector, and from the position data, the scraper 16 reaches the teaching point TP1. It can be determined whether or not it has been reached. If the processor 40 determines that the scraper 16 has reached the teaching point TP 1 (that is, YES), the processor 40 proceeds to step S13, while the processor 16 determines that the teaching point TP 1 has not been reached (that is, NO). If so, the step S12 is looped.
  • TCP position data of the scraper 16
  • FIG. 19 shows the time change characteristic of the pressing force F in the first force control ⁇ 1.
  • the processor 40 does not increase or decrease the pressing force F as shown in FIGS. 8, 12 to 15, and the predetermined target value ⁇ 3
  • step S14 the processor 40 determines whether the scraper 16 (or wrist flange 28b) has reached the position corresponding to the teaching point TP2 . If the processor 40 determines YES, the processor proceeds to step S15, while if it determines NO, the processor 40 loops step S14.
  • step S16 the processor 40 determines whether or not the scraper 16 has reached the teaching point TP 3 . If the determination is YES, the processor 40 proceeds to step S17, while if the determination is NO, the processor 40 loops step S16. Then, in step S17, the processor 40 ends the position control ⁇ .
  • step S2 the processor 40 executes finishing.
  • the finishing process is to reduce the minute irregularities formed on the surface Q after roughing to a second dimension (for example, 5 ⁇ m) smaller than the first dimension and to make it function as the above-mentioned oil sump. This is scraping to form a recess.
  • step S2 will be described with reference to FIG.
  • the flow shown in FIG. 18 is different from the flow shown in FIG. 17 in step S13'.
  • the processor 40 starts the second force control ⁇ 2 in step S13'.
  • the processor 40 repeatedly increases or decreases the pressing force F by executing the force control ⁇ described with reference to FIGS. 8 and 12 to 15 described above.
  • the surface Q is scraped to increase the flatness of the surface Q to some extent by step S1 (roughing), and then step S2 (finishing) is executed. While further increasing the flatness of the surface Q, it is possible to form a recess R that functions as an oil sump as shown in FIG. As a result, the robot system 10 can automatically perform roughing and finishing in succession.
  • step S2 may be executed first, and then step S2 may be executed. Further, the processor 40 may alternately and repeatedly execute steps S1 and S2 a plurality of times. The processor 40 executes the flow shown in FIG. 16 according to the target value setting program PG1 and the work program PG2 described above.
  • the target value setting program PG1 is a computer program in which an algorithm for generating the target value ⁇ is defined, while the work program PG2 is the position data of the teaching point TPn , and the position control ⁇ and the force control ⁇ . It is a computer program that specifies the statement to execute.
  • the target value setting program PG1 and the work program PG2 may be stored in the memory 42 as separate computer programs from each other, or may be integrated into one computer program and stored in the memory 42.
  • the pressing force F is shown in FIG.
  • the first force F1 is reached and the scraper 16 reaches the midpoint between the swing peak points P3 and P4
  • the pressing force F reaches the second force F2 in FIG.
  • the increase / decrease of F and the swing of the scraper 16 may be synchronized.
  • the recesses R having the valley portions En arranged in a staggered pattern in the x-axis direction of the robot coordinate system C1 can be formed.
  • the processor 40 executes the position control ⁇ , and the scraper 16 is set by the robot 12 at the teaching points TP 11 ⁇ TP 12 ⁇ TP 13 ⁇ TP 14 ⁇ TP 15 ⁇ TP 16 ... Move in order. As a result, the scraper 16 comes into contact with the surface Q at the teaching point TP 12 . After that, the processor 40 moves the wrist flange 28b of the robot 12 to the positions corresponding to the teaching points TP 13 , TP 14 , TP 15 and TP 16 in order, so that the scraper 16 is pressed against the surface Q and along the surface Q. And move it to the right. In this way, scraping can be performed.
  • the first force F1 or the second force F2 may change in each period T.
  • the force of 1 may be different from F1 i + 1 .
  • the force sensor 14 may be inserted between the work cell and the robot base 20, for example, or may be provided at any part of the robot 12. Further, the force sensor 14 is not limited to the robot 12, and may be provided on the side of the work W. For example, the pressing force F can be detected by inserting the force sensor 14 between the work W and the mounting surface on which the work W is placed.
  • the force sensor 14 is not limited to the 6-axis force sensor, and may be, for example, a 1-axis or 3-axis force sensor, or any sensor capable of detecting the pressing force F.
  • the origin of the sensor coordinate system C3 is not limited to the center of the force sensor 14, and may be arranged at any position known to the force sensor 14, and each axis may be defined in any direction. ..

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Forests & Forestry (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Manipulator (AREA)
  • Milling, Broaching, Filing, Reaming, And Others (AREA)
  • Machine Tool Sensing Apparatuses (AREA)

Abstract

従来、一方向に並ぶ複数の凹凸をキサゲ加工によってワークの表面に形成する作業は、熟練者によって手動で行われていた。 ロボットシステム10は、ワークの表面を削るスクレーパ16を移動させるロボット12と、ロボット12を制御する制御装置18とを備える。制御装置18は、ロボット12によってスクレーパ16を表面に押し付けながら該表面に沿う方向へ移動させることで、キサゲ加工を実行し、キサゲ加工を実行している間、ロボット12がスクレーパ16を表面に押し付ける押付力を繰り返し増減させるように該ロボット12の位置を制御することで、表面を削る深さを繰り返し増減させる。

Description

キサゲ加工を行うロボットシステム、方法、及びコンピュータプログラム
 本開示は、キサゲ加工を行うロボットシステム、方法、及びコンピュータプログラムに関する。
 キサゲ加工を行うロボットが知られている(例えば、特許文献1)。
特開2004-042164号公報
 従来、一方向に並ぶ複数の凹凸をキサゲ加工によってワークの表面に形成する作業は、熟練者によって手動で行われていた。
 本開示の一態様において、ワークの表面を平坦にするために削るキサゲ加工を行うロボットシステムは、表面を削るスクレーパを移動させるロボットと、ロボットを制御する制御装置とを備え、制御装置は、ロボットによってスクレーパを表面に押し付けながら該表面に沿う方向へ移動させることで、キサゲ加工を実行し、キサゲ加工を実行している間、ロボットがスクレーパを表面に押し付ける押付力を繰り返し増減させるように該ロボットの位置を制御することで、表面を削る深さを繰り返し増減させる。
 本開示の他の態様において、ワークの表面を削るスクレーパを移動させるロボットを用いて、該表面を平坦にするために削るキサゲ加工の方法は、ロボットによってスクレーパを表面に押し付けながら該表面に沿う方向へ移動させることでキサゲ加工を実行し、該キサゲ加工を実行している間、ロボットがスクレーパを表面に押し付ける押付力を繰り返し増減させるように該ロボットの位置を制御することで、表面を削る深さを繰り返し増減させる。
 本開示によれば、一方向に並ぶ複数の谷部及び山部を有する凹部を、ロボットの動作により迅速に形成できる。したがって、キサゲ加工のサイクルタイムを縮減することができるとともに、熟練者が形成するのと同等の品質を有する凹部を自動で形成することができる。
一実施形態に係るロボットシステムの概略図である。 図1に示すロボットシステムのブロック図である。 図1に示すスクレーパを、図1中の矢印Bから見た拡大図である。 図1に示すスクレーパをワークの表面に押し付けた状態を示す。 ワークの表面に対して設定された教示点の一例を示す。 位置制御指令としての速度指令と、力制御指令としての速度指令を説明するための図である。 キサゲ加工中にスクレーパが実際に移動する軌道を示す。 一実施形態に係る力制御における押付力の時間変化特性を示す。 キサゲ加工により形成された凹部を模式的に示す。 キサゲ加工により形成された凹部を模式的に示す。 キサゲ加工中のスクレーパの柄部の状態を模式的に示す。 他の実施形態に係る力制御における押付力の時間変化特性を示す。 さらに他の実施形態に係る力制御における押付力の時間変化特性を示す。 さらに他の実施形態に係る力制御における押付力の時間変化特性を示す。 さらに他の実施形態に係る力制御における押付力の時間変化特性を示す。 キサゲ加工方法の動作フローの一例を示す。 図16中のステップS1のフローの一例を示す。 図16中のステップS2のフローの一例を示す。 図17中のステップS13で実行する力制御における押付力の時間変化特性を示す。 キサゲ加工におけるスクレーパの軌道の他の例を示す。 ワークの表面に対して設定された教示点の他の例を示す。
 以下、本開示の実施の形態を図面に基づいて詳細に説明する。なお、以下に説明する種々の実施形態において、同様の要素には同じ符号を付し、重複する説明を省略する。また、以下の説明においては、図中のロボット座標系C1のx軸プラス方向を右方、y軸プラス方向を前方、z軸プラス方向を上方として言及することがある。
 まず、図1及び図2を参照して、一実施形態に係るロボットシステム10について説明する。ロボットシステム10は、ワークWの表面Qを平坦にするために削るキサゲ加工を行うシステムである。キサゲ加工とは、ワークWの表面Qに形成された微小凹凸の、該ワークWの厚さ方向の寸法を予め定めた範囲内(例えば、μmオーダー)にするために、該表面Qを削る加工である。この微小凹凸は、摺動面として用いられる該表面Qに潤滑油を溜めるための、いわゆる「油溜り」として機能する。
 ロボットシステム10は、ロボット12、力センサ14、スクレーパ16、及び制御装置18を備える。本実施形態においては、ロボット12は、垂直多関節ロボットであって、ロボットベース20、旋回胴22、下腕部24、上腕部26、及び手首部28を有する。ロボットベース20は、作業セルの床の上に固定されている。旋回胴22は、鉛直軸周りに旋回可能となるように、ロボットベース20に設けられている。
 下腕部24は、旋回胴22に水平軸周りに回動可能に設けられ、上腕部26は、下腕部24の先端部に回動可能に設けられている。手首部28は、上腕部26の先端部に回動可能に設けられた手首ベース28aと、手首軸A1周りに回動可能となるように該手首ベース28aに設けられた手首フランジ28bとを有する。
 ロボット12の各構成要素(ロボットベース20、旋回胴22、下腕部24、上腕部26、手首部28)には、サーボモータ34(図2)が設けられている。これらサーボモータ34は、制御装置18からの指令に応じて、ロボット12の各可動要素(旋回胴22、下腕部24、上腕部26、手首部28、手首フランジ28b)を駆動軸周りに回動させる。その結果、ロボット12は、スクレーパ16を移動させて任意の位置及び姿勢に配置することができる。
 力センサ14は、ロボット12がスクレーパ16をワークWの表面Qに押し付ける押付力Fを検出する。例えば、力センサ14は、円筒状の本体部と、該本体部に設けられた複数の歪ゲージとを有する6軸力覚センサであって、手首フランジ28bとスクレーパ16との間に介挿されている。本実施形態においては、力センサ14は、その中心軸が手首軸A1と一致するように配置されている。
 スクレーパ16は、力センサ14の先端部に固定され、キサゲ加工のためにワークWの表面を削る。具体的には、スクレーパ16は、可撓性の柄部30と、該柄部30の先端部に固定された刃部32とを有する。柄部30は、その基端部が力センサ14の先端部に固定され、該力センサ14を介して、ロボット12の手首フランジ28bに連結されている。
 柄部30は、力センサ14の先端部から軸線A2に沿って直線状に延びている。刃部32は、柄部30よりも高い剛性を有する金属材料(例えば、鋼鉄)から構成され、その基端32bから先端32aまで軸線A2に沿って延在している。なお、軸線A2は、手首軸A1と略直交してもよい。
 図3に示すように、刃部32の先端32aは、上側(図1中の矢印Bの方向)から見た場合に、その幅方向両端から中央に向かうにつれて外方へ膨出するように湾曲している。スクレーパ16は、その刃部32の先端32aをワークWの表面Qに押し当てて、該先端32aで該表面Qを削る。
 制御装置18は、ロボット12の動作を制御する。図2に示すように、制御装置18は、プロセッサ40、メモリ42、I/Oインターフェース44、入力装置46、及び表示装置48を有するコンピュータである。プロセッサ40は、メモリ42、I/Oインターフェース44、入力装置46、及び表示装置48と、バス50を介して通信可能に接続されており、これらコンポーネントと通信しつつ、キサゲ加工を実行するための演算処理を行う。
 メモリ42は、RAM又はROM等を有し、プロセッサ40が実行する演算処理で利用される各種データ、及び演算処理の途中で生成される各種データを、一時的又は恒久的に記憶する。I/Oインターフェース44は、例えば、イーサネット(登録商標)ポート、USBポート、光ファイバコネクタ、又はHDMI(登録商標)端子を有し、プロセッサ40からの指令の下、外部機器との間でデータを有線又は無線で通信する。本実施形態においては、ロボット12の各サーボモータ34及び力センサ14は、I/Oインターフェース44に通信可能に接続されている。
 入力装置46は、キーボード、マウス、又はタッチパネル等を有し、オペレータによるデータ入力が可能である。表示装置48は、液晶ディスプレイ又は有機ELディスプレイ等を有し、プロセッサ40からの指令の下、各種データを視認可能に表示する。なお、入力装置46又は表示装置48は、制御装置18の筐体に一体に組み込まれてもよいし、又は、制御装置18の筐体とは別体として該筐体に外付けされてもよい。
 図1に示すように、ロボット12には、ロボット座標系C1が設定されている。ロボット座標系C1は、ロボット12の各可動要素の動作を制御するための座標系であって、ロボットベース20に対して固定されている。本実施形態においては、ロボット座標系C1は、その原点が、ロボットベース20の中心に配置され、そのz軸が、旋回胴22の旋回軸に一致するように、ロボット12に対して設定されている。
 一方、スクレーパ16には、ツール座標系C2が設定されている。ツール座標系C2は、ロボット座標系C1におけるスクレーパ16(又は、手首フランジ28b)の位置及び姿勢を規定する座標系である。本実施形態においては、ツール座標系C2は、その原点(いわゆる、TCP)が、柄部30が撓んでいない状態における刃部32の先端32aの中心に配置され、そのz軸が、軸線A2(又は、先端32aの中心における、該先端32aの曲面の法線方向)と平行となるように、スクレーパ16に対して設定されている。
 スクレーパ16を移動させるとき、制御装置18のプロセッサ40は、ロボット座標系C1においてツール座標系C2を設定し、設定したツール座標系C2によって表される位置及び姿勢にスクレーパ16を配置させるように、ロボット12の各サーボモータ34への指令(位置指令、速度指令、トルク指令等)を生成する。こうして、プロセッサ40は、ロボット座標系C1における任意の位置及び姿勢にスクレーパ16を位置決めし、これによりキサゲ加工を実行する。
 一方、力センサ14には、センサ座標系C3が設定されている。センサ座標系C3は、力センサ14に作用する力の方向を定義する座標系である。本実施形態においては、センサ座標系C3は、その原点が力センサ14の中心に配置され、そのz軸が手首軸A1に一致する(又は、そのx軸がツール座標系C2のz軸と平行となる)ように、力センサ14に対して設定されている。
 図4に、ロボット12がスクレーパ16の刃部32の先端32aをワークWの表面Qに押し付けている状態を示す。ロボット12がスクレーパ16の先端32aを表面Qに対し、該表面Qと直交する方向へ押付力Fで押し付けた場合、該押付力Fの反力F’が、該表面Qからスクレーパ16を介して力センサ14に加えられる。
 力センサ14の歪ゲージの各々は、このときに力センサ14に作用する力に応じた検出データを制御装置18に送信する。プロセッサ40は、I/Oインターフェース44を通して力センサ14から受信した検出データに基づいて、このときに力センサ14に作用する、センサ座標系C3のx軸、y軸及びz軸の方向の力fと、x軸周り、y軸周り及びz軸周りの方向のトルクτとを求める。プロセッサ40は、力f及びトルクτと、このときのスクレーパ16の状態データCDとに基づいて、刃部32の先端32aに対し、表面Qと直交する方向に作用する反力F’の大きさを演算する。
 状態データCDは、例えば、軸線A2と表面Qとの角度θ1、手首軸A1(又は、センサ座標系C3の原点)から刃部32の先端32aまでの距離d、ロボット座標系C1におけるツール座標系C2(又はセンサ座標系C3)の位置及び姿勢を示す位置データ、並びに、柄部30の撓みデータ(例えば、柄部30の撓み量又は弾性率)の少なくとも1つを含む。このように、力センサ14は、反力F’を押付力Fとして検出し、制御装置18は、力センサ14の検出データに基づいて押付力F(反力F’)の大きさを求めることができる。
 次に、図5~図7を参照して、ロボット12が実行するキサゲ加工について説明する。図5に示すように、キサゲ加工を実行するためにスクレーパ16の先端32a(つまり、TCP)を位置決めすべき複数の教示点TP、TP及びTPが、ロボット座標系C1の既知の位置に位置決めされたワークWの表面Qに沿って設定される。
 本実施形態においては、教示点TPは、教示点TPよりも右方に離隔した位置に設定され、教示点TPは、教示点TPの右上方に離隔した位置に設定されている。なお、教示点TP及びTPのロボット座標系C1のz軸方向の位置は、互いに略同じである。これら教示点TP(n=1,2,3)は、ロボット座標系C1の座標として表される。
 キサゲ加工を行うとき、プロセッサ40は、位置制御αを開始し、ロボット12によってスクレーパ16を教示点TPに移動させるための位置制御指令PCを生成する。プロセッサ40は、この位置制御指令PCに従ってロボット12の各サーボモータ34を動作させることによって、スクレーパ16を、教示点TP→TP→TPの順に位置決めする。この位置制御αにより、プロセッサ40は、スクレーパ16(具体的には、先端32a)を、複数の教示点TPによって規定される移動経路MPに沿って移動させる。
 なお、本実施形態においては、理解の容易のために、ワークWの表面Qは、ロボット座標系C1のx-y平面と略平行であり、移動経路MPの方向MDは、ロボット座標系C1のx-z平面と略平行であるとする。位置制御指令PCは、スクレーパ16(つまり、ロボット12の手首フランジ28b)を、教示点TPまで移動させるときの速度VP_nを規定する速度指令PCV_nを有する。
 位置制御αの開始後、プロセッサ40は、位置制御指令PCに従ってロボット12を動作させて、スクレーパ16を教示点TPへ移動させる。スクレーパ16の先端32aが教示点TPに配置されたとき、図6に示すように、該先端32aは、表面Qから上方へ離隔する。
 スクレーパ16が教示点TPへ到達すると、プロセッサ40は、力制御βを開始する。力制御βの開始後、プロセッサ40は、力センサ14の検出データに基づいて、ロボット12がスクレーパ16をワークWの表面Qに押し付ける押付力Fを所定の目標値φに制御するように、ロボット12の手首フランジ28b(又は、TCP)の位置を制御する。
 具体的には、プロセッサ40は、力制御βにおいて、力センサ14の検出データに基づいて取得した押付力F(具体的には、反力F’)を目標値φに制御すべく、ロボット12の手首フランジ28b(TCP)の位置を制御するための力制御指令FCを生成する。そして、プロセッサ40は、該力制御指令FCを位置制御指令PCに加えて、ロボット12のサーボモータ34を動作させる。
 これにより、プロセッサ40は、位置制御指令PCに従ってスクレーパ16(又は、手首フランジ28b)を、表面Qに沿って移動経路MPの方向MDに移動させるとともに、力制御指令FCに従ってスクレーパ16をワークWの表面Qに対して接近又は離反する方向(すなわち、ロボット座標系C1のz軸方向)へ移動させる。
 力制御指令FCは、目標値φを指定する力指令FCと、押付力Fを目標値φに到達させるべくスクレーパ16をロボット座標系C1のz軸方向へ移動させる速度を規定する速度指令FCとを有する。力制御βにおいて、プロセッサ40は、まず、力指令FCを生成し、次いで、力センサ14の検出データから取得した押付力Fと力指令FCとに基づいて、速度指令FCを生成する。そして、プロセッサ40は、該速度指令FCに従ってロボット12を動作させることで、スクレーパ16(手首フランジ28b)を、ロボット座標系C1のz軸方向へ移動させる。
 スクレーパ16が教示点TPに到達したとき、プロセッサ40は、スクレーパ16を教示点TPへ移動させるための位置制御指令PCとして速度指令PCV_2を生成するともに、力制御指令FCとして速度指令FCV_0を生成する。図6に、スクレーパ16が教示点TPに到達したときにプロセッサ40が生成する速度指令PCV_2及び速度指令FCV_0を模式的に示す。
 スクレーパ16が教示点TPに到達した後、プロセッサ40は、速度指令PCV_2に従ってロボット12を動作させて、スクレーパ16を教示点TPへ向かって、速度指令PCV_2に対応する(具体的には、一致する)速度VP_2で、表面Qに沿って方向MDへ移動させる。
 これとともに、プロセッサ40は、押付力Fを目標値φに制御すべく速度指令FCV_0を生成し、サーボモータ34への速度指令PCV_2に加えることで、スクレーパ16を表面Qへ向かう方向(すなわち、下方)へ、該速度指令FCV_0に対応する(具体的には、一致する)速度VF_0で移動させる。その結果、ロボット12は、スクレーパ16を、教示点TPを通過した後、図6中の方向MD’へ移動させることになる。
 図7に、キサゲ加工においてスクレーパ16(具体的には、先端32a)が実際に辿る軌道TRを実線で示す。スクレーパ16は、教示点TPを通過した後、表面Qに対して角度θ2(<90°)を形成するように傾斜した軌道TRで表面Qへ向かって移動し、位置P1で該表面Qに当接する。
 ここで、図7中の教示点TPと位置P1との間の、ロボット座標系C1のx軸及びz軸方向の距離を、それぞれ、距離x1及びz1とすると、該距離x1及びz1、速度指令PCV_2(速度VP_2)、及び速度指令FCV_0(速度VF_0)は、以下の式(1)を満たす。
   z1/x1=FCV_0/PCV_2=VF_0/VP_2 …(1)
 また、角度θ2、距離x1及びz1、速度指令PCV_2(速度VP_2)、及び速度指令FCV_0(速度VF_0)は、以下の式(2)を満たす。
   θ2=tan-1(z1/x1)=tan-1(FCV_0/PCV_2)=tan-1(VF_0/VP_2) …(2)
 よって、仮に、キサゲ加工の加工条件MCとして、x1=10[mm]、z1=5[mm]に設定すると、式(2)より、角度θ2≒26.6°として決定できる。この場合において、加工条件MCとして、速度VP_2(すなわち、速度指令PCV_2)を100[mm/sec]に設定した場合、式(1)より、速度VF_0(すなわち、速度指令FCV_0)を、50[mm/sec]として決定できる。このように、加工条件MCとして、距離x1及びz1、速度指令PCV_2(速度VP_2)、及び速度指令FCV_0(速度VF_0)を適宜設定することで、角度θ2を所望の範囲(例えば、15°~35°)に制御できる。
 スクレーパ16が表面Qに当接している間、プロセッサ40は、位置制御指令PCに従ってスクレーパ16を方向MD(すなわち、右方)へ移動させるとともに、力制御βによって押付力Fを目標値φに制御するための力制御指令FCとして速度指令FCV_1を生成する。この速度指令FCV_1により、ロボット12の手首フランジ28bの位置を、ロボット座標系C1のz軸方向に、速度指令FCV_1に対応する(具体的には、一致する)速度VF_1で、変位させる。
 ここで、スクレーパ16が表面Qに当接している間に生成する速度指令FCV_1(すなわち、速度VF_1)の最大値は、スクレーパ16が表面Qに当接する前に生成する速度指令FCV_0(すなわち、速度VF_0)よりも、大きく設定され得る。こうして、プロセッサ40は、ロボット12によってスクレーパ16を目標値φに対応する大きさの押付力Fで押し付けながら表面Qに沿って右方へ移動し、これにより、スクレーパ16の先端32aで表面Qを削るキサゲ加工を実行する。
 スクレーパ16(又は手首フランジ28b)が教示点TPに対応する位置に到達すると、プロセッサ40は、力制御βを終了する一方、スクレーパ16を教示点TPへ移動させるための位置制御指令PCを生成する。そして、プロセッサ40は、位置制御指令PCに従ってロボット12を動作させることで、スクレーパ16を教示点TPへ向かって右上方へ移動させる。
 その結果、スクレーパ16は、ワークWの表面Qに対して角度θ3(<90°)を形成するように傾斜した軌道TRで右上方へ移動し、該スクレーパ16の先端32aが、位置P2で表面Qから離反する。こうして、スクレーパ16によって表面Qを位置P1から位置P2まで距離x2に亘って削り、キサゲ加工が終了する。なお、本実施形態においては、ロボット座標系C1のx軸方向における位置P2の座標は、教示点TPと略同じであるとする。その後、スクレーパ16は、教示点TP(又はその直下の位置)へ到達する。
 本実施形態においては、プロセッサ40は、位置P1から位置P2までキサゲ加工を実行している間、押付力Fを繰り返し増減させるようにロボット12の手首フランジ28bの位置を制御することで、表面Qを削る深さZを繰り返し増減させる。以下、図8を参照して、この機能について説明する。
 図8は、キサゲ加工を実行している間の押付力Fの時間変化特性の一例を示す。図8に示す例では、押付力Fは、キサゲ加工の間、第1の力F1と、該第1の力F1よりも小さい第2の力F2(>0)との間で繰り返し増減するように、変化している。本実施形態においては、プロセッサ40は、キサゲ加工の間に実行する力制御βによって、図8に示すように押付力Fを増減させる。
 力制御βの一例として、プロセッサ40は、力制御指令FCとしての力指令FCを、以下のように生成する。すなわち、プロセッサ40は、力制御βの開始後、押付力Fの初期目標値φを指定する力指令FCを生成し、該力指令FCに従ってロボット12を動作させる。これにより、スクレーパ16は、図7に示すように位置P1で表面Qに当接し、押付力Fが増大し始めて、時点tで第2の力F2に到達する。
 次いで、プロセッサ40は、押付力Fを、時点tから所定の時間τで変化量ΔFだけ増大させ、その後、所定の時間τで変化量ΔFだけ減少させるための力指令FCを生成する。なお、時間τと時間τとは、同じ時間(τ=τ)に設定されてもよいし、互いに異なる時間(τ<τ、又は、τ>τ)に設定されてもよい。
 これにより、押付力Fは、時点tから時間τが経過した時点t=t+τで、第1の力F1(=F2+ΔF)まで増大し、その後、時点t=t+τで、第2の力F2まで減少する。こうして、図8に示す押付力Fの時間変化特性における1番目のピークFPの波形が、時点tから時点tの期間に形成される。
 その後、プロセッサ40は、押付力Fを、時間τで変化量ΔFだけ増大させた後に時間τで変化量ΔFだけ減少させるというサイクルを繰り返すように、力指令FCを生成する。このように生成した力指令FCに従ってロボット12の手首フランジ28bの位置を制御することで、図8に示すように、周期T(=τ+τ)で押付力FのピークFP(n=1,2,3・・・)の波形が形成されるように、押付力Fが周期的に変化することになる。
 したがって、この場合、プロセッサ40は、力制御βにおいて、押付力Fの目標値φを、時点tでの押付力Fから変化量ΔFだけ増大した第1の目標値φ1_1(=F1)と、時点tでの押付力Fから変化量ΔFだけ減少した第2の目標値φ2_1(=F2)との間で変化させていることになる。なお、上述の初期目標値φは、力F1又はF2に設定されてもよいし、又は、如何なる力の値に設定されてもよい。
 力制御βの他の例として、プロセッサ40は、力制御指令FCとしての力指令FCを、以下のように生成してもよい。すなわち、プロセッサ40は、力制御βの開始後、第1の力F1に対応する第1の目標値φ1_2を指定するための力指令FCを生成する。この力指令FCに従ってロボット12を動作させることで、スクレーパ16は位置P1で表面Qに当接し、押付力Fは、時点tで第2の力F2に到達し、その後、時点tで第1の力F1に到達する。
 そして、プロセッサ40は、時点tで、第2の力F2に対応する第2の目標値φ2_2(<φ1_2)を指定するための力指令FCを生成する。この力指令FCに従ってロボット12を動作させることで、押付力Fは、時点tから減少し、時点tで第2の力F2に到達する。この時点tで、プロセッサ40は、再度、力指令FCで第1の目標値φ1_2を指定する。
 その後、プロセッサ40は、生成する力指令FCにおいて、時間τ後に第2の目標値φ2_2を指定し、時間τ後に第1の目標値φ1_2を指定するというサイクルを繰り返す。こうして、プロセッサ40は、力制御βにおいて、押付力Fの目標値φを、第1の目標値φ1_2と、該第1の目標値φ1_2よりも小さい第2の目標値φ2_2との間で周期的に変化させる。その結果、図8に示すように押付力Fを周期Tで変化させることができる。
 なお、この例で用いる第1の目標値φ1_2は、第1の力F1と同じ値(φ1_2=F1)であってもよいし、又は、第1の力F1よりも大きい値(φ1_2>F1)であってもよい。φ1_2>F1である場合、時点tで押付力Fが第1の目標値φ1_2に到達せず、プロセッサ40は、押付力Fが第1の目標値φ1_2に到達する前に、第2の目標値φ2_2を指定する力指令FCを生成することになる。
 また、第2の目標値φ2_2は、第2の力F2と同じ値(φ2_2=F2)であってもよいし、又は、第2の力F2よりも小さい値(φ2_2<F2)であってもよい。φ2_2<F2である場合、時点tで押付力Fが第2の目標値φ2_2に到達せず、プロセッサ40は、押付力Fが第2の目標値φ2_2に到達する前に、第1の目標値φ1_2を指定する力指令FCを生成することになる。
 力制御βのさらに他の例として、プロセッサ40は、押付力Fの目標値φを、図8に示す特性に対応する時間変化特性で経時的に変化させるように、力指令FCを生成してもよい。例えば、プロセッサ40は、所定の制御周期T’(≪T)で目標値φを時間とともに段階的に変化させるように、力指令FCを生成する。これにより、目標値φを、図8に示す特性に対応する時間変化特性となるように、第1の目標値φと第2の目標値φとの間で周期的に変化させることができる。
 以上のように、本実施形態においては、プロセッサ40は、力制御βにおいて押付力Fの目標値φを繰り返し増減させることによって、押付力Fを増減させている。図9に、本実施形態に係るキサゲ加工方法によって表面Qに形成された凹部Rの例を示す。本実施形態によれば、キサゲ加工を実行している間(換言すれば、スクレーパ16を表面Qに押し付けながら方向MDへ移動させている間)に、押付力Fを周期的に増減させることによって、図9に示すように、表面Qを削る深さZが周期的に増減することになる。
 より具体的には、凹部Rは、位置P1から位置P2まで右方へ延在し、該凹部Rには、複数の谷部E(n=1,2,3・・・)と、複数の山部Gとが、ロボット座標系C1のx軸方向に並ぶように形成されている。谷部Eは、図8に示す特性において押付力Fが第1の力F1(第1の目標値φ)となる箇所に対応し、凹部Rにおける深さZが極大となる箇所である。
 一方、山部Gは、図8に示す特性において押付力Fが第2の力F2(第2の目標値φ)となる箇所に対応し、深さZが極小となる箇所である。本実施形態においては、第2の力F2がゼロよりも大きいので、山部Gの深さZ(すなわち、ロボット座標系C1のz軸方向における表面Qと山部Gとの距離)は、0よりも大きくなる(つまり、山部Gが表面Qの下方に位置する)。なお、図9では、理解の容易のために、凹部Rの深さZを拡大して示しているが、実際上は、深さZはμmオーダーである点を理解されたい。
 本実施形態によれば、位置P1から位置P2に亘って延在し、その内部に複数の谷部E及び山部Gを有する凹部Rを、1回のキサゲ加工により形成することができる。ここで、従来、キサゲ加工の熟練者が、図9に示すような一方向に並ぶ複数の谷部Eをキサゲ加工により形成する場合、1つの谷部Eを形成するために、スクレーパを表面Qに強い力で押し当てて該表面Qを削った後、該スクレーパを表面Qから離反するという動作を繰り返す必要があった。このような作業は、熟練者に重筋な労働を課すとともに、多くの時間を要していた。
 本実施形態によれば、熟練者がスクレーパで表面Qを繰り返し削ることで形成していた図9に示すような凹部Rを、ロボット12の動作により迅速に形成できる。したがって、キサゲ加工のサイクルタイムを縮減することができるとともに、熟練者が形成するのと同等の品質を有する凹部Rを自動で形成することができる。
 また、本実施形態においては、プロセッサ40は、キサゲ加工を実行している間に力制御βを実行し、該力制御βにおいて目標値φを繰り返し増減させることによって、押付力Fを増減させている。具体的には、プロセッサ40は、力制御βにおいて、目標値φを、第1の目標値φ(φ1_1、φ1_2)と第2の目標値φ(φ2_1、φ2_2)との間で変化させている。この構成によれば、押付力Fを図8に示すような特性で時間変化させるように高精度に制御できる。したがって、凹部Rの深さZを高精度に管理することができる。
 また、本実施形態においては、プロセッサ40は、力制御βとともに位置制御αを実行することで、スクレーパ16を表面Qに押し付けながら方向MDへ移動させている。この構成によれば、スクレーパ16の軌道TRを高精度に制御できる。また、本実施形態においては、プロセッサ40は、押付力Fを周期的に(具体的には周期Tで)増減させている。この構成によれば、ロボット座標系C1のx軸方向に谷部Eが等間隔で並ぶ凹部Rを形成できる。
 なお、上述の第1の目標値φ(φ1_1、φ1_2、ΔF)は、キサゲ加工中に刃部32が第1の力F1で表面Qに押し付けられたときに柄部30を撓ませることができる値として、定められてもよい。図11に、キサゲ加工中に柄部30が撓んだ状態を模式的に示す。図11に示す例では、ロボット12が、スクレーパ16の先端32aを、第1の力F1で表面Qに押し付け、これにより、スクレーパ16の柄部30が、下方へ膨出するように湾曲して撓んでいる。なお、スクレーパ16が第2の力F2で表面Qに押し付けられているときにもスクレーパ16の柄部30が撓むように、第2の目標値φ(φ2_1、φ2_2、ΔF)が定められてもよい。
 なお、メモリ42は、上述のように目標値φを変化させるための目標値設定プログラムPG1を予め格納してもよい。この場合、プロセッサ40は、力制御βの開始後、目標値設定プログラムPG1に従って目標値φを定め、該目標値φを指定するための力指令FCを生成する。
 なお、キサゲ加工中に押付力F(目標値φ)を増減させる形態としては、図8に示す例に限定されない。以下、図12~図15を参照して、押付力F(目標値φ)を増減させる他の形態について説明する。図12に示す例では、プロセッサ40は、押付力Fを、第1の力F1と第2の力F2(<F1)との間で、周期Tで変化させている。
 ここで、図12に示す第2の力F2は、図8に示す第2の力F2よりも、高く設定されている。図12に示す例によれば、形成される凹部Rの山部Gの深さFを、比較的大きくすることができる。プロセッサ40は、図8を参照して説明した力制御βと同様の方法で、押付力Fを、図12に示す時間変化特性となるように制御できる。
 図13に示す例では、キサゲ加工の間、押付力Fは、第1の力F1と第2の力F2との間で繰り返し増減するように変化しているが、所定の時間τに亘って第1の力F1に維持される。図13に示すように押付力Fを増減させるための力制御βの一例として、プロセッサ40は、力制御βの開始後、上述の実施形態と同様に、初期目標値φを指定する力指令FCを生成し、該力指令FCに従ってロボット12を動作させる。これにより、押付力Fが時点tで第2の力F2に到達する。
 次いで、プロセッサ40は、押付力Fを、時点tから時間τで変化量ΔFだけ増大させ、所定の時間τに亘って維持した後、時間τで変化量ΔFだけ減少させるための力指令FCを生成する。これにより、押付力Fは、時点tから時点t=t+τで第1の力F1まで増大し、時点tから時点t=t+τまで第1の力F1に維持された後、時点tから時点t=t+τで第2の力F2まで減少する。こうして、図13に示す押付力Fの時間変化特性における1番目のピークFPの波形が、時点tから時点tの期間に形成される。
 その後、プロセッサ40は、押付力Fを、時間τで変化量ΔFだけ増大させ、時間τに亘って維持した後、時間τで変化量ΔFだけ減少させるというサイクルを繰り返すように力指令FCを生成する。このように生成した力指令FCに従ってロボット12の位置を制御することで、図13に示すように、周期T(=τ+τ+τ)で押付力FのピークFP(n=1,2,3・・・)の波形が形成されるように、押付力Fが第1の力F1と第2の力F2との間で周期的に変化することになる。
 力制御βの他の例として、プロセッサ40は、力制御βの開始後、力指令FCにおいて、第1の力F1に対応する第1の目標値φ1_2を指定し、該力指令FCに従ってロボット12を動作させる。これにより、押付力Fは、時点tで第2の力F2に到達し、その後、時点tで第1の力F1に到達する。
 その後、プロセッサ40は、力指令FCにおいて、時点tから時点tまで第1の目標値φ1_2を継続して指定し、時点tで第2の目標値φ2_2を指定する。このような力指令FCに従ってロボット12を動作させることで、押付力Fは、時点tから時点tまで第1の力F1に維持された後、時点tから減少して時点tで第2の力F2に到達する。
 この時点tで、プロセッサ40は、再度、力指令FCで第1の目標値φ1_2を指定する。その後、プロセッサ40は、力指令FCにおいて、時間τ+τ後に第2の目標値φ2_2を指定し、時間τ後に第1の目標値φ1_2を指定するというサイクルを繰り返す。その結果、図13に示すように押付力Fを第1の力F1と第2の力F2との間で、周期Tで変化させることができる。
 力制御βのさらに他の例として、プロセッサ40は、力指令FCにおいて、押付力Fの目標値φを、図13に示す時間変化特性に対応するように、制御周期T’(≪T)で段階的に時間変化させてもよい。図13に示す力制御βによれば、ロボット座標系C1のx軸と平行に直線状に延長する谷部Eを有する凹部Rを形成できる。
 図14に示す例では、プロセッサ40は、周期T毎に第1の力F1のピーク値を変化させている。具体的には、プロセッサ40は、図14中の第2m-1番目(mは、正の整数)のピークFP2m-1の波形では、押付力Fを力F1_Aに維持している一方、第2m番目のピークFP2mの波形では、押付力Fを、力F1_B(<F1_A)に維持している。
 図14に示す力制御βの方法は、図13と以下の点で相違する。すなわち、プロセッサ40は、力指令FCで指定する第1の目標値φ(φ1_1、φ1_2)を、力F1_Aに対応する目標値φ1_Aと、力F1_Bに対応する目標値φ1_B(<φ1_A)との間で、周期T毎に切り換える。
 図14に示す例においては、直線状に延長する第1の谷部En_Aと、該第1の谷部En_Aよりも深さが浅い、直線状に延長する第2の谷部En_Bとを有する凹部Rを形成できる。なお、プロセッサ40は、図14中の第2m-1番目のピークFP2m-1の波形で、押付力Fを力F1_Bに維持する一方、第2m番目のピークFP2mの波形で、押付力Fを力F1_Aに維持するように、力指令FCを生成してもよい。
 図15に示す例では、プロセッサ40は、図13と同様に押付力Fを所定の時間に亘って第1の力F1に維持しているが、図15に示す第2の力F2は、図13に示す第2の力F2よりも、高く設定されている。図15に示す例によれば、形成される凹部Rの山部Gの深さFを、比較的大きくすることができる。プロセッサ40は、図13を参照して説明した力制御βを実行することで、押付力Fを、図15に示す時間変化特性となるように制御できる。
 なお、プロセッサ40は、オペレータからの入力データに応じて、加工条件MCのうちの少なくとも1つを自動で決定してもよい。例えば、加工条件MCは、図7に示す角度θ2、距離x1及びz1、速度指令PCV_2(速度VP_2)、及び速度指令FCV_0(速度VF_0)に加えて、形成する凹部Rの長さx2、凹部Rに形成される谷部E(又は山部G)の個数k及び深さZ(図9)、ロボット座標系C1のx軸方向に隣接する2つの山部G及びGn+1(又は、2つの谷部E及びEn+1)の距離X(図9)、押付力Fを変化させる周期T、力制御βの目標値φ、並びに、ロボット12の制御の応答性を決定するゲインGaのうちの少なくとも1つを含む。
 一例として、オペレータは、入力装置46を操作して、加工条件MCとして、速度指令PCV_2(速度VP_2)、凹部Rの長さx2、個数k、及び深さZを入力する。この場合、プロセッサ40は、入力された長さx2及び個数kから、距離Xを、X=x2/k(又はその近似値)して自動で決定する。
 また、プロセッサ40は、入力された深さZから、目標値φを自動で決定する。例えば、メモリ42は、第1の目標値φと谷部Eの深さZ(又は、第2の目標値φと山部Gの深さZ)とを互いに関連付けて記憶したデータテーブルDT1を予め格納してもよい。この場合、プロセッサ40は、入力された深さZに対応する目標値φ(又はφ)をデータテーブルDT1から検索することによって、目標値φを自動で決定できる。
 また、プロセッサ40は、上述のように決定した距離X(=x2/k)と、入力された速度指令PCV_2(速度VP_2)から、周期Tを、T=X/PCV_2(=X/VP_2)として自動で決定する。ここで、ロボット12が押付力Fを、決定した周期Tで変化させる(換言すれば、手首フランジ28bを周期Tで上下動させる)ことができるか否かは、ゲインGaに依存する。具体的には、ゲインGaが高い程、ロボット12の制御応答性が高速となり、ロボット12は、手首フランジ28bをより高速で上下動させることができる。
 プロセッサ40は、周期Tを決定した場合に、該周期Tでロボット12を動作させることができるゲインGaを自動で決定してもよい。この場合において、決定した周期Tを実現可能なゲインGaを設定できない場合(例えば、設定可能なゲインGaの範囲を超えてしまう場合)、プロセッサ40は、その旨を報知する警告信号を発してもよい。
 他の例として、オペレータは、加工条件MCとして、上述の速度指令PCV_2(速度VP_2)の代わりに、ゲインGaを入力してもよい。この場合において、プロセッサ40は、入力されたゲインGaから周期Tを自動で決定してもよい。例えば、メモリ42は、ゲインGaと周期Tとを互いに関連付けて記憶したデータテーブルDT2を予め格納してもよい。
 この場合、プロセッサ40は、入力されたゲインGaに対応する周期TをデータテーブルDT2から検索することによって、周期Tを自動で決定できる。なお、データテーブルDT2は、周期Tとして、対応するゲインGaで実現可能な最小の周期TMINを格納してもよい。この周期TMINを用いることで、キサゲ加工のサイクルタイムを最小化できる。
 そして、プロセッサ40は、上述のように決定した周期Tと距離Xとから、速度指令PCV_2(速度VP_2)を、PCV_2(VP_2)=X/Tとして自動で決定する。以上のように、プロセッサ40は、オペレータが入力した加工条件MCの一部のパラメータに応じて、加工条件MCの他のパラメータを自動で決定できる。この構成によれば、ロボットシステム10の立ち上げに掛かる作業を簡単化できる。
 次に、図16~図18を参照して、ロボットシステム10が実行するキサゲ加工方法について説明する。図16に示すフローは、プロセッサ40が、オペレータ、上位コントローラ、又は作業プログラムPG2から、キサゲ加工開始指令を受け付けたときに、開始する。ステップS1において、プロセッサ40は、粗加工を実行する。粗加工とは、例えば、表面Qをフライス盤等で加工したときに形成される微小凹凸を第1の寸法(例えば、10μm)以下とするために行うキサゲ加工である。
 このステップS1について、図17を参照して説明する。ステップS11において、プロセッサ40は、位置制御αを開始する。具体的には、プロセッサ40は、上述の位置制御指令PCを生成する動作を開始し、ロボット12によってスクレーパ16の先端32aを、教示点TP→TP→TP(図7)の順に移動させる動作を開始する。
 ステップS12において、プロセッサ40は、スクレーパ16が教示点TPに到達したか否かを判定する。例えば、ロボット12のサーボモータ34には、該サーボモータ34の回転(具体的には、回転角度又は回転位置)を検出する回転検出器(エンコーダ、又はホール素子等)が設けられる。
 プロセッサ40は、回転検出器からのフィードバックに基づいて、ロボット座標系C1におけるスクレーパ16(具体的には、TCP)の位置データを取得し、該位置データから、該スクレーパ16が教示点TPに到達したか否かを判定できる。プロセッサ40は、スクレーパ16が教示点TPに到達した(すなわち、YES)と判定した場合は、ステップS13へ進む一方、スクレーパ16が教示点TPに到達していない(すなわち、NO)と判定した場合は、ステップS12をループする。
 ステップS13において、プロセッサ40は、第1の力制御β1を開始する。具体的には、プロセッサ40は、第1の力制御β1のための目標値φを指定する力指令FCを生成する。プロセッサ40は、力指令FCに基づいて速度指令FCV_0を生成し、位置制御指令PCとしての速度指令PCV_2に、力制御指令FCとしての速度指令FCV_0を加えてロボット12を動作させる。その結果、スクレーパ16は、角度θ2で傾斜する軌道TR(図7)で表面Qに位置P1で当接する。
 ここで、プロセッサ40は、ステップS1(粗加工)で位置P1から位置P2までキサゲ加工を実行する間、第1の力制御β1により押付力Fを一定に維持する。図19に、第1の力制御β1における押付力Fの時間変化特性を示す。図19に示すように、第1の力制御β1においては、プロセッサ40は、押付力Fを、図8、図12~図15に示すように増減させることなく、予め定められた目標値φ(=F3)に維持するように、ロボット12の手首フランジ28bの位置を制御する。
 ステップS14において、プロセッサ40は、スクレーパ16(又は、手首フランジ28b)が教示点TPに対応する位置に到達したか否かを判定する。プロセッサ40は、YESと判定した場合は、ステップS15へ進む一方、NOと判定した場合は、ステップS14をループする。
 ステップS15において、プロセッサ40は、第1の力制御β1を終了する。ステップS15の後、プロセッサ40は、位置制御指令PCに従ってロボット12を動作させることにより、スクレーパ16を、図7に示すように角度θ3で傾斜する軌道TRに沿って右上方へ移動させ、その結果、スクレーパ16は、位置P2でワークW1の表面Q1から離反して、粗加工が終了する。この粗加工によって、表面Q上の微小凹凸を第1の寸法以下とするように、該表面Qの平面度を高めることができる。
 ステップS16において、プロセッサ40は、スクレーパ16が教示点TPに到達したか否かを判定する。プロセッサ40は、YESと判定した場合はステップS17へ進む一方、NOと判定した場合はステップS16をループする。そして、ステップS17において、プロセッサ40は位置制御αを終了する。
 再度、図16を参照して、ステップS2において、プロセッサ40は、仕上げ加工を実行する。仕上げ加工は、粗加工の後の表面Qに形成されている微小凹凸を、第1の寸法よりも小さい第2の寸法(例えば、5μm)以下にするとともに、上述した油溜りとして機能させるための凹部を形成するために行うキサゲ加工である。
 このステップS2について、図18を参照して説明する。図18に示すフローは、図17に示すフローと、ステップS13’において相違する。具体的には、プロセッサ40は、ステップS12でYESと判定した後、ステップS13’において、第2の力制御β2を開始する。この第2の力制御β2において、プロセッサ40は、上述した図8、図12~図15で説明した力制御βを実行することで、押付力Fを繰り返し増減させる。
 このように、本実施形態においては、ステップS1(粗加工)により、表面Qを削ることで該表面Qの平面度をある程度まで高めた後、ステップS2(仕上げ加工)を実行することで、該表面Qの平面度をさらに高めつつ、図9に示すような、油溜りとして機能する凹部Rを形成することができる。これにより、ロボットシステム10によって、粗加工と仕上げ加工を連続して自動で実行することができる。
 なお、図16に示すフローにおいて、ステップS2を先に実行し、次にステップS2を実行してもよい。また、プロセッサ40は、ステップS1とS2とを交互に複数回に亘って繰り返し実行してもよい。プロセッサ40は、上述の目標値設定プログラムPG1と作業プログラムPG2とに従って、図16に示すフローを実行する。
 例えば、目標値設定プログラムPG1は、目標値φを生成するためのアルゴリズムが規定されたコンピュータプログラムである一方、作業プログラムPG2は、教示点TPの位置データ、並びに、位置制御α及び力制御βを実行させるための命令文が規定されたコンピュータプログラムである。これら目標値設定プログラムPG1及び作業プログラムPG2は、互いに別々のコンピュータプログラムとしてメモリ42に格納されてもよいし、又は、1つのコンピュータプログラムに統合されてメモリ42に格納されてもよい。
 なお、上述の実施形態において、プロセッサ40は、キサゲ加工の実行中に、押付力Fを繰り返し増減させる動作と同期して、スクレーパ16(手首フランジ28b)をロボット座標系C1のy軸方向へ揺動する動作を実行してもよい。図20に、このようにスクレーパ16を揺動させるときの該スクレーパ16の軌跡TR’の例を示す。
 例えば、プロセッサ40は、スクレーパ16が、図20に示す軌跡TR’上の後側の揺動ピーク点P3と前側の揺動ピーク点P4とに到達したときに、押付力Fが図8中の第1の力F1に到達し、スクレーパ16が、揺動ピーク点P3及びP4の中間点に到達したときに、押付力Fが図8中の第2の力F2に到達するように、押付力Fの増減とスクレーパ16の揺動とを同期させてもよい。この構成によれば、ロボット座標系C1のx軸方向に千鳥状に並ぶ谷部Eを有する凹部Rを形成できる。
 なお、上述の実施形態においては、プロセッサ40が、力制御βを実行することで押付力Fを増減させる場合について述べた。しかしながら、これに限らず、プロセッサ40は、位置制御αのみを実行することによって、押付力Fを繰り返し増減させることもできる。この機能について、図21を参照して説明する。
 図21に示す形態においては、ワークWの表面Qに沿って、教示点TP11、TP12、TP13、TP14、TP15、TP16・・・が設定されている。ここで、教示点TP12は、ロボット座標系C1における表面Qと同じz軸方向の位置に配置され、教示点TP13、TP14、TP15、TP16・・・は、ロボット座標系C1における表面Q1の下方の位置に配置されている。また、教示点TP13及びTP15は、教示点TP14及びTP16よりも下方に位置している。
 図21に示す例の場合、プロセッサ40は、位置制御αを実行して、ロボット12によってスクレーパ16を、教示点TP11→TP12→TP13→TP14→TP15→TP16・・・の順で移動させる。これにより、スクレーパ16は、教示点TP12で表面Qに当接する。その後、プロセッサ40は、ロボット12の手首フランジ28bを教示点TP13、TP14、TP15及びTP16に対応する位置へ順に移動させることで、スクレーパ16を表面Qに押し付けながら該表面Qに沿って右方へ移動させる。こうして、キサゲ加工を実行することができる。
 ここで、図21に示す教示点TP(n=11,12,13・・・)の位置を適切に選択することによって、キサゲ加工を実行している間に、押付力Fを、図8、図12~図15に示す時間変化特性となるように、制御することができる。例えば、手首フランジ28bが教示点TP13及びTP15に対応する位置に到達したときに、押付力Fが図8中の第1の力F1に到達し、手首フランジ28bが教示点TP14及びTP16に対応する位置に到達したときに、押付力Fが図8中の第2の力F1に到達するように、教示点TPが適宜設定される。
 この場合において、メモリ42は、上述の加工条件MCと、教示点TPの位置データ(ロボット座標系C1の座標)とを互いに関連付けて格納したデータテーブルDT3を予め格納してもよい。そして、オペレータは、入力装置46を操作して、加工条件MCとして、例えば、長さx2、深さZ、距離X、及び目標値φの少なくとも1つを入力する。プロセッサ40は、入力された加工条件MCに応じて、図21に示すような教示点TPを自動で設定してもよい。
 なお、上述の実施形態においては、ワークWの表面Qに対して、1回のキサゲ加工を実行する場合について述べた。しかしながら、プロセッサ40は、例えばロボット座標系C1のy軸方向に並ぶ複数の凹部Rを形成するために、キサゲ加工を複数回に亘って繰り返し実行してもよい。この場合、形成する複数の凹部Rの各々に対して、図5又は図21に示す一群の教示点TPがそれぞれ設定される。
 また、図8、図12~図15において、第1の力F1又は第2の力F2は、周期T毎に変化してもよい。例えば、図8に示す力制御βにおいて、i番目のピークFP(i=1,2,3・・・)の波形の第1の力F1は、i+1番目のピークFPi+1の波形の第1の力F1i+1と異なっていてもよい。
 同様に、i番目のピークFPの波形の第2の力F2は、i+1番目のピークFPi+1の波形の第2の力F2i+1と異なっていてもよい。この場合、プロセッサ40は、周期T毎に、力制御βの第1の目標値φ(又は第2の目標値φ)を、第1の力F1(又は第2の力F2)に対応するように変化させる。また、ピークFP毎に周期Tを変化させてもよい。つまり、i番目のピークFPを形成する周期Tは、i+1番目のピークFPi+1を形成する周期Ti+1と異なる期間であってもよい。
 また、図8、図12~図15の力制御βを組み合わせることもできる。例えば、プロセッサ40は、力制御βの開始後、図8及び図12~図15のうちの1つの力制御βを所定の期間に亘って実行した後、図8及び図12~図15のうちの他の1つの力制御βを実行してもよい。
 例えば、プロセッサ40は、図8に示す力制御βを実行した後に、図12に示す力制御βを実行することで、山部Gの深さZを変化させてもよい。又は、プロセッサ40は、図13に示す力制御βを実行した後に、図14又は図15に示す力制御βを実行することで、谷部E及び山部Gの深さZを変化させてもよい。この構成によれば、様々な形状の凹部Rを形成することができる。
 なお、上述の実施形態においては、図7に示すように、キサゲ加工の終了時にスクレーパ16の先端32aが教示点TPに到達し、また、ロボット座標系C1における位置P2と教示点TPのx座標が略同じとなる場合について述べた。しかしながら、実際上は、キサゲ加工の終了時にスクレーパ16の先端32aが教示点TPから(例えば、下方へ)ずれる場合があり、また、位置P2が教示点TPから(例えば、ロボット座標系C1のx軸プラス方向へ)ずれる場合がある点、理解されたい。
 また、力センサ14は、例えば、作業セルとロボットベース20との間に介挿されてもよいし、又は、ロボット12の如何なる部位に設けられてもよい。また、力センサ14は、ロボット12に限らず、ワークWの側に設けられてもよい。例えば、力センサ14を、ワークWと、該ワークWが載置される載置面との間に介挿することによって、押付力Fを検出できる。
 また、力センサ14は、6軸力覚センサに限らず、例えば、1軸又は3軸力センサであってもよいし、押付力Fを検出可能な如何なるセンサであってもよい。また、センサ座標系C3の原点は、力センサ14の中心に限らず、力センサ14に対して既知である如何なる位置に配置されてもよいし、その各軸は如何なる方向に定義されてもよい。
 また、ロボット12は、垂直多関節ロボットに限らず、例えば、水平多関節ロボット、パラレルリンクロボット等、如何なるタイプのロボットであってもよいし、又は、複数のボールねじ機構を有する移動機械であってもよい。以上、実施形態を通じて本開示を説明したが、上述の実施形態は、特許請求の範囲に係る発明を限定するものではない。
 10  ロボットシステム
 12  ロボット
 14  力センサ
 16  スクレーパ
 18  制御装置
 40  プロセッサ

Claims (8)

  1.  ワークの表面を平坦にするために削るキサゲ加工を行うロボットシステムであって、
     前記表面を削るスクレーパを移動させるロボットと、
     前記ロボットを制御する制御装置と、を備え、
     前記制御装置は、
      前記ロボットによって前記スクレーパを前記表面に押し付けながら該表面に沿う方向へ移動させることで、前記キサゲ加工を実行し、
      前記キサゲ加工を実行している間、前記ロボットが前記スクレーパを前記表面に押し付ける押付力を繰り返し増減させるように該ロボットの位置を制御することで、前記表面を削る深さを繰り返し増減させる、ロボットシステム。
  2.  前記押付力を検出する力センサをさらに備え、
     前記制御装置は、
      前記キサゲ加工を実行している間、前記力センサの検出データに基づいて前記押付力を所定の目標値に制御する力制御を実行することによって、前記ロボットの前記位置を制御し、
      前記力制御において前記目標値を繰り返し増減させることによって、前記押付力を増減させる、請求項1に記載のロボットシステム。
  3.  前記制御装置は、前記力制御において前記目標値を、第1の目標値と、該第1の目標値よりも小さい第2の目標値との間で変化させる、請求項2に記載のロボットシステム。
  4.  前記スクレーパは、
      前記ロボットに連結された可撓性の柄部と、
      前記柄部の先端に固定され、前記表面を削る刃部と、を有し、
     前記第1の目標値は、前記刃部が該第1の目標値に対応する前記押付力で前記表面に押し付けられたときに前記柄部を撓ませることができる値として、定められる、請求項3に記載のロボットシステム。
  5.  前記制御装置は、前記表面に沿って予め定められた複数の教示点へ前記スクレーパを順に移動させる位置制御を、前記力制御とともに実行することで、前記キサゲ加工において前記スクレーパを前記沿う方向へ移動させる、請求項2~4のいずれか1項に記載のロボットシステム。
  6.  前記制御装置は、前記押付力を周期的に増減させる、請求項1~5のいずれか1項に記載のロボットシステム。
  7.  ワークの表面を削るスクレーパを移動させるロボットを用いて、該表面を平坦にするために削るキサゲ加工の方法であって、
     前記ロボットによって前記スクレーパを前記表面に押し付けながら該表面に沿う方向へ移動させることで、前記キサゲ加工を実行し、
     前記キサゲ加工を実行している間、前記ロボットが前記スクレーパを前記表面に押し付ける押付力を繰り返し増減させるように該ロボットの位置を制御することで、前記表面を削る深さを繰り返し増減させる、方法。
  8.  請求項7に記載の方法をプロセッサに実行させるコンピュータプログラム。
PCT/JP2021/047417 2020-12-28 2021-12-21 キサゲ加工を行うロボットシステム、方法、及びコンピュータプログラム Ceased WO2022145299A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE112021005623.9T DE112021005623T5 (de) 2020-12-28 2021-12-21 Robotersystem, verfahren und computerprogramm zur durchführung eines schabvorgangs
US18/266,863 US20240051171A1 (en) 2020-12-28 2021-12-21 Robot system, method, and computer program for performing scraping process
JP2022573017A JP7469518B2 (ja) 2020-12-28 2021-12-21 キサゲ加工を行うロボットシステム、方法、及びコンピュータプログラム
CN202180086481.0A CN116802019B (zh) 2020-12-28 2021-12-21 进行刮研加工的机器人系统、方法以及计算机程序

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020219442 2020-12-28
JP2020-219442 2020-12-28

Publications (1)

Publication Number Publication Date
WO2022145299A1 true WO2022145299A1 (ja) 2022-07-07

Family

ID=82260451

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/047417 Ceased WO2022145299A1 (ja) 2020-12-28 2021-12-21 キサゲ加工を行うロボットシステム、方法、及びコンピュータプログラム

Country Status (6)

Country Link
US (1) US20240051171A1 (ja)
JP (1) JP7469518B2 (ja)
CN (1) CN116802019B (ja)
DE (1) DE112021005623T5 (ja)
TW (1) TWI894405B (ja)
WO (1) WO2022145299A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12350839B2 (en) * 2020-09-08 2025-07-08 Fanuc Corporation Robot system, method, and computer program for performing scraping process

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05123921A (ja) * 1991-02-20 1993-05-21 Nippon Spindle Mfg Co Ltd キサゲ加工方法及びその装置
JPH071229A (ja) * 1993-06-14 1995-01-06 Mitsui Seiki Kogyo Co Ltd M/cによるキサゲ方法
JP2004042164A (ja) * 2002-07-10 2004-02-12 Gifu Univ 柔軟な構造を特徴とする切削工具ホルダ及びその使用方法
JP2010240809A (ja) * 2009-04-10 2010-10-28 Star Micronics Co Ltd 自動キサゲ装置
JP2016137551A (ja) * 2015-01-28 2016-08-04 ファナック株式会社 ロボットを用いたキサゲ加工装置及びキサゲ加工方法
JP2017131974A (ja) * 2016-01-25 2017-08-03 株式会社シュルード設計 設置機械のきさげ加工装置、および、設置機械のきさげ加工方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2810144A (en) * 1952-08-27 1957-10-22 Ray H Mcintosh Broiler grate scrapers
CN1044059A (zh) * 1989-11-30 1990-07-25 胡思伟 刮花机刮研机
JPH08187620A (ja) * 1992-06-30 1996-07-23 Kyowa Kogyo Kk キサゲ面形成装置
JPH0663817A (ja) * 1992-08-19 1994-03-08 Micron Seimitsu Kk 自動キサゲ装置
JPH0970716A (ja) * 1995-09-08 1997-03-18 Hitachi Metals Ltd 振動工具及び振動工具を装着した力制御ロボット
JP5845212B2 (ja) * 2013-06-28 2016-01-20 ファナック株式会社 視覚センサ及び力センサを備えたバリ取り装置
MX2016003018A (es) * 2013-09-11 2016-06-10 Profilator Gmbh & Co Kg Metodo de descortezado por generacion y dispositivo pertinente.
CN105583824B (zh) * 2016-01-26 2017-05-24 清华大学 力控牵引和摆位的多自由度机械臂控制装置及其控制方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05123921A (ja) * 1991-02-20 1993-05-21 Nippon Spindle Mfg Co Ltd キサゲ加工方法及びその装置
JPH071229A (ja) * 1993-06-14 1995-01-06 Mitsui Seiki Kogyo Co Ltd M/cによるキサゲ方法
JP2004042164A (ja) * 2002-07-10 2004-02-12 Gifu Univ 柔軟な構造を特徴とする切削工具ホルダ及びその使用方法
JP2010240809A (ja) * 2009-04-10 2010-10-28 Star Micronics Co Ltd 自動キサゲ装置
JP2016137551A (ja) * 2015-01-28 2016-08-04 ファナック株式会社 ロボットを用いたキサゲ加工装置及びキサゲ加工方法
JP2017131974A (ja) * 2016-01-25 2017-08-03 株式会社シュルード設計 設置機械のきさげ加工装置、および、設置機械のきさげ加工方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
AKIBA, TAKUMI ET AL.: "Development of scraping robot", PROCEEDINGS OF THE 2013 JSME CONFERENCE ON ROBOTICS AND MECHATRONIC;S TSUKUBA, JAPAN; MAY 22-25, 2013, 21 May 2013 (2013-05-21) - 25 May 2013 (2013-05-25), JP, pages 1137 - 1138, XP009537878 *

Also Published As

Publication number Publication date
DE112021005623T5 (de) 2023-10-05
US20240051171A1 (en) 2024-02-15
CN116802019A (zh) 2023-09-22
TWI894405B (zh) 2025-08-21
CN116802019B (zh) 2025-08-12
TW202228955A (zh) 2022-08-01
JPWO2022145299A1 (ja) 2022-07-07
JP7469518B2 (ja) 2024-04-16

Similar Documents

Publication Publication Date Title
JP7469487B2 (ja) キサゲ加工を行うロボットシステム、方法、及びコンピュータプログラム
JP6619395B2 (ja) ロボットシステムおよびロボットの教示方法
US9207668B2 (en) Method of and apparatus for automated path learning
JP6705851B2 (ja) 振動解析装置および振動解析方法
JP6582483B2 (ja) ロボット制御装置およびロボットシステム
CN105983970B (zh) 机器人
US20240051138A1 (en) Device, robot system, and method for determining position of recessed portion to be formed by scraping
JP2021122923A (ja) 制御方法、ロボット装置、ロボットシステム、および物品の製造方法
WO2022145299A1 (ja) キサゲ加工を行うロボットシステム、方法、及びコンピュータプログラム
Ochoa et al. Impedance control architecture for robotic-assisted micro-drilling tasks
JP2018069361A (ja) 力制御座標軸設定装置、ロボットおよび力制御座標軸設定方法
US11951625B2 (en) Control method for robot and robot system
JP6088601B2 (ja) 走行軸付きロボットにおけるツール先端の振れを抑制するロボット制御装置
TWI906441B (zh) 進行刮削加工之機器人、機器人系統、進行刮削加工之方法及電腦程式
JP6705847B2 (ja) 加工結果に基づいた学習制御を行うロボットシステム及びその制御方法
JP5961077B2 (ja) ロボット制御装置およびロボット制御方法
JP4359808B2 (ja) ロボット制御装置
JP2008130022A (ja) 産業用ロボット制御装置
JPS5946758B2 (ja) 自動作業機械の動作制御方法
WO2021241512A1 (ja) ワークに対する作業をロボットに実行させる制御装置、ロボットシステム、及び制御方法
Bomfim et al. A low cost methodology applied to remanufacturing of robotic manipulators
Mizutani et al. A novel haptic display based on curvature estimation and its application to a machining support robot
JPS6180407A (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: 21915159

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022573017

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 18266863

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 202180086481.0

Country of ref document: CN

Ref document number: 112021005623

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21915159

Country of ref document: EP

Kind code of ref document: A1

WWG Wipo information: grant in national office

Ref document number: 202180086481.0

Country of ref document: CN