Application Notes

APN09V20-0893

ABSTRACT
INTRODUCTION
Goal of the Manufacturing Equipment
Problems to Overcome in Automated Focusing
FUZZY DESIGN
Tools
Fuzzy State Partitioning
Input Conditioning and Fuzzification
Fuzzy Rule Generation and Exception Handling
Outputs and Defuzzification
PERFORMANCE COMPARISONS
CONCLUSIONS
Appendix A : FIU SOURCE CODE


FUZZY STATE MACHINE DESIGN IMPROVES CONTROL OF AUTOMATED MANUFACTURING

Ted Heske - NCR Division of AT&T

 

ABSTRACT

This paper will describe how fuzzy state machine design improved the control of automated manufacturing equipment that focuses laser diode/lens assemblies. The discussion details design methodology, software tools used, handling of noisy and intermittent data, exception handing, and concludes with comparisons to prior, conventional solutions.

INTRODUCTION

Goal of the Manufacturing Equipment

 Figure 1. Components of a Laser Diode Subassembly.

 

NCR manufactures several products at its Atlanta facility that incorporate visible laser diodes. The naked laser diode output is uncollimated and diverges through a large solid angle. In order to use the diodes they must first be built into an optical subassembly as shown in Figure 1, that typically includes a lens, metal barrel, and laser diode. The lens collimates and focuses the laser so that its output is usable. Our automated equipment builds the optical subassembly containing the laser diode and lens and also focuses the beam at a specific distance for each different product that we manufacture. Due to variations in mechanical fit, lens focal length, and laser diode dimensions, each optical subassembly requires individual adjustment to achieve focus at the correct distance.

Figure 2. Key Components of the Automated Focusing System.

Figure 2 shows the important pieces of our automated laser focusing equipment. The lens/keeper is held securely in place while a stepper motor drives the barrel/laser diode combination onto it. A lead screw converts each step of the motor into a linear movement of the barrel of approximately 0.001". The target shown in the Figure 2 is actually a beam-width measuring instrument. The target is held at a constant distance dT from the lens. The lens law describes the simple physics of our problem: 1 / o + 1 / i = 1 / f ; where o is the object distance, i is the image distance, and f is the focal length. As the stepper motor decreases the object distance, the focal point given by the image distance moves further from the laser diode. The target will see the minimum beam width when i = dT. As the object distance is decreased by the stepper motor the beam width will narrow to its minimum. As the motor continues stepping the beam diameter grows large again. Our method stops the motor when the beam diameter reaches a predetermined, optimal width. This method requires that dT < desired focus distance.

Back to Top

Problems to Overcome in Automated Focusing

Before our fuzzy control system was developed we had two means of focusing the diode assemblies. The first method required a skilled operator to make all adjustments by hand on a manual fixture. The continuous concentration required led to fatigue induced rejects. Also, the skill of the operator greatly affected both production and reject rates. The second method used the same stepper motor apparatus described above, but used a control strategy based on boolean decisions. The deficiency of the second method stemmed from the noisy and intermittent data returned from the beam width measurement instrument. In contrast to the human operator, the control program was not able to identify or ignore bogus beam width measurements. In order to accommodate the noisy beam width data, the control program re-sampled and averaged the beam width many times. This lead to production rates at least 50% slower than the manual method, with no decrease in reject rates. So, the challenges to be met with a fuzzy control solution were: handling noisy and intermittent input data, improved production and rejection rates, and operator independent production and rejection rates.

Back to Top

FUZZY DESIGN

Tools

The Aptronix Fuzzy Inference Development Environment was used to create, test, and tune the fuzzy control solution. Once the solution was tuned, the Aptronix Run Time Library was used to embed the fuzzy module into the overall application.

Fuzzy State Partitioning

As the stepper motor pushes the barrel onto the lens, the beam width at the target follows the path indicated in Figure 3. The figure also shows how we divide the space into three different states, s0, s1, and s2. All assemblies start in s0, where the slope of the graph is large negative, and beam width is well above the minimum. S1 is defined to be the region where the slope of the graph is approximately flat, and beam width is small. S2 is the region where slope is positive and beam width is between the minimum and the ideal. Finally, when the beam width reaches the ideal marked on the graph, focusing is complete and the stepper motor is halted.

Figure 3. State Partitioning of Beam Width vs. Motor Steps Plot 

Back to Top

Input Conditioning and Fuzzification

The main obstacle to overcome with input conditioning is the noisy and intermittent nature of the beam width information. The production environment is noisy in both the electromagnetic and mechanical senses. Unfortunately, the beam width instrument was susceptible to both mechanical vibration and electromagnetic interference. The previous control solution took the approach of averaging many readings to obtain the true beam width. However, this approach was weak in that it gave equal weight to real and bogus measurements. On the other hand, the human operator was able to filter out the few bogus measurements to arrive at the most likely value of beam width. Thus we conditioned beam width measurements to mimic the human processing. We computed the most likely beam width from the input using the fuzzy paradigm show in Figure 4.

 Figure 4. Fuzzy Paradigm Applied to Input Signal Conditioning.

 

Each beam width measurement is treated as a fuzzy set centered on the actual reading obtained from the beam width instrument. The fuzzy regions generated by multiple samples are added together and normalized. The real beam width is then chosen as the beam width with maximum degree of membership. In addition to the beam width, the slope of beam width changes is also used as an input to the fuzzy control system. The input membership functions are shown in Figures 5 and 6.

 Figure 5. Input Membership Functions for Beam Width

 

 

 Figure 6. Membership Functions for Slope Input

Back to Top

Fuzzy Rule Generation and Exception Handling

The fuzzy rules were generated by experience with the system, and refined with testing. Since boolean logic is a subset of fuzzy logic, it is a simple matter to embed boolean exception handling into a fuzzy system. The one exception in this system is generated when the beam width reaches the ideal value. Since the fuzzy control module is part of a larger application it notifies the rest of the system by asserting a DONE flag when the ideal beam width is reached. Figure 7 shows the output membership functions that generate the DONE flag. Also, the fuzzy rules for this system are shown in Table 1.

 Table 1. Rules.

Back to Top

Outputs and Defuzzification

One output from the system controls the stepper motor by indicating the number of steps to be taken. The beam width sampling and motor stepping loop continues until ideal beam width value is reached. Since the output membership functions, shown in Figure 8, are singletons, the output is computed as a weighted average of the contributing rules.

Figure 7. Output Membership Functions Used to Generate the DONE Flag

 

 Figure 8. Singleton Membership Functions for Steps Output.

Back to Top

PERFORMANCE COMPARISONS

Improved Throughput: +51% increase compared to boolean control, 0% increase compared to skilled manual operator.

Reject Rate: 1% with fuzzy control, 4% with boolean control, 3% manual operator.

Reduced Code Size: Executable code size of 52 Kbytes versus 88 Kbytes for the boolean solution.

Reduced Development Time: Once the development tools were learned, two man weeks of effort were required to implement and tune the fuzzy control module.

Back to Top 

CONCLUSIONS

We applied fuzzy methods in two areas of our automated manufacturing problem. First, fuzzy logic gave the control program human-like filtering of input data. Second, fuzzy logic controlled the stepper motor smoothly so that ideal focus was approached with the appropriate mixture of quickness and caution. The combination yielded throughput and rejection rate improvements with minimal extra development effort.

Appendix A : FIU SOURCE CODE

Back to Top

 For Further Information Please Contact:

 Aptronix Incorporated
2040 Kington Place
Santa Clara, CA 95051
Tel (408) 261-1898
Fax (408) 490-2729
FuzzyNet http://www.aptronix.com/fuzzynet
Email: fuzzynet@aptronix.com
Ted Heske can be reached at
Ph(404)623-7632,
and FAX(404)623-7579.
Correspondence should be sent to:
Ted Heske
NCR Division of AT&T
2651 Satellite Blvd.
Duluth, GA. 30136

 

Back to Home 


Weijing Zhang, Applications Engineer.
Copyright © 1992 by Aptronix Inc.
Revised: October 21, 1996.