Patent Description:
Tread applications devices for applying a tread in a tire building drum are known from <CIT> and <CIT>. <CIT> describes the centering of a tire component on a conveyor. <CIT> describes an apparatus for positioning and slitting a laminar material and a respective method.

The invention relates to an apparatus in accordance with claim <NUM> and to a method in accordance with claim <NUM>.

In one embodiment, an apparatus is provided that includes a tire building drum and a machine vision system directed at the tire building drum, the machine vision system producing a three dimensional image of a green rubber tread applied to the tire building drum. The apparatus further comprises at least one processor circuit with a memory comprising instructions, that when executed by the processor circuit, causes the at least one processor circuit to at least identify a center of the green rubber tread in the three dimensional image by performing at least one convolution with at least one profile trace of the green rubber tread and a predefined tread profile, identify a difference between the center of the green rubber tread and a target position of the tire building drum, and use the difference as a tread position feedback error to position an application of a next green rubber tread onto the tire building drum from a tread conveyor.

In a further embodiment, a method is provided that comprises the steps of directing a machine vision system to a tire building drum in a tire building machine, the machine vision system producing a three dimensional image of a green rubber tread applied to the tire building drum. A center of the green rubber tread is identified in the three dimensional image by performing at least one convolution with at least one profile trace of the green rubber tread and a predefined tread profile. A difference between the center of the green rubber tread and a center of the tire building drum is identified. Then, the difference is used as a tread position feedback error to position an application of a next green rubber tread onto the tire building drum from a tread conveyor.

In addition, all optional and preferred features and modifications of the described embodiments are usable in all aspects of the disclosure taught herein. Furthermore, the individual features of the dependent claims, as well as all optional and preferred features and modifications of the described embodiments are combinable and interchangeable with one another.

Many aspects of the present disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, with emphasis instead being placed upon clearly illustrating the principles of the disclosure.

With reference to <FIG>, shown are various components of a tire building machine <NUM> according to various embodiments of the present disclosure. In the following discussion, first the components of the tire building machine <NUM> are discussed followed by a discussion of the operation of the same.

To begin, the tire building machine <NUM> includes a tire building drum <NUM> that rotates and moves axially in two directions. The tire building machine <NUM> also includes a first application conveyor 106a and a second application conveyor 106b. A first feed conveyor 109a is positioned adjacent to the first application conveyor 106a, and a second feed conveyor 109b is positioned adjacent to the second application conveyor 106b.

The tire building machine <NUM> further includes a tread application conveyor <NUM> that is positioned above the second application conveyor 106b and second feed conveyor 109b.

The tire building drum <NUM> is moved axially between various positions during the process of building a tire (not shown). During the build process, the tire building drum <NUM> may be moved to position A to engage with the first application conveyor 106a as will be described. Thereafter, the tire building drum <NUM> is typically moved to position B to engage with the second application conveyor 106b and the tread application conveyor <NUM> as will be described.

The first application conveyor 106a and the first feed conveyor 109a convey a first breaker 114a to the tire building drum <NUM> when the tire building drum <NUM> is in position A as will be described. The second application conveyor 106b and the second feed conveyor 109b convey a second breaker 114b to the tire building drum <NUM> when the tire building drum <NUM> is in position B as will be described. The feed conveyors <NUM> a/b are placed end to end relative to the application conveyors 106a/b such that a breaker 114a/b that is conveyed by a respective feed conveyor 109a/b is transferred to a respective application conveyor 106a/b. Also, the tread application conveyor <NUM> conveys a green rubber tread <NUM> to the tire building drum <NUM> when the tire building drum <NUM> is in position B as will be described.

Lateral movement and positioning of each of the first and second feed conveyors 109a and 109b can be adjusted by various actuators and positioning infrastructure such as can be appreciated. A first breaker guiding system 116a is associated with the first feed conveyor 109a and controls the lateral movement and positioning of the first feed conveyor 109a. Also, a second breaker guiding system 116b is associated with the second feed conveyor 109b and controls the lateral movement and positioning of the second feed conveyor 109b. A tread application shifter <NUM> is configured to shift the green rubber tread <NUM> laterally as the green rubber tread <NUM> is applied to the tire building drum <NUM> when the tire building drum <NUM> is in position B.

The tire building machine <NUM> further includes a machine vision system <NUM> according to various embodiments. The machine vision system <NUM> may employ three dimensional (3D) triangulation or other type of machine vision technology to generate an image of the tire building drum <NUM> in each of positions A and B where the tire building drum <NUM> is positioned during the tire build process as will be described.

A machine vision system <NUM> includes lasers <NUM> that illuminate a laser trace <NUM> in an axial direction on the surface of the tire building drum <NUM>. The machine vision system <NUM> also includes 3D cameras <NUM> that generate a 3D image <NUM> of the tire building drum <NUM> as breakers 114a/b or a green rubber tread <NUM> are applied to the tire building drum <NUM>. The position or direction of the lasers <NUM> and the 3D cameras <NUM> may be configured to change depending on the size of a given tire under construction. In this respect, the structure upon with the lasers <NUM> and 3D cameras <NUM> are mounted provides for the rotation or other movement of the lasers <NUM> or 3D cameras <NUM> in order to properly direct the lasers <NUM> to the tire building drum <NUM> or to position the 3D cameras <NUM> so that the tire building drum <NUM> is properly positioned in the field of view of the camera <NUM>. By virtue of the positioning of the lasers <NUM> and the 3D cameras <NUM>, the machine vision system <NUM> is directed to the tire building drum <NUM>.

The 3D cameras <NUM> are controlled by an imaging controller <NUM>. To this end, the imaging controller <NUM> causes one of the respective 3D cameras <NUM> to acquire a 3D image <NUM> of the tire building drum <NUM> as the tire building drum <NUM> rotates and a breaker 114a/b or a green rubber tread <NUM> is applied thereto. Any 3D image <NUM> generated by a respective 3D camera <NUM> is stored in a memory associated with the imaging controller <NUM> to be processed for purposes of quality control and potentially other purposes.

The imaging controller <NUM> generates feedback signals 146a, 146b, or 146c that are used to adjust the operational set point for each one of the breaker guiding systems 116a/b and the tread application shifter <NUM> as shown.

Next a description of the operation of the tire building machine <NUM> is described. When building a tire, the tire building drum <NUM> is moved to position A just above an end roller of the first application conveyor 106a. Initially, the first breaker 114a, second breaker 114b, and the green rubber tread <NUM> are all stored as a single continuous strip on a spool that unravels as the breaker <NUM> a/b or green rubber tread <NUM> progress onto the feed conveyors <NUM> a/b or the tread application conveyor <NUM> as is appropriate. At some point in the process the single continuous strip of the breaker 114a/b or the green rubber tread <NUM> on a spool is cut into tire-sized segments that move along the feed conveyors 109a/b or the tread application conveyor <NUM>.

The breakers 114a/b move along the first and second feed conveyors 109a/b, the breaker guiding systems 116a/b adjust the lateral position of the first and second feed conveyors 109a/b, respectively, so that when the breakers 114a/b transfer to their respective application conveyors 106a/b, they are properly positioned on the respective application conveyors 106a/b to be applied to the tire building drum <NUM>. In applying the breakers 114a/b to the tire building drum <NUM>, the breakers 114a/b are pinched between the tire building drum <NUM> and an application roller of the respective application conveyor 106a/b, thereby causing the breaker 114a/b to stick to the tire building drum <NUM> as it rotates about its axis. In one embodiment, the distance between the tire building drum <NUM> and the final roller of the first and second application conveyors 106a/b is approximately equal to the thickness of a given breaker 114a/b.

Note that the first breaker 114a progresses along the first application conveyor 106a and is applied to the tire building drum <NUM> when the tire building drum <NUM> is in position A. The second breaker 114b or the green rubber tread <NUM> progress along the second application conveyor 106b or the tread application conveyor <NUM> to be applied to the tire building drum <NUM> when the tire building drum <NUM> is position B.

When a green rubber tread <NUM> reaches the end of the tread application conveyor <NUM>, the tread application shifter <NUM> positions the application of the green rubber tread <NUM> onto the tire building drum <NUM> from the tread application conveyor <NUM>. In this manner, a green rubber tread <NUM> is positioned on the tire building drum <NUM> as it is transferred from the tread application conveyor <NUM> to the tire building drum <NUM>.

When the tire building drum <NUM> is in position A or position B to receive a first breaker 114a, a second breaker 114b, or the green rubber tread <NUM>, the tire building drum <NUM> begins to rotate such that the respective breaker 114a/b or green rubber tread <NUM> is applied thereto. At such time, the image controller <NUM> causes a respective laser <NUM> to illuminate the laser trace <NUM> across the tire building drum <NUM>. Also, the image controller <NUM> further causes the respective 3D camera <NUM> to generate the laser traces <NUM> from which the 3D image <NUM> of the tire building drum <NUM> is generated. The 3D image <NUM> is stored in a memory associated with the image controller <NUM>.

The imaging controller <NUM> then accesses the 3D image <NUM> to perform specific analysis. In the case where the 3D image <NUM> depicts a breaker 114a/b as it has been applied to the tire building drum <NUM>, the imaging controller <NUM> identifies a center of the breaker in the 3D image <NUM>. Also, the imaging controller <NUM> identifies a target position on the tire building drum <NUM> that is where the breaker 114a/b is to be centered. In one embodiment, such a target position is the center of the tire building drum <NUM>. Although the center may be referenced herein, it is understood that the target position may be at some location on the tire building drum <NUM> other than the center, where the center of the tire building drum <NUM> is cited herein as an example.

Next, a difference between the center of the breaker 114a/b and the center of the tire building drum <NUM> is discussed. Ideally, the center of the breaker 114a/b should be aligned with the center of the tire building drum <NUM>. However, in reality such alignment is difficult to achieve where a difference is often experienced between the respective centers. According to various embodiments, this difference expressed in terms of units of length such as millimeters is applied to corresponding breaker guiding system 116a/b as a breaker position feedback error to determine a position of a subsequent breaker 114a/b that is transferred from the respective feed conveyor 109a/b to the respective application conveyor 106a/b. Specifically, in one embodiment, in applying the difference to the breaker guiding system 116a/b, a control setpoint of the breaker guiding system 116a/b is adjusted by the difference to control the lateral position of a subsequent breaker as applied to the tire building drum.

In response thereto, the breaker guiding system 116a/b will adjust the lateral position of the respective feed conveyor 109a/b so that the next breaker 114a/b is positioned on the respective application conveyor 106a/b such that the difference between the center of the breaker 114a/b and the center of the tire building drum <NUM> is minimized. In this manner, any difference between a center of given breaker 114a/b applied to the tire building drum <NUM> and a center of the tire building drum <NUM> is minimized over time and closer alignment between the center of the breaker 114a/b and the center of the tire building drum <NUM> is achieved.

After the breakers 114a/b have been applied and the tire building drum <NUM> is in position B, the green rubber tread <NUM> is applied to the tire building drum <NUM>. As described above, 3D image <NUM> is generated of the tire building drum <NUM> as the green rubber tread <NUM> is applied to the tire building drum <NUM>. The imaging controller <NUM> analyzes the 3D image <NUM> and identifies a center of the green rubber tread <NUM> in the 3D image <NUM>. Various approaches for identifying the center of the green rubber tread <NUM> are further described with reference to later figures. A difference is identified between the center of the green rubber tread <NUM> and the center (or other target position) of the tire building drum <NUM>. This difference is expressed in term of millimeters or other appropriate unites and it applied as a tread position feedback error to the tread application shifter <NUM> to guide the lateral position of a subsequent green rubber tread <NUM> as it is applied to the tire building drum <NUM>. In one embodiment, in applying the difference as a tread position feedback error to the tread application shifter <NUM>, a control setpoint of the tread application shifter <NUM> is adjusted to control a lateral position of a subsequent green rubber tread <NUM> as applied to the tire building drum <NUM> based on the difference. That is to say, adjusting the control setpoint causes a corresponding shift of the lateral position of a subsequent green rubber tread <NUM> as it is applied to the tire building drum <NUM>.

Referring <FIG>, shown is an example of a tire building drum <NUM> according to various embodiments. The tire building drum <NUM> includes several drum segments <NUM> with interleaving fingers <NUM>. The interleaving fingers <NUM> comprise a feature of the tire building drum <NUM> that may be used to locate target positions such as the center of the tire building drum <NUM>. In addition, other such features may comprise bolt holes, edge lines of components, and other features. Also, a marker <NUM> may also be engraved or otherwise disposed on a surface of the tire building drum <NUM>. A target position such as the center of the tire building drum <NUM> may be determined relative to a given feature or marker of the tire building drum <NUM>. In addition, the tire building drum <NUM> includes a centerline <NUM> that may be engraved or otherwise disposed on the surface of the drum segments <NUM>. In one embodiment, the marker <NUM> is positioned on the tire building drum <NUM> at a location toward a side edge <NUM> or <NUM> of the tire building drum <NUM> where it will not be covered by a breaker 114a/b or green rubber tread <NUM>.

With reference to <FIG>, shown is an example of a 3D image <NUM>, denoted herein as 3D image 136a, according to one embodiment of the present disclosure. As shown, the 3D image 136a depicts a first edge <NUM> and a second edge <NUM> of the tire building drum <NUM> (<FIG>). The imaging controller <NUM> (<FIG>) is configured to detect the first edge <NUM> and the second edge <NUM> in the 3D image 136a. A given target position on the tire building drum <NUM> may be determined relative to the first edge <NUM> and the second edge <NUM>. For example, the center <NUM> of the tire building drum <NUM> can be determined as the midpoint between the first and second edges <NUM> and <NUM> in the 3D image 136a.

The imaging controller <NUM> is further configured to detect a first edge <NUM> and a second edge <NUM> of the breaker 114a/b in the 3D image 136a. The center <NUM> of the breaker 114a/b can be determined as the midpoint between the first and second edges <NUM> and <NUM> of the breaker 114a/b.

In addition, the imaging controller <NUM> is further configured to verify a radius of the tire building drum <NUM>. To do so, an uncovered one of the segments <NUM> (<FIG>) of the tire building drum <NUM> that is uncovered by a breaker 114a/b (<FIG>) or a green rubber tread <NUM> (<FIG>) is identified in the 3D image 136a and the radius of the segment <NUM> is determined along an axis across the uncovered segment <NUM> of the tire building drum <NUM>. Given that there will be many radius readings that might vary along the axis measured, in one embodiment the values for the radius along the axis measured are averaged to provide an average radius to be used to verify that the radius of the tire building drum <NUM> is within a predefined tolerance of a radius specified in a given tire recipe.

With reference next to <FIG>, shown are flowcharts that provide examples of the operation of functionality of the image controller <NUM>, denoted herein as image controller 143a and 143b, according to various embodiments. It is understood that the flowcharts of <FIG> provide merely examples of the many different types of functional arrangements that may be employed to implement the operations depicted therein. As an alternative, the flowcharts of <FIG> may be viewed as depicting an example of elements of a method implemented in the image controller <NUM> according to various embodiments.

As depicted in <FIG>, there are various approaches for determining the center <NUM> (<FIG>) of the tire building drum <NUM> (<FIG>) according to various embodiments. With reference to <FIG>, in box <NUM> a first edge <NUM> (<FIG>) of the tire building drum <NUM> is identified in the 3D image 136a (<FIG>). Thereafter, in box <NUM>, a second edge <NUM> (<FIG>) of the tire building drum <NUM> is identified in the 3D image 136a. In box <NUM>, the location of the center <NUM> of the tire building drum <NUM> is calculated as the midpoint between the first and second edges <NUM> and <NUM>. Thereafter, the function ends as shown.

Referring to <FIG>, in box <NUM> a feature of the tire building drum <NUM> such as a finger <NUM> (<FIG>), centerline <NUM> (<FIG>), bolt hole, or other feature is identified in the 3D image 136a. Alternatively, a marker <NUM> (<FIG>) of predefined design is identified on a segment <NUM> (<FIG>) of the tire building drum <NUM>, where the marker <NUM> is located at a predefined distance from the center <NUM> of the tire building drum <NUM>. As an additional alternative, a feature of a structure may be located in the 3D image <NUM> (<FIG>), where the tire building drum <NUM> is attached to the structure. The location of the center <NUM> of the tire building drum <NUM> may be determined relative to the position of the feature on the structure. Then, in box <NUM> the center <NUM> of the tire building drum <NUM> is determined relative to the feature or marker <NUM> identified on the tire building drum <NUM>. Specifically, the center <NUM> of the tire building drum <NUM> is identified as being a predefined distance from the feature or marker <NUM>. Thereafter, the function ends as shown.

In an additional alternative, the center <NUM> of the tire building drum <NUM> may be determined using a retractable guide attached to a structure that moves with the tire building drum <NUM>. Such a retractable guide may be configured to move between a first position to a second position. In one embodiment, the retractable guide is stored in the first position and the retractable guide indicate the center <NUM> of the tire building drum <NUM> in a field of view of a camera <NUM> the machine vision system <NUM> when in the second position. The center <NUM> of the tire building drum <NUM> is thus determined based on a three dimensional image of retractable guide in the second position.

Referring next to <FIG>, shown is a flowchart that provides one example of the operation of a portion of the image controller <NUM>, denoted herein as image controller 143c, according to various embodiments. It is understood that the flowchart of <FIG> provides merely an example of the many different types of functional arrangements that may be employed to implement the operations described herein. As an alternative, the flowchart of <FIG> may be viewed as depicting an example of elements of a method implemented in the image controller <NUM> according to one or more embodiments.

To begin, in box <NUM> the image controller 143c waits until a time that a 3D image 136a (<FIG>) is to be acquired as a breaker 114a/b (<FIG>) is applied to the tire building drum <NUM> (<FIG>). In box <NUM>, the 3D image 136a is acquired as a breaker 114a/b is applied thereto and the 3D image 136a is stored in a memory. Thereafter, in box <NUM>, a center <NUM> (<FIG>) of the tire building drum <NUM> is identified in the 3D image 136a as was described above, for example, with reference to <FIG>, <FIG>, and/or 4B above.

Then, in box <NUM> the axial position of the tire building drum <NUM> is verified to ensure that it is properly in position A (<FIG>) or position B (<FIG>). To verify the position of the tire building drum <NUM>, the position of the center <NUM> of the tire building drum <NUM> is compared with a calibration center stored in memory to determine whether the center <NUM> is within a predefined tolerance of the calibration center, where the calibration center was identified when the machine vision system <NUM> (<FIG>) was last calibrated as will be described. Alternatively, a location of one or both of the side edges <NUM> (<FIG>) and <NUM> (<FIG>) of the tire building drum <NUM>, locations of features of the tire building drum <NUM>, or a location of a marker <NUM> (<FIG>) on the tire building drum <NUM> can be compared with a similar calibration counterpart to verify that the tire building drum <NUM> is within a predefined tolerance of position A or B (<FIG>) as determined during initial calibration of the machine vision system <NUM>.

If the axial position of the tire building drum <NUM> is not within acceptable tolerances, then in box <NUM> a flag is set in the image controller <NUM> that causes a warning to be issued that the tire building drum <NUM> is out of position. An appropriate alarm may be generated to warn operators that the tire building drum <NUM> is out of position so that appropriate corrective action can be taken. Such a warning may be, for example, a warning light, warning sound, an element on a graphical user interface, or other type of warning indication. Thereafter, the image controller 143c proceeds to box <NUM>. Assuming that the axial position of the tire building drum <NUM> is within acceptable tolerances of position A or position B, then execution proceeds directly to box <NUM>.

In box <NUM>, the image controller 143c verifies that the radius of the tire building drum is within acceptable tolerance of a desired radius obtained from a specific tire recipe. As was discussed above, the radius of the tire building drum <NUM> is determined across an uncovered one of the segments <NUM> of the tire building drum <NUM> in the 3D image 136a. Given that the radius may vary from point to point along an axis across the uncovered segment <NUM>, an average radius may be calculated from all of the individual radius measurements to compare against the radius identified in a recipe for a given tire in production.

If the radius as determined in box <NUM> is not within an acceptable tolerance, then in box <NUM> a flag is set that indicates that a drum radius is outside of acceptable tolerance. An appropriate alarm may be generated to warn operators that the radius of the tire building drum <NUM> is outside of acceptable tolerance so that appropriate corrective action can be taken. Such a warning may be, for example, a warning light, warning sound, an element on a graphical user interface, or other type of warning indication. Thereafter, the execution proceeds to box <NUM>. If it is determined in box <NUM> that the radius of the tire building drum <NUM> is within acceptable tolerances, then the execution proceeds directly to box <NUM>.

In box <NUM> the first side edge <NUM> and second side edge <NUM> of the breaker 114a/b are identified in the 3D image 136a. In identifying a location of each of the side edges <NUM> and <NUM>, multiple values for the location of the side edges <NUM> and <NUM> may be identified along the breaker 114a/b, where variation in the location of the side edges <NUM> and <NUM> may occur due to normal process variation. As such, values for the location of the side edges <NUM> and <NUM> may be calculated as an average of multiple values for the side edges <NUM> and <NUM>. According to one embodiment, average values for the location of the side edges <NUM> and <NUM> can be calculated from multiple values for individual side edges <NUM> and <NUM>.

Thereafter, in box <NUM> a center <NUM> (<FIG>) of the breaker 114a/b in the 3D image 136a is determined as the midpoint between the first and second edges <NUM> and <NUM>. Next, in box <NUM>, a difference between the center <NUM> of the tire building drum <NUM> and the center <NUM> of the breaker 114a/b is identified. This difference may first be identified as a number of pixels between the center <NUM> and the center <NUM>. The pixels may then be converted to a unit of length such as millimeters. Then, in box <NUM> the difference expressed in terms of units of length such as millimeters is provided as a breaker position feedback error to a respective one of the breaker guiding systems 116a/b to guide the lateral position of a subsequent breaker 114a/b on a respective application conveyor 106a/b. Thereafter, the execution ends as shown.

Referring next to <FIG>, shown is a further example of a 3D image <NUM> (<FIG>), denoted herein as 3D image 136b, according to various embodiments. The 3D image 136b depicts an example of a green rubber tread <NUM> scanned during an application of the green rubber tread <NUM> to the tire building drum <NUM> (<FIG>). As depicted in the 3D image 136b, the green rubber tread <NUM> includes peaks <NUM> and valleys <NUM> that are formed when the green rubber tread <NUM> is first extruded. Generally, the shape of the green rubber tread <NUM> depends upon the design of the tire that is to be created therefrom.

As noted, the center <NUM> of the tire building drum <NUM> (not shown) is identified, for example, as was discussed with respect to <FIG>, <FIG>. The 3D image 136b further provides for multiple profile traces <NUM> which comprise a line of pixels that represent the height or radius across a single trace of the green rubber tread <NUM>. As contemplated herein, such a radius is the radius from the center of the tire building drum <NUM> to the surface of the green rubber tread <NUM> or the breaker 114a/b. A profile trace <NUM> thus provides a height or radius of the profile of the green rubber tread <NUM> along the trace across the green rubber tread <NUM>.

According to various embodiments, a tread center <NUM> is ultimately identified in the 3D image 136b using one of the approaches described in greater detail with reference to later figures. Such approaches may involve, for example, determining the tread center <NUM> from a die line in the green rubber tread <NUM> or performing a convolution between a profile trace <NUM> and a predefined tread profile as will be described. According to one embodiment, each of these approaches involves determining a value in terms of a pixel location in the 3D image 136b for the tread center <NUM> from a profile trace <NUM>.

As will be described, multiple values for the tread center <NUM> may be obtained by examining multiple profile traces <NUM> across various locations of the green rubber tread <NUM>. Depending on the resolution of the 3D image 136b, the values for the tread center <NUM> may vary from one profile trace <NUM> to another. In one embodiment, the ultimate location of the tread center <NUM> in the 3D image 136b may be determined by averaging the locations of multiple different values for the tread center <NUM> from multiple different profile traces <NUM>.

Referring next to <FIG>, shown is a flowchart that provides one example of the operation of a portion of the image controller <NUM>, denoted herein as image controller 143d, according to various embodiments. It is understood that the flowchart of <FIG> provides merely an example of the many different types of functional arrangements that may be employed to implement the operations described herein. As an alternative, the flowchart of <FIG> may be viewed as depicting an example of elements of a method implemented in the image controller <NUM> according to one or more embodiments.

To begin, in box <NUM> the image controller 143d waits until a time that a 3D image 136b (<FIG>) is to be acquired as a green rubber tread <NUM> (<FIG>) is applied to the tire building drum <NUM> (<FIG>). In box <NUM>, the 3D image 136b is acquired as a green rubber tread <NUM> is applied thereto and the 3D image 136b is stored in a memory. Thereafter, in box <NUM>, a center <NUM> (<FIG>) of the tire building drum <NUM> is identified in the 3D image 136b as was described above, for example, with reference to <FIG>, <FIG>, and/or 4B. Then, in box <NUM> the axial position of the tire building drum <NUM> is verified to ensure that it is properly in position A (<FIG>) or position B (<FIG>). To verify the position of the tire building drum <NUM>, the position of the center <NUM> of the tire building drum <NUM> in the 3D image 136b is compared with a calibration center stored in memory to determine whether the center <NUM> is within a predefined tolerance of the calibration center, where the calibration center was identified when the machine vision system <NUM> (<FIG>) was last calibrated as will be described. Alternatively, a location of one or both of the side edges <NUM> (<FIG>) and <NUM> (<FIG>) of the tire building drum <NUM>, locations of features of the tire building drum <NUM>, or a location of a marker <NUM> (<FIG>) on the tire building drum <NUM>, can be compared with a similar calibration counterpart to verify that the tire building drum <NUM> is within a predefined tolerance of position A or B (<FIG>) as determined during initial calibration of the machine vision system <NUM>.

If the axial position of the tire building drum <NUM> is not within acceptable tolerances, then in box <NUM> a flag is set in the image controller <NUM> that causes a warning to be issued that the tire building drum <NUM> is out of position. Such a warning may be, for example, a warning light, warning sound, an element on a graphical user interface, or other type of warning indication. Thereafter, the image controller 143d proceeds to box <NUM>. Assuming that the axial position of the tire building drum <NUM> is within acceptable tolerances of position A or position B, then execution proceeds directly to box <NUM>.

In box <NUM>, the image controller 143d verifies that the radius of the tire building drum is within acceptable tolerance of a desired radius obtained from a specific tire recipe. As was discussed above, the radius of the tire building drum <NUM> is determined across an uncovered one of the segments <NUM> (<FIG>) of the tire building drum <NUM> in the 3D image 136b. Given that the radius may vary from point to point along an axis across the uncovered segment <NUM>, an average radius may be calculated from all of the individual radius measurements to compare against the radius identified in a recipe for a given tire in production. The radius of the tire building drum <NUM> is set equal to the average radius. In box <NUM>, if the radius of the tire building drum <NUM> is not within an acceptable tolerance, then in box <NUM> a flag is set that indicates that the radius of the tire building drum <NUM> is outside of acceptable tolerance. An appropriate alarm may be generated to warn operators that the radius of the tire building drum <NUM> is outside of acceptable tolerance so that appropriate corrective action can be taken. Such a warning may be, for example, a warning light, a warning sound, an element on a graphical user interface, or other type of warning indication. Thereafter, the execution proceeds to box <NUM>. If it is determined in box <NUM> that the radius of the tire building drum <NUM> is within acceptable tolerances, then the execution proceeds directly to box <NUM>.

In box <NUM>, the tread center <NUM> (<FIG>) is determined using one of multiple approaches. According to various embodiments, such approaches may involve, for example, determining the tread center <NUM> from a die line in the green rubber tread <NUM>, performing a convolution between a profile trace <NUM> and a predefined tread profile, or some other approach. The approaches involving the die line and the convolution will be described in further detail with reference to later figures.

Once the tread center <NUM> is identified, then a distance between the center <NUM> of the tire building drum <NUM> and the tread center <NUM> is determined in box <NUM>. This difference may be determined by identifying a number of pixels between the center <NUM> of the tire building drum <NUM> and the tread center <NUM> and converting the number of pixels determined to an actual length in terms of millimeters or other units. Similarly, other distances identified in terms of pixels in the 3D image <NUM> may be converted to a length in terms of millimeters or other units.

In box <NUM>, the difference between the tread center <NUM> and the center <NUM> of the tire building drum <NUM> is applied to the tread application shifter <NUM> (<FIG>) as a tread position feedback error to correct the application of a subsequent green rubber tread <NUM> onto the tire building drum <NUM> from the tread application conveyor <NUM> (<FIG>). Thereafter, the execution ends as shown.

With reference to <FIG>, shown is an example of an image of a laser trace <NUM> that falls incident on a green rubber tread <NUM>. A respective one of the 3D cameras <NUM> take multiple images of the laser trace <NUM> as the tire building drum <NUM> rotates as was described above. Ultimately, the image controller (<NUM>) generates a profile trace <NUM>. To do so, the height values of the pixels in an image of the laser trace <NUM> taken by a respective 3D camera <NUM> are translated into the actual height or radius values of the profile trace <NUM>. This translation may be performed, for example, using a lookup table or by way of some other approach to account for the angle of view and other parameters so that the height or radius of the profile trace <NUM> accurately reflects the actual height or radius of the green rubber tread <NUM> at a given instant. The translated values are determined during a calibration process as will be described. Also shown is an example of a predefined tread profile <NUM> aligned with the profile trace <NUM> of the green rubber tread. The predefined tread profile <NUM> is a profile of a green rubber tread <NUM> that is the same or similar to the dimensions of the mold from which the green rubber tread <NUM> is extruded.

Referring next to <FIG>, shown is an example of a profile trace <NUM> taken at various locations along the green rubber tread <NUM> (<FIG>) of the 3D image 136b (<FIG>) according to various embodiments. As shown, a die line in a given green rubber tread <NUM> is identified by a relatively sharp die line peak <NUM> in the middle of the green rubber tread <NUM>. The die line peak <NUM> forms a linear projection along the length of the green rubber tread <NUM>. The die line peak <NUM> is formed in the green rubber tread <NUM> when it is extruded from a mold. The die line peak <NUM> may be detected by identifying the slopes of the die line peak <NUM> that are generally steeper than other slopes of the green rubber tread <NUM>. According to one embodiment, a highest point on the peak is taken as the tread center <NUM> (<FIG>) for a given profile trace <NUM>. Alternatively, a location of the base of the die line peak <NUM> on either side of the die line peak <NUM> may be identified and the tread center <NUM> may be determined as the midpoint between the locations of the bases on either side of the die line peak <NUM>. The location where the base of a die line peak <NUM> meets the rest of the green rubber tread <NUM> may be determined by detecting a point where the slope of the die line peak <NUM> transitions sharply to some other slope.

If the die line peak <NUM> is deformed such that the attempt to locate a tread center <NUM> is inconclusive, the profile trace <NUM> may be discarded and further profile traces <NUM> may be identified and examined. Such an occurrence is possible given normal process variation in extruding the green rubber tread <NUM> as can be appreciated.

Referring next to <FIG>, shown is a flowchart that provides one example of how the tread center <NUM> (<FIG>) is determined in box <NUM> (<FIG>), denoted herein as tread center determination process 343a. As described below, the die line tread center determination process 343a involves determining the tread center <NUM> from the die line in a green rubber tread <NUM> (<FIG>). It is understood that the flowchart of <FIG> provides merely an example of the many different types of functional arrangements that may be employed to implement the operations described herein. As an alternative, the flowchart of <FIG> may be viewed as depicting an example of elements of a method implemented in the image controller <NUM> (<FIG>) according to one or more embodiments.

Beginning at box <NUM>, a first profile trace <NUM> is identified in the green rubber tread <NUM> depicted in the 3D image 136b (<FIG>). The first profile trace <NUM> may be one of several that are selected at predefined intervals along the green rubber tread <NUM> or the selection of the first profile trace <NUM> may be performed in some other manner.

Next, in box <NUM>, a location of the die line peak <NUM> (<FIG>) is identified in the current profile trace <NUM> under consideration. This may be done, for example, by examining the profile trace <NUM> for the slope of the die line peak <NUM> which may be a slope greater than a predefined slope or some other approach may be used.

In box <NUM>, an instance of a tread center value of the green rubber tread <NUM> is identified in the profile trace <NUM> based on the position of the die line peak <NUM>. In this respect, a center of the die line peak <NUM> may be taken as the tread center value. Alternatively, a location of the highest point of the die line peak <NUM> on the profile trace <NUM> may be taken as the tread center value. In addition, the tread center value may be determined from the die line peak <NUM> in some other manner.

Next, in box <NUM>, the instance of the tread center <NUM> determined in box <NUM> is stored in memory. Then, in box <NUM> it is determined whether the last profile trace <NUM> has been considered. The total number of profile traces <NUM> to be considered may vary where a greater number of profile traces <NUM> considered may provide for greater accuracy in locating the tread center <NUM>. A maximum number of profile traces <NUM> that can be considered would be the maximum number of profile traces <NUM> that exist in the 3D image of the green rubber tread <NUM>.

If there are further profile traces <NUM> to be considered as determined in box <NUM>, then in box <NUM> a next profile trace <NUM> is identified from the green rubber tread <NUM> as depicted in the 3D image 136a. Thereafter, the process reverts back to box <NUM> to consider the next profile trace <NUM> in a manner as described above. Otherwise, the process proceeds to box <NUM>. In view of the above, the die line of the green rubber tread <NUM> is identified by identifying the instances of the die line peaks <NUM> as described above.

In box <NUM>, the tread center <NUM> is calculated as an average of the instances of tread center values obtained from the various profile traces <NUM> considered as described above. In this manner, a determination of the location of the tread center <NUM> of the green rubber tread <NUM> may be made based on the location of the die line of the green rubber tread <NUM>. Thereafter, the process ends as shown. In this manner, the center of the green rubber tread <NUM> is determined based on the location of the die line of the green rubber tread <NUM>.

Turning next to <FIG>, shown is an image that depicts a maximum overlap <NUM> of a given profile trace <NUM> (<FIG>) and a predefined tread profile <NUM> according to various embodiments. The predefined tread profile <NUM> is a profile of a green rubber tread <NUM> that is the same or similar to the dimensions of the mold from which the green rubber tread <NUM> is extruded. Given process variation, a given profile trace <NUM> ends up looking a bit different, but loosely follows the predefined tread profile <NUM> as can be appreciated.

According to one embodiment, to find the tread center <NUM> (<FIG>), a mathematical function is performed in which the predefined tread profile <NUM> is convoluted with the profile trace <NUM> to identify a tread center value for the respective profile trace <NUM>. The convolution function is expressed as follows: <MAT>.

According to one embodiment, the tread center <NUM> is determined based on a convolution of one or more profile traces <NUM> and the predefined tread profile <NUM>, where each profile trace <NUM> is taken as the function f(τ) and the predefined tread profile <NUM> is taken as the function g(t - τ). During the convolution of a given profile trace <NUM> and the predefined tread profile <NUM>, a maximum of the convolution function is identified. This maximum can be viewed as indicating a point at which a maximum overlap exists between a given profile trace <NUM> and the predefined tread profile <NUM>. Note that the actual convolution of a profile trace <NUM> and the predefined tread profile <NUM> is performed using discreet values that represent a given profile trace <NUM> and the predefined tread profile <NUM>.

When the maximum is identified, the tread center value of the profile trace <NUM> is deemed to be the pixel location that corresponds to the maximum. Multiple tread center values may be obtained by performing multiple instances of convolution between a number of profile traces <NUM> and the predefined tread profile <NUM>. The tread center <NUM> is then calculated as an average of the tread center values obtained from the multiple convolution instances.

Referring next to <FIG>, shown is a flowchart that provides one example of how the tread center <NUM> (<FIG>) is determined in box <NUM> (<FIG>), denoted herein as tread center determination process 343b. As described below, the die line tread center determination process 343b involves performing a convolution between one or more profile traces <NUM> (<FIG>) and the predefined tread profile <NUM> (<FIG>) for a given green rubber tread <NUM> (<FIG>). It is understood that the flowchart of <FIG> provides merely an example of the many different types of functional arrangements that may be employed to implement the operations described herein. As an alternative, the flowchart of <FIG> may be viewed as depicting an example of elements of a method implemented in the image controller <NUM> (<FIG>) according to one or more embodiments.

Beginning at box <NUM>, the tread center determination process 343b identifies a first profile trace <NUM> in the 3D image 136b (<FIG>) for consideration. Thereafter, in box <NUM> a convolution is performed between the current profile trace <NUM> and the predefined tread profile <NUM>. Next, in box <NUM> a tread center value is identified for the current profile trace <NUM> based on a position of the convolution maximum.

Then, in box <NUM> the tread center value identified in box <NUM> is stored in a memory. Thereafter, in box <NUM> it is determined if the last profile trace <NUM> has been processed to generate a tread center value. If not, then in box <NUM> a next profile trace <NUM> is identified in the 3D image 136b for consideration. Thereafter, the process reverts to box <NUM> to repeat the process with the next profile trace <NUM>. Otherwise, the process proceeds to box <NUM>.

In box <NUM> the tread center <NUM> is calculated as an average of the respective tread center values identified from each instance of convolution between a respective profile trace <NUM> and the predefined tread profile <NUM>. Thereafter, the process ends as shown.

As described above, a loop is repeated for each profile trace <NUM> considered from the green rubber tread <NUM> as depicted in the 3D image 136b to obtain multiple tread center values from which an average may be calculated. However, as an additional alternative, a single convolution may be performed between a profile trace <NUM> and the predefined tread profile <NUM>, and the tread center value resulting therefrom may be taken as the tread center <NUM>.

Referring next to <FIG>, shown is a block diagram of a feedback loop <NUM> that generates a difference between the center of a tire building drum <NUM> (<FIG>) and either the center <NUM> (<FIG>) of a breaker 114a/b (<FIG>) or a tread center <NUM> (<FIG>). This difference is then used as a position feedback error that is used to control the breaker guiding systems 116a/b (<FIG>) or the tread application shifter <NUM> (<FIG>).

To begin, a target position input <NUM> that indicates a desired position on the tire building drum <NUM> is input to a summing junction <NUM>. According to one embodiment, the target position indicated by the target position input <NUM> is zero, which indicates a center of the tire building drum <NUM>.

The summing junction <NUM> generates an error signal <NUM> based on the feedback received as will be described. The error signal is applied to a proportional-integral-derivative (PID) filter <NUM> that generates a setpoint adjustment <NUM>. The setpoint adjustment is then used to adjust a setpoint of a respective one of the breaker guiding systems 116a/b (<FIG>) or the tread application shifter <NUM>. In response to the setpoint adjustment, a physical response <NUM> occurs in the form of a lateral adjustment by a respective one of the feed conveyors <NUM> a/b or the tread application shifter <NUM> in an attempt to minimize the error.

An operation <NUM> of the tire building machine <NUM> (<FIG>) proceeds to cause the next breaker 114a/b or green rubber tread <NUM> to be applied to the tire building drum <NUM>. This results in a view <NUM> of a breaker 114a/b or green rubber tread <NUM> being applied to the tire building drum <NUM>. The machine vision system <NUM> generates the 3D image <NUM> (<FIG>) and generates the difference <NUM> between the center <NUM> (<FIG>) of the tire building drum <NUM> and the center <NUM> of a respective breaker 114a/b or the tread center <NUM> as described above. The difference <NUM> is then applied to the summing junction <NUM> to close the loop, thereby generating the error signal <NUM>.

Referring next to <FIG>, shown is a tire building drum <NUM> that includes a calibration fixture <NUM> attached thereto. To calibrate the machine vision system <NUM>, the radius of the tire building drum <NUM> is set at a known radius. The calibration fixture <NUM> is attached to one of the segments <NUM> of the tire building drum <NUM>. The calibration fixture <NUM> may vary in height from one end to the next, although such variation is not shown in <FIG>, where the flat calibration fixture <NUM> is provided for purposes of illustration. Given that the tire building drum <NUM> is set to a known radius, the radius of all surfaces of the calibration fixture <NUM> relative to the center of the tire building drum <NUM> may be determined given that the position of the surfaces of the calibration fixture <NUM> are known relative to the bottom of the calibration fixture <NUM> that contacts the tire building drum <NUM>. In this respect, the known radius of the tire building drum <NUM> comprises a calibration radius.

To calibrate the machine vision systems <NUM>, the tire building drum <NUM> is placed in position A (<FIG>) and position B (<FIG>) to calibrate the input from both 3D cameras <NUM> (<FIG>). After the tire building drum <NUM> is positioned in one of the positions A or B, then the calibration fixture <NUM> is attached thereto. The calibration procedure described herein is completed in both positions A and B as can be appreciated.

Once the tire building drum <NUM> is located in a respective position A or B, the laser is directed to the tire building drum <NUM> and the tire building drum <NUM> is positioned so that the laser <NUM> creates a trace across the calibration fixture <NUM> attached to the tire building drum <NUM>. The 3D camera <NUM> then generates an axial image trace across the calibration fixture <NUM>. Thereafter, the axial image trace is processed to calibrate the machine vision system <NUM> as will be described.

With reference next to <FIG>, shown is a portion of a 3D image <NUM>, denoted herein as 3D image 136c. Once the machine vision system <NUM> is calibrated, the calibration fixture <NUM> (<FIG>) is removed and the 3D image 136c is generated by the machine vision system <NUM>. The 3D image 136c is generated while the tire building drum <NUM> is rotated. A portion of a 3D image 136c is shown in <FIG>.

According to one embodiment, at least one, or both, of the edges <NUM> of the tire building drum <NUM> are identified in the 3D image 136c. The location of the edges <NUM> are stored in a memory as calibrated edge positions for the tire building drum <NUM>. The calibrated edge positions of the tire building drum <NUM> are stored to be used to verify a position of the tire building drum <NUM> in positions A and B during a tire build.

In one embodiment, a calibration center <NUM> of the tire building drum <NUM> is determined as a midpoint between the first calibration edge position and the second calibration edge position of the tire building drum. The calibration center <NUM> may be stored in memory for use in verifying a position of the tire building drum <NUM> in positions A and B during a tire build.

Referring next to <FIG>, shown is a flowchart that provides one example of a portion of the operation of the image controller <NUM> (<FIG>), denoted herein as image controller 143e, that is executed to calibrate the machine vision system <NUM> to use during the building of tires. It is understood that the flowchart of <FIG> provides merely an example of the many different types of functional arrangements that may be employed to implement the operations described herein. As an alternative, the flowchart of <FIG> may be viewed as depicting an example of elements of a method implemented in the image controller <NUM> according to one or more embodiments.

To begin, at box <NUM> an axial image trace is obtained across the calibration fixture <NUM> (<FIG>). The 3D cameras <NUM> includes a photo sensor array with horizontal rows and vertical columns of pixels. Given the angles at which the lasers <NUM> and 3D cameras <NUM> are disposed relative to the calibration fixture <NUM>, the locations of the pixels in the array columns are translated to actual radius values based on the known radius or height of all surfaces of the calibration fixture. Thus, in box <NUM> the positions of pixels in array columns on the photo sensor array of the respective 3D cameras <NUM> are mapped to corresponding actual radius values relative to the center of the tire building drum <NUM> in a lookup table depending on the known radius of all surfaces of the calibration fixture <NUM>. The lookup table can then be used by the image controller <NUM> to generate the 3D images <NUM>. Thus, a position of each pixel in the axial image trace relative to the center of the tire building drum <NUM> is known based on a known position of each surface of the calibration fixture <NUM> relative to the reference radius of the tire building drum <NUM>.

In one embodiment, the calibration fixture <NUM> may establish a reference radius relative to the calibration radius of the tire building drum <NUM>. In such case, the actual radius values in the lookup table may be expressed in terms of a value representing a portion of a radius added or subtracted from the reference radius.

Thus, the radius of the tire building drum <NUM> may be determined based on the reference radius determined from the axial image trace. The reference radius may be determined from a predefined surface of the calibration fixture <NUM>. To this end, the reference radius may be determined by calculating an average of a plurality of values from a portion of the axial image trace along the predefined surface of the calibration fixture <NUM>. This is done so that the machine vision system <NUM> can reliably generate further 3D images <NUM> (<FIG>).

In addition, in calibrating the machine vision system <NUM>, the lasers <NUM> are directed to the calibration fixture <NUM>, where the tire building drum <NUM> is rotated to a position such that the calibration fixture <NUM> is in the location where the laser <NUM> is ultimately fall incident upon the green rubber tread <NUM>. Also, the 3D cameras <NUM> are each focused to acquire the axial image trace as the laser <NUM> falling incident to the calibration fixture <NUM>.

Referring next to <FIG>, shown is a flowchart that provides one example of a further portion of the operation of the image controller <NUM> (<FIG>), denoted herein as image controller 143f, that is executed to verify a position of the tire building drum <NUM> (<FIG>) when is it moved into position A or B (<FIG>). It is understood that the flowchart of <FIG> provides merely an example of the many different types of functional arrangements that may be employed to implement the operations described herein. As an alternative, the flowchart of <FIG> may be viewed as depicting an example of elements of a method implemented in the image controller <NUM> according to one or more embodiments.

As was mentioned with respect to <FIG>, the edges <NUM> (<FIG>) of the tire building drum <NUM> are identified and stored in memory as calibrated edge positions to be used to verify the position of the tire building drum <NUM> during future tire builds when the tire building drum <NUM> is moved into positions A or B. To determine the edges <NUM> of the tire building drum <NUM>, the same procedure is employed as was discussed with reference to <FIG> above.

Beginning with box <NUM>, the tire building drum <NUM> is moved from a first position to either position A or B. That is to say, the tire building drum <NUM> may be moved from some position other than positions A or B to one of positions A or B, or the tire building drum <NUM> may be moved between positions A and B. In any event, when the tire building drum <NUM> stops in position A or B, in box <NUM> a 3D image <NUM> is generated of the tire building drum <NUM> while a breaker 114a/b or a green rubber tread <NUM> is applied to the tire building drum <NUM>.

Next, in box <NUM> a position of one or both of edges <NUM> and <NUM> (<FIG>) of the tire building drum are identified as was described with reference to <FIG>. Also, a position of the center <NUM> (<FIG>) of the tire building drum <NUM> may be determined as the midpoint of the edges <NUM> and <NUM> if the positioning of the tire building drum <NUM> is to be determined based on the center <NUM> of the tire building drum <NUM>. However, in one embodiment, the verification of the positioning of the tire building drum <NUM> may be performed with the edges <NUM> and <NUM> without determining the center <NUM> of the tire building drum <NUM>.

In box <NUM> the accurate positioning of the tire building drum <NUM> in position A or B is verified by determining whether one or both of the edges <NUM> and <NUM> of the tire building drum <NUM> is/are within a predefined tolerance from the calibration edge positions <NUM>. Alternatively, accurate verification that the tire building drum <NUM> is in position A or B by verifying that the center <NUM> of the tire building drum <NUM> is located within a predefined tolerance from the calibration center <NUM>.

If the tire building drum <NUM> is positioned such that it is outside of position tolerances associated with positions A or B, then an alarm is generated to alert operators so that corrective action can be taken. Such an alarm may be, for example, a warning light, warning sound, an element on a graphical user interface, or other type of warning indication.

Next, in box <NUM> the radius of the tire building drum <NUM> is verified to be within a predefined tolerance of the radius of the tire currently being built by the tire building machine <NUM> (<FIG>) as was discussed with reference to <FIG> and <FIG> above.

If the radius of the tire building drum <NUM> is outside of a predefined tolerance associated with the recipe of the current tire being made by way of the tire building drum <NUM>, then an alarm is generated to alert operators so that corrective action can be taken. Such an alarm may be, for example, a warning light, warning sound, an element on a graphical user interface, or other type of warning indication.

With reference to <FIG>, shown is a schematic block diagram of one example of the imaging controller <NUM> according to an embodiment of the present disclosure. The imaging controller <NUM> comprises a computing device that includes at least one processor circuit, for example, having a processor <NUM> and a memory <NUM>, both of which are coupled to a local interface <NUM>. The local interface <NUM> may comprise, for example, a data bus with an accompanying address/control bus or other bus structure as can be appreciated.

Stored in the memory <NUM> are both data and several components that are executable by the processor <NUM>. In particular, stored in the memory <NUM> and executable by the processor <NUM> is image controller logic <NUM>, and potentially other applications. Also stored in the memory <NUM> is one or more 3D images <NUM> of the tire building drum <NUM> (<FIG>) is depicted with breakers 114a/b (<FIG>) and or a greed rubber tread <NUM> (<FIG>) applied. Other data may be stored in the memory and accessible to the image controller logic <NUM>. In addition, an operating system may be stored in the memory <NUM> and executable by the processor <NUM>.

It is understood that there may be other applications that are stored in the memory <NUM> and are executable by the processor <NUM> as can be appreciated. Where any component discussed herein is implemented in the form of software, any one of a number of programming languages may be employed such as, for example, C, C++, C#, Objective C, Java®, JavaScript®, Perl, PHP, Visual Basic®, Python®, Ruby, Flash®, or other programming languages.

The image controller logic <NUM> is stored in the memory <NUM> and is executable by the processor <NUM>. In this respect, the term "executable" means a program file that is in a form that can ultimately be run by the processor <NUM>. Examples of executable programs may be, for example, a compiled program that can be translated into machine code in a format that can be loaded into a random access portion of the memory <NUM> and run by the processor <NUM>, source code that may be expressed in proper format such as object code that is capable of being loaded into a random access portion of the memory <NUM> and executed by the processor <NUM>, or source code that may be interpreted by another executable program to generate instructions in a random access portion of the memory <NUM> to be executed by the processor <NUM>, etc. An executable program may be stored in any portion or component of the memory <NUM> including, for example, random access memory (RAM), read-only memory (ROM), hard drive, solid-state drive, USB flash drive, memory card, optical disc such as compact disc (CD) or digital versatile disc (DVD), floppy disk, magnetic tape, or other memory components.

The memory <NUM> is defined herein as including both volatile and nonvolatile memory and data storage components. Volatile components are those that do not retain data values upon loss of power. Nonvolatile components are those that retain data upon a loss of power. Thus, the memory <NUM> may comprise, for example, random access memory (RAM), read-only memory (ROM), hard disk drives, solid-state drives, USB flash drives, memory cards accessed via a memory card reader, floppy disks accessed via an associated floppy disk drive, optical discs accessed via an optical disc drive, magnetic tapes accessed via an appropriate tape drive, and/or other memory components, or a combination of any two or more of these memory components. In addition, the RAM may comprise, for example, static random access memory (SRAM), dynamic random access memory (DRAM), or magnetic random access memory (MRAM) and other such devices. The ROM may comprise, for example, a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or other like memory device.

Also, the processor <NUM> may represent multiple processors <NUM> and/or multiple processor cores and the memory <NUM> may represent multiple memories <NUM> that operate in parallel processing circuits, respectively. In such a case, the local interface <NUM> may be an appropriate network that facilitates communication between any two of the multiple processors <NUM>, between any processor <NUM> and any of the memories <NUM>, or between any two of the memories <NUM>, etc. The local interface <NUM> may comprise additional systems designed to coordinate this communication, including, for example, performing load balancing. The processor <NUM> may be of electrical or of some other available construction.

Although the image controller logic <NUM> and potentially other systems may be embodied in software or code executed by general purpose hardware as discussed above, as an alternative the same may also be fully or partially embodied in dedicated hardware or a combination of software/general purpose hardware and dedicated hardware. If embodied in dedicated hardware, each can be implemented as a circuit or state machine that employs any one of or a combination of a number of technologies. These technologies may include, but are not limited to, discrete logic circuits having logic gates for implementing various logic functions upon an application of one or more data signals, application specific integrated circuits (ASICs) having appropriate logic gates, field-programmable gate arrays (FPGAs), or other components, etc. Such technologies are generally well known by those skilled in the art and, consequently, are not described in detail herein.

The flowcharts of <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, <FIG> show the functionality and operation of an implementation of portions of the image controller logic <NUM> executed by the image controller <NUM>. If embodied in software, each block may represent a module, segment, or portion of code that comprises program instructions to implement the specified logical function(s). The program instructions may be embodied in the form of source code that comprises human-readable statements written in a programming language or machine code that comprises numerical instructions recognizable by a suitable execution system such as a processor <NUM> in a computer system or other system. The machine code may be converted from the source code, etc. If embodied in hardware, each block may represent a circuit or a number of interconnected circuits to implement the specified logical function(s).

Although the flowcharts of 4A, 4B, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and <NUM> a specific order of execution, it is understood that the order of execution may differ from that which is depicted. For example, the order of execution of two or more blocks may be scrambled relative to the order shown. Also, two or more blocks shown in succession in <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, <FIG> may be executed concurrently or with partial concurrence. Further, in some embodiments, one or more of the blocks shown in <FIG>, <FIG>, <FIG>, <FIG>, <FIG>, <FIG> may be skipped or omitted. In addition, any number of counters, state variables, warning semaphores, or messages might be added to the logical flow described herein, for purposes of enhanced utility, accounting, performance measurement, or providing troubleshooting aids, etc. It is understood that all such variations are within the scope of the present disclosure.

Also, any logic or application described herein, including the image controller logic <NUM>, that comprises software or code can be embodied in any non-transitory computer-readable medium for use by or in connection with an instruction execution system such as, for example, a processor <NUM> in a computer system or other system. In this sense, the logic may comprise, for example, statements including instructions and declarations that can be fetched from the computer-readable medium and executed by the instruction execution system. In the context of the present disclosure, a "computer-readable medium" can be any medium that can contain, store, or maintain the logic or application described herein for use by or in connection with the instruction execution system.

The computer-readable medium can comprise any one of many physical media such as, for example, magnetic, optical, or semiconductor media. More specific examples of a suitable computer-readable medium would include, but are not limited to, magnetic tapes, magnetic floppy diskettes, magnetic hard drives, memory cards, solid-state drives, USB flash drives, or optical discs. Also, the computer-readable medium may be a random access memory (RAM) including, for example, static random access memory (SRAM) and dynamic random access memory (DRAM), or magnetic random access memory (MRAM). In addition, the computer-readable medium may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or other type of memory device.

In the present disclosure, disjunctive language such as the phrase "at least one of X, Y, or Z," unless specifically stated otherwise, is otherwise understood with the context as used in general to present that an item, term, etc., may be either X, Y, or Z, or any combination thereof (e.g., X, Y, and/or Z). Thus, such disjunctive language is not generally intended to, and should not, imply that certain embodiments require at least one of X, at least one of Y, or at least one of Z to each be present.

Claim 1:
An apparatus, comprising:
a tire building drum (<NUM>);
an application conveyor (106a, 106b) that is configured to apply a breaker (114a, 114b) to the tire building drum;
a machine vision system (<NUM>) that is configured for generating a three dimensional image of the tire building drum (<NUM>) as the breaker is applied to the tire building drum;
a breaker guiding system (116a, 116b) that is configured for determining a lateral position of the breaker (114a, 114b) on the application conveyor (106a, 106b); and
at least one processor circuit with a memory comprising instructions, that when executed by the processor circuit, causes the at least one processor circuit to at least:
identify a center of the breaker (114a, 114b) in the three dimensional image;
identify a difference between the center of the breaker and a target position of the tire building drum (<NUM>) in the three dimensional image; and
apply the difference as a breaker position feedback error to the breaker guiding system (116a, 116b) that determines a position of a subsequent breaker transferred onto the application conveyor (106a, 106b).