Abstract:
A method for implementing a mouse algorithm using a plurality of pressure sensors is disclosed. The pressure sensors are used to freely move and rotate a mouse cursor in X, Y and Z directions, so that they can be applied as interface units for a slim device such as a mobile phone. The mouse algorithm processes a touch input. The pressure sensors are arranged in a ring shape and provide output values successively varying with magnitudes of forces applied thereto or pressures applied thereto. A moving direction of the mouse cursor is determined depending on a contact point detected through the output values and a moving distance and moving speed of the mouse cursor are determined in proportion to the magnitudes of the forces.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    1. Field of the Invention 
         [0002]    The present invention relates to a mouse algorithm implementation method, and more particularly to a method for implementing a mouse algorithm using a plurality of pressure sensors, in which the pressure sensors are used to freely move and rotate a mouse cursor in X, Y and Z directions, so that they can be applied as interface units for a slim device such as a mobile phone. 
         [0003]    2. Description of the Related Art 
         [0004]    Nowadays, in computer systems, there are various types of input units that perform input operations. These operations generally correspond to selections on a display screen by the movement of a cursor, and include a page turning function, scroll function, panning function, zooming function, etc. 
         [0005]    In general, the input units include a button, switch, keyboard, mouse, trackball, joystick, etc. 
         [0006]    Here, the button and switch are generally mechanical, so that they have the disadvantage of being limited in being controlled to move the cursor or make selections. For example, the button or switch provides only a function of moving the cursor in a specific direction using a key such as an arrow direction key or making a specific selection using a key such as an Enter key, Delete key or number key. 
         [0007]    On the other hand, when the user moves the mouse along the surface, an input pointer is moved corresponding to the relative movement of the mouse. Also, when the user moves the trackball within the housing, the input pointer is moved corresponding to the relative movement of the trackball. 
         [0008]    These mouse and trackball each have one or more buttons for performing a selection function. In particular, the mouse includes a scroll wheel which can be rolled forward and backward to move the input pointer through a graphical user interface. 
         [0009]      FIG. 7A  is a perspective view of a conventional multifunctional mouse that has the input pointer moving function, selection function and scroll function based on the position recognition as stated above. This conventional multifunctional mouse requires a relatively wide mouse pad such as a desk or table. As a result, it is difficult to apply the conventional mouse using the position recognition to a mobile device, because the mobile device is limited in size. 
         [0010]      FIG. 7B  is a perspective view of a conventional joystick that manipulates the cursor using force. This conventional joystick is also so thick that it cannot be applied to a mobile device which gradually becomes slim. Also, there is a limitation in designing and developing the joystick in consideration of a GUI environment. 
         [0011]    Therefore, there is a need to develop an input unit capable of recognizing the movements and rotations of the cursor in X, Y and Z directions through force-based pressure sensing using slimmable pressure sensors as shown in  FIG. 8 , and an algorithm capable of sensing such. 
       SUMMARY OF THE INVENTION 
       [0012]    Therefore, the present invention has been made in view of the above problems, and it is an object of the present invention to provide a method for implementing a mouse algorithm using a plurality of pressure sensors, the pressure sensors, in which the mouse algorithm is implemented to freely move and rotate a mouse cursor in X, Y and Z directions using the pressure sensors, so that the pressure sensors can be applied as interface units for a slim device such as a mobile phone. 
         [0013]    In accordance with the present invention, the above and other objects can be accomplished by the provision of a method for implementing a mouse algorithm using a plurality of pressure sensors, the pressure sensors functioning as a mouse, the mouse algorithm processing a touch input of the pressure sensors, the method comprising calculating a force vector of a contact point based on a magnitude and direction of force touching the pressure sensors and sensing touch input information regarding a moving direction and moving distance of a mouse cursor based on the calculated force vector. 
         [0014]    Preferably, the step of calculating a moving direction and moving distance of the mouse cursor comprises: obtaining force vectors ( . . . , F i , F i+1 , . . . , F k , F k+1 , . . . ) having magnitudes ( . . . , |F i |, |F i+1 |, . . . , |F k |, |F k+1 |, and X-axis angles ( . . . , θ i , θ i+1 , . . . , θ k , θ k+1 , . . . ) from a plurality of pressure sensors ( . . . , A i , A i+1 , . . . , A k , A k+1 , . . . ) around the contact point, respectively; obtaining differences ( . . . , ΔF i , ΔF i+1 , . . . ) among the obtained force vectors and calculating a force vector (F max ) having a sum (|F max |) of the magnitudes of the force vectors of the pressure sensors around the contact point and an X-axis angle (θ max ) from the obtained differences, the force vector (F max ) being the force vector of the contact point; and calculating the moving direction and moving distance of the mouse cursor using the calculated force vector (F max ) having the magnitude sum (|F max |) and the X-axis angle (θ max ). 
         [0015]    Alternatively, the step of calculating the moving direction and moving distance of the mouse cursor may comprise: finding a force vector (F i+1 ) of an (i+1)th sensor (A i+1 ) having a maximum magnitude of force, among a plurality of pressure sensors around the contact point, and force vectors (F i  and F i+2 ) of an ith sensor (A i ) and (i+2)th sensor (A i+2 ) located at both sides of the (i+1)th sensor (A i+1 ); calculating a force vector (F max ) having a sum (|F max |) of magnitudes of the force vectors of the ith sensor, (i+1)th sensor and (i+2)th sensor and an X-axis angle (θ max ), the force vector (F max ) being the force vector of the contact point; and calculating the moving direction and moving distance of the mouse cursor using the calculated force vector (F max ) having the magnitude sum (|F max |) and the X-axis angle (θ max ). 
         [0016]    As another alternative, the step of calculating the moving direction and moving distance of the mouse cursor may comprise: finding a force vector (F i+1 ) of an (i+1)th sensor (A i+1 ) having a maximum magnitude of force, among a plurality of pressure sensors around the contact point, and force vectors (F i  and F i+2 ) of an ith sensor (A i ) and (i+2)th sensor (A i+2 ) located at both sides of the (i+1)th sensor (A i+1 ); obtaining a magnitude distribution function F(θ)=aθ+a 1 θ+a 2 θ 2  by fitting force magnitudes of the ith sensor, (i+1)th sensor and (i+2)th sensor to a quadratic curve; obtaining an X-axis angle (θ max ) where the maximum force magnitude is present; obtaining a force vector (F max ) having a maximum magnitude |F max | at the angle (θ max ) from the magnitude distribution function, the force vector (F max ) being the force vector of the contact point; and calculating the moving distance and direction of the mouse cursor using the obtained force vector (F max ) having the magnitude (|F max |) and the X-axis angle (θ max ). 
         [0017]    The step of calculating the moving direction and moving distance of the mouse cursor may comprise calculating the moving distance of the mouse cursor based on the magnitude sum or maximum magnitude (|F max |) and calculating the moving direction of the mouse cursor based on the X-axis angle (θ max ), or calculating the moving distance of the mouse cursor based on |F max |cosθ max +|F max |sinθ max  which is a sum of an X component magnitude and a Y component magnitude of the force vector (F max ) and calculating the moving direction of the mouse cursor based on the X-axis angle (θ max ). 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0018]    The above and other objects, features and other advantages of the present invention will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which: 
           [0019]      FIGS. 1A and 1B  are views illustrating a method for implementing a mouse algorithm using a plurality of pressure sensors according to a first embodiment of the present invention; 
           [0020]      FIGS. 2A and 2B  are views illustrating a method for implementing a mouse algorithm using a plurality of pressure sensors according to a second embodiment of the present invention; 
           [0021]      FIG. 3  is a view illustrating a method for implementing a mouse algorithm using a plurality of pressure sensors according to a third embodiment of the present invention; 
           [0022]      FIGS. 4A and 4B  are views illustrating a method for implementing a mouse algorithm using a plurality of pressure sensors according to a fourth embodiment of the present invention; 
           [0023]      FIG. 5  is a view illustrating a method for implementing a mouse algorithm using a plurality of pressure sensors according to a fifth embodiment of the present invention; 
           [0024]      FIG. 6  is a view illustrating a method for implementing a mouse algorithm using a plurality of pressure sensors according to a sixth embodiment of the present invention; 
           [0025]      FIG. 7A  is a perspective view of a conventional multifunctional mouse; 
           [0026]      FIG. 7B  is a perspective view of a conventional joystick; 
           [0027]      FIG. 8  is a view showing an X, Y and Z-movable and rotatable slim mouse using a plurality of pressure sensors including a plurality of force sensors according to the present invention; 
           [0028]      FIG. 9A  is a view showing the plurality of pressure sensors according to the fifth embodiment of the present invention; and 
           [0029]      FIG. 9B  is a view showing a slim mouse for a mobile phone using the plurality of pressure sensors according to the fifth embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0030]    The present invention provides a method for implementing an algorithm for processing a touch input of a plurality of pressure sensors including a plurality of force sensors. This algorithm is implemented to calculate a force vector of a contact point based on the magnitude and direction of force touching the pressure sensors and sense touch input information regarding the moving distance and direction of a mouse cursor based on the calculated force vector. 
         [0031]      FIGS. 1 to 3  are views illustrating methods for implementing mouse algorithms using pressure sensors, more particularly methods for implementing mouse algorithms of unit cell pressure sensors according to first to third embodiments of the present invention, respectively. A force vector of a contact point can be calculated based on the magnitude of force in the following manner. 
         [0032]    The first embodiment of the present invention will hereinafter be described with reference to  FIGS. 1A and 1B . First, as shown in  FIG. 1A , force vectors F i , F i+1 , F k  and F k+1  having magnitudes |F i |, |F i+1 |, |F k | and |F k+1 | and X-axis angles θ i , θ i+1 , θ k  and θ k+1 are obtained from arbitrary sensors A i , A i+1 , A k  and A k+1  representing the outputs of force, among the plurality of pressure sensors, respectively. 
         [0033]    Then, the X-axis angles θ i  and θ i+1  and magnitudes |F i −F k | and |F i+1 −F k+1 | of force vectors ΔF i  and ΔF i+1  are calculated using the force vectors F i , F k , F i+1  and F k+1 , as shown in  FIG. 1B . 
         [0034]    Then, a force vector F max  of the contact point having an X-axis angle θ max  and a magnitude |F max | is calculated using the X-axis angles θ i  and θ i+1  and magnitudes |F i −F k | and |F i+1 −F k+1 | of the vectors ΔF i  and ΔF i+1 , and the moving distance and direction of a mouse cursor are sensed from the calculated force vector F max . 
         [0035]    Here, the moving distance of the mouse cursor may be calculated based on the magnitude |F max | and the moving direction of the mouse cursor may be calculated based on the X-axis angle θ max , or the magnitude |F max | may be defined as |F max |cosθ max +|F max |sinθ max  which is the sum of an X component magnitude and a Y component magnitude of the force vector F max . This means that the mouse cursor can be moved in a rotation direction by adjusting the moving distance of the mouse cursor in X and Y directions. 
         [0036]    The second embodiment of the present invention will hereinafter be described with reference to  FIGS. 2A and 2B . First, a force vector F i+1  of an (i+1)th sensor A i+1  having a maximum magnitude of force, among a plurality of pressure sensors around the contact point, and force vectors F i  and F i+2  of an ith sensor A i  and (i+2)th sensor A i+2  located at both sides of the (i+1)th sensor A i+1  are found as shown in  FIG. 2A . 
         [0037]    Then, a force vector F max  having the sum |F max | of the magnitudes of the force vectors F i+1 , F i  and F i+2  of the (i+1)th sensor A i+1 , ith sensor A i  and (i+2)th sensor A i+2  and an X-axis angle θ max  is calculated as shown in  FIG. 2B . 
         [0038]    Then, the moving distance and direction of a mouse cursor are calculated using the force vector F max . Here, the moving distance of the mouse cursor may be calculated based on the magnitude sum |F max | and the moving direction of the mouse cursor may be calculated based on the X-axis angle θ max , or the magnitude sum |F max | may be defined as |F max |cosθ max +|F max |sinθ max  which is the sum of an X component magnitude and a Y component magnitude of the force vector F max . This means that the mouse cursor can be moved in a rotation direction by adjusting the moving distance of the mouse cursor in X and Y directions. 
         [0039]    Referring to  FIG. 3 , in the third embodiment of the present invention, a force vector F i+1  of an (i+1)th sensor A i+1  having a maximum magnitude of force, among a plurality of pressure sensors around the contact point, and force vectors F i  and F i+2  of an ith sensor A i  and (i+2)th sensor A i+2  located at both sides of the (i+1)th sensor A i+1  are found. 
         [0040]    Then, a magnitude distribution function F(θ)=aθ+a 1 θ+a 2 θ 2  is obtained by fitting force magnitudes |F i |, |F i+1 | and |F i+2 | corresponding respectively to the coordinates of the ith sensor A i , (i+1)th sensor A i+1  and (i+2)th sensor A i+2  to a quadratic curve. 
         [0041]    Then, an X-axis angle θ max  where the maximum force magnitude is present is obtained, a force vector F max  having a maximum magnitude |F max | at the angle θ max  is obtained from the magnitude distribution function, and the moving distance and direction of a mouse cursor are calculated using the obtained force vector F max . 
         [0042]    Here, the moving distance of the mouse cursor may be calculated based on the magnitude |F max | or |F max |cosθ max +|F max |sinθ max  which is the sum of an X component magnitude and a Y component magnitude of the force vector F max , and the moving direction of the mouse cursor may be calculated based on the angle θ max . This means that the mouse cursor can be moved in a rotation direction by adjusting the moving distance of the mouse cursor in X and Y directions. 
         [0043]      FIGS. 4A and 4B  are views illustrating a method for implementing a mouse algorithm using a plurality of pressure sensors according to a fourth embodiment of the present invention. Referring to  FIG. 4A , the pressure sensors used in the fourth embodiment of the present invention includes four sensors A 1 , A 2 , A 3  and A 4 . A force vector of a contact point can be calculated based on the magnitude of force in the following manner. 
         [0044]    The four sensors A 1 , A 2 , A 3  and A 4  have the following force vectors: the first sensor has F 1 , the second sensor F 2 , the third sensor F 3 , and the fourth sensor F 4 . In the present embodiment, the force vector F 2  of the second sensor A 2  has a maximum magnitude and the force vector F 1  of the first sensor A 1  has a lesser magnitude. 
         [0045]    Then, referring to  FIG. 4B , the magnitudes |F 1 −F 3 | and |F 2 −F 4 | of force vectors ΔF 1  and ΔF 2  are calculated. Here, the force vector ΔF 1  has an angle of 0° and the force vector ΔF 2  has an angle of 90°. 
         [0046]    Then, the X-axis angle θ max  and magnitude |F max | of a force vector F max  are calculated using the angles 0° and 90° and magnitudes |F 1 −F 3 | and |F 2 −F 4 | of the vectors ΔF 1  and ΔF 2 . 
         [0047]    Here, the magnitude |F max | is defined as |ΔF 1 |+|ΔF 2 | or √{square root over (|ΔF 1 | 2 +|ΔF 2 | 2 )}. 
         [0048]    Also, 
         [0000]    
       
         
           
             
               θ 
               max 
             
             = 
             
               
                 
                   tan 
                   
                     - 
                     1 
                   
                 
                  
                 
                   ( 
                   
                     
                        
                       
                         
                           F 
                           2 
                         
                         - 
                         
                           F 
                           4 
                         
                       
                        
                     
                     
                        
                       
                         
                           F 
                           1 
                         
                         - 
                         
                           F 
                           3 
                         
                       
                        
                     
                   
                   ) 
                 
               
               . 
             
           
         
       
     
         [0000]    The direction and magnitude components of force of the contact point are obtained using the X-axis angle θ max  and magnitude |F max |. 
         [0049]    Here, the X direction component of the contact point is |F 1 −F 3 |, which is an X component of the force vector F max , and the Y direction component of the contact point is |F 2 −F 4 |, which is a Y component of the force vector F max . As a result, the moving distance of a mouse cursor in an X direction is |F 1 −F 3 | which is the X component of the force vector F max , and the moving distance of the mouse cursor in a Y direction is |F 2 −F 4 | which is the Y component of the force vector F max . 
         [0050]    On the other hand, the moving distance of the mouse cursor in a Z direction using the four sensors can be expressed by the average of the sum of the magnitudes of the force vectors of the four sensors. Here, the Z direction movement is established only in one side direction. 
         [0051]    In the first to fourth embodiments of the present invention, the movements and rotations of the mouse cursor in the X, Y and Z directions are sensed through successive contact sensing of the pressure sensors. In the case where the magnitude of force detected from at least one of the plurality of pressure sensors is in the form of an impulse signal or a Z direction magnitude detected therefrom is larger than or equal to a reference value, the current operation is recognized as a click. 
         [0052]    The addition of the click recognition function as stated above makes it possible to open or close a file on the screen using the pressure sensors, like using a mouse in an existing computer. 
         [0053]    Alternatively, as shown in  FIG. 5 , in addition to the four force sensors A 1 , A 2 , A 3  and A 4 , a fifth sensor A 5  may be installed at the center of the pressure sensors so as to be utilized as a clock recognition unit. 
         [0054]    For example, when a contact on the fifth sensor A 5  is sensed, it can be recognized as a click to open or close a file on the screen. Meanwhile, when the fifth sensor A 5  is clicked and any one of the second and fourth sensors A 2  and A 4  is then pushed, scrolling can be performed in a direction set by the pushed sensor. 
         [0055]    Also, in the case where the mouse cursor is required to be moved in a three-dimensional space, the mouse cursor is moved in the X and Y directions using the four force sensors as shown in  FIG. 4  and the Z direction moving distance of the mouse cursor is defined by the magnitude of a force vector of the fifth sensor. Here, the Z direction movement is established only in one side direction. 
         [0056]    As another alternative, as shown in  FIG. 6 , the mouse cursor may be moved in the X, Y and Z directions and the rotation direction using a plurality of pressure sensors including the four force sensors A 1 , A 2 , A 3  and A 4 , and four sensors A 5 , A 6 , A 7  and A 8  located at the outside of the sensors A 1 , A 2 , A 3  and A 4 . In this case, the click and scroll functions can be performed as in the existing mouse. 
         [0057]    The first to fourth A 1 , A 2 , A 3  and A 4  can be used to move the mouse cursor in the X and Y directions and the rotation direction, as shown in  FIG. 5 . The one-side Z direction movement and moving distance of the mouse cursor are determined based on the direction and magnitude of a force vector of the sixth sensor A 6 , and the other-side Z direction movement and moving distance of the mouse cursor are determined based on the direction and magnitude of a force vector of the eighth sensor A 8 . 
         [0058]    On the other hand, the click function and scroll function can be carried out while the cursor is moved on an X-Y plane, as in the existing mouse. That is, the click function is assigned to any one of the fifth to eighth sensors A 5 , A 6 , A 7  and A 8 , and performed when a contact on the assigned sensor is sensed. Therefore, it is possible to open or close a file on the screen through the click recognition, as in the existing mouse. 
         [0059]    Alternatively, a specific one of the fifth to eighth sensors A 5 , A 6 , A 7  and A 8  may be set as a click recognition sensor. In this case, the click function is performed when a contact on the specific sensor is sensed, and the scroll function is performed when contacts on the other sensors are sensed. For example, in the case where the fifth sensor A 5  and seventh sensor A 7  are set for the click recognition, the scroll function of the existing mouse can be performed using the sixth sensor A 6  and eighth sensor A 8 . 
         [0060]      FIG. 9A  shows a plurality of pressure sensors made using four sensors A 1 , A 2 , A 3  and A 4  and a fifth sensor A 5  located at the center thereof.  FIG. 9B  shows a slim mouse for a mobile phone using the pressure sensors. 
         [0061]    When a contact on the fifth sensor A 5  is sensed, it can be recognized as a click to open or close a file on the screen. Meanwhile, when the fifth sensor A 5  is clicked and any one of the second and fourth sensors A 2  and A 4  is then pushed, scrolling can be performed in a direction set by the pushed sensor. 
         [0062]    As apparent from the above description, according to the present invention, a mouse algorithm is implemented to freely move and rotate a mouse cursor in X, Y and Z directions using a plurality of pressure sensors, so that the pressure sensors can be applied as an interface unit for a slim device such as a mobile phone. Therefore, the pressure sensors can replace an existing mouse or joystick so as to be applied to a GUI environment. 
         [0063]    Although the preferred embodiments of the present invention have been disclosed for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the scope and spirit of the invention as disclosed in the accompanying claims.