Abstract:
Provided is a method for controlling light, including retrieving accelerations along an X-axis, a Y-axis, and a Z-axis with a 3-axis accelerometer sensor; matching the retrieved accelerations with RGB values; and transforming the RGB values and displaying a color of the transformed RGB values. The 3-axis accelerometer sensor retrieves the accelerations Ax, Ay, and Az along the X-axis, the Y-axis, and the Z-axis and calculates a velocity Vi along the X-axis, the Y-axis, and the Z-axis using the accelerations Ax, Ay, and Az, with i denoting directions x, y, and z, Vi=Vio+Ait expressing a terminal velocity in the direction i, Vio denoting an initial velocity in the direction i, Ai denoting the acceleration in the direction i, and t denoting time, thereby allowing variation of brightness to be controlled in eight modes.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    1. Technical Field 
         [0002]    The present invention relates to methods for controlling light, and more particularly, to a method for controlling light using a 3-axis accelerometer sensor. 
         [0003]    2. Description of Related Art 
         [0004]    None. 
       SUMMARY OF THE INVENTION 
       [0005]    The present invention provides a method for controlling light, comprising the steps of retrieving accelerations along an X-axis, a Y-axis, and a Z-axis with a 3-axis accelerometer sensor; matching the retrieved accelerations with RGB values; and transforming the RGB values and displaying a color of the transformed RGB values. The 3-axis accelerometer sensor retrieves the accelerations Ax, Ay, and Az along the X-axis, the Y-axis, and the Z-axis and calculates a velocity Vi along the X-axis, the Y-axis, and the Z-axis using the accelerations Ax, Ay, and Az, with i denoting directions x, y, and z, Vi=Vio+Ait expressing a terminal velocity in the directions i, Vio denoting an initial velocity in the direction i, Ai denoting the acceleration in the direction i, and t denoting time, thereby allowing variation of brightness to be controlled in eight modes comprising:
   1. Average absolute acceleration AA, wherein   
 
         [0000]        AA =((| Ax|+|Ay|+|Az| )/3);   2. Scalar magnitude VA of vector acceleration, wherein     
         [0000]        VA =√{square root over ( )}( Ax   2   +Ay   2   +Az   2 );   3. Differentiation DA between consecutive points of time t 1  and t 2  in scalar magnitude VA of vector acceleration, wherein     
         [0000]        DA=VA   t2   −VA   t1 , 
         [0000]        VA =√{square root over ( )}( Ax   2   +Ay   2   +Az   2 ),       t 1  denotes point of time  1 , and   t 2  denotes point of time  2 ;       4. Differentiation DAx, DAy, and DAz between consecutive points of time t 1  and t 2  in accelerations Ax, Ay, and Az along the X-axis, the Y-axis, and the Z-axis, wherein     
         [0000]        DAx=Axt 2 −Axt 1, 
         [0000]        DAy=Ayt 2− Ayt 1, and 
         [0000]        DAz=Azt 2− Azt 1;   5. Average velocity AV, wherein     
         [0000]        AV =((| Vx|+|Vy|+|Vz| )/3);   6. Scalar magnitude VV of vector velocity, wherein     
         [0000]        VV =√{square root over ( )}( Vx   2   +Vy   2   +Vz   2 );   7. Differentiation DV between consecutive points of time t 1  and t 2  in scalar magnitude VV of vector velocity, wherein     
         [0000]        VV =√{square root over ( )}( Vx   2   +Vy   2   +Vz   2 ), 
         [0000]        DV=VV   t2   −VV   t1 ,       t 1  denotes point of time  1 , and   t 2  denotes point of time  2 ; and       8. Differentiation DVx, DVy, DVz between consecutive points of time t 1  and t 2  in velocities Vx, Vy, Vz along the three axes, wherein     
         [0000]        DVx=Vx   t2   −Vx   t1 , 
         [0000]        DVy=Vy   t2   −Vy   t1 , 
         [0000]        DVz=Vz   t2   −Vz   t1 ,       t 1  denotes point of time  1 , and   t 2  denotes point of time  2 .         
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0020]    The invention as well as a preferred mode of use, further objectives and advantages thereof will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein: 
           [0021]      FIG. 1  shows a 3-axis accelerometer sensor typically in use; and 
           [0022]      FIG. 2  is a schematic view showing arrangement of sensors adapted for quantitative analysis of motion along the three axes. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0023]    Referring to  FIG. 1 , a typical 3-axis accelerometer sensor senses acceleration (g) along an X-axis, Y-axis, and Z-axis and outputs the sensed acceleration in the form of electronic signals. Known entertainment-oriented 3-axis accelerometer sensors, such as ADI&#39;s accelerometer sensor ADXL330, measure acceleration with an error of ±3.00 g. The 3-axis accelerometer sensor disclosed in the present invention and described in the specification thereof is characterized by precision including for example, but not limited to, an error of ±2.00 g. 
         [0024]    Also, acceleration along the three axes bear directional characteristics. For instance, where a hand-held 3-axis accelerometer sensor is moved straightly toward the right (+X), a reading of positive g is immediately followed by a brief reading of negative g. Likewise, where a hand-held 3-axis accelerometer sensor is move straightly toward the left (−X), a reading of negative g is immediately followed by a brief reading of positive g. 
         [0025]    One of the steps of the method according to the present invention involves matching acceleration calculated by a 3-axis accelerometer sensor along the X-axis, Y-axis, and Z-axis with RGB values. This can be implemented in three ways, as shown in Table 1, depending on circumstances. 
         [0000]    
       
         
               
               
               
             
           
               
                   
                 TABLE 1 
               
               
                   
                   
               
             
             
               
                   
                 Unidirectional 
                 X = R 
               
               
                   
                 vector 
                 X = G 
               
               
                   
                 acceleration is 
                 X = B 
               
               
                   
                 measured and 
                 Y = R 
               
               
                   
                 matched with 
                 Y = G 
               
               
                   
                 RGB values. 
                 Y = B 
               
               
                   
                   
                 Z = R 
               
               
                   
                   
                 Z = G 
               
               
                   
                   
                 Z = B 
               
               
                   
                 A pair of 
                 X = R, Y = G 
               
               
                   
                 vector 
                 X = R, Y = B 
               
               
                   
                 accelerations 
                 X = G, Y = R 
               
               
                   
                 is matched 
                 X = G, Y = B 
               
               
                   
                 with RGB 
                 X = B, Y = R 
               
               
                   
                 values. 
                 X = B, Y = G 
               
               
                   
                   
                 Y = R, Z = G 
               
               
                   
                   
                 Y = R, Z = B 
               
               
                   
                   
                 Y = G, Z = R 
               
               
                   
                   
                 Y = G, Z = B 
               
               
                   
                   
                 Y = B, Z = R 
               
               
                   
                   
                 Y = B, Z = G 
               
               
                   
                   
                 Z = R, X = G 
               
               
                   
                   
                 Z = R, X = B 
               
               
                   
                   
                 Z = G, X = R 
               
               
                   
                   
                 Z = G, X = B 
               
               
                   
                   
                 Z = B, X = R 
               
               
                   
                   
                 Z = B, X = G 
               
               
                   
                 A trio of 
                 X = R, Y = G, Z = B 
               
               
                   
                 vector 
                 X = R, Y = B, Z = G 
               
               
                   
                 accelerations 
                 X = G, Y = B, Z = R 
               
               
                   
                 is matched 
                 X = G, Y = R, Z = B 
               
               
                   
                 with RGB 
                 X = B, Y = R, Z = G 
               
               
                   
                 values. 
                 X = B, Y = G, Z = R 
               
               
                   
                   
               
             
          
         
       
     
         [0026]    As regards color light, color light is generally based on three primary colors, namely R (red), G (green), and B (blue). The three primary colors are “basic colors” which cannot be brought about by mixing and blending other colors. Mixing the primary colors in different proportions creates other new colors. To provide full-color display, a color LED lamp has to comprise at least one red (R) LED, at least one green (G) LED, and at least one blue (B) LED, wherein each of the RGB values ranges from 0 to 255, with colorless display (without brightness) denoted by 0. In other words, given RGB values (0, 0, 0), a color LED lamp turns black as perceived with the naked eye. 
         [0027]    Given RGB values (255, 255, 255), a color LED lamp turns white as perceived with the naked eye. The color LED lamp disclosed in the present invention comprises at least one red (R) LED, at least one green (G) LED, and at least one blue (B) LED. The present invention is exemplified by the LEDs. 
         [0028]    As regards methodology of control, the 3-axis accelerometer sensor of the present invention retrieves data relating to acceleration along the X-axis, Y-axis, and Z-axis, and the retrieved acceleration-related data is defined so as to range between 0 and 255 and match with RGB values of an LED lamp. In this regard, the present invention proposes a control method for defining a correlation between the data retrieved along the X-axis, Y-axis, and Z-axis by the 3-axis accelerometer sensor and the RGB values. 
         [0029]    To convert the correlation between data retrieved along the X-axis, Y-axis, and Z-axis by a 3-axis accelerometer sensor and RGB values into colors displayed by a color LED, the present invention discloses controlling the three colors of RGB by means of the data retrieved along the X-axis, Y-axis, and Z-axis respectively, namely controlling the red (R) color by means of the data retrieved along the X-axis, controlling the green (G) color by means of the data retrieved along the Y-axis, and controlling the blue (B) color by means of the data retrieved along the Z-axis. The present invention further discloses selecting a specific range of acceleration sensed by the 3-axis accelerometer sensor and matching the specific range of acceleration with a specific range of RGB values, as described in detail below. 
         [0030]    The step of matching acceleration sensed by the 3-axis accelerometer sensor with color and variation thereof is exemplified herein by the red (R) color. According to the present invention, acceleration X sensed by the 3-axis accelerometer sensor is linearly correlated with the R value of the RGB values, as expressed by: 
         [0000]      ( Xu−X )/( X−X 1)=( Ru−R )/( R−R 1) 
         [0000]    wherein R denotes a dependent variable, X denotes an independent variable and is the acceleration sensed by the 3-axis accelerometer sensor, Xu denotes the upper limit of X and is set to 1 g, X 1  denotes the lower limit of X and is set to 0 g, Ru denotes the upper limit of red value and is set to 255, and R 1  denotes the lower limit of red value and is set to 150. Acceleration X is substituted into the above equation to derive R. G value and B value are derived likewise. 
         [0031]    The present invention further discloses selecting a specific range of g value (the acceleration sensed by the 3-axis accelerometer sensor), so as to effectuate a special effect, such as displaying a specific range of colors or brightness compulsorily, as shown in Table 2. 
         [0000]    
       
         
               
               
             
           
               
                 TABLE 2 
               
               
                   
               
               
                 Control Method and Effect 
                 Color or Range 
               
               
                   
               
             
             
               
                 If the accelerometer sensor moves in the +X 
                 X = 0.00 g~1.00 g matched 
               
               
                 direction, bright blue light will be on. 
                 with B = 200~255 
               
               
                 If the accelerometer sensor moves in the −Z 
                 Z = 0.00 g~−1.00 g 
               
               
                 direction, dark red light will be on. 
                 matched with R = 100~200 
               
               
                 Low average acceleration V is accompanied 
                 V &lt; .2 g, brightness = 20% 
               
               
                 by correspondingly low brightness. 
               
               
                 High average acceleration V is 
                 V &gt; .8 g, brightness = 80% 
               
               
                 accompanied by correspondingly high 
               
               
                 brightness. 
               
               
                 Variable average acceleration V is 
                 V = .2 g~.8 g, brightness = 
               
               
                 accompanied by correspondingly variable 
                 20%~80% 
               
               
                 brightness. 
               
               
                   
               
             
          
         
       
     
         [0032]    Variation of brightness is controlled according to the present invention in eight modes as follows: 
       Brightness Variation 1: Average Absolute Acceleration 
       [0033]    Variation of brightness is defined by the differentiation between average acceleration AA(AA=(|Ax|+|Ay|+|Az|)/3) and acceleration along each of the three axes. The rule of variation is defined as follows: 
         [0000]      ( AAu−AA )/( AA−AA 1)=( Bu−Ba )/( Ba−B 1) 
         [0000]    wherein AAu denotes the upper limit of AA and equals 0.8 g, AA 1  denotes the lower limit of AA and equals 0.2 g, Ba denotes the overall brightness of the three colors of RGB, Bu denotes the upper limit of Ba and equals 80%, and B 1  denotes the lower limit of Ba and equals 20%. 
         [0034]    After brightness has been calculated, specified RGB values are set with the calculated brightness. First, RGB values (197, 135, 22) are set as standard values corresponding to 100% brightness. Then, correlation between brightness and RGB values is calculated as follows: R/197=Ba/100%, G/135=Ba/100%, and B/22=Ba/100%. Note that a calculated R, G, or B value will be compulsorily set to 255 if the calculated R, G, or B value exceeds 255. In so doing, specific and proper RGB values can be obtained using Ba. 
       Brightness Variation 2: Vector Acceleration 
       [0035]    Brightness variation 2 is similar to brightness variation 1 except that brightness variation 2 involves calculating vector acceleration VA, instead of average absolute acceleration, by calculating a mathematic norm, wherein 
         [0000]        VA =√{square root over ( )}( Ax   2   +Ay   2   +Az   2 ), 
         [0000]    and the vector acceleration is correlated with the range of brightness, as expressed by the equation below: 
         [0000]      ( VAu−VA )/( VA−VA 1)=( Bu−Ba )/( Ba−B 1) 
         [0000]    wherein 
         [0036]    VAu=upper limit of vector acceleration, and 
         [0037]    VA 1 =lower limit of vector acceleration. 
       Brightness Variation 3: Differentiation Between Consecutive Points of Time in Vector Acceleration 
       [0038]    Brightness variation 3 involves adjusting brightness using differentiation in vector acceleration between two consecutive datasets. 
         [0039]    Where acceleration is measured at two points of time, 
         [0040]    t 1 =point of time  1   
         [0041]    t 2 =point of time  2   
         [0000]    Accelerations at point of time  1 : 
         [0042]    Ax t1 =acceleration along X-axis at point of time  1   
         [0043]    Ay t1 =acceleration along Y-axis at point of time  1   
         [0044]    Az t1 =acceleration along Z-axis at point of time  1   
         [0000]    Accelerations at point of time  2 : 
         [0045]    Ax t2 =acceleration along X-axis at point of time  2   
         [0046]    Ay t2 =acceleration along Y-axis at point of time  2   
         [0047]    Az t2 =acceleration along Z-axis at point of time  2   
         [0000]    Vector accelerations at the two points of time: 
         [0000]        VA   t1 =√{square root over ( )}(( Ax   t1 ) 2 +( Ay   t1 ) 2 +( Az   t1 ) 2 ) 
         [0000]        VA   t2 =√{square root over ( )}(( Ax   t2 ) 2 +( Ay   t2 ) 2 +( Az   t2 ) 2 ) 
         [0000]    Differentiation in vector acceleration between the two points of time is defined as: 
         [0000]    
       
      
       DA=VA 
       t2 
       −VA 
       t1  
      
     
         [0000]    An equation of its brightness range is as follows: 
         [0000]      ( DAu−DA )/( DA−DA 1)=( Bu−Ba )/( Ba−B 1) 
         [0000]    wherein 
         [0048]    DAu=upper limit of differentiation in acceleration, and 
         [0049]    DA 1 =lower limit of differentiation in acceleration. 
       Brightness Variation 4: Differentiation Between Consecutive Points of Time in Acceleration Along the Three Axes 
       [0050]    Brightness variation 4 is similar to brightness variation 3 except that brightness variation 4 involves adjusting brightness of the three colors of RGB using the differentiation in acceleration along the three axes DAx, DAy, DAz respectively. 
         [0051]    Differentiation between two points of time in acceleration along the three axes are defined as follows: 
         [0052]    DAx=Ax t2 −Ax t1 =differentiation in acceleration along X-axis 
         [0053]    DAy=Ay t2 −Ay t1 =differentiation in acceleration along Y-axis 
         [0054]    DAz=Az t2 −Az t1 =differentiation in acceleration along Z-axis 
         [0055]    Brightness of different colors can be adjusted so as to acquire different color effects. 
         [0000]      ( DAu−DAx )/( DAx−DA 1)=( Bu−Br )/( Br−B 1) 
         [0000]      ( DAu−DAy )/( DAy−DA 1)=( Bu−Bg )/( Bg−B 1) 
         [0000]      ( DAu−DAz )/( DAz−DA 1)=( Bu−Bb )/( Bb−B 1) 
         [0000]    wherein 
         [0056]    DAu=upper limit of differentiation in acceleration, 
         [0057]    DA 1 =lower limit of differentiation in acceleration, 
         [0058]    Br=brightness of red, 
         [0059]    Bg=brightness of green, 
         [0060]    Bb=brightness of blue, 
         [0061]    Bu=upper limit of brightness, and 
         [0062]    B 1 =lower limit of brightness. 
         [0063]    In the event of variation 1, correlation between brightness and RGB values is expressed as follows: 
         [0000]        R/ 197 =Br/ 100%, 
         [0000]        G/ 135 =Bg/ 100%, and 
         [0000]        B/ 22 =Bb/ 100%. 
       Brightness Variation 5: Average Velocity 
       [0064]    Velocity is calculated from acceleration. Assuming that acceleration at the middle between two consecutive points of time is a constant, and that velocity is zeroed at point of time  1 . Hence, velocity can be calculated using the constant acceleration equation expressed below: 
         [0000]    
       
      
       Vf=Vi+At  
      
     
         [0000]    wherein 
         [0065]    Vf=terminal velocity, 
         [0066]    Vi=initial velocity, 
         [0067]    A=accelerations Ax, Ay, Az, and 
         [0068]    t=time. 
         [0000]    Assuming accelerations at three consecutive points of time are: 
         [0069]    t 0 =0.000 second, Ax=0.00 g 
         [0070]    t 1 =0.025 second, Ax=0.01 g 
         [0071]    t 2 =0.050 second, Ax=0.52 g 
         [0072]    t 3 =0.075 second, Ax=1.13 g 
         [0000]    Assuming that velocity is zeroed at t 0 , with g=9.8 m/s 2 , velocities along the three axes at the three points of time, Vx t1 , Vx t2 , Vx t3 , are calculated as follows: 
         [0000]        Vx   t1   =Vx   t0 +(( Ax )*( t )) 
         [0000]        Vx   t1 =0.00+((0.01)(9.8)*(0.025)) 
         [0000]        Vx   t1 =0.00245 m/s 
         [0000]        Vx   t2   =Vx   t1 +(( Ax )*( t )) 
         [0000]        Vx   t2 =0.00245+((0.52)(9.8)*(0.025)) 
         [0000]        Vx   t2 =0.12985 m/s 
         [0000]        Vx   t3   =Vx   t2 +(( Ax )*( t )) 
         [0000]        Vx   t3 =0.12985+((1.13)(9.8)*(0.025)) 
         [0000]        Vx   t3 =0.4067 m/s 
         [0073]    Upon acquisition of the velocities along their respective axes, brightness can be calculated by means of average absolute velocity at individual points of time: 
         [0000]        AV =(| Vx|+|Vy|+|Vz |)/3, wherein  AV =average absolute velocity. 
         [0000]    An equation of its brightness range is as follows: 
         [0000]      ( AVu−AV )/( AV−AV 1)=( Bu−Ba )/( Ba−B 1) 
         [0000]    wherein 
         [0074]    AVu=upper limit of average absolute velocity, and 
         [0075]    AV 1 =lower limit of average absolute velocity. 
       Brightness Variation 6: Vector Velocity 
       [0076]    Brightness variation 6 is similar to brightness variation 5 except that brightness variation 6 involves calculating vector velocity VV, instead of average absolute velocity, using a mathematic norm, wherein 
         [0000]        VV =√{square root over ( )}( Vx   2   +Vy   2   +Vz   2 ) and  VV =vector velocity. 
         [0000]    An equation of its brightness range is as follows: 
         [0000]      ( VVu−VV )/( VV−VV 1)=( Bu−Ba )/( Ba−B 1) 
         [0000]    wherein 
         [0077]    VVu=upper limit of vector velocity, and 
         [0078]    VV 1 =lower limit of vector velocity. 
       Brightness Variation 7: Differentiation Between Consecutive Points of Time in Vector Velocity 
       [0079]    Brightness variation 7 involves adjusting brightness using differentiation DV in vector velocity between two consecutive datasets. 
         [0080]    Assuming velocities along the three axes at two points of time are calculated as follows: 
         [0081]    At point of time  1 , 
         [0082]    Vx t1 =velocity along X-axis=0.012 m/s 
         [0083]    Vy t1 =velocity along Y-axis=0.503 m/s 
         [0084]    Vz t1 =velocity along Z-axis=0.111 m/s 
         [0085]    At point of time  2 , 
         [0086]    Vx t2 =velocity along X-axis=0.020 m/s 
         [0087]    Vy t2 =velocity along Y-axis=1.150 m/s 
         [0088]    Vz t1 =velocity along Z-axis=0.412 m/s 
         [0089]    Differentiation in vector velocity is calculated as follows: 
         [0090]    VV t1 =vector velocity at point of time  1   
         [0000]        VV   t1 =√{square root over ( )}(( Vx   t1 ) 2 +( Vy   t1 ) 2 +( Vz   t1 ) 2 ) 
         [0000]        VV   t1 =√{square root over ( )}((0.012) 2 +(0.503) 2 +(0.111) 2 ) 
         [0000]        VV   t1 =0.515 m/s 
         [0091]    VV t2 =vector velocity at point of time  2   
         [0000]        VV   t2 =√{square root over ( )}(( Vx   t2 ) 2 +( Vy   t2 ) 2 +( Vz   t2 ) 2 ) 
         [0000]        VV   t2 =√{square root over ( )}((0.020) 2 +(1.150) 2 +(0.412) 2 ) 
         [0000]        VV   t2 =1.222 m/s 
         [0092]    Differentiation in vector velocity is defined as: 
         [0000]    
       
      
       DV=VV 
       t2 
       −VV 
       t1  
      
     
         [0000]        DV= 1.222 m/s−0.515 m/s 
         [0000]        DV= 0.707 m/s 
         [0093]    An equation of its brightness range is as follows: 
         [0000]      ( DVu−DV )/( DV−DV 1)=( Bu−Ba )/( Ba−B 1) 
         [0000]    wherein 
         [0094]    DVu=upper limit of differentiation in vector velocity, and 
         [0095]    DV 1 =lower limit of differentiation in vector velocity. 
       Brightness Variation 8: Differentiation Between Consecutive Points of Time in Velocity Along the Three Axes 
       [0096]    Brightness variation 8 is similar to brightness variation 7 except that brightness variation 8 involves adjusting brightness of the three colors of RGB using the differentiation in velocity along the three axes DVx, DVy, DVz respectively. 
         [0097]    Differentiation between two points of time in velocity along X-axis, Y-axis, and Z-axis are defined as follows: 
         [0098]    DVx=Vx t2 −Vx t1 =differentiation in velocity along X-axis 
         [0099]    DVy=Vy t2 −Vy t1 =differentiation in velocity along Y-axis 
         [0100]    DVz=Vz t2 −Vz t1 =differentiation in velocity along Z-axis 
         [0101]    Brightness of different colors can be adjusted, so as to acquire different color effects. 
         [0000]      ( DVu−DVx )/( DVx−DV 1)=( Bu−Br )/( Br−B 1) 
         [0000]      ( DVu−DVy )/( DVy−DV 1)=( Bu−Bg )/( Bg−B 1) 
         [0000]      ( DVu−DVz )/( DVz−DV 1)=( Bu−Bb )/( Bb−B 1) 
         [0000]    wherein 
         [0102]    DVu=upper limit of differentiation in velocity, 
         [0103]    DV 1 =lower limit of differentiation in velocity, 
         [0104]    Br=brightness of red, 
         [0105]    Bg=brightness of green, 
         [0106]    Bb=brightness of blue, 
         [0107]    Bu=upper limit of brightness, and 
         [0108]    B 1 =lower limit of brightness. 
         [0109]    In the event of variation 1, correlation between brightness and RGB values is expressed as follows: 
         [0000]        R/ 197 =Br/ 100%, 
         [0000]        G/ 135 =Bg/ 100%, and 
         [0000]        B/ 22 =Bb/ 100%. 
         [0110]    Using the above method, any color, and brightness thereof, of a lamp based on the three colors of RGB can be controlled with a 3-axis accelerometer sensor. 
         [0111]    The foregoing specific embodiments are only illustrative of the features and functions of the present invention but are not intended to restrict the scope of the present invention. All equivalent modifications and variations made in the foregoing embodiments according to the spirit and principles of the present invention should fall within the scope of the appended claims.