Method, apparatus and computer program for automated photonics alignment

WO2025153701A3PCT designated stage Publication Date: 2025-08-28PHYSIK INSTRUMENTE (PI) GMBH & CO KG
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2025/051182
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-01-19
Filing Date
2025-01-17
Publication Date
2025-08-28

AI Technical Summary

Technical Problem

Current methods for aligning optical inputs and outputs in photonic integrated circuits are inefficient, requiring lengthy and repetitive searches due to tight alignment targets and positional uncertainties, often taking seconds to hours to complete, especially when thermal changes and assembly processes are involved.

Method used

A Monte Carlo simulation-based technique is employed for a first area search, randomly determining alignments and optimizing signal strength through a two-phase search algorithm, combining random value determination, movement, and signal strength measurement to achieve faster alignment.

Benefits of technology

The Monte Carlo method significantly reduces alignment time by enabling rapid area scanning and adaptive threshold determination, achieving alignment in milliseconds compared to seconds or hours with traditional methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2025051182_28082025_PF_FP_ABST
    Figure EP2025051182_28082025_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure relates to aligning an optical input with an optical output and in particular to a first search followed by a second search. The first search includes obtaining a first alignment of the optical input and the optical output for which a light beam emitted from the optical output is detected at the optical input, wherein the searching of the alignment includes performing the following steps repeatedly until a predefined condition is satisfied, the condition including a measurement value of a signal strength at the optical input satisfying a threshold condition: a) determining an alignment of the optical input and the optical output as a random value, from a predetermined search range, b) moving the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and c) obtaining one or more measurement values of the signal strength at the optical input on the trajectory to the alignment.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Method, Apparatus and Computer Program for Automated Photonics Alignment

[0002] The present disclosure regards methods and apparatuses for automated aligning light output and light input.

[0003] BACKGROUND

[0004] Photonic Integrated Circuits (PICs) are enabling a proliferation of applications that leverage high- bandwidth data transfer with low power consumption. Silicon Photonic (SiPh) devices can be found performing critical tasks in nascent technologies from free space optical communications to quantum computing, and have been mainstream for example for inter-server routing in hyperscale data centers. With the increasing prevalence of Silicon Photonic devices and the complex multilayered semiconductor processes required to fabricate them, equipment and methods to efficiently test and package at scale is of high importance.

[0005] A fully-patterned SiPh wafer may be at first subjected-to testing (probing) of each embedded chip to ensure functionality and performance. Conventionally, such wafer level test of Silicon Photonics devices is performed via a surface coupling with an external fiber-coupled light source. For that purpose, the optical axis may run substantially orthogonal relative to the wafer plane. In this case, the substantially may still involve deviations of 10-20° from the orthogonal direction when, for example, the light is coupled through a grating coupler to the waveguide. Alternatively, edge coupling process may be applied with the optical axis running collinear with the waveguide.

[0006] The mode field diameters of the alignment targets can range from micron (i.e. micrometer) to submicron scale, so that alignment (in this example, of device to fiber) may need to be accurate to a small fraction of this scale. Since such accuracies may be smaller than can be resolved with an optical microscope, the alignment should be performed actively, meaning the actual coupling should be found and optimized. Such search and optimization may need to often start from a starting condition of zero coupling. Once alignments have been completed, photonic tests such as power metrology, spectroscopy, and bandwidth measurement can be performed single-sided with a fixed output and an actively aligned illuminated input, or double-sided with both input and output actively aligned. The efficiency of the light coupling is usually measured by a detector or power meter and communicated to a specialized motion controller as a scaled analog voltage. A threshold condition is usually applied externally, by a user, to define a successful alignment.

[0007] After wafer probing is completed, similar challenges repeat at succeeding stages of production and assembly to ensure the continued viability of each chip as it is processed.

[0008] Provided the tight alignment target dimension and relative uncertainty in positional tolerances of the components being aligned, a two-phase search algorithm may be performed. The first phase of the alignment is an area search for first signal finding followed by a second phase optimization method. The latter can include real-time tracking to ensure that the coupling is maintained given thermal changes, glue deposition and curing, or the like.

[0009] The area scan for the first signal finding has been typically performed with a cyclical pattern using a fixed distance pitch at a sub-mode field diameter resolution, typically using Archimedean spirals or sinusoidal raster scans. Spatially, the inherent position uncertainty necessitates the first signal finding searches to be performed in rectangular search zones of typically 100 to 10,000 pm2 with fixed pitch at the micron-to-sub-micron scale. The area scan performed with repeating curvilinear geometries of this type requires many repetitions with pitch at sub-mode field diameter to ensure the search is successful. These repetitive, tightly pitched area scans even when operated on high frequencies can require seconds to hours to complete the search, depending on the test conditions and the mechanisms employed.

[0010] Accordingly, it would be desirable to further improve the search and, in particular, to make it faster.

[0011] SUMMARY

[0012] The invention facilitates a faster first area search for alignment between an optical output and an optical input by randomly determining alignments between which the light signal is sampled on a search trajectory.

[0013] The invention is defined by the independent claims. Some exemplary implementations are provided by the dependent claims.

[0014] For example, a method is provided for aligning an optical input with an optical output. The method comprises the step of performing a first search for obtaining a first alignment of the optical input and the optical output for which a light beam emitted from the optical output is detected at the optical input, wherein the searching of the alignment includes performing the following steps repeatedly until a predefined condition is satisfied, the condition including a measurement value of a signal strength at the optical input satisfying a threshold condition: (i) determining an alignment of the optical input and the optical output as a random value, from a predetermined search range, (ii) moving the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and (iii) obtaining one or more measurement values of the signal strength at the optical input on the trajectory to the alignment. The method further comprises the step of performing a second search for obtaining a second alignment of the optical input and the optical output for which the signal strength is larger than the signal strength at the first alignment. These and other features and characteristics of the presently disclosed subject matter, as well as the methods of operation and functions of the related elements of structures and the combination of parts and economies of manufacture, will become more apparent upon consideration of the following description and the appended claims with reference to the accompanying drawings, all of which form a part of this specification. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended as a definition of the limits of the disclosed subject matter. As used in the specification and the claims, the singular form of “a,” “an,” and “the” include plural referents unless the context clearly dictates otherwise.

[0015] BRIEF DESCRIPTION OF DRAWINGS

[0016] An understanding of the nature and advantages of various embodiments may be realized by reference to the following figures.

[0017] FIG. 1A is a schematic drawing illustrating an exemplary system for performing an alignment between an optical output and an optical input (direct coupling scenario).

[0018] FIG. 1 B is a schematic drawing illustrating an exemplary system for performing an alignment between an optical output and an optical input (indirect (surface) coupling scenario).

[0019] FIG. 1C is a schematic drawing illustrating an exemplary system for performing a parallel alignment of optical output with optical input relative to an intermediate waveguide input and output, respectively.

[0020] FIG. 2 is a flow diagram illustrating an exemplary method for performing search of the alignment between an optical output and an optical input.

[0021] FIG. 3 is a schematic drawing illustrating an exemplary trajectory of a first area search.

[0022] FIG. 4 is a schematic drawing illustrating an exemplary effective search zone for a given measurement (sampling) point.

[0023] FIG. 5 is a schematic drawing illustrating a raster scan method in an exemplary scenario.

[0024] FIG. 6 is a schematic drawing illustrating a Monte Carlo method in the exemplary scenario.

[0025] FIG. 7 is a schematic drawing comparing portions of a search space scanned in by a raster scan in 1 .25 s and by a Monte Carlo search in 40 ms. FIG. 8 is a flow diagram illustrating detailed steps of an exemplary threshold determining method.

[0026] FIG. 9 is a flow diagram illustrating stages of an exemplary threshold determining.

[0027] FIG. 10 is a block diagram illustrating functional modules of an alignment module of Fig. 1A.

[0028] FIG. 11 is a block diagram illustrating functional modules of a control module of Fig. 1A.

[0029] FIG. 12 is a schematic drawing illustrating an exemplary current systematic search approach.

[0030] FIG. 13 is a schematic drawing illustrating redundant search zones stemming from parallel- threaded high frequency oversampling.

[0031] FIG. 14 is a schematic drawing illustrating a vector move with sampled nodes and corresponding orthogonal vector planned displacements about nodes to minimize streak vector sampling inefficiency.

[0032] FIG. 15 is a flow diagram illustrating exemplary steps for performing a series of measurements using a forced / induced oscillation.

[0033] FIG. 16 is a schematic drawing illustrating a simple PID closed-loop control of an actuator for performing an arbitrary process.

[0034] FIG. 17 is a Bode plot of the open-loop transfer function of an actuator in a multi-axis automated photonics alignment assembly.

[0035] FIG. 18 is a schematic drawing of an actuator-based photonics alignment assembly.

[0036] FIG. 19 shows plots of virtual vector gains scheduled machine learning optimization results

[0037] (and align time reduction).

[0038] FIG. 20 is a schematic drawing illustrating virtual vector gains producing a probability cloud for the oscillatory wave vector orthogonal to the streak vector path.

[0039] FIG. 21 is a schematic drawing illustrating showing the nodes of an RNG streak vector motion without oscillation.

[0040] FIG. 22 is a schematic drawing illustrating showing the nodes of an RNG streak vector with virtual vector pumped oscillation. FIG. 23 shows the automated photonics alignment test station used for the validation tests.

[0041] FIG. 24 shows box and whisker plots of test results in terms of signal search times and distributions.

[0042] FIG. 25 shows box and whisker plots of the test results in terms of signal lock level.

[0043] Like reference numbers and symbols in the various figures indicate like elements, in accordance with certain example implementations.

[0044] DETAILED DESCRIPTION

[0045] For purposes of the description hereinafter, the terms “end,” “upper,” “lower,” “right,” “left,” “vertical,” “horizontal,” “top,” “bottom,” “lateral,” “longitudinal,” and derivatives thereof shall relate to the disclosed subject matter as it is oriented in the drawing figures. However, it is to be understood that the disclosed subject matter may assume various alternative variations and step sequences, except where expressly specified to the contrary. It is also to be understood that the specific devices and processes illustrated in the attached drawings, and described in the following specification, are simply exemplary embodiments or aspects of the disclosed subject matter. Hence, specific dimensions and other physical characteristics related to the embodiments or aspects disclosed herein are not to be considered as limiting unless otherwise indicated.

[0046] No aspect, component, element, structure, act, step, function, instruction, and / or the like used herein should be construed as critical or essential unless explicitly described as such. Also, as used herein, the articles “a” and “an” are intended to include one or more items and may be used interchangeably with “one or more” and “at least one.” Furthermore, as used herein, the term “set” is intended to include one or more items (e.g., related items, unrelated items, a combination of related and unrelated items, and / or the like) and may be used interchangeably with “one or more” or “at least one.” Where only one item is intended, the term “one” or similar language is used. Also, as used herein, the terms “has,” “have,” “having,” or the like are intended to be open- ended terms. Further, the phrase “based on” is intended to mean “based at least partially on” unless explicitly stated otherwise.

[0047] The present disclosure provides methods and apparatuses as well as programs and systems for performing an alignment between a light output and a light input. The present invention is not limited to any particular application of spatial scale. Nevertheless, it is readily applicable, among others, to micron scale and to applications in testing, assembly, packaging or using Photonic Integrated Circuits (PICs). Further possible exemplary applications include sub-micron scales and / or searched including rotational degrees of freedom instead of the linear degreed of freedom (x, y, and possibly z axes). For example, the present disclosure can be applied to rotational positioning for signal transmission in a search field. The methodology can be applied also generally to electrical signal searches or other feedback units with similar characteristics as photonics search. Thus, the present disclosure is not limited to the photonics search.

[0048] In particular, the alignment was developed as a two-dimensional photonics first “light” signal finding technique for automated systems to align signal senders (optic outputs) with signal receivers (optic inputs) simultaneously through intermediate waveguides or via direct coupling. The method can be applied such that the sender is moved through the search field aligning to stationary receiver or with stationary sender and dynamic receiver. With an intermediate waveguide, both sender and receiver are moved simultaneously in a double-sided first light signal finding. For example, the intermediate waveguide may be a silicon photonics circuit or other embedded or packaged light conducting materials or media that allows transmission of light. The transmitted signal via coupling from sender to receiver may be evaluated by a detector / power meter with a scaled analog voltage connected to the motion control module and is evaluated by the algorithm to determine if sufficient signal is present to terminate the search. The sender can be free space optical signal directed by a mirror or via a fiber optic / optical array translated in space directly to receiver, as well as potential other area search techniques with first signal finding requirements.

[0049] Photonics first light signal searches are typically performed over a bounded region that is sufficiently large such that a sender is present but cannot be located precisely by the receiver due to physical limitations of precision and accuracy of processes, fixtures, and general operating environment variability. Current photonic signal finding methodologies are based on systematic searches using fixed-pitched, curvilinear motion paths with user-defined search parameters that typically include search location, search range, pitch, operating frequency, and signal threshold condition. An example of the current paradigm that is prevalent in state-of-the-art is the use of sinusoidal raster scans or spiral searches. These curvilinear trajectories with user-defined thresholds have inherent limitations when applied to photonics alignment.

[0050] Such known approach is illustrated in Fig. 12. Fig. 12 shows a two-dimensional search space and distribution of detected light intensity (in units of volts). The goal is to locate a Gaussian sender (a sender with Gaussian distributed intensity of light in a beam cross section) with an approximate mode field diameter of 10 pm in a search filed of approximately 100 pm x 100 pm. In this case, a human user has defined a conservative threshold condition (restricting the effective target zone size for threshold condition bounded signal) according to the expected Gaussian intensity distribution. In current approaches this threshold condition (“User-defined threshold for coupling” in Fig. 12) is selected by the user as an input and is often based on prior test data but not based on in-situ system signal conditions that exist at the specific time of scanning. Often because of inherent systemic variability in both setup and devices, a conservative value is selected to guarantee a positive outcome. However, this can have a negative impact on scan time.

[0051] Moreover, in this example and others like that, a fixed pitch (separation) p between adjacent scans must be set relative to the target zone area. This imposes constraints on scan pitch to be sufficiently precise to yield a positive outcome at the required signal threshold level. In the case shown in Fig. 12 with corresponding threshold target of 10 microns, a rough approximation of a 2-micron scan pitch is shown as sufficient in terms of spatial resolution to yield a positive outcome. The result, however, is that at least 25 scans must run to observe a threshold condition as met and if the scan is run to completion, approximately 50 scans are required for the given 100 x 100 micron search space. It is not uncommon for a precision automation system to run at 5 to 10 Hz for these photonics search methodologies, which achieve signal finding times of 2.5 seconds (with interruption as soon as the threshold condition is fulfilled) or 5 seconds (without interruption).

[0052] In the present disclosure, the search is improved. In particular, the approach of the present disclosure for photonics alignment uses a Monte Carlo (random based) technique to facilitate automated signal area search.

[0053] Random alignment search (Monte Carlo simulation based search)

[0054] The Monte Carlo Simulation is suitable to estimate areas for bounded 2D shapes of any geometry, for which it may be difficult to precisely calculate the enclosed area size. These areas may be embedded in larger regions of regular geometry that can be readily calculated. The simulation populates points randomly in the interior of the larger enclosed bound until sufficient data density is available to make a reasonable estimate of the enclosed area of the bounded geometry. This is done with the assumption that the ratio of randomized points bounded in each region will ultimately match the ratio of areas that enclose them.

[0055] Such Monte Carlo simulation-based approach is applied in the present embodiment photonics alignment algorithm, used not to evaluate area size, but rather to locate a search target. The advantages of the Monte Carlo Simulation technique for photonics alignment are distinctly in enabling.

[0056] According to an embodiment, a method is provided for aligning an optical input with an optical output. Aligning refers to positioning the optical input and optical output relatively to each other in such a way that the light output by the optical output is transferred to the optical input. A complete transfer in practical system may not be achievable. Nevertheless, it may be desirable to transfer as much light as possible under given conditions, which may include optical aberration, desired distance between the light input and output, or the like.

[0057] An optical input may be any kind of optical receiver, e.g. photonic detector such as a photo diode or any kind of a wave guide such as an optic cable or any optical inlet or system.

[0058] The aligning is not necessarily performed between the actual source of light and drain (receiver / detector) of light. For example, an aligning may be desired between two opposing parts (e.g. plug and socket) of an optical connector. For the purpose of alignment, an optical source I drain may be connected to these parts, which are not a part of the aligned or aligning system. On the other hand, the present disclosure is also applicable to an optical source (e.g. light emitting or laser diode) as the optical output and / or to an optical drain (e.g. photodiode) as part(s) of the aligned system. In general, the optical source and / or drain may be external, a part of aligned system or a part of the aligning system.

[0059] Some specific practical examples of an optical signal sender and an optical receiver include fiber optic based arrays, free space to fiber systems, or positioning lenses for optimal relative light transmission. It is noted that although reference is made to an optical input and an optical output, the present disclosure is not limited to a singular input / output: for example, fiber arrays which are parallel light carriers can be aligned to a parallel array of light receivers. In general, one or more optical outputs and one or more respective optical inputs may be aligned.

[0060] Fig. 1A schematically illustrates an exemplary system arrangement 100 for aligning an optical output 120 and an optical input 170. The optical output 120 is illustrated in Fig. 1A as located at a fixed position (for the purpose and duration of the alignment) within a holding module 110 for holding the optical output 120. The optical input 170 is illustrated as having an adjustable position in at least two dimensions x and y. The adjustability may be provided by a movable module 160. The movable module may have means for holding the optical input 170 and means for controllably moving the holding means. This arrangement is merely exemplary. In general, both optical input and optical output, or either of them can be adjustable (movable). The adjustability may extend to more than 2 axes, e.g. it may include axis z perpendicular to both axes x and y, and / or rotation axis or axes in order to adjust the tilt of the optical input / output. Moreover, there is in principle no need for holding module 110, depending on the kind of optical input subject to the alignment.

[0061] An aligning module 150 in this example integrates functions of an alignment detection and control of the relative position between the input 170 and output 120. For example, the aligning module 150 in its function as alignment detector may receive signal from the optical input 170 and determine whether or not a desired degree of alignment is achieved. If the desired degree of alignment is not achieved, the aligning module, in its function as controller, may control the movable module 160 to move the input 170 to another position. This exchange of signals is represented by bidirectional arrow 180. However, it is noted that this arrangement is only exemplary. For example, in case the output 120 and not the input 170 is movable, the aligning module 150 may detect alignment by controlling the output 120. Further constellations are conceivable as is clear for those skilled in the art.

[0062] However, Fig. 1 A is only exemplary and not to limit the present disclosure. The search described herein is also applicable for other than direct coupling. For example, as shown in Fig. 1 B in a case of surface coupling, the fibers (in general the input 170 and an output 130) both come from one plane 165, with possibly a slight angle relative to a vertical direction. The wave guide 140 (e.g. on that may be for instance a grating coupler direct into waveguide or the like). The horizontal (X-Y) plane 140 in this case is searched. In this figure, the input 170 and output 130 are not collinear (but rather oblique or approximately vertical relative to each other).

[0063] Moreover, Fig. 1A shows a control module 190 which may be a part of the system and which implements adaption I setting of the threshold condition. In the same way, the control module 190 and / or the aligning module 150 may be part of a system as illustrated in Fig. 1 B, receiving light input from the light input 170.

[0064] The steps of the aligning method 200 are illustrated in Fig. 2. In particular, according to this method, a first search 280 and a second search 290 are performed. The first search 280 may be faster and less accurate and serves for finding location of the optical output by finding light intensity exceeding the noise. The second search may be more accurate and serves for a finer alignment of the optical output 120 and input 170 in order to increase or maximize the optical coupling, i.e. light transferred from the output 120 to the input 170.

[0065] In general, the first search 280 serves for obtaining a first alignment of the optical input 170 and the optical output 120 for which a light beam emitted from the optical output 120 is detected at the optical input 170. The searching of the (first) alignment includes performing the following steps repeatedly until a predefined condition is satisfied. The predefined condition includes a measurement value of a signal strength at the optical input 170 satisfying a threshold condition.

[0066] Step 210 is a step of determining an alignment of the optical input 170 and the optical output 120 as a random value, from a predetermined search range. The determined alignment is a next alignment, e.g. a destination of a linear movement starting from a current position. When step 210 is executed for a first time within the first search 280, the current position is a predefined start position. The current position for each but the first time within the first search 280 is the position of the most recent randomly generated alignment (alignment from the preceding cycle). For example, such predefined start position may be a fixed position within the predetermined search space, such as an origin of the coordinate system of the search space. However, the present disclosure is not limited to such start and the start position may be selected anywhere within or even out of the search space.

[0067] Regarding the term “determining an alignment”, the present disclosure is not limited to any specific format and the alignment may be an absolute alignment within the entire predetermined search space or may be a relative alignment generated relative to the current position or the like. It is noted that the term a “random value” includes pseudo-random value, i.e. a value generated by a pseudo-random generator as known from the computer technology. However, the present disclosure is not limited to pseudo-random generators as it is conceivable to employ even a true random (quantum effect based) generator.

[0068] Step 210 includes the random value usage. However, it is noted that the generation of the random values may be, but does not have to be performed on the fly. In particular, a random number may be generated each time step 210 is executed. This approach may reduce computation time because only random numbers are generated that are actually used, and it reduces storage requirements. Alternatively, a random number sequence may be pre-generated and stored, e.g. in a look-up table, and each time step 210 is executed, a next among the stored values is taken as the random value.

[0069] Step 220 is a step of moving the optical input 170 and / or the optical output 120 such that the optical input 170 and the optical output 120 are in the determined alignment. For example, the movement may be on a shortest trajectory connecting the current position and the determined alignment. The trajectory may be linear.

[0070] Step 230 is a step of obtaining one or more measurement values of the signal strength at the optical input 170 on the trajectory to the alignment. The trajectory may include the end point, i.e. the position of the determined alignment.

[0071] The cyclic repetition of the three steps 210, 220, 230 is illustrated in Fig. 2 by means of decision block 240. In the step 240 it is tested whether the predefined condition is satisfied. The condition may be a condition on the signal strength measured at the input 170. In case the predefined condition is not satisfied, another cycle (possibly over step 240) is performed, starting again at step 210. On the other hand, in case the predefined condition is satisfied, the first search method 280 ends and the second search method 290 is performed (“yes” in step 240).

[0072] For example, the step 230 of obtaining one or more measurement values of the signal strength comprises sampling of the signal strength during said moving step 230 with a predefined sampling frequency. Fig. 2 illustrates the corresponding exemplary cycle, which is performed J times. J is a number of measurement samples per trajectory from the current position to the determined alignment. It is noted that J may be fixed for different trajectories or may be variable for different trajectories. For example, the sampling (measurement) rate may be fixed and thus, less measurements are performed on a shorter path and more measurements are performed on a longer path. In Fig. 2, in step 250 it is tested whether the number of measurements on the trajectory to the determined alignment (determined in step 210) has been reached. If it was reached, the next random alignment is generated (“yes” in step 250), i.e. the method continues with step 210. If on the other hand, the number of measurements J on the trajectory has not been reached, the movement 220 and measurement 230 steps continue.

[0073] It is noted that the sequence of execution of steps 240 and 250 or their location within the flow diagram of Fig. 2 is merely exemplary. Their sequence of execution may be reversed or these checks may be performed in a different manner or in a different position within the flow chart.

[0074] As mentioned, the method 200 further comprises performing the second search 290 for obtaining a second alignment of the optical input and the optical output for which the signal strength is larger than the signal strength at the first alignment.

[0075] Such second search 290 may be based on a gradient search, following a gradient of the signal strength from the point (position within the search space) in which the first search 280 stopped.

[0076] It is noted, that the first signal finding method 280 can be applied with any subsequent optimization method 290 and need not be constrained solely to a gradient search.

[0077] In an exemplary implementation, the first search 280 is performed in two dimensions. Such search is illustrates schematically in Fig. 3. In particular, Fig. 3 shows a predetermines search space 300. The search space has two dimensions x and y. In the example of Fig. 3, both axes have a scale in micrometers from 0 to 100. However, this is only an example. In general, the present disclosure is not limited to any particular scale and the scale and / or the size of the search space may be given by the application (e.g. expected size or distribution of the signal beam). The search space 300 illustrates in Fig. 3 signal values at each location. These, however, are in a practical use not known - only the sampled measurement values during each trajectory are known. The measured signal strength is in general stronger in the location of the beam 320, illustrated in Fig. 3 by the signal strength distribution in concentric circles. The sampling in this example is performed each 0.5 micrometer. The start position 310 is located in the origin point (0, 0) of the search space 300. A first trajectory 330 from the start position 310 to a first random alignment position 340 is shown to be a dashed line. The alignment may be also defined by the two coordinates in the respective two dimensions. It is noted that the remaining trajectories are only exemplary to illustrate randomly determined nodes and paths between them (stopping upon reaching of the threshold condition is not illustrated in Fig. 3).

[0078] It is noted that the two dimensions (X-Y) of the search space may be perpendicular to the light beam. However, the present disclosure is not limited to such example, and the alignment may be performed at oblique angles (depending on the coupling path between the input 170 and the output 120) or collinear / parallel. For example, in a case of an edge coupling (or direct coupling), the collinearity means that the input and output run in a line as may be the case in Fig. 1 A. Still, the search zone may be crossed obliquely or perpendicularly. In Fig. 1 B also, the input and output may be inclined with regard to the vertical axis (axis perpendicular to the 2 dimensions).

[0079] It is noted that the two dimensions are only exemplary. In general, the alignment method 200 can be applied in 3 dimensions. For example, height (or more general distance between the planes in which the input 170 and the output 120 are located I moved and which are parallel to each other) may also be varied as a part of the search.

[0080] According to an exemplary implementation, as mentioned above with reference to Fig. 1 , the moving step is performed by moving the optical input relative to a fixed optical output. It may facilitate implementation for instance in cases in which the active part such as light source is a part of the system and fixed during the first and second searches. However, the present disclosure is not limited to such configurations. In general, the optical input 170 and output 120 can be moved simultaneously relative to an intermediate light carrier (or with fixed input relative to fixed output or vice versa) as shown, for instance, in Fig. 1 B schematically. In some exemplary implementations, this may be used if there is an intermediate silicon photonic light circuit that requires to be tested. Light probes may be used with sender (output 130) and receiver(input 170). The example of Fig. 1 B shows coupling light into and out of a photonic circuit on wafer 140. This configuration may be specifically used for testing of the light carrying circuit and / or device 140.

[0081] In some embodiments, a monitored automated threshold determination may be performed. In particular, demands of resolution is shifted from spatial path pitch to data sampling frequency, enabling for raising alignment speeds and possibly using a calibration routine to determine an optimal coupling threshold condition. This may be more robust and adaptive than a user-defined threshold, such as threshold coupling condition, and pathing parameters. It may be simpler and more suitable for the first light finding. The Monte Carlo search allows the scan field (search area) to be traversed more rapidly (covering a wide search field) with high resolution typical of tight pitched scans but provided by a high frequency sampling. Moreover, a Monte Carlo (random) search does not require any a priori knowledge of the signal size and location. To actively perform the Monte Carlo simulation with precision automation systems, a paradigm for intelligent commanding of a motion system is provided. The motion system may be a motorized or piezo positioning equipment or any other positioning equipment.

[0082] In the following, a detailed example of performing the first search 280 is provided with reference to Fig. 3. A coordinate origin node 310 and search range (given by 100 microns on each of the two axes x and y) are defined and mapped onto a bounded rectangular search zone 300. In other words, a normalized coordinate set (normalized on the search space) that corresponds to the motion system.

[0083] Search origin node 310 may be denoted as having the coordinates (xi, yi). X-Axis search range may be denoted as (xi+Ax) and Y-Axis Search Range may be denoted as (yi+Ay). Such bounded search zone corresponds to the search range mentioned above. With the bounded search zone defined, two random numbers may be generated, the two random numbers representing coordinates within the search range. The two random numbers Xi and Yi are thus generated from the respective ranges in the two spatial directions of the search range:

[0084] Xi= &1*(X0 + pxi*(RANDX)),

[0085] Yi= B2*(Y0 + pyi *(RANDY)).

[0086] RANDX and RANDY are computer functions returning a (pseudo-)random value from the range [0,1], Any available random number generator may be used. The distribution of the random numbers generated may be uniform. However, the present disclosure is not limited thereto, and other distributions may be applied.

[0087] It is noted that the random generator values may be further constrained. For example, it may be ensured that a random generator does not generate values resulting in sampling paths too close to previously travelled sampling paths (trajectory). However, such a dead zone may require some storage capacity to actually store the history (travelled paths) and computational power to test and enforce the constraint. However, due to the internodal sampling and random nature, a simple random generator normalized to the current search range would typically be sufficiently efficient.

[0088] The output of RANDX and RANDY is further normalized with a correct offset (X0, Y0) and scaling pxi, pyi to match the search zone for the attached motion system. For square search regions pxi = pyi, The positioning system may not be commanded in explicit motion coordinates mapped to the search zone.

[0089] The positioning system for example, can be analog voltage commands to amplifiers driving piezo positioning equipment that are calibrated by travel linearly to an applied voltage. In such cases , B2 coefficients are used to scale voltage to correct travel positions for the control module to command correct positions (via voltage). Otherwise, coefficients B1 , B2 can be omitted.

[0090] Thus, Xi and Yi specify absolute move position within the search range in this example. For example, in practical systems, two floating point double precision random number generators RANDX, RANDY from the range of [0,1] may be provided. It is noted that by two random generators, not necessarily two different structural generators are meant. It may be that a random number generator function is executed two times, either sequentially or in parallel.

[0091] While moves (to the next randomly generated alignment, cf. step 210) may be constrained to an achievable move frequency of the precision automation system, the sampling (measurement 230) of the space between positions of nodes of the motion cycle may be updated at a significantly higher frequency. Such higher-frequency internodal sampling (sampling between the randomly generated nodes) may facilitate obtaining of rapid results in the Monte Carlo search.

[0092] Fig. 3 illustrates a result of iteratively defining position nodes (next alignment in step 210, shown as small empty circles in Fig. 3) updated at move frequency. In Fig. 3, a move is a linear move from the current node to the next node, also referred to as vector move. The internodal sampling is illustrated schematically by the dotted line between the nodes.

[0093] As described above, based on the sampled (measured) intensity of signal, the search may terminate. Specifically, if the measured intensity is higher than a predefined threshold, the search may stop. However, it is noted that such a threshold is only an exemplary implementation of a search terminating condition. It is conceivable to terminate the search based on a different condition, such as finding more than one values exceeding the threshold or find a particular distribution characteristic or the like.

[0094] According to an exemplary implementation, the monitoring (e.g. as in steps 230 and 240 ) of the measured values starts at the initiation of the Monte Carlo search and continues during the internodal movement to determine whether a success condition (which may be a search terminating condition) is satisfied. The success condition may be defined by a user, pre-set or determined automatically as will be described below in more detail.

[0095] The determination of the success condition may be based on an automated noise determination. The sampling (measurement) 230 runs at a frequency greater than the frequency of the moves (210) to improve spatial search resolution beyond conventional curvilinear path spatial pitch. For example, possible move frequencies may be about 50 Hz and sampling frequencies at or above 5 kHz. The success condition may be defined, for example for a voltage measurement (e.g. by a photo detector in the optical input 170). In particular, the success condition may be satisfied measured voltage vm is larger than a success voltage vs: vm > vs.

[0096] More specifically, a successful conditional that would yield an aligned result may be based on a baseline noise measurement (and clear presence of a signal above baseline noise). For exemplary purposes that minimum voltage value is a test at 6-Sigma above standard average noise when misaligned. When a voltage signal is identified at this level (it indicates presence of the transmitted signal), indicating scan termination is acceptable. This is related to the strength of the transmitted optical signal in the alignment environment and may be variable depending on the sources and devices involved. In general, the conditional voltage level may be based on a proportion (e.g., percentage [%]) of maximum signal and / or noise value.

[0097] The monitoring runs on a higher frequency loop taking 230 coordinate triple (Xn, Yn, In) samples at high spatial resolution while the Monte Carlo Area Search is running to distinct position nodes disparately across the scan field automatically determining if observation meets threshold criteria for signal found (success) condition. This determination is made in the loop (steps 220, 250). When successful, the Monte Carlo search is terminated the motion system may be moved to the found position. This may be symbolically described as follows: IF ln+A>ls : STOP Monte Carlo search and command motion system to move to (Xn,Yn) where In was observed. Here, In is observed light intensity (may correspond to a measured voltage), Is is the success intensity threshold value and A is a margin by which it is desired that the In exceeds Is.

[0098] In general, it is desirable to use largest signal diameter of the Gaussian signal profile (or radially symmetric signal profile or the like) to perform the Monte Carlo search, as it provides the maximum target zone relative to the search zone, thereby yielding faster results. However, it is also desirable to provide robust results in terms of correct detection. Thus, in general, the margin may facilitate a tradeoff between these two aims, namely allowing for reliable signal recognition above noise and a later gradient algorithm optimization while having possibly large target zone. Moreover, provision of an adjustable margin (A) provide some room to restrict the threshold more in case the system experiences a change in noise characteristics or the like.

[0099] Among parameters that affect the performance of the Monte Carlo simulation-based photonics alignment are a relative size of the target zone (the light cross-section, that may be defined in terms of its diameter, or mode field diameter or the like) and the bounding area search zone, (search range)

[0100] Fig. 4 illustrates that each sampled (measured in step 230) point 410 in the search space has an impacted search zone 400 with a diameter 450, for which it can effectively identify a signal. That zone 400 can be described generally as a radially symmetric distribution with a diameter equal to two times the Mode Field Diameter (MFD) 420 of the target, centered about that measurement point 410. This is assumed as true for a Gaussian target or for any other radially symmetric geometries, such as flat top targets with elliptical target zones or the like, for which the method is applied.

[0101] Thus, the diameter P esz (450) of an effective search zone 400 of a point 410 (also denoted by point index i) is correlated to the Mode Field Diameter T'MFD (420) of the target (light beam to be detected) or target diameter (at a selected intensity level of the signal):

[0102] P esz = 2*T'MFD.

[0103] In particular, in this example, the effective search zone 400 of a point 410 is equal to twice the MFD 420. Index i specifies a particular point 410 among the points in the search field (search range 300). It is noted that the search zone 400 should encapsulate the target 410 for the alignment to be successful. Partial overlap may not be able to provide sufficient robustness of detection.

[0104] Figs. 5 and 6 illustrate an example in which a 10 pm target 510 is located in a center of a search field 500 of the size 100 pm x100 pm. Fig. 5 illustrates a raster scan method as known in the art and Fig. 6 illustrates a random (Monte Carlo) method of the present disclosure.

[0105] In the raster scan method of Fig. 5 operated at 10 Hz (10 scans per second), the alignment would be completed in this scenario in about 12.5 scans (or about 1.250 seconds) which corresponds to approximately 25 segmented moves. A scan here is defined as a basic move pattern that is repeated. In Fig. 5, the scan includes a linear forward move 550 and a left turn 560, or a linear back move 570 and (if necessary) a right turn 580. As all movements are segmented into these four (or three at the beginning and end of scanning) parts, the 12.5 scans correspond to approximately 25 segmented moves. In this example, a scan pitch is about at about 0.5 of the target zone 510 diameter (i.e. 5 pm) to facilitate a successful outcome (positive detection of the light). A high sampling frequency (e.g. 5 kHz in this example) would make the effective search zones 520 appear approximately rectangular as shown in Fig. 5. This is caused by the close scanning (measurement) points i and the corresponding overlapping effective search zones 520.

[0106] In the Monte Carlo based method of Fig. 6, each measurement point has an effective search zone 630, which is based on the relation above, and has a value of 20 pm in this example. The density of sample (measurement) points along a vector (linear path such as paths 650, 660, and 670) looks approximately also like a rectangular zone due to high frequency sampling of e.g. 5 kHz. In the example of Fig. 6, only four moves are necessary until the target 610 (similar to target 510 of Fig. 5) is acquired within the search space 600, which has the same size as 500 in Fig. 5. This would be a typical result in such a search per simulation and test. With 100 Hz moves, the total search time is 40 ms (and with 10 Hz moves equivalent to Fig. 5, approximately 400 ms).

[0107] In a system 100 using Monte Carlo search, points can be sampled at about 5 kHz and coordinated move sequences can be performed near the practical top end at 10 Hz (depending on loading and move conditions) and isolated vector (linear) moves can run at approximately 100 Hz (under similar conditions), using scaled motions with micron scale dimensions. Herein, isolated vector moves are moves that are not a part of a larger systematic pattern (like raster scan) that is intended to be followed with fidelity. In such isolated vector moves accuracy or repeatability of the moves in sequence (or whether they ever settle to target positions) is not a concern. On the other hand, in raster moves ideally, the motion is settled and repeatable on fixed pitch. Also, a curvilinear movement at the turns is more complicated and may thus be slower.

[0108] Fig. 7 illustrates a comparison of the respective areas searched per unit / time with raster scan and Monte Carlo search. In particular, a first portion 710 has been searched by the Monte Carlo Method in 40 milliseconds, achieving about 44% coverage of the search range 500, which corresponds to about 1.1 % per millisecond. Comparatively, the raster scan searched area 720 (also comprising area 710) is approximately, 52% coverage in 1.25 seconds, corresponding to about 0.04% per millisecond.

[0109] Double-Sided First Light Search

[0110] There has been no standard well-known photonics double-sided first light finding technique to align a sender 120 (or 130) with a receiver 170 through an intermediate waveguide efficiently. Current approaches rely on some type of an iteration that has not been applied broadly and efficiently so far.

[0111] The difficulty becomes apparent when raster scans of an area (search range) with a sender 130 are to be made relative to the waveguide location simultaneously with a receiver 170 spatially located coincident to the waveguide as shown, for instance in Fig. 1 B. Considering conventional scans run on rails (without any adaptation or path alteration during the process) to completion, this event (both sender 130 and receiver 170 being aligned through intermediate waveguide 140 simultaneously -- at their correct respective positions at identical times) is highly unlikely to occur spatially and temporally, especially with target sizes at the micron scale.

[0112] The lighting alignment method performs these moves simultaneously until an optimized automated threshold condition is found resulting in a non-iterative process with relative efficiency limited primarily by relative size of search and target zones. In particular, the Monte Carlo search includes two independent searches (corresponding to the first search described above) running in respective local search ranges but using the same signal measurement (230) and evaluation (240) to terminate the simultaneous search.

[0113] Fig. 1C illustrates a system 100c including the signal receiver 170 as in Fig. 1 B that is coupled 182 to a measurement device 150c. Fig. 1C shows an example of light coupling from the (external) emitter 130 (e.g. transmitted through fiber) to the receiver 170 over a waveguide 145. The coupling is provided in that the emitter 130 is aligned to a waveguide input (illustrated in Fig. 1C by black dot at a position within the waveguide 145 the light 147 is entering) on one side of the waveguide and the receiver 170 is aligned to a waveguide output (illustrated in Fig. 1C by black dot at a position within the waveguide 145 the light 148 is outgoing). The path within the waveguide 145 is denoted as a connection 144 between the waveguide input and the waveguide output.

[0114] Search zones 141 and 142 are search zones coupled with respective light emitter 130 and light receiver 170. It is noted that search zones 142 may be also coupled to search zone 141 , i.e. correspond to the zone obtained by all light outputs 148 resulting from lights inputs anywhere in search zone 141 and the connection 144 (how the light input into the waveguide 145 translates to light output form the waveguide 145). However, if the search is performed independently for the emitter 130 and the receiver 170, the search zoned may be decoupled.

[0115] Both independent searches are using the same signal 182 for evaluation in the alignment module 150c. The signal 182 is going from a correctly positioned transmitter 130 carried by motion device 165 into waveguide input 147 through conducting path (with output in 148) to correctly positioned receiver 170 (carried by the motion device 165) coupled to detector / power meter and controller 150c where it is evaluated by Monte Carlo search described above to terminate search when the threshold condition is met. As described above, the threshold condition may be set in a controller 190c. It is noted that unlike in Figs. 1A and 1 B, in Fig. 1C the motion device 165 is configured to independently control (schematically indicated in the figure by independent signal paths 181 and 182 leading from the controller 150c to the motion device portions corresponding to the transmitter 130 and received 70 respectively) motion of the transmitter 130 and receiver 170. Although Fig. 1C illustrates coupling via a waveguide as in Fig. 1 B, the double-sided search is applicable in a similar manner to direct coupling as shown in Fig. 1A - Fig. 1A could be modified by enabling independent motion control of the transmitter 120 and receiver 170. It is noted that the "motion device" may comprise two positioning systems controlled by one control module. Automated threshold determination

[0116] According to an embodiment, which may be applied independently from or in combination with the above described random search, automated threshold setting approach for successful light detection is provided.

[0117] Currently known threshold condition determination is made typically prior to the scan using values that have been acquired empirically over a range of conditions suitable to reliably find a signal above noise in the current use case (using various standard methods). However, such an approach may not work well for various different scenarios. For example, an appropriate setting may differ with temperature, electromagnetic interference, ambient light condition of the surroundings, signal transmission characteristics of the sender and receiver, or the like. In order to improve the success detection, an automated technique is provided which may be implemented in the control module 190 that performs a signal evaluation and threshold setting criteria automatically. Such setting is possible during the scanning I sampling.

[0118] A method for automated threshold determination illustrated in Figs. 8 and Fig. 9. Fig. 9 summarizes possible stages of the automated threshold determination, namely calibration 910, statistics determination 920, autocorrelation 930, and learning 940. Fig. 8 provides an exemplary and more detailed flow diagram embedding the threshold determination into the search and monitoring functionality described above. In particular, as can be seen in Fig. 8, signal monitoring may be performed in parallel to the first signal search and it may be a part of a sequence of: search initialization, calibration routine, threshold condition setting, and active monitoring of signal to terminate search. All processes may be performed in the alignment module 150 / 150c and control module 190 / 190c as described above.

[0119] In step 801 , the first signal search is initiated. This may be performed, e.g. by an operator such as a human operator or an automation in order to align a specific input and output of the signal. Step 810 represents a calibration routine (at no signal condition) and the baseline noise evaluation. In the calibration routine, noise signal is sampled, for example at a fixed frequency. This corresponds to measuring noise signal (in absence of light signal) a plurality of times. The measurements can be performed at one and the same location within the search area or out of the search area. However, the present disclosure is not limited thereto and the measurements can be taken at more than one locations and / or repeatedly. In a specific exemplary implementation, measurements may be indexed and stored in a one-dimensional (1 D) array at each sampling cycle (e.g. at the 5 kHz sampling frequency mentioned above or the like). The duration of the calibration may be pre-set. For example, the measurements may be collected for 6 milliseconds (resulting in 30 measurement points collected in the 1 D array). As is clear to those skilled in the art, the 5 kHz and 6ms are only examples and these values may be set differently. Output of step 810 is thus an array of measured noise signal values.

[0120] In step 820, statistical analysis of signal noise characteristics is performed. Based thereon, and effective bit-resolution evaluation of the signal may be performed. The statistical analysis is performed on the 1 D array obtained in step 810 and includes e.g. a calculation of average signal strength, standard deviation and / or variance. This calculation may be executed in one controller cycle (for example 200 ps) and is further used to determine a threshold condition baseline at e.g. six-sigma level. For example, the alignment control module 150 synchronously collects variables and updates them each control cycle. In the control cycle, synchronous update of control module variables such as positions, feedback, signal level, etc. is performed. Control Modules may have different cycle rates generally: it may be 5kHZ as mentioned above or any other value depending on the design of the system (e.g. 20 kHz rate or another rate).

[0121] Step 830 refers to Monte Carlo move sequence for the first signal search. Step 840 refers to active signal monitoring in which each controller cycle the signal is sampled synchronously with position change and referenced against the threshold criteria. In step 850, signal found condition is tested. It is noted that steps 830 to 850 are schematic. They may correspond to steps 210-240 of the first search in Fig. 2. However, various implementations are conceivable. The condition testing may be performed at each sample point as in Fig. 2, but this is not to limit the present disclosure. It is conceivable to first perform the entire linear movement between two nodes and collect signal points and then testing the collected signal points for the condition (e.g. the threshold on signal strength). The testing may thus be synchronous with sampling, with linear movement, or even performed after a multiple linear movements.

[0122] If the signal found condition is observed above the six-sigma threshold condition, the autocorrelation check is performed in step 860. Here signal condition autocorrelation is checked around the pre-aligned / aligned change point (below the autocorrelation condition at the change point is explained in greater detail). If the autocorrelation condition is satisfied (“pass”), in step 870, Monte Carlo search is terminated and the second search (optimization) is initiated. If, on the other hand, the autocorrelation condition is not satisfied (“fail”), in step 880 Monte Carlo Search is terminated and step 890 of automated threshold modification is performed. In this step, adjustment of the threshold condition is performed based on the autocorrelation check. In particular, effective bit-resolution calculation with a modification of six-sigma threshold condition may be performed. For example, a method is provided for setting a threshold condition. The threshold serves for determining whether or not an aligning an optical input with an optical output was successful. In other words, the threshold may be used to terminate a search for the aligning of the optical input 170 with the optical output 120. The search includes obtaining one or more measurement values of the signal strength at the optical input on the trajectory along which a signal is sampled (scanned). The method includes the statistics determination 920 and learning 940.

[0123] In particular, the method includes a step of determining a statistical characteristics of said one or more measurement values of the signal strength. This step corresponds to step 920 of Fig. 9. The method further comprises determining or updating the threshold condition based on the statistical characteristics. This corresponds to the learning step 940 of Fig. 9.

[0124] For example, the determining a statistical characteristics includes determining a variance indication (e.g. a standard deviation or variance) and the threshold condition is based on a function of the variance indication.

[0125] Such function of the variance may include a product of the standard deviation (referred to as o) and an accuracy factor such as 5 or 6 or the like. For example, the threshold Thr of the threshold condition may be determined as Thr = average + 6*o + Alearned. Here, “average” is average (in general mean) of the signal without light (baseline noise) and Alearned is a value determined based on a history of measurements as will be described below in more detail. In other words, Alearned is a term for adapting the threshold.

[0126] It is noted that the baseline noise evaluation may be performed at a no signal condition in the step 910 of calibration. An initial calibration may be performed at the beginning of the search with light from the optical output 120 switched off. In particular, the calibration step 910 may comprise: measuring noise strength values in absence of the light beam; determining a statistics of the noise strength; and based on the statistics of the noise strength, determining resolution of the measurement values. This will be described in the following in more detail.

[0127] The calibration is generally performed for a given search range by moving optical input 170 and / or optical output 120 to a region without signal and collect data for a predefined short time period. By way of example, the predefined short period may be in some implementations 4-10ms, e.g. 6 ms. However, this is only an exemplary value and does not limit the present disclosure. Given a high synchronous sampling rate (e.g. the same rate as applied for measurements during a linear move) of the control module 190, this may take mere milliseconds (e.g. 30ms for the scenario described herein, but may be different for other scenarios) to obtain suitable statistics. Signal data (voltage) are collected e.g. in a 1 D array of points to perform analysis on. A calibration may be performed (repeated) during the light search in a spatial location without coupled light signal between sender(s) and receiver(s) even if light is on. For example, the determining or updating the threshold is performed during performing the first search 280.

[0128] The baseline noise samples may be collected (stored) for instance in an array of values sampled (measured) at a fixed frequency (e.g. 5kHz which may be the same or different as during the scanning). The baseline noise samples may be collected on the same location with no signal a plurality of times. However, the present disclosure is not limited thereto and a plurality of locations at one time instance or at a plurality of time instances may be measured.

[0129] The signal measurement is performed with an optical detector and power meter combination that evaluates signal strength as understood by a control module (e.g. 190 in Fig. 1) as a scaled analog voltage. When sender (e.g. output 120) is misaligned with receiver (e.g. input 170) so that there is no signal coupling, and only baseline systemic electrical noise interpreted by an analog voltage (e.g. with power meter wired to the control module 190) is present. The signal is then a voltage based measurement value (or values) in the calibration array. Whether or not the signal is misaligned may be determined by a pre-set threshold or pre-calibrated based on ration between noise and light signal in previous passes.

[0130] The values of the 1 D (voltage) array are used to determine bit resolution and statistics. For example, an average signal x is calculated from n observations %i(e.g. sampled at a fixed frequency) as follows:

[0131] Then, a standard deviation S (may be also denoted o) of the measurement population may be evaluated as follows:

[0132] It is noted that in this example, the observations are voltages. However, the present disclosure is not limited to such calculations and in general, observations may be processed in any units, they may be light intensities (e.g. derived from voltages or otherwise) or any other units correlated with light intensity.

[0133] T o determine bit resolution, the elements of the 1 D calibration array (storing measurement values) are searched to find a minimum difference value. The 1 D calibration array contains a number of elements (e.g. 30 or more or less). Each of those elements is paired with other individual elements of the array and a difference is formed for each pair. A minimum difference value is found of all stored noise measurements and gives us a baseline quantized bit (i.e. the effective resolution of the setup per noise measurement). That bit resolution provides a baseline and thus the base unit to move the threshold up or down. By this check, A / B testing as well testing for shielding (EMI) light box enclosures, different light power sources etc. may also be facilitated.

[0134] In other words, the minimum value represents the minimum in the binary measurement representation corresponding to the Least Significant Bit (LSB). This might be understood as effective least significant bit of the setup as a whole under a baseline “no signal present” noise condition. It is noted that this LSB determination is only exemplary and in practice, the LSB may be determined in a different manner, considering the entire range of signal values and / or performing only calibration in a different manner or some specific conditions.

[0135] The combination involves calculating differences between the measured points. In particular, the total number of combinations nCrfor calculating the differences can be calculated as follows:

[0136] With r representing the count for the groupings of elements (in this case r=2 for the pairs of measurement values from the list (1 D array mentioned above)), and „!“ representing operation of factorial. It is noted that the differences may be stored in a separate array for evaluation (e.g. minimum finding). The array of noise differentials is searched programmatically by the algorithm to determine a quantized effective least significant bit for measurement (and automated threshold adjustment).

[0137] In summary, in step 920, an average value in the array (after or during calibration move) (effectively optical / electrical noise in the environment without signal present) is determined to obtain a baseline noise in the system. Then a standard deviation of the noise distribution is calculated. The threshold of, for example, a six times sigma above average noise may be then set to determine a measured signal as belonging to the light source (search target zone). The threshold may be then used during the search (e.g. step 240) if a measured signal is higher than six times sigma, the measured signal is considered as belonging to the search target (light signal). As mentioned above, the six times sigma may be only a term in the threshold, and an additional offset may be applied to six times sigma to obtain the threshold. Moreover, the factor with which sigma is multiply does not need to be six, it can be five or seven, depending on the desired accuracy / speed of the first search 280. Step 930 in Fig. 9 shows determination of an offset for obtaining a threshold update. If a currently set threshold condition is met as a part of the Monte Carlo search, the search can be immediately terminated (cf. step 240, “yes”) at the signal found location. Then, an autocorrelation approach 930 may be applied. In particular, step 930 includes, when the threshold condition is satisfied, determining whether the measured values satisfy an auto-correlation condition and resuming the first search 280 if the auto-correlation condition is not satisfied. Moreover, if the autocorrelation condition is not satisfied, the threshold condition may be adapted.

[0138] In a situation in which the threshold corresponds to a signal of six sigma above noise, it should only rarely happen that the threshold is exceeded due to noise. A fail(auto-correlation) condition causes the machine to adjust from the baseline 6 sigma criteria upwards (if that conditional is set too low to yield a signal above the calibrated noise measurement and statistics). It is noted that the threshold can also be modified downwards without a fail case after learning the optimal band for fast and reliable signal finding. Some optimization techniques may rely on signal values in preceding signal found conditions. In general, patterns of signal and noise characteristics that may be collected (e.g. in arrays) along with optimization success / failures may be used to move delta up or down based on such learned combinations over iterated runs. It is noted that artificial intelligence and machine learning models such as neural networks or the like may be trained for threshold determination and used for it. For example, past thresholds and information on whether or not they led to a failure or success may be used for training, possibly together with signal and / or noise or their statistics.

[0139] In an exemplary implementation as shown in Fig. 8, signal strength Vi is collected synchronously with position information (Xi, Yi) within the search range and stored in arrays of triplets (Xi,Yi,Vi) during the Monte Carlo Signal search. When a signal is observed above the six-sigma plus delta level, the search is terminated and the signal is briefly evaluated 860 in the aligned position over a few milliseconds (obtaining post-aligned signal). This evaluation is performed to confirm that the signal condition at the aligned position (position at which the threshold condition was fulfilled in step 850) was not a false positive confirmation related to transient or other environmental noise influences or too low to reliably apply optimization. Here there would be an expectation of system change point from no signal condition to signal present in case of a false positive.

[0140] Thus, a change point detection based on autocorrelation may be performed to compare the prealigned noise with the post-aligned signal strength. The pre-aligned signal characteristics should be consistent with noise observed during calibration while the post alignment signal should include noise and at least some discernable transmitted signal in addition. Comparatively, pre-aligned maximum measured signal should only carry noise information (at maximum): Signal(pre-alignment)=Noise(maximum). Whereas the post-aligned signal should carry some signal transmission in addition to the noise: Signal(post-alignment) = Transmitted Signal + Noise(maximum).

[0141] Thus, in step 860, pre-aligned signal data is compared to post-aligned signal data (phase lagged in time) symmetric around the change point (misaligned to aligned) to determine if the following condition is fulfilled: Signal(post-alignment) > Signal(pre-alignment) for all signal measurements made that are symmetric about the change point (e.g. stored in a signal array).

[0142] If there is an observation in which this conditional is violated, the Monte Carlo search is resumed (step 830). The search is not resumed however with the same search criteria as the transient noise that provided a false positive confirmation should be calibrated back out of the threshold criteria. This is where the machine learning (threshold adaption) uses three nodes of information to shift the threshold criteria automatically (steps 880, 890).

[0143] The maximum differential between pre-aligned and post-aligned (autocorrelated) signal data is used to determine an addition to the delta, representing the threshold change (update). The bit resolution determination is performed with the autocorrelation differential to determine how many Effective Least Significant Bits of Noise are exceeding current threshold condition. This is performed in the same way as described above, by analyzing the combined array.

[0144] In an exemplary implementation, the machine learning (threshold adaption) then applies a 2-times increase in the threshold delta (quantized to Effective Least Significant Bit) based on the maximum differential. However, this increase is only exemplary. It is noted that a different step (or different multiplier of delta) or strategy may be used. The twice delta is a conservative condition on signal threshold adder from the autocorrelation test (with consideration to effective bit resolution for the measurement). However, this delta can be adjusted or integrated, or instance, in the machine learning process for optimization. This may be performed by learning the setting from observing history and adapting the step, or even by applying artificial intelligence.

[0145] Once the delta in the threshold of the threshold condition is raised automatically, according to the above conditional (step 890) the Monte Carlo search resumes with restricted target zone at higher intensity threshold, given the present state of noise. The threshold adaption (machine learning) is an iterative process, until the threshold condition and autocorrelation are both satisfied to provide sufficient signal for optimization.

[0146] Step 940 represents learning (which may be referred to as machine learning). As described above, the calibrated noise array is collected and an evaluation of the effective bit resolution of the input signal is performed. This works by evaluating all differential combinations of the calibration array to determine a minimum differential value of collected signal observations to determine the lowest discretized increment of the signals, which corresponds effectively to the least significant bit. This quantized least significant bit is then used as a base unit for threshold adjustment above the six-sigma (or another) value, in the event of a “signal finding” autocorrelation failure. After that, in step 940, the threshold is adjusted to above the maximum autocorrelation value discretized to quantized least significant bit. On iterated runs, monitoring continues followed possibly by further adjustments to guarantee a robust value that reliably sets threshold automatically.

[0147] In summary, a noise calibration routine is performed with a parallel execution of a signal monitor to establish an automated coupling signal condition that facilitates reliable finding a signal in the search field without requiring a user defined threshold condition.

[0148] Some exemplary experimental results

[0149] For a single-sided first light finding, 25000 simulations of alignment of sender to receiver were run with incrementally reduced target sizes using a fixed search zone. The observations are sorted into columns 1-10 of the following table.

[0150] “W@HM” denotes FWHM (Full Width at Half Maximum) dimension of the Gaussian profile (target diameter). As can be seen, the smallest observed simulated zone in this test was 3 pm (at which point the test alignment requires 1 second for all observations; p is shown in the table as “u”). “MOV” denotes the number of moves (99% of observations and all observations, not the average as discussed above for Fig. 6). “Time [s]” denotes the time for first light finding (99% of observations and all observations) in units of seconds, and “Fails” denotes the number of failures of the 25,000 samples (where first light was not found). The 25,000 samples were obtained for the same light beam profile.

[0151] The following table illustrates results for 10,000 samples (simulations) for parallel first light finding, i.e. for the two independent searches. In general, the search of the present disclosure may be substantially faster than the usual raster scan. In particular, the conventional scan methodology requires a controlled, coordinated turnaround to complete and continue a well-behaved sinusoidal type raster with sufficient error characteristics at precision requirements to achieve repeatable motion (at very fine pitch) at precision level within target zone dimensions along these paths. In particular, Fig. 5 line scans 550, 570 having intermediate curling paths (580, 580) that connect them and for which they must behave on tight radii of curvature. They are not simple A to B motions, but rather line scans with curled connections in the sinusoidal path (curvilinear trajectories) The scanning may be performed only in linear portions, but still, the curved movement may be more time consuming.

[0152] Moreover, in microns level, errors and instabilities may occur in following such complicated motions. In the present disclosure, this is improved by providing a vectorized (linear) motion from A to B. Here there is no pathing following or deleterious effects of straying from the path (since no consistent pitched scans for achieving the desired resolution are necessary) or trying to round very tight corners with very small radii of curvature, repetitively. The achievable scan frequencies are a function of the system characteristics and moving mass. However, especially in the domain of photonics applications with light loads, movements may be performed more quickly.

[0153] Implementations in software and hardware

[0154] The present disclosure provides an approach for searching alignment and an approach for setting a threshold for a search alignment. It is noted that the approach for searching alignment still achieves improvement even if a fixed or user-set threshold is applied. However, it may be also combined with the approach for setting a threshold described herein. Moreover, the approach for setting a threshold may also work for searched different from the approach for searching alignment described herein.

[0155] In other words, the pseudo random search using vectorized linear moves across the search zone with high internodal sampling may be used independently of the threshold setting, although efficacy may be further improved by combining these approaches.

[0156] In Fig. 1 , an exemplary system has been shown. The system that performs stochastic motion sequences through interpolated paths across a signal finding search zone involving two or more axes of motion with signal monitoring until a signal threshold condition is met. In the system, the motion may be at least in part based on a Monte Carlo technique with Random Number Generator (RNG) providing input to an interpolated pathing algorithm commanding the motion. The value generation is performed either a priori in a preloaded array or actively during the Monte Carlo Signal search. The threshold condition may be determined automatically from a noise evaluation algorithm that runs prior to or in parallel with the Monte Carlo signal search. A signal evaluation algorithm may run in parallel at sampling frequency equal to or higher than the internodal pathing frequency generated from the Monte Carlo method until threshold condition is met and the Monte Carlo search is terminated.

[0157] These features may be implemented in various kinds of hardware. According to an example, an apparatus is provided for aligning an optical input with an optical output. Such apparatus may be similar to the system 100 shown in Fig. 1. The apparatus 100 comprises a movable equipment 160 adapted to move an optical output 120 and an optical input 170 relatively to each other.

[0158] The apparatus 100 further comprises a first processing circuitry (part of the aligning module 150) configured to perform a first search for obtaining a first alignment of the optical input 170 and the optical output 120 for which a light beam emitted from the optical output is detected at the optical input. In particular, functional modules of the first processing circuitry (included in the aligning module 150) are illustrated in Fig. 10.

[0159] A random generator 1010 is configured to determine an alignment of the optical input and the optical output as a random value, from a predetermined search range. A movement control 1020 is configured to control the movable equipment 160 to move the optical input 170 and / or the optical output 120 such that the optical input and the optical output are in the determined alignment. A measurement control 1030 is configured to obtain one or more measurement values of the signal strength at the optical input on the trajectory to the alignment. An evaluation module 1040 is configured to evaluate whether a predefined condition is satisfied, the condition including a measurement value of a signal strength at the optical input satisfying a threshold condition. These modules are called repeatedly until the evaluation results in the condition being satisfied.

[0160] The apparatus 100 may further comprise a second processing circuitry configured to perform a second search for obtaining a second alignment of the optical input and the optical output for which the signal strength is larger than the signal strength at the first alignment. The second processing circuitry may be a part of the aligning module 150 or may be a separate processing circuitry.

[0161] Moreover, an apparatus 190 is provided for setting a threshold condition. The threshold serves for determining whether or not an aligning an optical input with an optical output performed in aligning module 150 (and generally in system 100) was successful. In other words, the threshold may be used to terminate a search for the aligning of the optical input 170 with the optical output 120 (or 130). Fig. 11 shows exemplary functional modules of the control module 190. These functional modules are configured to perform the steps described above with reference to Figs. 8 and 9.

[0162] In particular, a calibration measurement control 1110 is a module that is configured for obtaining one or more measurement values of the signal strength at the optical input on the trajectory along which a signal is sampled (scanned). A statistics determination module 1120 is configured to perform the statistics determination 920, i.e. determining a statistical characteristics of said one or more measurement values of the signal strength. This corresponds to step 920 of Fig. 9.

[0163] A fail condition evaluation module 1130 may be present (but it is not necessary in general) and configured for evaluating the autocorrelation as described above (step 860).

[0164] A threshold control module 1140 is configured to determine or update the threshold condition based on the statistical characteristics. This corresponds to the learning step and learning 940 or 890. The first and second circuitries and modules mentioned above may be implemented by any available or application specific hardware.

[0165] It is noted that although embodiments and examples of the present disclosure were provided in terms of a method above, the corresponding devices providing the functionality described by the methods are also provided. Moreover, it is noted that any of the steps described above may be included as code instructions in a program, which may be executed by one or more processors (processing circuitry).

[0166] The methodologies described herein may be implemented by various means depending upon the application. For example, these methodologies (especially the alignment controller 150 and / or the controller 190) may be implemented in hardware, operation system, firmware, software, or any combination of two or all of them. For a hardware implementation, any processing circuitry may be used, which may include one or more processors. For example, the hardware may include one or more of application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, any electronic devices, or other electronic circuitry units or elements designed to perform the functions described above.

[0167] If implemented as program code, the functions performed by the transmitting apparatus (device) may be stored as one or more instructions or code on a non-transitory computer readable storage medium. The computer-readable media includes physical computer storage media, which may be any available medium that can be accessed by the computer, or, in general by the processing circuitry. Such computer-readable media may comprise RAM, ROM, EEPROM, optical disk storage, magnetic disk storage, semiconductor storage, or other storage devices. Some particular and non-limiting examples include compact disc (CD), CD-ROM, laser disc, optical disc, digital versatile disc (DVD), Blu-ray (BD) disc or the like. Combinations of different storage media are also possible - in other words, distributed and heterogeneous storage may be employed.

[0168] The above examples are not to limit the present disclosure. There are many modifications and configurations, which may be used in addition or alternatively. The embodiments and exemplary implementations mentioned above show some non-limiting examples. It is understood that various modifications may be made without departing from the claimed subject matter. For example, modifications may be made to adapt the examples to new systems and scenarios without departing from the central concept described herein.

[0169] Virtual Vector Gains Scheduling for Directional Pumped Oscillatory Motion to Enhance Photonics Signal Search Above, we presented a method for automated photonics alignment using a random search. More specifically, the above-presented method may use calibrated streaking vectors fed by RNGs / PRNGs with parallel-threaded, high frequency monitor working in combination with embedded calibrated target optimization based on machine learning evaluation of signal characteristics that establish an optimal digital signal threshold criterion. This machine learned criterion maximizes target signal zone to allow the highly dynamic streaking vectors to work in parallel with high frequency signal monitoring to rapidly locate and lock on to a signal.

[0170] Alternatively or additionally to using a random search (i.e. alternatively or additionally to determining, in step 210, the alignment of the optical input 170 and the optical output 120 as a random value rather than e.g. determining the alignment in step 210 according to some predetermined pattern (like in Fig. 5) or some rule), in the following, methods (and corresponding apparatuses / programs) for automated photonics alignment using oscillatory motion are presented. Furthermore, usage of this oscillatory motion, further described below, is not limited to photonics alignment but applies generally to automated searches or automated series of measurements, in particular where:

[0171] • The position of each measurement (herein also referred to as “measurement points") is controlled by a positioning system that is controlled by a servo system. In other words, a servo controlled positioning system is used to control / change the measurement points. That is each measurement is performed at a (measurement) point / position that is determined by the position of the positioning system at a time of the measurement. Here the measurement point may also be a relative alignment / positioning as for the photonics alignment.

[0172] • Each measurement covers a certain area or volume (herein also referred to as “measurement areas" and “measurement volumes", respectively) around the measurement point of the respective measurement.

[0173] As further explained below, the induced oscillatory motion then allows to increase the effective search zone by decreasing the overlap of different measurement areas / measurement volumes. This algorithmic enhancements thus improves the efficacy by improving the cumulative efficiency metric with minimal computational cost. It is a computationally efficient technique for improved search efficacy unconstrained by conventional resource limitations of modern embedded control systems or positioning equipment / systems.

[0174] A graphical example of the effective search zones of streaking vectors with parallel-threaded high frequency sampling nodes using machine learned max target zone from embedded adaptive evaluation of intrinsic signal noise characteristics at time of scan has already been described with reference to Fig. 6. The total effective search zone Zesof a search comprising P moves can be approximated by the following relation (in the 2D, exemplary case):

[0175] • Zesrepresents the total effective search zone. In other words, Zesrepresents the entire area covered by the search.

[0176] • a” represents the theoretical effective local search zone (herein also referred to as “search zones / areas” , “measurement areas’Tmeasurement volumes" and the like) at the n-th sample node of the p-th (vector) move. In other words, a” represents the measurement area / volume of the n-th measurement point of the p-th move. As described above, a” may be a function of the target zone determined by machine learning optimization evaluating signal characteristics at the time of scan. This (area or volume, depending on the dimensionality of the search) effectively determines the theoretical local area / volume searched at node n neglecting inefficiencies. It is possible that a” is (essentially) constant (across all vectors and nodes), in which case the indices of a” could be omitted (a” = a).

[0177] • P represents the total number of moves of the search. For instance, P may be the total number of vector moves to successfully terminate search, p is an index representing the individual moves / vectors. So, for instance, each cycle of the Random Number Generator (or Pseudo-Random Generator) applies a terminus point that defines the streak vector (from previous cycle, or search start location coordinates). This streak vector can be defined by an arbitrary index variable. In this case, p has been assigned as that arbitrary vector index.

[0178] • TSrepresents the parallel threaded internodal sampling period. In other words, TSis the time required for one measurement (the measurement at one measurement point).

[0179] • tprepresents the p-th vector move time. In other words, tpis the time the positioning machine requires to perform the p-th move.

[0180] • ” is a coefficient of inefficiency at node n of the p-th vector. In general, the inefficiency may be essentially E„ is a coefficient of inefficiency at node n. It is possible that E” is (essentially) constant (across all vectors and nodes), in which case the indices of E” could be omitted (E” = E). • Np= tp / rsrepresents the number of nodes of the (p-th vector executed) move. In other words, Npis the number of measurements performed which performing the p-th move.

[0181] So, assuming the case of P vector moves, on the first vector move, we have the 1st (p = 1) vector. The RNG would generate the next terminus that defines the next vector (or p = 2) and so on until completion of search (and signal locating), basically until p = P. Inside each streak vector, the parallel threaded monitor (is sampling the nodes (or measurement points) on that vector.

[0182] These sampled points can also be described by an arbitrary index variable. In this case, the index is n. Using case above, the 1st vector runs on the search (p = 1) and samples e.g. 50 points along the vector or (n = 1, n = 2...to n = N±= 50). Each of these nodes has an impacted search zone a". The total search area accumulates with the addition of more nodes (as the p = 1 vector progresses towards n = 50) and neglecting inefficiencies would be a linear superposition of values of the individual nodes. When the p = 1 vector is complete, the next vector (p = 2) is executed (fed by the RNG coordinates) and the nodes are sampled again on that vector (n = 1, n = 2, and so on up the (last) / V2-th node of the second move). Each having an impacted search zone that accumulates (and is additive to the p = 1 vector nodes).

[0183] For instance, assuming that the target zones A’„ has a high order of radial symmetry, as is the case in Gaussian or flat top beam characteristics commonly observed in photonics signal search tests and assembly, the target zones can be approximated by a circular cross section region. Therefore, at each node the local neighborhood that is sampled can be represented in polar coordinates (using an exemplary 2D case) with a radial distance R equal to twice the target zone radius a (in other words, the radial distance R may be two times the Mode Field Diameter as described above with reference to Fig. 4) such that (R = 2a) and nodal search zone be represented in terms of target zone area A’„ one size and 2a is the target zone diameter.

[0184] In order to improve the effectivity of the search, one may try to optimize the average Zesper unit time, per signal search. Regarding this, it is noted that it may be easier to recognize the dependencies of the total effective search zone Zeson some of the involved parameters if a particular move is considered the theoretical effective local search zone areas a” and inefficiencies are assumed to be constant across different nodes of a move and different moves a” = a, and ” = . The total effective search zone Zescan then be written as: p

[0185] Zes = n- (l - lS) _l TsP=1

[0186] In examining the functional dependencies of the variables on Zes, we observe the following relationships and their physical influences:

[0187] • As explained above, an(or in the general case the search zone areas a”) may be optimized by the machine learning digital threshold target zone and is a function of signal mode field diameter (and opto-electrical noise characteristics of hardware / signals used). It has a linear dependence in Zes(and quadratic dependence in target zone radii).

[0188] • In general, the total effective search zone Zesis proportional to the total time T = p=i tpused for the search.

[0189] • The sampling period TSis usually a function of the hardware resource available on the embedded control system and the computational efficiency of the programmatic execution in the embedded algorithmic implementation. TSis typically kHz in modern embedded control systems. Current algorithmic implementation typically run at max cycle time (hardware limited in current implementation). It is inversely proportional in Zesand with higher sampling frequencies can theoretically increase efficacy. Correspondingly, Zesis proportional to the total number of nodes / measurements Ntotal= ,p=1Np= p=i tp / ts = T / TS-

[0190] • The inefficiency (or in the general case the inefficiencies ”) of the search at node n has a negative linear dependence and represents inefficiency in the system that produces overlapped search zones at node n (primarily influenced from adjacent nodes, i.e. directly successive / consecutive nodes / measurements meaning that the node / measurement n usually primarily overlaps with nodes / measurements n - 1 and n + 1) and to a lesser extent non-adjacent search field nodes (usually from other p vectors / moves than the vector / move of the current node n).

[0191] Regarding the 3D-case, it is noted that a characteristic is that the moves are 3D-vectorized (or generally 3-DOF) moves (instead of 2D vectorized moves). The parallel threaded sampling is responsible for the measurement points in space (as the vector streaks through 3-space (nodes are sampled) and instead of ordered triple (X, Y, Signal), the measurements are ordered quadruples (X, Y, Z, Signal). It's the binary signal condition (from the machine learning calibration) that determines if the Signal is found at (in this case) the X, Y, Z Coordinates. The 3D-case thus involves motion on three (or more) axes. In the exemplary 2D case, we search a plane (with two axes in motion (XY as one intuitive example) and each measurement node is to locate a signal in the plane). The technique expanded to 3D involves three axes moving to search a volume and the search paths are 3D vectors (sampled on nodes), instead of 2D. An intuitive case of this would be searching a cubic room (Let's say for a balloon floating somewhere in the room) and using a drone to dart around the room (performing XYZ vector moves in the bounds of the room). This is effectively what we're doing looking for a signal in 3-Space instead of planar spaces. This technique can be applied to search volumes that are not strict translation (but could be synchronized angular and linear moves) and performed in 3-Degrees of Freedom (or more).

[0192] In general, on an arbitrary streak vector in the search field (p), we have a series of intra-vector nodes (from parallel threaded high frequency signal sampling). If we consider of an arbitrary intra- vector local node (n) we have adjacent nodes, n-1 and n+1 with corresponding search areas an+1and an-1. These overlapped effective local search areas introduce parasitic inefficiency in the method, that in this case, described by ”(for each node) for node n.

[0193] This is illustrated in Fig. 13, which is a graphical representation of redundant search zones stemming from parallel-threaded high frequency oversampling of RNG streak vectors. As can be conceptually seen in Fig. 13 using a 2D exemplary case, the localized effective search zone 1320 around node n is overlapped with the localized effective search zone 1310 and 1330 around node n-1 and n+1, respectively. Neglecting additional inefficiencies (related to non-adjacent node redundancies) from arbitrary overlap (on non p-vectors), the oversampling / inefficiency is caused by the redundant search zones Rn-1and Rn+1from the adjacent nodes. This metric provides a localized inefficiency coefficient that can be quantitatively described by: instead of ” is used as we may for the sake of simplicity consider just one move when neglecting non-adjacent node overlap, and Rt is the overlap of the search zones of the i-th and the j-th node / measurement.

[0194] As mentioned above, the first optimization technique already embedded in the algorithm is a machine learning signal characterization performed at the time of scan to provide a digital signal threshold level that optimizes the target zone (which has square dependency in target zone radii using the 2D exemplary case) and is otherwise an important enhancement of search efficacy across all sampled nodes. We investigated optimization techniques that could be applied to minimize adjacent local node parasitic oversampling zones in the 2D exemplary case as described above. In a perfectly efficient case (neglecting inter-vector oversampled nodes), we would have a equal to 0 (where otherwise, parasitic overlap is reduced to zero from adjacent search nodes). This exemplary 2D case is not restrictive and volumetric overlapped zones would be applicable in higher dimensional search supported by the method.

[0195] In developing a novel enhancement to the technique, the variety of cases related to the vectors generated by the move core of the search, as e.g. shown in a 2D exemplary case of photonics signal search in the example in Fig.3 (which is a graphical representation of RNG streak vector nodes with corresponding streak vectors in search field with parallel-threaded internodal sampling), were considered. This novel enhancement is however not restricted to the 2D case but can be applied generally to 3D search across axes of the preferred coordinate system convention.

[0196] For instance, per the above-described method, each streaking vector rpcan have an arbitrary orientation and / or magnitude in the search field, such that a representation can be made by the following vector equation (e.g. in a rectangular coordinate system) for the p-th generated streaking vector generated by the method move core: p p i T Ypj, where i and j are unit vectors (||i|| = ||j|| = 1) which may be mutually orthogonal (i.e. i ■ j = 0), and Xpand Ypare real numbers describing the vector rpin the coordinate system given by i and J. To enhance search zone efficiency, for the case of an arbitrary vector rp, an alternating localized forced vector oscillation may be imposed, such that: rp■ (-l)na = 0 where apis the p-th displacement of the n-th node due to the oscillation of the position of the positioning system around the vector move. The n is the index for measurement nodes on the p- th vector. The relation describes the pumped oscillation with alternating directions orthogonal to the p-th vector rp.

[0197] It is noted that the term “vector move” refers to a move that has a trajectory that is a straight line from the initial point to the endpoint of said move). The streaking vectors rpis a vector from the initial point of the p-th move to the endpoint of the p-th move (where each point corresponds to relative alignments in the photonic search). In general, the position path given by (i.e. the trajectory of) the time-dependent position setpoint may thus be a straight vector path and / or correspond to a linear movement from the initial point of the p-th move to the endpoint of the p-th move. Here with embedded learning algorithm the magnitude||ap || of the oscillation may be optimized to minimize parasitic overlapped search zones, based on an embedded automated calibration to optimize target zone. In other words, the orthogonal adaptive vector pumped localized oscillatory displacements a” are intended to shift and minimize the zonal overlap between adjacent measurement areas fn~1,n— 22+iZ) This is graphically represented in Fig. 14 for an arbitrary (e.g.

[0198] 2an

[0199] RNG) streak vector rpwith parallel threaded sampled nodes of the vector (n-1 , n, n+1 , ,...) with orthogonal pumped oscillatory vectors ap. In general, the size of the displacements may be identical = a. The amplitude of oscillation a may be "tuned" by machine learning.

[0200] The vector directions and / or sizes apand sampling nodes can be determined at the time of streak vector generation and used as a series of node based orthogonal displacement vectors (and embedded RNG / PRNG generated streak vector paths).

[0201] With sufficient embedded computational resource, profiler sampling frequency and servo bandwidth, this method can be effectively implemented. It is noted that this orthogonal nodal pumped vector pathing is not constrained to the 2D exemplary case but can be applied generally to a three-dimensional case (or higher-order to effectively sample higher-dimensional spaces. Furthermore, the approach of virtual vector gain-based scheduling, presented herein, has low computational overhead applied to the RNG streak vectors, operating real time on an embedded control system. As with limited resources on modern embedded control systems, there may be inherent limitations to performance that may otherwise, in some cases, limit the implementations of such oscillation. More details thereon are present below. In such cases, where computational limitations of the embedded control system may limit pump vector planned pathing, the method of forced oscillatory motion through adaptive virtual vector feedforward gains and jerk scheduling may be suitable for embedded control systems doing active photonics signal search and optimization with limited embedded resources available.

[0202] Examining Closed-Loop Control of Servo Systems for Virtual Vector Oscillation

[0203] The method as proposed has roots in control theory and can be applied generally to (positioning) systems operated under servo control (i.e. can be applied to positioning systems under control of a servo system). Servo controlled systems generally have characteristics that include a defined setpoint and sensor feedback to allow minimization of error relative to setpoint. This type of sensor feedback operation is generally described as “closed loop" control and the methods as presented herein can be applied to servo systems independent of actuation method or drive technology to achieve desired process using closed loop control. Thus, in general, a servo system may be used for controlling the positioning system, i.e. the alignment module (physically) implementing / performing the movement steps 220 that bring the optical input and output in the determined alignment. In other words, in step 220, the optical input and / or the optical output are moved such that the optical input and the optical output are in the determined alignment using a positioning system. More generally, in the case of other measurement / scanning tasks, the positioning system is used to change the measurement point of the individual measurements.

[0204] In particular, the servo system may be configured to control the positioning system to perform the moves (e.g. each move). For instance, in case of photonics alignment, the moving (in the step 220) of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment corresponds to a move of the positioning system. In general, the servo system controls the positioning system by generating time-dependent control output u(t) for the positioning system (an outputting and / or providing the control output u(t) to the positioning system). The servo system generates the control output u(t) based on a time-dependent position setpoint s(t) (also referred herein as setpoint position s(t)) that corresponds to the move. More specifically, while performing the move, the servo system controls the position of the positioning system by continuously adjusting (while the positioning system performs the move), the position of the positioning system by generating the control output u(t) based on the position setpoint s(t) and the position process value f (t).

[0205] For this scenario, as illustrated in Fig. 15, a method of using the servo system for controlling the positioning system to perform a move is provided (e.g., the / each move performed in Step 220). In other words, the method is a method of using a closed-loop servo control of a positioning system with inherent position feedback. As mentioned, the move is performed in order to perform, while performing the move, measurements. The method comprises the steps of:

[0206] • determining 1510 an oscillatory motion around a position path given by the timedependent position setpoint. This determining step 1510 of the oscillatory motion may comprise e.g. determining an oscillation amplitude and / or a direction of the oscillatory motion;

[0207] • determining 1520 one or more values for one or more of the proportionality coefficients KP, Ki and KD of the servo system, respectively. It is noted that the values are determined in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move (as further explained below, where the values determined in this step 1520 are the gain values Kpxand Kpy,

[0208] • adjusting 1530 the one or more proportionality coefficients KP, KI and KD (herein also referred to as gains) with the one or more values (e.g. the proportionality coefficients for which a value has been determined in step 1520 may be set to the respective value determined for said proportionality coefficient), respectively; and

[0209] • performing 1540 the measurements while performing the move using the time-dependent control output generated by the servo system, wherein the servo system uses the one or more adjusted proportionality coefficients KP, KI and KD.

[0210] In particular (but not limited thereto), the method may be used for aligning an optical input with an optical output using Random Number Generated (RNG) streaking linear vectors (herein also referred to as “streak vectors") in a bounded region, as described above. As further described below, the method may use pumped oscillatory motion about points on the streak vector orthogonal (or at least approximately orthogonal) to the streak vector. The orthogonal vectors may be generated about arbitrary points on the streak vector path and used for path planning of the streak vector to introduce an oscillatory motion normal to the streak vector.

[0211] In correspondence to the above method, an apparatus for performing measurements using a positioning system (controlled by a servo system is provided). The apparatus comprises:

[0212] • a measurement device adapted to perform the measurements;

[0213] • the positioning system;

[0214] • the servo system (corresponding to e.g. movement control 1020) configured to control the positioning system; and

[0215] • one or more processing circuitries (or computer / computing units, or the like).

[0216] A processing circuitry (e.g. measurement control1030) is configured to control the measurement device to perform the measurements while the servo system controls the positioning system to perform a move (the following may apply to each move of the J moves in Fig. 2).

[0217] A movement planning circuitry configured to:

[0218] • determine an oscillatory motion around a position path given by the time-dependent position setpoint. This determination of the oscillatory motion may comprise e.g. determining an oscillation amplitude and / or and a direction of the oscillatory motion;

[0219] • determine one or more values for one or more of the proportionality coefficients KP, KI and KD of the servo system, respectively. It is noted that the values are determined in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move (as further explained below); and

[0220] • adjust (before the servo system controls the positioning system to perform the move) the one or more proportionality coefficients KP, KI and KD with the one or more values, respectively. The movement planning circuitry may be configured to determine the time-dependent position setpoint functions s(t) that corresponds to the respective move. In particular, this processing circuitry may control the positioning system to perform the move (each move) using the servo system by providing, to the servo system, the position setpoint s(t) corresponding to the move, Alternatively, the streak vector or the next alignment / position of the positing system may be provided to the positioning system. The movement planning circuitry essentially determines the path / move and the servo system executes the move based on the instructions from the movement planning circuitry. The movement planning circuitry thus control the positioning system indirectly using the servo system.

[0221] In general, each of the described tasks may be performed by a dedicated circuitry or any combination of tasks may be performed by the same circuitry.

[0222] In particular, an apparatus for aligning an optical input with an optical output is provided. The apparatus comprises: (i) movable equipment (i.e. a positioning system) adapted to move an optical output and an optical input relatively to each other; (ii) a first processing circuitry configured to perform a first search for obtaining a first alignment of the optical input and the optical output for which a light beam emitted from the optical output is detected at the optical input, wherein the searching of the alignment includes performing the following steps repeatedly until a predefined condition is satisfied, the condition including a measurement value of a signal strength at the optical input satisfying a minimum threshold condition: (iii) determining an alignment of the optical input and the optical output using random number generator; (iv) directing, to the positioning system, a scaled vector (or linear move to the determined alignment) with, in particular normal, oscillatory motion about the scaled vector (or oscillatory motion about linear move to the determined alignment).

[0223] The specifics of implementation of closed loop control can be varied in theory and implementation, however there is a commonality of characteristics that are shared such that the proposed method can be adapted or applied in a number of scenarios with a range of equipment operating under closed loop control. As an exemplary case, we present a simple Proportional-lntegral-Derivative (PID) control loop and the function of the PID loop in this scenario and expand to measurements using a cascaded Proportional position loop Integral and proportional Velocity control loop

[0224] PID closed-loop control of positioning systems typically uses actuator integrated sensors to provide position feedback. These sensors have a range of operational principles from interferometric methods to strain based or capacitive measurements and commonly use electromagnetic or piezo-based drive systems. In all such cases, the intention is to provide feedback position information as close as possible to the moving element for precise, repeatable operation.

[0225] As previously mentioned, PID positioning loops require a setpoint position s(t) and feedback position f (t) . The setpoint position can be considered an idealized optimal location for a particular process at a specific time (either for static process or as a part of a temporal evolution of positions on a planned path trajectory). In each case, the PID loop will work with intrinsic and environmental disturbances to optimize actuator performance such that feedback position is best matched to setpoint position during operation. In general, any difference in the feedback and setpoint positions can be described as position error e(t) (or commonly in the case of planned trajectory pathing, “following error”) and is generally considered an undesirable result.

[0226] Thus, the control output u(t) is generally generated with the intention to reduce the position error e(t) in the future. For this reason, in general, the time-dependent control output u(t) at time t is determined, in a closed control loop, based on the error e(t), where the position error e(t) is the difference between:

[0227] • a value of the time-dependent position setpoint s(t) at the time t (i.e. the setpoint position), and

[0228] • a value of a position process value f (t) at the time t (i.e. the feedback position, which is usually the “actual” position obtained by measurement).

[0229] Actuators operating under simple PID closed-loop control generally are tuned according to a parameter set based on in-situ actuator operating environments. These parameters are effectively, weighted coefficients designed to provide control output for correction on observed error function (generated by actuator integrated sensor reference against commanded setpoint referenced against sensor).

[0230] The use of P, I, and D goes to the nature of these coefficients and their use in the output function (to correct on the position error function e(t)). Here the KPis proportional to the error correction e(t), which is a linear coefficient correction applied directly to the error function. The K, is the coefficient of the integrated error function e(t) or accumulated error (over some integration time (f)), and KDis the coefficient of the derivative of the error function e(t). Generally, this output function u(t) for correction can be described by u(t) according to the following formula where e(t) = s(t) - f (t) is the error function. Thus, in general, the control output u(t) includes (also referred to as the control function of the servo or PID controller): • a term proportional, with proportionality coefficient KP, to the difference / error e(t),

[0231] • a term proportional, with proportionality coefficient Khto an integral of the difference / error e(t), and / or

[0232] • a term proportional, with proportionality coefficient KD, to a derivative of the difference / error e(t), and / or

[0233] • in general (as further explained below) a term proportional, with proportionality coefficient Kn, to the n-th derivative of the difference / error e(t), where n may be any natural number greater than 2 (the n=0 and n=1 already being case being covered by the KPand KDterm, respectively).

[0234] While a PID controller has all three control terms, the represent invention may be implemented using any one or any combination of these control terms (and is thus not limited to PID controllers). Furthermore, it is noted that the control output u(t) may in general include a combination of P, I and D term(s), which may be applied to cascaded control scheme(s) with multiple loop coefficients. In particular, one may use multiple proportional, integral and / or derivative terms It is further noted that KP, and KDare also referred to as gains. More specifically, KPis referred to as the proportional gain, KDis referred to as the derivative gain, and K, is referred to as the integral gain.

[0235] The PID-case is merely used as the exemplary servo-based control type. In general, both or one of integral and derivative gain could be used to affect oscillation characteristics (along or without the proportional term. There are additionally cascaded control loops that have multiple P, I and D terms (and in those cases a combination of those could be applied). These terms also have some specific influence depending on the nature of the vectorized move additionally (and there might be idealized combinations).

[0236] In general, the control output function u(t) may also include or be based (e.g. in a cascaded control loop) on other terms. In particular, there may be terms that are proportional to the difference between:

[0237] • the value of a derivative of the time-dependent position setpoint at the time t, and

[0238] • the value of the derivative of the position process value at the time t.

[0239] The derivate may be the first-order derivative or a / any higher-order derivate. For instance, in case of the second order derivative, the difference between a time-dependent acceleration setpoint and an acceleration process value, determined by measurements, may be taken to obtain e(t). Thus, in general, the control output function u(t) may include e.g. also a term proportional to the acceleration of the difference:

[0240] In general, there may be any term Knd / dt)ne(t) with proportionality coefficient Kn. The gain(s) that is / are used to induce the oscillation (and for which the value(s) are determined in step 1520) may also be term(s) proportional to such higher-order derivate(s). That is a value for (n being any natural number corresponding to the order of the derivate of the term and (not the node index n)) may be determined in step 1520.

[0241] A diagram of the PID correction in the context of closed-loop actuator control for process optimization is illustrated in Fig. 16, which shows a diagram of a simple PID closed-loop control of an actuator deployed performing tasks specific to an arbitrary process.

[0242] Looking more precisely, at the proportional term of the error function in the closed loop PID control, we can see the output function is linearly proportional to the error function e(t), weighted by coefficient KP. This P-term optimization is conventionally tuned for peak positioning performance (i.e., minimal position or process error, evaluated at setpoint or timewise over the progression of discrete setpoints). The P-term can be derived generally from system modeling or with characterization of transfer function (using methods such as sine sweep, white noise or chirp signals) and is generally an actuator specific attribute under the applied use case conditions.

[0243] It is important to note at this point that the proportional term KPe(t) in various methods of closed loop control have similar construction in concept that allows the user direct access to influence the error. Generally, in servo systems, position error has an oscillatory behavior of mixed frequency signature, and the user intention is to minimize that error with optimal gains.

[0244] Fig. 17: Bode plot of the open loop transfer function of an actuator in a multi-axis automated photonics alignment assembly. More specifically, the transfer function is primarily to observe a frequency dependent functional response of the actuator. For example, if an excitation frequency is pumped at a harmonic of the system, the system will demonstrate a resonance. This frequency sweep characterization of the response to frequency can be used for tuning. This applies also to the phase difference from input to output. The open loop analysis is done to understand where oscillations and instabilities will be when feedback is introduced. This may be thought of as an input to a black box and an output from the black box (and the relationship of input to output) to understand how the black box functions.

[0245] Examining Closed-Loop Control of Multi-Axis Photonics Automation Systems and Virtual Vector Pumped Directional Oscillation In many photonics alignment and test applications, a single actuator is not sufficient for full wafer, chip, or device level photonics test. Instead, an assembly or integrated system of actuators is required. In Fig. 18, an exemplary automated multi-axis photonics test and alignment system is illustrated. More specifically, the illustrated photonics alignment assembly is actuator-based. Furthermore, this automation assembly includes a fiber coupled light source for direct coupling to waveguides.

[0246] Generally, servo systems exhibit the below binary behavior when proportional gains are shifted up or down from an optimal use case:

[0247] • When proportional gains are reduced, the servo system exhibits higher oscillatory error with less responsive error correction. Generally, this error is considered detrimental to most processes and optimized accordingly with appropriate stability margins to the best combination of performance and robustness for the intended process with the goal of minimizing position error.

[0248] • When proportional gains are increased, incrementally the servo system exhibits typically lower amplitude oscillatory error motion to an optimization point. As the gain increases forward from that optimization point however stability margins decrease until finally a symmetry breaking behavior and uncontrolled instability ensue (with very high amplitude error).

[0249] In general, an oscillatory like jitter behavior may be observed in the micro view of the error on real servo systems. This oscillatory micro-jitter is similarly a function of proportional gain. The higher the proportional gain the lower the oscillatory error amplitude (to a point). In general, there is a point of instability when a gain goes too high (at which point the oscillation goes out of control and much higher than micro-oscillation errors from minor p-changes). Now going back to the case of oscillatory error in the domain of stable gains, one can raise or lower the gain to induce more or less oscillatory error (by turning gains up or turning them down). When tuned optimally (below instability) the result is a minimal error. Our goal, however, is to produce raised direction oscillation (so we de-tune that gain directionally) and pump oscillation (to desired point based on the use case using machine learning). An important concept to the oscillation idea is that all servo controlled systems oscillate. That oscillatory error is a function of gain (higher gain usually reduces that error) until the system becomes unstable. This oscillatory behavior can be described in our cases as a microscopic behavior (nanometers to microns). We use this directionally to force the desired oscillation (based on the vectors of the move). Provided the general servo system response to proportional gain changes in different closed-loop control schemes as presented, virtual vector-based gains scheduling may be used to pump directional oscillatory information into a system with low computational overhead to increase search rates for parallel-threaded sampled systems performing automated photonics alignment. The concept of virtual vector gains scheduling may be applied to provide directional oscillation orthogonal to RNG streak vectors (or more generally to provide / increase the oscillation around the path given by the time-dependent position setpoint) with optimal amplitudes (and feedforward dynamics form machine learning) effectively shifting adjacent nodes in the search field to improve streak vector efficiency and minimize parasitic search overlap, as illustrated in Fig. 13.

[0250] The virtual gain vectors act as directional position excitations scheduled at the time of RNG / PRNG generation to pump directional, forced oscillation into the servo system approximately orthogonal to vector path to improve spatial sampling efficiency. Here as an optimization technique, one may apply the relationship as shown below (on arbitrary streak vector rp, and virtual amplitude vector rp• Ap= 0, where is essentially a vector parallel (or antiparallel) to the individual displacements at the nodes, i.e. Ap= (-l)”ap. This notation / approach thus moves away from a node-based planning of the oscillation to planning based on the oscillation amplitude and gains mapping as further explained below.

[0251] More specifically, in the exemplary case 2D, we are using a 2D system involving two actuators. Each actuator has a specific gain (i.e. Kxand Ky) that determine the virtual amplitude vector Ap. The vector Apmay be chosen orthogonal to the streak vector rp(to produce the desired directional oscillation, i.e. to increase / maximize the decrease in overlap of local search zones). Each gain is tied specifically to that actuator (based on the characteristics) to produce the desired "wave vector" amplitude Ap(i.e. to produce the desired oscillation amplitude Ap).

[0252] In general, the (desired) oscillatory amplitude may be determined based on:

[0253] • an overlap between the measurement areas of two consecutive measurements of the measurements (e.g. in the 2D-case), or

[0254] • an overlap between the measurement volumes of consecutive measurements of two consecutive measurements of the measurements (e.g. in the 3D-case).

[0255] In particular, the oscillatory / oscillation amplitude may be determined such that the overlap of directly successive measurements is zero. In general, the gains may be adjusted such that the oscillatory motion is orthogonal to the position path given by the time-dependent position setpoint. For instance, the oscillatory motion may be generated normal to the streak vector through vector directed gains scheduling for moveable equipment involved in the motion determined at the time of streak vector determination during scan or prior to scan and executed at time of scan. Such orthogonal oscillation may e.g. allow to decrease the overlap between local search zones with a smaller amplitude.

[0256] In general, the servo gain scheduling is applied on generation of each vector move as a part of the alignment move sequence to produce oscillation normal to the vector direction with desired amplitude characteristics that produce greatest efficacy (or to increase efficacy) in terms of signal acquisition, align time or the like. The amplitude characteristics are a function of mapped gains specific to the combination of actuators performing the moves (and applied to each actuator respectively).

[0257] Determination 1510 of oscillatory motion

[0258] More specifically, the determination 1510 of the oscillatory motion in general comprises the determination of oscillation amplitude and / or a direction of the oscillatory motion. In other words, the optimal (or desired) oscillation amplitudes for each direction / actuator to achieve the fastest align time / signal acquisition may be determined. This determination of the “optimal” / desired amplitudes (e.g. Axand Ayin the exemplary 2D-case) may be based on machine learning.

[0259] As mentioned above, the direction of the oscillation amplitude may be orthogonal to the streak vector (rp• Ap= 0). For the individual oscillation amplitudes^* and Ay, this condition reads: rp- (A* ) = 0

[0260] The optimal A* and Ayare mixed in proportion based on the desired vector direction (and constitute the virtual vectors that direct the oscillation with optimal amplitude). For instance, the oscillation may (chosen to) be normal (or approximately normal) to the streak vector.

[0261] As further explained below, a gains mapping is then performed in step 1520 to obtain the specific gain values at which the desired amplitudes are obtained (i.e. for which A* = Ax(Kpx) and Ay= Ay(Kpy) in the 2D-case). In terms of the gains, the orthogonality condition reads: Gains mapping - step 1520

[0262] In general, the “forced” oscillation is applied / generated using mapping(s) of the servo gains to physical oscillatory motion of the movable equipment / positioning system. That is, the physical manifestation of “virtual vector” gains is a forced oscillatory wave vector (e.g. normal to the RNG streak vector). To understand the impact of amplitude and intrinisc characteristics of the produced oscillatory motion-a machine learning optimization may be applied for the system attributes and signal characteristics. This is then applied to subquent processes without learning required (until the physical setup is changed). In other words, the gain mappings may be obtained from machine learning.

[0263] In general, each actuator (of the positioning system) will oscillate with an amplitude that is a function of the gain (in general of all gains). For instance, if the amplitude A of oscillation considered as a function of the proportional gain Kpand thus be written as A(Kp). Considering it as a function of one or more particular gains essentially means that we are using these one or more particular gains proportional gains to induce the oscillation.

[0264] In general, the function A(Kp) is specific to one actuator (this function will be different for different actuators). These functions are herein also referred to as “mappings”, “maps”, “gain mappings” or the like, and are mappings of one or more of the proportionality coefficients KP, , and KD to physical oscillatory motion of the positioning system.

[0265] For example, the function AXKP) is different than the function Ay^Kp), where Axis e.g. the oscillation amplitude of the x-moving actuator and Ayis the oscillation amplitude of the y-moving actuator. In other words, Axis the oscillation amplitude in the x-direction, and Ayis the oscillation amplitude in the y-direction (x and y directions being e.g. two mutually orthogonal directions describing the position of the positioning system and / or the measurement point). In general, x- and y-direction may not be orthogonal or polar coordinates may be used. For each actuator (or e.g. each direction), one may determine the corresponding function describing the oscillation amplitude for instance by machine learning.

[0266] The desired amplitudes are obtained at specific values (which are here denoted as Kpxand Kpy) of the gains. To be specific: E.g. Ax= Ax(Kpx) and Ay= Ay(Kpy) in the 2D-case. These specific gain values gains values (e.g. Kpxand Kpx) are obtained in step 1520. In order to obtain these gain values, Kpxand Kpy, that produce the desired oscillation respective maps (or mappings) may be used. In general, the one or more (gain) values are thus obtained in step 1520 based on the (desired, determined in step 1510) oscillation amplitude and a mapping of at least one of the proportionality coefficients KP, KI, and KD to physical oscillatory motion of the positioning system.

[0267] This can be generalized in principle to higher dimensional spaces and searches. In higher order search (e.g. in a 3D search or when multiple actuator effect the oscillation in a particular direction) this can include further desired amplitudes, amplitude functions, and gain values that produce the desired amplitudes (e.g. A* , AZ(KZ) and Kpz, respectively, and so forth).

[0268] Fig. 19 shows virtual vector gains scheduled machine learning optimization results (and align time reduction). The ability to control the (wave vector) oscillatory amplitude through virtual vector gains, has been demonstrated in our work to the sub-micron scale. In the exemplary case, with the test system implementation, we find a differential (velocity loop) proportional gain on Axis 1 of 15, produces a corresponding approximate amplitude oscillatory increase of approximately 1 m (Pk-Pk). Further observable in the above results, the application of the virtual vector-based gains Kphas an increasingly dramatic impact on align time efficacy of the algorithm (in this case, using single-mode optical fiber-to-fiber alignment), reducing align time from ~ 4 seconds to ~ 1.5 seconds. These gains are specific to the exemplary system and alternate motion and control systems may have different parameters producing comparable effects. Also the gains have a nonlinear response across the full-range of effect.

[0269] The orthogonal pumped oscillation amplitude requirements for photonics search efficiency improvement in the presented method for first signal finding are typically performed at the microns scale (dealing with signal targets also at the microns scale with optimizations at the sub-micron or nanometer scale). This level directional oscillation amplitude control at sub-microns adapts readily into the scales of photonics search in present photonic test and characterization systems.

[0270] Thus, efficacy improvements are achieved relatively readily (as shown) in precision direct drive motorized servo and piezo systems using virtual vector-based gains scheduling enhancing the photonics alignment with or without randomly generated streak vectors (as well as in other measurement scenarios with similar requirements).

[0271] As can be seen in Fig. 19, the calibration based forced oscillation is optimized to minimize inefficiency (B) based on nonlinear gains mapping to axis contributions of oscillatory error motion (and used in virtual vector scheduling based approximately orthogonal to RNG streak vector) to produce desired oscillatory characteristics that minimize align times. This non-node localized approach has significantly reduced computational requirements occurring only on p-th vector generation and not on sub-nodes (so calculations per cycle reduced by orders of magnitude) for the embedded control system. This method accommodates a fast adaptive machine learning calibration to identify system search signatures and optimize process time accordingly without significant demands on computing resource of embedded control systems.

[0272] As discussed, the gains scheduled virtual vector forced oscillation deviates from the more demanding computational and potentially dynamic restrictive case (of localized node path planning and execution). The practical impact of the virtual vector gains is a wave vector, probability cloud with a blurred nodal region orthogonal to the streak vector path (where sampling nodes can be found-misaligned on vector path). This has shown reduction in probability of inline nodal overlap and corresponding improvement in search efficiency (as shown conceptually in the plot below) and in the results above without impacting vector move time (or dynamics). More specifically, as illustrated in Fig. 20, virtual vector gains produce a probability cloud for the oscillatory wave vector orthogonal to the streak vector path.

[0273] Fig. 21 shows the nodes of an RNG streak vector motion without induced oscillation, where each measurement point has a local effective search zone that is accumulative over the vector. So each node samples a local space about that node, and each node can be considered additive to other nodes in terms of accumulating a total search area. This plays into fundamental probability related to the Monte Carlo concept described above in terms of search and target areas. Fig. 22 shows the nodes of an RNG streak vector with virtual vector pumped oscillation. In Fig. 22, the virtual vector pumped oscillation is oblique angled to the RNG vector path to improve search area efficiency.

[0274] As can be seen in the above examples, the local search node efficiency is improved relative to straight line vector motion (minimizing regions of parasitic search overlap). The relative strength of improvement of the efficiency is a function of the system and alignment application, including signal mode field diameter (or more specifically, machine-learned target zone), servo bandwidth, sampling frequency, dynamics and electro-optical noise and signal characteristics, etc. In most practical cases, we’ve observed oversampling is a common attribute, especially related to signal acquisition frequencies relative to actuator dynamics and associated target zones. In all such test cases, we’ve found efficacy improvements (with varying strengths) but always positive.

[0275] Test and Validation

[0276] A preliminary embedded control system implementation was applied to the photonics alignment using the random search by adding a virtual vector gain scheduling. Comparative testing in an automated system for single mode fiber-to-fiber alignment was performed. As a part of this testing, a machine learning routine to normalize gains to oscillatory amplitude for downstream vector scheduling was embedded (where the specific gains that are calibrated / determined to short the align time (based on wave vector characteristics) are considered a part of the algorithm that characterizes the system) and applied embedded algorithm control code with the embodiment of the enhanced method. The automated photonics alignment test station, using actuator assembly, is shown in Fig. 23.

[0277] The goal of this accelerated test was to compare the efficiency of the signal search using virtual vector gains scheduling with the signal search not using virtual vector gains scheduling with accelerated test over extended operating time. 1 ,000 alignment runs were performed from an arbitrary no signal present start position (and performed search in the designated search field) within a bounded search region of 500 pm x 500 pm with single-mode, optical fiber-to-fiber alignment. As a part of this test program, signal search characteristics in terms of signal lock align time, as well as signal strength at alignment lock were collected.

[0278] An enhancement of the signal search due to using virtual vector gains was observed, shifting the average align time down from 31.4 ms to 28.4 ms. In this test case scenario, the efficacy was improved by approximately 9.5%, while also providing more consistent results with lower standard deviation and variability. We anticipate the strength of this effect can be boosted in alternate scenarios and refinements of the method, with more challenging requirements and impact more dramatic in terms of improvement. In Fig. 24, the corresponding box and whisker plots of the test results in terms of signal search times and distributions are presented.

[0279] Additionally, collected signal intensity on signal lock (signal found state) has been collected. A measure of the efficiency of the method is to test the digital signal threshold condition signal lock state level (and inherent variability) and variation from the machine-learned level. Here we see more consistent results at the machine learn level-implying a more efficient sampling of the space to recognize signal boundary more effectively. In Fig. 25, the corresponding box and whisker plots of the test results in terms of signal lock level are presented.

[0280] Computer Program

[0281] As mentioned above, the present disclosure may be implemented as a computer program (or embedded control code), which may be stored on a non-transitory medium. The computer program comprises code instructions (or sub-programs), which when executed on one or more processors, execute any of the methods described herein. In particular, any of the calculation may be performed by such a program. In particular, such a computer program may perform:

[0282] • the determination of the next alignment in step 210, • the control of the move in step 220 (e.g. by generating corresponding control output for the positioning system and / or by generating a time-dependent setpoint for servo control)

[0283] • control the a measurement device to perform (steps 230 and 1540) the measurements (again by e.g. generating / outputting control output);

[0284] • the determination steps 240 and 250 as well as the second search 290;

[0285] • the determination 1510 of the oscillatory motion; and / or

[0286] • the determination 1520 of the values for the gain(s).

[0287] In general, such a computer program may use multi-threaded processing with:

[0288] • a first dedicated buffer for vector path generation and execution, and

[0289] • a second dedicated buffer for signal monitoring (i.e. for performing the measurements).

[0290] The first and the second dedicated buffer (or program buffer) may run on mutually different threads. In other words, the computer program may use multi-threaded processing with (i) a dedicated buffer for vector path generation and execution and (ii) a dedicated buffer for signal monitor, wherein the first and the second dedicated buffer may run on independent and parallel threads.

[0291] Here “buffers" or “program buffers" refers to specifically dedicated program buffers residing on the control module that are executed in parallel (independently) using shared onboard resource. Each program buffer is executing tasks independent of other (each carrying code instructions based) as a part of the alignment method Critical to this operation is the timewise execution can happen in parallel. When there is a single thread there is no parallel execution, and timewise sequential operations prevent progress relative to a multi-threaded execution.

[0292] In other words, there could be a buffer operating on an embedded control system with real time parallel execution of the code instruction. The program buffer could be running on an embedded control system (with processor, memory and a real time OS) in program buffers that can be stored and executed on that embedded control system. Hardware multi-threading could also be used. More specifically, the program may be stored in a non-volatile memory and executable on control hardware. The control hardware may have program buffers allocated for realtime determinstic execution on the control hardware (the control hardware has a processor, memory attached drive units with DSPs)-the control hardware can be connected and interfaced with a PC. The control module that executes the code / computer program may in effect be a real time OS computer with dedicated buffers for time deterministic real time execution. This buffer level programmatic execution is stored in nonvolatile memory that contains discrete allocated coding blocks to perform the parallel threaded operation (independently) but updated on the same deterministic time cycle. Here vector path generation and execution refer to the generation of the time-dependent position setpoint and the PID control based thereon. In other words, the controller may execute, based on the computer program, the embedded code onboard while also establishing setpoint and using the closed loop servo control (PID, PIV or other). Those can happen in the same thread (as they are tied to the vector that is generated (that does the setpoint position). However, the nodal signal monitoring should usually run in another thread. The constraint on vector gains schedule comes usually with the generation of the vector in sequence and is not multi-threaded as with monitoring or signal evaluation. In other words, such a computer program may use multi-threaded processing with

[0293] • a first dedicated buffer for controlling the moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and

[0294] • a second dedicated buffer for the obtaining of the measurement values and / or for processing of the measurement values , the first and the second dedicated buffer are running on mutually different threads.

[0295] Selected embodiments and examples

[0296] According to a first aspect, a method is provided for aligning an optical input with an optical output. The method comprises the step of performing a first search for obtaining a first alignment of the optical input and the optical output for which a light beam emitted from the optical output is detected at the optical input, wherein the searching of the alignment includes performing the following steps repeatedly until a predefined condition is satisfied, the condition including a measurement value of a signal strength at the optical input satisfying a threshold condition: (i) determining an alignment of the optical input and the optical output as a random value, from a predetermined search range, (ii) moving the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and (iii) obtaining one or more measurement values of the signal strength at the optical input on the trajectory to the alignment. The method further comprises the step of performing a second search for obtaining a second alignment of the optical input and the optical output for which the signal strength is larger than the signal strength at the first alignment.

[0297] In general, the first search may be performed in one or more dimensions, and the alignment may defined by one or more coordinates of the one or more dimensions, respectively. In particular, the method according to the first aspect can be applied to one dimension, 2D or higher dimensions. According to a second aspect, provided in addition to the first aspect, the first search is performed in two dimensions, and the alignment is defined by two coordinates of the respective two dimensions. It is noted that the two dimensions may be, but do not need to be perpendicular to the light beam.

[0298] In general, (i) just the optical input can be moved, (ii) just the optical output can be moved, or ii) the optical input and the optical output can be moved. In particular, the moving step may be performed (i) by moving the optical input relative to a fixed optical output, (ii) by moving the optical output relative to the fixed optical input, or (iii) by moving the optical output and the optical input (relative to each other). For instance, according to a third aspect, in addition to the first aspect or the second aspect, the moving step is performed by moving the optical input relative to a fixed optical output.

[0299] According to a fourth aspect, in addition to the first aspect or the second aspect, the moving step is performed by moving the optical input and by moving the optical output, both movements being independent of each other.

[0300] According to a fifth aspect, in addition to any of the first aspect to fourth aspect, the step of obtaining one or more measurement values of the signal strength comprises sampling of the signal strength during said moving step with a predefined sampling frequency.

[0301] According to a sixth aspect, in addition to any of the first aspect to fifth aspect, the method includes the steps of: (a) determining a statistical characteristics of said measurement values of the signal strength; and (b) determining or updating the threshold condition based on the characteristics. Regarding this it is noted that, in general, the determination may be made at the machine level with embedded code instructions. It may not be pre-determined or analyzed independently.

[0302] According to a seventh aspect, in addition to the sixth aspect, the determining or updating the threshold is performed during performing the first search.

[0303] According to an eighth aspect, in addition to the sixth aspect or the seventh aspect, the determining a statistical characteristics includes determining a variance indication and the threshold condition is based on a function of the variance indication.

[0304] According to a ninth aspect, in addition to any of the first aspect to the eighth aspect, when the threshold condition is satisfied, the method further comprises: (1) determining whether the measured values satisfy an auto-correlation condition; (2) resuming the first search if the autocorrelation condition is not satisfied.

[0305] According to a tenth aspect, in addition to the ninth aspect, the method includes adapting, if the autocorrelation condition is not satisfied, the threshold condition. According to an eleventh aspect, in addition to any of the first aspect to the tenth aspect, the method further comprises a calibration step performed before the first search, the calibration step including: measuring noise strength values in absence of the light beam; determining a statistics of the noise strength; and based on the statistics of the noise strength, determining resolution of the measurement values. Alternatively or in addition to the determining of the resolution of the measurement values, the measurement resolution at the time of execution of the method may be determined (which may e.g. be done on the control system at the time of execution) and characterizes the measurement resolution of the system.

[0306] According to a twelfth aspect, in addition to any of the first aspect to the eleventh aspect, the second search is based on the gradient of the signal strength. In general, other optimization techniques than gradient may be applied as optical characteristics may not have a gradient to optimize on while the method is still applicable. In other words, in general, the second search may be describe as an optimization technique (centroid, gradient, etc..) that optimizes / improves the result of the first search.

[0307] In general, said moving of the optical input and / or the optical output to the determined alignment may be performed along a vector path. For instance, according to a thirteenth aspect, in addition to any of the first aspect to the twelfth aspect, said moving of the optical input and / or the optical output to the determined alignment is a linear movement. In other words, the position path given by the time-dependent position setpoint may be a straight vector path and / or the time-dependent position setpoint may corresponds to a linear movement.

[0308] According to a fourteenth aspect, in addition to any of the first aspect to the thirteenth aspect, the optical input and / or the optical output are moved such that the optical input and the optical output are in the determined alignment using a positioning system. The moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment corresponds to a move of the positioning system. A servo system is used for controlling the positioning system to perform the move, and each of the measurement values is obtained by performing a respective measurement. Each of the measurements: (i) is performed at a measurement point that is determined by the position of the positioning system at a time of the measurement, and (ii) covers a respective measurement area or respective measurement volume around the measurement point at which the measurement is performed. While performing the move, the servo system controls the position of the positioning system by continuously adjusting, based on a time-dependent position setpoint that corresponds to the move, the position of the positioning system by generating time-dependent control output for the positioning system, wherein the time-dependent control output at time t is determined, in a closed control loop, based on a difference. The difference is: (i) a difference between: (a) a value of the time-dependent position setpoint at the time t, and (b) a value of a position process value at the time t, or (ii) a difference between: (a) a value of a derivative of the time-dependent position setpoint at the time t, and (b) a value of the derivative of the position process value at the time t. The control output includes: (i) a term proportional, with proportionality coefficient KP, to the difference, (ii) a term proportional, with proportionality coefficient Ki, to an integral of the difference, and / or (iii) a term proportional, with proportionality coefficient KD, to a derivative (it is noted that this derivative may be the first-order derivative or a higher-order derivative of any order) of the difference. The method according to a fourteenth aspect comprises: (i) determining an oscillatory motion around a position path given by the time-dependent position setpoint, the determining of the oscillatory motion comprising determining an oscillation amplitude and a direction of the oscillatory motion; (ii) determining one or more values for one or more of the proportionality coefficients KP, KI and KD, respectively, in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move; (iii) adjusting the one or more proportionality coefficients KP, KI and KD with the one or more values, respectively; and (iv) performing the measurements while performing the move using the time-dependent control output generated by the servo system using the one or more adjusted proportionality coefficients KP, KI and KD.

[0309] According to a fifteenth aspect, in addition to the fourteenth aspect, the oscillatory amplitude is determined based on: (i) an overlap between the measurement areas of two consecutive measurements of the measurements, or (ii) an overlap between the measurement volumes of consecutive measurements of two consecutive measurements of the measurements.

[0310] According to a sixteenth aspect, in addition to any of the fourteenth aspect to the fifteenth aspect, the position path given by the time-dependent position setpoint is a straight vector path.

[0311] According to a seventeenth aspect, in addition to any of the fourteenth aspect to the sixteenth aspect, the oscillatory motion is orthogonal to the position path given by the time-dependent position setpoint.

[0312] According to a eighteenth aspect, in addition to any of the fourteenth aspect to the seventeenth aspect, the one or more values are obtained based on the oscillation amplitude and a mapping of at least one of the proportionality coefficients KP, KI and KD to physical oscillatory motion of the positioning system.

[0313] According to a nineteenth aspect, a computer program is provided, stored on a non-transitory medium and comprising code instructions, which when executed on one or more processors, cause the one or more processors to perform the method according to any of the first any of the first aspect to the eighteenth aspect.. According to a twentieth aspect, in addition to the nineteenth aspect, the computer program uses multi-threaded processing with: (i) a first dedicated buffer for controlling the moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and (ii) a second dedicated buffer for the obtaining of the measurement values and / or for processing of the measurement values, wherein the first and the second dedicated buffer running on mutually different threads.

[0314] According to the twenty-first aspect, an apparatus is provided for aligning an optical input with an optical output, the apparatus comprising: a movable equipment (or e.g. a positioning system) adapted to move an optical output and an optical input relatively to each other; a first processing circuitry configured to perform a first search for obtaining a first alignment of the optical input and the optical output for which a light beam emitted from the optical output is detected at the optical input, wherein the searching of the alignment includes performing the following steps repeatedly until a predefined condition is satisfied, the condition including a measurement value of a signal strength at the optical input satisfying a threshold condition: (i) determining an alignment of the optical input and the optical output as a random value, from a predetermined search range, (ii) control the movable equipment to move the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and (iii) obtaining one or more measurement values of the signal strength at the optical input on the trajectory to the alignment; and a second processing circuitry configured to perform a second search for obtaining a second alignment of the optical input and the optical output for which the signal strength is larger than the signal strength at the first alignment.

[0315] It is noted that the apparatus may be further configured to perform the steps described above with reference to methods.

[0316] According to a twenty-second aspect, in addition to the twenty-first, the apparatus comprises a servo system configured to control the positioning system, and third processing circuitry, and wherein (i) the moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment corresponds to a move of the positioning system, and (ii) each of the measurement values is obtained by performing a respective measurement. More specifically, each of the measurements: (i) is performed at a measurement point that is determined by the position of the positioning system at a time of the measurement, and (ii) covers a respective measurement area or respective measurement volume around the measurement point at which the measurement is performed. The first processing circuitry is configured to: (i) control the positioning system to perform the move using the servo system by providing, to the servo system, a time-dependent position setpoint that corresponds to the move; and (ii) perform the measurements while the positioning system performs the move. The servo system is configured to (i) control, while performing the move, the position of the positioning system by continuously adjusting, based on the time-dependent position setpoint, the position of the positioning system by generating time-dependent control output for the positioning system, wherein the time-dependent control output at time t is determined, in a closed control loop, based on a difference. The difference is: (i) the difference between: (a) a value of the time-dependent position setpoint at the time t, and (b) a value of a position process value at the time t, or (ii) the difference between: (a) a value of a derivative of the time-dependent position setpoint at the time t, and (b) a value of the derivative of the position process value at the time t. The control output includes: (i) a term proportional, with proportionality coefficient KP, to the difference, (ii) a term proportional, with proportionality coefficient Ki, to an integral of the difference, and / or (iii) a term proportional, with proportionality coefficient KD, to a derivative of the difference, (it is noted that this derivative may be the first-order derivative or a higher-order derivative of any order). Furthermore, the third processing circuitry is configured to: (i) determine an oscillatory motion around a position path given by the time-dependent position setpoint, the determining of the oscillatory motion comprising determining an oscillation amplitude and a direction of the oscillatory motion; and (ii) determine one or more values for one or more of the proportionality coefficients KP, KI and KD, respectively, in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move; and (iii) adjust, before the positioning system performs the move, the one or more proportionality coefficients KP, KI and KD with the one or more values, respectively.

[0317] According to twenty-third aspect, a method of using a servo system for controlling a positioning system to perform a move in order to perform, while performing the move, measurements, is provided. Each of the measurements: (i) is performed at a measurement point that is determined by the position of the positioning system at a time of the measurement, and (ii) covers a respective measurement area or respective measurement volume around the measurement point at which the measurement is performed. While performing the move, the servo system controls the position of the positioning system by continuously adjusting, based on a time-dependent position setpoint that corresponds to the move, the position of the positioning system by generating timedependent control output for the positioning system, wherein the time-dependent control output at time t is determined, in a closed control loop, based on a difference. The difference is: (i) a difference between: (a) a value of the time-dependent position setpoint at the time t, and (b) a value of a position process value at the time t, or (ii) a difference between: (a) a value of a derivative of the time-dependent position setpoint at the time t, and (b) a value of the derivative of the position process value at the time t. The control output includes: (i) a term proportional, with proportionality coefficient KP, to the difference, (ii) a term proportional, with proportionality coefficient Ki, to an integral of the difference, and / or (iii) a term proportional, with proportionality coefficient KD, to a derivative (it is noted that this derivative may be the first-order derivative or a higher-order derivative of any order) of the difference. The method according to the twenty-third aspect comprises: (i) determining an oscillatory motion around a position path given by the timedependent position setpoint, the determining of the oscillatory motion comprising determining an oscillation amplitude and a direction of the oscillatory motion; (ii) determining one or more values for one or more of the proportionality coefficients KP, KI and KD, respectively, in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move; (iii) adjusting the one or more proportionality coefficients KP, KI and KD with the one or more values, respectively; and (iv) performing the measurements while performing the move using the time-dependent control output generated by the servo system using the one or more adjusted proportionality coefficients KP, KI and KD.

[0318] According to a twenty-fourth aspect, in addition to the twenty-third aspect, the oscillatory amplitude is determined based on: (i) an overlap between the measurement areas of two consecutive measurements of the measurements, or (ii) an overlap between the measurement volumes of consecutive measurements of two consecutive measurements of the measurements.

[0319] According to a twenty-fifth aspect, in addition to any of the twenty-third aspect to the twenty-fourth, the position path given by the time-dependent position setpoint is a straight vector path.

[0320] According to a twenty-sixth aspect, in addition to any of the twenty-third aspect to the twenty-fifth, the oscillatory motion is orthogonal to the position path given by the time-dependent position setpoint.

[0321] According to a twenty-seventh aspect, in addition to any of the twenty-third aspect to the twentysixth aspect, the one or more values are obtained based on the oscillation amplitude and a mapping of at least one of the proportionality coefficients KP, KI and KD to physical oscillatory motion of the positioning system.

[0322] According to a twenty-eight aspect, a computer program stored on a non-transitory medium and comprising code instructions is provided, which when executed on one or more processors, cause the one or more processors to perform the method according to any of the twenty-third to the twenty-seventh aspect.

[0323] According to a twenty-ninth aspect, in addition to the twenty-eight aspect, the computer program uses multi-threaded processing with: (i) a first dedicated buffer for controlling the moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and (ii) a second dedicated buffer for the obtaining of the measurement values and / or for processing of the measurement values, wherein the first and the second dedicated buffer running on mutually different threads.

[0324] According to a thirtieth aspect, an apparatus for performing measurements using a positioning system controlled by a servo system is provide. Each of the measurements: (i) is performed at a measurement point that is determined by a position of the positioning system at a time of the measurement, and (ii) covers a respective measurement area or respective measurement volume around the measurement point at which the measurement is performed. The apparatus comprises the positioning system, the servo system, a measurement device, first processing circuitry and second processing circuitry. The servo system is configured to control the positioning system to perform a move by continuously adjusting, based on a time-dependent position setpoint that corresponds to the move, the position of the positioning system by generating time-dependent control output for the positioning system, wherein: the time-dependent control output at time t is determined, in a closed control loop, based on a difference. The difference is: (i) the difference between: (a) a value of the time-dependent position setpoint at the time t, and (b) a value of a position process value at the time t, or (ii) the difference between: (a) a value of a derivative of the time-dependent position setpoint at the time t, and (b) a value of the derivative of the position process value at the time t. The control output includes: (i) a term proportional, with proportionality coefficient KP, to the difference, (ii) a term proportional, with proportionality coefficient Ki, to an integral of the difference, and / or (iii) a term proportional, with proportionality coefficient KD, to a derivative of the difference, (it is noted that this derivative may be the first-order derivative or a higher-order derivative of any order). The first processing circuitry is configured to control the measurement device to perform the measurements while the servo system controls the positioning system to perform the move. The second processing circuitry configured to: (i) determine an oscillatory motion around a position path given by the time-dependent position setpoint, the determining of the oscillatory motion comprising determining an oscillation amplitude and a direction of the oscillatory motion; (ii) determine one or more values for one or more of the proportionality coefficients KP, KI and KD, respectively, in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move; and (iii) adjust, before the servo system controls the positioning system to perform the move the one or more proportionality coefficients KP, KI and KD with the one or more values, respectively. It is noted that the apparatus may be further configured to perform the steps described above with reference to methods.

[0325] According to a thirty-first aspect, a method is provided for aligning an optical input with an optical output. The method comprises the step of performing a first search for obtaining a first alignment of the optical input and the optical output for which a light beam emitted from the optical output is detected at the optical input, wherein the searching of the alignment includes performing the following steps repeatedly until a predefined condition is satisfied, the condition including a measurement value of a signal strength at the optical input satisfying a threshold condition: (i) determining an alignment of the optical input and the optical output, from a predetermined search range, (ii) moving the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and (iii) obtaining one or more measurement values of the signal strength at the optical input on the trajectory to the alignment. The method further comprises the step of performing a second search for obtaining a second alignment of the optical input and the optical output for which the signal strength is larger than the signal strength at the first alignment. According to a thirty-first aspect, the optical input and / or the optical output are moved such that the optical input and the optical output are in the determined alignment using a positioning system, wherein (i) the moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment corresponds to a move of the positioning system, (ii) a servo system is used for controlling the positioning system to perform the move, and (iii) each of the measurement values is obtained by performing a respective measurement. Furthermore, each of the measurements: (i) is performed at a measurement point that is determined by the position of the positioning system at a time of the measurement, and (ii) covers a respective measurement area or respective measurement volume around the measurement point at which the measurement is performed. While performing the move, the servo system controls the position of the positioning system by continuously adjusting, based on a time-dependent position setpoint that corresponds to the move, the position of the positioning system by generating time-dependent control output for the positioning system, wherein: the timedependent control output at time t is determined, in a closed control loop, based on a difference. The difference is: (i) a difference between: (a) a value of the time-dependent position setpoint at the time t, and (b) a value of a position process value at the time t, or (ii) a difference between: (a) a value of a derivative of the time-dependent position setpoint at the time t, and (b) a value of the derivative of the position process value at the time t. The control output includes: (i) a term proportional, with proportionality coefficient KP, to the difference, (ii) a term proportional, with proportionality coefficient Ki, to an integral of the difference, and / or (iii) a term proportional, with proportionality coefficient KD, to a derivative (it is noted that this derivative may be the first-order derivative or a higher-order derivative of any order) of the difference. The method according to a thirty-first aspect comprises: (i) determining an oscillatory motion around a position path given by the time-dependent position setpoint, the determining of the oscillatory motion comprising determining an oscillation amplitude of the oscillatory motion; (ii) determining one or more values for one or more of the proportionality coefficients KP, KI and KD, respectively, in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move; (iii) adjusting the one or more proportionality coefficients KP, Ki and KD with the one or more values, respectively; and (iv) performing the measurements while performing the move using the time-dependent control output generated by the servo system using the one or more adjusted proportionality coefficients KP, KI and KD.

[0326] According to the thirty-second aspect, an apparatus is provided for aligning an optical input with an optical output, the apparatus comprising: a movable equipment (or e.g. a positioning system) adapted to move an optical output and an optical input relatively to each other; a first processing circuitry configured to perform a first search for obtaining a first alignment of the optical input and the optical output for which a light beam emitted from the optical output is detected at the optical input, wherein the searching of the alignment includes performing the following steps repeatedly until a predefined condition is satisfied, the condition including a measurement value of a signal strength at the optical input satisfying a threshold condition: (i) determining an alignment of the optical input and the optical output, from a predetermined search range, (ii) control the movable equipment to move the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and (iii) obtaining one or more measurement values of the signal strength at the optical input on the trajectory to the alignment; and a second processing circuitry configured to perform a second search for obtaining a second alignment of the optical input and the optical output for which the signal strength is larger than the signal strength at the first alignment. The apparatus according to the thirty-second aspect further comprises: (i) a servo system configured to control the positioning system, and (ii) third processing circuitry. Furthermore, (i) the moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment corresponds to a move of the positioning system, and (ii) each of the measurement values is obtained by performing a respective measurement. Furthermore, each of the measurements: (i) is performed at a measurement point that is determined by the position of the positioning system at a time of the measurement, and (ii) covers a respective measurement area or respective measurement volume around the measurement point at which the measurement is performed. The first processing circuitry is configured to: (i) control the positioning system to perform the move using the servo system by providing, to the servo system, a time-dependent position setpoint that corresponds to the move; and (ii) perform the measurements while the positioning system performs the move. The servo system is configured to control, while performing the move, the position of the positioning system by continuously adjusting, based on the time-dependent position setpoint, the position of the positioning system by generating time-dependent control output for the positioning system. The time-dependent control output at time t is determined, in a closed control loop, based on a difference. The difference is: (i) a difference between: (a) a value of the time-dependent position setpoint at the time t, and (b) a value of a position process value at the time t, or (ii) a difference between: (a) a value of a derivative of the time-dependent position setpoint at the time t, and (b) a value of the derivative of the position process value at the time t. The control output includes: (i) a term proportional, with proportionality coefficient KP, to the difference, (ii) a term proportional, with proportionality coefficient Ki, to an integral of the difference, and / or (iii) a term proportional, with proportionality coefficient KD, to a derivative (it is noted that this derivative may be the first-order derivative or a higher-order derivative of any order) of the difference. The third processing circuitry is configured to: (i) determine an oscillatory motion around a position path given by the time-dependent position setpoint, the determining of the oscillatory motion comprising determining an oscillation amplitude of the oscillatory motion; (ii) determine one or more values for one or more of the proportionality coefficients KP, KI and KD, respectively, in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move; and (iii) adjust, before the positioning system performs the move, the one or more proportionality coefficients KP, KI and Kowith the one or more values, respectively. It is noted that the apparatus may be further configured to perform the steps described above with reference to methods.

Claims

CLAIMS1. A method for aligning an optical input with an optical output, the method comprising the steps of: performing a first search for obtaining a first alignment of the optical input and the optical output for which a light beam emitted from the optical output is detected at the optical input, wherein the searching of the alignment includes performing the following steps repeatedly until a predefined condition is satisfied, the condition including a measurement value of a signal strength at the optical input satisfying a threshold condition:• determining an alignment of the optical input and the optical output as a random value, from a predetermined search range,• moving the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and• obtaining measurement values of the signal strength at the optical input on the trajectory to the alignment, the obtaining comprising sampling of the signal strength during the moving with a predefined sampling frequency; and performing a second search for obtaining a second alignment of the optical input and the optical output for which the signal strength is larger than the signal strength at the first alignment.

2. The method according to claim 1, wherein the first search is performed in two dimensions, and the alignment is defined by two coordinates of the respective two dimensions.

3. The method according to claim 1 or claim 2, wherein the moving step is performed by moving the optical input relative to a fixed optical output.

4. The method according to claim 1 or claim 2, wherein the moving step is performed by moving the optical input and by moving the optical output, both movements being independent of each other.

5. The method according to any of claims 1 to 4, including the steps of: determining a statistical characteristics of said measurement values of the signal strength; and determining or updating the threshold condition based on the characteristics.

6. The method according to claim 5, wherein the determining or updating the threshold is performed during performing the first search.

7. The method according to claim 5 or 6, wherein the determining a statistical characteristics includes determining a variance indication and the threshold condition is based on a function of the variance indication.

8. The method according to any of claims 1 to 7, wherein, when the threshold condition is satisfied, the method further comprises:• determining whether the measured values satisfy an auto-correlation condition;• resuming the first search if the auto-correlation condition is not satisfied.

9. The method according to claim 8, wherein the method includes: adapting, if the autocorrelation condition is not satisfied, the threshold condition, wherein the autocorrelation condition is a condition based on comparison of signal strength before alignment and after alignment.

10. The method according to any of claims 1 to 9, comprising a calibration step performed before the first search, the calibration step including: measuring noise strength values in absence of the light beam;determining a statistics of the noise strength; and based on the statistics of the noise strength, determining resolution of the measurement values.

11. The method according to any of claims 1 to 10, wherein the second search is based on the gradient of the signal strength.

12. The method according to any of claims 1 to 11 , wherein said moving of the optical input and / or the optical output to the determined alignment is a linear movement.

13. The method according to any of claims 1 to 11 , wherein the optical input and / or the optical output are moved such that the optical input and the optical output are in the determined alignment using a positioning system, wherein the moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment corresponds to a move of the positioning system, a servo system is used for controlling the positioning system to perform the move, each of the measurement values is obtained by performing a respective measurement, and each of the measurements:• is performed at a measurement point that is determined by the position of the positioning system at a time of the measurement, and• covers a respective measurement area or respective measurement volume around the measurement point at which the measurement is performed, and while performing the move, the servo system controls the position of the positioning system by continuously adjusting, based on a time-dependent position setpoint that corresponds to the move, the position of the positioning system by generating timedependent control output for the positioning system, wherein:• the time-dependent control output at time t is determined, in a closed control loop, based on a difference, wherein the difference is: o a difference between:■ a value of the time-dependent position setpoint at the time t, and■ a value of a position process value at the time t, or o a difference between:■ a value of a derivative of the time-dependent position setpoint at the time t, and■ a value of the derivative of the position process value at the time t; and• the control output includes: o a term proportional, with proportionality coefficient KP, to the difference, o a term proportional, with proportionality coefficient Ki, to an integral of the difference, and / or o a term proportional, with proportionality coefficient KD, to a derivative of the difference; and the method comprises: determining an oscillatory motion around a position path given by the time-dependent position setpoint, the determining of the oscillatory motion comprising determining an oscillation amplitude and a direction of the oscillatory motion; determining one or more values for one or more of the proportionality coefficients KP, KI and KD, respectively, in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move; adjusting the one or more proportionality coefficients KP, KI and KD with the one or more values, respectively; and performing the measurements while performing the move using the time-dependent control output generated by the servo system using the one or more adjusted proportionality coefficients KP, KI and KD.

14. The method according to claim 13, wherein the oscillatory amplitude is determined based on:• an overlap between the measurement areas of two consecutive measurements of the measurements, or• an overlap between the measurement volumes of consecutive measurements of two consecutive measurements of the measurements.

15. The method according to claim 13 or 14, wherein the position path given by the time-dependent position setpoint is a straight vector path.

16. The method according to any of claims 13 to 15, wherein the oscillatory motion is orthogonal to the position path given by the time-dependent position setpoint.

17. The method according to any of claims 13 to claim 16, wherein the one or more values are obtained based on the oscillation amplitude and a mapping of at least one of the proportionality coefficients KP, KI and KD to physical oscillatory motion of the positioning system.

18. A computer program stored on a non-transitory medium and comprising code instructions, which when executed on one or more processors, cause the one or more processors to perform the method according to any of claims 1 to 17.

19. The computer program according to claim 18, wherein the computer program uses multi-threaded processing with:• a first dedicated buffer for controlling the moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and• a second dedicated buffer for the obtaining of the measurement values and / or for processing of the measurement values , whereinthe first and the second dedicated buffer running on mutually different threads.

20. An apparatus for aligning an optical input with an optical output, the apparatus comprising: a positioning system adapted to move an optical output and an optical input relatively to each other; a first processing circuitry configured to perform a first search for obtaining a first alignment of the optical input and the optical output for which a light beam emitted from the optical output is detected at the optical input, wherein the searching of the alignment includes performing the following steps repeatedly until a predefined condition is satisfied, the condition including a measurement value of a signal strength at the optical input satisfying a threshold condition:• determining an alignment of the optical input and the optical output as a random value, from a predetermined search range,• control the positioning system to move the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and• obtain measurement values of the signal strength at the optical input on the trajectory to the alignment, the obtaining comprising sampling of the signal strength during the moving with a predefined sampling frequency; and a second processing circuitry configured to perform a second search for obtaining a second alignment of the optical input and the optical output for which the signal strength is larger than the signal strength at the first alignment.21 . The apparatus according to claim 20, further comprising: a servo system configured to control the positioning system, and third processing circuitry; and wherein the moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment corresponds to a move of the positioning system,each of the measurement values is obtained by performing a respective measurement, wherein each of the measurements:• is performed at a measurement point that is determined by the position of the positioning system at a time of the measurement, and• covers a respective measurement area or respective measurement volume around the measurement point at which the measurement is performed, and the first processing circuitry is configured to:• control the positioning system to perform the move using the servo system by providing, to the servo system, a time-dependent position setpoint that corresponds to the move;• perform the measurements while the positioning system performs the move; the servo system is configured to control, while performing the move, the position of the positioning system by continuously adjusting, based on the time-dependent position setpoint, the position of the positioning system by generating time-dependent control output for the positioning system, wherein:• the time-dependent control output at time t is determined, in a closed control loop, based on a difference, wherein the difference is: o a difference between:■ a value of the time-dependent position setpoint at the time t, and■ a value of a position process value at the time t, or o a difference between:■ a value of a derivative of the time-dependent position setpoint at the time t, and■ a value of the derivative of the position process value at the time t; and• the control output includes: o a term proportional, with proportionality coefficient KP, to the difference, o a term proportional, with proportionality coefficient Ki, to an integral of the difference, and / or o a term proportional, with proportionality coefficient KD, to a derivative of the difference; and the third processing circuitry is configured to:• determine an oscillatory motion around a position path given by the timedependent position setpoint, the determining of the oscillatory motion comprising determining an oscillation amplitude and a direction of the oscillatory motion; and• determine one or more values for one or more of the proportionality coefficients KP, Ki and KD, respectively, in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move;• adjust, before the positioning system performs the move, the one or more proportionality coefficients KP, KI and KD with the one or more values, respectively.

22. A method of using a servo system for controlling a positioning system to perform a move in order to perform, while performing the move, measurements, wherein, each of the measurements:• is performed at a measurement point that is determined by the position of the positioning system at a time of the measurement, and• covers a respective measurement area or respective measurement volume around the measurement point at which the measurement is performed, and while performing the move, the servo system controls the position of the positioning system by continuously adjusting, based on a time-dependent position setpoint that corresponds to the move, the position of the positioning system by generating timedependent control output for the positioning system, wherein:• the time-dependent control output at time t is determined, in a closed control loop, based on a difference, wherein the difference is: o a difference between:■ a value of the time-dependent position setpoint at the time t, and■ a value of a position process value at the time t, or o a difference between:■ a value of a derivative of the time-dependent position setpoint at the time t, and■ a value of the derivative of the position process value at the time t; and• the control output includes: o a term proportional, with proportionality coefficient KP, to the difference,o a term proportional, with proportionality coefficient Ki to an integral of the difference, and / or o a term proportional, with proportionality coefficient KD, to a derivative of the difference; and the method comprises: determining an oscillatory motion around a position path given by the time-dependent position setpoint, the determining of the oscillatory motion comprising determining an oscillation amplitude and a direction of the oscillatory motion; determining one or more values for one or more of the proportionality coefficients KP, KI and KD, respectively, in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move; adjusting the one or more proportionality coefficients KP, KI and KD with the one or more values, respectively; and performing the measurements while performing the move using the time-dependent control output generated by the servo system using the one or more adjusted proportionality coefficients KP, KI and KD.

23. The method according to claim 22, wherein the oscillatory amplitude is determined based on:• an overlap between the measurement areas of two consecutive measurements of the measurements, or• an overlap between the measurement volumes of consecutive measurements of two consecutive measurements of the measurements.

24. The method according to claim 22 or 23, wherein the position path given by the time-dependent position setpoint is a straight vector path.

25. The method according to any of claims 22 to 24, whereinthe oscillatory motion is orthogonal to the position path given by the time-dependent position setpoint.

26. The method according to any of claims 22 to claim 25, wherein the one or more values are obtained based on the oscillation amplitude and a mapping of at least one of the proportionality coefficients KP, KI and KD to physical oscillatory motion of the positioning system.

27. A computer program stored on a non-transitory medium and comprising code instructions, which when executed on one or more processors, cause the one or more processors to perform the method according to any of claims 22 to 25.

28. The computer program according to claim 27, wherein the computer program uses multi-threaded processing with:• a first dedicated buffer for controlling the moving of the optical input and / or the optical output such that the optical input and the optical output are in the determined alignment, and• a second dedicated buffer for the obtaining of the measurement values and / or for processing of the measurement values , the first and the second dedicated buffer are running on mutually different threads.

29. An apparatus for performing measurements using a positioning system controlled by a servo system, wherein each of the measurements:• is performed at a measurement point that is determined by a position of the positioning system at a time of the measurement, and• covers a respective measurement area or respective measurement volume around the measurement point at which the measurement is performed the apparatus comprising:the positioning system; the servo system, wherein the servo system configured to control the positioning system to perform a move by continuously adjusting, based on a time-dependent position setpoint that corresponds to the move, the position of the positioning system by generating time-dependent control output for the positioning system, wherein:• the time-dependent control output at time t is determined, in a closed control loop, based on a difference between, wherein the difference is: o a difference:■ a value of the time-dependent position setpoint at the time t, and■ a value of a position process value at the time t, or o a difference between:■ a value of a derivative of the time-dependent position setpoint at the time t, and■ a value of the derivative of the position process value at the time t; and• the control output includes: o a term proportional, with proportionality coefficient KP, to the difference, o a term proportional, with proportionality coefficient Ki, to an integral of the difference, and / or o a term proportional, with proportionality coefficient KD, to a derivative of the difference; and a measurement device; first processing circuitry configured to control the measurement device to perform the measurements while the servo system controls the positioning system to perform the move; second processing circuitry configured to:• determine an oscillatory motion around a position path given by the timedependent position setpoint, the determining of the oscillatory motion comprising determining an oscillation amplitude and a direction of the oscillatory motion;• determine one or more values for one or more of the proportionality coefficients KP, Ki and KD, respectively, in order to induce the oscillatory motion when using the servo system to control the position of the positioning system while performing the move; and• adjust, before the servo system controls the positioning system to perform the move the one or more proportionality coefficients KP, KI and KD with the one or more values, respectively.

Citation Information

Patent Citations

  • Optical axis adjustment method, and storage medium recorded with a program that executes said adjustment method

    US20020101581A1

  • Method and apparatus for improving beam power

    US20030206686A1

  • Diamond 2D scan for aligning an optical fiber to an optical output port

    US20050175296A1

  • Intelligent modeling and control of automation

    US20090276073A1

  • Aligning apparatus and method using on-the-fly determination of throughput-profile gradient for current positioning of radiated influence supplier and / or receiver

    US7236680B1