Systems and methods for an improved autonomous floor assembly technology
Automated assembly systems with robotic tools and cloud-based control address labor shortages and inefficient manual processes, enhancing construction efficiency and quality in housing and infrastructure projects.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- PROMISE ROBOTICS INC
- Filing Date
- 2025-12-18
- Publication Date
- 2026-06-25
Smart Images

Figure CA2025051718_25062026_PF_FP_ABST
Abstract
Description
TITLE: SYSTEMS AND METHODS FOR AN IMPROVED AUTONOMOUS FLOOR ASSEMBLY TECHNOLOGYFIELD
[0001] The present disclosure generally relates to assembly and manufacturing of building structures, including building structures used in the assembly of housing units as well as other infrastructure, and in particular, to methods, systems and devices for automated assembly of building structures.INTRODUCTION
[0002] The following is not an admission that anything discussed below is part of the prior art or part of the common general knowledge of a person skilled in the art.
[0003] In recent years, many urban centers have experienced an increasing shortage of housing (e.g., single-family homes and condominium units) caused, in-part, by a low supply of new housing construction that has lagged behind growing consumer demand. The low supply of new housing construction is driven by a combination of factors, including antiquated and manual construction processes that result in elongated construction timelines, as well as an increasing absence of a skilled labor workforce (e.g., skilled construction workers).SUMMARY
[0004] The following introduction is provided to introduce the reader to the more detailed discussion to follow. The introduction is not intended to limit or define any claimed or as yet unclaimed invention. One or more inventions may reside in any combination or subcombination of the elements or process steps disclosed in any part of this document including its claims and figures.
[0005] In a broad aspect, in accordance with some embodiments, there is generally provided an automation table for aligning a workpiece for an assembly operation. The automation table comprises a table surface. The table surface comprises a plurality of apertures interspersed along the surface. The automation table further comprises a roller assembly. The roller assembly comprises a plurality of rolling elements for moving the workpiece with respect to the table surface. The plurality of rolling elements is movable between a first position and a second position, wherein, in a first position, the plurality ofrolling elements are recessed within the bottom portion of the automation table; and in a second position, at least a portion of the plurality of rolling elements is disposed within the top portion. The rolling assembly further comprises a plurality of actuators, each actuator being coupled to one or more rolling elements of the plurality of rolling elements, configured to actuate the plurality of rolling elements between the first position and the second position through the plurality of apertures.
[0006] In some embodiments, the plurality of apertures may be located at predefined positions, wherein each aperture of the plurality of apertures aligns with a corresponding roller in the plurality of rolling elements.
[0007] In some embodiments, the automation table may further comprise a controller, configured to send an actuation signal to the plurality of actuators based on an input signal, and wherein the plurality of actuators is configured to actuate the plurality of rolling elements based on the actuation signal.
[0008] In some embodiments, a first portion of the plurality of rolling elements may move to a first height in the second position and a second portion of the plurality of rolling elements moves to a second height in the second position.
[0009] In some embodiments, at least one actuator in the plurality of actuators may be coupled to two or more rolling elements of the plurality of rolling elements.
[0010] In some embodiments, the plurality of rolling elements may be configured to rotate about a single axis.
[0011] In some embodiments, a first rolling portion of the plurality of rolling elements may be configured to rotate about a first axis, and a second rolling portion of the plurality of rolling elements are configured to rotate about a second axis.
[0012] In some embodiments, the plurality of rolling elements are configured to be controlled individually.
[0013] In some embodiments, at least one of the plurality of rolling elements are configured to conform to the first position upon detection of a potentially damaging load on the automation table.
[0014] In some embodiments, at least one of the plurality of rolling elements are configured to rotate based on a position of a load on the automation table.
[0015] In some embodiments, the automation table may further comprise a plurality of positioning holes positioned along one or more perimeters of the table surface.
[0016] In some embodiments, the automation table may further comprise a plurality of removable alignment pins for aligning the manufacturing assembly with a perimeter edge of the table surface, configured to be securely inserted into the plurality of positioning holes.
[0017] In some embodiments, the automation table may further comprise a plurality of movable alignment pins for aligning the manufacturing assembly with a perimeter edge of the table surface, configured to move between an extended position, wherein the movable alignment pins are fully disposed beneath the table surface, and a recessed position wherein at least a portion of the movable alignment pins are disposed above the table surface.
[0018] In some embodiments, the table surface may comprise one or more reference grids positioned on the table surface.
[0019] In another broad aspect, in accordance with some embodiments, there is generally provided a material alignment and nailing assembly for fastening a second workpiece to a first workpiece. The material alignment and nailing assembly is a robotic end- of-arm tool. The first workpiece is misaligned relative to an alignment axis. The material alignment and nailing assembly comprises a frame. The frame comprises a robotic interface rigidly connected to the frame, a nailing subassembly connected to the frame arranged at a first end along an alignment axis, and a gripper subassembly connected to the frame arranged at a second end along the alignment axis. The gripper subassembly comprises a first paddle and a second paddle movable along a closing axis, wherein the closing axis is perpendicular to the alignment axis, and at least one paddle actuator, configured to move the first and second paddles opposably towards one another at an equal rate such that a distance between the first paddle and the alignment axis is constantly equal to a distance between the second paddle and the alignment axis. The gripper subassembly is operable to grasp a first workpiece by securely enclosing the first workpiece between the first and second paddles, and the nailing subassembly is operable to fix a second workpiece to the first workpiece at apoint on the alignment axis upon the gripper bringing the first workpiece into alignment with the alignment axis.
[0020] In some embodiments, the robotic interface component may be configured to connect the material alignment and nailing assembly with a robot arm, and facilitate power and data exchange between the material alignment and nailing assembly and the robot arm.
[0021] In some embodiments, the robotic interface component may further comprise a nailing subassembly actuator operable to move the nailing subassembly such that a lowest point of the gripping subassembly is lower relative to a nailing end of the nailing mechanism when the material alignment and nailing assembly operates in a first mode of operation, and move the nailing subassembly such that the lowest point of the gripping subassembly is higher relative to a nailing end of the nailing subassembly when the material alignment and nailing assembly operates in a second mode of operation, wherein in the first position, the nailing subassembly and the gripper subassembly cooperate to align the first workpiece for fastening to the second workpiece, in the second position, the nailing subassembly and the gripper subassembly work independently of one another, and the nailing subassembly moves between the first and second positions based on a switching signal from an external controller.
[0022] In some embodiments the material alignment and nailing assembly may further comprise an electronics component comprising one or more subcomponents for sending, receiving and receiving control signals for controlling the at least one paddle actuator and the nailing subassembly actuator.
[0023] In some embodiments, the nailing subassembly actuator may further comprise a pneumatic cylinder.
[0024] In some embodiments, the at least one paddle actuator may comprise an electric motor.
[0025] In some embodiments, the first material may comprise a wooden floor joist.
[0026] In some embodiments, the second material may comprise a subfloor sheet.
[0027] In some embodiments, the underlaying material may comprise a second subfloor sheet.
[0028] In another broad aspect, in accordance with some embodiments, there is generally provided a method for aligning a workpiece using a gripping assembly. The gripping assembly is affixed to a robotic arm (when in use) and configured to align the workpiece based on a predefined configuration. The method comprises: gripping, at the gripping assembly, the workpiece; applying, at the gripping assembly, a first force, along a first axis, upon the workpiece and against a frame apparatus, the frame apparatus comprising at least two referencing elements, thereby producing a first force feedback; sensing, at the force sensor coupled to the gripping assembly, the first force feedback; applying, at the gripping assembly, a second force, along a second axis, upon the workpiece and against the frame apparatus, thereby producing a second force feedback; sensing, at the force sensor, the second force feedback; applying, at the gripping assembly, one or more torques upon the workpiece and against the frame apparatus, thereby producing one or more torque feedback; sensing, at the force sensor, the torque feedback; determining, at a processor in communication with the force sensor, a first axis adjustment based on the first force feedback; determining, at the processor, a second axis adjustment based on the second force feedback; determining, at the processor, an orientation adjustment based on the one or more torque feedback; determining, at the processor, an adjustment vector based on the first axis adjustment, the second axis adjustment, and the orientation adjustment; and positioning, at the gripping assembly, the workpiece at a designated location based on the adjustment vector.
[0029] In some embodiments, the method may further comprise positioning, with the gripper assembly, the workpiece, to the frame apparatus from a storage location.
[0030] In another broad aspect, in accordance with some embodiments, there is generally provided a glue dispensing assembly for dispensing a quantity of glue from a glue canister onto a substrate. The glue dispensing assembly is a robotic end-of-arm tool. The glue dispensing assembly comprises a frame arranged from a first end and a second end along a dispensing axis, configured to support: a precision dispensing subassembly comprising a linear actuator, operable to extend in the forward direction along the dispensing axis from a first dispensing position to a second dispensing position to dispense a first quantity of glue, and retract in a backward direction along the dispensing axis from the second dispensing position to a third dispensing position to withdraw a residual quantity ofglue. The frame is further configured to support a suction mechanism coupled to the dispensing mechanism, operable to produce a suction to secure the glue canister to the precision dispensing mechanism before the retracting of the precision dispensing mechanism, and release the suction to release the glue canister from the precision dispensing mechanism after the retraction of the precision dispensing mechanism is completed.
[0031] In some embodiments, the operation of at least one of the precision dispensing subassembly and suction mechanism may be based on control signals received from an external controller.
[0032] In some embodiments, the precision dispensing subassembly may be further operable to retract in a backward direction along the dispensing axis to a first dispensing position upon the precision dispensing subassembly reaching the dispensing limit.
[0033] In some embodiments, the suction mechanism may be attachable to the precision dispensing subassembly through a J-channel coupling mechanism, and separable from the precision dispensing subassembly by undoing the J-channel coupling mechanism.
[0034] In some embodiments, the glue dispensing assembly further comprising one or more access doors, the access doors configured to allow access to an interior of the glue dispensing assembly for ease of maintenance.
[0035] In some embodiments, opening and closing the access doors is actuated.
[0036] In some embodiments, the glue dispensing assembly may further comprise a vertically arranged glue holder assembly configured to hold a plurality of replacement glue canisters, comprising an entrance end for adding new replacement glue canisters to the plurality of replacement glue canisters and a dispensing end for dispensing a replacement glue canister from the plurality of replacement glue canisters.
[0037] In some embodiments, the frame further may comprise a glue canister separation assembly rigidly operable to block the glue holder assembly from dispensing a replacement glue canister as a used glue canister is ejected from a loading position, and allow a replacement glue canister from the plurality of replacement glue canisters to fall into the loading position.
[0038] In some embodiments, the glue canister separation mechanism may comprise one or more wedge-shaped front portions, the front portions facing one another.
[0039] In some embodiments, the glue dispensing assembly may further comprise at least one load sensor, operable to sense a load in the loading position and send a command to a controller, upon detecting that a load is present in the loading position to navigate the glue dispensing assembly to a nozzle cutting and membrane piercing station.
[0040] In some embodiments, the glue dispensing assembly may further comprise a dispensing sensor, operable to sense a dispensing amount of the precision dispensing mechanism, and wherein the precision dispensing mechanism reaches the dispensing limit when the dispensing amount reaches a threshold value.
[0041] In some embodiments, the dispensing sensor may comprise a motor encoder.
[0042] In some embodiments, the second linear actuator may comprise a ball screw mechanism.
[0043] In some embodiments, the first linear actuator may comprise a pneumatic cylinder.
[0044] In some embodiments, the glue dispensing assembly may further comprise a set of ejection gates connected to the frame, configured to open to permit the glue canister to be ejected from the glue dispensing assembly.
[0045] In some embodiments, the glue dispensing assembly may further comprise a set of nozzle fingers connected to the frame, the nozzle fingers configured to position a nozzle of the glue canister in a consistent location between different glue canisters.
[0046] In some embodiments, the glue dispensing assembly may further comprise a toggle clamp, the toggle clamp configured to permit the glue holder assembly to be positioned in a list of positions comprising: a raised position, wherein the toggle clamp is disengaged, permitting the glue holder assembly to be raised, and a lowered position, wherein the toggle clamp is engaged, securing the glue holder assembly down.
[0047] In some embodiments, the glue dispensing assembly may further comprise a sensor for sensing whether the glue holder assembly is in the raised position or the lowered position.
[0048] In another broad aspect, in accordance with some embodiments, there is generally provided a method for dispensing a quantity of glue from a glue canister onto a substrate using a glue dispensing assembly. The glue dispensing assembly is a robotic end- of-arm tool. The glue dispensing assembly comprises a frame extending from a first end to a second end along a dispensing axis. The method comprises: extending a precision dispensing subassembly, the precision dispensing subassembly comprising a linear actuator, in the forward direction along the dispensing axis, from a first dispensing position to a second dispensing position, to dispense the quantity of glue; producing a suction, at a suction mechanism coupled to the precision dispensing subassembly, to secure the glue canister to the precision dispensing subassembly; retracting the precision dispensing subassembly in a backward direction, the backward direction being defined as extending from the second end to the first end, along the dispensing axis from the second dispensing position to a third dispensing position to withdraw a residual quantity of glue; releasing the suction, at the suction mechanism, to release the glue canister from the precision dispensing mechanism after the retraction of the precision dispensing subassembly is completed; and determining, at a dispensing sensor, whether the precision dispensing subassembly has reached the dispensing limit, and if so, retract the precision dispensing subassembly in the backward direction along the dispensing axis to an initial dispensing position upon a precision dispensing subassembly reaching the dispensing limit.BRIEF DESCRIPTION OF THE DRAWINGS
[0049] For a better understanding of the embodiments described herein and to show more clearly how they may be carried into effect, reference will now be made, by way of example only, to the accompanying drawings which show at least one exemplary embodiment, and in which:
[0050] FIG. 1 is a schematic diagram of an example system for aligning a workpiece in accordance with some embodiments.
[0051] FIG. 2a shows an example force transducer in accordance with some embodiments.
[0052] FIG. 2b shows an example force transducer in accordance with some other embodiments.
[0053] FIG. 3 shows an example gripping assembly in accordance with some embodiments.
[0054] FIG. 4 shows example transformations for aligning a workpiece in accordance with some embodiments.
[0055] FIG. 5 shows an example automation table in accordance with some embodiments.
[0056] FIG. 6 shows an example roller assembly in accordance with some embodiments.
[0057] FIG. 7 shows a detail view of an example roller assembly in accordance with some embodiments.
[0058] FIG. 8a shows a section view of an example roller assembly in accordance with some embodiments.
[0059] FIG. 8b shows a section view of an example roller assembly in accordance with some other embodiments.
[0060] FIG. 9 shows an example material alignment and nailing assembly in accordance with some embodiments.
[0061] FIG. 10 shows another view of the material alignment and nailing assembly of FIG. 9 in accordance with some embodiments.
[0062] FIG. 11 shows a profile view of the material alignment and nailing assembly of FIG. 9 in accordance with some embodiments.
[0063] FIG. 12 shows another profile view of the material alignment and nailing assembly in accordance with some embodiments.
[0064] FIG. 13 shows another profile view of the material alignment and nailing assembly in accordance with some embodiments.
[0065] FIG. 14 shows the material alignment and nailing assembly in use with an example workpiece in accordance with some embodiments.
[0066] FIG. 15 shows another view of the material alignment and nailing assembly in use with an example workpiece in accordance with some embodiments.
[0067] FIG. 16a shows another view of the material alignment and nailing assembly in use with an example workpiece in accordance with some embodiments.
[0068] FIG. 16b shows the material alignment and nailing assembly with horizontal offset actuator in a second position in accordance with some embodiments.
[0069] FIG. 16c shows the material alignment and nailing assembly with horizontal offset actuator in a first position in accordance with some embodiments.
[0070] FIG. 16d shows the material alignment and nailing assembly with horizontal offset actuator in a third position in accordance with some embodiments.
[0071] FIG. 17 shows an example method for aligning a workpiece using a gripping assembly in accordance with some embodiments.
[0072] FIG. 18 shows an example glue dispensing assembly in accordance with some embodiments.
[0073] FIG. 19a shows an example glue holder subassembly in accordance with some embodiments.
[0074] FIG. 19b shows an example glue holder subassembly in accordance with some other embodiments.
[0075] FIG. 20 shows another view of the glue dispensing assembly in accordance with some embodiments.
[0076] FIG. 21 shows another view of the glue dispensing assembly in accordance with some embodiments.
[0077] FIG. 22a shows an example coupling mechanism in accordance with some embodiments.
[0078] FIG. 22b shows an example coupling mechanism in accordance with some other embodiments.
[0079] FIG. 22c shows an example coupling mechanism in accordance with some further embodiments.
[0080] FIG. 23 shows a detail view of a loaded basket and sensors therefor in accordance with some embodiments.
[0081] FIG. 24 shows an example extension subassembly and example components connected thereto in accordance with some embodiments.
[0082] FIG. 25 shows an example glue canister separation mechanism in accordance with some embodiments.
[0083] FIG. 26 shows another view of an example hose flange and shaft clamp in accordance with some embodiments.
[0084] FIG. 27 shows an example dispense zone assembly in accordance with some embodiments.
[0085] FIG. 28 shows the dispense zone assembly of FIG. 27 with open cover.
[0086] FIG. 29A is a flowchart of an example method for dispensing a quantity of glue using a glue dispensing assembly in accordance with some embodiments.
[0087] FIG. 29B is a flowchart of another example method for dispensing a quantity of glue using a glue dispensing assembly in accordance with some embodiments.
[0088] FIGS. 30a shows the glue dispensing assembly in one stage of operation in accordance with some embodiments.
[0089] FIGS. 30b shows the glue dispensing assembly in another stage of operation in accordance with some embodiments.
[0090] FIGS. 30c shows the glue dispensing assembly in another stage of operation in accordance with some embodiments.
[0091] FIGS. 30d shows the glue dispensing assembly in another stage of operation in accordance with some embodiments.
[0092] FIGS. 30e shows the glue dispensing assembly in another stage of operation in accordance with some embodiments.
[0093] FIGS. 30f shows the glue dispensing assembly in another stage of operation in accordance with some embodiments.
[0094] FIG. 31 shows a section view of the dispense zone assembly in accordance with some embodiments.
[0095] FIG. 32 shows another section view of the dispense zone assembly in accordance with some embodiments.
[0096] FIG. 33 shows the glue dispensing assembly mounted on an example mounting stand in accordance with some embodiments.
[0097] FIG. 34 shows an example nozzle cutting and membrane piercing station in accordance with some embodiments.
[0098] FIG. 35 shows a section view of the nozzle cutting and membrane piercing station in accordance with some embodiments.
[0099] FIG. 36 shows the glue dispensing machine working with the nozzle cutting and membrane piercing stations in accordance with some embodiments.
[0100] FIG. 37a shows an example referencing apparatus in accordance with some embodiments.
[0101] FIG. 37b shows an example referencing apparatus in accordance with some other embodiments.
[0102] FIG. 38 shows an example system for automated assembly of building structures in accordance with some embodiments.
[0103] FIG. 39 shows an example modular robotic assembly cell in accordance with some embodiments.
[0104] FIG. 40 shows a process flow for an example method for automated assembly of building structures in accordance with some embodiments.
[0105] FIG. 41 shows an illustration of an example configuration for a robotic assembly in accordance with some embodiments.
[0106] FIG. 42A shows an exploded view of the material alignment and nailing assembly of FIG. 9 in accordance with some embodiments, with the frame hidden, thus exposing various internal components.
[0107] FIG. 42B shows a perspective view of the material alignment and nailing assembly of FIG. 9 in accordance with some embodiments, with the frame hidden, thus exposing various internal components.
[0108] FIG. 42C shows a cutaway view of the material alignment and nailing assembly of FIG. 9 in accordance with some embodiments, with the frame hidden, thus exposing various internal components.
[0109] FIG. 42D shows a cutaway view of the material alignment and nailing assembly of FIG. 9 in accordance with some embodiments, with the frame hidden, thus exposing various internal components.
[0110] FIG. 43 shows an example glue dispensing assembly in accordance with some embodiments.
[0111] FIG. 44 shows a perspective view of the glue dispensing assembly in accordance with some embodiments.
[0112] FIG. 45 shows a cross-sectional view of the glue dispensing assembly in accordance with some embodiments.
[0113] FIG. 46 shows an example replacement glue holder subassembly in accordance with some embodiments.
[0114] FIG. 47 shows a cross-sectional view of the replacement glue holder subassembly in accordance with some embodiments.
[0115] FIG. 48A shows a perspective view of the replacement glue holder subassembly in a lowered position in accordance with some embodiments.
[0116] FIG. 48B shows a perspective view of the replacement glue holder subassembly in a raised position in accordance with some embodiments.
[0117] FIG. 49 shows a perspective view of various sensors located beneath the replacement glue holder subassembly in accordance with some embodiments.
[0118] FIG. 50 shows an example nozzle cutting and membrane piercing station in accordance with some embodiments.
[0119] FIG. 51 shows a perspective view of the nozzle cutting and membrane piercing station in accordance with some embodiments.
[0120] FIG.52A shows a cross-sectional view of the nozzle cutting and membrane piercing station in accordance with some embodiments.
[0121] FIG. 52B shows a perspective view of the nozzle cutting and membrane piercing station in accordance with some embodiments.
[0122] FIG. 53A shows a perspective view of the nozzle cutting and membrane piercing station where the piercing device is advanced in accordance with some embodiments.
[0123] FIG. 53B shows a perspective view of the nozzle cutting and membrane piercing station where the piercing device is retracted in accordance with some embodiments.
[0124] FIG. 54A shows a cross-sectional view of an example precision dispensing subassembly in accordance with some embodiments.
[0125] FIG. 54B shows a cross-sectional view of an example precision dispensing subassembly in accordance with some other embodiments.
[0126] FIG. 55 shows an example configuration of various stations of an automation table in accordance with some embodiments.DESCRIPTION OF VARIOUS EMBODIMENTS
[0127] Various embodiments in accordance with the teachings herein will be described below to provide an example of at least one embodiment of the claimed subject matter. No embodiment described herein limits any claimed subject matter. The claimed subject matter is not limited to devices, systems or methods having all of the features of any one of the devices, systems or methods described below or to features common to multiple or all of the devices, systems or methods described herein. It is possible that there may be a device, system or method described herein that is not an embodiment of any claimed subject matter. Any subject matter that is described herein that is not claimed in this document may be the subject matter of another protective instrument, for example, a continuing patent application, and the applicants, inventors or owners do not intend to abandon, disclaim or dedicate to the public any such subject matter by its disclosure in this document.
[0128] For simplicity and clarity of illustration, reference numerals may be repeated among the figures to indicate corresponding or analogous elements. In addition, numerous specific details are set forth in order to provide a thorough understanding of the subject matterdescribed herein. However, it will be understood by those of ordinary skill in the art that the subject matter described herein may be practiced without these specific details. In other instances, well-known methods, procedures and components have not been described in detail so as not to obscure the subject matter described herein. The description is not to be considered as limiting the scope of the subject matter described herein.
[0129] It should also be noted that the terms “coupled” or “coupling” as used herein can have several different meanings depending in the context in which these terms are used. For example, the terms coupled or coupling can have a mechanical, fluidic or electrical connotation. For example, as used herein, the terms coupled or coupling can indicate that two elements or devices can be directly connected to one another or connected to one another through one or more intermediate elements or devices via an electrical or magnetic signal, electrical connection, an electrical element or a mechanical element depending on the particular context. Furthermore, coupled electrical elements may send and / or receive data.
[0130] Unless the context requires otherwise, throughout the specification and claims which follow, the word “comprise” and variations thereof, such as, “comprises” and “comprising” are to be construed in an open, inclusive sense, that is, as “including, but not limited to”.
[0131] It should also be noted that, as used herein, the wording “and / or” is intended to represent an inclusive-or. That is, “X and / or Y” is intended to mean X or Y or both, for example. As a further example, “X, Y, and / or Z” is intended to mean X or Y or Z or any combination thereof.
[0132] It should be noted that terms of degree such as "substantially", "about" and "approximately" as used herein mean a reasonable amount of deviation of the modified term such that the end result is not significantly changed. These terms of degree may also be construed as including a deviation of the modified term, such as by 1 %, 2%, 5% or 10%, for example, if this deviation does not negate the meaning of the term it modifies.
[0133] Furthermore, the recitation of numerical ranges by endpoints herein includes all numbers and fractions subsumed within that range (e.g. 1 to 5 includes 1 , 1.5, 2, 2.75, 3, 3.90, 4, and 5). It is also to be understood that all numbers and fractions thereof arepresumed to be modified by the term "about" which means a variation of up to a certain amount of the number to which reference is being made if the end result is not significantly changed, such as 1 %, 2%, 5%, or 10%, for example.
[0134] Reference throughout this specification to “one embodiment”, “an embodiment”, “at least one embodiment” or “some embodiments” means that one or more particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments, unless otherwise specified to be not combinable or to be alternative options.
[0135] As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” include plural referents unless the content clearly dictates otherwise. It should also be noted that the term “or” is generally employed in its broadest sense, that is, as meaning “and / or” unless the content clearly dictates otherwise.
[0136] Similarly, throughout this specification and the appended claims the term “communicative” as in “communicative pathway,” “communicative coupling,” and in variants such as “communicatively coupled,” is generally used to refer to any engineered arrangement for transferring and / or exchanging information. Exemplary communicative pathways include, but are not limited to, electrically conductive pathways (e.g., electrically conductive wires, electrically conductive traces), magnetic pathways (e.g., magnetic media), optical pathways (e.g., optical fiber), electromagnetically radiative pathways (e.g., radio waves), or any combination thereof. Exemplary communicative couplings include, but are not limited to, electrical couplings, magnetic couplings, optical couplings, radio couplings, or any combination thereof.
[0137] Throughout this specification and the appended claims, infinitive verb forms are often used. Examples include, without limitation: “to detect,” “to provide,” “to transmit,” “to communicate,” “to process,” “to route,” and the like. Unless the specific context requires otherwise, such infinitive verb forms are used in an open, inclusive sense, that is as “to, at least, detect,” to, at least, provide,” “to, at least, transmit,” and so on.
[0138] The example systems and methods described herein may be implemented as a combination of hardware or software. In some cases, the examples described herein may be implemented, at least in part, by using one or more computer programs, executing on oneor more programmable devices comprising at least one processing element, and a data storage element (including volatile memory, non-volatile memory, storage elements, or any combination thereof). These devices may also have at least one input device (e.g. a keyboard, mouse, touchscreen, or the like), and at least one output device (e.g. a display screen, a printer, a wireless radio, or the like) depending on the nature of the device.
[0139] Some elements that are used to implement at least part of the systems, methods, and devices described herein may be implemented via software that is written in a high-level procedural language such as object-oriented programming. The program code may be written in C++, C#, JavaScript, Python, or any other suitable programming language and may comprise modules or classes, as is known to those skilled in object-oriented programming. Alternatively, or in addition thereto, some of these elements implemented via software may be written in assembly language, machine language, or firmware as needed. In either case, the language may be a compiled or interpreted language.
[0140] At least some of these software programs may be stored on a computer readable medium such as, but not limited to, a ROM, a magnetic disk, an optical disc, a USB key, and the like that is readable by a device having at least one processor, an operating system, and the associated hardware and software that is used to implement the functionality of at least one of the methods described herein. The software program code, when read by the device, configures the device to operate in a new, specific, and predefined manner (e.g., as a specific-purpose computer) in order to perform at least one of the methods described herein.
[0141] Furthermore, at least some of the programs associated with the systems and methods described herein may be capable of being distributed in a computer program product including a computer readable medium that bears computer usable instructions for one or more processors. The medium may be provided in various forms, including non- transitory forms such as, but not limited to, one or more diskettes, compact disks, tapes, chips, and magnetic and electronic storage. Alternatively, the medium may be transitory in nature such as, but not limited to, wire-line transmissions, satellite transmissions, internet transmissions (e.g. downloads), media, digital and analog signals, and the like. Thecomputer useable instructions may also be in various formats, including compiled and noncompiled code.
[0142] As stated in the background, major urban centers increasingly suffer from a shortage of housing. This shortage is due, in-part, to challenges in accessing a skilled labor workforce, as well as more generally, elongated timelines inherent in antiquated and manual construction processes. Similar challenges have also affected new housing supplies in remote, rural and urban areas, which also suffer from an acute lack of available labor to build new houses.
[0143] To this end, it has been appreciated that automated construction techniques may assist in mitigating the lagging supply of new housing infrastructure. For example, automated processes may decrease reliance on a skilled labor workforce and may also expedite construction timelines. Automated construction techniques may also have the benefit of reducing total construction costs.
[0144] The construction industry, including in the field of home panel fabrication, may predominantly rely on manual labour. Currently, most home panels are built manually, which can be time consuming, labour intensive, produce inconsistencies in quality, lead to higher chances of human error, and result in potential safety risks. These manual processes can also be less efficient compared to other automated methods in climate-controlled environments, which may not be present in a construction context. Some unique challenges faced in adopting automation in the construction industry include the need for customization in building projects, the variety of materials used, and the often unstructured and changing work environments. Additionally, the frequency of defects in natural materials like wood present a further challenge to construction tasks. Automation of repetitive and labour- intensive tasks like manual inspection may speed up the overall construction process, leading to increased overall efficiency and productivity.
[0145] Accordingly, the present disclosure relates to methods, systems and devices that enable automated assembly of building structures. In one example, the disclosed embodiments facilitate construction of new housing units. This includes, for example, construction of new single-family homes and condominium units. It will be understood, however, that the disclosed embodiments may also be applied to the construction of manyother types of building infrastructure. The building structures can be building panels such as wall panels and floor panels.
[0146] Additionally, the present disclosure relates to systems that integrate various sensors to perceive the surrounding environment can be used in systems for automating construction. Integrating advanced sensing capability may allow for more precise and consistent handling of construction materials and components, thereby reducing the variability of errors associated with manual labour. For example, robotic assembly cells can use vision sensors, laser scanners, and force sensors to enhance precision, efficiency, and safety in construction automation. Vision sensors, such as cameras, may be operable to facilitate real-time quality inspection, alignment verification, and collision avoidance by capturing and analyzing images of building components. Laser sensors, which may be located on a robot’s end-of-arm and in other key locations in a robotic cell, may assist with detecting and positioning building materials like oriented strandboard (OSBs), studs, and plates, and may facilitate precise nailing and tool alignment. Force / torque sensors can add another dimension to the input received by robot controllers by monitoring physical interactions taking place during tasks like nailing and sheathing, detecting abnormalities (e.g., misfires, partial nail penetration), preventing collisions, and ensuring proper alignment of components like floor-sheet joints. These types of sensory inputs may be used in a perception system for a robotic assembly system that utilizes visual, spatial, and tactile data, enabling the robotic assembly to perform automated construction processes and complex tasks with high accuracy and adaptability.
[0147] A robotic assembly cell designed to facilitate automated assembly of building structures can include one or more assembly robots. The assembly robots can operate by engaging various types of end effectors that are operable to perform different automated assembly tasks. These may include assembly robot end effectors such as a material alignment and nailing assembly and a glue dispensing assembly. The robotic cell may also include other system components that facilitate automated assembly such as a automation table for aligning workpieces. The assembly robots may use sensing means and algorithms, such as force and torque sensors, to align workpieces with referencing frames. In some cases, the robotic cell may further include features that facilitate manual intervention by human operators, as needed (e.g., a manual intervention table).
[0148] In at least some example cases, the robotic cell may be configurable, or re- configurable, to perform different, or multiple tasks. For example, the assembly robots, inside the robotic cell, can be re-configurable to assemble different types of building structures. For instance, the same robotic cell can be re-configured to assemble different building structures used for constructing a single-family home. The re-configuration process can involve engaging different types of assembly robot end effectors for floor assembly such as a material alignment and nailing assembly and a glue dispensing assembly. The re-configuration process may further change the setup and control of the building platform. In this manner, the robotic cell can form an integrated one-stop automated solution for assembling complete buildings.
[0149] The disclosed robotic cell may also be portable. For instance, the robotic cell may include systems and devices which can be quickly disassembled, transported and reassembled. In turn, this may allow the robotic cell to be shipped and deployed at different geographic locations. This feature may be advantageous in facilitating construction in remote, rural areas.
[0150] In an example application, building structures are pre-assembled (i.e., prefabricated) using the robotic cell and are transported or shipped to a construction site. At the construction site, the pre-assembled structures are rapidly assembled into the desired building infrastructure (e.g., a housing unit). Accordingly, the robotic cell can facilitate expedited construction timelines at a construction site.
[0151] The robotic assembly cell can be connected to a cloud server platform. The cloud platform monitors, controls, and coordinates operation of the robotic cell. For example, the cloud platform may generate and transmit control instructions to guide operation of assembly robots inside the robotic cell. To this end, the cloud platform may also configure, or re-configure (e.g., re-program) robotic cells to provide different functions on an as-needed basis.
[0152] In more detail, the cloud server enables a unique software-defined manufacturing service. Robotic cells may be deployed at any geographic location and connected or plugged into the remote cloud platform to become operational. The cloud platform is able to manage back-end software operation for the robotic cell. In turn, users arenot required to maintain and update the back-end software in order to operate the robotic cell. This allows low capital investment and fast deployment of robotic cells by user operators (e.g., real estate developers).
[0153] The cloud server platform can also remotely service multiple robotic cells, concurrently or non-concurrently. For example, the cloud platform can service multiple cells associated with different users in the same or different geographic locations. This can reduce system-wide costs when deploying the system to service a plurality of robotic cells designated to different construction projects.
[0154] In some example cases, the cloud server may host one or more machine learning models. The machine learning models may be trainable to generate control instructions for the robotic cells. For instance, a machine learning model may be trained to determine optimal assembly sequences for assembling different types of building structures. To this end, as the cloud server may communicate with multiple robotic cells - the cloud server may train the model using aggregate datasets generated or received from the multiple cells. As such, the cloud platform is uniquely able to generate highly trained, and highly efficient machine learning models.
[0155] The robotics assembly cell may also be modular and scalable. For example, multiple robotics cells can be combined in a scalable manner to form different “factory” sizes with different production volumes and / or capabilities. For example, this can include microfactories, complete factories or otherwise anything in-between.
[0156] Robot cell “factories” can enable mass production of building structures. For example, different robotic cells, in a single factory, may be configured (or re-configured) to assemble different building structures, as needed. In other cases, different robotic cells may assemble different portions of the same building structure. More particularly, factories may be scaled-up or scaled-down as desired to increase or decrease the number of modular cells, and thereby, increase or decrease production output. In some examples, operation of each robotic cell in the factory may be managed and coordinated by the cloud platform. In other cases, the robotic cells may be each individually controlled, such as, for example, by using a dedicated local controller.
[0157] In view of the foregoing, the disclosed embodiments provide for easy to deploy, automated assembly and manufacturing of building structures. By leveraging the efficiencies of industrialized assembly robots, it is believed that the disclosed methods and systems accelerate manufacturing times, while also removing uncertainties associated with the construction of homes and other buildings.
[0158] The automated systems may also enable reliable, just-in-time manufacturing of building structures in a wide array of construction applications. This may allow construction projects to meet the growing demand for higher productivity, while addressing growing labor shortages and doing so in a sustainable manner.
[0159] The disclosed embodiments provide for versatility in operation modes, adjustability and customization of the manufacturing and assembly processes, efficiency in floor space usage and process steps, optimization of automated systems, and consistency in building tolerances.
[0160] It is further believed that the disclosed embodiments, which enable remote, cloud-based control of assembly robots, also assist in the democratization of assembly robots in construction. This, in turn, facilitates ease of acquisition and deployment of this technology for assembling housing. The automation of construction also has broader advantages in reducing overall construction costs for the final housing product, while increasing the quality of the output product.
[0161] Reference is now made to FIG. 38, which shows an example system 3800a for automated assembly of building structures.
[0162] As shown, system 3800a generally includes a user computer terminal 3802 connected, via network 3810, to one or more control server(s) 3806 (e.g., cloud servers) and a robotic assembly cell 3804.
[0163] In operation, a user may interact with the computer terminal 3802. Computer terminal 3802 may, for example, enable the user to upload one or more design files 3814. The design files 3814 can correspond to model designs for building structures requiring assembly via robotic cell 3804 (e.g., wall panels, roof / ceiling structures, etc.).
[0164] The design file(s) 3814 may be transmitted from the computer terminal 3802 to the cloud server 3806, via network 3810. Cloud server 3806 may receive, parse and analyze the design file. In turn, the cloud server 3806 may generate control instructions for assembling the corresponding building structure(s). The control instructions are then transmitted to the robotic cell 3804 for automated assembly (e.g., in real-time or near realtime). In some example cases, the cloud server 3806 may host one or more machine learning models (e.g., Al models), which provide enhanced functionality in determining and generating optimal assembly control instructions.
[0165] The cloud server 3806 acts as an intermediary between user terminal 3802 and the robotic cell 3804. More particularly, a user may deploy the robotic cell 3804 at any desired on-site or off-site location, and further connect (e.g., plug-in) the computer terminal 3802 and robotic cell 3804 to network 3810. Cloud server 3806 may then provide a “ready-to-use” software platform for remotely controlling and monitoring operation of the robotic cell 3804. In turn, users deploying the robotic cell 3804 are not required to manage the complexities of the automated software platform. Rather, a third party which is hosting the cloud platform may manage the back-end software, and may further update and enhance the software platform, e.g., in real-time or near real-time. In this manner, cloud server 3806 can provide automated manufacturing in the form of a software as a service (SaaS), thereby enabling fast deployment of robotic cells 3804, and at a low capital investment to the robotic cell user.
[0166] In more detail, computer terminal 3802 may be a desktop or laptop computer, but may also refer to a smartphone, tablet computer, as well as a wide variety of “smart” devices capable of data communication. The computer terminal 3802 can include a display for presenting a graphical user interface (GUI). The GUI may allow the user to input various building structure design files (e.g., CAD ® models).
[0167] Server 3806 is a computer server that is connected to network 3810. Server 3806 has a processor, volatile and non-volatile memory, at least one network interface, and may have various other input / output devices. To this end, server 3806 need not be a dedicated physical computer. For example, in various embodiments, the various logical components that are shown as being provided on server 3806 may be hosted by a third party “cloud” hosting service such as Amazon™ Web Services™ Elastic Compute Cloud (AmazonEC2). As with all devices shown in the systems 3800a, there may be multiple servers 3806, although not all are shown. It will be understood that reference to a server 3806, in the singular, may refer to one or more servers.
[0168] As explained, server 3806 can provide cloud-based motion planning and control for the robotic cell 3804. Server 3806 may also provide more general production management services for the robotic cell, including: (i) assembly planning and scheduling, (ii) real-time or near real-time monitoring of assembly progress, (iii) management of inventory at the robotic cell, (iv) assembly and production cost estimation, (v) controlling and supervision of required maintenance, (vi) analytics and report generation, (vii) logistics and shipping management, and / or (viii) building and component model analysis and optimization.
[0169] In some examples, some or all of the processes provided by the server 3806 can be performed by one or more machine learning models, hosted on the server 3806. For example, this includes the cloud-based motion and path planning, as well as the various general production management services.
[0170] Network 3810 may be connected to the internet. Typically, the connection between network 3810 and the Internet may be made via a firewall server (not shown). In some cases, there may be multiple links or firewalls, or both, between network 3810 and the Internet. Some organizations may operate multiple networks 3810 or virtual networks 3810, which can be internetworked or isolated. These have been omitted for ease of illustration, however it will be understood that the teachings herein can be applied to such systems. Network 3810 may be constructed from one or more computer network technologies, such as IEEE 802.3 (Ethernet), IEEE 802.11 and similar technologies.
[0171] FIG. 39 shows an example robotic assembly cell 3804. As shown, the robotic cell 3804 may include one or more assembly robots 3904a - 3904c used for assembling various building structures (e.g., wall panels, ceilings / roofs, floor panels, staircases, etc.). The assembly robots 3904 can comprise any suitable robotic system including, by way of example, robotic arms and / or robotic gantry systems. The assembly robots 3904 can be stationary or may dynamically move around the robotic cell 3804 (e.g., along slidable tracks 3908). Operation of assembly robots 3904 may be controlled and guided by controlinstructions received from cloud server 3806. In other cases, one or more assembly robots 3904 may be controlled by a local computing system or processor of the robotic cell 3804.
[0172] The control instructions can include instructions for the assembly robots 3904 to engage and operate various end effectors. The control instructions for the assembly robots 3904 to engage an end effector can specify the type of end effector to engage, the target end effector’s location, and the target end effector’s orientation. Precise steps to guide the assembly robots 3904 can be provided and can include: moving to the storage location, aligning with the end effector, engaging the coupling mechanism, verifying the mechanical and electrical connections, retreating from storage, or any other suitable control instruction. The control instructions for the assembly robots 3904 to operate an end effector can include initializing the end effector, selecting an operational mode, controlling the positioning and trajectory of the end effector, executing a task (e.g., aligning, gripping, assembling, fastening), monitoring feedback, performing dynamic adjustments, releasing, resetting, handling faults and safety, or any other suitable control instruction.
[0173] The robotic cell 3804 may also include a building platform 3910 for positioning and assembling parts. The building platform 3910 can include a plurality of components (e.g., electromechanical subsystems, sensors, and guide blocks). The building platform 3910 itself can be configured to operate through control instructions. The building platform 3910 may be an automation table 500 for aligning floor assembly workpieces as will be described in more detail with reference to FIGS. 5-8.
[0174] In various embodiments, the building platform 3910 may comprise one or more stations. As an example, the building platform 3910 may comprise three stations, where a building structure may be passed between stations using one or more conveying elements 5540a-o. For example, the one or more conveying elements may be rolling elements.
[0175] Reference is now made to FIG. 55, which shows a first station 5510, a second station 5520, and a third station 5530 of building platform 3910. Floor panels may be passed, for example, from the first station 5510, to the second station 5520, then to the third station 5530. In various embodiments, different assembly tasks may be performed at each station.
[0176] In various embodiments, the building structure constructed may be a floor panel. In accordance with some embodiments, the first station 5510 may be used toassemble a frame of a floor panel. A frame of a floor panel may include, for example, joists, rim joists, and bridging members. In accordance with some embodiments, assembly of the frame of the floor panel may include connecting the rim joists to form a perimeter, aligning the joists within the perimeter in a desired configuration, securing the joists to the rim joists, and optionally adding bridging members between the rim joists. In accordance with some embodiments, the joists may be arranged unidirectionally or bidirectionally. In accordance with some embodiments, the construction of the frame of the floor panel may be completed by humans. In accordance with some embodiments, the construction of the frame of the floor panel may be completed by assembly robots.
[0177] In accordance with some embodiments, the second station 5520 may be used to datum reference a floor panel and secure subfloor sheets to the frame. In accordance with some embodiments, the frame of the floor panel is first datum referenced to locate the floor panel in the context of the building platform 3910. For example, the trailing edge of the floor panel may be used as a reference point. The trailing edge may be detected using a combination of vision and other robot perception. The remainder of the frame of the floor panel is then scanned and datum referenced relative to the trailing edge. Once datum referencing is complete, the subfloor attachment process may begin. For example, subfloor attachment may comprise picking up a subfloor sheet, applying glue to the subfloor sheet, aligning the subfloor sheet with the frame, nailing the subfloor to the frame, and creating openings in the subfloor sheet. For example, the openings created may be used for passage of utilities or for ventilation. Other fixtures may be attached as well, including magnetic fixtures.
[0178] In accordance with some embodiments, the third station 5530 may be used to prepare the floor panel for transport. This may include, for example, removing the magnetic fixtures from the floor panel, as well as any debris, and moving the floor panel onto a trailer. In accordance with some embodiments, the preparation of the floor panel for transport may be completed by humans. In accordance with some embodiments, the preparation of the floor panel for transport may be completed by assembly robots.
[0179] While it is described that there are three stations and workflows are performed in a certain sequence, it should be understood that the foregoing is an illustrative example and that there may be any number of stations with workflows performed in any sequence.
[0180] In various embodiments, the control instructions include instructions for various system elements of the robotic cell 3804 to interact with each other. For example, the control instructions can command the assembly robots 3904 to pick workpieces off a pre-cut. In another example, the control instructions can command the assembly robots 3904 to place workpieces on the building platform 3910.
[0181] In various embodiments, the control instructions for a system element of the robotic cell 3804 may depend on the content and timing of the control instructions for another system element of the robotic cell 3804. For example, the control instructions for placing workpieces on the building platform 3910 and the control instructions for operating the components of the building platform 3910 can be determined based on the timing of each other. In another example, the control instructions for assembly robot 3904a can depend on the control instructions for assembly robot 3904b and 3904c.
[0182] The robotic cell 3804 may further include any other system component (e.g., cutting tables, etc.) that may be used in automated or manual assembly.
[0183] As stated previously, the robotic cell 3804 can be flexibly configured or reconfigured (e.g., re-programmed) to perform different or multiple tasks. For example, multifunctional assembly robots 3904 can be re-configured to assemble different building structures, on as-need basis (or otherwise assemble different portions of the same structure). This can be done by transmitting new or updated control instructions to the robotic cell 3804. Accordingly, the same robotic cell 3804 can act as a one-stop integrated solution for various assembly needs. This, in turn, minimizes the amount of system resources and footprint required to assemble building units having different types of constituent building structures.
[0184] As also noted previously, robotic cell 3804 can be used to pre-fabricate (or preassemble) building structures, which may be transported or shipped to a construction site for rapid assembly (e.g., into a housing unit). In other examples, the robotic cell 3804 may itself be portable, such that it may be shipped directly to a construction site.
[0185] Reference is now made to FIG. 40, which illustrates a process flow for an example method 300a for automated assembly of building structures.
[0186] As shown, at 4002, user computer terminal 3802 may receive assembly data associated with one or more building structures (or portions of building structures) requiring assembly. For example, the building structures can include wall panels, roof / ceiling structures, floor panels, etc.
[0187] The assembly data can identify an assembled design for the building structure. In more detail, assembly data for a building structure can identify, for instance: (i) different building parts required for assembling the building structure (e.g., studs, panels, etc.); (ii) dimensions of each building part; (iii) positional configuration of each building part relative to other building parts in an assembled state (e.g., adjacent or coupled building parts), and / or (iii) a fastening configuration for building parts in the assembled state (e.g., quantity, location and type of nailing or stapling for fastening parts together). In some examples, the assembly data may comprise a CAD® model file of the building structure which requires assembly.
[0188] At 4004, the assembly data is transmitted to the server 3806.
[0189] At 4006, the server 3806 receives the assembly data.
[0190] At 4008, the server 3806 parses and analyzes the assembly data, and based on the parsing and analyzing, generates assembly instructions for controlling the robotic cell 3804 to assemble the building structure, or any portion thereof. In at least some examples, control instructions, generated by server 3806, can comprise a robotic script for controlling assembly robots 3904 inside the robotic cell 3804. The control instructions can be substantially similar to the control instructions described with reference to FIG. 39.
[0191] In at least one example, the control instructions can include one or more assembly sequences. Each assembly sequence can include one or more assembly tasks (e.g., a plurality of action tasks). Each assembly task can indicate: (i) the type of assembly task requiring performance, (ii) information about that assembly task, (iii) a time, or time range, for performing the assembly task, and / or (iv) a system in the robotic cell 3804 designated to perform that assembly task (e.g., assembly robots, a cutting station, etc). Assembly tasks may be performed concurrently, partially concurrently or non-concurrently (e.g., consecutively).
[0192] In some examples, the assembly tasks can be one of several types, including: (i) mounting tasks, (ii) aligning tasks, and (ii) fastening tasks. Each of mounting, aligning and fastening tasks may be performed by assembly robots 3904 inside the robotic cell 3804. In other examples, the assembly tasks can also include fitting tasks (e.g., fitting a window or stud in a particular assembly).
[0193] A mounting task is a task that involves mounting (e.g., placing) a building part onto the building platform 3910 (FIG. 39). A mounting task can involve an assembly robot 3904: (a) picking-up (e.g., gripping) the building part from an inventory stack or pre-cut cart, (b) translating the building part to a relevant position over the building platform 3910, and (c) dropping-off (e.g., mounting or placing) the building part onto the building platform in the correct orientation.
[0194] By way of further example, each mounting task can identify, for instance: (i) the building part requiring mounting, (ii) the mounting configuration of that building part (e.g., placement angle, orientation and / or position) on the building platform 3910. The mounting configuration may be determined based on the assembly configuration determined, (iii) an assembly robot designated to perform the mounting task, (iv) in some cases, a type of gripper tool to be equipped by the assembly robot 3904 to enable picking-up and mounting the building part, as well as an indication of a gripping configuration for the assembly robot 3904 (e.g., a grip pose and grip location relative to the building part). In some example cases, the gripper tool and grip configuration may be selected based on the type of building part, and the desired mounting configuration. An example gripper tool, referred to as a gripping assembly 300, will be discussed in more detail with reference to FIG. 3.
[0195] A mounting sequence can refer to an aggregate of one or more mounting tasks. Accordingly, a mounting sequence may define a type of assembly sequence. For example, when assembling a wall panel comprising a top, left, right and bottom beam - the mounting sequence can indicate initially mounting the bottom beam, and subsequently, mounting the left and right beams, followed by the top beam.
[0196] An aligning task is a task that involves aligning one or more workpieces on the building platform 3910 (FIG. 39). An aligning task can involve an assembly robot 3904: (a) contacting the workpieces from their initial position on the building platform (b) translating oradjusting the workpieces to a desired position or orientation relative to the building platform 3910, and (c) ensuring proper alignment by pushing, rotating, or repositioning the workpieces into their correct configuration for subsequent assembly operations.
[0197] By way of further example, each aligning task can identify, for instance: (i) the workpieces requiring alignment, (ii) the alignment configuration of those workpieces (e.g., target position, orientation, or spacing) relative to the building platform 3910, (iii) an assembly robot designated to perform the aligning task, and (iv) in some cases, the type of end effector or alignment tool to be equipped by the assembly robot 3904 to enable aligning the workpieces. This may include details such as an alignment pose, contact location, or force application method relative to the workpieces. The alignment tool and configuration may be selected based on the type of workpiece, its initial position, and the desired alignment configuration. For instance, a workpiece assembly tool with a workpiece alignment subassembly may be employed to achieve precise alignment.
[0198] An aligning sequence can refer to an aggregate of one or more aligning tasks. Accordingly, an aligning sequence may define a type of preparation sequence within the overall assembly process. For example, when preparing to assemble a wall panel comprising multiple studs and plates, the aligning sequence can indicate initially aligning the bottom plate, followed by sequentially aligning the studs in their respective positions, and finally aligning the top plate to complete the framework.
[0199] In some cases, the system can execute algorithms using sensor data for precision alignment gripped workpieces. For example, feedback from force and torque sensors may be used to determine the offsets in the alignment of workpieces gripped by gripping assembly 300, as will be described in more detail with reference to FIGS. 1 -4 and 17.
[0200] A fastening task may involve applying one or more fasteners (e.g., nails or staples) to fasten two or more building parts together. A fastening task can involve controlling an assembly robot 204 to apply one or more fasteners to target building parts.
[0201] In some examples, each fastening task can identify: (i) the building parts requiring fastening, (ii) the fastening configuration, (iii) an assembly robot designated to perform the fastening task, (iii) whether the building structure requires lifting to enable accessto an underside for applying one or more fasteners, and / or (iv) in some cases, a type of fastening tool to be equipped by the assembly robot, as well as a fastening tool configuration (e.g., orientation and / or other settings of the tool).
[0202] The fastening configuration (ii) can include: (a) locations where the fasteners are applied to the building parts, (b) the direction or axis in which the fasteners are inserted into the building parts, and (c) the type of fasteners to be applied (e.g., nails or staples).
[0203] A fastening sequence can refer to an aggregate of one or more fastening tasks. A fastening sequence may therefore also define a type of assembly sequence. For example, the fastening sequence may indicate that parts “A” and “B” should be fastened together prior to fastening part “C” to parts “A” and “B”.
[0204] In at least some cases, the fastening sequence may mirror the mounting or assembly sequence. For example, mounted parts may be immediately fastened together. In another example, mounted parts may be aligned before being fastened.
[0205] In some example cases, different assembly robots 3904 can be designated to perform different mounting, aligning, or fastening tasks with a view to optimizing various factors, including optimizing assembly efficiency and assembly time. Optimizing assembly efficiency can also relate to achieving enhanced accuracy and / or repeatability. Assembly tasks can also be designated to different assembly robots with a view to preventing collisions between assembly robots operating concurrently.
[0206] In addition or in the alternative to mounting, aligning, and fastening tasks, other types of assembly tasks include, for example: (i) pre-cut raw material to desired dimensions, (ii) transporting raw material to a robotic cell, (iii) rotating or re-orienting an assembled, or partially assembled, building structures on the assembly platform 3910 to enable further assembly, (iv) translating an assembled, or partially assembled building structure, to a different robotic cell, etc. These tasks can be performed by assembly robots 3904, or any other robotic cell system (e.g., automated guided vehicles, etc.)
[0207] At 4010, the control instructions are transmitted from the server 3806 to one or more robotic cell(s) 3804. In some cases, prior to transmitting the control instructions, a user may observe a simulation of the control script and / or provide adjustments or modifications tothe control sequence, e.g., via computer terminal 3802. A modified control script may then be generated, which is transmitted to the robotic cell 3804.
[0208] At 4012, each robotic cell 3804 can receive corresponding assembly control instructions, and at act 4014, may execute the control instructions to assemble the corresponding building structure (or a portion thereof).
[0209] In some examples, each control instruction may be converted into one or more robot commands depending on the type of control instruction. For example, simple control instructions may be converted into a single robot command while complex control instructions may be converted into multiple robot commands. The robot commands may be executable by a robot, for example, assembly robots 3904 shown in FIG. 39.
[0210] The robot command may include one or more parameter values depending on the type of robot command. For an example robot command for placing a part, the parameter values may include an approach angle and a placement location. The robot commands may be encoded using any suitable language that is usable by the robots. For example, the robot commands may be encoded using KUKA Robot Language (KRL) or extensible Markup Language (XML).
[0211] In some examples, method 4000 may not require assembly data to be transmitted from the user computer terminal 3802 to the server 3806. For example, cloud server 3806 may already pre-store assembly data for various building structures. The cloud server 3806 may then access and transmit the pre-stored assembly data directly to the one or more robotic cells 3804.
[0212] In other examples, method 4000a can be performed using a local computing system or processor which is associated with the robotic cells. For example, a local computing system may receive (or pre-store) assembly data, which may be used to directly control the robotic cell 3804.
[0213] During robotic cell activity (e.g., during act 4014), the robotic cell 3804 may transmit progress data, back to the server 3806. Progress data can include various data about the progress of the robotic cell in completing the required assembly control instructions. For example, progress data can include the current stage of assembly for the robotic cell 3804. The progress data can also include historical execution data, such as the time takento complete previous assembly stages. In some examples, the execution data is used for estimating the assembly cycle time, e.g., offline estimation. All information can be recorded locally and sent to the cloud after the assembly is finished. However, in real-time the overall status of the cell (e.g., standby, fault, paused, assembly in progress) can be sent directly to the cloud server 3806. In some examples, the progress data is monitored by a processor of the robotic cell 3804 and transmitted to the server 3806 via a communication interface.
[0214] Reference is now made to FIG. 41 , which illustrates an example configuration for a robotic assembly cell 3804.
[0215] As shown, the robotic cell 3804 may include one or more assembly robots 3904. In the illustrated example, only two assembly robots 3904a, 3904b are shown, however, the robotic cell 3804 may include any number of assembly robots 3904. As provided herein, each assembly robot 3904 can perform various functions including, by way of example, picking-up and dropping-off building parts, moving / translating building parts to different areas of the robotic cell 3804, mounting, aligning and fastening building parts together, as well as picking-up and dropping-off partially or fully assembled building structures.
[0216] In the illustrated example, each assembly robot 3904 comprises a robotic arm. The robotic arms may be configured for six degrees of motion freedom to provide sufficient rotational flexibility. In other examples, more or less than six degrees of motion freedom can be provided. In still other example, the assembly robots 3904 can comprise any other desired system (e.g., a robotic gantry system).
[0217] To this end, in the exemplified embodiment, each robotic arm 3904 extends between a respective first end 4102ai, 4102bi and a respective second end 4102a2, 4102b2. The first end 4102ai, 4102bi of each robotic arm can comprise an end effector. The end effector can be used, for example, to retain various assembly tools including tools used for fastening (e.g., nailing, stapling, etc.), picking-up and dropping-off building parts, applying sheeting, mounting studs, aligning studs, cutting pockets and holes, etc. The end effector can also incorporate various sensors, including imaging sensors, force / toque sensors, proximity sensors, distance measurement sensors, etc.
[0218] The second end 4102a2, 4102b2, of each robotic arm 3904, can include a drive or motion system. The drive or motion system can facilitate movement and translation of the robotic arm. For instance, the second end 4102a2, 4102b2 may include a drive system which slidably engages over a respective track 3908a, 3908b. As explained herein, the drive system may allow the assembly robots 3904 to access different areas within the robot cell 3804. For example, this includes accessing different parts of the assembly building platform 3910 or a staging area 4110. The assembly robot’s drive system may also comprise any other suitable mechanism. For example, the assembly robots 204 can be mounted on moving wheels, etc.
[0219] As further shown, a building platform 3910 may be interposed between the assembly robots 3904a, 3904b. Building platform 3910 provides a surface for placing building parts during assembly. For example, the building platform 3910 can be used as a mounting surface for mounting, assembling and fastening various building parts into a structure. In some examples, the building platform 3910 may be operable to align workpieces used in floor assemblies, as will be discussed in further detail with reference to FIGS. 5-8.
[0220] Robot cell 3804 may also include one or more staging areas 4110. Staging areas 4110 can define areas within the robotic cell 3804 where an inventory of building parts 4112 can be placed for use in assembly. For example, these can include raw and / or pre-cut building parts (e.g., studs, beams, sheets, etc.). The staging area 4110 can be continuously, or intermittently, replenished with new building parts. For example, the building parts can be stocked, re-stocked and / or replenished in the staging areas 4110 manually (e.g., by human operators). In other cases, the staging area 41 10 can be re-stocked or replenished through automated mechanisms. For example, automated guided vehicles (AGVs) can deliver building parts to the staging area 4110.
[0221] Each assembly robot 3904 may have a corresponding staging area 4110 from which to pick-up building parts. For instance, staging area 41 10a may be associated with assembly robot 3904a, while staging area 4110b may be associated with assembly robot 3904b. In some example cases, the staging areas 4110 are stocked with building parts based on assembly tasks assigned to that robot. In other cases, there may be multiple staging areas associated with each assembly robot. For example, different staging areas may be dedicatedto stocking different building part types. In other cases, there may be a single common or shared staging area for multiple assembly robots.FORCE FEEDBACK ALIGNMENT
[0222] Reference is made to FIG. 1 , which shows an example system 100 for aligning a workpiece 104 using a gripping assembly 102 using force and torque feedback. The gripping assembly 102 may be affixed to a robotic arm 106 when in use. For example, the gripping assembly 102 may be a robotic end-of-arm effector for assembly robots 3910, and robotic arm 106 may be an assembly robot 3910. The gripping assembly 102 may be configured to manipulate the workpiece 104 for the purposes of moving the workpiece from a first location to a second location. For example, gripping assembly 102 may operate to move the workpiece from a material cart to an assembly station.
[0223] For the purposes of manipulating the workpiece 104, gripping assembly 102 may be required to grasp, grip, or otherwise pick up the workpiece 104 in a specific manner based on a pre-defined configuration. For example, gripping assembly 104 may be a sheathing gripper assembly 300, as shown in FIG. 3, and may be tasked with picking up a subfloor sheet 310 from a material storage area to a floor assembly station for assembly with another subfloor sheet. In such instances, the location and orientation at which the gripping assembly 102 grips the workpiece may be important. For example, the workpiece may need to be moved to a specific position, which may not be correct if gripping subassembly 102 grips the workpiece 104 in an off-center manner, as the workpiece 104 may be placed at its destination in a correspondingly off-center manner. Additionally, it may be optimal for gripping assembly 102 to pick up the subfloor sheet 310 about a specific orientation to and at a specific position on the sheet 310, for example, to ensure that the two sheets can be aligned with sufficient precision to mate with one another using the tongue-and-groove interface of the sheets. To this end, system 100 can facilitate improved accuracy and precision in the positioning and orientation of materials for assembly.
[0224] The system 100 may contain a force sensor 108, coupled to the robotic arm and the gripping assembly 102. The force sensor 108 may be positioned in between robotic arm 106 and gripping assembly 102. For example, force sensor 108 may be configured as a linkage component between the robotic arm 106 and the gripping assembly 102. One end ofthe force sensor 108 may be attachable to the robotic arm 106 and an opposite end may be attachable to gripping assembly 102, allowing force sensor 108 to be connected therebetween. In some embodiments, force sensor 108 may be configured to allow power and data communication between the robotic arm 106 and gripping assembly 102, such that commands that are sent to robotic arm 106, for example from controller 110, can be relayed to gripping assembly 102 through force sensor 108.
[0225] Reference is made to FIGS. 2a and 2b, which show an example force sensor 108 attached between a robotic interface 204 and an end-effector interface 202. Robotic interface 204 may be connected to the robotic arm 106. Robotic interface 204 may be a part of the robotic arm having the ability to interface and attach to force sensor 108. End-effector interface 202 may be connected to the gripper assembly 102. End-effector interface 202 may be configured to interface between the robotic arm 106 or the force sensor 108 and the gripping assembly 102. Force sensor 108 may be any force transducer configured to work with robotic end-of-arm tooling that is capable of detecting force and torque along multiple axes. Force sensor 108 may be a force transducer capable of detecting force and torque along 6 axes, such as, for example, the ATI 0mega191 Series 6-Axis Force and Torque Sensors. Alternatively, force sensor 108 may also consist of multiple sensors, each being capable of detecting either force, torque, or any component thereof, cooperating together to perform the requisite force detections.
[0226] The system 100 can contain a data monitoring module 112 in communication with the force sensor for collecting data from the force sensors. Data monitoring module 112 may be a device capable of interfacing with force sensors to collect data about sensed forces and torques. Module 112 may be tuned to detect abnormalities or anomalies in the collected data. Module 112 may analyze the collected force and torque data and monitor the data for specific issues relevant to the particular end-of-arm tool used. For example, for a nailing end- of-arm tool, data monitoring module 112 may analyze the data for data signatures indicative of problems like misfires or partial nail penetration. Data monitoring module 112 may then be configured to flag any irregularities and generate alerts to be sent out to controller 110. Data monitoring module 112 can be any device capable of collecting and analyzing force and torque data from the force sensor 108, but may be, for example, a programmable logic controller (PLC).
[0227] The system may contain a controller 110 in communication with the robotic arm 106, the gripper assembly 102, and the data monitoring module 112, configured to operate the robotic arm 106 and gripper assembly 102 by controlling the movement of the robotic arm 106 as well as the movement and functions of gripper assembly 102. Controller 110 may be a single unit capable of controlling both the robotic arm 106 and the gripper assembly 102 or may comprise multiple units that divide control tasks in communication with each other, the selection of which may be dependent on the specific components used in the system. For example, controller 110 may include a first controller dedicated to controlling the movement of robot 106 and a second controller dedicated to operating gripper assembly 102.
[0228] Controller 110 may receive force and torque data and perform force and torque feedback control based on the received data. The force and torque data may be received from the force sensor 108 through the data monitoring module 112. The force and torque data may be interpreted by the controller 110, which may, in response, perform correctional operations such as dynamically adjusting the movement of its controlled components, adjusting the amount of force that is exerted, adjusting the position of the controlled components, and any other action that may result in an adjustment of the force or torque applied by the robotic arm 106 or the gripping assembly 102.
[0229] Algorithms and routines may be programmed onto the controller for control of the robotic arm 106. The algorithms and routines may include operational tasks for the gripper assembly 102 and the robotic arm 106, but may also include force and torque feedback algorithms. For example, algorithms may be implemented for modulating the robot’s behaviour based on real-time torque and force feedback data to ensure that the robot is applying the correct amount of force for various tasks. For example, the controller 110 may include a KUKA KR C5 Controller for robotic guidance. Force control algorithms may be implemented on the KUKA ForceTorqueControl software package for the KUKA Controller.
[0230] In some embodiments, the controller 110 may be in direct communication with the force sensor and may be operable to receive data from the force sensor without use of data monitoring module 1 12.
[0231] Gripping assembly 102 may be any robotic end-of-arm effector tool configured to pick up a workpiece. Gripping assembly 102 may be required to pick up the workpiece inaccordance with a specific, pre-defined configuration. For example, in certain instances, a high degree of precision may be required for aligning a workpiece with respect to another workpiece for assembly purposes. In such scenarios, if a workpiece is grasped in a position or orientation that is slightly offset from expected, the workpiece may also be placed in a misaligned manner, potentially hindering the assembly process by slowing down production and / or reducing quality.
[0232] FIG. 3 shows an example gripping assembly 102 in the form of an end-of-arm sheathing gripper assembly 300 for picking up subfloor sheets, in accordance with embodiments of the present disclosure. Sheathing gripper assembly 300 may be configured to pick up subfloor sheets by applying a suction to a face of a subfloor sheet, such as in FIGS. 37a and 37b, which shows an example gripping assembly 102 picking up an example subfloor sheet 3702. The subfloor sheets may have a tongue-and-groove connection mechanism along their long edge, and the sheathing gripper assembly 300 may be configured to align the connection mechanisms of one sheet with another to mate the two sheets together. The subfloor sheets may be substantially large in size, which may require the assembly 300 to be able to exert sufficient lateral force to engage the connection mechanisms of the two sheets.
[0233] Sheathing gripper assembly 300 includes a structural frame 302 connected to two suction bars 310. Each suction bar 310 may be configured to apply a suction force through a plurality of distributed suction elements along the suction bar 310. The suction force may be sufficient to pick up various workpieces, such as a subfloor sheet. Advantageously, the use of the suction bars 310 allows sheathing gripper assembly 300 to pick up sheet-shaped workpieces with large area, such as subfloor sheets, by applying suction to the face of the workpiece, instead of needing to grip the workpiece from its sides.
[0234] Suction bar 310 may be connected to a source of vacuum through vacuum port 320. Each suction bar 310 may include one vacuum port 320, which may be fluidly connected to the distributed suction elements located along the length of the suction bar 310, allowing the vacuum source to connect to the suction elements. The vacuum flow may further be distributed from a vacuum splitter 322, comprising a vacuum port 324 and a splitter tee member 326. The source of vacuum may be connected to port 324. The outlets of the splittertee member 326 are connected to vacuum ports 320 of the suction bars 310 to provide vacuum flow. The connection may be facilitated by a hose, conduit, or any other means of fluidly connecting the splitter tee member to vacuum port 320 to facilitate the vacuum connection.
[0235] Sheathing gripper assembly 300 may further contain an interface component 330 configured to connect to a robotic arm, such as to robotic arm 106 for use in system 100. Interface component 330 may allow power and data connectivity between the robotic arm and sheathing gripper 310. In some embodiments, further energy connectivity is enabled, such as connectivity for sources of compressed air and hydraulics.
[0236] Sheathing gripper assembly 300 may contain an electronics module 340 containing various electronic components for the operation of assembly 300. Electronics module 340 may contain vacuum sensors for sensing the amount of vacuum present in the system, controls for pneumatic valves to turn the vacuum on and off at various points in the system, and various other sensors for monitoring quantities relevant to the operation of sheathing gripper assembly 300.
[0237] System 100 may use a frame apparatus 120 to facilitate alignment and calibration of the workpiece 104. For example, the robotic arm may grip the workpiece using gripping assembly 102 and move the workpiece over to frame apparatus 120 to perform an alignment or calibration. Frame apparatus 120 contains a plurality of referencing elements, configured to provide one or more known reference points in a reference coordinate system. By aligning an object with unknown coordinates in the reference coordinate system with the known reference points, it is possible to calibrate the position and orientation of the object with respect to the reference coordinate system.
[0238] The plurality of referencing elements can include one or more vertical datum posts and / or one or more datum walls. The plurality of referencing elements can be arranged relative to one another in a known configuration. The locations and orientations of the referencing elements are also known in the reference coordinate system.
[0239] The frame apparatus 120 can be any apparatus containing a plurality of referencing elements from which it is possible to determine the coordinates of an object in a reference coordinate system. For example, the frame apparatus can be a material storagecart containing datum walls and datum posts. As another example, the frame apparatus can be the automation table 500 of FIG. 5 containing a plurality of alignment pins.
[0240] For example, FIGS. 37a and 37b show an example frame apparatus 3710 in use in accordance with some embodiments. Frame apparatus 3710, as shown, is a material storage cart. Frame apparatus 3710 includes a first datum post 3712, a second datum post 3714, and a datum wall 3716. The coordinates and orientations of first datum post 3712, second datum post 3714, and datum wall 3716 are known in a reference coordinate system. By aligning a first edge 3720 of the workpiece 3702 with the datum wall 3716, edge 3720 becomes aligned with a known plane (defined by datum wall 3716) in the reference coordinate system. Further, by aligning a second edge 3722 of the workpiece 3702 with the first and second datum posts 3712, 3714, edge 3722 becomes aligned with a known plane (defined by datum posts 3712, 3714) in the reference coordinate system. In this way, the workpiece may be calibrated with respect to the reference coordinate system.
[0241] Frame apparatus 120 may be used to align workpiece 104 with respect to gripping assembly 102 using force and torque feedback. To this end, a force sensor may be coupled to gripping assembly 102. For example, gripping assembly 102 may desire to pick up workpiece 104 at an expected location on the workpiece and / or in an expected orientation. For example, it may be desired to pick up workpiece 104 at its center of mass and oriented such that a proximal edge of the workpiece is parallel to a proximal edge of the gripping assembly. Instead, the gripping assembly may pick up the workpiece 104 at a picked location, the picked location being slightly offset with respect to the desired point. Additionally, a picked orientation may be askew relative to the desired orientation. Controller 110 may determine a first position and orientation corresponding to the location of the gripping assembly 102 when it has gripped workpiece 104. The robotic arm 106 may then move the workpiece with respect to the frame apparatus to determine the degree of offset. For example, the robotic arm 106 may push the workpiece 104 against a referencing element of the frame apparatus and determine a force / torque feedback. Upon the force / torque feedback reaching a threshold value, which indicates that the workpiece abuts the referencing element, the controller 110 may determine a second position and orientation corresponding to the new location of the gripping assembly at the force threshold. The controller may then determine a differencebetween the first position and the second position. This difference may be compared to an expected difference to determine an offset in the position.
[0242] Further, the robotic arm 106 may rotate the workpiece with respect to the referring apparatus to determine a torque feedback. When the torque feedback reaches a threshold, the difference between the initial orientation and a stopped orientation can be indicative of an offset in orientation between the picked orientation and the desired orientation. The offsets may be determined based on the torque and force feedback, which allows gripping assembly 102 to correct its position based thereon.
[0243] Reference is next made to FIG. 17, which shows a method 1700 for aligning a workpiece using a gripping assembly. The gripping assembly may be affixed to a robotic arm when in use and may be configured to move a workpiece. The gripping assembly may be coupled to a force sensor. The workpiece may be aligned based on a pre-defined configuration. Method 1700 may be implemented using system 100 of FIG. 1. For example, gripping assembly 102 may be aligned for picking up workpiece 104. Gripping assembly may be coupled to force sensor 108 and may be affixed to robotic arm 106 through force sensor 108. Workpiece 104 may be, through using method 1700, aligned with respect to gripping assembly 102 based on a pre-determined optimal position and orientation at which workpiece 104 is intended to be picked up by gripping assembly 102.
[0244] The method begins at 1702 with gripping, at the gripping assembly, the workpiece. For example, gripping assembly 102 may be the sheathing gripper assembly 300 of FIG. 3. The workpiece may be a subfloor sheet 3702 of FIG. 37a resting in a horizontal configuration. Sheathing gripper assembly 300 may be configured to grip the subfloor sheet 3702 by using producing a suction force at suction bars 310 upon a face of the subfloor sheet, allowing the subfloor sheet to be manipulated and moved by the robotic arm.
[0245] The method proceeds to 1704 with applying, at the gripping assembly, a first force along a first axis upon the workpiece and against a frame apparatus, the frame apparatus comprising at least two referencing elements, thereby producing a first force feedback. For example, the frame apparatus may be the material cart the workpiece is resting on, such as apparatus 3710 of FIGS. 37a and 37b. The sheathing gripper assembly 300 maymove subfloor sheet 3702 against datum wall 3716 by moving it towards datum wall 3716 along a first axis, which may be effected through the movement of robotic arm 106.
[0246] The method proceeds to 1706 with sensing, at the force sensor coupled to the gripping assembly, the first force feedback. The force sensor may be, for example, force sensor 108 shown in FIGS. 2a and 2b. The force sensor may be a six-axis force transducer capable of sensing force and torque feedback between the robotic arm and an end-of-arm effector tool such as the gripping assembly 300. For example, as the gripping assembly 300 moves the subfloor sheet 3702 against the datum wall 3716 along the first axis, a force sensor attached to the gripper assembly may receive a force feedback along said axis. This force feedback may be collected and processed by, for instance, a data monitoring module 112.
[0247] The method proceeds to 1708 with applying, at the gripping assembly, a second force along a second axis upon the workpiece and against the frame apparatus, thereby producing a second force feedback. For example, the sheathing gripper assembly 300 may move subfloor sheet 3702 against one or both of the datum posts 3712 and 3714 by moving it towards the posts along a second axis, which may be effected through the movement of robotic arm 106.
[0248] The method proceeds to 1710 with sensing, at the force sensor, the second force feedback. For example, as the gripping assembly 300 moves the subfloor sheet 3702 against the datum posts 3712 and 3714 along the second axis, the force sensor attached to the gripper assembly may receive a force feedback along said axis. This force feedback may be collected and processed by, for instance, a data monitoring module 112.
[0249] The method proceeds to 1712 with applying, at the gripping assembly, one or more torques upon the workpiece and against the frame apparatus, thereby producing one or more torque feedback. For example, the gripping assembly may, through a rotation effected thereby or by the robotic arm 106, apply a torque against one or more of the referencing elements of the frame apparatus.
[0250] The method proceeds to 1714 with sensing, at the force sensor, the torque feedback. For example, as the gripping assembly 300 rotates the subfloor sheet 3702 against one or more of the referencing elements, the force sensor attached to the gripper assemblymay receive a corresponding torque feedback. The torque feedback may be collected and processed by, for instance, a data monitoring module 112.
[0251] The method proceeds to 1716 with determining, at a processor in communication with the force sensor, a first axis adjustment based on the first force feedback. The method then proceeds to 3818 with determining, at the processor, a second axis adjustment based on the second force feedback. The method then proceeds to 3820 with determining, at the processor, an orientation adjustment based on the one or more torque feedback. The processor may be any processing unit in any programmable computing device. In some embodiments, the robot controller 110 of FIG. 1 , which may be in communication with the force sensor, may be used. In some embodiments, an external computing device, such as a personal computer, may be used.
[0252] The processor may determine a positional difference along the first axis, a positional offset along the second axis, and an orientational offset based on an initial recorded position and orientation as compared to the measured positions and orientations at which the first force feedback, second force feedback, and torque feedback met or exceeded a certain threshold value, respectively. Corresponding offset values may be determined from the differences between the measured position and orientation values and the expected position and orientation values. For example, an initially recorded position of the gripping assembly may be (1 ,1 ,1 ). The gripping assembly may move to apply a first force along the first axis, which may be the x-axis in this example. The force feedback may reach a threshold, and the coordinates of the gripping assembly may be measured at (2,1 ,1 ). The difference in x-position between the starting and the stopped positions may then be determined to be 1 unit. However, if the expected difference in x-position is 0 units, then an offset of -1 along the x-direction may be determined as a first axis adjustment, which may be used to make an adjustment when the workpiece is placed to account for the difference in expected position. The same may apply along, for example, the y-axis, to determine a second axis adjustment. The same principle may apply for a rotational offset, except a difference in angle may be recorded, and torque feedback values may be used instead.
[0253] The method proceeds to 1722 with determining, at the processor, an adjustment vector based on the first axis adjustment, the second axis adjustment, and theorientation adjustment. The offsets that are determined that step 3820 may be transformed into an adjustment vector.
[0254] The method proceeds to 1724 with positioning, at the gripping assembly, the workpiece at a designated location based on the adjustment vector. The adjustment vector may be indicative of the offset of the gripping assembly 102 relative to the workpiece 104. Thus, the gripping assembly 102 and robotic arm 106 may may position the workpiece 104 accordingly. For example, if the gripping assembly 102 was to position the workpiece 104 at a certain location on an assembly station, the gripping assembly 102 may, by using the adjustment vector, offset its final position to take into account the misaligned grip, thereby positioning the workpiece 104 at a correct final location.
[0255] FIG. 4 shows an example adjustment vector 414 in accordance with embodiments of the present disclosure. Taking the system of FIG. 1 as an example, gripping assembly 102 may intend to grip workpiece 402 at an expected location and orientation 412. However, due to miscalibrations in the system or misalignment of the material in storage, it may in fact grip the workpiece 402 at location 410. By use of the alignment method above, gripping assembly 102 may be able to determine its relative offset 414 from expected location and orientation 412. Thus, workpiece 402 may be placed taking into account offset 414 to ensure that the final drop location of the workpiece 402 remains consistent with expectations.AUTOMATION TABLE
[0256] Reference is next made to FIG. 5, which shows an example automation table 500 for assembling a workpiece in accordance with embodiments of the present disclosure. The automation table 500 may be a work surface for robotic assembly of large items such as floor panels, which may be sized at 12ft x 22ft or larger. Automation table 500 contains a table surface 530 containing a plurality of apertures 520 interspersed along the surface 530. A plurality of adjustable height legs are positioned under the table surface 530 around the perimeter of the automation table 500. Support trusses 540 are positioned between the adjustable height legs to provide structural integrity.
[0257] Automation table 500 may contain a plurality of removable alignment pins 510 along one or more perimeter edges of the table surface, configured to be securely inserted into a plurality of positioning holes positioned along one or more perimeters of the tablesurface 530. Alignment pins 510 may be used to provide a physical origin or datum for a floor panel to sit against to define its position with respect to a known coordinate system. By aligning each workpiece against one or more alignment pins, a precise location of the workpiece can be determined in a common coordinate system known to robotic assembly systems performing assembly operations on the workpiece.
[0258] Automation table 500 may contain a roller assembly substantially disposed beneath the table surface 530. The roller assembly contains plurality of rolling elements configured to facilitate easier movement of workpieces about the table surface 530. The rolling elements may facilitate the movement of workpieces onto and off of the table surface 530. Each rolling element of the plurality of rolling elements may be positioned at a location corresponding with an aperture of the plurality of apertures 520 located on table surface 530.
[0259] Reference is made to FIG. 6, which shows a portion of an example roller assembly 600 in accordance with embodiments of the present disclosure. Roller assembly 600 contains a plurality of rolling elements 620 configured to move between a first position and a second position. Roller assembly 600 also contains a plurality of actuators 610 coupled to the rolling elements for actuate the rolling elements 620 to move between the first position and the second position. In the first position, the plurality of rolling elements 620 are recessed entirely beneath the table surface 530 so that a workpiece placed upon the table surface 530 can rest flat thereon. In the second position, at least a portion of the plurality of rolling elements 620 is disposed above the table surface so that the rolling elements engage a workpiece resting on automation table 500, allowing it to be easily rolled on and off the table surface 530. The rolling element can move between the first position and the second position by translating vertically through an aperture of the plurality of apertures 520 on the table surface 530.
[0260] The plurality of rolling elements may be configured to rotate about a single axis. In some embodiments, a first rolling portion of the plurality of rolling elements are configured to rotate about a first axis, and a second rolling portion of the plurality of rolling elements are configured to rotate about a second axis. This may enable translation of workpieces about two axes. For example, the first and second axis may be orthogonal to one another.
[0261] In some embodiments, a first portion of the plurality of rolling elements can move to a first height in the second position and a second portion of the plurality of rolling elements can move to a second height in the second position.
[0262] Reference is next made to FIG. 7, which shows a close-up detail view of example rolling elements 620a and 620b of the plurality of rolling elements 620 and an actuator 610a of the plurality of actuators 610. Actuator 610a may contain a pneumatic cylinder 704 configured to drive a linear shaft 702 in a linear fashion using compressed air. However, any kind of actuator capable of producing a linear displacement can be produced, such as a linear solenoid actuator, or an electrical motor connected to a rack and pinion mechanism. Actuator 610a may be rigidly secured to the bottom of table surface 530 by a mounting bracket 626. The roller assembly 600 may also contain a plurality of connection rods 714, operable to connect various linkage assemblies together such that the rolling elements 620 can move in synchrony.
[0263] Linear shaft 702 may be coupled to a linkage assembly 710. The linkage assembly may be operable to convert a linear displacement in one axis into a linear displacement along another axis. In this way, a linear shaft 702 translating along a horizontal axis may cause rolling elements 620 to translate along a vertical axis to move between the first position and the second position using linkage assembly 710.
[0264] A linear actuator 610 may be coupled to one or more rolling elements 620. Reference is made to FIGS. 8a and 8b, which shows a profile view of an example actuator 610 connected to example rolling elements 620a, 620b through linkage assemblies 710a, 710b, respectively. Specifically, actuator 610 is coupled to linkage assembly 710a through floating coupling 806a. The translation of linear shaft 702 driven by pneumatic cylinder 704 and may be translated into a vertical displacement of rolling element 620a. FIG. 8a shows rolling element 620a in the second position, where a portion of rolling element 620a protrudes through aperture 520a and is disposed above the table surface 530. FIG. 8b shows rolling element 620a in the first position, wherein the rolling element 620 is fully disposed beneath table surface 530.
[0265] Linear actuator 610 may be coupled to a second rolling element 620b. As shown in FIGS. 8a and 8b, linear shaft 702 is further coupled to linkage assembly 710b,which is operable to convert a horizontal translation of linear shaft 702 to a vertical translation of rolling element 620b in the same fashion as rolling element 620a. As rolling element 620b is located at a greater distance from actuator 610 than rolling element 620a, linkage shaft 710b may be coupled to linear shaft 710 through an extension rod 712b. Extension rods 712 may be supported by bushings 804 configured to guide the axial translation of the extension rods 712. The ends of extension rods 712 may contain a limiter 802, configured to stop the translation of linear shaft 702 in a direction at a certain point. For example, as shown in FIG. 8a, limiter 802 is configured to impede the further movement of linear shaft 702 at a certain translation distance by contacting bushing 804a. The translation distance may correspond to a distance such that rolling elements coupled to the actuator are in the second position (i.e. , having a portion raised above the table surface 530).
[0266] In some embodiments, at least one of the actuators in the plurality of actuators 610 may be connected to a third rolling element. For example, referring back to FIG. 6, actuator 610c may be connected to rolling elements 620e, 620f, and 620g (partially shown). As shown, connecting rod 714 may be used to connect rolling elements that are not located near any actuator to other rolling elements. For example, rolling element 620f, which has no actuator nearby, may be actuated by actuator 610c by means of being coupled to rolling element 620e through connecting rod 714.
[0267] In some embodiments, the automation table 500 may be constructed of ferromagnetic materials for use with magnetic fixtures for fixing and aligning workpieces with the table surface 530. In some embodiments, the automation table may be magnetic itself, for example, by being constructed of magnetic materials or by operation of an electromagnetic system embedded in the table surface 530.
[0268] In some embodiments, a controller may be provided, configured to send an actuation signal to the plurality of actuators based on an input signal. The plurality of actuators may then be configured to actuate the plurality of rolling elements based on the actuation signal. For example, the actuators may be connected to a relay, which energizes when the actuation signal is sent.
[0269] In some embodiments, each of the rolling elements 620 may be actuated independently. For example, this may be useful where a magnetic fixture is placed directlyon top of a rolling element 620, creating the potential for damage to the rolling element 620. In this case, the controller may identify the presence of the magnetic fixture on top of the rolling element 620 and determine not to actuate that rolling element 620. In some embodiments, the default may be to extend all rolling elements 620 simultaneously if no magnetic fixtures are determined to interfere with any rolling elements 620.
[0270] In some embodiments, each of the rolling elements 620 may be powered individually. For example, a controller may be provided to control the supply of power to each of the rolling elements 620. This may permit certain rolling elements 620 to perform powered rotations, while others remain idle. This may be useful where the floor panel is being passed between the first station 5510, second station 5520, and third station 5530 of FIG. 55. For example, if the length of a station exceeds the length of the floor panel, then rolling elements 620 may be selectively powered based on the location of the floor panel to cause the floor panel to advance forward or backward and accelerate or decelerate. In some embodiments, leading and trailing edge detection of the floor panel may be used to locate the floor panel within the automation table 500.
[0271] The individual supply of power to the rolling elements 620 may also be useful upon detection of a potentially damaging load. For example, if the rolling elements 620 are subject to a load exceeding a predetermined weight threshold, this may cause a stall or overcurrent fault at the controller. The predetermined weight threshold may be, for example, the maximum allowable weight of a floor panel distributed across the plurality of rolling elements 620. In accordance with such an embodiment, it may be determined at the controller that a certain rolling element 620 or group of rolling elements 620 have been subjected to a load exceeding the predetermined threshold. The controller may then register a stall or overcurrent fault and cause a particular subset of rolling elements 620 to stop rotating. This subset of rolling elements 620 may be equivalent to the rolling element 620 or group of rolling elements 620 or may encompass a larger or smaller subset of rolling elements 620. Intervening actions may then be made. This may include, for example, causing the rolling elements 620 to return to the first position, generating a notification that this fault has occurred, and / or causing the floor panel to be removed from the automation table 500.
[0272] The powered rolling elements 620 may include roller drives and may be powered, for example, by motors, gearmotors, servos, or pneumatic / hydraulic systems. In some embodiments, certain rolling elements 620 may be powered rollers while others may be idler rollers. The powered rolling elements 620 may be selectively positioned to enable effective yet energy-saving operations. The powered rolling elements 620 may be arranged in any suitable configuration, including but not limited to: consecutively along the automation table 500; in alternating positions such that every other rolling element 620 is powered; in groups of two or more powered rolling elements 620 interspersed with non-powered rollers; or in any other suitable configuration.
[0273] In some embodiments, one or more floor panels may be passed between stations by controlling one or more sets of jog controls each controlling certain groups of rolling elements 620, respectively. In an embodiment, one set of jog controls may be associated with each station. In an embodiment, one set of jog controls may be associated with one rolling element 620 or a particular subset of rolling elements 620 which may or may not be located adjacent to one another.
[0274] In some embodiments, the jog control may transition between three selections: HOME, UP, and JOG ON. In the HOME position, the jog control may cause the rolling elements 620 remain unactuated below the table surface 530. In the UP position, the jog control may cause the rolling elements 620 to actuate above the table surface 530. In the JOG ON position, the jog control may supply power to the rolling elements 620 so that they may rotate about their respective axes.
[0275] In some embodiments, the jog control may further transition between various other selections when JOG ON is selected: FORWARD, REVERSE, and OFF. Where FORWARD is selected, the jog control may cause the floor panel to be advanced forward. Where REVERSE is selected, the jog control may cause the floor panel to be advanced backward. Where OFF is selected, the jog control may cause the rolling elements 620 to remain idle. In accordance with some of the embodiments herein, it should be understood that forward means towards the third station 5530 and backward means towards the first station 5510.
[0276] In some embodiments, there may be sensors located along the automation table 500 detecting the location of the floor panel. In accordance with some embodiments, where the jog controls are associated with stations individually, if it is determined that the floor panel has advanced completely out of a station, the FORWARD and REVERSE jog controls associated with that station may be inhibited. Similarly, if it is detected that a floor panel in an adjacent station has not fully exited that station, the FORWARD and REVERSE jog controls in the present station may be inhibited so as to prevent the floor panel from advancing to that adjacent station, avoiding interference between floor panels.
[0277] In some embodiments, jog controls in adjacent stations may be controlled in unison. For example, where a floor panel is being passed between the first station 5510 and the second station 5520, the rolling elements 620 of the two stations may be controlled to rotate synchronously until the floor panel has cleared the first station 5510, after which the rolling elements 620 of the first station 5510 may stop rotating and the rolling elements 620 of the second station 5520 may gradually decelerate to bring the floor panel to a stop.
[0278] In some embodiments, once a floor panel has been relocated to the desired location, the jog control may need to be transitioned to a HOME setting. For example, a prompt may be triggered by visual or audio notification, including, but not limited to, a prompt on a user interface, blinking light indicators, automated speech notification, or a sound indication otherwise. Causing the jog controls to return to HOME may cause the rolling elements 620 to return below the table surface 530 so that assembly tasks to be performed on the floor panel may resume.
[0279] In some embodiments, prior to a floor panel being passed from one station to another, a confirmation may be required that the floor panel is clear to extract. For example, an operator (e.g., human operator, robotic system operator, or any other automated operator) may be prompted by a visual or audio indicator requiring the operator to interact and confirm before jog controls may be initiated. For example, this would ensure that a check is done to clear the floor panel of debris and magnetic fixtures that may interfere with passing a floor panel between stations.
[0280] In some embodiments, the automation table 500 may include a pushing member. The pushing member may be configured work in conjunction with the plurality ofrolling elements 620 to move floor panels between stations. For example, the pushing member may be used to automatically push a floor panel across the second station 5520 and third station 5530, but stop when sensors detect the floor panel has reached the first rolling element 620 of the third station 5530. The floor panel may then be jogged manually to clear the second station 5520 and transition to the third station 5530.
[0281] In some embodiments, the automation table 500 may include an additional set of rolling elements 620 at the forward end of a station. This additional set of rolling elements 620 may be powered, and may be, for example, roller drives. The additional set of rolling elements 620 may be useful in assisting with transport of floor panels between stations, allowing for precise control. In an embodiment, the additional set of rolling elements 620 may be raised. In an embodiment, power to the additional set of rolling elements 620 may be shut off automatically upon detection by sensors on the adjacent station that the floor panel has cleared. For example, a sensor may be positioned at the falling edge of the adjacent station and a determination may be made that the panel has cleared once the floor panel passes the sensor completely. While it is described that there may be one additional set of rolling elements 620, it should be understood that there may be any number of additional rolling elements 620. It should also be understood that the additional set of rolling elements 620 may alternatively be idler rollers.MATERIAL ALIGNMENT AND NAILING ASSEMBLY
[0282] Reference is next made to FIGS. 9, 10, and 11 , which show an example material alignment and nailing assembly 900 for fastening a second workpiece to a first workpiece in accordance with presently described embodiments. The assembly 900 may be operable to correct bowing, warping, or any other type of misalignment in workpieces such as joists and framing members during fastening operations, such as the tacking of subfloor sheets to framing members. The correction of the misalignment may reduce assembly, fit- up, and / or installation issues at a later time in a completed item’s lifecycle.
[0283] Material alignment and nailing assembly 900 contains a structural frame 902 for supporting and connecting the components of the assembly 900, which structurally supports a nailing subassembly 910, a gripping subassembly 920, an interface component 904, an electronics component 906, and a nailing subassembly actuator 930. Grippingsubassembly 920 contains a first gripper paddle 922, a second gripper paddle 924, gripper frame 928, and a paddle actuator 926. Panel 932 is shown that covers a part of the frame 902 near the nailing subassembly 910, gripping subassembly 920, and nailing subassembly actuator 930. Material alignment and a nailing assembly 900 may be used as a robotic end- of-arm tool, connecting to the end of a robotic arm through interface component 904. Material alignment and nailing assembly 900 may be used for aligning a workpiece so that it can be nailed along a specified alignment axis 940. The workpiece may be intended to run colinearly with the alignment axis 940 but may be misaligned at certain points with respect to the axis. The misalignment may arise from any cause that may give rise to a misalignment, including, but not limited to, a natural warping or curvature of the material or a manufacturing imperfection.
[0284] For example, FIG. 15 shows a view 1500 of the material alignment assembly 900 of FIG. 1 in an example scenario where the assembly is in use. Cover 932 is not shown on material alignment assembly 900 in view 1500. Cover 932 may be removable, which may be advantageous for maintenance, troubleshooting, and debugging. A first workpiece, such as a wooden floor joist 1502, may be intended to run in a straight line along alignment axis 940 and be nailed to a second workpiece 1504. The first workpiece may be a lumber floor joist. The second workpiece 1504 may be a plywood subfloor sheet. A nail may need to be driven through the first workpiece 1502 and the second workpiece 1504 to fix the first workpiece 1502 and second workpieces 1504 together at a nailing point 1510 located along the alignment axis 940. While first workpiece 1502 may be intended to run in a straight direction along alignment axis 940, it may, in some instances, be slightly misaligned with respect to alignment axis 940. In cases where the workpiece is constructed of wood, the misalignment may stem from, for example, warping from exposure to humidity and temperature changes. As a result of this misalignment, even if the first workpiece 1502 appears to be running parallel to alignment axis 940 at some points along the axis, it may not remain colinear with alignment axis 940 throughout its length, such as at point 1510. As will be described in more detail, the components of material alignment assembly 900 may cooperate to bring the first workpiece 1502 into alignment with the alignment axis 940 so as to fix first workpiece 1502 to the second workpiece 1504 at point 1510 in an appropriately aligned manner.
[0285] Referring back to FIGS. 9 and 10, interface component 904 may contain electronic and mechanical components for connecting, interfacing, and communicating between a robotic arm and the material alignment assembly 900. Interface component 904 may be any component that allows a robotic arm to connect to the material alignment assembly 900 and allows the material alignment assembly 900 to connect to a source of data, power, and pneumatics from the robotic arm. For example, commercially available automatic tool changer systems from ATI, Staubli, RSP, and Destaco can be used.
[0286] Electronics component 906 may contain a combination of electronic components for the operation of the assembly 900. Electronics component 906 may contain components for sending, receiving, and processing data. Electronics component 906 may contain components for supplying power to the assembly 900. Electronics component 906 may additionally contain components for control and operation of other components, such as paddle actuator 926 and nailing subassembly actuator 930. Electronics component 906 may be electrically connected to gripper subassembly 920 to deliver power to components such as, for example, to DC motor 1002 for driving the actuator 926. Electronics component 906 may contain control circuitry operable to control electrical drives used in assembly 900 such as DC motor 1002. The control circuity may further be operable to receive external control signals, for example, from an external robot controller via interface device 904, and convert the external control signals into control signals for controlling various actuators and drives in assembly 900, such as the gripper actuator and the nailing subassembly actuator. Electronics component 906 may further contain control equipment for mechanical sources of energy, such as compressed air, which may be used to control equipment that is driven by such energy sources such as nailing subassembly actuator 930 or nailing subassembly 910.
[0287] Nailing subassembly 910 may be configured to fix a first workpiece and a second workpiece together by driving a fastener through the first and second workpieces. Nailing subassembly 910 may contain a nailgun component 912 and a magazine component 914. Nailgun component 912 may contain a driving mechanism for driving fasteners into a substrate. The driving mechanism may be powered by pressurized air, but it should be noted that nailgun 912 can use other types of power sources, such as electrical power, to power the driving mechanism. Nailgun component 912 may be connected to a source of pressurized air through interface component 904, or through some other external means of connectionto a source of pressurized air. Magazine component 914 is attached to nailgun component 912. Magazine component 914 may configured to store a plurality of fasteners for use by nailgun component 912, or to extend the existing fastener storage capabilities of the nailgun component 912. Magazine component 914 may contain a biasing mechanism, such as a spring, to urge the fasteners toward the driving mechanism such that new fasteners can be loaded into the nailgun component 912 upon the discharge of the previous fastener into the substrate to be fastened. Magazine component 914 may also be angled to allow gravity to facilitate the loading of the nailgun component 912.
[0288] Nailing subassembly 910 may be movably connected to frame 902 via a translational connection configured to permit relative linear motion along nailing axis 1530, which is the axis along which nailing subassembly 910 drives its nails. The translational connection may comprise a guide mechanism, such as a rail-and-groove system, linear bearing assembly, or a similar structure to facilitate controlled linear displacement of the nailing subassembly 910 with the frame 902. Referring to FIG. 15, which shows the connection between nailing subassembly 910 and frame 902 in accordance with some embodiments, nailing subassembly 910 is rigidly connected at opposing ends to carriage assemblies 1526, 1528, which are slidably connected to rails 1520 and 1522, respectively. Rails 1520 and 1522 are aligned along a direction colinear to nailing axis 1530, permitting translational motion of the nailing assembly 910 colinearly with nailing axis 1530 and constraining the movement of the carriage assemblies in all other directions.
[0289] Nailing subassembly 910 may also be rigidly connected to crossbar 1524, which is in turn connected to nailing subassembly actuator 930. Nailing subassembly actuator 930 may be configured to actuate crossbar 1524 up and down colinearly with nailing axis 1530, which in turn results in moving the nailing subassembly 910 up and down relative to the rest of frame 902, and, accordingly, relative to gripping subassembly 920, along rails 1520 and 1522. In the embodiments shown in FIGS. 9-17, nailing subassembly actuator 930 is shown as a pneumatic cylinder, but it should be appreciated that actuator 930 can include any actuation means capable of producing linear motion, including electrical and hydraulic mechanisms.
[0290] Gripping subassembly 920 may be configured to bring a misaligned workpiece into alignment with alignment axis 940 for nailing by the nailing subassembly 910. Gripping subassembly contains a gripper frame 928, a first gripper paddle 922, a second gripper paddle 924, paddle actuator 926, and gripper motor 1002. The gripper frame 928 is rigidly connected to frame 902 and supports various components of the gripping subassembly, such as the paddle actuator 926, which is rigidly fixed to the frame 902. First and second gripper paddles 922 and 924 are slidably connected to the paddle actuator 926 such that the paddles 922 and 924 can translate along a closing axis 950, which is perpendicular to the alignment axis 940. Paddle actuator 926 may be configured to actuate the first and second gripper paddles in an opposable manner and at equal speed. Each gripper paddle may be actuated to move by an equal but opposite amount every time, such that the paddles 922, 924 only move either towards each other or away from each other at constant speed. Paddle actuator 926 may be configured such that the motion of paddles 922, 924 are mechanically interconnected with one another so that they can only move in the prescribed manner (i.e., opposable and at equal rate), or may be configured that each paddle 922, 924 are theoretically free to move independently from one another, but are controlled such that they only move at equal speed towards or away from one another. Gripper actuator contains an electric motor 1002 for driving the actuator 926, although any kind of actuator that can produce linear motion may be used, including pneumatic and hydraulic based actuators. Paddle actuator 926 may contain, for example, one or more linear ball screw mechanisms for moving the paddles, and electric motor 1002 may contain one or more DC motors that drive the ball screw mechanisms to move the paddles 922, 924. For example, a single DC motor may be connected to a gearbox that drives two ball screws simultaneously but in opposite directions, so that the paddles are fixed to move at constant and opposite velocity relative to one another. In other implementations, multiple DC motors may be used, each connecting to one ball screw mechanism.
[0291] Gripper paddles 922 and 924 are configured to close in on a misaligned workpiece and bring workpiece into alignment. Gripper paddles 922 and 924 may be made of any rigid material for that purpose, as long as the material contains suitable durability to manipulate, e.g., wooden joists, into alignment. Gripper paddles 922 and 924 may be shaped such that a substantially flat surface is provided along a plane defined by the alignment axis940 and the nailing axis 1530 on the face of the respective paddle facing the alignment axis. Gripper paddles 922 and 924 may be positioned such that the paddles are centered over the alignment axis and the gripper paddles close in on the alignment axis as they move towards one another. As shown in FIG. 14, a first distance 1412 between the first paddle 922 and alignment axis 940 will remain constantly equal to a second distance 1414 between the second paddle 924 and the alignment axis 940 as the two paddles move towards each other. In this way, the gripping subassembly 920 may grasp a misaligned workpiece by securely enclosing the misaligned material between the first and second paddles 922, 924, as they close on the alignment axis 940. It can be seen that, through this operation, a workpiece that is originally deviant from the alignment axis 940 will be brought into alignment during the course of this operation. FIG. 12 shows gripper paddles 922, 924 in an open position and FIG. 13 shows gripper paddles 922, 924 in a closed position.
[0292] In some embodiments, material alignment and nailing assembly 900 may switch between a first mode of operation and a second mode of operation. The first mode of operation may involve the nailing subassembly and gripping subassembly operating cooperatively to align and fasten a first workpiece to a second workpiece. The second mode of operation may involve using only the nailing subassembly 910 to fasten a first workpiece to a second workpiece. The second mode of operation may be necessary when the nailing subassembly 910 is operable to nail an overlaying workpiece to an underlaying workpiece and the overlaying workpiece extends horizontally from the point of fastening by a sufficient amount such that the gripping subassembly 920 would impede the ability of nailing subassembly 910 to drive a fastener into the first and second workpieces.
[0293] To this end, nailing subassembly actuator 930 may be operable to reposition the nailing subassembly vertically such that a lowest point of the gripping subassembly is lower relative to a nailing end of the nailing subassembly when the material alignment and nailing assembly operates in the first mode of operation. Conversely, nailing subassembly actuator 930 may be operable to reposition the nailing subassembly such that a lowest point of the gripping subassembly is higher relative to a nailing end of the nailing subassembly when the material alignment and nailing assembly operates in the second mode of operation. The repositioning may be in response to a received signal from an external controller, suchas a controller operating the robotic arm connected to the assembly 900 through interface device 904.
[0294] FIGS. 11 , 12, and 13 show material alignment and nailing assembly 900 in the second mode of operation. As shown in FIG. 11 , a lowest point 1102 of the gripping subassembly 920 is higher relative to a nailing end 1104 of the nailing subassembly 910. This mode of operation allows nailing subassembly 910 to perform nailing operations even when the gripping subassembly 920 would otherwise get in the way, such as when a substantial amount of an overlaying workpiece extends horizontally from the point of fastening.
[0295] In some embodiments, nailing subassembly 910 may be configured to translate horizontally to allow minor horizontal adjustments to be made to the nailing point 1510. Reference is made to FIG. 42A, which shows an exploded view of an example material alignment and nailing assembly 900 with frame 902 hidden so as to make various internal components visible. A horizontal translation mechanism 4200 is shown for allowing nailing subassembly 910 to translate horizontally. Horizontal translation mechanism 4200 may contain a horizontal offset actuator 1110 and a rail mechanism 1120a, 1120b. Nailing subassembly 910 may be mounted to rail mechanism 1120a, 1120b, which may contain of a pair of guided rails configured to allow movement in a direction parallel to the closing axis 950. Horizontal offset actuator 1110 may operate to move the nailing subassembly 910 along rail mechanism 1120a, 1120b. Nailing subassembly 910 may be free to translate in a horizontal direction parallel to the closing axis 950 in addition to being movable in a vertical direction along nailing axis 1530. To this end, nailing subassembly may be movable by both pneumatic nailing subassembly actuator 930 and horizontal offset actuator 1110. For example, as shown in FIG. 42A, nailing subassembly 910 may be coupled to frame 902 through an internal mounting frame 1130. Internal mounting frame 1130 may be coupled to pneumatic nailing subassembly actuator 930 through crossbar 1524. Internal mounting frame 1130 may also be coupled to horizontal offset actuator 1110. Internal mounting frame 1130 may then be moved by the operation of pneumatic nailing subassembly actuator 930 as well as horizontal offset actuator 1110, which correspondingly moves the nailing subassembly 910.
[0296] Horizontal translation mechanism 4200 may facilitate the ability of the nailing subassembly to drive a fastener by an offset amount (for example, 10mm) in either direction from the alignment axis. Said ability may be useful in situations when an edge of the second overlaying workpiece comes too close to the alignment axis.
[0297] Referring now to FIGS. 42B-42D, perspective and cutaway views of example material alignment and nailing assemblies in accordance with some embodiments are shown. In accordance with such embodiments, the locations of the horizontal offset actuator 1110, horizontal translation mechanism 4200, rail mechanism 1120a, 1120b, nailing subassembly actuator 930, and crossbar 1524 may vary. As shown in FIGS. 42B-42D, the material alignment and nailing assembly 900 may be attached to the interface component 904, which permits the assembly to be attached to a robotic arm and swapped.
[0298] For example, as shown in FIGS. 16a and 16b, nailing subassembly 910 may be in a nominal position, in which it is centered over alignment axis 940. Nailing subassembly 910 may then be configured to drive a fastener into the workpieces 1504 and 1502 at a location that is in alignment with axis 940. In such instances, no offset may be necessary. FIG. 16a shows a profile view of assembly 900. FIGS. 16b, 16c, and 16d shows the same view of assembly 900, but with frame 902 translucent, allowing various internal components to be shown, such as actuator 1110 and rail mechanism 1120a, 1120b.
[0299] Referring to FIGS. 16c and 16d, the second workpiece 1504 (e.g. a subfloor sheet) may overlay a first workpiece 1502 (e.g., a joist), but may only extend halfway across the width of the first workpiece. In such a scenario, a fastener driven exactly on the alignment axis may have limited ability to secure the two workpieces together. Instead, an offset in a direction may be advantageous to ensure that there is sufficient material for the fastener to engage with for securing the workpieces together.
[0300] Horizontal offset actuator 1110 may be configured to translate the nailing subassembly 910 horizontally parallel to the closing axis 950. In some embodiments, nailing subassembly 910 may be configured to translate between a first, second, and third position, which may be enabled by the horizontal nailing actuator 1110. For example, horizontal offset actuator 1110 may be a 3-position pneumatic cylinder.
[0301] The mechanism may be configured such at, when the 3-position pneumatic cylinder is in the first position (which may, in some embodiments, be a fully retracted position), the tip of nailgun component 912 sits laterally offset from the alignment axis 940 by a first lateral offset amount (which may be a relatively small displacement such as, e.g., ~10mm) in a direction towards the interface component 904. The nailgun component 912 may then be configured to drive a fastener securing the workpieces together at a location offset from alignment axis 940 by the first lateral offset amount, in the direction towards the interface component 904. For example, FIG. 16d shows an example embodiment of assembly 900 in which actuator 1110 may be in the first position. As shown, the barrel of the nailgun component is offset with respect to axis 940 in a direction towards interface component 904.
[0302] When the 3-position cylinder is in the second position (which may, in some embodiments, be a partially extended position), the tip of nailgun component 912 may sit directly in line with alignment axis 940. The nailgun component 912 may then drive a fastener into the workpieces at a location on the alignment axis. For example, FIGS. 16a and 16b show an example embodiment of assembly 900 in which actuator 110 may be in the second position. As shown, the barrel of the nailgun component is aligned with respect to axis 940. In some embodiments, the second position may be the nominal position for the nailing subassembly 910.
[0303] When the 3-position cylinder is in the third position (which may, in some embodiments, be a further extended position, or a fully extended position), the tip of nailgun component 912 may sit offset from the alignment axis 940 by a second lateral offset amount (which may be a relatively small displacement such as, e.g., ~10mm) in a direction away from interface component 904. The nailing subassembly may thereby be configured to drive a fastener fixing the first and second workpieces together at a location offset from the alignment axis 940 by a second lateral offset amount. For example, FIG. 16c shows an example embodiment of assembly 900 in which actuator 1110 may be in the third position. As shown, the barrel of the nailgun component is offset with respect to axis 940 in a direction away from interface component 904.GLUE DISPENSING ASSEMBLY
[0304] Reference is next made to FIG. 18, which shows an example glue dispensing assembly 1800 in accordance with presently described embodiments. Glue dispensing assembly 1800 may be configured to dispense a quantity of glue out of a glue canister 1834 for applying glue onto a substrate. Glue dispensing assembly 1800 may be a robotic end-of- arm tool operable to be attached to a robotic arm through interface component 1850. In operation, the glue dispensing assembly 1800 may be moved by the robotic arm to various locations to dispense quantities of glue thereon for joining workpieces together as a part of an assembly process. Glue dispensing assembly 1800 may be used in assembly applications such as the installation of subfloor sheathing, which may require specialized adhesive to be applied at a joint between the underside of a subfloor sheet and a top of a framing member. The glue may be used in an assembly process in tandem with mechanical fasteners, such as screws or nails, to securely fasten the subfloor sheet to the framing member. In some applications, the addition of glue may create a more robust joint than the use of only fasteners. The use of glue may also result in the construction of floor assemblies with reduced occurrence of squeaking. The use of an automated glue dispensing system may facilitate improved consistency in glue application, reduce labor-intensive work, and improve quality control for constructed assemblies.
[0305] Glue dispensing assembly 1800 may contain an interface component 1850, which may be configured to facilitate a connection between a robotic arm and the glue dispensing assembly 1800. The connection may be mechanical in addition to electrical. Interface component 1850 may provide power and data connectivity from the robotic arm for powering glue dispensing assembly 1800 and sending and receiving data between the robotic arm and the glue dispensing assembly 1800. Commands for operating the glue dispensing assembly 1800 may be received through interface component 1850. For example, the commands may be generated by an external controller and relayed through the connected robotic arm through interface component 1850.
[0306] Glue dispensing assembly 1800 may be configured to automatically reload itself with a replacement glue canister from a plurality of replacement glue canisters, the replacement glue canister being substantially identical to the glue canister 1834, when glue canister 1834 has become fully depleted. Glue canister 1834 may be a standard-sized, commercially available, off-the-shelf construction adhesive canister. The glue canister 1834may be configured to dispense glue when an external force is applied upon it. To this end, the glue canister 1834 may contain some volume of glue within an internal reservoir and may contain some deformable member operable to change the volume of the internal reservoir when the external force is applied to it. Glue canister 1834 may deform to reduce the volume of the internal reservoir under an applied pressure, but may also deform to expand the volume of the internal reservoir, for example, under a pulling force or vacuum. Glue canister 1834 further includes a dispensing end which may contain an outlet such as, for example, a nozzle or an aperture. For example, as shown in more detail in FIGS. 19a and 19b, which show various views of a plurality of replacement glue cylinders 1832 in a replacement glue holder subassembly 1830, the glue canisters can be shaped like a rigid, elongated cylindrical tube. One end of the tube contains a nozzle 1902 for dispensing glue, and the other end contains a rigid deformable component 1904 that can reduce the volume of the cylinder’s internal glue reservoir when pressure is applied to push the deformable component inwards, but can also increase the volume of the cylinder’s internal glue reservoir when the deformable component is pulled back.
[0307] Reference is next made to FIG. 24, which shows a close-up view of an example extension subassembly 1810 in accordance with embodiments of the present disclosure as well as various components coupled thereto, in conjunction with FIG. 18. Glue dispensing assembly 1800 contains a structural frame 1802 for supporting and connecting various components of assembly 1800. The frame 1802 extends substantially longitudinally along a longitudinal axis 1808 from a first end 1804 to a second end 1806. Glue dispensing assembly 1800 also contains an extension subassembly 1810, a precision dispensing subassembly 1820, a suction mechanism 1860, a basket 1870, a dispense zone assembly 1840, a replacement glue holder subassembly 1830, and interface component 1850.
[0308] Extension subassembly 1810 may be configured to facilitate the automated loading and reloading of glue canisters during operation of glue dispensing assembly 1800. Extension subassembly 1810 may be coupled to various components of the glue dispensing assembly 1800, such as precision dispensing subassembly 1820, glue canister separation mechanism 1872, basket 1870, and suction mechanism 1860. Extension subassembly 1810 may be operable to correspondingly move said components along longitudinal axis 1808 when extension subassembly 1810 extends and retracts. The extension subassembly 1810may contain a first linear actuator 2402, an extending shaft 2404, and a movable platform 2406. The first linear actuator 2402 may enable the extension and retraction of extending shaft 2404. For example, the first linear actuator 2402 may include a pneumatic cylinder operable to use a pressurized air source to extend the extending shaft 2404 from a first extending position to a second extending position. The movable platform 2406 may be movably coupled to linear actuator 2402 through extending shaft 2404. The movable platform 2406 may be fixed to and may translate along directions parallel to axis 1808 in accordance with the extension and retraction of extending shaft 2404. Aforementioned components that are coupled to the extension subassembly 1810, such as precision dispensing subassembly 1820, glue canister separation mechanism 1872, and basket 1870, may specifically be coupled to the movable platform 2406, allowing said components to move along with the movable platform 2406.
[0309] Extension subassembly 1810 may be configured to extend and retract along axis 1808 from a first extending position to a second extending position. First extending position may be a position closer to the first end 1804 and second extending position may be a position closer to the second end 1806. Extension subassembly 1810 may be coupled to a basket 1870 for holding an active glue canister 1834, the active glue canister 1834 being oriented along the longitudinal axis 1808 and facing towards the second end 1806. As extension subassembly 1810 extends from a first extending position to the second extending position, basket 1870 moves from a loading position, where a replacement glue canister from the plurality of replacement glue canisters 1832 can be loaded into the basket 1870 to become the active glue canister, to a dispensing position, where the active glue canister 1834 may be loaded into dispense zone assembly 1840 to be used in dispensing glue onto a substrate. As extension subassembly 1810 retracts from the second extending position to the first extending position, the active glue canister 1834 can be ejected from the dispense zone 1840, allowing the empty basket 1870 to receive a new replacement glue canister from the plurality of replacement glue canisters 1832, which can then become the active glue canister for the next cycle in the operation of the glue dispensing assembly 1800.
[0310] The extension subassembly 1810 may further include an extension sensor, operable to sense an extension amount of the extending shaft 2404. The extension sensor may be any kind of sensor capable of detecting when a linear actuator has reached a certainposition, including, but not limited to, reed switches, optical sensors, linear encoders, limit switches, hall-effect sensors, and any other suitable type of sensor.
[0311] The extension sensor may be further operable to send a command to a robot controller to navigate the glue dispensing assembly to a nozzle cutting and membrane piercing station when the extension amount has reached an extension limit. For example, the extension sensor may be pre-programmed with an amount that indicates full extension of the extension subassembly 1810. Upon the extension sensor detecting the full extension has been reached, the extension sensor may send a command to a robot controller to move the glue dispensing assembly 1800 to the nozzle cutting and membrane piercing station for preparing the glue canister for operation.
[0312] Reference is made to FIG. 33 in conjunction with FIG. 18. FIG. 33 shows glue dispensing assembly 1800 resting on a mounting stand 3302. Nozzle cutting and membrane piercing station 3310 is shown mounted to mounting stand 3302. Nozzle cutting and membrane piercing station 3310 may contain a cutting section configured to cut a tip of the nozzle of glue canister 1834 when it is loaded for the first time, as fresh glue canisters may have a sealed nozzle that does not allow fluids to pass therethrough. Additionally, nozzle cutting and membrane piercing station 3310 may contain a piercing section configured to create a perforation in an internal barrier for the internal glue reservoir of glue canister 1834. The internal barrier may be, for example, a sheet of metallic foil disposed within the glue canister between the nozzle and the internal reservoir of glue.
[0313] Reference is next made to FIG. 34, which shows an example nozzle cutting and membrane piercing station 3310 in accordance with embodiments of the present disclosure. Particularly, the view focuses on a cutting section 3420 of the nozzle cutting and membrane piercing station 3310. Cutting section 3420 contains a blade assembly 3402 for cutting off a tip of nozzle 1902. Cutting section 3420 also contains a guide portion 3406 configured to guide the cut nozzle tips away from the blade assembly 3402 and into a nozzle tip deposit area 3404, where the nozzle tips that have been cut during operation can be collected and stored until manually cleaned out. Blade assembly 3402 may include a blade 3412 for cutting, a structure 3414 for blade 3412 to be affixed to, an aperture 3410 for inserting a nozzle 1902 to be cut, and a mechanism for actuating the blade 3412 to slicethrough the nozzle 1902 for cutting off the tip. For example, referring to the embodiment shown in FIG. 34, structure 3414 may be a rotating frame configured to rotate about an axis. The rotating frame may contain an aperture 3410 for nozzle 1902 to pass through. A blade 3412 may be disposed within the aperture 3410, arranged such that a sharp edge of the blade faces towards the nozzle 1902. When the structure 3414 rotates, the path of blade 3412 moves through the nozzle 1902, thereby cutting off any portion of nozzle 1902 intersecting the plane formed by the movement path of blade 3412.
[0314] The mechanism for actuating the blade may be a manual mechanism. For example, an operator could manually operate a rotating blade mechanism as described above to cut the tip of nozzle 1902. The mechanism may also include powered actuators. For example, an electric motor such as a servo or a DC motor may be used to rotate structure 3414. The mechanism could further include automatic sensing means to detect when a nozzle has been placed in the aperture 3410 and, if so, to engage the powered actuator to produce a cut.
[0315] FIG. 35 shows a section view of cutting section 3420 of nozzle cutting and membrane piercing station 3310. As shown, nozzle 1902 of canister 1834 is inserted into aperture 3410 of structure 3414. Structure 3414 is configured as a rotating cutter blade, operable to rotate about shaft 3502. A blade (not visible) is disposed within aperture 3410 of structure 3414, and may, when the structure 3414 rotates, operate to cut the nozzle 1902. The cut nozzle tip may then fall down guide 3406 into nozzle tip deposit area 3404.
[0316] FIG. 36 shows glue dispensing assembly 1800 operating to use nozzle cutting and membrane piercing station 3310 to create a perforation in an internal barrier of a glue canister loaded in the assembly 1800. Glue dispensing assembly 1800 may be moved, by a robotic arm coupled to glue dispensing assembly 1800, to piercing section 3610 after using the cutting section 3420 to cut the tip of the nozzle. An example piercing section 3610 of the nozzle cutting and membrane piercing station 3310 is shown. Piercing section 3610 may contain a piercing apparatus 3612 having an outer shell and an internal piercing device. The internal piercing device can be anything capable of producing a concentrated force at a point when pressured is applied to it, such as a rigid metallic needle or rod. In operation, the glue dispensing assembly 1800 may positioned such that the nozzle of the loaded glue canisteraligns with the piercing apparatus 3612. The forward movement of the glue dispensing assembly 1800 into piercing apparatus 3612 may then allow the internal barrier of the glue canister to contact the internal piercing device, creating a perforation that allows glue to flow from the glue canister.
[0317] Glue dispensing assembly 1800 contains a precision dispensing subassembly 1820 coupled to the extension subassembly 1810, configured to produce linear displacements in smaller and more precise increments for dispensing glue out of glue canister 1834. Precision dispensing subassembly 1820 may be disposed in between the glue canister and the extension subassembly 1810. Precision dispensing subassembly 1820 may operate when the extension subassembly 1810 has reached the second extending position and the glue canister 1834 has been loaded into the dispense zone 1840. Precision dispensing subassembly 1820 may contain a second linear actuator configured to facilitate the extension and retraction of precision dispensing subassembly 1820. For example, precision dispensing subassembly 1820 may contain an electrically driven ball-screw mechanism configured to convert rotations of an electrical motor into linear motion. The second linear actuator may be configured to deliver sufficient force to cause the glue canister 1834 to dispense glue. For example, up to 375 lbs of axial pressing force may be a recommended amount for some kinds of glue canisters, but the exact amount may depend on the exact requirements of the specific glue canister chosen. Precision dispensing subassembly 1820 may be operable to dispense a first quantity of glue onto a substrate when the glue dispensing assembly 1800 is in position by extending in a forward direction along the longitudinal axis 1808 from a first dispensing position to a second dispensing position, the first dispensing position being more proximal to the first end 1804, and the second dispensing position being more proximal to the second end 1806.
[0318] Once the first quantity of glue has been dispensed, the precision dispensing subassembly 1820 may operate to “snuff back” a second quantity of residual glue back into the glue canister 1834 by retracting from the second dispensing position to a third dispensing position. During this “snuff back” operation, the deformable component of glue canister 1834 may be attached to the precision dispensing subassembly 1820 by the suction mechanism 1860, as will be described in more detail below, allowing the deformable component of glue canister 1834 to increase the volume of an internal reservoir of glue of the glue canister 1834,thereby aspirating a quantity of glue through the nozzle of glue canister 1834. This “snuff back” operation may be advantageous to help minimize any quantity of residual glue that may be present on or hanging off of the nozzle of the glue canister, as this residual glue may present a risk of dripping undesirably from the nozzle as the glue dispensing assembly 1800 moves from one area to another. The third dispensing position is more proximate to the first end 1804 than the second dispensing position. The third dispensing position may only be a small distance away from the second dispensing position (e.g., in the range of 1 -10mm), as the quantity of residual glue that may need to be aspirated during the “snuff back” by the glue canister is typically small.
[0319] After the precision dispensing subassembly 1820 has retracted to the third dispensing position, the nozzle may be presumed to be sufficiently clean such that a risk of glue leakage has been reduced. The glue dispensing assembly 1800 can then be moved to a different location to dispense a second quantity of glue. The precision dispensing mechanism can then repeat the above steps to dispense further quantities of glue at further locations of interest. Generally, these steps may repeat until the glue canister is depleted, upon which time the precision dispensing subassembly 1820 may fully retract, and at which time the extension subassembly will also operate to retract into the first extending position, allowing a new glue canister to be reloaded into basket 1870.
[0320] Precision dispensing mechanism 1820 may include a dispense sensing mechanism configured to produce a signal when the glue canister has been fully dispensed. The dispense sensing mechanism could be a mechanism that monitors a degree of extension of the precision dispensing subassembly 1820. As the size of each replacement glue canister 1832 is substantially the same, a pre-determined extension distance of the precision dispensing subassembly 1820 can be associated with a full dispensation of the glue canister. Therefore, the dispense sensing mechanism may be configured to produce a signal when the precision dispensing subassembly 1820 has reached the predetermined extension amount. For example, the dispense sensing mechanism could be a motor encoder connected to the linear actuator of precision dispensing mechanism 1820.
[0321] Glue dispensing assembly 1800 contains a dispense zone assembly 1840, which may be configured to secure the glue canister 1834 in place during glue dispensingand facilitate the ejection of a glue canister 1834 when it has become depleted. The dispense zone assembly 1840 may be positioned at a sufficient distance from the replacement glue holder subassembly 1830 to minimize risks from leakage or blowout of glue from any glue canisters. Reference is made additionally to FIGS. 31 and 32. FIG. 31 shows a cross- sectional view of dispense zone assembly 1840 taken at section 1880, with glue canister 1834 disposed within a dispensing zone 3102 within the dispense zone assembly 1840, while FIG. 32 shows a cross-sectional view of dispense zone assembly 1840 taken at section 1880, with a fully extended precision dispensing subassembly 1820 and suction mechanism 1860 visible. The dispense zone assembly 1840 may contain a latch 3110 movably connected to the frame 1802 at an edge of dispensing zone 3102. The glue canister 1834 may become fully disposed at least when the extension mechanism is in the second extending position and the basket is in the dispensing position. In some embodiments, the glue canister 1834 may be substantially, but not fully, disposed within the dispensing zone 3102 when the extension mechanism is in the second extending position and the basket is in the dispensing position. In such cases, the precision dispensing mechanism 1820 may need to extend by a further distance to push the glue canister 1834 fully within the dispensing zone 3102.
[0322] The latch 3110 may be configured to move to a retracted position while the glue canister is moving forwards towards the second end 1806 so as to allow the glue canister to enter the dispensing zone (see, e.g., FIG. 30a). To this end, the latch may comprise a wedge-shaped front portion to contact the glue canister 1834 as the glue canister 1834 moves into the dispensing zone 3102. The wedge shape may enable the latch 3110 to move automatically into the retracted position upon contact with the glue canister. The latch 3110 may move to an extended position to engage with an edge of the glue canister 1834 to prevent the glue canister 1834 from moving in a backwards direction towards the first end 1804 upon the glue canister 1834 being fully disposed within the dispensing zone 3102. To facilitate the operation of the latch, dispense zone assembly may contain a biasing member 3112 connected to the latch 3110, configured to urge the latch into the extended position at all times. Biasing member 3112 may be, for example, a spring. The biasing strength of the biasing member is such that forward contact between the glue canister 1834 and the latch, due to, e.g., the geometry of the latch (e.g., being in a ramp or wedge shape), allows the latch 3110 to retract despite the urging from the biasing member 3112.
[0323] Dispense zone assembly contains an aperture 3120 located at a bottom side of the frame. The aperture 3120 may be suitably sized to allow the glue canister to eject therefrom upon the basket moving out of the dispensing zone 3120. The glue canister 1834 may be supported by the basket while the basket and the glue canister are in the dispensing zone 3102. However, as the basket retracts from the dispensing position to the loading position, the glue canister is prevented from retracting with the basket by operation of the latch 3110. Once the basket has fully retracted out of the dispensing zone, the glue canister is no longer supported from below by any structure and may thereby fall out of aperture 3120 by operation of gravity or another biasing member.
[0324] Dispense zone assembly 1840 may contain a pushing member 3114, configured to push the glue canister 1834 towards the aperture 3120 by applying a downward force upon the canister. Pushing member 3114 may contain one or more second biasing members, such as springs, for urging the pushing member downwards towards the glue canister. Additionally, the applied downward force may act to secure the glue canister from movement while the glue canister is disposed within the dispensing zone 3102 by pushing the glue canister against the basket 1870. As described above, once the basket 1870 has fully retracted from the dispensing zone 3102, the glue canister 1834, which is held in place by latch 3112, is no longer supported from below, allowing the pushing member 3114 to further urge the glue canister 1834 through the aperture 3120. Pushing member 3114 may contain a wedge-shaped portion that contacts glue canister 1834 as the glue canister moves into dispensing zone 3102. The wedge-shaped portion may allow the pushing member 3114 to retract as the glue canister moves while loading the springs of the second biasing members.
[0325] FIG. 27 shows a pivot assembly 2702 hingedly attached to the dispense zone assembly 1840. Pivot assembly 2702 may be positioned at a top side of dispense zone assembly 1840. As shown in FIG. 28, pivot assembly 2702 may pivot about a hinge to reveal an opening 2802, thereby allowing external access to glue canister 1832. This may be useful, for example, in scenarios of glue leakage or blowout.
[0326] Dispense zone assembly 1840 may be covered in a glue-protective material to protect against risks of leakage or blowout. For instance, parts that contain exposedaluminum may be sensitive to glue contamination, and PTFE tape can be used to line such materials to mitigate the effects thereof.
[0327] Dispense zone assembly 1840 may contain a clearance sensor 2710 to detect whether the previous glue canister has been ejected before allowing a new glue canister to enter the dispense zone assembly. The clearance sensor 2710 may be any sensor capable of detecting the presence of a glue canister. For example, sensor 2710 may be a laser sensor pointed at the glue canister such as the Keyence LR-Z250. operable to detect the presence of a solid object in its sight. Dispense zone assembly may also contain one or more consumable parts in areas that are at risk of glue contamination. For example, eject guides 2720 may be 3D printed parts that can be changed in the event of glue contamination.
[0328] Referring back to FIGS. 22a, 22b, 22c, 23, and 24, the precision dispensing subassembly 1820 may be coupled to the glue canister 1834 through a suction mechanism 1860 to allow the precision dispensing mechanism to pull back the glue canister and aspirate a residual quantity of glue at the nozzle of the canister. Suction mechanism 1860 may be configured to produce a suction to secure the glue canister 1834 to the precision dispensing subassembly. Suction mechanism 1860 may produce the suction to secure the glue canister to the precision dispensing subassembly at some time before the precision dispensing subassembly retracts to aspirate the residual quantity of glue, and may release the suction mechanism after the retraction is completed and the residual glue has been aspirated back into the glue canister.
[0329] Suction mechanism 1860 may include a suction cup member 2230 having a concave surface to facilitate the suction connection. Suction mechanism 1860 may be coupled to precision dispensing mechanism 1820 through a detachable coupling mechanism 2200, as shown in FIGS. 22a, 22b, and 22c, to facilitate quick release and replacement of portions of the suction mechanism 1860 in case of glue blowout or leakage. Detachable coupling mechanism 2200 may include a first piece 2210, which is connected to the suction cup member 2230, configured to mate with a second piece 2220, which is connected to the precision dispensing mechanism 1820. First piece 2210 may use J-channels to receive corresponding pegs positioned on the second piece 2220. Detachable coupling mechanism 2220 may additionally use a spring mechanism to urge the first piece 2210 and second piece2220 away from each other, engaging the J-channel mechanism. Suction mechanism 1860 may be connected to a source of vacuum. The source of vacuum may be connected to a source of vacuum through the detachable coupling mechanism, which enables fluid communication between the vacuum source and the suction cup. Alternatively, the source of vacuum could be directly connected to the suction cup member 2230 through an external tube or conduit.
[0330] FIG. 22a shows the detachable coupling mechanism 2200 in a first state of detachment. First piece 2210 is first pushed towards the second piece 2220. FIG. 22b shows the detachable coupling mechanism 2200 in a second state of detachment. First piece 2210 is rotated with respect to the second piece 2220, allowing the pegs of second piece 2220 to slide through the J-channels of the first piece 2210. FIG. 22c show the detachable coupling mechanism 2200 in a final state of detachment once the first piece 2210 is fully rotated with respect to second piece 2220. First piece 2210 can then be pulled straight away from second piece 2220 as the J-channels have now disengaged, allowing the two pieces to be separated.
[0331] Reference is next made to FIG. 19a, which shows a view of the replacement glue holder subassembly 1830 of FIG. 18 in accordance with some embodiments when viewed substantially from the second end 1806 towards the first end 1804. Reference is additionally made to FIG. 19b, which shows a view of the replacement glue holder subassembly 1830 wherein the rear of the assembly, i.e. , the side of assembly 1830 facing the first end 1804, is visible. Reference is additionally made to FIG. 18.
[0332] Replacement glue holder subassembly 1830 is configured to hold a plurality of replacement glue canisters 1832 for reloading the glue dispensing assembly 1800 upon depletion of the active glue canister 1834. Replacement glue holder subassembly 1830 may contain a rigid frame 1920 to support the glue canisters and various other components of the assembly 1830. Frame 1920 may be vertically arranged and may have an entrance end 1910 for adding new replacement glue canisters to the plurality of replacement glue canisters and a dispensing end 1912 for dispensing a replacement glue canister from the plurality of replacement glue canisters. Frame 1920 may be shaped to be wider at the entrance end 1910 and progressively narrow towards the dispensing end 1912. Entrance end 1910 may be sufficiently wide that multiple replacement glue canisters can fit side by side when loadingthe glue canisters in the assembly. Frame 1920 may be sufficiently sized to hold multiple glue canisters. The width of dispensing end 1912 may be such that only a single canister can fit through the singulation end 1912, ensuring that only one canister is dispensed to be loaded into basket 1870 at a time.
[0333] Frame 1920 may contain a plurality of rollers 1930 arranged on the sides of the frame to mitigate jamming by reducing friction between the canisters and the frame 1920 as replacement glue canisters 1832 move down the assembly from the entrance end 1910 to the singulation end 1912.
[0334] Replacement glue holder subassembly 1830 may also contain a sensor assembly to detect when it is empty. The sensor assembly may be configured to send a signal for notifying a system or operator that the glue holder assembly needs to be refilled. The sensor may be a laser sensor configured to detect the presence of a glue canister at the dispensing end. For example, the sensor could be a Keyence LR-Z250 laser sensor.
[0335] Referring back to FIG. 18, glue dispensing assembly 1800 contains a glue canister separation mechanism 1872 coupled to the extension subassembly 1810 through detachable links. Glue canister separation mechanism may be operable to block the glue holder assembly from dispensing a replacement glue canister as the basket moves away from the loading position. Specifically, the glue canister separation mechanism 1872 may be coupled to the extension subassembly 1810 and may extend to block the plurality of replacement glue canisters 1832 and create a vertical separation between the extension subassembly 1810 and the plurality of replacement glue canisters 1832. The glue canister separation mechanism may comprise a wedge-shaped front portion, the wedge-shaped front portion facing the second end 1806. The wedge-shaped front portion may, as it moves forward with the extension subassembly 1810, engage with a bottom edge of the plurality of glue canisters 1832 from the bottom and lift the plurality of glue canisters upwards, creating a separation for the duration that extension subassembly 1810 is extended, in addition to creating a blockage at the dispensing end to prevent any further dispensation of glue canisters. The glue canister separation mechanism 1872 may be further operable to allow a replacement glue canister from the plurality of replacement glue canisters to fall into the basket when the basket moves into the loading position. As the basket moves towards theloading position and the extension subassembly 1810 retracts, the glue canister separation mechanism 1872 correspondingly retracts until it is completely clear of the dispensing end of glue holder assembly 1830, allowing a replacement glue canister to drop into the bucket.
[0336] FIG. 25 shows a detail view of the glue canister separation mechanism 1872 and various detachable links. The detachable links 2502 may be configured to secure the glue canister separation mechanism 1872 to the extension subassembly 1810. Links 2502 may be quarter turn clamps configured to enable fast removal and cleaning of the separation mechanism 1872 in case of glue contamination.
[0337] FIG. 25 also depicts detachable links 2504 and 2506, which may be operable to securely couple basket 1870 to extension subassembly 1810. Links 2504 and 2506 may be configured as quarter turn clamps, similarly to link 2502, and may facilitate the removal of basket 1870 in the event of glue contamination. FIGS. 26 and 22 show further views of links 2504 and 2506 in an attached state operating to secure basket 1870 to extension subassembly 1820.
[0338] In some embodiments, glue dispensing assembly 1800 may contain two or more sensors for detecting the proper loading of glue canisters. For example, as shown in FIG. 23, glue assembly 1800 includes a sensor 2302 for sensing the rear of a glue canister and sensor 2304 for sensing a front portion of the glue canister to determine whether a glue canister has been successfully loaded. If neither sensor detects a glue canister, then a replacement glue canister may be stuck in the replacement glue holder subassembly 1830, in which case an alert may be generated. If only one sensor detects the presence of a glue canister, then it may be indicative of a mis-seated glue canister, in which case an alert may also be generated.
[0339] In some embodiments, a plastic sleeve may enclose parts of the glue dispensing assembly 1800, such as around shaft clamp 2610 and hose flange 2620 of FIG. 26, to prevent glue contamination into the precision dispensing mechanism.
[0340] In some embodiments, various other sensors may be provided to provide certain operational redundancies. For example, a motor torque sensor may control and monitor force applied at the precision dispensing mechanism for dispensing, snuff-back, and irregularity. As another example, a vacuum sensor may be provided, coupled to the suctionmechanism, to ensure that the suction has been successfully engaged, and if not, to generate an alert. For example, a Festo Vacuum Sensor Push-In 6mm 3pin M8 connector or another similar sensor may be used.
[0341] Reference is next made to FIG. 29A, which shows an example method 2900a for dispensing a quantity of glue from a glue canister onto a substrate using a glue dispensing assembly, the glue dispensing assembly being a robotic end-of-arm tool, the glue dispensing assembly comprising a frame extending from a first end to a second end along a longitudinal axis. Method 2900a may be performed with the glue dispensing assembly 1800 of FIG. 18. For the purposes of describing method 2900a, reference is additionally made to FIGS. 30a - 30f, which illustrate various stages of glue dispensing assembly 1800 carrying out method 1800 to dispense a quantity of glue from a glue canister 1834.
[0342] The method begins at 2902a with extending an extension subassembly comprising a first linear actuator, in a forward direction, the forward direction defined as extending from the first end towards the second end, along the longitudinal axis, from a first extending position to a second extending position. For example, as shown in FIGS. 30a, 30b, and 30c, extension subassembly 1810 may extend from first extending position 3002 to second extending position 3004. As extension subassembly 1810 extends, components coupled thereto, such as precision dispensing subassembly 1820, glue canister separation mechanism 1872, and basket 1870, move forward correspondingly.
[0343] As shown in FIG. 30a, at the first extending position 3002, basket 1870 is at a loading position, wherein a majority of basket 1870 is positioned beneath glue holder assembly 1830. Basket 1870 may thereby be in position to accept a replacement glue canister from the plurality of replacement glue canisters 1832 if there is no active glue canister 1834 in the basket at the time.
[0344] As shown in FIG. 30b, as the extension subassembly 1810 moves forward, glue canister 1834 is pushed forward by precision dispensing subassembly 1820 and suction mechanism 1860. Additionally, glue canister separation mechanism 1872 operates to lift and separate the plurality of replacement glue canisters 1832 from glue canister 1834. As glue canister 1834 moves forward into the dispense zone assembly 1840, latch 3110 retracts to allow glue canister 1834 to move into dispensing zone 3102 of dispense zone assembly 1840(see FIG. 31 ). Further, the second biasing member 3114 retracts to make way for the glue cylinder 1834 as the cylinder moves into dispensing zone 3102.
[0345] FIG. 30c shows the extension subassembly 1810 extended to the second extending position 3004. At this point, glue canister may be substantially disposed within dispensing zone 3102. In some embodiments, glue canister 1834 may be fully loaded into dispense zone assembly 1840 at this point without any further extension from precision dispensing subassembly 1820.
[0346] The method proceeds to 2904a with extending a precision dispensing subassembly coupled to the extension subassembly, the precision dispensing subassembly comprising a second linear actuator, in the forward direction along the dispensing axis, from a first dispensing position to a second dispensing position, to dispense the quantity of glue. For example, FIG. 30d shows the precision dispensing subassembly 1820 extended to an example second dispensing position. As shown, the example second dispensing position may be a fully extended position, associated with a fully dispensed glue canister. The first dispensing position is more proximate to the first end 1804 than the second dispensing position, and a relative difference between the first dispensing position and the second dispensing position depends on the quantity of glue that is to be dispensed for any particular application. By extending the precision dispensing subassembly 1820 to the second dispensing position from the first dispensing position, a force may be applied to the glue canister 1834, and an internal reservoir of glue of the glue canister 1834 may be reduced in volume, thereby dispensing a quantity of glue.
[0347] The method proceeds to 2906a with producing a suction, at a suction mechanism coupled to the precision dispensing subassembly, to secure the glue canister to the precision dispensing subassembly. For example, referring to FIG. 30d, upon the extension of precision dispensing subassembly 1820, the suction mechanism 1860 may engage to produce a suction to secure the precision dispensing subassembly 1820 to the glue canister.
[0348] The method proceeds to 2908a with retracting the precision dispensing subassembly in a backward direction, the backward direction being defined as extending from the second end to the first end, along the dispensing axis from the second dispensingposition to a third dispensing position to withdraw a residual quantity of glue. For example, FIG. 30e shows precision dispensing subassembly 1820 retracting to a third dispensing position from the second dispensing position shown in FIG. 30d. As suction mechanism 1860 may be secured to a deformable member of glue canister 1834 by way of suction, but canister 1834 cannot retract backwards due to the engagement of latch 3110, the internal volume of glue canister 1834 may increase, thereby withdrawing a residual quantity of glue that may be on or hanging off of the nozzle of canister 1834 back into the reservoir of the canister.
[0349] The method proceeds to 2910a with releasing a suction, at the suction mechanism, to release the glue canister from the precision dispensing mechanism after the retraction of the precision dispensing subassembly is completed. Upon completion of the “snuff back” operation described above, the suction may be released to de-couple precision dispensing subassembly 1820 from glue canister 1834. Steps 2904a to 2910a may be repeated as many times as necessary for additional dispensations of glue until such time as the glue canister is depleted, or the assembly operation requiring glue has ceased.
[0350] The method proceeds to 2912a with determining whether the precision dispensing subassembly has reached the dispensing limit, and if so, retract the precision dispensing subassembly in the backward direction along the dispensing axis to an initial dispensing position upon a precision dispensing subassembly reaching the dispensing limit. The determination may be made at a dispensing sensor operable to detect an extension amount of precision dispensing subassembly. For example, a motor encoder may be used. The dispensing limit may be a pre-determined extension amount that is known to be associated with a fully dispensed glue canister. When the dispensing sensor determines that the extension amount is at the dispensing limit, it may be assumed that the loaded glue canister 1834 is fully dispensed, and can be ejected. The precision dispensing subassembly may then retract to an initial dispensing position, which may be a fully retracted state of the precision dispensing subassembly, in order to prepare for reloading a new glue canister.
[0351] The method proceeds to 2914a with retracting the extension subassembly in the backward direction along a dispensing axis from the second extending position to the first extending position upon the precision dispensing subassembly reaching a dispensing limit. For example, as shown in FIG. 30f, extension subassembly 1810 has been retracted back tothe first extending position 3002. Consequently, basket 1870 has returned to the loading position, operable to receive a replacement glue cylinder 3032 of the plurality of replacement glue cylinders 1832 from glue holder assembly 1830. Additionally, as the extension subassembly 1810 and basket 1870 retracts, glue canister 1834 remains in place due to operation of latch 3110. Once basket 1870 has fully retracted from beneath glue canister 1834, it may eject from an aperture at the bottom of dispense zone assembly 1840. Further, glue canister separation mechanism 1872 may retract along with extension subassembly 1810, allowing the replacement glue canister 3032 to be dispensed from glue holder assembly 1830. Once the replacement glue canister 3032 has been dispensed, steps of method 2900a may be repeated using the new glue canister 3032 to continue glue dispensing operations.
[0352] While the method is described using particular steps and in a particular sequence above, it should be understood that this is an illustrative example and that not every step is necessary nor do the steps require a particular sequence in accordance with the embodiments herein.
[0353] Reference is next made to FIGS. 43-54, depicting another example glue dispensing assembly 4300 in accordance with some embodiments, where the glue dispensing assembly 4300 of FIGS. 43-54 is analogous to glue dispensing assembly 1800 of FIGS. 18-36 and the teachings of the glue dispensing assembly 1800 apply to the glue dispensing assembly 4300 to the extent they do not conflict. The same applies for the analogous elements of glue dispensing assembly 4300 of the same name, as will be discussed below.
[0354] In some embodiments, glue dispensing assembly 4300 may be configured to operate without the extension subassembly 1810 or the dispense zone 1840 and each of their respective sub-components. In accordance with these embodiments, the overall length of the glue dispensing assembly 4300 may be shorter than the glue dispensing assembly 1800. The reduced form factor of the glue dispensing assembly 4300 may be beneficial, for example, in permitting the glue dispensing assembly to fit into narrower spaces or be fitted onto smaller systems. This may be useful in permitting the glue dispensing assembly 1800 and the system has a whole to be installed in manufacturing facilities or construction siteswhere the space is relatively small. Additionally, the removal of the extension subassembly 1810 and dispense zone 1840 reduces the number of components comprising the glue dispensing assembly 4300, in turn reducing the likelihood of component malfunction or failure, therefore promoting the efficiency of the glue dispensing assembly 4300 as a whole. The removal of these components also means the glue dispensing assembly 4300 utilizes less power, no longer requiring a number of actuators, sensors, and mechanical parts to function. It also means that the removed component weight may be reallocated to other parts of the glue dispensing assembly 4300 or system as a whole, providing room for improvements to be made.
[0355] Reference is next made to FIGS. 43, 44, and 45, which show perspective and cross-sectional views of the glue dispensing assembly 4300 in accordance with various embodiments.
[0356] The glue dispensing assembly 4300 comprises a replacement glue holder subassembly 4330, an interface component 4350, a structural frame 4302, a first end 4304, and a second end 4306. Additionally, the glue dispensing assembly comprises access doors 4336A and 4336B, which can be opened up horizontally in the event of a glue canister leakage or blowout. The access doors 4336A and 4336B may be actuated by actuator 4510. This may be useful, for example, in providing and expediting access to the interior components of the glue dispensing assembly 4300 without the use of tools. This may enhance efficiency of operations by permitting much shorter downtimes and maintenance periods, ensuring the glue dispensing assembly 4300 returns to operation as soon as possible so that the system as a whole does not experience extensive delays.
[0357] Reference is next made to FIG. 50, which shows an example nozzle cutting and membrane piercing station 5010 in accordance with various embodiments. The nozzle cutting and membrane piercing station 5010 is mounted to a mounting stand 5002. Referring to FIGS. 51 , 52A, 52B, 53A, and 53B, the nozzle cutting and membrane piercing station 5010 comprises a cutting section 5120 and a piercing section 5210. The cutting section 5120 is configured to cut a tip off the nozzle of glue canister 4334 when it is loaded for the first time. The piercing section 5210 may be configured to create a perforation in an internal barrier for the internal glue reservoir of glue canister.
[0358] The cutting section 5120 further comprises a blade assembly 5102, a guide portion 5106, and a sensor 5108. The blade assembly 5102 may further include an aperture 5110 into which a nozzle may be inserted to be cut, a blade 5110, a structure 51 14 to which the blade 5110 attaches, and a shaft 5102 around which the structure 5114 rotates. In operation, a nozzle is inserted into the aperture 5110, then the structure 5114 is rotated around the shaft 5102 to intersect with the nozzle such that the blade 5110 passes through the nozzle, cutting off the tip. Once the nozzle tip has been severed, it collects in the interior of the guide portion 5106 and is guided into a nozzle tip deposit area below (not pictured). Upon exiting the opening 5220 of the guide portion 5106, the nozzle tip will pass by a sensor 5108 which detects the pass by movement of the nozzle tip and validates that the cut was successful. As an example, the sensor 5108 may be a laser fork sensor.
[0359] The piercing section 5210 further comprises a piercing apparatus 5312, which comprises an outer shell 5314 and a piercing device 5316. As shown in FIGS. 53A and 53B, the piercing apparatus has two states: one in which the piercing device 5316 is advanced, and one in which the piercing device 5316 is retracted. The piercing device 5316 may be actuated. For example, the piercing device 5316 may be actuated pneumatically. This may be of use, for example, in saving cycle time. In operation, the piercing device 5316 is first retracted within the outer shell 5314 until it is needed. The piercing device 5316 can then advance forward beyond the outer shell 5314 to create a perforation, permitting glue to flow from the glue canister.
[0360] Reference is next made to FIGS. 54A and 54B, which show an example precision dispensing subassembly 4520 in accordance with various embodiments. Precision dispensing subassembly 4520 comprises a suction mechanism 5460 and a suction cup member 5430. In operation, when a glue canister 4334 is loaded in the space beneath the replacement glue holder subassembly 4330, the precision dispensing subassembly uses the suction mechanism 5460 to attach the suction cup member 5430 to the rear of the rigid deformable component 5404 of the glue canister 4334. The precision dispensing subassembly may then be configured to carry out the advancement and snuff back operations as described above. However, in accordance with this embodiment, there is no dispense zone assembly 1840 or extension subassembly 1810. Here, the precision dispensing subassembly 4520 may move between a fully retracted position just behind thereplacement glue holder subassembly 4330, as shown in FIG. 54A and a fully advanced position substantially disposed inside the rigid deformable component 5404 of the glue canister 4334 and underneath the replacement glue holder subassembly 4330.
[0361] Reference is next made to FIGS. 46, 47, 48A and 48B, which show an example replacement glue holder subassembly 4330 in accordance with various embodiments. FIG. 46 shows a perspective view of replacement glue holder subassembly 4330 while FIG. 47 shows a cross-sectional view. The replacement glue holder subassembly 4330 is comprised of an entrance end 4710, a dispensing end 4712, a rigid frame 4620, ejection gates 4730A and 4730B, a separation knife 4720, a toggle clamp 4640, handles 4630A and 4630B, and nozzle fingers 4610A and 4610B. The replacement glue holder subassembly 4330 as described serves three primary functions: to reload glue canisters, the align glue canister nozzles, and to clean glue canister leakages or blowouts.
[0362] First, with reference to the reloading function and the nozzle alignment function, a plurality of replacement glue canisters 4332 are loaded from the entrance end 4710 of the replacement glue holder subassembly and stacked amongst one another, each in contact with the rigid frame 4620. Below the replacement glue canisters 4332 is a separation knife 4712 which can be extended into and retracted out of the chamber, the separation knife 4712 supporting the plurality of replacement glue canisters 4332 when actuated inwards, preventing the replacement glue canisters from falling. When the separation knife 4712 is retracted, this permits a replacement glue canister to be loaded into a chamber below for use.
[0363] Below the separation knife 4712 and above a pair of ejection gates 4730A and 4730B is a chamber for holding an active glue canister 4334. The glue canister 4334 may interact with the nozzle cutting and membrane piercing station 5010 as well as the precision dispensing subassembly 4520. In the active position, the glue canister 4334 may also interact with the nozzle fingers 4610A and 4610B. The nozzle fingers 4610A and 4610B are configured to clamp between them the nozzle 4602 and move horizontally to secure the nozzle in a consistent position. This may be helpful due to the variable location of glue canister nozzles, especially among different manufacturers. By securing the nozzle in a consistent position between all glue canisters, the glue application, nozzle tip cutting, andmembrane piercing operations may be performed with a higher degree of precision. Finally, when the glue canister 4334 is determined to be depleted, the ejection gates 4730A and 4730B may be retracted horizontally to permit the glue canister 4334 to fall through, creating room for the next glue canister. Referring to FIG. 49, two sensors may be used in determining whether a glue canister 4334 has been properly loaded and whether the glue canister loading area between the separation knife 4712 and ejection gates 4730A and 4730B is ready to accept a new glue canister. The first sensor 4904 senses the front and the second sensor 4902 senses the rear of the glue canister 4334 to confirm the glue canister 4334 is loaded.
[0364] Next, in reference to the glue canister leakage or blowout cleanup function, referring to FIGS. 48A and 48B, the replacement glue holder subassembly 4330 comprises two handles 4630A and 4630B affixed to the rigid frame 4620 and a toggle clamp 4640. The purpose of these components is to enable the rigid frame 4620 to be lifted up and to provide access to the interior of the replacement glue holder subassembly 4330 in the event of a glue canister leakage or blowout. In operation, the toggle clamp 4640 is engaged under normal circumstances but can be disengaged by an operator when a leakage or blowout occurs. Once the toggle clamp 4640 is disengaged, the operator may grasp the two handles 4630A and 4630B and cause the rigid frame 4620 to be lifted up, providing access to the sensors 4902, 4904, and 4910 below. Once the cleanup has been performed, the operator may then lower the rigid frame 4620 back down and re-engage the toggle clamp 4640 such that the assembly is secured.
[0365] Referring again to FIG, 49, sensor 4910 is configured to confirm that the replacement glue holder subassembly 4330 is in the lowered position. As an example, this sensor may be a cylindrical sensor or barrel-type sensor. This indication is used to determine whether a new glue canister 4334 may be loaded.
[0366] Reference is next made to FIG. 29B, which shows an example method 2900b for dispensing a quantity of glue from a glue canister onto a substrate using a glue dispensing assembly. At 2902b, a precision dispensing subassembly is extended, the precision dispensing subassembly comprising a linear actuator, in the forward direction along the dispensing axis, from a first dispensing position to a second dispensing position, to dispense a quantity of glue.
[0367] Next, at 2904b, a suction is produced to secure the glue canister to the precision dispensing subassembly.
[0368] Next, at 2906b, the precision dispensing subassembly is retracted in a backward direction, the backward direction being defined as extending from the second end to the first end, along the dispensing axis from the second dispensing position to a third dispensing position to withdraw a residual quantity of glue.
[0369] Next, at 2908b, the suction is released to release the glue canister from the precision dispensing mechanism after the retraction of the precision dispensing subassembly is completed.
[0370] Finally, at 2910b, it is determined whether the precision dispensing subassembly has reached the dispensing limit, and if so, the precision dispensing subassembly is retracted in the backward direction along the dispensing axis to an initial dispensing position upon a precision dispensing subassembly reaching the dispensing limit.
[0371] While the above description describes features of example embodiments, it will be appreciated that some features and / or functions of the described embodiments are susceptible to modification without departing from the spirit and principles of operation of the described embodiments. For example, the various characteristics which are described by means of the represented embodiments or examples may be selectively combined with each other. Accordingly, what has been described above is intended to be illustrative of the claimed concept and non-limiting. It will be understood by persons skilled in the art that other variants and modifications may be made without departing from the scope of the invention as defined in the claims appended hereto. The scope of the claims should not be limited by the preferred embodiments and examples, but should be given the broadest interpretation consistent with the description as a whole.
Claims
CLAIMS:1 . An automation table for aligning a workpiece for an assembly operation, comprising: a table surface, comprising a plurality of apertures interspersed along the surface; a roller assembly, comprising: a plurality of rolling elements for moving the workpiece with respect to the table surface, the plurality of rolling elements being movable between a first position and a second position, wherein: in a first position, the plurality of rolling elements are recessed within the bottom portion of the automation table; and in a second position, at least a portion of the plurality of rolling elements is disposed within the top portion; a plurality of actuators, each actuator being coupled to one or more rolling elements of the plurality of rolling elements, configured to actuate the plurality of rolling elements between the first position and the second position through the plurality of apertures.
2. The automation table of claim 1 , wherein the plurality of apertures are located at predefined positions, wherein each aperture of the plurality of apertures aligns with a corresponding roller in the plurality of rolling elements.
3. The automation table of any one of claims 1 to 2, further comprising a controller, configured to: send an actuation signal to the plurality of actuators based on an input signal; and wherein: the plurality of actuators is configured to actuate the plurality of rolling elements based on the actuation signal.
4. The automation table of any one of claims 1 to 3, wherein a first portion of the plurality of rolling elements moves to a first height in the second position and a second portion of the plurality of rolling elements moves to a second height in the second position.
5. The automation table of any one of claims 1 to 4, wherein at least one actuator in the plurality of actuators is coupled to two or more rolling elements of the plurality of rolling elements.
6. The automation table of any one of claims 1 to 5, wherein the plurality of rolling elements are configured to rotate about a single axis.
7. The automation table of any one of claims 1 to 6, wherein a first rolling portion of the plurality of rolling elements are configured to rotate about a first axis, and a second rolling portion of the plurality of rolling elements are configured to rotate about a second axis.
8. The automation table of any one of claims 1 to 7, wherein the plurality of rolling elements are configured to be controlled individually.
9. The automation table of claim 8, wherein at least one of the plurality of rolling elements are configured to conform to the first position upon detection of a potentially damaging load on the automation table.
10. The automation table of claim 8, wherein at least one of the plurality of rolling elements are configured to rotate based on a position of a load on the automation table.
11. The automation table of any one of claims 1 to 10, further comprising a plurality of positioning holes positioned along one or more perimeters of the table surface.
12. The automation table of claim 11 , further comprising a plurality of removable alignment pins for aligning the manufacturing assembly with a perimeter edge of the table surface, configured to be securely inserted into the plurality of positioning holes.
13. The automation table of claim 12, further comprising a plurality of movable alignment pins for aligning the manufacturing assembly with a perimeter edge of the table surface, configured to move between an extended position, wherein the movable alignment pins are fully disposed beneath the table surface, and a recessed position wherein at least a portion of the movable alignment pins are disposed above the table surface.
14. The automation table of any one of claims 1 to 13, wherein the table surface comprises one or more reference grids positioned on the table surface.
15. A material alignment and nailing assembly for fastening a second workpiece to a first workpiece, the material alignment and nailing assembly being a robotic end-of-arm tool, wherein the first workpiece is misaligned relative to an alignment axis, comprising a frame, comprising: a robotic interface rigidly connected to the frame; a nailing subassembly connected to the frame arranged at a first end along an alignment axis; and a gripper subassembly connected to the frame arranged at a second end along the alignment axis, comprising: a first paddle and a second paddle movable along a closing axis, wherein the closing axis is perpendicular to the alignment axis; and at least one paddle actuator, configured to move the first and second paddles opposably towards one another at an equal rate such that a distance between the first paddle and the alignment axis is constantly equal to a distance between the second paddle and the alignment axis, wherein: the gripper subassembly is operable to grasp a first workpiece by securely enclosing the first workpiece between the first and second paddles; and the nailing subassembly is operable to fix a second workpiece to the first workpiece at a point on the alignment axis upon the gripper bringing the first workpiece into alignment with the alignment axis.
16. The material alignment and nailing assembly of claim 15, wherein the robotic interface component is configured to: connect the material alignment and nailing assembly with a robot arm; and facilitate power and data exchange between the material alignment and nailing assembly and the robot arm.
17. The material alignment and nailing assembly of any one of claims 15 to 16, further comprising a nailing subassembly actuator operable to: move the nailing subassembly such that a lowest point of the gripping subassembly is lower relative to a nailing end of the nailing mechanism when the material alignment and nailing assembly operates in a first mode of operation; and move the nailing subassembly such that the lowest point of the gripping subassembly is higher relative to a nailing end of the nailing subassembly when the material alignment and nailing assembly operates in a second mode of operation, wherein: i) in the first position, the nailing subassembly and the gripper subassembly cooperate to align the first workpiece for fastening to the second workpiece; ii) in the second position, the nailing subassembly and the gripper subassembly work independently of one another; and iii) the nailing subassembly moves between the first and second positions based on a switching signal from an external controller.
18. The material alignment and nailing assembly of any one of claims 15 to 17, further comprising an electronics component comprising one or more subcomponents for sending, receiving and receiving control signals for controlling the at least one paddle actuator and the nailing subassembly actuator.
19. The material alignment and nailing assembly of any one of claims 15 to 18, wherein the nailing subassembly actuator comprises a pneumatic cylinder.
20. The material alignment and nailing assembly of any one of claims 15 to 19, wherein the at least one paddle actuator comprises an electric motor.
21. The material alignment and nailing assembly of any one of claims 15 to 20, wherein the first material comprises a wooden floor joist.
22. The material alignment and nailing assembly of any one of claims 15 to 21 , wherein the second material comprises a subfloor sheet.
23. The material alignment and nailing assembly of any one of claims 15 to 22, wherein the underlaying material comprises a second subfloor sheet.
24. A method for aligning a workpiece using a gripping assembly, the gripping assembly being affixed to a robotic arm (when in use) and configured to align the workpiece based on a predefined configuration, comprising: gripping, at the gripping assembly, the workpiece; applying, at the gripping assembly, a first force, along a first axis, upon the workpiece and against a frame apparatus, the frame apparatus comprising at least two referencing elements, thereby producing a first force feedback; sensing, at the force sensor coupled to the gripping assembly, the first force feedback; applying, at the gripping assembly, a second force, along a second axis, upon the workpiece and against the frame apparatus, thereby producing a second force feedback; sensing, at the force sensor, the second force feedback; applying, at the gripping assembly, one or more torques upon the workpiece and against the frame apparatus, thereby producing one or more torque feedback; sensing, at the force sensor, the torque feedback; determining, at a processor in communication with the force sensor, a first axis adjustment based on the first force feedback; determining, at the processor, a second axis adjustment based on the second force feedback; determining, at the processor, an orientation adjustment based on the one or more torque feedback; determining, at the processor, an adjustment vector based on the first axis adjustment, the second axis adjustment, and the orientation adjustment; and positioning, at the gripping assembly, the workpiece at a designated location based on the adjustment vector.
25. The method of claim 24, further comprising positioning, with the gripper assembly, the workpiece, to the frame apparatus from a storage location.
26. A glue dispensing assembly for dispensing a quantity of glue from a glue canister onto a substrate, the glue dispensing assembly being a robotic end-of-arm tool, comprising: a frame arranged from a first end and a second end along a dispensing axis, configured to support: a precision dispensing subassembly comprising a linear actuator, operable to: extend in the forward direction along the dispensing axis from a first dispensing position to a second dispensing position to dispense a first quantity of glue; and retract in a backward direction along the dispensing axis from the second dispensing position to a third dispensing position to withdraw a residual quantity of glue; a suction mechanism coupled to the dispensing mechanism, operable to: produce a suction to secure the glue canister to the precision dispensing mechanism before the retracting of the precision dispensing mechanism; and release the suction to release the glue canister from the precision dispensing mechanism after the retraction of the precision dispensing mechanism is completed.
27. The glue dispensing assembly of claim 26, wherein the operation of at least one of the precision dispensing subassembly and suction mechanism is based on control signals received from an external controller.
28. The glue dispensing assembly of any one of claims 26 to 27, wherein the precision dispensing subassembly is further operable to retract in a backward direction along the dispensing axis to a first dispensing position upon the precision dispensing subassembly reaching the dispensing limit.
29. The glue dispensing assembly of any one of claims 26 to 28, wherein the suction mechanism is:attachable to the precision dispensing subassembly through a J-channel coupling mechanism; and separable from the precision dispensing subassembly by undoing the J- channel coupling mechanism.
30. The glue dispensing assembly of any one of claims 26 to 29, the glue dispensing assembly further comprising one or more access doors, the access doors configured to allow access to an interior of the glue dispensing assembly for ease of maintenance.
31. The glue dispensing assembly of claim 30, wherein opening and closing the access doors is actuated.
32. The glue dispensing assembly of any one of claims 26 to 31 , wherein the glue dispensing assembly further comprises a vertically arranged glue holder assembly configured to hold a plurality of replacement glue canisters, comprising an entrance end for adding new replacement glue canisters to the plurality of replacement glue canisters and a dispensing end for dispensing a replacement glue canister from the plurality of replacement glue canisters.
33. The glue dispensing assembly of any one of claims 26 to 32, wherein the frame further comprises a glue canister separation assembly operable to: block the glue holder assembly from dispensing a replacement glue canister as a used glue canister is ejected from a loading position; and allow a replacement glue canister from the plurality of replacement glue canisters to fall into the loading position.
34. The glue dispensing assembly of claim 33, wherein the glue canister separation mechanism comprises one or more wedge-shaped front portions, the front portions facing one another.
35. The glue dispensing assembly of any one of claims 26 to 34, further comprising at least one load sensor, operable to: sense a load in the loading position; andsend a command to a controller, upon detecting that a load is present in the loading position, to navigate the glue dispensing assembly to a nozzle cutting and membrane piercing station.
36. The glue dispensing assembly of any one of claims 26 to 35, further comprising a dispensing sensor, operable to sense a dispensing amount of the precision dispensing mechanism, and wherein the precision dispensing mechanism reaches the dispensing limit when the dispensing amount reaches a threshold value.
37. The glue dispensing assembly of claim 36, wherein the dispensing sensor comprises a motor encoder.
38. The glue dispensing assembly of any one of claims 26 to 37, wherein the second linear actuator comprises a ball screw mechanism.
39. The glue dispensing assembly of any one of claims 26 to 38, wherein the first linear actuator comprises a pneumatic cylinder.
40. The glue dispensing assembly of any one of claims 32 to 39, further comprising a set of ejection gates connected to the frame, configured to open to permit the glue canister to be ejected from the glue dispensing assembly.41 . The glue dispensing assembly of any one of claims 32 to 40, further comprising a set of nozzle fingers connected to the frame, configured to position a nozzle of the glue canister in a consistent location between different glue canisters.
42. The glue dispensing assembly of any one of claims 32 to 41 , further comprising a toggle clamp, the toggle clamp configured to permit the glue holder assembly to be positioned in a list of positions comprising: a raised position, wherein the toggle clamp is disengaged, permitting the glue holder assembly to be raised, and a lowered position, wherein the toggle clamp is engaged, securing the glue holder assembly down.
43. The glue dispensing assembly of claim 42, wherein the glue dispensing assembly further comprises a sensor for sensing whether the glue holder assembly is in the raised position or the lowered position.
44. A method for dispensing a quantity of glue from a glue canister onto a substrate using a glue dispensing assembly, the glue dispensing assembly being a robotic end-of-arm tool, the glue dispensing assembly comprising a frame extending from a first end to a second end along a dispensing axis, comprising: extending a precision dispensing subassembly, the precision dispensing subassembly comprising a linear actuator, in the forward direction along the dispensing axis, from a first dispensing position to a second dispensing position, to dispense the quantity of glue; producing a suction, at a suction mechanism coupled to the precision dispensing subassembly, to secure the glue canister to the precision dispensing subassembly; retracting the precision dispensing subassembly in a backward direction, the backward direction being defined as extending from the second end to the first end, along the dispensing axis from the second dispensing position to a third dispensing position to withdraw a residual quantity of glue; releasing the suction, at the suction mechanism, to release the glue canister from the precision dispensing mechanism after the retraction of the precision dispensing subassembly is completed; and determining, at a dispensing sensor, whether the precision dispensing subassembly has reached the dispensing limit, and if so, retract the precision dispensing subassembly in the backward direction along the dispensing axis to an initial dispensing position upon a precision dispensing subassembly reaching the dispensing limit.