The entire disclosure of Japanese patent Application No. 2022-087410, filed on May 30, 2022, is incorporated herein by reference in its entirety.
The present invention relates to a component supply device, a component supply method, and a program.
In recent years, there has been proposed a component supply device that takes out a small amount of components from stacked components and supplies the components to a predetermined position. Techniques of this type in related art include, for example, those described in JP 2018-8343 A. JP 2018-8343 A describes a technique in which, on a tray on which components are placed, in a case where the components overlap each other and cannot be grasped by a robot hand, the tray is tilted to break the overlap of the components.
However, even if the tray is tilted, a component does not necessarily move to a posture or a position where the component can be picked. Thus, in the technique described in JP 2018-8343 A, it is necessary to move the component many times, which degrades efficiency of component pickup operation.
In view of the problem in related art as described above, an object of the present invention is to provide a component supply device, a component supply method, and a program capable of improving efficiency of component pickup operation.
To achieve the abovementioned object, according to an aspect of the present invention, a component supply device reflecting one aspect of the present invention comprises: a picker base on which a component is to be loaded; a supplier that picks up the component loaded on the picker base and supplies the component to a predetermined position; a detector that detects the component loaded on the picker base; and a hardware processor that determines a state of the component loaded on the picker base, on a basis of information detected by the detector, wherein the hardware processor determines whether the component is a component that is pickable or a component that is unpickable by the supplier on a basis of the state of the component, and calculates an operation amount for adjusting the component that is unpickable to a pickable state and adjusts only a state of the component that is unpickable by an adjuster on a basis of the calculated operation amount.
The advantages and features provided by one or more embodiments of the invention will become more fully understood from the detailed description given hereinbelow and the appended drawings which are given by way of illustration only, and thus are not intended as a definition of the limits of the present invention:
Hereinafter, one or more embodiments of the present invention will be described with reference to the drawings. However, the scope of the invention is not limited to the disclosed embodiments. In the drawings, the same members are denoted by the same reference numerals.
[Configuration of Component Supply Device]
First, a configuration of a component supply device according to an embodiment will be described with reference to
As illustrated in
The frame 2 is formed in a substantially rectangular parallelepiped shape and has a width, a depth, and a height. In
The storages 3A and 3B are arranged on one side of the frame 2 in the Y axis direction. The storages 3A and 3B face each other with an appropriate distance in the X-axis direction. The storages 3A and 3B are formed in a substantially box shape with an open upper surface. The storages 3A and 3B are provided with a lifting mechanism that moves bottom parts in the Z-axis direction. This allows change of capacity and a height position of the stored component of each of the storages 3A and 3B.
For example, a first component is stored in the storage 3A, and a second component different from the first component is stored in the storage 3B. The component supply device 1 in this case supplies the first component and the second component to the device in the next step. In addition, the first component may be stored in the storages 3A and 3B in a first period, and the second component may be stored in the storages 3A and 3B in a second period different from the first period. The component supply device 1 in this case supplies the first component to the device in the next step in the first period and supplies the second component to the device in the next step in the second period.
The supplier 4 is arranged at a substantially central part in an upper part of the frame 2. The supplier 4 grasps one or a plurality of components from a large number of first components or a large number of second components stored in the storages 3A and 3B and drops and supplies the components to the picker bases 5A and 5B. As a result, the first component or the second component is placed on the picker bases 5A and 5B. In addition, the supplier 4 grasps the first component or the second component placed on the picker bases 5A and 5B one by one and supplies the first component or the second component to the place tables 6A and 6B. A configuration of the supplier 4 will be described later with reference to
The picker bases 5A and 5B are arranged on both sides of the supplier 4 in the X-axis direction. The picker bases 5A and 5B are adjacent to the storages 3A and 3B in the Y-axis direction, respectively. The picker bases 5A and 5B are positioned above the storages 3A and 3B.
In the Z-axis direction, part of the picker base 5A overlaps the storage 3A. As a result, the component dropped from part of the picker base 5A is stored (returned) in the storage 3A. In the Z-axis direction, part of the picker base 5B overlaps the storage 3B. As a result, the component dropped from part of the picker base 5B is stored (returned) in the storage 3B. A configuration of the picker bases 5A and 5B will be described later with reference to
The place tables 6A and 6B have belt conveyors that convey components in the Y-axis direction. The place tables 6A and 6B are attached to an X-axis moving mechanism. The X-axis moving mechanism moves the place tables 6A and 6B in the X-axis direction. The place tables 6A and 6B convey the components supplied from the supplier 4 in the Y-axis direction and position the components at a predetermined position. The positioned components are fed to the device in the next step.
As illustrated in
[Configuration of Supplier]
Next, the configuration of the supplier 4 will be described with reference to
As illustrated in
The arm 412 freely moves the hand block 42 in the X-axis direction, the Y-axis direction, and the Z-axis direction. The arm 412 freely rotates the hand block 42 about the X axis, the Y axis, and the Z axis. The arm 412 includes a base member 413, a first link member 414, a second link member 415, and a connection member 416.
The base member 413 is rotatably connected to the support base 411. The base member 413 rotates about the Z axis (first axis). One end of the first link member 414 is rotatably connected to the base member 413. The first link member 414 rotates about an axis (second axis) extending in the horizontal direction.
The second link member 415 includes a rotator 415a and a turner 415b connected to the rotator 415a. The rotator 415a is rotatably connected to the other end of the first link member 414. The rotator 415a rotates about an axis (third axis) extending in the horizontal direction. The turner 415b is rotatably connected to the rotator 415a. The turner 415b rotates about an axis (fourth axis) extending in a connection direction with the rotator 415a.
The connection member 416 includes a rotator 416a and a turner 416b connected to the rotator 416a. The rotator 416a is rotatably connected to the turner 415b of the second link member 415. The rotator 416a rotates about an axis (fifth axis) extending in the horizontal direction. The turner 416b is rotatably connected to the rotator 416a. The turner 416b rotates about an axis (sixth axis) extending in a connection direction with the rotator 416a. Note that directions in which the second axis, the third axis, and the fourth axis extend are parallel.
As illustrated in
The hand 422 includes a plurality of (two in the present embodiment) grasping pieces 422a. An opening and closing mechanism for opening and closing the plurality of grasping pieces 422a and a lifting mechanism for lifting and lowering the plurality of grasping pieces are disposed inside the housing 421. The plurality of grasping pieces 422a is lifted and lowered by the lifting mechanism, so that a length of the grasping pieces protruding from the hand hole 421a changes. If the length of the plurality of grasping pieces 422a protruding from the hand hole 421a is increased, a space for holding the components is widened, and the number of components to be grasped is increased. On the other hand, if the length of the plurality of grasping pieces 422a protruding from the hand hole 421a is shortened, the space for holding the components is narrowed, and the number of components to be grasped is reduced.
The plurality of grasping pieces 422a can grasp one component at a tip thereof. The hand 422 grasps one or a plurality of components from a large number of components stored in the storage 3A or the storage 3B and supplies the components to the picker base 5A or the picker base 5B. On the other hand, the hand 422 grasps one component from one or a plurality of components placed on the picker base 5A or the picker base 5B and supplies the one component to the place table 6A or the place table 6B.
The length of the grasping pieces 422a in a width direction (a width of the hand fingertip) is set to W_h. An interval (finger opening width) in a state where the two grasping pieces 422a are opened is set to W_f. Information on the hand fingertip width W_h and the finger opening width W_f of the grasping pieces 422a is stored in a storage 72 described later.
The camera 423 is a specific example of a detector according to the present invention. The camera 423 includes an image sensor, a plurality of lenses including an objective lens, a polarizing filter, illumination, and the like. The camera 423 is housed in the housing 421. The objective lens of the camera 423 is exposed from the lens hole 421b of the housing 421.
An image (video) captured by the camera 423 is transmitted to a controller 71 described later. The controller 71 detects information such as positions of the storages 3A and 3B and the picker bases 5A and 5B from the image captured by the camera 423.
[Configuration of Picker Base]
Next, a configuration of the picker bases 5A and 5B will be described with reference to
The picker bases 5A and 5B have the same configuration. Thus, here, the configuration of the picker base 5A will be described as an example. As illustrated in
The tray 51 is constituted with a substantially quadrangular plate. A plane of the tray 51 is substantially orthogonal to the Z-axis direction. The tray 51 has two sides substantially parallel to the X-axis direction and two sides substantially parallel to the Y-axis direction. The wall plate 52 protrudes substantially perpendicularly from a side far from the storage 3A (see
The wall plates 52 to 54 prevent the supplied component from falling from the tray 51. The side of the tray 51 on which the wall plate is not provided overlaps an opening of the storage 3A in the Z-axis direction. As a result, the component dropped from the side of the tray 51 on which the wall plate is not provided returns to the storage 3A. A tilting mechanism for tilting the picker base 5A is provided below the picker base 5A. The tilting mechanism tilts the picker base 5A such that the wall plate 52 side becomes higher. As a result, the component placed on the picker base 5A drops from the side of the tray 51 on which the wall plate is not provided and is collected in the storage 3A.
[Configuration of Control System]
Next, a configuration of a control system of the component supply device 1 will be described with reference to
The control board 7 (see
As illustrated in
The overall controller 711 is connected to the arm controller 712, the hand controller 713, and the recognition controller 714. The overall controller 711 receives, from the recognition controller 714, detection results such as positions of the storages 3A and 3B, the hand 422, and the like, the sizes of the picker bases 5A and the number of components grasped by the hand 422.
The overall controller 711 performs overall control of the arm controller 712 and the hand controller 713 on the basis of the detection results received from the recognition controller 714 and a supply parameter 723 and characteristic information 724 stored in the storage 72.
The arm controller 712 is connected to a driver of the arm 412. The arm controller 712 receives a control command from the overall controller 711. The arm controller 712 generates an arm drive signal for driving the arm 412 on the basis of the control command received from the overall controller 711 and transmits the arm drive signal to the driver of the arm 412. As a result, the arm 412 executes operation according to the control command of the overall controller 711.
The hand controller 713 is connected to a driver of the hand 422. The hand controller 713 receives a control command from the overall controller 711. The hand controller 713 generates a hand drive signal for driving the hand 422 on the basis of the control command received from the overall controller 711 and transmits the hand drive signal to the driver of the hand 422. As a result, the hand 422 executes operation according to the control command of the overall controller 711.
The recognition controller 714 is connected to the camera 423. The recognition controller 714 controls imaging by the camera 423 on the basis of an imaging parameter 721 stored in the storage 72. Furthermore, the recognition controller 714 performs image processing on the image data received from the camera 423 on the basis of image processing parameters (various correction values) stored in the storage 72.
The recognition controller 714 detects positions of the storages 3A and 3B, the picker bases 5A and 5B, and the place tables 6A and 6B from the image data subjected to the image processing. The recognition controller 714 detects a posture of the hand 422 and the number of components grasped by the hand 422 from the image data subjected to the image processing. In addition, the recognition controller 714 detects sizes (areas) of the picker bases 5A and 5B, shapes (presence or absence of wall plates) of the picker bases 5A and 5B, outer shapes (contours) of components placed on the picker bases 5A and 5B, and the like, from the image data subjected to the image processing. Then, the recognition controller 714 transmits the detection results to the overall controller 711.
The storage 72 stores the imaging parameter 721, an image processing parameter 722, the supply parameter 723, the characteristic information 724, and calibration data 725. The imaging parameter 721 is used when an image of each part (such as the picker bases 5A, 5B) is captured by the camera 423. Examples of the imaging parameter include an exposure period, a light amount of illumination, an image size, and the like, according to an imaging target. The image processing parameter 722 is various correction values to be used when image processing is performed on the image data received from the camera 423.
The supply parameter 723 is used to determine operation of the supplier 4 when a component is supplied to the picker base 5A or the picker base 5B. The supply parameter 723 is stored in the storage 72 in advance. The supply parameter 723 is prepared according to the characteristic information to be described later. The content of the supply parameter 723 will be described later with reference to
The characteristic information 724 is information of at least one of a shape of the component, a weight of the component, a gravity center position of the component, a material of the component, surface property of the component, a surface friction coefficient of the component, or color of the component. The characteristic information 724 is stored in the storage 72 in advance for each type of component. Note that the controller 71 may extract the characteristic information 724 from 3D model data of the component. In this case, the 3D model data of the component is stored in advance in the storage 72.
The calibration data 725 includes an internal parameter 727 that is a focal length and a distortion correction parameter of a camera body 427, and an external parameter 728 for conversion from a coordinate system with the camera body 427 as an origin to a coordinate system that can be handled by the supplier 4.
Next, a configuration of the recognition controller 714 will be described with reference to
As illustrated in
The position calculator 802 calculates the position of the component specified by the unpickable component specifier 801. Then, the position calculator 802 transmits information on the calculated position of the unpickable component to the position adjuster 803. The position adjuster 803 calculates a movement amount (adjustment amount) for bringing the component into a pickable position and posture on the basis of the position information of the unpickable component calculated by the position calculator 802. Then, the position adjuster 803 transmits the calculated movement amount to the overall controller 711. The overall controller 711 outputs a control command to the arm controller 712 and the hand controller 713 on the basis of the movement information for rearrangement received from the position adjuster 803 and controls the operation of the supplier 4.
Although the example in which the unpickable component specifier 801, the position calculator 802, and the position adjuster 803 are provided in the recognition controller 714 has been described, the present invention is not limited thereto. For example, the unpickable component specifier 801, the position calculator 802, and the position adjuster 803 may be provided in the overall controller 711 or may be individually provided in the controller 71.
[Component Supply Operation of Component Supply Device]
Next, component supply operation of the component supply device 1 will be described with reference to
As illustrated in
Next, the supplier 4 grasps one or a plurality of components from a large number of components in the storage 3 and supplies the components to the picker bases 5A or 5B (hereinafter, a “picker base 5”). In this event, the supplier 4 performs supply operation such that the grasped components are separated on the picker base 5. Hereinafter, the supply operation in which the components are separated on the picker base 5 will be referred to as “component separation operation”.
Next, the camera 423 captures an image of the picker base 5, and the recognition controller 714 of the controller 71 recognizes the picker base 5 from above. In this event, the recognition controller 714 determines whether or not there is a component that can be grasped on the picker base 5.
In a case where a component is placed on the picker base 5 but the component is at a position or in a posture that cannot be grasped by the supplier 4, the component (unpickable component) is specified. Then, the position of the unpickable component is calculated, and an amount of movement to a position where the unpickable component can be grasped by the supplier 4 is calculated. The unpickable component is rearranged by the supplier 4 or another device on the basis of the calculated movement amount.
In addition, in a case where the unpickable component cannot be rearranged, the tilting mechanism is driven to tilt the picker base 5. As a result, the component placed on the picker base 5 drops from the side of the tray 51 on which the wall plate is not provided and is collected in the storage 3.
In a case where it is determined that there is a component that can be grasped on the picker base 5, the recognition controller 714 recognizes (determines) a grasping position for grasping one of the components on the picker base 5. Then, the supplier 4 grasps one component and supplies the component to the place tables 6A and 6B (hereinafter, referred to as a “place table 6”). The place table 6 positions the supplied component at a predetermined position. The component positioned at the predetermined position is supplied to the device in the next step.
If the supplier 4 supplies one component to the place table 6, the recognition controller 714 recognizes (determines) a grasping position for grasping the next one of the components on the picker base 5. In this event, if there is no component on the picker base 5, the operation of supplying components to the place table 6 is terminated. Then, the supplier 4 grasps one or more components from a large number of components in the storage 3.
[Example of Pickup Operation of Supplier]
Next, pickup operation example in the supplier 4 will be described with reference to
As illustrated in
Next, the supplier 4 grasps the components from the storage 3 and supplies the components to the tray 51 of the picker base 5 (step S12). Then, an image of the tray 51 is captured by the camera 423 of the supplier 4, and the controller 71 determines a state of the components loaded on the tray 51 (step S13). In step S13, the controller 71 sets the determination result to a component state C. Examples of the component state C include “isolation” in which each of the components is isolated as one component, “standing/protruding” in which each of the components is isolated as one component but a posture is incorrect (standing) or protrudes from the tray 51, and “contact” in which the components are in contact with each other. Note that the processing of determining the component state according to step S13 will be described in detail later.
Next, the controller 71 determines whether a component state C(i) of an i-th component region is “isolation”, “contact”, or “standing/protruding” on the basis of the component state determined in step S13 (step S14). In a case where it is determined that the component state is “isolation” in the processing of step S14, the controller 71 performs interference determination (step S15). In step S15, the controller 71 sets the determination result to whether or not there is interference O. The interference determination processing in step S15 will be described in detail later.
Next, the controller 71 determines whether, whether or not there is interference O determined in step S15 indicates “there is interference” or “there is no interference” (step S16). In a case where it is determined that “there is no interference” in the processing of step S16, the controller 71 controls the supplier 4 and picks the component (step S26).
Furthermore, in a case where it is determined that “there is interference” in the processing of step S16, the controller 71 determines whether or not rearrangement (position) is possible (step S17). Furthermore, in step S17, the controller 71 sets the determination result to whether or not rearrangement is possible R_s. Here, whether or not rearrangement is possible R_s is “rearrangement is possible” or “rearrangement is impossible”. Note that the processing of determining whether or not rearrangement (position) is possible in step S17 will be described in detail later.
Next, the controller determines whether, whether or not rearrangement is possible R_s set in step S17 is “rearrangement is possible” or “rearrangement is impossible” (step S18). In a case where it is determined in the processing in step S18 that “rearrangement is possible”, the controller 71 controls the supplier 4 to rearrange (position change) the component (step S19) and picks the rearranged component (step S26). Note that a movement amount of the component to the rearrangement position in the processing in step S19 is calculated in the processing of determining whether or not rearrangement (position) is possible in the processing in step S17.
In a case where the processing in step S26 ends, the controller 71 determines whether or not the picker base 5 is empty (step S27). In the processing in step S27, in a case where it is determined that there is still a component on the picker base 5 (No in step S27), the processing of the controller 71 returns to the processing in step S14. In a case where it is determined in the processing in step S27 that there is no component on the picker base 5 (Yes in step S27), the processing of the controller 71 returns to the processing in step S12, and the controller 71 causes components to be supplied from the storage 3 to the picker base 5.
In addition, in a case where it is determined that “rearrangement is impossible” in the processing in step S18, the controller 71 suspends pickup operation of the component (step S28). If the processing in step S28 ends, the controller determines whether or not the pickup operation of all the components on the picker base 5 is suspended (step S29). In the processing in step S29, in a case where it is determined that the pickup operation of all the components is not suspended (No in step S29), the processing of the controller 71 returns to the processing in step S14.
On the other hand, in a case where it is determined in the processing in step S29 that the pickup operation of all the components is suspended (Yes in step S29), the controller 71 drives the tilting mechanism to tilt the picker base 5 and discard the components on the picker base 5 (step S30). In other words, in the processing in step S30, the components placed on the picker base 5 are collected in the storage 3. Then, the processing returns to step S12, and the components are resupplied from the storage 3 to the picker base 5.
Furthermore, in a case where it is determined in the processing in step S14 that the component state is “standing/protruding”, the controller 71 determines whether or not rearrangement (posture (standing)/position (protruding)) is possible (step S21). Furthermore, in step S21, the controller 71 sets the determination result to whether or not rearrangement is possible R_t. Note that the processing of determining whether or not rearrangement (posture/position) is possible in step S21 will be described in detail later.
Next, the controller determines whether, whether or not rearrangement is possible R_t set in step S21 is “rearrangement is possible” or “rearrangement is impossible” (step S22). In a case where it is determined in the processing in step S22 that “rearrangement is possible”, the controller 71 controls the supplier 4 to rearrange (change the posture or the position) the component (step S23) and picks the rearranged component (step S26).
In the processing in step S23, for example, in a case where the component is standing, an upper part of the component is pushed and rolled with the fingertips of the grasping pieces 422a or part of the component is grasped and rolled into a pickable posture. In a case where the component protrudes from the tray 51, the component is pushed out into the tray 51 with the fingertips of the grasping pieces 422a. Note that an amount of operation of the component in the processing in step S23 is calculated in the processing of determining whether or not rearrangement (posture/position) is possible in the processing in step S21.
In addition, in a case where it is determined that “rearrangement is impossible” in the processing in step S22, the controller 71 suspends the pickup operation of the component (step S28).
Furthermore, in a case where the component state is determined to be “contact” in the processing in step S14, the controller 71 performs region division processing (step S24). Furthermore, in step S24, the controller 71 sets D as success or failure (success or failure) of the region division processing. Note that the region division processing in step S24 will be described in detail later.
Next, it is determined whether the success or failure D of the region division processing performed in step S24 is “division success” or “division failure” (step S25). In a case where it is determined to be “division failure” in the processing in step S25, the controller 71 suspends the pickup operation of the component in the component region (step S28).
In addition, in a case where it is determined to be “division success” in the processing in step S25, the processing of the controller 71 returns to the processing of step S14. In the following processing, the processing is performed for each divided component region in the component region.
[Preliminary Preparation Processing]
Next, the preliminary preparation processing in step S10 will be described in detail with reference to
As illustrated in
Next, a component shape F(t) for each component posture t is stored in the storage 72 (step S43). Note that the information in steps S41 to S43 is created, for example, on the basis of image data obtained by capturing an image of the component with the camera 423.
Next, the hand fingertip width W_h and the finger opening width W_f (see
[Component State Determination Processing]
Next, the component state determination processing in step S13 will be described in detail with reference to
As illustrated in
Next, the controller 71 labels the component image I_f to obtain a component region A(i) (where i=1, . . . , N) (step S53). As a result, as illustrated in
Next, the controller 71 compares the calculated area S(i) with a threshold (T_min(t)·T_max(t)) and sets a component state C(i) (step S55). Examples of the component state C(i) include “isolation”, “contact”, and “standing/protruding”. Then, the controller 71 performs the processing in steps S54 and S55 on all the component regions A.
In the example illustrated in
Further, the third component region c is smaller than the minimum area threshold in the unpickable posture set in advance. Thus, the component state C of the third component region c is set to “protruding”. The fourth component region d falls within a range between the minimum area threshold and the maximum area threshold in the unpickable posture. Thus, the component state of the fourth component region d is set to an unpickable posture, for example, “standing”
[Interference Determination Processing]
Next, the interference determination processing in step S15 will be described in detail with reference to
As illustrated in
Next, the controller 71 sets, as a hand approach region H(i), a rectangle having a vertical width W_h and a horizontal width W_f at a position tilted by an angle θ while the component center (X_c, Y_c) is set as the center of gravity for each component region A(i) (see step S62,
For example, as illustrated in
In the processing in step S63, in a case where it is determined that there is no other component or wall (No in step S63), the controller 71 sets whether or not there is interference O to “there is no interference” (step S64). In a case where it is determined in the processing in step S63 that there is another component or a wall (Yes in step S63), the controller 71 sets whether or not there is interference O to “there is interference” (step S65). Then, the controller 71 repeats the interference determination processing described above for all the component regions A determined to be “isolation”.
Although the example in which the ellipse fitting processing is performed on the component region A in order to set the hand approach region H for the component has been described, the present invention is not limited thereto. For example, in the preliminary preparation processing, coordinate information indicating a gravity center position of the hand approach region H with respect to the component may be stored in advance.
[Processing of Determining Whether or not Rearrangement (Position) is Possible]
Next, the processing of determining whether or not rearrangement (position) is possible in step S17 will be described with reference to
As illustrated in
Next, a post-rearrangement hand approach region H′(i) and a post-rearrangement component region A′(i) are set from the rearrangement position (X_r, Y_r), the hand fingertip width W_h, the finger opening width W_f, and the angle θ (step S72). Then, the controller 71 determines whether or not there is an obstacle such as another component (a component M3 in
In the processing in step S73, in a case where it is determined that there is no other component or wall (No in step S73), the controller 71 sets whether or not rearrangement is possible R_s to “rearrangement is possible” (step S74). In a case where it is determined in the processing in step S73 that there is another component or a wall (Yes in step S73), the controller 71 sets whether or not rearrangement is possible R_s to “rearrangement is impossible” (step S75). Then, the controller 71 repeats the above-described processing of determining whether or not rearrangement (position) is possible for all the component regions A for which it is determined that there is interference.
For example, as illustrated in
[Processing of Determining Whether or not Rearrangement (Posture/Position) is Possible]
Next, the processing of determining whether or not rearrangement (posture/position) is possible in step S21 will be described with reference to
As illustrated in
Next, the post-rearrangement component region A′(i) is set from the operation direction θ_p, the operation amount M_p, and a component shape F(t_p) after the posture change (step S83). In addition, a hand approach height Z(T(i)) with respect to the posture of the component is set (step S84). Here, the hand approach height Z is a height of the grasping piece 422a from the tray 51 when the posture of the component is changed.
Next, the controller 71 performs ellipse fitting on the post-rearrangement component region A′(i) to calculate the component center (X_r, Y_r) and the component angle θ_r (step S85). Then, a rectangle having a vertical width W_h and a horizontal width W_f is set to the post-rearrangement hand approach region H′(i) at a position tilted by the angle θ_r while the component center (X_r, Y_r) is set as the center of gravity (step S86). Then, the controller 71 determines whether or not there is another component or an obstacle such as a wall in the set hand approach region H′(i) or the post-rearrangement component region A′ (step S87).
In the processing in step S87, in a case where it is determined that there is no other component or wall (No in step S87), the controller 71 sets whether or not rearrangement is possible R_t to “rearrangement is possible” (step S88). In a case where it is determined in the processing in step S87 that there is another component or a wall (Yes in step S87), the controller 71 sets whether or not rearrangement is possible R_t to “rearrangement is impossible” (step S89). Then, the controller 71 repeats the above-described processing of determining whether or not rearrangement (posture/position) is possible for all the component regions A for which it is determined that the component state C is “standing/protruding”.
[Region Division Processing]
Next, the region division processing in step S24 will be described in detail with reference to
As illustrated in
In the processing in step S102, in a case where it is determined that the area of the region has become 0 (Yes in step S102), the controller 71 sets a division success/failure D to “division failure” (step S107). In a case where it is determined in the processing in step S102 that the area of the region has not become 0 (No in step S102), the processing proceeds to step S103 described later.
In the processing in step S103, the controller 71 determines whether or not the number of regions in the component image I_f has increased. In the processing in step S103, in a case where it is determined that the number of regions has not increased (No in step S103), the processing of the controller 71 returns to the processing of step S101, and the controller 71 executes the contraction processing. On the other hand, in a case where it is determined that the number of regions has increased in the processing in step S103 (Yes in step S103), the controller 71 executes expansion processing for each region and XOR processing of each region n times (the number of times that the contraction processing is executed) (step S104).
As illustrated in
Next, the controller 71 sets the component state after the region division as a new component region A(i) (step S105). In other words, the first region n1 and the second region n2 are set as different component regions A. Then, the controller 71 sets the division success/failure D to “division success” (step S106). In addition, the controller 71 repeats the region division processing described above for all the component regions A for which it is determined that the component state C is “contact”.
Note that the region division processing is not limited to the above-described method, and various other methods are applied.
According to the component supply device and the component supply method of the present invention, the unpickable component specifier 801 specifies an unpickable component among the plurality of components on the tray 51. This makes it possible to adjust only the position and the posture of an unpickable component. As a result, the position and the posture of the unpickable component can be adjusted in a state where pickable components are loaded on the tray 51.
Further, a state of the specified unpickable component is calculated, and a pickable state is calculated. This makes it possible to reduce the number of times of adjustment operation for bringing an unpickable component into a pickable state, so that it is possible to improve efficiency of the pickup operation.
Furthermore, the state of the component is sorted into various types such as “isolation”, “contact”, “standing/protruding”, and “there is interference or no interference” according to the posture and position. This makes it possible to appropriately calculate the movement amount and the operation amount for rearranging an unpickable component according to the type of the state of the component. This eliminates the necessity of the operation of adjusting the rearranged component again, so that it is possible to further improve the efficiency of the pickup operation.
The embodiment has been described above with the functions and effects thereof. However, the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the invention described in the claims.
In addition, some or all of the above-described components, functions, processors, and the like, may be implemented by hardware, for example, by designing an integrated circuit, or the like. In addition, each component, function, and the like, described above may be implemented by software by a processor interpreting and executing a program for implementing each function. Information such as a program, a table, and a file for implementing each function can be stored in a recording device such as a memory, a hard disk, and a solid state drive (SSD), or a recording medium such as an IC card, an SD card, and a DVD.
In the present specification, words such as “parallel” and “orthogonal” are used, but these do not strictly mean only “parallel” and “orthogonal” and may indicate a state of “substantially parallel” or “substantially orthogonal” including “parallel” and “orthogonal” and in a range in which the function can be exhibited.
Although embodiments of the present invention have been described and illustrated in detail, the disclosed embodiments are made for purposes of illustration and example only and not limitation. The scope of the present invention should be interpreted by terms of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
2022-087410 | May 2022 | JP | national |