Patent Description:
Assembling a structure that is comprised of hundreds of thousands of parts may be a complex process that involves multiple stages of assembly. Accordingly, validating a condition of assembly over the course of these stages of assembly helps ensure quality control. A "condition of assembly" for a structure may be, for example, the degree to which a current build of the structure matches or conforms to a design specification for that structure. As one example, the assembly of an aircraft structure, such as a fuselage, may be a complex multi-stage process. Validating the condition of assembly of the fuselage, for example, after a particular stage of assembly may include determining whether the current build of the fuselage is within selected tolerances.

Currently, validating the condition of assembly of a complex structure, such as a fuselage, is typically performed manually. For example, a human operator may manually inspect a fuselage and compare the build of the fuselage to hundreds of printed engineering drawings of the fuselage, a computer aided design (CAD) model of the fuselage, or both. In some cases, this type of validation may require the operator to have special training and experience to maneuver through the drawings or model of the fuselage. Further, this type of evaluation may be more time-consuming and more prone to error than desired. Therefore, it would be desirable to have improved methods and systems for validating the condition of assembly for structures.

<CIT>, in accordance with its abstract, a method for inspecting assembly of components in a structure includes acquiring a visual representation of at least a portion of the structure, and saving an electronic file of the visual representation on a computer readable medium. A three-dimensional design of the structure, which contains information on a proper position of the components within the structure, is accessed. The visual representation is compared with the three-dimensional design using a computer, and a feedback indicating a result of the comparison is generated.

A method according to claim <NUM> is provided.

An apparatus according to claim <NUM> is provided.

The illustrative embodiments recognize and take into account that automating the validation of the condition of assembly for a structure may allow this validation to be performed more quickly and accurately as compared to manual methods. Further, by automating the condition of assembly validation, the downtime needed for this validation process may be reduced. As one illustrative example, when the validation is to be performed between two stages of assembly, the validation process may reduce the downtime needed before the next stage of assembly can begin. Additionally, the illustrative embodiments provide a method and apparatus for automating the validation of a condition of assembly for a structure in a manner that limits the time and processing resources needed to perform this validation.

In one illustrative embodiment, a plurality of images of a structure may be generated using a sensor system. The structure may be, for example, a fuselage. Validating the condition of assembly for the fuselage may involve, for example, without limitation, confirming the presence of tens of thousands to hundreds of thousands of fasteners in specific locations. Each image generated may capture tens, hundreds, or thousands of fasteners.

The plurality of images of the fuselage may be registered to a computer model of the structure. Each image in the plurality of images may be segmented based on registration of the plurality of images to the computer model to form a plurality of image sections. A score may be generated for the condition of assembly of the fuselage based on whether each image section in the plurality of image sections meets a corresponding condition. The score may indicate whether the condition of assembly is valid.

In some embodiments, the sensor system that generates the plurality of images may be coupled to an automated guided vehicle. The automated guided vehicle may be moved along a predetermined path relative to the structure to allow the sensor system to generate the plurality of images. In particular, the automated guide vehicle may be moved along the predetermined path such that the sensor system may be moved into an optimal set of positions that enable an entirety of an area of the structure that is of interest to be captured using the fewest number of images. In this manner, the time and processing resources needed to perform the automated validation of the condition of assembly may be reduced. The illustrative embodiments may provide a computerized method and apparatus for efficiently identifying the optimal set of positions out of a plurality of test positions. The plurality of test positions may include, for example, without limitation, hundreds, thousands, or tens of thousands of test positions.

Referring now to the figures, in these illustrative examples, the same reference numeral may be used in more than one figure. This reuse of a reference numeral in different figures represents the same element in the different figures.

<FIG> is an illustration of an aircraft, depicted in accordance with an illustrative embodiment. Aircraft <NUM> includes wing <NUM> and wing <NUM> attached to fuselage <NUM>. Aircraft <NUM> includes engine <NUM> attached to wing <NUM> and engine <NUM> attached to wing <NUM>. Aircraft <NUM> also includes tail section <NUM>. Horizontal stabilizer <NUM>, horizontal stabilizer <NUM>, and vertical stabilizer <NUM> are attached to tail section <NUM>.

Aircraft <NUM> is an example of an aircraft manufactured using methods and systems for automated validation of condition of assembly in accordance with the illustrative embodiments described below. For example, without limitation, fuselage <NUM> may be an example of one implementation of a structure built using a multi-stage process with automated validation of condition of assembly performed after at least one stage of assembly.

<FIG> is a block diagram of a manufacturing environment depicted in accordance with an illustrative embodiment. Manufacturing environment <NUM> is an example of an environment in which automated validation process <NUM> may be performed. Automated validation process <NUM> may be an automated process by which condition of assembly <NUM> for structure <NUM> may be evaluated and determined to be either valid or invalid. In particular, automated validation process <NUM> may enable condition of assembly <NUM> for structure <NUM> to be evaluated with zero or minimal involvement of human operators. Condition of assembly <NUM> for structure <NUM> may be, for example, the degree to which a current build of structure <NUM> matches or conforms to a design specification for structure <NUM>.

Depending on the implementation, structure <NUM> may take a number of different forms. In one illustrative example, structure <NUM> takes the form of a fuselage structure that is being assembled to form fuselage <NUM> of aircraft <NUM> in <FIG>. In other illustrative examples, structure <NUM> may be a different type of aircraft structure, such as wing <NUM>, wing <NUM>, or tail section <NUM> of aircraft <NUM> in <FIG>. In still other illustrative examples, structure <NUM> may be a spacecraft structure, a watercraft structure, a sub-assembly for a ground vehicle, or some other type of structure that is built using a multi-stage assembly process.

Validation system <NUM> may be used to perform automated validation process <NUM>. In one illustrative example, validation system <NUM> may be used to perform automated validation process <NUM> after a particular stage of assembly has been completed. This stage of assembly may include, for example, without limitation, the drilling of thousands to tens of thousands of holes in structure <NUM> and the installation of thousands to tens of thousands fasteners within these holes.

In this illustrative example, validation system <NUM> includes sensor system <NUM> and validator <NUM>. Sensor system <NUM> and validator <NUM> may be communicatively coupled. For example, sensor system <NUM> and validator <NUM> may be configured to communicate using one or more wired communications links, one or more wireless communications links, one or more optical communications links, or a combination thereof.

In this illustrative embodiment, sensor system <NUM> takes may take the form of imaging system <NUM>. Imaging system <NUM> may include one or more cameras configured to generate image data <NUM> for use in generating plurality of images <NUM> of structure <NUM>. An image of plurality of images <NUM>, such as image <NUM>, may capture a portion of structure <NUM>. This portion of structure <NUM> may be a large section of structure <NUM>. For example, without limitation, when structure <NUM> takes the form of a fuselage structure, image <NUM> may capture a section of a fuselage panel, an entire fuselage panel, multiple fuselage panels, a flooring, or some other portion of the fuselage structure.

In one illustrative example, imaging system <NUM> may be coupled to automated guided vehicle <NUM>. For example, without limitation, imaging system <NUM> may be removably attached to automated guided vehicle <NUM>, permanently affixed to automated guided vehicle <NUM>, built-in as part of automated guided vehicle <NUM>, or coupled to automated guided vehicle <NUM> in some other manner.

Automated guided vehicle <NUM> may be moved along predetermined path <NUM> relative to structure <NUM> to allow sensor system <NUM> to generate image data <NUM> at set of positions <NUM> relative to structure <NUM>. Set of positions <NUM> may be an optimal set of positions selected for allowing an entirety of an area of structure <NUM> that is of interest to be captured using the fewest number of images. Moving automated guided vehicle <NUM> relative to structure <NUM> may include moving automated guided vehicle <NUM> within an interior of structure <NUM>, along an exterior of structure <NUM>, along a platform located at a selected distance from structure <NUM>, along a flooring at a selected distance from structure <NUM>, along a track system relative to structure <NUM>, in some other suitable manner, or a combination thereof.

In other illustrative examples, imaging system <NUM> may comprise plurality of imaging sensors <NUM> that are positioned in plurality of fixed positions <NUM> relative to structure <NUM>. Plurality of fixed positions <NUM> may be an optimal plurality of positions selected for allowing an entirety of an area of structure <NUM> that is of interest to be captured using the fewest number of images and the fewest number of imaging sensors.

Sensor system <NUM> may send plurality of images <NUM> to validator <NUM> for processing. Depending on the implementation, validator <NUM> may be implemented using software, hardware, firmware, or a combination thereof. When software is used, the operations performed by validator <NUM> may be implemented using, for example, without limitation, program code configured to run on a processor unit. When firmware is used, the operations performed by validator <NUM> may be implemented using, for example, without limitation, program code and data stored in persistent memory to run on a processor unit.

When hardware is employed, the hardware may include one or more circuits that operate to perform the operations performed by validator <NUM>. Depending on the implementation, the hardware may take the form of a circuit system, an integrated circuit, an application specific integrated circuit (ASIC), a programmable logic device, some other suitable type of hardware device configured to perform any number of operations, or a combination thereof.

In one illustrative example, validator <NUM> takes the form of processor <NUM>. In some illustrative examples, validator <NUM> may be a computer system that comprises a single computer or multiple computers in communication with each other. In one illustrative example, validator <NUM> may include image processing component <NUM> and comparison component <NUM>.

Upon receiving plurality of images <NUM> from sensor system <NUM>, validator <NUM> registers plurality of images <NUM> to computer model <NUM> of structure <NUM>. Computer model <NUM> may be, for example, a computer aided design model of structure <NUM>. In other illustrative examples, computer model <NUM> may comprise plurality of digital engineering drawings <NUM> of structure <NUM>.

Validator <NUM> segments each of plurality of images <NUM> based on the registration of plurality of images <NUM> to computer model <NUM> to form plurality of image sections <NUM>. In particular, each image in plurality of images <NUM> may be segmented to form a set of image sections, such as set of image sections <NUM>, that is added to plurality of image sections <NUM>.

As one illustrative example, image <NUM> may be segmented to create set of image sections <NUM> based on the registration of image <NUM> to computer model <NUM>. For example, based on the registration of image <NUM> to computer model <NUM>, validator <NUM> may identify each location in image <NUM> at which a single feature of interest is expected to be seen. Validator <NUM> may segment image <NUM> to create an image section for each one of these locations. In this manner, each image section in set of image sections <NUM> captures a portion of structure <NUM> that is expected to have a single feature of interest.

Image section <NUM> may be an example of one of set of image sections <NUM>. Image section <NUM> may be expected to capture a feature of interest selected from one of, for example, without limitation, a hole, a fastener installed in a hole, an absence of a hole, an absence of a fastener, or some other type of feature. Image section <NUM> may be segmented from image <NUM> by being, for example, without limitation, snipped, cropped, or otherwise extracted from image <NUM>.

Depending on the implementation, set of image sections <NUM> formed from image <NUM> may make up the entirety of image <NUM> or only a portion of image <NUM>. For example, without limitation, in some cases, only the portions of image <NUM> expected to have features of interest may be snipped, cropped, or otherwise extracted from image <NUM>.

In some illustrative examples, the receiving of plurality of images <NUM> from sensor system <NUM>, the registration of plurality of images <NUM> to computer model <NUM>, and the segmenting of each image of plurality of images <NUM> may be performed by image processing component <NUM> of validator <NUM>. In some cases, only the registration and segmenting steps may be performed by image processing component <NUM>.

Once plurality of image sections <NUM> has been created, validator <NUM> may generate final score <NUM> for condition of assembly <NUM>. Validator <NUM> may generate final score <NUM> based on whether each image section in plurality of image sections <NUM> meets a corresponding condition. In some cases, comparison component <NUM> of validator <NUM> may perform a comparison of plurality of image sections <NUM> to computer model <NUM> to generate final score <NUM>.

Validator <NUM> generates initial score <NUM> by computing the percentage of image sections in plurality of image sections <NUM> that meet the corresponding condition for each respective image section. The corresponding condition used to evaluate each image section may be determined based on the corresponding portion of computer model <NUM> to which each image section, such as image section <NUM>, is registered. For example, the corresponding condition for a particular image section may be the presence or absence of a particular feature of interest, as specified by computer model <NUM>. The feature of interest may be, for example, without limitation, a hole or a fastener that has been installed in a hole.

Validator <NUM> compares image section <NUM> to the corresponding portion of computer model <NUM> to which image section <NUM> is registered. This corresponding portion of computer model <NUM> may indicate that the corresponding condition to be met is the presence of a fastener. Validator <NUM> may use one or more image recognition techniques to determine whether or not image section <NUM> includes a fastener.

In other illustrative examples, all image sections in plurality of image sections <NUM> may be evaluated based on the same corresponding condition. For example, the corresponding condition may be the presence of a fastener. In this example, initial score <NUM> may be the percentage of image sections in plurality of image sections <NUM> that include a fastener.

In some illustrative examples, validator <NUM> uses initial core <NUM> as final score <NUM> for condition of assembly <NUM>. Final score <NUM> may indicate that condition of assembly <NUM> is valid when final score <NUM> is above a selected threshold. The selected threshold may be, for example, without limitation, <NUM> percent, <NUM> percent, <NUM> percent, <NUM> percent, <NUM> percent, or some other percentage, depending on the implementation.

In other illustrative examples, validator <NUM> may make adjustments to initial score <NUM> based on whether one or more invalidating events have occurred to generate final score <NUM>. For example, based on the portion of computer model <NUM> to which image section <NUM> is registered and the importance of the corresponding condition, the failure of image section <NUM> to meet this corresponding condition may be considered an invalidating event. When an invalidating event occurs, validator <NUM> may adjust initial score <NUM> accordingly.

In some cases, a single invalidating event may cause validator <NUM> to adjust initial score <NUM> to <NUM> percent. Thus, a single invalidating event may cause condition of assembly <NUM> to be invalid despite initial score <NUM> being above the selected threshold. In other instances, each invalidating event may cause validator <NUM> to reduce initial score <NUM> by a selected amount. Some invalidating events may be weighted as more important than other invalidating events. For example, validator <NUM> may be configured to reduce initial score <NUM> by a greater amount based on the occurrence of one type of invalidating event as compared to another type of invalidating event. In still other illustrative examples, validator <NUM> may use initial score <NUM> as final score <NUM> but may generate an alert or flag when one or more invalidating events have occurred.

Validator <NUM> may create report <NUM> that includes final score <NUM>, as well as any alerts or flags that have been generated. In one illustrative example, validator <NUM> displays report <NUM> on graphical user interface <NUM> on display system <NUM>. Display system <NUM> may be communicatively coupled to validator <NUM>. In other illustrative examples, validator <NUM> may display only final score <NUM> and any alerts or flags that have been generated on graphical user interface <NUM>. Display system <NUM> may be part of validations system <NUM> or independent of validation system <NUM>, depending on the implementation.

In some illustrative examples, validator <NUM> sends report <NUM> to computerized numerically controlled machine <NUM> for processing. Report <NUM> may be used to adjust the programming for computerized numerically controlled machine <NUM> or generate a command for computerized numerically controlled machine <NUM>. As one illustrative example, computerized numerically controlled machine <NUM> may run a program that initiates a next stage of assembly when computerized numerically controlled machine <NUM> receives report <NUM> indicating that condition of assembly <NUM> for structure <NUM> is valid.

In this manner, validation system <NUM> allows automated validation process <NUM> to be performed efficiently. This automated validation process <NUM> may reduce the downtime in between stages of assembly. Further, using validation system <NUM> to validate condition of assembly <NUM> of structure <NUM> may improve the accuracy with which condition of assembly <NUM> is evaluated.

<FIG> is a block diagram of a pathway generator and sensor system <NUM> from <FIG>, depicted in accordance with an illustrative embodiment. In this illustrative example, pathway generator <NUM> is implemented as part of validator <NUM> in <FIG>.

In other illustrative examples, pathway generator <NUM> may be implemented independently of validator <NUM>. For example, pathway generator <NUM> may be implemented in processor <NUM> within validation system <NUM>. Processor <NUM> may be communicatively coupled to processor <NUM> in <FIG>. Further, processor <NUM> may be communicatively coupled to sensor system <NUM>. In still other illustrative examples, pathway generator <NUM> may be implemented independently of validation system <NUM>.

Pathway generator <NUM> is used to establish pathway <NUM> for performing automated validation process <NUM> in <FIG>. Pathway <NUM> may be used as the predetermined path <NUM> in <FIG>. In one illustrative example, pathway generator <NUM> includes registration component <NUM> and optimizing component <NUM>.

In this illustrative example, sensor system <NUM> is coupled to automated guided vehicle <NUM>. Sensor system <NUM> is moved into plurality of test positions <NUM> relative to structure <NUM>. Plurality of test positions <NUM> may include, for example, without limitation, tens, hundreds, thousands, or tens of thousands of test positions, depending on the implementation. In one illustrative example, plurality of test positions <NUM> may include between <NUM> and <NUM>,<NUM> test positions. Test position <NUM> is an example of one of plurality of test positions <NUM>. Test position <NUM> may comprise a location, an orientation, or both for sensor system <NUM>. Accordingly, test position <NUM> defines a unique field of view for sensor system <NUM> relative to structure <NUM>.

Sensor system <NUM> generates image data at each test position of plurality of test positions <NUM> to build plurality of test images <NUM>. Sensor system <NUM> then sends plurality of test images <NUM> to pathway generator <NUM> for processing.

Pathway generator <NUM> registers each test image of plurality of test images <NUM> to computer model <NUM> of structure <NUM> to form plurality of registered images <NUM>. In particular, registration component <NUM> of pathway generator <NUM> may register each test image of plurality of test images <NUM> to computer model <NUM>. Plurality of registered images <NUM> are added to collection of registered images <NUM>. In this illustrative example, collection of registered images <NUM> may be stored in data structure <NUM>. Data structure <NUM> may take the form of, for example, without limitation, a database, a data repository, associative memory, or some other type of data structure.

Pathway generator <NUM> determines which positions from plurality of test positions <NUM> will allow an entirety of an area of structure <NUM> that is of interest to be captured using the fewest number of registered images from collection of registered images <NUM>. The particular positions identified form optimal set of positions <NUM>. Optimal set of positions <NUM> may be used as set of positions <NUM> in <FIG>. In one illustrative example, these above described steps in the identification of optimal set of positions <NUM> may be performed by optimizing component <NUM> of pathway generator <NUM>.

In this illustrative example, pathway generator <NUM> uses optimal set of positions <NUM> to establish pathway <NUM> for moving automated guided vehicle <NUM> relative to structure <NUM> to perform automated validation process <NUM>. For example, without limitation, pathway generator <NUM> may compute pathway <NUM> for moving automated guided vehicle <NUM> relative to structure <NUM> such that sensor system <NUM> may be moved into optimal set of positions <NUM> in a least amount of time. In some cases, the generation of pathway <NUM> is performed by optimizing component <NUM>.

Pathway generator <NUM> then generates computer file <NUM> that identifies pathway <NUM> for automated guided vehicle <NUM> and optimal set of positions <NUM> for sensor system <NUM>. In one illustrative example, the computer file <NUM> may be generated by optimizing component <NUM>.

In some illustrative examples, pathway generator <NUM> may send computer file <NUM> to validator <NUM> in <FIG> for use in performing automated validation process <NUM> to validate condition of assembly <NUM> for structure <NUM>. In other illustrative examples, pathway generator <NUM> may store computer file <NUM> in data storage <NUM>. Data storage <NUM> may take the form of memory in communication with processor <NUM>, cloud storage, or some other type of data storage.

In these examples, computer file <NUM> may be retrieved by validator <NUM> from data storage <NUM> for use in performing automated validation process <NUM>. Using pathway <NUM> and optimal set of positions <NUM> identified in computer file <NUM> as predetermined path <NUM> for performing the automated validation process <NUM> may reduce the time and amount of processing resources needed to perform automated validation process <NUM>.

Pathway <NUM> and optimal set of positions <NUM> identified in computer file <NUM> may be used for performing automated validation process <NUM> for other structures. For example, validator <NUM> may retrieve computer file <NUM> for performing automated validation process <NUM> for a plurality of structures (not shown) that are being assembled based on computer model <NUM>. In other words, pathway <NUM> and optimal set of positions may be used to perform automated validation process <NUM> for other structures that match a same design specification as structure <NUM>.

The illustrations of manufacturing environment <NUM> in <FIG>, validation system <NUM> in <FIG>, and pathway generator <NUM> in <FIG> are not meant to imply physical or architectural limitations to the manner in which an illustrative embodiment may be implemented. Other components in addition to or in place of the ones illustrated may be used. Some components may be optional. Additionally, the blocks may be presented to illustrate functional components. One or more of these blocks may be combined, divided, or combined and divided into different blocks when implemented in an illustrative embodiment.

For example, when automated guided vehicle <NUM> is moved through structure <NUM> in the form of a fuselage, such as fuselage <NUM> in <FIG>, automated guided vehicle <NUM> may be moved within the interior cylindrical portions of the fuselage. However, in other illustrative examples, when structure <NUM> takes the form of wing <NUM> in <FIG>, automated guided vehicle <NUM> may be moved along the exterior surface of wing <NUM>. In this manner, automated guided vehicle <NUM> may be moved in different ways relative to structure <NUM> depending on the type of structure <NUM>.

<FIG> is an isometric view of a fuselage structure, depicted in accordance with an illustrative embodiment. Fuselage structure <NUM> may be an example of one implementation for structure <NUM> described in <FIG>. Further, fuselage structure <NUM> may be in the middle of an assembly process for building a fuselage, such as fuselage <NUM> in <FIG>.

Fuselage structure <NUM> includes plurality of fuselage panels <NUM>. In this illustrative example, fuselage structure <NUM> may have top fuselage panels that are not shown such that interior <NUM> of fuselage structure <NUM> may be better seen.

Automated guided vehicle <NUM> may move through interior <NUM> of fuselage structure <NUM> to perform various operations using imaging system <NUM> attached to automated guided vehicle <NUM>. Imaging system <NUM> may be an example of one implementation for imaging system <NUM> in <FIG>. In one illustrative example, imaging system <NUM> may be controlled to change orientation relative to fuselage structure <NUM> such that imaging system <NUM> can capture different view of interior <NUM>.

Depending on the implementation, imaging system <NUM> may have one or more degrees of linear freedom, one or more degrees of rotational freedom, or a combination thereof relative to automated guided vehicle <NUM>. Accordingly, imaging system <NUM> may have six degrees of freedom, three degrees of freedom, one degree of freedom, or some other number of degrees of freedom relative to automated guided vehicle <NUM>. For example, without limitation, imaging system <NUM> may be capable of moving with three rotational degrees of freedom relative to automated guided vehicle <NUM>.

In one illustrative example, automated guided vehicle <NUM> may be moved through interior <NUM> of fuselage structure <NUM> for the purpose of establishing a pathway, such as pathway <NUM> in <FIG>, for performing automated validation process <NUM> described in <FIG>. For example, without limitation, automated guided vehicle <NUM> may be moved along predetermined test pathway <NUM> relative to fuselage structure <NUM>. In this illustrative example, predetermined test pathway <NUM> may be a straight-line path along centerline <NUM> of fuselage structure <NUM>. In other illustrative examples, predetermined test pathway <NUM> may be a curved pathway, a zig-zag pathway, or some other type of pathway.

Further, automated guided vehicle <NUM> may be moved to various positions along predetermined test pathway <NUM> to allow imaging system <NUM> to be moved into a plurality of test positions. For example, without limitation, automated guided vehicle <NUM> may be moved to about <NUM> positions along predetermined test pathway <NUM>. At each of these <NUM> positions, imaging system <NUM> may be moved relative to automated guided vehicle <NUM> into some number of test positions. For example, without limitation, imaging system <NUM> may be moved into <NUM> or more test positions at each stop made by automated guided vehicle <NUM> along predetermined test pathway <NUM>. Each test position may comprise a test location and a test orientation relative to a reference coordinate system. This reference coordinate system may be a coordinate system for automated guided vehicle <NUM>, a coordinate system for fuselage structure <NUM>, or some other of coordinate system.

At each test position, imaging system <NUM> generates a test image. The plurality of test images generated by imaging system <NUM> may be sent to, for example, pathway generator <NUM> described in <FIG> for processing. Pathway generator <NUM> may use these test images to establish pathway <NUM> for performing automated validation process <NUM> for fuselage structure <NUM>. Once pathway <NUM> has been established, pathway <NUM> may be used to perform automated validation process <NUM> for fuselage structure <NUM>, as well as other fuselage structures being assembled according to a same design specification as fuselage structure <NUM>.

<FIG> is an illustration of an image of a portion of fuselage structure <NUM> from <FIG><NUM>, depicted in accordance with an illustrative embodiment. Image <NUM> may be an example of one implementation for image <NUM> described in <FIG>. Image <NUM> may be generated by, for example, imaging system <NUM> in <FIG> within interior <NUM> of fuselage structure <NUM>.

Validator <NUM> from <FIG> may register image <NUM> to a computer model for fuselage structure <NUM>. Based on this registration, validator <NUM> may identify the various portions of image <NUM> that are expected to have fasteners installed. Validator <NUM> may then segment image <NUM> into set of image sections <NUM>. For example, without limitation, validator <NUM> may snip, crop, or otherwise extract plurality of image sections <NUM> from image <NUM>. Set of image sections <NUM> may be an example of one implementation, for set of image sections <NUM> described in <FIG>.

Each image section of plurality of image sections <NUM> may then be analyzed to determine whether that image section meets a corresponding condition based on the computer model for fuselage structure <NUM>. For example, without limitation, the corresponding condition may be either a presence of a fastener or the absence of a fastener.

<FIG> is an illustration of a report displayed on a graphical user interface, depicted in accordance with an illustrative embodiment. Report <NUM> is displayed on graphical user interface <NUM>. Report <NUM> may be an example of one implementation for report <NUM> in <FIG>. Graphical user interface <NUM> may be an example of one implementation for graphical user interface <NUM> in <FIG>. Report <NUM> may be generated by validator <NUM> in <FIG> after an automated validation of condition of assembly for fuselage structure <NUM> in <FIG> has been performed.

As depicted, report <NUM> includes diagram <NUM>. Diagram <NUM> may represent interior <NUM> of fuselage structure <NUM>. In this illustrative example, diagram <NUM> identifies plurality of expected fasteners <NUM>, which may be all of the fasteners that are expected to be present in fuselage structure <NUM> after a particular stage of assembly.

In this illustrative example, set of graphical indicators <NUM> may be used to indicate each fastener of plurality of expected fasteners <NUM> that is not present in fuselage structure <NUM>. In this manner, diagram <NUM> may allow a human operator viewing report <NUM> to easily and readily identify the locations on fuselage structure <NUM> that may require further attention.

Further, report <NUM> also includes general information <NUM>. For example, without limitation, general information <NUM> may include date <NUM>, line number <NUM>, model <NUM>, and inspection region <NUM>. Date <NUM> may identify the date on which the automated validation of the condition of assembly was performed. Line number <NUM> and model <NUM> may specifically identify fuselage structure <NUM>. Inspection region <NUM> may identify the particular region of fuselage structure <NUM> for which the automated validation of the condition of assembly was performed.

Additionally, report <NUM> includes condition summary <NUM>. Condition summary <NUM> may identify the results of the automated validation of the condition of assembly. For example, without limitation, condition summary <NUM> may identify final score <NUM>, number of issues <NUM>, number of fasteners <NUM>, and number of image sections <NUM>. Final score <NUM> may be an example of one implementation for final score <NUM> in <FIG>.

Final score <NUM> identifies the percentage of image sections analyzed that met their respective corresponding conditions. Number of issues <NUM> identifies the number of issues that were detected. In other words, number of issues <NUM> may identify the number of image sections that did not meet their respective corresponding conditions. Number of fasteners <NUM> identifies the number of fasteners that were recognized by validator <NUM> using one or more image techniques. Number of image sections <NUM> may identify the total number of image sections that were used and analyzed to generate report <NUM>.

The illustrations in <FIG> and <FIG>-<NUM> are not meant to imply physical or architectural limitations to the manner in which an illustrative embodiment may be implemented. Other components in addition to or in place of the ones illustrated may be used. Some components may be optional. The different components shown in <FIG> and <FIG>-<NUM> may be illustrative examples of how components shown in block form in <FIG> and <FIG> can be implemented as physical structures. Additionally, some of the components in <FIG> and <FIG>-<NUM> may be combined with components in <FIG> and <FIG>, used with components in <FIG> and <FIG>, otherwise involved with components in <FIG> and <FIG>, or a combination thereof.

<FIG> is an illustration of a method for performing an automated validation of a condition of assembly for a structure, depicted in accordance with an illustrative embodiment. The method <NUM> illustrated in <FIG> may be used to perform, for example, automated validation process <NUM> as previously described in <FIG>. The method <NUM> is illustrated as a set of operations or processes. Not all of the illustrated operations may be performed in all embodiments of method <NUM>. Additionally, one or more processes that are not expressly illustrated in <FIG> may be included before, after, in between, or as part of the operations. In some embodiments, one or more of the operations may be optional and therefore omitted.

The method <NUM> may begin by registering a plurality of images of the structure to a computer model of the structure in which an image in the plurality of images captures a portion of the structure (operation <NUM>). In operation <NUM>, the structure may be, for example, a fuselage structure such as fuselage structure <NUM> in <FIG>. In other illustrative examples, the structure may be some other type of aircraft structure. Next, each image in the plurality of images may be segmented based on registration of the plurality of images to the computer model to form a plurality of image sections (operation <NUM>). Operation <NUM> may be performed using, for example, without limitation, one or more image recognition and registration techniques.

Thereafter, a final score for the condition of assembly of the structure may be generated based on whether each image section in the plurality of image sections meets a corresponding condition in which the final score indicates whether the condition of assembly is valid (operation <NUM>). In one illustrative example, the final score may be the percentage of the plurality of image sections that met their respective corresponding condition based on their registration to the computer model. The final score may then be displayed on a graphical user interface on a display system (operation <NUM>), with the process terminating thereafter. Each of the operations of the automated validation process described in the method <NUM> in <FIG> may be performed autonomously.

The method <NUM> may begin by generating a plurality of images of a structure using a sensor system (operation <NUM>). In one illustrative example, the sensor system comprises a plurality of sensors positioned at a plurality of fixed positions relative to the structure. In other illustrative examples, the sensor system may be coupled to an automated guided vehicle. In these examples, the automated guided vehicle may be moved along a predetermined path relative to the structure to move the sensor system into a set of positions to generate the plurality of images. The set of positions may be an optimal set of positions that allow an entirety of an area or region of the structure that is of interest to be captured with the fewest number of images.

Next, the plurality of images of the structure may be registered to a computer model of the structure (operation <NUM>). In operation <NUM>, the computer model may be, for example, without limitation, a computer aided design model. Then, each image in the plurality of images is segmented into a set of image sections to thereby form a plurality of image sections (operation <NUM>). Operation <NUM> may be performed by, for example, without limitation, cropping, snipping, or otherwise extracting one or more image sections from each image. In some cases, the entirety of the image may be segmented. In other cases, only certain portions of the image may be segmented such that each image section created captures a portion of the structure that is expected to have a single feature of interest. The single feature of interest may be, for example, without limitation, a hole, a fastener installed in the hole, or some other type of feature that can be visually detected.

Thereafter, a percentage of the plurality of image sections that meet a corresponding condition for each respective image section is computed to generate an initial score for the condition of assembly for the structure (operation <NUM>). In operation <NUM>, a corresponding condition for a particular image section may be, for example, either a presence or absence of a particular feature of interest. In some illustrative examples, the corresponding condition may be selected from one of a presence of a hole, a presence of a fastener installed in a hole, an absence of a hole, an absence of a fastener in a hole, or some other type of condition.

A determination is made as to whether any invalidating events have been identified (operation <NUM>). In operation <NUM>, an invalidating event is a particular image section not meeting a corresponding condition that is critical to the condition of assembly for the structure. For example, in some cases, the presence of fastener in a particular location may be critical to the condition of assembly. If any invalidating events have been identified, the initial score is adjusted to generate a final score for the condition of assembly for the structure (operation <NUM>). In particular, in operation <NUM>, the initial score is adjusted based on the invalidating events identified. Operation <NUM> may be performed by, for example, adjusting the initial score to zero percent to indicate that the invalidating events have made the condition of assembly invalid. In other illustrative examples, an adjustment may be made to the initial score for each invalidating event, with the adjustment being weighted based on an importance of each invalidating event to the condition of assembly for the structure.

A report that includes the final score and a diagram representing the structure and the features of interest on the structure is then generated (operation <NUM>). The report is sent to a computerized numerically controlled machine for processing (operation <NUM>), with the process terminating thereafter. In some cases, the report is used to adjust the computerized numerically controlled machine or generate a command for the computerized numerically controlled machine.

With reference again to operation <NUM>, if no invalidating events have been identified, the initial score is used as the final score for the condition of assembly for the structure (operation <NUM>). The method <NUM> then proceeds to process <NUM> as described above.

<FIG> is an illustration of a method for performing an automated validation of a condition of assembly for an aircraft structure, depicted in accordance with an illustrative embodiment. The method <NUM> illustrated in <FIG> may be used to perform, for example, automated validation process <NUM> as previously described in <FIG>. The method <NUM> is illustrated as a set of operations or processes. Not all of the illustrated operations may be performed in all embodiments of method <NUM>. Additionally, one or more processes that are not expressly illustrated in <FIG> may be included before, after, in between, or as part of the operations. In some embodiments, one or more of the operations may be optional and therefore omitted.

The method <NUM> may begin by generating image data for use in generating a plurality of images of an aircraft structure using a sensor system attached to an automated guided vehicle in which an image in the plurality of images captures a portion of the aircraft structure (operation <NUM>). Next, the plurality of images are sent to a validator for processing (operation <NUM>). The validator may be implemented using a processor or computer system. The plurality of images may be registered to a computer model of the aircraft structure (operation <NUM>).

Thereafter, each image in the plurality of images may be segmented based on the registration of the plurality of images to the computer model to form a plurality of image sections (operation <NUM>). A final score is generated for the aircraft structure based on whether each image section in the plurality of image sections meets a corresponding condition with respect to the computer model of the aircraft structure (operation <NUM>). In operation <NUM>, the final score indicates whether the condition of assembly for the structure is valid. The final score is then displayed in a graphical user interface on a display system (operation <NUM>), with the process terminating thereafter.

<FIG> is an illustration of a method for establishing a pathway for performing an automated validation process, depicted in accordance with an illustrative embodiment. The method <NUM> illustrated in <FIG> may be used to establish a pathway, such as pathway <NUM> in <FIG>, for performing automated validation process <NUM> as previously described in <FIG>. The method <NUM> is illustrated as a set of operations or processes. Not all of the illustrated operations may be performed in all embodiments of method <NUM>. Additionally, one or more processes that are not expressly illustrated in <FIG> may be included before, after, in between, or as part of the operations. In some embodiments, one or more of the operations may be optional and therefore omitted.

The method <NUM> may begin by moving a sensor system coupled to an automated guided vehicle into a plurality of test positions relative to the structure (operation <NUM>). Operation <NUM> may be performed by, for example, moving the automated guided vehicle along a predetermined test pathway to allow the sensor system to be moved into the plurality of test positions. Next, image data is generated at each test position of the plurality of test positions using the sensor system to build a plurality of test images (operation <NUM>). Each test image of the plurality of test images is registered to a computer model of the structure to form a plurality of registered images that are added to a collection of registered images (operation <NUM>).

Operation <NUM> may be performed by, for example, without limitation, drawing correspondences between features of the structure that are detected in a test image and those same features in the computer model. This process may include using, for example, various algorithms and methodologies, including, but not limited to, RANSAC (the Random Sample Consensus algorithm) and ICP (the iterative closest point algorithm).

Thereafter, an optimal set of positions that allows an entirety of an area of the structure that is of interest to be captured using a fewest number of registered images from the collection of registered images is determined from the plurality of test positions (operation <NUM>). Next, a pathway is generated for moving the automated guided vehicle such that the sensor system may be moved into each of the optimal set of positions in a least amount of time (operation <NUM>). A computer file is generated for use in performing an automated validation process to validate the condition of assembly for the structure in which the computer file identifies the pathway for moving the automated guided vehicle and the optimal set of positions for the sensor system (operation <NUM>).

The computer file is then stored for use in performing the automated validation process for a plurality of structures that match a same design specification as the structure (operation <NUM>), with the process terminating thereafter. For example, the pathway and optimal set of positions identified in the computer file may be used to move the automated guided vehicle and sensor system, respectively, relative to other structures that are being assembled according to the same computer model as the structure for the purposes of performing the automated validation process. In some illustrative examples, the computer file may also be stored for use in performing the automated validation process for different assembly or stages of assembly or manufacturing for the structure.

<FIG> is an illustration of a method for determining an optimal set of positions for performing an automated validation process, depicted in accordance with an illustrative embodiment. The method <NUM> illustrated in <FIG> may be an example of one process that may be used to implement operation <NUM> in <FIG>. The method <NUM> is illustrated as a set of operations or processes. Not all of the illustrated operations may be performed in all embodiments of method <NUM>. Additionally, one or more processes that are not expressly illustrated in <FIG> may be included before, after, in between, or as part of the operations. In some embodiments, one or more of the operations may be optional and therefore omitted.

The method <NUM> may begin by selecting the fewest number of registered images from the collection of registered images that allows the entirety of an area of the structure that is of interest to be captured to form a final image set (operation <NUM>). Next, a test position corresponding to each registered image in the final image set is identified to form the optimal set of positions (operation <NUM>), with the process terminating thereafter.

<FIG> is a block diagram of a data processing system, depicted in accordance with an illustrative embodiment. Data processing system <NUM> may be used to implement validator <NUM> in <FIG> and pathway generator <NUM> in <FIG>. As depicted, data processing system <NUM> includes communications framework <NUM>, which provides communications between processor unit <NUM>, storage devices <NUM>, communications unit <NUM>, input/output unit <NUM>, and display <NUM>. In some cases, communications framework <NUM> may be implemented as a bus system.

Processor unit <NUM> is configured to execute instructions for software to perform a number of operations. Processor unit <NUM> may comprise a number of processors, a multiprocessor core, and/or some other type of processor, depending on the implementation. In some cases, processor unit <NUM> may take the form of a hardware unit, such as a circuit system, an application specific integrated circuit (ASIC), a programmable logic device, or some other suitable type of hardware unit.

Instructions for the operating system, applications, and/or programs run by processor unit <NUM> may be located in storage devices <NUM>. Storage devices <NUM> may be in communication with processor unit <NUM> through communications framework <NUM>. As used herein, a storage device, also referred to as a computer readable storage device, is any piece of hardware capable of storing information on a temporary and/or permanent basis. This information may include, but is not limited to, data, program code, and/or other information.

Memory <NUM> and persistent storage <NUM> are examples of storage devices <NUM>. Memory <NUM> may take the form of, for example, a random access memory or some type of volatile or non-volatile storage device. Persistent storage <NUM> may comprise any number of components or devices. For example, persistent storage <NUM> may comprise a hard drive, a flash memory, a rewritable optical disk, a rewritable magnetic tape, or some combination of the above. The media used by persistent storage <NUM> may or may not be removable.

Communications unit <NUM> allows data processing system <NUM> to communicate with other data processing systems and/or devices. Communications unit <NUM> may provide communications using physical and/or wireless communications links.

Input/output unit <NUM> allows input to be received from and output to be sent to other devices connected to data processing system <NUM>. For example, input/output unit <NUM> may allow user input to be received through a keyboard, a mouse, and/or some other type of input device. As another example, input/output unit <NUM> may allow output to be sent to a printer connected to data processing system <NUM>.

Display <NUM> is configured to display information to a user. Display <NUM> may comprise, for example, without limitation, a monitor, a touch screen, a laser display, a holographic display, a virtual display device, and/or some other type of display device.

In this illustrative example, the processes of the different illustrative embodiments may be performed by processor unit <NUM> using computer-implemented instructions. These instructions may be referred to as program code, computer usable program code, or computer readable program code and may be read and executed by one or more processors in processor unit <NUM>.

In these examples, program code <NUM> is located in a functional form on computer readable media <NUM>, which is selectively removable, and may be loaded onto or transferred to data processing system <NUM> for execution by processor unit <NUM>. Program code <NUM> and computer readable media <NUM> together form computer program product <NUM>. In this illustrative example, computer readable media <NUM> may be computer readable storage media <NUM> or computer readable signal media <NUM>.

Computer readable storage media <NUM> is a physical or tangible storage device used to store program code <NUM> rather than a medium that propagates or transmits program code <NUM>. Computer readable storage media <NUM> may be, for example, without limitation, an optical or magnetic disk or a persistent storage device that is connected to data processing system <NUM>.

Alternatively, program code <NUM> may be transferred to data processing system <NUM> using computer readable signal media <NUM>. Computer readable signal media <NUM> may be, for example, a propagated data signal containing program code <NUM>. This data signal may be an electromagnetic signal, an optical signal, and/or some other type of signal that can be transmitted over physical and/or wireless communications links.

The illustration of data processing system <NUM> in <FIG> is not meant to provide architectural limitations to the manner in which the illustrative embodiments may be implemented. The different illustrative embodiments may be implemented in a data processing system that includes components in addition to or in place of those illustrated for data processing system <NUM>. Further, components shown in <FIG> may be varied from the illustrative examples shown.

Illustrative embodiments of the disclosure may be described in the context of aircraft manufacturing and service method <NUM> as shown in <FIG> and aircraft <NUM> as shown in <FIG> is an illustration of an aircraft manufacturing and service method, depicted in accordance with an illustrative embodiment. Aircraft manufacturing and service method <NUM> may be used to manufacture, for example, aircraft <NUM> in <FIG>. During pre-production, aircraft manufacturing and service method <NUM> may include specification and design <NUM> of aircraft <NUM> in <FIG> and material procurement <NUM>.

During production, component and subassembly manufacturing <NUM> and system integration <NUM> of aircraft <NUM> in <FIG> takes place. Thereafter, aircraft <NUM> in <FIG> may go through certification and delivery <NUM> in order to be placed in service <NUM>. While in service <NUM> by a customer, aircraft <NUM> in <FIG> is scheduled for routine maintenance and service <NUM>, which may include modification, reconfiguration, refurbishment, and other maintenance or service.

<FIG> is a block diagram of an aircraft, depicted in accordance with an illustrative embodiment. In this example, aircraft <NUM> is produced by aircraft manufacturing and service method <NUM> in <FIG> and may include airframe <NUM> with plurality of systems <NUM> and interior <NUM>. Examples of systems <NUM> include one or more of propulsion system <NUM>, electrical system <NUM>, hydraulic system <NUM>, and environmental system <NUM>. Any number of other systems may be included. Although an aerospace example is shown, different illustrative embodiments may be applied to other industries, such as the automotive industry.

Apparatuses and methods embodied herein may be employed during at least one of the stages of aircraft manufacturing and service method <NUM> in <FIG>. In particular, automated validation process <NUM> from <FIG> may be performed during any one of the stages of aircraft manufacturing and service method <NUM>. For example, without limitation, validation system <NUM> in <FIG> may be used to perform automated validation process <NUM> to validate a condition of assembly for a structure of aircraft <NUM> during at least one of component and subassembly manufacturing <NUM>, system integration <NUM>, routine maintenance and service <NUM>, or some other stage of aircraft manufacturing and service method <NUM>. Still further, pathway generator <NUM> from <FIG> may be used to establish a pathway for performing automated validation process <NUM> during any one of the stages of aircraft manufacturing and service method <NUM>.

In one illustrative example, components or subassemblies produced in component and subassembly manufacturing <NUM> in <FIG> may be fabricated or manufactured in a manner similar to components or subassemblies produced while aircraft <NUM> is in service <NUM> in <FIG>. As yet another example, one or more apparatus embodiments, method embodiments, or a combination thereof may be utilized during production stages, such as component and subassembly manufacturing <NUM> and system integration <NUM> in <FIG>. One or more apparatus embodiments, method embodiments, or a combination thereof may be utilized while aircraft <NUM> is in service <NUM> and/or during maintenance and service <NUM> in <FIG>. The use of a number of the different illustrative embodiments may substantially expedite the assembly of and/or reduce the cost of aircraft <NUM>.

<FIG> illustrate a hanging support <NUM> that hangs from a floor beam of an aircraft and bears an inspection system. Specifically, <FIG> illustrate views of hanging support <NUM>', <FIG> illustrate views of hanging support <NUM>' bearing a mounted inspection system <NUM>' as a load, and <FIG> illustrate components of adjustable clamp <NUM>' of hanging support <NUM>'.

Turning to <FIG> is a perspective view of hanging support <NUM>' in an illustrative embodiment. In this embodiment, hanging support <NUM>' includes adjustable clamp <NUM>', which attaches to a floor beam or other portion of an airframe of an aircraft. Hanging support <NUM>' further includes frame <NUM>', and mount <NUM>'. Frame <NUM>' protrudes vertically downward from the adjustable clamp <NUM>', forming a right angle with adjustable clamp <NUM>'. Mount <NUM>' protrudes vertically downward from frame <NUM>' and applies torque to frame <NUM>' when bearing a load such as an inspection system (e.g., inspection system <NUM>' of <FIG>).

Adjustable clamp <NUM>' is designed to facilitate one-handed installation of hanging support <NUM>' via handle <NUM>', in order to enhance the safety of one or more technicians who may be placing hanging support <NUM>' at various locations within an aircraft. Further details of adjustable clamp <NUM>' are provided with respect to <FIG>.

Frame <NUM>' includes multiple rigid members <NUM>', <NUM>', and <NUM>' which are fixedly attached to each other. Rigid member <NUM>' is vertically oriented, and is attached to adjustable clamp <NUM>'. Frame <NUM>' further includes feet <NUM>', which may contact a floor beam (e.g., floor beam <NUM>' of <FIG>) to which adjustable clamp <NUM>' is attached. Feet <NUM>' define rightward surfaces <NUM>', which are parallel with rightward surface <NUM>' of rigid member <NUM>'. In this embodiment, frame <NUM>' further includes adjustable platform <NUM>', which may be adjustably repositioned along rigid member <NUM>' by loosening handles <NUM>' and sliding support <NUM>' upward or downward along slot <NUM>'. In this manner, handles <NUM>' lock the adjustable platform <NUM>' into place at frame <NUM>'. Adjustable platform <NUM>' defines a horizontal surface <NUM>'.

Mount <NUM>' is fixedly attached to frame <NUM>', protrudes vertically downward, from frame <NUM>', and includes feet <NUM>' which define grooves <NUM>' for receiving a load such as an inspection system that will hang from mount <NUM>' and hence apply downward force to frame <NUM>'. Spring-loaded pull-out pins <NUM>' snap into place on the load after the load has been inserted a desired distance into mount <NUM>'.

Further details of the features of hanging support <NUM>' will be discussed with regard to <FIG> is a front view of hanging support <NUM>' indicated by view arrows <NUM> of <FIG>. <FIG> shows that adjustable clamp <NUM>' is affixed to upper portion <NUM>' of frame <NUM>', while mount <NUM>' is affixed to lower portion <NUM>' of frame <NUM>'. <FIG> also illustrates that feet <NUM>' include rubberized pads <NUM>', which may help to prevent swaying or other movement of hanging support <NUM>' after hanging support <NUM>' has been placed. Rubberized pads <NUM>' may further prevent surface scratches at the floor beam. In further embodiments, all contact surfaces between the adjustable clamp <NUM>' and the floor beam are rubberized. In <FIG>, stop <NUM>' has been illustrated as well. Stop <NUM>' corresponds with a matching indent on a corresponding load attached to mount <NUM>'. Stop <NUM>' prevents an inserted load from being over inserted or otherwise pushed out the other end of mount <NUM>'. With an introductory discussion provided regarding the components of hanging support <NUM>', further description focuses upon hanging support <NUM>' as utilized when bearing a load.

<FIG> is a perspective view of a hanging support in an illustrative embodiment. According to <FIG>, hanging support <NUM>' has been clamped onto floor beam <NUM>', of which only a partial segment is shown. Hanging support <NUM>' bears a mounted inspection system <NUM>', which acquires images or other data utilized for inspecting an interior of an aircraft. For example, inspection system <NUM>' may compare known locations of fasteners in the aircraft to expected locations of fasteners in the aircraft, in order to ensure that fasteners are placed within tolerance limits.

In this embodiment, inspection system <NUM>' includes imaging system <NUM>', and housing <NUM>'. Housing <NUM>' may include a computer or other components for operating imaging system <NUM>', and/or analyzing data provided by imaging system <NUM>'. Housing <NUM>' includes projections <NUM>' which correspond with grooves <NUM>' of mount <NUM>', allowing for slidable insertion of inspection system <NUM>' into mount <NUM>'.

<FIG> is a side view of hanging support <NUM>' bearing a load in an illustrative embodiment, and is indicated by view arrows <NUM> of <FIG>. <FIG> illustrates that imaging system <NUM>' includes camera <NUM>', which is rotated by actuator <NUM>' about shaft <NUM>'. This configuration allows camera <NUM>' to image a full three hundred and sixty degree view of the interior (e.g., top-to-bottom) of the aircraft.

In this embodiment, centerline <NUM>' of camera <NUM>' is aligned with wall <NUM>' of floor beam <NUM>'. Wall <NUM>' is typically referred to as a "web. " In further embodiments with floor beams having an "I", "J", "T", and/or "Z" cross section, centerline <NUM>' may be aligned with any suitable Outer Mold Line (OML) of the floor beam. Upper lip <NUM>' and lower lip <NUM>' (i.e., an additional lip) of floor beam <NUM>' are also illustrated. Adjustable platform <NUM>' is pressed against lower lip <NUM>', while adjustable clamp <NUM>' is hooked around upper lip <NUM>' and clamped to floor beam <NUM>'.

Adjustable clamp <NUM>' also includes a handle <NUM>', a rod <NUM>', a first assembly <NUM>', and a second assembly <NUM>'. Rod <NUM>' extends horizontally through first assembly <NUM>' and second assembly <NUM>'. Second assembly <NUM>' includes a rigid part <NUM>'. Rigid part <NUM>' includes an upper horizontal portion <NUM>' that contacts first assembly <NUM>' when adjustable clamp <NUM>' is closed. Rigid part <NUM>' also includes a vertical portion <NUM>' that protrudes downwards from upper horizontal portion <NUM>', and a lower horizontal portion <NUM>' that protrudes horizontally (e.g., to the right) from a lower end <NUM>' of vertical portion <NUM>' towards first assembly <NUM>'. Rigid member <NUM>' forms a right angle with adjustable clamp <NUM>', and continues vertically below vertical portion <NUM>' of rigid part <NUM>'. Further details of adjustable clamp <NUM>' are provided with respect to <FIG>, which correspond with view arrows <NUM> of <FIG>.

<FIG> is a perspective view of first assembly <NUM>' of an adjustable clamp in an illustrative embodiment. In this embodiment, first assembly <NUM>' is placed atop upper lip <NUM>'. Upper lip <NUM>' may also be referred to as a flange of a C channel. First assembly <NUM>' includes horizontal part <NUM>', which is attached to rigid members <NUM>' and plate <NUM>'. Slot <NUM>' of horizontal part <NUM>' is used to facilitate of sliding of second assembly <NUM>' with respect to first assembly <NUM>'. Horizontal part <NUM>' defines planar lower surface <NUM>' that sits atop and contacts the upper lip <NUM>'. Planar lower surface <NUM>' is parallel with and faces the horizontal surface <NUM>' of adjustable platform <NUM>'.

First assembly <NUM>' further includes feet <NUM>', which protrude from the horizontal part <NUM>' perpendicular to an axial direction of horizontal part <NUM>'. Feet <NUM>' have lower surfaces <NUM>' that are coplanar with the planar lower surface <NUM>' of the horizontal part <NUM>'. Nut <NUM>' is secured within rigid part <NUM>' of second assembly <NUM>'.

<FIG> is a perspective view of a second assembly <NUM>' of adjustable clamp <NUM>' in an illustrative embodiment. <FIG> illustrates bolts <NUM>' that slide within feet <NUM>'. A spring <NUM>' is wrapped around each bolt <NUM>', and is bordered by nut <NUM>' on one end, and lip <NUM>' on the other end. If bolts <NUM>' slide too far to the left (e.g., because second assembly <NUM>' has slid too far to the left), springs <NUM>' apply force that slides bolts <NUM>' back to the right. Also provided for context is handle <NUM>', and rod <NUM>' (which includes threading <NUM>'), and adjustable stop <NUM>' (e.g., a wing nut). Nut <NUM>' and cap <NUM>' are fasteners that fasten rod <NUM>' to second assembly <NUM>'.

According to <FIG>, rigid part <NUM>' is secured to rod <NUM>' via cap <NUM>' and nut <NUM>' (which is hidden from view, but visible in <FIG>). Receptacles <NUM>' at rigid part <NUM>' receive bolts <NUM>', and secure the nuts <NUM>' in place. This arrangement affixes the bolts <NUM>' to second assembly <NUM>'. Thus, second assembly <NUM>' is spring-loaded by springs <NUM>'. <FIG> further illustrates projections <NUM>', which protrude from rigid part <NUM>' into slot <NUM>' of horizontal part <NUM>', and slide within slot <NUM>' as adjustable clamp <NUM>' extends and retracts. Also illustrated is leftward surface <NUM>' defined by vertical portion <NUM>'. Leftward surface <NUM>' is parallel with and faces the rightward surface <NUM>' defined by rigid member <NUM>'.

With an illustration provided of both first assembly <NUM>' and second assembly <NUM>', it will be understood that a technician may align adjustable clamp <NUM>' with floor beam <NUM>', then push on handle <NUM>' of <FIG> to extend adjustable clamp <NUM>'. This action pushes second assembly <NUM>' away from first assembly <NUM>'. The technician may then "hook" the lower horizontal portion <NUM>' about upper lip <NUM>', and release the handle <NUM>', causing adjustable clamp <NUM>' to retract and grip the floor beam <NUM>'. The technician may further adjust the location of adjustable stop <NUM>' in order to prevent adjustable clamp <NUM>' from extending, and slide platform <NUM>' into contact with lower lip <NUM>'. In this manner, hanging support <NUM>' becomes secured to floor beam <NUM>'.

Illustrative details of the operation of hanging support <NUM>' will be discussed with regard to <FIG>. Assume, for this embodiment, that a technician wishes to place inspection system <NUM>' in position for inspecting an aircraft, but that no support has been placed for holding inspection system <NUM>' in position.

<FIG> is a flowchart illustrating a method <NUM>' for installing a hanging support in an illustrative embodiment. The steps of method <NUM>' are described with reference to hanging support <NUM>' of <FIG>, but those skilled in the art will appreciate that method <NUM>' may be performed in other systems.

A floor beam of the aircraft is selected (step <NUM>'). The floor beam may be selected based on a predefined plan, or may be dynamically determined. Hanging support <NUM> is then attached to lip <NUM>' of the floor beam as described in steps <NUM>'-<NUM>' below. Adjustable clamp <NUM>' of hanging support <NUM>' is aligned with upper lip <NUM>' of floor beam <NUM>' (step <NUM>'). This alignment, may, for example, involve vertically positioning rigid part <NUM>' over upper lip <NUM>'. Frame <NUM>' of hanging support <NUM>' is placed in contact with wall <NUM>' of floor beam <NUM>', for example by placing feet <NUM>' of frame <NUM>' against wall <NUM>' (step <NUM>').

With hanging support <NUM>' in position, handle <NUM>' is pushed, extending adjustable clamp <NUM>' of hanging support <NUM>' (step <NUM>'). This includes disposing a lower surface of adjustable clamp <NUM>' atop upper lip <NUM>' of floor beam <NUM>'. While adjustable clamp <NUM>' is extended, second assembly <NUM>' is pushed away from first assembly <NUM>'. This opens adjustable clamp <NUM>' wide enough to cover upper lip <NUM>' of floor beam <NUM>' with rigid part <NUM>' of adjustable clamp <NUM>' (step <NUM>'). This may be performed by sliding rigid part <NUM>' over upper lip <NUM>'. For example, lower horizontal portion <NUM>' may be hooked around upper lip <NUM>', securing hanging support <NUM>' in place. Adjustable clamp <NUM>' is then tightened onto floor beam <NUM>' (step <NUM>'). For example, handle <NUM>' may be released in order to retract second assembly <NUM>', and/or adjustable stop <NUM>' may be threaded into place to prevent adjustable clamp <NUM>' from extending again. A load (e.g., inspection system <NUM>') is placed at mount <NUM>' of hanging support <NUM>'<NUM> (step <NUM>'). Mount <NUM>' protrudes from rigid member <NUM>' of frame <NUM>' in a horizontal direction. This design feature causes a load (e.g., inspection system <NUM>') at mount <NUM>' to apply torque that presses frame <NUM>' into wall <NUM>' of floor beam <NUM>' (step <NUM>'). The aircraft is then inspected via inspection system <NUM>' (step <NUM>').

Method <NUM>' provides a number of advantages over prior placement and installation techniques for inspection systems. First, the unique geometry of adjustable clamp <NUM>' allows for a technician to perform a one-handed installation of hanging support <NUM>'. This ensures that if a technician is using a ladder during installation of hanging support <NUM>', the technician still has a hand free in order to provide personal balance and stability.

Second, hanging support <NUM>' itself has a unique geometry which causes application of a load at mount <NUM>' to enhance the stability of hanging support <NUM>', by providing torque that presses frame <NUM>' firmly into floor beam <NUM>'.

<FIG> illustrate a further illustrative embodiment of an adjustable clamp <NUM>' which may be utilized by hanging support <NUM>'. Specifically, <FIG> illustrate an adjustable clamp <NUM>' that may be clamped to a lower lip of a floor beam <NUM>' having an "I" shaped cross-section instead of a "C" shaped cross-section.

<FIG> is a perspective view of adjustable clamp <NUM>'. According to <FIG>, adjustable clamp <NUM>' includes handle <NUM>', and rod <NUM>' (which is threaded), along with adjustable stop <NUM>'. Rod <NUM>' continues through rigid part <NUM>', and through rigid part <NUM>'. In this embodiment, rigid part <NUM>' includes multiple prongs <NUM>', as well as a central prong <NUM>' which includes a cut-out <NUM>'. Adjustable clamp <NUM>' is presently clamped to floor beam <NUM>', which includes upper lip <NUM>', lower lip <NUM>', and rib <NUM>'.

<FIG> is a side of view the adjustable clamp <NUM>', and corresponds with view arrows <NUM> of <FIG>. According to <FIG>, adjustable clamp <NUM>' further includes feet <NUM>', via which bolt <NUM>' slides. Bolt <NUM>' includes lip <NUM>', which acts as a stop for spring <NUM>'. Feet <NUM>' are fixedly attached to rigid part <NUM>'. However, rigid part <NUM>' is only connected to bolt <NUM>' (via receptacle <NUM>'), as well as rod <NUM>' (via a fastener, not shown). Thus, rigid part <NUM>' may be extended away from rigid part <NUM>' by pressing handle <NUM>'. In this embodiment, rigid part <NUM>' includes prongs <NUM>' (e.g., upper horizontal portions), as well as lower horizontal portion <NUM>'. Lower horizontal portion <NUM>' protrudes towards rigid part <NUM>'.

<FIG> is a front view of adjustable clamp <NUM>, and corresponds with view arrows <NUM> of <FIG>. This view illustrates that rigid part <NUM> includes holes via which bolts <NUM> may travel.

In the following examples, additional processes, systems, and methods are described in the context of an adjustable hanging support.

<FIG> is a block diagram of a hanging support <NUM>' holding an inspection system in an illustrative embodiment. According to <FIG>, hanging support <NUM>' includes clamp <NUM>', frame <NUM>', and mount <NUM>'. Clamp <NUM>' includes horizontal part <NUM>', which contacts wall <NUM>' of floor beam <NUM>'. Foot <NUM>' is attached to horizontal part <NUM>', and contacts the upper lip <NUM>' of floor beam <NUM>'. A position of rod <NUM>' is controlled by handle <NUM>' and stop <NUM>', which enables rigid part <NUM>' to be displaced with respect to the rest of clamp <NUM>'. Bolt <NUM>' is coupled to upper horizontal portion <NUM>' of rigid part <NUM>', and spring <NUM>' returns the rigid part <NUM>' to a default position when no force is applied. Lower horizontal portion <NUM>' projects outward from vertical portion body <NUM>' toward frame <NUM>', and is wrapped around upper lip <NUM>'.

Frame <NUM>' includes rigid member <NUM>', rigid member <NUM>', and rigid member <NUM>'. Foot <NUM>' extends from rigid member <NUM>', and pad <NUM>' of foot <NUM>' contacts wall <NUM>' of floor beam <NUM>'. Support <NUM>' adjustably slides at slot <NUM>', and holds platform <NUM>' in place. Platform <NUM>' contacts lower lip <NUM>' of floor beam <NUM>', further strengthening the grip of hanging support <NUM>' at floor beam <NUM>'.

Mount <NUM>' includes feet <NUM>', which define grooves <NUM>'. Spring-loaded pull-out pins are also provided at mount <NUM>' to hold inspection system <NUM>' in position. Furthermore, a stop <NUM>' is provided at mount <NUM> to prevent over-insertion of inspection system <NUM>'.

In this embodiment, inspection system <NUM>' includes projections <NUM>', which extend from housing <NUM>' and mate with grooves <NUM>'. Inspection system <NUM>' further includes inspection system <NUM>', which inspects the interior of an aircraft. In this embodiment, inspection system <NUM>' includes camera <NUM>', and actuator <NUM>' which rotates camera <NUM>' about shaft <NUM>'.

Referring more particularly to the drawings, embodiments of the disclosure may be described in the context of an aircraft manufacturing and service method <NUM>' as shown in <FIG> and an aircraft <NUM>' as shown in <FIG>. During pre-production, illustrative method <NUM>' may include specification and design <NUM>' of the aircraft <NUM>' and material procurement <NUM>'. During production, component and subassembly manufacturing <NUM>' and system integration <NUM>' of the aircraft <NUM>' takes place. Thereafter, the aircraft <NUM>' may go through certification and delivery <NUM>' in order to be placed in service <NUM>'. While in service by a customer, the aircraft <NUM>' is scheduled for routine maintenance and service <NUM>' (which may also include modification, reconfiguration, refurbishment, and so on). Apparatus and methods embodied herein may be employed during any one or more suitable stages of the production and service method <NUM>' (e.g., specification and design <NUM>', material procurement <NUM>', component and subassembly manufacturing <NUM>', system integration <NUM>', certification and delivery <NUM>', service <NUM>', maintenance and service <NUM>') and/or any suitable component of aircraft <NUM>' (e.g., airframe <NUM>', systems <NUM>', interior <NUM>', propulsion <NUM>', electrical <NUM>', hydraulic <NUM>', environmental <NUM>').

Each of the processes of method <NUM>' may be performed or carried out by a system integrator, a third party, and/or an operator (e.g., a customer).

As shown in <FIG>, the aircraft <NUM>' produced by illustrative method <NUM>' may include an airframe <NUM>' with a plurality of systems <NUM>' and an interior <NUM>'. Examples of high-level systems <NUM>' include one or more of a propulsion system <NUM>', an electrical system <NUM>', a hydraulic system <NUM>', and an environmental system <NUM>'. Any number of other systems may be included. Although an aerospace example is shown, the principles of the invention may be applied to other industries, such as the automotive industry.

As already mentioned above, apparatus and methods embodied herein may be employed during any one or more of the stages of the production and service method <NUM>. For example, components or subassemblies corresponding to production stage <NUM> may be fabricated or manufactured in a manner similar to components or subassemblies produced while the aircraft <NUM>' is in service. Also, one or more apparatus embodiments, method embodiments, or a combination thereof may be utilized during the production stages <NUM>' and <NUM>', for example, by substantially expediting assembly of or reducing the cost of an aircraft <NUM>'. Similarly, one or more of apparatus embodiments, method embodiments, or a combination thereof may be utilized while the aircraft <NUM>' is in service, for example and without limitation, to maintenance and service <NUM>'. For example, the techniques and systems described herein may be used for steps <NUM>', <NUM>', <NUM>', <NUM>', and/or <NUM>', and/or may be used for airframe <NUM>' and/or interior <NUM>'. These techniques and systems may even be utilized for systems <NUM>', including for example propulsion <NUM>', electrical <NUM>', hydraulic <NUM>', and/or environmental <NUM>'.

In one embodiment, an inspection system <NUM>' is held by hanging support <NUM>' and is utilized to analyze airframe <NUM>' before or after component and subassembly manufacturing <NUM>', or system integration <NUM>'. Hanging support <NUM>' may support inspection system <NUM>' during this process. The airframe <NUM>' may then be utilized in service <NUM>'. Then, in maintenance and service <NUM>', hanging support <NUM>' may again be used to hold an inspection system <NUM>' in place. Inventive components and methods may be utilized throughout component and subassembly manufacturing <NUM>' in order to inspect various structural components of aircraft <NUM>'.

Claim 1:
A method of performing an automated validation (<NUM>) of a condition of assembly (<NUM>) for a structure (<NUM>), the method comprising:
registering (<NUM>) a plurality of images (<NUM>) of the structure (<NUM>) to a computer model (<NUM>) of the structure (<NUM>) in which an image (<NUM>) in the plurality of images (<NUM>) captures a portion of the structure (<NUM>);
segmenting (<NUM>) each image in the plurality of images (<NUM>) based on registration of the plurality of images (<NUM>) to the computer model (<NUM>) to form a plurality of image sections (<NUM>); and
generating (<NUM>) a final score (<NUM>) for the condition of assembly (<NUM>) of the structure (<NUM>) based on whether each image section in the plurality of image sections (<NUM>) meets a corresponding condition in which the final score (<NUM>) indicates whether the condition of assembly (<NUM>) is valid, wherein generating (<NUM>) the final score (<NUM>) comprises comparing an image section (<NUM>) in the plurality of image sections (<NUM>) to a corresponding portion of the computer model (<NUM>) of the structure (<NUM>) to determine whether the image section (<NUM>) meets the corresponding condition;
wherein generating (<NUM>) the final score (<NUM>) comprises:
computing (<NUM>) an initial score (<NUM>) for the condition of assembly (<NUM>) of the structure (<NUM>) by computing a percentage of the plurality of image sections (<NUM>) that meet the corresponding condition for each respective image section in the plurality of image sections (<NUM>);
determining (<NUM>) whether or not any invalidating events have been identified; and
adjusting (<NUM>) the initial score (<NUM>) to create the final score (<NUM>) in response to a determination that at least one invalidating event has been identified, wherein the adjusting is made for each invalidating event identified and weighted based on an importance of each invalidating event to the condition of assembly (<NUM>) for the structure (<NUM>), wherein the at least one invalidating event is that a particular image section (<NUM>) does not meet a corresponding condition that is critical to the condition of assembly for the structure.