SYSTEM AND METHOD FOR DETERMINING A DISCRETE NUMBER OF SELECTED WORKPIECES
20230001583 · 2023-01-05
Inventors
- Gopi V. Avvari (Dublin, CA, US)
- Hossein Mousavi Hondori (Mountain View, CA, US)
- Weixin Yang (San Francisco, CA, US)
Cpc classification
B25J9/1694
PERFORMING OPERATIONS; TRANSPORTING
International classification
Abstract
A system for determining a discrete number of flexible, non-rigid workpiece items loaded onto a robotic carrier. The system includes a robotic carrier capable of traveling to multiple workstations, at least one of which is a weigh station. A loading mechanism is functional to load one or more workpieces onto the robotic carrier which weighed by the weigh station. By comparing the weight of the loaded items with a predetermined weight range of a single workpiece, the number of discrete workpieces loaded onto the robotic carrier can be determined. In addition, a method can be provided for determine position error of a mobile robot based on a detected center of gravity of the mobile robot.
Claims
1. A method for determining a discrete number of non-rigid workpiece items, the method comprising: loading one or more workpiece items onto a self-propelling robotic carrier; moving the self-propelling robotic carrier onto a weigh station; determining a weight of the one or more workpiece items, wherein the weight of the one or more workpiece items is calculated by subtracting a tare weight of the self-propelling robotic carrier from a total weight of the self-propelling robotic carrier plus the weight of the one or more workpiece items; comparing the weight of the one or more workpiece items with a weight range of a single workpiece item to determine a number of workpiece items loaded onto the self-propelling robotic carrier.
2. The method as in claim 1, wherein the workpiece items are loaded onto the self-propelling robotic carrier after the robotic carrier has been moved onto the weigh station.
3. The method as in claim 1, wherein the workpiece items are loaded onto the self-propelling robotic carrier before the self-propelling robotic carrier has been moved onto the weigh station.
4. (canceled)
5. The method as in claim 1, wherein determining the weight of the workpiece items includes first moving the self-propelling robotic carrier onto the weigh station, setting the weigh station to zero weight and then loading the one or more workpiece items onto the self-propelling robotic carrier.
6. The method as in claim 1, further comprising, sending information regarding the number of loaded workpiece items to a central control unit.
7. The method as in claim 6, wherein the information regarding the number of loaded workpiece items is sent to the central control unit wirelessly.
8. The method as in claim 6, wherein the central control unit controls manufacturing operations at multiple work stations, and wherein the self-propelling robotic carrier moves across the multiple workstations.
9. The method as in claim 6, wherein the central control unit instructs the self-propelling robotic carrier as to which workstation to travel to as its next destination.
10. A method for correcting for error in movement of a self-propelling robotic carrier, the method including: moving a self-propelling robotic carrier onto a weigh station, the weigh station being functional to detect a center of gravity of the self-propelling robotic carrier on the weigh station; comparing the detected center of gravity of the self-propelling robotic carrier with a predetermined intended center of gravity to determine a variation in the location of the self-propelling robotic carrier; providing instructions to the self-propelling robotic carrier to correct its path of travel if the detected center of gravity is different from the predetermined center of gravity.
11. The method as in claim 10, wherein the instructions to correct the path of travel include one or more of speed of the self-propelling robotic carrier and a direction of travel of the self-propelling robotic carrier.
12. The method as in claim 10 further comprising: determining a type of malfunction of the self-propelling robotic carrier if the center of gravity is different from the predetermined center of gravity.
13. The method as in claim 10, reporting a malfunction of the self-propelling robotic carrier if a difference between the center of gravity of the self-propelling robotic carrier and the predetermined center of gravity exceeds a predetermined threshold.
14. A system for manufacturing articles, the system comprising: at least one weight sensor functional to generate a signal indicative of a weight of one or more items of manufacture; an amplifier configured to receive the signal from the weight sensor, the amplifier being configured to generate an amplified analog signal; an analog to digital converter configured to convert the amplified analog signal to a digital signal; a microcontroller configured to receive the digital signal and to determine a discrete number of items of manufacture based on the digital signal; and a control unit configured to determine an error in a movement of a self-propelling robotic carrier by comparing the calculated center of gravity of the self-propelling robotic carrier with a predetermined intended center of gravity to determine a variation in the location of the self-propelling robotic carrier, the control unit further configured to provide instructions to correct a path of travel of the self-propelling robotic carrier based on the determination of the error.
15. The system as in claim 1, wherein the control unit instructs the next destination of the self-propelled robotic carrier, the self-propelled robotic carrier being configured to transport the one or more items of manufacture.
16. The system as in claim 14, wherein the microcontroller is configured to send information regarding the discrete number of items of manufacture wirelessly to the control unit.
17. The system as in claim 14, wherein the microcontroller is configured to send information regarding the discrete number of items of manufacture and/or an error in the movement of the self-propelling robotic carrier to a transmitter and wherein the transmitter is configured to transmit information regarding the discrete number of items of manufacture and/or an error in the movement of the self-propelling robotic carrier to the control unit.
18. The system as in claim 14, wherein the microcontroller is directly coupled to the control unit.
19. The system as in claim 14, wherein the microcontroller is configured to determine a type of malfunction of the self-propelling robotic carrier if the calculated center of gravity is different from the predetermined center of gravity.
20. The system as in claim 19, wherein the control unit can be functional to correct a path of travel of the self-propelling robotic carrier based on the location of the self-propelling robotic carrier as determined by the microcontroller.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0020] For a fuller understanding of the nature and advantages of the embodiments, as well as the preferred mode of use, reference should be made to the following detailed description read in conjunction with the accompanying drawings. The drawings are not presented to scale unless specified otherwise on an individual basis.
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
DETAILED DESCRIPTION
[0031] The following description includes the best embodiments presently contemplated for carrying out the embodiments. This description is made for the purpose of illustrating the general principles and is not meant to limit the inventive concepts claimed herein in any way.
[0032] Referring to
[0033] The robotic carrier 106 moves from one station to the next carrying one or more workpieces either on top of the robotic carrier 106 or in some other manner. In one embodiment, the robotic carrier can be configured to track a visible line 110 painted or otherwise formed on a workshop floor to thereby follow a desired predetermined path along the workshop floor. Progress along the line 110 can be monitored by checkpoint locations 112. These checkpoint locations can be, for example, QR codes which can be read by the robotic carrier 106. The robotic carrier can have a camera 114 mounted one or within it near its bottom surface. The camera 114 can allow the robotic carrier 106 to both follow the visible line 110 and read the various checkpoints 112 (such as QR codes) to facilitate its movement long the desired path and to stop at various workstations 102 as desired. The camera 114 may be connected with, coupled to or in communication with various circuitry (not shown) configured to facilitate following the visual line 110 and to read the various QR codes 112 and also, optionally, to communicate this information wirelessly with the central controller 108.
[0034]
[0035] A loading mechanism 206 is configured to select a desired number of workpiece items 204a from the workpiece loading station 202 and load them onto the robotic carrier 106. The loading mechanism 206 can be, for example, an automated arm capable of grasping a single workpiece item, or another desired quantity of workpiece items 204a. However, this is by way of example as the loading mechanism could be some other type of device.
[0036] With most automated manufacturing systems wherein items manufactured include solid, rigid workpieces, the selection of a single workpiece or a select number of workpieces is a relatively straightforward process and can be accurately carried out at the point of selection of the workpiece (i.e. at the loading station 202). However, the manufacture of flexible, amorphous items such as garments or textile products presents unique challenges. While the loading mechanism can be configured as best as possible to select only a single workpiece item or a predetermined number of workpiece items 204a, there is a chance that the loading mechanism can inadvertently pick up unwanted additional workpiece items 204 or less than the desired number of items 204. In addition, items such as garments can have a large variance in weight for a single garment item. Whereas items such as bolts, nuts or mechanical parts can have nearly identical and predictable weights from one single item to another, garments can be constructed of various pieces such as fabric pieces, accessories, zippers, buttons each of which can have a weight variation. This makes the determination of a discrete number of garment items based on weight more challenging. This can be overcome by determining an acceptable weight range for a single item. In some embodiments this weight range for garment items can be wider than would be necessary with other types of items.
[0037] In order to accurately ensure that the correct number of workpiece items 204a have been loaded onto the robotic carrier 106, the system 200 incorporates a highly accurate weigh station 208. This weigh station 208 can be included as one of the workstations 102 described above with reference to
[0038] The weigh station 208 can also include circuitry 214 that can be connected with the scale. The circuitry 214 can be functional to determine the weight of the workpiece item or items 204a located on the robotic carrier 206. This information about the weight of the item or items on the robotic carrier 106 can be used to calculate the number of such items located on the robotic carrier 106. Optionally, the circuitry 214 can be configured to transmit this information to the control center 108, either wired or wirelessly. In addition, information about the weight and quantity of items 204a on the carrier 106 can be sent to a user interface 216, such as a computer monitor, a printer or a personal electronic device such as a cell phone, a personal computer, a laptop, a notebook, etc.
[0039]
[0040] The scale 210 can be formed on the workshop floor, and is preferably located within a recess 308 formed in the workshop floor 306 such that the upper surface of the scale base 210 can be generally flush with the surface of the workshop floor 306. This can more easily facilitate the travel of the robotic carrier 106 (
[0041] In order to determine the weight of the individual work piece item or items 204a, the weight of the unloaded robotic carrier 106 can first be determined (e.g. weighed). This can then be compared with the weight of the loaded robotic carrier 106 to determine the weight of the loaded workpiece items 204a. Alternatively, the circuitry 214 can be configured to zero out the weight measurement after the robotic carrier has moved onto the scale 210 and before loading the workpiece item 204a has been loaded onto the scale 210. Then, when the workpiece item 204a has been loaded, the weight of only the workpiece will be measured. In yet another embodiment, the weight of robotic carrier 106 can be previously known and recorded, and this weight can be subtracted from the total weight by the circuitry 214 to arrive at the weight of the workpiece (or workpieces) 204a alone.
[0042] In addition to determining the weight of the loaded workpiece or workpieces 204a, the circuitry 214 is also functional to use this weight calculation to determine the exact number of workpiece items 204a loaded on the robotic carrier 106. Of course, this would also include a determination that no workplace items have been placed on the robotic carrier, in the situation where the loader 206 (
[0043] As previously discussed, a garment workpiece could be made of different materials. In some embodiments, two different workpieces would not be alike and would have significantly different weight, since they can be made of different materials. Because of this, the standard deviation of the weight of a garment workpiece would be large compared with other types of items such as nuts, bolts and other mechanical pieces which would have a much more consistent weight between items.
[0044] The determination of the number of garments can be performed with an assumption that each garment has a normal weight distribution, resulting in a gaussian mixture problem when multiple garments are picked up. By calculating the threshold to this gaussian mixture problem, the number of loaded garments can be determined. This can be more clearly understood with reference to
[0045] Once the number of workpiece items 204a has been determined, this information can be delivered to the central controller 108 as discussed above with reference to
[0046]
[0047] When a load is applied to the impact cap 416, this causes the pressure plates 406 to press together placing a mechanical strain on the piezoelectric element 410. This causes an electrical potential within the piezoelectric element 410 which is collected by the collection plate 414. The collection plate 414 can deliver this electrical potential to an amplifier 418. Because the electrical potential developed within the piezoelectric element is proportional to the amount of load applied by the impact cap, the voltage potential provided by the amplifier can accurately reflect the amount of load experienced by the piezoelectric element 402.
[0048]
[0049] In use, the fixed end 424 can be connected with a fixed surface such as the workshop floor 306 described above with reference to
[0050]
[0051] The output from the weight sensor 504 can be fed to an amplifier circuit 506. The amplifier 506 provides an amplified signal to a microcontroller unit 508, which can interpret the amplified signal to provide determine an actual weight and calculate an incremental number of workpiece items 204a loaded on the robotic carrier 106 (
[0052]
[0053] The microcontroller unit 608 can be programmed to calculate a discrete number of weighed items. This calculation can include an expected weight range of an individual item. The expected weight range of such a weighed item can be stored in computer storage and retrieved for calculation of a discrete number of weighed items. Once the discrete number of weighed items has been calculated, this value can be delivered to a user interface 610. This value can also be delivered to a transmitter 612, where it can be delivered wirelessly to a central control unit 614 and/or to a robotic carrier 616. In lieu of the transmitter, the discrete item calculation can be delivered directly to the central controller 614 in a wired manner.
[0054] In addition to determining a discrete number of selected or loaded items as described above, the discussed weighing system can be used to determine an amount of deviation or variation from an intended path of the robotic carrier 106 due to a variety of reasons, including malfunction of one or more robot components, imbalance between robot components, uneven workspace floor, etc. The ability to determine and ultimately correct deviations in the performance of a robot introduces fault tolerance in the design of the robots which in turn enables a much simpler and less costly robots design. As discussed above, for example with reference to
[0055]
[0056] In
[0057] As shown in
[0058] While various embodiments have been described above, it should be understood that they have been presented by way of example only and not limitation. Other embodiments falling within the scope may also become apparent to those skilled in the art. Thus, the breadth and scope should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.