Digitizer tablet with regional error correction
This invention relates to digitizer tablets, and in particular to digitizer tablets providing improved regional error correction. 
     BACKGROUND OF INVENTION 
     Digitizer tablets are well known in the art. In one popular type, the pointing device comprises a coil in a cursor or stylus configuration which is positioned by a user over a tablet surface in which is embedded an electrically conductive grid extending in two coordinate directions. In one mode, the pointing device coil is energized to electromagnetically induce signals in the grid conductors. In another mode, the grid conductors are energized to electromagnetically induce signals in the pointing device coil. In other types, electrostatics are employed; in still others acoustics, or resistive characteristics are employed. In all cases, a signal or set of signals are processed to determine the location of a movable pointing device upon a surface, based on the known characteristics of these signals. Examples of patents describing in more detail the first type of digitizer are Kamm et al. U.S. Pat. Nos. 3,904,822; Ioanau 3,873,770; and Zimmer 4,368,351, whose contents are hereby incorporated by reference. BYTE, January 1989, pages 162-174, gives a general description of such devices and their performances. 
     A problem has been observed during the operation of such tablets. It has been observed that, when the pointing device is held over certain regions of the tablet&#39;s working surface, usually the edge or corner regions, the position of the cursor displayed on the display device connected to the computer that is converting the pointing device position does not accurately represent the true position of the pointing device, due primarily to regional anomalies of the signals (compared to their ideal characteristics). Analysis has demonstrated that the coordinate pairs outputted by the tablet exhibit non-random errors. It is known, for example, that the errors are a function of the relative location on the tablet working surface area where the pointing device is positioned. Typically, the reported coordinates are more accurate from the tablet center than from the tablet edges. This is understood to be due to so-called edge effects, that is, non-uniformities in the generated electrical fields due to, for example, signal return lines running along a tablet edge, or the transducer&#39;s fields extending beyond the grid edge, or extraneous fields extending beyond the grid edge, or extraneous fields extending from connectors or components mounted about the grid periphery. 
     One known technique for correcting for such non-random errors is to apply the inverse of the error effects. For example, if the errors are known to increase as the pointing device approaches the left tablet edge, decrease the reported coordinates as the left tablet edge is approached. At the other extreme, the coordinate determination may be structured to model the nonuniformities of the signals across the entire surface area. In principle, it might be possible to construct a multi-dimensional, multi-ordered polynomial equation to fit the error contour across the tablet surface, but such a solution even if possible would be too costly to implement in a reasonably priced tablet with acceptable performance, since it would require an expensive high speed processor to compute such an equation for each coordinate within the coordinate report time constraint. 
     Many commercial tablets employ a first-order correction algorithm using a fairly primitive straight line edge correction in selected regions. However, this is not entirely satisfactory because the error characteristics in the typical tablet are multi-dimensional, meaning, for example, that any assumed correction straight line for one Y axis position would not accurately represent the slope of a correction straight line for an adjacent Y axis position. Moreover, the assumed straight line intercept also varies with coordinate position, which introduces another error into the correction. 
     The problem is compounded at corner tablet regions, where errors arise due to a combination of a side edge effect and a top or bottom edge effect. 
     SUMMARY OF THE INVENTION 
     The chief object of the invention is a digitizer tablet having improved accuracy for coordinates reported at regions prone to error. 
     Another object of the invention is a digitizer tablet employing a modestly priced processor capable of correcting errors in reported coordinates without sacrificing the report rate. 
     The invention is based on the recognition that there exists a general solution for each region of the tablet requiring correction. In accordance with a preferred embodiment, the general solution involves linear equations, and in particular a first linear equation for the X coordinate, and a second linear equation for the Y coordinate. Both equations relate corrected coordinates for a particular axis of the tablet for the pointing device to plural tablet axes, usually both the X and Y axes. Each of these equations is characterized by a sum of terms involving constants unique to the tablet region to be corrected. 
     In accordance with a feature of the invention, a series of measurements are carried out over each tablet region to be corrected. From these measurements, the deviations of the raw coordinates from the true coordinates are determined. Each of the equations or their equivalent (as explained below) are then evaluated to determine the constants of their sum terms. These constants for each tablet region to be corrected are stored. When the user operates the tablet, and the pointing device is positioned over a region requiring correction, the equations are again evaluated in real time using the raw coordinates and the stored constants, producing and generating corrected coordinates for that pointing device position. Since only two linear equations require evaluation to generate the corrected coordinates, it can readily be accomplished in real time with the type of modestly priced processor conventionally used in such tablets without any significant penalty in the report rate. 
     Further details on how to implement the invention, as well as other objects and advantages of the invention, will be evident from the detailed description that follows of a preferred embodiment taken in conjunction with the accompanying drawings. 
    
    
     SUMMARY OF DRAWINGS 
     FIG. 1 is a block diagram of a typical digitizer tablet to illustrate how the problem solved by the invention arises; 
     FIG. 2 is a block diagram showing a typical work-station setup employing a tablet in accordance with the invention; 
     FIGS. 3A-3D are schematic views of several typical tablets divided up into regions exhibiting similar error patterns; 
     FIGS. 4a and 4b are flow diagrams showing a preferred way to implement the invention; 
     FIG. 5 is a block diagram of the additional circuitry to be added to the system of FIG. 1 to implement the invention. 
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
     FIG. 1 illustrates, in a block diagram, a system in accordance with the invention. The tablet 10 is indicated by an electrode array of parallel conductors 11, useful for indicating the position of a pointing device 12 represented by a coil in one coordinate direction, say the Y direction. As is conventional, a second array of conductors, orthogonal to the first, would be provided to furnish information about the pointing device position in the X direction. This has not been shown because the operation is identical, and it will be understood that the invention is not limited to determining only one coordinate but encompasses also two or more coordinates as is conventional. In the example illustrated, the pointing device is excited by an AC source 13--10-100 KHz is common--causing voltages to be induced in the array conductors 11. Each of the array conductors are sequentially addressed by a known scanner 15--essentially a multiplexer--which connects to each conductor in turn. The addressing order is not important to the invention. 
     Each time that the scanner 15 connects to an array conductor 11, the induced signal voltage is detected and amplified in an amplifier 16. These signals are typically filtered through a low pass or bandpass filter 17 which passes the frequency of the oscillator 13. These signals are then converted 23 into a form suitable for processing (e.g. converted from analog to digital for subsequent digital signal processing), and then used to determine the location of the transducer by any number of techniques known to those versed in this art. The results can then be outputted. 
     FIG. 2 shows the tablet 10 connected by way of an output cable 26 to the computer console. The computer software then converts the outputted coordinates to a display cursor position on the screen of a display or monitor 27. The pointing device, in this case a stylus 29, is schematically shown in FIG. 2. 
     The general solution used for tablet region correction, in accordance with the invention, is equations (1) and (2) below: 
     
         X.sub.c =ax.sub.r +by.sub.r +cx.sub.r y.sub.r +d           (1) 
    
     
         Y.sub.c =ex.sub.r +fy.sub.r +gx.sub.r y.sub.r +h           (2) 
    
     where X c  and Y c  are the corrected coordinates, and x r  and y r  are the raw coordinates. It is noted that each coordinate&#39;s (Xc, Yc) correction will be a function of the location of the transducer or pointing device in both axes within the region of interest, as compared to the conventional approach wherein only one axis is used. If X ti  and Y ti  are the true coordinates for each i th  coordinate then: 
     
         X.sub.ti =ax.sub.ri +by.sub.ri +cx.sub.ri y.sub.ri +d+r.sub.i(3) 
    
     
         Y.sub.ti =ex.sub.ri +fy.sub.ri +gx.sub.ri y.sub.ri +h+s.sub.i(4) 
    
     where r i , s i  are the errors of the system, including random measurement errors, model inadequacy errors, etc. 
     The eight constants a-h should be chosen to minimize |r i  |and |s i  | over the tablet region they are applied. Since the absolute value function (magnitude) is difficult to deal with algorithmically, it is preferred to use the square of the errors as the measure to be minimized. Thus, the problem reduces to: find the constants a . . . h such that r i   2  and s i   2  are minimized. Since it is not practical to determine a separate a . . . h for each i th  coordinate, it is preferred to find a single set of eight constants a . . . h to minimize the average square error for selected regions of the tablet where one would expect similar or consistent errors. Thus, find a . . . h such that ##EQU1## Applying various mathematical techniques results in the following four equations to find the desired minimums: 
     (The @ symbol is used here, for convenience, as a substitute for the usual partial derivative symbol which is intended.) ##EQU2## 
     A similar set of four equations is arrived at to minimize Σs i   2  for the constants e . . . h. ##EQU3## 
     It is noted that these equations (5) . . . (8) are linear functions of a, b, c, d, and, with four equations and four unknowns, the solution for a . . . d is unique and solvable. Similarly, for equations (9) . . . (12), the solution for determining e . . . h is also unique and solvable. Thus, to implement the invention in a preferred embodiment, the following steps are carried out to determine the constants a . . . h in the sum terms in equations (5) . . . (12): 
     A. Identify regions of the tablet having a similar pattern of error effects. This is done from a knowledge of the casual factors causing errors, circuit performance, etc. For example, most tablets will exhibit one of the error patterns shown in FIGS. 3A to 3D, where 40 designates the active surface of the tablet, and each of the regions designated by the roman numerals I . . . IX represent tablet regions exhibiting similar error effects. The size and shape of the error regions are determined by the designer to represent the areas with similar error characteristics. It is assumed for the discussion that follows below that the tablet model being processed exhibits the error pattern shown in FIG. 3A. 
     B. In each of the error regions I . . . IV collect at least four points spaced over each of the regions by positioning the pointing device at each of the points and noting the true X ti , Y ti  and the raw x ri , y ri  coordinates. The quality of the subsequent parameters a . . . h for each error region will be a function of the error associated with these measurements. The inherent error in these measurements can be reduced by taking more points in each region; four is the minimum, the error reduces by 1/(N)1/2. 
     C. Compute the Σ terms from these measurements for each tablet region Σx, Σy, Σ 2  y, Σx 2  y 2 , etc. as used in the preceding equations (5) . . . (8). Repeat the computations for s i   2 . 
     D. Solve the given eight linear equations (5) . . . (12) for the eight constants, a-h, for each of the regions I . . . IV. Store these sets of constants for subsequent use. 
     The above steps are applied to determine the parameters either for entire batches of tablets, if they&#39;re consistent, or for individual tablets, if they&#39;re not consistent. 
     The stored constants are used in the following way when a user is operating the tablet in its normal operating mode. Determine from the raw coordinates which region of the four error regions I . . . IV the pointing device is positioned over. Using the raw coordinates, and the set of stored constants a . . . h for that determined region, evaluate equations (1) and (2) to obtain the corrected coordinates X c  and Y c , and report the latter to the host computer. 
     The inventive method as described above can be applied to one tablet of a batch of similar tablets with consistent errors, and the resultant set of eight constants included in the PROM typically employed in each tablet. On the other hand, if the individual tablets do not exhibit consistent error patterns, then each tablet would have to undergo the entire procedure to determine its own unique set of eight constants for each determined error region. Typically, that part of the procedure to determine the constants is carried out at the factory in a kind of initialization or testing phase, and each of the equations (1) and (2) evaluated each time that the coordinate pairs are outputted by the tablet to a computer during actual use as shown in FIG. 2. 
     FIGS. 4a and 4b show a flow diagram of the procedure. In the initialization phase, at block 50 a determination is made of the tablet error pattern based on experience or actual testing. Then the pointing device is accurately located over at least four points in each region to establish its true coordinates at block 51, and the actual raw coordinates for each device position are collected and stored. The raw and true coordinates are plugged into equations (5) . . . (12) to calculate 54 each of the constants a . . . h. These sets of constants are stored 55 for each tablet region. 
     In operation by the user (FIG. 4b), the tablet software or firmware steps through an algorithm each time raw coordinates are measured by the tablet 56. First, at block 57, a determination is made of the tablet region under the pointing device. This step simply involves comparing the raw coordinates against four ranges for the assumed error pattern of FIG. 3A. Where the error pattern is simpler, as in FIG. 3C, a typical comparison, for example, would be: if x r  (which can vary between 0 and 12) is in the range of 0&lt;3, it is region I; if in the range of 3-9, it is region II; if in the range of &gt;9-12, it is region III. 
     Next, at block 58, equations (1) and (2) are evaluated by plugging in the stored set of constants for that particular tablet region and the raw coordinate values measured at block 56. These equations are evaluated in real time with a minimal penalty in the rate of reports that the table can output. The resultant corrected coordinate pairs, X c , Y c , are reported to the user or computer for controlling the display cursor position. 
     It will be appreciated from the foregoing description that the tablet of the invention requires little or no additional hardware to implement the invention. The ROMs or PROMs currently used in each tablet need only have sufficient memory added to store the sets of constants unique for that tablet. Obviously, the computation of the equations can be accomplished in hardware (e.g. a coprocessor or dedicated multiplier-adder combinations) or in firmware. This is illustrated in FIG. 5. The raw coordinate pair inputted to an evaluator 60 for the linear equations (1) and (2) is the coordinate pair outputted in FIG. 1. Preferably, software is used 61 as described above to determine the tablet region involved. Memory 62 stores the sets of constants for each of the tablet regions, in this case four error regions I . . . IV. Execution of the algorithm 61 selects one of the constant sets which is inputted, together with the raw coordinate pair, to the evaluator 60. The latter after evaluation then outputs the corrected values. 
     Preferably, however, the evaluator is implemented in software or firmware executed by the on-board microcontroller. 
     In addition to improving the accuracy of the reported coordinate values, the invention offers the advantages of customized regional error correction, which is permanently a part of the tablet firmware and stays with the tablet. 
     While the invention has been described and illustrated in connection with preferred embodiments, many variations and modifications as will be evident to those skilled in this art may be made therein without departing from the spirit of the invention, and the invention as set forth in the appended claims is thus not to be limited to the precise details of construction set forth above as such variations and modifications are intended to be included within the scope of the appended claims.