1. Technical Field
The invention relates to a dressing system for dressing an electrode of a spot welding gun.
2. Description of Relevant Art
A technique is known in the art in which after the operation for dressing an electrode provided in a spot welding gun has been performed, the dressing amount is automatically measured to judge whether the result of the electrode dressing operation is good or false (e.g., Japanese Laid-open Patent Publication No. 2007-268538).
In the operation of dressing the electrode of a spot welding gun, if the electrode is dressed insufficiently, it becomes impossible to conduct a welding current through a workpiece appropriately, so the quality of welding is deteriorated. On the other hand, if the electrode is dressed excessively, the electrode is worn out quickly, whereby the electrode needs to be replaced frequently, which leads to an increase in the cost. Therefore, it has been necessary to appropriately control the dressing amount of an electrode so as to not excessively and insufficiently dress the electrode.
The dressing system for dressing an electrode of a spot welding gun includes a cutter which dresses the electrode, a controller which controls rotation of the cutter, and a measuring part which measures a dressing amount of the electrode. The controller determines the rotational speed of the cutter based on the dressing amount measured by the measuring part.
On the basis of the dressing amount measured in a first dressing operation, the controller may determine the rotational speed in a second dressing operation to be performed subsequently to the first dressing operation. The measuring part may detect an electrode position each time the dressing operation is completed.
In this case, the measuring part may measure the dressing amount by calculating a difference between the electrode position detected upon completion of the first dressing operation and the electrode position detected upon completion of a third dressing operation performed prior to the first dressing operation.
The measuring part may detect the electrode position at a plurality of time points in a period of time from the start time to the end time of the first dressing operation. In this case, the measuring part may measure the dressing amount by calculating a difference between the electrode positions detected at two of the time points which are consecutive in time series.
The above plurality of time points may be two time points at the start and the end of the first dressing operation. The measuring part may integrate the differences calculated during the period of time from the start time to the end time of the first dressing operation. The measuring part may measure the dressing amount by dividing the integrated value of the differences by the number of times that the differences are calculated.
On the basis of the dressing amount measured during performing a dressing operation, the controller may determine the rotational speed in the dressing operation after the measurement of the dressing amount. The measuring part may detect the electrode position each time a predetermined time passes after a start time of the dressing operation. In this case, the measuring part may measure the dressing amount by calculating the difference between a first electrode position detected most recently and a second electrode position detected before the first electrode position.
The measuring part may integrate the differences each time the difference is calculated. The measuring part may measure the dressing amount by dividing the integrated value of the differences by the number of times that the differences are calculated. The controller may judge whether the dressing amount measured by the measuring part is between a predetermined first threshold value and a predetermined second threshold value greater than the first threshold value.
When having determined that the dressing amount is smaller than the first threshold value, the controller may determine the rotational speed to be higher than the rotational speed at the time of measurement of the dressing amount. When having determined that the dressing amount is greater than the second threshold value, the controller may determine the rotational speed to be lower than the rotational speed at the time of measurement of the dressing amount.
When having determined that the dressing amount is smaller than the first threshold value, the controller may determine the rotational speed to be higher by a predetermined speed than the rotational speed at the time of measurement of the dressing amount. Meanwhile, when having determined that the dressing amount is greater than the second threshold value, the controller may determine the rotational speed to be lower by a predetermined speed than the rotational speed at the time of measurement of the dressing amount.
When having determined that the dressing amount is smaller than the first threshold value, the controller may determine the rotational speed to be higher than the rotational speed at the time of measurement of the dressing amount, by a speed which depends on the difference between the dressing amount and the first threshold value.
Meanwhile, when having determined that the dressing amount is greater than the second threshold value, the controller may determine the rotational speed to be lower than the rotational speed at the time of measurement of the dressing amount, by a speed which depends on the difference between the dressing amount and the second threshold value.
When having determined the rotational speed, the controller may judge whether the determined rotational speed falls within a predetermined range. When having determined that the determined rotational speed falls out of the predetermined range, the controller may determine the rotational speed to fall within the predetermined range or may not change the rotational speed.
The dressing system may further include a warning notifying part that notifies a warning to a user when the controller has judged that the determined rotational speed falls out of the predetermined range. The measuring part may detect the rotational position of a servo motor which is provided at the spot welding gun I order to move the electrode. The measuring part may measure the dressing amount based on the rotational position.
The foregoing or other objects, features and advantages of the invention will become more apparent from the following description of preferred embodiments taken with reference to the accompanying drawings, in which:
Embodiments of the invention will now be described in detail based on the drawings. First, referring to
The dressing device 12 includes a cutter 16, a cutter support member 18, a servo motor 20, a bracket 22, and a base 24. The cutter 16 is a substantially circular-columnar member supported by the cutter support member 18 so as to be rotatable about a rotation axis O1. In the present embodiment, the cutter 16 is formed with a movable electrode dressing part 16a and a fixed electrode dressing part 16b.
The cutter support member 18 is supported by the bracket 22 via springs 26 so as to be slidable upward and downward. The bracket 22 is fixed to the base 24. The base 24 is fixed on a floor of a work cell.
The servo motor 20 is fixed to the cutter support member 18. The output shaft of the servo motor 20 is mechanically connected to the cutter 16 via a motion transmitting mechanism (not shown) which is comprised of e.g. a multistage gear. The rotary motion of the output shaft of the servo motor 20 is transmitted to the cutter 16 via the motion transmitting mechanism, whereby the cutter 16 is driven to rotate about the rotation axis O1.
The dressing controller 14 controls the operation of the servo motor 20. Specifically, the dressing controller 14 sends a rotation command to the servo motor 20 so as to drive the servo motor 20 to rotate in accordance with the rotation command. The dressing system 10 further includes a rotation angle detecting part 28, a storage 27, a warning notifying part 23, and a clocking part 25.
The rotation angle detecting part 28 detects the rotation angle of the servo motor mounted in a spot welding gun described below. Note that, the rotation angle detecting part 28 will be described hereinafter. The storage 27 is a non-volatile memory capable of electrically erasing and recording, which may be comprised of e.g. an EEPROM (Registered Trademark).
The dressing controller 14 communicates with the storage 27 so as to record data in the storage 27 or erase it from the storage 27. The warning notifying part 23 includes at least one of a display device, which may be comprised of a liquid crystal display, an organic EL display or the like, and a speaker. The dressing controller 14 sends a command to the warning notifying part 23 so as to notify a warning to the user by displaying a warning image on the display device and/or outputting a warning sound from the speaker.
The clocking part 25 starts or stops to clock in accordance with a command from the dressing controller 14. The dressing controller 14 can clock the elapsed time from the start of the clocking operation, with reference to a signal sent from the clocking part 25.
Next, referring to
The spot welding gun 36 is provided at the distal end of the robot arm 40 and moved by the robot arm 40. The robot controller 34 controls each element of the robot 32 and the spot welding gun 36.
The spot welding gun 36 includes a base 42, a fixed arm 44, a movable arm 46, and a servo motor 48. The base 42 is fixed to the distal end of the robot arm 40. The fixed arm 44 is arranged so that one end thereof is fixed to the base 42 and the other end thereof supports a fixed electrode 50. In the present embodiment, the fixed arm 44 extends from one end to the other end so as to be curved in a substantially L-shape.
The movable arm 46 is provided at the base 42 so as to be movable along a gun axis O2. In the present embodiment, the movable arm 46 is a linearly extending rod member, the upper end (not shown) of which is mechanically connected to an output shaft (not shown) of the servo motor 48 via a motion converting mechanism (not shown), and the lower end of which supports a movable electrode 52.
The motion converting mechanism includes e.g. a timing belt and a pulley, and converts the rotary motion of the output shaft of the servo motor 48 to a reciprocating motion along the gun axis O2 of the movable arm 46. The fixed electrode 50 and the movable electrode 52 are positioned on the gun axis O2.
The servo motor 48 drives the movable arm 46 via the motion converting mechanism in accordance with a command from the robot controller 34. As the movable arm 46 is moved by the servo motor 48, the movable electrode 52 reciprocates along the gun axis O2 in directions toward and away from the fixed electrode 50.
The fixed electrode 50 and the movable electrode 52 are energized in accordance with a command from the robot controller 34. Whereby, the fixed electrode 50 and the movable electrode 52 spot-weld a workpiece (not shown) to be welded which is held between the fixed electrode 50 and the movable electrode 52.
The robot controller 34 controls a servo motor (not shown) built in the robot arm 40 so as to operate the robot arm 40 via the servo motor. The robot controller 34 moves the spot welding gun 36 to a predetermined position by operating the robot arm 40. The dressing controller 14 is communicably connected to the robot controller 34, and can exchange information with the robot controller 34.
The rotation angle detecting part 28 includes an encoder mounted in the servo motor 48. The rotation angle detecting part 28 detects the rotation angle of the servo motor 48 and transmits it to the dressing controller 14. The dressing controller 14 can detect the position of the movable electrode 52 with respect to the fixed electrode 50 by detecting the rotational position of the servo motor 48. Note that, the rotation angle detecting part 28 may include a Hall element, instead of the encoder.
Next, referring to
Specifically, the robot controller 34 operates the robot arm 40 in accordance with a robot program so as to move the spot welding gun 36 to a predetermined welding position. Then, the robot controller 34 sends a command value to the servo motor 48 so as to move the movable arm 46 toward the fixed electrode 50.
As a result, the workpiece to be welded is held between the movable electrode 52 and the fixed electrode 50. Then, the robot controller 34 energizes the movable electrode 52 and the fixed electrode 50 so as to spot-weld the workpiece.
At the step S2, the robot controller 34 and the dressing controller 14 execute the dressing operation process, while communicating with each other. The details of the step S2 will be described hereinafter. After the step S2 is completed, at the step S3, the robot controller 34 judges whether the welding process is completed. Specifically, the robot controller 34 judges whether to have executed the welding operation on all of the workpieces which have been pre-set to be welded by the user.
When judging “YES”, the robot controller 34 ends the flow in
Next, referring to
The step S11 will be described below, with reference to
When the spot welding gun 36 is arranged at the dressing position, the cutter 16 is disposed between the movable electrode 52 and the fixed electrode 50. More specifically, the movable electrode 52 is positioned just above the movable electrode dressing part 16a of the cutter 16, while the fixed electrode 50 is positioned just below the fixed electrode dressing part 16b of the cutter 16.
At the step S22, the dressing controller 14 drives the cutter 16 to rotate. Specifically, the dressing controller 14 sends a command to the servo motor 20 so as to rotate the cutter 16 about the rotation axis O1 via the servo motor 20.
At the step S23, the robot controller 34 moves the movable electrode 52 toward the fixed electrode 50. Specifically, the robot controller 34 sends a command to the servo motor 48 so as to moves the movable arm 46 so that the movable electrode 52 moves toward the fixed electrode 50.
At the step S24, the robot controller 34 judges whether the movable electrode 52 and the fixed electrode 50 contact the cutter 16. Specifically, the robot controller 34 judges whether the load torque of the servo motor 48 exceeds a predetermined torque limit. The torque limit in this case may be set to substantially zero (an infinitesimal value greater than zero).
When the load torque of the servo motor 48 exceeds the torque limit, the robot controller 34 judges that the movable electrode 52 and the fixed electrode 50 respectively contact the movable electrode dressing part 16a and the fixed electrode dressing part 16b of the cutter 16 (i.e., judges “YES”), and proceeds to the step S25.
On the other hand, when the load torque of the servo motor 48 does not exceed the torque limit, the robot controller 34 judges that the movable electrode 52 and the fixed electrode 50 do not contact the cutter 16 (i.e., judges “NO”), and repeats the step S24 until the load torque of the servo motor 48 exceeds the torque limit.
As described above, the cutter support member 18 is slidably supported via the springs 26. Accordingly, when the movable electrode 52 is moved toward the cutter 16 at the step S23 and only the movable electrode 52 contacts the movable electrode dressing part 16a of the cutter 16, the cutter support member 18 is moved downward.
In contrast, when only the fixed electrode 50 contacts the fixed electrode dressing part 16b, the cutter support member 18 is moved upward. In this case, since the load torque of the servo motor 48 never exceeds the torque limit, the robot controller 34 will not judge “YES” at the step S24.
Thus, in the present embodiment, since the cutter support member 18 is slidably supported via the springs 26, the robot controller 34 will not judge “YES” at the step S24 unless the cutter 16 is held between the movable electrode 52 and the fixed electrode 50. Therefore, if only one of the movable electrode 52 and the fixed electrode 50 contacts the cutter 16, the electrode does not be dressed.
After judging “YES” at the step S24, at the step S25, the dressing controller 14 sends a command to the clocking part 25 so as to start to clock the elapsed time from the current time point. After the start of the clocking, the clocking part 25 outputs a T-lapse trigger to the dressing controller 14 when a predetermined time T has passed. The predetermined time T is set to one second, for example.
At the step S26, the robot controller 34 sends a command to the servo motor 48 so as to move the movable electrode 52 toward the fixed electrode 50 further. At this time, the robot controller 34 may drive the servo motor 48 with a predetermined constant torque, or may change the torque of the servo motor 48 in response to a feedback from the servo motor 48.
By this operation, the cutter 16 is held between the movable electrode 52 and the fixed electrode 50, whereby the movable electrode 52 and the fixed electrode 50 are respectively pressed against the movable electrode dressing part 16a and the fixed electrode dressing part 16b of the cutter 16 by a certain pressure so as to be dressed thereby.
At the step S27, the dressing controller 14 judges whether the predetermined time T has passed from the time point when the clocking part 25 starts the clocking. Specifically, the dressing controller 14 judges whether to have received the T-lapse trigger from the clocking part 25.
The dressing controller 14 judges “YES” when having received the T-lapse trigger, and proceeds to the step S28. On the other hand, when not receiving the T-lapse trigger, the dressing controller 14 repeats the step S27 until receiving the T-lapse trigger.
At the step S28, the robot controller 34 sends a command to the servo motor 48 so as to move the movable arm 46 so that the movable electrode 52 is moved away from the fixed electrode 50. As a result, the movable electrode 52 and the fixed electrode 50 leave from the cutter 16, whereby the dressing onto the movable electrode 52 and the fixed electrode 50 is ended.
As described above, in the present embodiment, the movable electrode 52 and the fixed electrode 50 are dressed by the cutter 16 until the time T passes (i.e., over the period of time T) from the time point when having been judged “YES” at the step S24.
At the step S29, the dressing controller 14 sends a command to the servo motor 20 so as to stop the rotation of the cutter 16. In this manner, the step S11 is ended, and the flow proceeds to the step S12 in
Referring again to
When the step S12 is started, at the step S31, the robot controller 34 operates the robot arm 40 so as to move the spot welding gun 36 from the dressing position to a dressing amount measuring position. When the spot welding gun 36 is arranged at the dressing amount measuring position, there is no article between the movable electrode 52 and the fixed electrode 50.
At the step S32, the robot controller 34 sends a command to the servo motor 48 so as to move the movable electrode 52 toward the fixed electrode 50. At the step S33, the robot controller 34 judges whether the movable electrode 52 contacts the fixed electrode 50.
Specifically, the robot controller 34 judges whether the load torque of the servo motor 48 exceeds a predetermined torque limit. The torque limit in this case is set to substantially zero (an infinitesimal value greater than zero).
When the load torque of the servo motor 48 exceeds the torque limit, the robot controller 34 judges that the movable electrode 52 contacts the fixed electrode 50 (i.e., judges “YES”), and proceeds to the step S34. On the other hand, when the load torque of the servo motor 48 does not exceed the torque limit, the robot controller 34 judges that the movable electrode 52 does not contact the fixed electrode 50 (i.e., judges “NO”), and repeats the step S33 until the load torque of the servo motor 48 exceeds the torque limit.
At the step S34, the dressing controller 14 detects the rotation angle of the servo motor 48. Specifically, the dressing controller 14 receives data relating to the rotation angle of the servo motor 48 from the rotation angle detecting part 28, and records the data in the storage 27. The thus acquired rotation angle of the servo motor 48 is a value indicative of the position of the movable electrode 52 with respect to the fixed electrode 50 at this time.
At the step S35, the dressing controller 14 measures the dressing amount by calculating the difference between the rotation angle of the servo motor 48 acquired in the current dressing operation process and the rotation angle of the servo motor 48 acquired in the last dressing operation procedure.
This function will be described in detail below. As illustrated in
Here, it is assumed that the nth loop is being executed at the current time point. In this case, at the step S35, the dressing controller 14 calculates the difference φn between the rotation angle θn of the servo motor 48 acquired at the nth step S34 and the rotation angle θn−1 of the servo motor 48 acquired at the (n−1)th step S34.
Since the dressing amount ξn of the fixed electrode 50 and the movable electrode 52 at the nth step S11 depends on the difference φn, the dressing controller 14 can obtain the dressing amount ξn by calculating the difference φn.
Thus, in the present embodiment, the dressing controller 14 detects the rotation angle of the servo motor 48 (i.e., the position of the movable electrode 52 with respect to the fixed electrode 50) via the rotation angle detecting part 28 each time the step S11 is completed.
Then, the dressing controller 14 measures the dressing amount ξn of the fixed electrode 50 and the movable electrode 52 dressed at the current step S11, by detecting the difference φn between the rotation angles detected in the current loop and the last loop. Thus, the dressing controller 14 and the rotation angle detecting part 28 function as a measuring part which measures the dressing amount of the electrodes 50 and 52.
Note that, if the first loop is being executed, at the step S35, the dressing controller 14 may calculate the difference φ1 between the rotation angle θ1 of the servo motor 48 acquired at the first step S34 and the reference rotation angle θref pre-recorded in the storage 27. The reference rotation angle θref may be acquired by the user in an empirical or statistical manner.
At the step S36, the robot controller 34 sends a command to the servo motor 48 so as to move the movable arm 46 so that the movable electrode 52 is moved away from the fixed electrode 50. In this manner, the step S12 is ended, and the flow proceeds to the step S13 in
Referring again to
Specifically, the dressing controller 14 compares the difference φn measured at the step S35 with the first threshold value α1. When the difference φn is smaller than the first threshold value α1 (i.e., φn<α1), the dressing controller 14 judges “YES”, and proceeds to the step S42. On the other hand, when the difference φn is greater than or equal to the first threshold value α1 (i.e., φn≧α1), the dressing controller 14 judges “NO”, and proceeds to the step S44.
At the step S42, the dressing controller 14 determines the rotational speed of the cutter 16 so that the rotational speed of the cutter 16 in a next dressing operation which will be performed next time becomes higher than the rotational speed of the cutter 16 in the current dressing operation which is being performed at this time. More specifically, it is assumed that the nth step S2 is being executed at the current time point and the cutter 16 have been rotated by a rotational speed vn.
In this case, at this step S42, the dressing controller 14 changes the command value for the servo motor 20 which determines the rotational speed of the cutter 16 so that the rotational speed of the cutter 16 in (n+1)th step S11 which will be executed for the (n+1)th time is increased from vn to vn+1 (>vn). Then, the dressing controller 14 records the changed command value in the storage 27.
When the (n+1)th step S2 is executed, at the step S22, the dressing controller 14 reads out the changed command value from the storage 27, and sends it to the servo motor 20 so as to rotate the cutter 16 at the rotational speed vn+1.
As an example for increasing the rotational speed, the rotational speed vn+1 is set to a speed obtained by adding a constant c1 to the rotational speed vn (i.e., vn+1=vn+c1). In this instance, since the dressing controller 14 can change the rotational speed of the cutter 16 in a stepwise manner, it is possible to easily manage the change of the rotational speed of the cutter 16.
Alternatively, as another example, the rotational speed vn+1 is set to a speed obtained by adding a variable f(δ1), which depends on the difference δ1 between the dressing amount and the first threshold value, to the rotational speed vn (i.e., vn+1=vn+f(δ1)). The variable f(δ1) is a function of δ1, which may be defined as f(δ1)=c2δ1 (c2 is a constant), for example.
In this case, if the dressing amount ξn (i.e., the difference φn) is significantly smaller than the first threshold value (α1), the dressing controller 14 can significantly increase the rotational speed in response. On the other hand, if the dressing amount ξn slightly exceeds the first threshold value (α1), it is possible to make the increment of the rotational speed to be smaller. Due to this, it is possible to change the rotational speed so as to be suitable for the desired dressing amount.
When judged “NO” at the step S41, at the step S44, the dressing controller 14 judges whether the dressing amount ξn measured at the step S35 is greater than the second threshold value. The second threshold value is pre-recorded in the storage 27.
Specifically, the dressing controller 14 compares the difference φn measured and stored at the step S35 with the second threshold value β1. When the difference φn is greater than the second threshold value β1 (i.e., φn>β1), the dressing controller 14 judges “YES”, and proceeds to the step S45. On the other hand, when the difference φn is smaller than or equal to the second threshold value β1 (i.e., φn≦β1), the dressing controller 14 judges “NO”, and ends the flow shown in
At the step S45, the dressing controller 14 determines the rotational speed of the cutter 16 so that the rotational speed of the cutter 16 in a next dressing operation which will be performed next time becomes lower than the rotational speed of the cutter 16 in the current dressing operation which is currently performed. More specifically, it is assumed that the nth step S2 is being executed at the current time point and the cutter 16 have been rotated at the rotational speed vn.
In this case, at this step S45, the dressing controller 14 changes the command value which determines the rotational speed of the cutter 16 so that the rotational speed of the cutter 16 in (n+1)th step S11 which will be executed for the (n+1)th time is decreased from vn to vn+1 (<vn). Then, the dressing controller 14 records the changed command value in the storage 27.
As an example, the rotational speed vn+1 is set to a speed obtained by subtracting a constant c3 from the rotational speed vn (i.e., vn+1=vn−c3). Alternatively, as another example, the rotational speed vn+1 is set to a speed obtained by subtracting a variable f(δ2), which depends on the difference δ2 between the dressing amount and the second threshold value, from the rotational speed vn (i.e., vn+1=vn−f(δ2)). The variable f(δ2) is a function of the difference δ2, which may be defined as f(δ2)=c4δ2 (c4 is a constant), for example.
When (n+1)th step S2 is executed, at the step S22, the dressing controller 14 reads out the changed command value from the storage 27, and sends it to the servo motor 20 so as to rotate the cutter 16 at the rotational speed vn+1.
Thus, in the present embodiment, the dressing controller 14 changes the rotational speed for (n+1)th dressing operation which will be performed for the (n+1)th time, when judging that the dressing amount ξn (i.e., the difference φn) is smaller than the first threshold value (α1) or greater than the second threshold value (β1).
On the other hand, the dressing controller 14 does not change the rotational speed vn in the nth dressing operation but maintains the rotational speed to vn, when judging that the dressing amount is in the range between the first threshold value and the second threshold value. In this case, (n+1)th dressing operation to be performed for the (n+1) time is also performed with the same rotational speed vn as in the nth dressing operation.
When the rotational speed of the cutter 16 is changed at the step S42 or the step S45, at the step S43, the dressing controller 14 judges whether the changed rotational speed vn+1 falls within a predetermined range.
Specifically, the upper limit vmax and the lower limit vmin of the rotational speed of the cutter 16 are pre-stored in the storage 27. The dressing controller 14 judges whether the changed rotational speed vn+1 falls within the range from vmin to vmax (i.e., vmin≦vn+1≦vmax).
When the changed rotational speed vn+1 falls within the range from vmin to vmax, the dressing controller 14 judges “YES”, and ends the flow of the step S13. On the other hand, when the changed rotational speed vn+1 is out of the range from vmin to vmax (i.e., vn+1<vmin or vn+1>vmax), the dressing controller 14 judges “NO”, and proceeds to the step S46.
At the step S46, the dressing controller 14 changes the rotational speed vn at the current time point so as to be within the range from vmin to vmax. As an example, when the rotational speed vn at the current time point is increased at the step S42, as a result of which the rotational speed exceeds the upper limit vmax, the dressing controller 14 changes the rotational speed from vn to vmax at this step S46.
Or when the rotational speed vn at the current time point is decreased at the step S45, as a result of which the rotational speed becomes lower than the lower limit vmin, the dressing controller 14 changes the rotational speed from vn to vmin at this step S46.
As another example, when judging that the changed rotational speed vn+1 is out of the range from vmin to vmax, the dressing controller 14 may not change the rotational speed of the cutter 16. In this case, when performing (n+1)th step S2, the dressing controller 14 rotates the cutter 16 at the same rotational speed vn as in the nth step S2. By this step S46, it is possible to prevent the cutter 16 from rotating at an abnormal rotation speed.
At the step S47, the dressing controller 14 notifies the warning, which indicates that the changed rotational speed vn+1 is out of a predetermined range, to the user via the warning notifying part 23. The warning notifying part 23 notifies the warning to the user by displaying the warning image on the display or outputting the warning sound from the speaker, in accordance with a command from the dressing controller 14. By this step S47, the user can understand that the cutter 16 rotates at a rotational speed which is the same as or close to the upper limit or the lower limit.
As described above, according to the present embodiment, the dressing controller 14 measures the dressing amount of the fixed electrode 50 and the movable electrode 52 during the dressing operation, and determines the rotational speed of the cutter 16 so as to increase, decrease or maintain, on the basis of the dressing amount. Due to this feature, since the dressing controller 14 can flexibly control the rotational speed of the cutter 16 based on the dressing amount ξn, it is possible to appropriately control the dressing amount.
Specifically, in the present embodiment, the dressing controller 14 measures the dressing amount each time the dressing operation is completed, and increases the rotational speed for the (n+1)th dressing operation when judging that the dressing amount ξn in the nth dressing operation is small, whereby making it possible. to increase the dressing amount in the (n+1)th dressing operation.
On the other hand, when judging that the dressing amount ξn in the nth dressing operation is large, the dressing controller 14 decreases the rotational speed for the (n+1)th dressing operation, whereby making it possible to decrease the dressing amount in the (n+1)th dressing operation.
Accordingly, it is possible to appropriately adjust a dressing amount in subsequent dressing operations in response to the dressing amount in the current dressing operation, whereby it is possible to dress the movable electrode 52 and the fixed electrode 50 not excessively and not insufficiently. As a result, the electrodes can be dressed in such a manner as to maintain the quality of welding while preventing the electrode from being worn quickly.
Note that, instead of the flow of the step S12 shown in
Then, the dressing controller 14 may measure the dressing amount of the movable electrode 52 by calculating the difference between the rotation angle of the servo motor 48 acquired in the current dressing operation and the rotation angle of the servo motor 48 acquired in the previous dressing operation. Further, the dressing controller 14 may calculate the dressing amount of the fixed electrode 50 by subtracting the dressing amount of the movable electrode 52 from the dressing amount acquired by the flow shown in
As another example, the dressing system 10 may include an imaging apparatus. In this case, the dressing controller 14 may acquire image data of the movable electrode 52 or the fixed electrode 50 imaged by the imaging apparatus in the current dressing operation process. Then, the dressing controller 14 may measure the length of each electrode by analyzing the image data.
Then, the dressing controller 14 may analyze the image data of the movable electrode 52 or the fixed electrode 50 imaged by the imaging apparatus in the previous dressing operation process, so as to measure the length of each electrode. Then, the dressing controller 14 may measure the dressing amount of each electrode by subtracting the current length of the electrode from the previous length of the electrode. Thus, various methods for measuring the electrode position or the electrode length are publicized as prior art. Therefore, the dressing controller 14 may measure the dressing amount with any known method.
Next, referring to
The step S51 will be described below with reference to
The rotation angle θS acquired at the step S61 indicates the rotation angle of the servo motor 48 (i.e., the position of the movable electrode 52 with respect to the fixed electrode 50) at the time when the movable electrode 52 and the fixed electrode 50 contact the cutter 16 without substantial pressure, i.e., when the dressing onto the movable electrode 52 and the fixed electrode 50 is actually started.
After judging “YES” at the step S27, the dressing controller 14 executes the steps S62 and S63 in parallel with the above-mentioned steps S28 and S29. At the step S62, similar as the step S61, the dressing controller 14 detects a rotation angle θE of the servo motor 48 via the rotation angle detecting part 28, and records it in the storage 27.
The rotation angle θE acquired at the step S62 is a value indicative of the rotation angle of the servo motor 48 (i.e., the position of the movable electrode 52 with respect to the fixed electrode 50) at the time when a predetermined time T have passed from the start time of dressing onto the movable electrode 52 and the fixed electrode 50 in the step S24, i.e., when the dressing onto the movable electrode 52 and the fixed electrode 50 is ended.
At the step S63, the dressing controller 14 calculates the difference φSE between the rotation angle θS acquired at the step S61 and the rotation angle θE acquired at the step S62.
Since the dressing amount ξSE of the fixed electrode 50 and the movable electrode 52 dressed from the start time to the end time of the dressing depends on the difference φSE, the dressing controller 14 can obtain the dressing amount ξSE by calculating the difference φSE.
Thus, in the present embodiment, the dressing controller 14 measures the dressing amount ξSE of the fixed electrode 50 and the movable electrode 52 dressed in the step S51 by detecting the difference φSE between the rotation angles detected at the start and end of the dressing.
Then, as shown in
When judging that the dressing amount ξSE is smaller than the first threshold value or greater than the second threshold value at the step S41 or S44, the dressing controller 14 changes the rotational speed for the subsequent dressing operation which will be performed for the (n+1)th time.
On the other hand, when judging that the dressing amount ξn is within the range between the first threshold value and the second threshold value, the dressing controller 14 does not change the rotational speed vn in the nth dressing operation but maintains it.
According to the present embodiment, the dressing controller 14 can measure the dressing amount by detecting the difference φSE between the rotation angles at the start and the end of the dressing operation, and can appropriately adjust the dressing amount in the subsequent dressing operations in response to the measured dressing amount. Therefore, the movable electrode 52 and the fixed electrode 50 can be dressed not excessively and not insufficiently. As a result, it is possible to dress the electrode so as to maintain the quality of welding while preventing the electrode from being worn quickly.
Next, referring next to
When judging “YES” at the step S24, at the step S71, the dressing controller 14 sends a command to the clocking part 25 so as to start to clock the elapsed time from this time point. In the present embodiment, the clocking part 25 outputs a τ-lapse trigger to the dressing controller 14 each time a predetermined time τ have passed after the start of the clocking operation.
The predetermined time τ may be set to e.g. 0.1 second. Further, the clocking part 25 outputs a T-lapse trigger to the dressing controller 14 when a predetermined time T (T>τ) have passed after the start of the clocking operation.
At the step S2 according to the present embodiment, the dressing controller 14 loops the steps S72 to S78 at a cycle τ until the time T passes after the clocking operation is started at the step S71. The operation at the steps S72 to S78 in m-th loop will be described below.
After the step S26, at the step S72, the dressing controller 14 judges whether to have received the m-th τ-lapse trigger from the clocking part 25. When the m-th τ-lapse trigger has been received, the dressing controller 14 judges “YES”, and proceeds to the step S73. On the other hand, when the m-th τ-lapse trigger has not been received, the dressing controller 14 judges “NO”, and proceeds to the step S27.
At the step S73, the dressing controller 14 detects the rotation angle θmτ, of the servo motor 48 via the rotation angle detecting part 28, and records it in the storage 27. At the step S74, the dressing controller 14 calculates the difference φm between the rotation angle θmτ of the servo motor 48 detected at the most recent (i.e., the m-th) step S73 and the rotation angle θ(m−1)τ of the servo motor 48 detected at the (m−1)th step S73, and records the calculated difference φm in the storage 27.
At the step S75, the dressing controller 14 integrates all of the differences φ1, φ2, φ3, . . . φm which have been calculated up to the current time point so as to calculate the integrated value Σφ=φ1+φ2+φ3+ . . . +φm. Then, the dressing controller 14 records the integrated value Σφ thus calculated in the storage 27.
At the step S76, the dressing controller 14 calculates an average dressing amount ξave=Σφ/m obtained by dividing the integrated value Σ100 calculated at step S75 by the number of times “m” that the differences φ1−φm have been calculated up to the current time point, and records the calculated average dressing amount ξave in the storage 27. In the present embodiment, the dressing controller 14 measures the average dressing amount ξave of the fixed electrode 50 and the movable electrode 52, and determines the rotational speed of the cutter 16 based on the average dressing amount ξave as described hereinafter.
Then, at the step S77, the dressing controller 14 determines the rotational speed of the cutter 16. This step S77 will be described below, with reference to
This first threshold value α3 is pre-recorded in the storage 27. When the average dressing amount ξave is smaller than the first threshold value α3, the dressing controller 14 judges “YES”, and proceeds to the step S82. On the other hand, when the average dressing amount ξave is greater than or equal to the first threshold value α3 (i.e., ξave≧α3), the dressing controller 14 judges “NO”, and proceeds to the step S84.
At the step S82, the dressing controller 14 determines the rotational speed of the cutter 16 so as to be higher than the rotational speed at the current time point. Specifically, it is assumed that the rotational speed of the cutter 16 is vm−1 at the start of the m-th step S77.
In this case, at this step S82, the dressing controller 14 changes the command value for the servo motor 20 which determines the rotational speed of the cutter 16 so as to increase the rotational speed of the cutter 16 from vm−1 to vm (>vm−1), and sends the changed command value to the servo motor 20. The servo motor 20 receives the changed command value and increases the rotational speed of the cutter 16 from vm−1 to vm.
As an example of increasing the rotational speed, the changed rotational speed vm may be set to a speed obtained by adding a constant c5 to the rotational speed vm−1 (i.e., vm=vm−1+c5), similar as the above-described embodiment. Alternatively, the changed rotational speed vm may be set to a speed obtained by adding a variable f(δ3), which depends on the difference δ3 between the average dressing amount ξave and the first threshold value α3, to the rotational speed vm−1 (i.e., vm=vm−1+f(δ3)).
On the other hand, when judging “NO” at the step S81, at the step S84, the dressing controller 14 judges whether the average dressing amount ξave measured at the step S76 is greater than a second threshold value β3 (i.e., ξave>β3). This second threshold value β3 is pre-stored in the storage 27.
When the average dressing amount ξave is greater than the second threshold value β3, the dressing controller 14 judges “YES”, and proceeds to the step S85. On the other hand, when the average dressing amount ξave is smaller than or equal to the second threshold value β3 (i.e., ξave≦β3), the dressing controller 14 judges “NO”, and ends the flow of the step S77.
At the step S85, the dressing controller 14 determines to decrease the rotational speed of the cutter 16 in the current dressing operation which is being performed at this time. Specifically, the dressing controller 14 changes the command value for the servo motor 20 which determines the rotational speed of the cutter 16 so as to decrease the rotational speed of the cutter 16 from vm−1 to vm (<vm−1), and sends the changed command value to the servo motor 20.
The servo motor 20 receives the changed command value and changes the rotational speed of the cutter 16 from vm−1 to vm. After the step S82 or S85, the dressing controller 14 sequentially performs the above-mentioned steps S43, S46, and S47, and ends the step S77 shown in
Referring again to
Thus, in the present embodiment, the dressing controller 14 successively changes the rotational speed of the cutter 16 during the currently-executed dressing operation, on the basis of the dressing amount measured in the currently-executed dressing operation. Due to this feature, it is possible to appropriately adjust the dressing amount of the fixed electrode 50 and the movable electrode 52 during the execution of the dressing operation.
Therefore, the movable electrode 52 and the fixed electrode 50 can be dressed not excessively and not insufficiently, so the electrode can be dressed so as to maintain the quality of welding while preventing the electrode from being worn quickly.
Further, in the present embodiment, the average dressing amount ξave is measured as the dressing amount to be measured during the dressing operation. Due to this feature, it is possible to improve the reliability of the dressing amount measurement for the fixed electrode 50 and the movable electrode 52.
In the above-mentioned embodiment, a case has been described where the dressing controller 14 is provided as an element separate from the robot controller 34. However, the dressing controller 14 may be incorporated into the robot controller. An embodiment having such configuration will be described below, with reference to
The dressing system 10 includes a dressing device 12, a dressing controller 14, a rotation angle detecting part 28, a storage 27, a warning notifying part 23, and a clocking part 25. The spot welding system 60 includes a robot 32, a robot controller 62, and a spot welding gun 36.
The dressing controller 14 is incorporated into the robot controller 62, and the robot controller 62 performs the function of the dressing controller 14. The servo motor 20 of the dressing device 12, the rotation angle detecting part 28, the storage 27, the warning notifying part 23, and the clocking part 25 are communicably connected to the robot controller 62, and operate in accordance with a command from the robot controller 62, similar as the above-described embodiment.
Note that, in the above embodiment, a case has been described where, in the step S51 in
However, the dressing controller 14 may detect the rotation angles at a plurality of time points in the period of time from the start to the end of the dressing operation. For example, the dressing controller 14 may perform operations such as the above steps S72 and S73 in
In this case, the dressing controller 14 detects the rotation angles at a cycle τ from the start to the end of the dressing operation. Then, at the step S63 in
Further, a case has been described where, at the step S35 in
However, instead of the above-mentioned steps S35 and S63, the dressing controller 14 may integrate the differences φ between rotation angles and measure the average dressing amount ξave by dividing the integrated value Σφ of the differences by the number of times that the differences φ are calculated, as in the steps S74 to S76 in
Further, in the above-described embodiment, a case has been described where the movable arm 46 is driven by the servo motor 48 and the rotation angle of the servo motor 48 is detected by the rotation angle detecting part 28 in order to detect the position of the electrode.
However, instead of the servo motor 48, a device capable of linearly driving the movable arm 46 along the gun axis O, such as a linear motor or a cylinder, may be applied. In this case, the dressing system 10 may include a position sensor capable of detecting a displacement (e.g., unit: [mm]) of the movable arm 46 along the gun axis O as a means for detecting the electrode position, instead of the rotation angle detecting part 28.
Further, in the above-described embodiment, a case has been described where the movable arm 46 is provided on the base 42 to be movable along the gun axis O. However, the movable arm may be rotatably provided on the base 42.
For example, the movable arm can be rotated by the servo motor 48 about a rotation axis provided on the base 42 (e.g., an axis disposed perpendicular to
Further, in the above-described embodiment, a case has been described where the spot welding gun 36 is a so-called C-type spot gun. However, the spot welding gun may be a so-called X-type spot gun comprising a pair of gun arms which can open and close under the action of a pressure cylinder, and to each of which an electrode is attached.
Further, in the above-described embodiment, a case has been described where both of the movable electrode 52 and the fixed electrode 50 are dressed by the cutter 16, and the dressing amount of the movable electrode 52 and of the fixed electrode 50 in measured. However, only one of the movable electrode 52 and the fixed electrode 50 may be dressed by the cutter 16, and the dressing amount of only one of the movable electrode 52 and the fixed electrode 50 may be measured.
Further, in the above-described embodiment, a case has been described where the dressing system 10 includes the storage 27. However, the dressing system 10 may not include the storage 27, and transmit data of the rotation angle or the like to an external device via a network so as to record it in the external device.
Further, in the above-described embodiment, a case has been described where the dressing system 10 includes the dressing device 12, the dressing controller 14, the rotation angle detecting part 28, the storage 27, the warning notifying part 23, and the clocking part 25. However, the invention should not be limited thereto. A dressing system 70 according to still another embodiment of the invention will be described below, with reference to
The dressing system 70 includes a cutter 72, a controller 74, and a measuring part 76. The cutter 72 dresses an electrode of a spot welding gun such as the fixed electrode 50 and the movable electrode 52, described above.
The controller 74 controls the rotation of the cutter 72. The measuring part 76 measures the dressing amount of the electrode when the electrode is dressed by the cutter 72. That is, the dressing controller 14 and the rotation angle detecting part 28 in the above-described embodiment correspond to the measuring part 76.
The controller 74 determines the rotational speed of the cutter 72 based on the dressing amount measured by the measuring part 76. That is, the dressing controller 14 in the above-described embodiment corresponds to the controller 74. According to the dressing system 70 of the present embodiment, the controller 74 can flexibly control the rotational speed of the cutter 72 in response to the dressing amount measured by the measuring part 76, so it is possible to appropriately control the dressing amount.
Although, in the foregoing, the invention has been described with respect to embodiments thereof, the invention defined in the appended claims is by no means limited to the embodiments described above. Further, any combination of the features described in the embodiments of the invention falls within the technical scope of the invention. However, all combinations of such features are not necessarily essential to the solving means of the invention. Further, it will also be apparent to those skilled in the art that various changes or improvements can be applied to the embodiments described above.
Further, it should be noted that the execution order of the respective processings such as the operation, procedure, step, process, stage, or the like in the device, system, program, and method illustrated in the claims, specification, and drawings can be realized in any sequence unless specifically indicated as “before”, “prior to”, or the like or unless the output of the previous processing is used in the subsequent processing. Regarding the flow of operation in the claims, specification and drawings, even if it is explained using “first”, “next”, “then” or the like, this does not mean that the execution in this order is essential.
Number | Date | Country | Kind |
---|---|---|---|
2014-150057 | Jul 2014 | JP | national |