Pressing position estimation system, pressing position estimation method, and pressing position estimation program
The pressure position estimation system addresses multi-finger typing on software keyboards by detecting and calculating load differences from touch panel pressure, enabling accurate pressed position estimation.
Patent Information
- Application Number
- JP2024057977
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-29
- Publication Date
- 2025-10-10
AI Technical Summary
Conventional software keyboards assume single-point touch input, preventing simultaneous multi-finger typing like hardware keyboards, necessitating a method to detect multiple touch positions on a screen.
A pressure position estimation system using a touch panel and pressure sensor to detect and calculate load differences between initial and maximum pressure amounts, determining valid pressure positions based on these loads.
Enables accurate estimation of pressed positions even with multiple touches, supporting multi-finger typing on software keyboards.
Smart Images

Figure 2025154786000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a technique for detecting pressure. [Background technology]
[0002] Conventionally, software keyboards displayed on a computer screen have been used to input characters, etc. For example, Patent Document 1 discloses a touch panel that, when a user touches the software keyboard, calculates the coordinates of the touched position, identifies the touched key, and executes processing according to the touched key. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2009-122890 Summary of the Invention [Problem to be solved by the invention]
[0004] A software keyboard such as that disclosed in Patent Document 1 is designed on the assumption that a user will touch only one point on the screen at a time. Therefore, a user cannot place all five fingers of both hands on the keyboard and press keys, as is the case with a hardware keyboard. To enable such an operation with a software keyboard, it is necessary to detect the pressed positions when a user touches multiple points on the screen at the same time and presses the screen.
[0005] An object of the present invention is to provide a technique that can estimate a pressed position even when there are multiple touch positions. [Means for solving the problem]
[0006] The pressure position estimation system of the present invention comprises a touch panel that detects a touch position on a detection surface and a quantity related to the pressure position on the detection surface; a pressure sensor that detects a pressure amount on the detection surface; a load calculation unit that, when the pressure position is continuously detected, continuously acquires the pressure amount from the pressure sensor, holds the pressure amount first acquired when the pressure position is continuously detected as an initial value, holds the largest pressure amount acquired when the pressure position is continuously detected as a maximum value, calculates the difference between the maximum value and the initial value as a load, and links the load to the pressure position; and a determination unit that determines the validity of the pressure position based on the load.
[0007] The pressure position estimation method of the present invention is a pressure position estimation system that includes a touch panel that detects a touch position on a detection surface and a quantity related to the pressure position on the detection surface, a pressure sensor that detects a pressure amount on the detection surface, and a processing unit, and the processing unit performs the following steps: when the pressure position is continuously detected, continuously acquires the pressure amount from the pressure sensor, holds the pressure amount that was first acquired when the pressure position is continuously detected as an initial value, holds the largest pressure amount that was acquired when the pressure position is continuously detected as a maximum value, calculates the difference between the maximum value and the initial value as a load, and links the load to the pressure position; and determines the validity of the pressure position based on the load.
[0008] The pressure position estimation program of the present invention is installed in a pressure position estimation system that includes a touch panel that detects a touch position on a detection surface and a quantity related to the pressure position on the detection surface, a pressure sensor that detects the amount of pressure on the detection surface, and a processing unit, and causes the processing unit to perform the following steps when the pressure position is continuously detected: continuously acquiring the amount of pressure from the pressure sensor, retaining the first amount of pressure acquired when the pressure position is continuously detected as an initial value, retaining the largest amount of pressure acquired when the pressure position is continuously detected as a maximum value, calculating the difference between the maximum value and the initial value as a load, linking the load to the pressure position, and determining the validity of the pressure position based on the load. [Effects of the Invention]
[0009] According to the present invention, even when there are multiple touch positions, it is possible to estimate the pressed position. [Brief explanation of the drawings]
[0010] [Figure 1] 1A is a schematic perspective view of the appearance of the pressed position estimation system 1. FIG. 1B is a schematic cross-sectional view of the pressed position estimation system 1. [Figure 2] FIG. 2 is a functional block diagram of the pressure position estimation system 1. [Figure 3] FIG. 3 is a conceptual diagram showing an example of a touch position on the detection surface. [Figure 4] FIG. 4 is a conceptual diagram showing an example of touch position data output by the touch panel for the touch position shown in FIG. [Figure 5] FIG. 5 is a time chart showing an example of communication between the load calculation unit and the determination unit. [Figure 6] FIG. 6 is a flowchart showing an example of the load calculation process performed by the load calculation unit. [Figure 7] FIG. 7 is a flowchart showing an example of the load calculation process performed by the load calculation unit. [Figure 8]Fig. 8(A) is a diagram showing an example of the pressure amount acquired from the pressure sensor by the load calculation unit. Fig. 8(B) is a diagram showing the maximum value of the pressure amount obtained for the pressure amount shown in Fig. 8(A). Fig. 8(C) is a diagram showing the load calculated for the pressure amount shown in Fig. 8(A). [Figure 9] FIG. 9 is a conceptual diagram showing an example of data of loads associated with the touch positions shown in FIG. [Figure 10] FIG. 10 is a flowchart showing an example of a pressing position determination process performed by the determination unit. [Figure 11] FIG. 11 is a flowchart showing an example of a pressing position determination process performed by the determination unit. DETAILED DESCRIPTION OF THE INVENTION
[0011] FIG. 1(A) is a schematic perspective view of the appearance of the pressure position estimation system 1. FIG. 1(B) is a schematic cross-sectional view of the pressure position estimation system 1. The pressure position estimation system 1 includes a housing 11, a touch panel 12, a pressure sensor 13, and a circuit board 14. The housing 11 has an opening. The touch panel 12 is disposed in the opening of the housing 11. The touch panel 12 has a main surface 21 that constitutes a detection surface. The pressure position estimation system 1 estimates a pressure position on the detection surface. The main surface 21 of the touch panel 12 faces the side opposite the housing 11. The pressure sensor 13 is attached to the surface opposite the main surface 21 of the touch panel 12. The circuit board 14 is disposed inside the housing 11.
[0012] In a modified example, the positions of the touch panel 12 and the pressure sensor 13 may be interchanged, and the main surface of the pressure sensor 13 may constitute the detection surface.
[0013] The pressure position estimation system 1 further includes a processing unit 15 mounted on the circuit board 14. The processing unit 15 is composed of a CPU, a memory, etc., and stores a program, and executes the program to perform a pressure position estimation process.
[0014] FIG. 2 is a functional block diagram of the pressure position estimation system 1. The processing unit 15 includes a load calculation unit 16 and a determination unit 17. The touch panel 12 detects a touch position on the detection surface and a quantity related to the pressure position on the detection surface. The touch position is the position where the detection surface is touched. The pressure position is the position where the detection surface is pressed. Therefore, the touch position includes the pressure position. The pressure sensor 13 detects the amount of pressure on the detection surface. The pressure amount indicates how much the detection surface is pressed at each point in time. If the pressure position is continuously detected, the load calculation unit 16 continuously acquires the pressure amount or pressure signal from the pressure sensor 13. If the pressure position is continuously detected, the load calculation unit 16 holds the first pressure amount acquired as an initial value. If the pressure position is continuously detected, the load calculation unit 16 holds the largest pressure amount acquired as a maximum value. Then, the load calculation unit 16 calculates the difference between the maximum value and the initial value as a load and associates the load with the pressure position. The load indicates how much pressure is applied to the detection surface during pressing. The determination unit 17 determines the validity of the pressed position based on the load.
[0015] The pressure position estimation system is designed on the assumption that the detection surface will be pressed at only one point at a time, and is not designed on the assumption that the detection surface will be pressed at multiple points at the same time.
[0016] For example, the pressure position estimation system is used in a software keyboard, where a user can press a key on the keyboard by pressing it, or in a touchpad, where a user can click by pressing it and drag by moving the pressed position.
[0017] As described above, the touch panel detects a quantity related to the pressed position. In this embodiment, the quantity related to the pressed position corresponds to the pressed position itself. Therefore, the pressed position is detected by the touch panel 12.
[0018] In the modified example, the quantity related to the pressure position corresponds to the touch area at the touch position. The touch area is the contact area between the touching object and the detection surface. If the touch area at the touch position is equal to or greater than a threshold, the determination unit estimates the touch position as the pressure position. Therefore, the pressure position is detected by the determination unit.
[0019] In yet another modification, the touch panel is realized by a capacitive touch panel, particularly a projected capacitive touch panel, and the quantity related to the pressure position corresponds to the distribution of capacitance change. The capacitance change is the amount of change in capacitance relative to the capacitance in an untouched state. The determination unit then finds an area where the capacitance change is equal to or greater than a threshold. Next, if the area of that area is equal to or greater than the threshold, the determination unit estimates the touch position within that area as the pressure position. Therefore, the pressure position is detected by the determination unit.
[0020] For example, the touch panel can detect multiple touches, i.e., the touch panel can detect multiple simultaneous touches on the detection surface. For example, the touch panel can be implemented using a capacitive touch panel, a resistive touch panel, an ultrasonic surface acoustic wave touch panel, an infrared touch panel, or other touch panels.
[0021] A pressure sensor does not detect the position of a pressure applied or a quantity related to the position of the pressure applied. However, the pressure sensor detects the amount of pressure applied to the detection surface with high sensitivity. For example, the pressure sensor may be realized using a piezoelectric element, a resistive film, or other methods.
[0022] 3 is a conceptual diagram showing an example of a touch position on the detection surface. In this example, the pressure position estimation system is used in a software keyboard. The five fingers of both hands of the user simultaneously touch the detection surface, in other words, positions p1 to p10 on the main surface 21 of the touch panel 12. The index finger of the user's right hand presses position p7 on the detection surface.
[0023] Fig. 4 is a conceptual diagram showing an example of touch position data output by the touch panel for the touch positions shown in Fig. 3. In this example, the touch position data includes ID numbers 1 to 10 assigned to touch positions p1 to p10, as well as x-coordinates x1 to x10 and y-coordinates y1 to y10 of the touch positions p1 to p10. The pressed position data includes ID number 7 assigned to the pressed touch position p7.
[0024] FIG. 5 is a time chart showing an example of communication between the load calculation unit and the determination unit. The determination unit acquires a quantity 31 related to a touch position and a pressure position from the touch panel at substantially regular time intervals T. The determination unit checks whether a pressure position is present based on the quantity related to the pressure position. The load calculation unit acquires a pressure quantity 32 from the pressure sensor at substantially regular time intervals T. If the determination unit finds a pressure position, it sends a load calculation command 33 to the load calculation unit. Upon receiving the load calculation command 33, the load calculation unit generates load data 34 associated with the touch position and sends it to the determination unit at substantially regular time intervals T. The determination unit determines the validity of the pressure position based on the load data 34 associated with the touch position at substantially regular time intervals T. If the determination unit does not find a pressure position, it sends a load calculation termination command 35 to the load calculation unit. Upon receiving the load calculation termination command 33, the load calculation unit terminates generating and sending load data 34 associated with the touch position to the determination unit.
[0025] 6 and 7 are flowcharts showing an example of the load calculation process performed by the load calculation unit.
[0026] As shown in FIG. 6, the load calculation unit first starts counting a time by incrementing the time count value by one at regular intervals T (s1) and enters a standby state (s2). The time count value represents the time elapsed since the start of the time count. The standby state corresponds to a state in which a pressure position is not detected. Next, the load calculation unit acquires the current pressure amount from the pressure sensor and also acquires the current time count value, and associates and stores the time count value with the pressure amount (s3). When the load calculation unit receives a load calculation command from the determination unit (s4: yes), it transitions to a pressed state (s5) and stores the last acquired pressure amount as the initial and maximum pressure amount values (s6). The load calculation command includes data on the touch position and the pressed position. The pressed state corresponds to a state in which a pressure position is detected. The initial pressure amount corresponds to the pressure amount first acquired by the load calculation unit after the load calculation unit transitions to the pressed state, i.e., the pressure amount first acquired by the load calculation unit when the pressed position is continuously detected. The maximum pressure amount corresponds to the largest pressure amount acquired by the load calculation unit after transitioning to the pressing state, i.e., the largest pressure amount acquired by the load calculation unit when the pressed position is continuously detected. When the load calculation unit receives a command to end the load calculation from the determination unit (s4: no, s7: yes), it transitions to a standby state (s8). After steps s6 and s8, or when the load calculation unit does not receive a command from the determination unit (s7: no), it similarly proceeds to step s9.
[0027] As shown in FIG. 7, if the touch panel is in a pressed state (s9: yes) and the pressure amount last acquired at this time exceeds the maximum pressure amount (s10: yes), the load calculation unit retains the pressure amount as the maximum pressure amount (s11). If the touch panel is in a pressed state (s9: yes) and the pressure amount last acquired at this time is equal to or less than the maximum pressure amount (s10: no), the load calculation unit does not change the maximum pressure amount. Next, the load calculation unit calculates the difference between the maximum pressure amount and the initial pressure amount as a load (s12). Next, the load calculation unit associates the calculated load with the pressed position and associates a load of 0 with touch positions other than the pressed position (s13). Next, the load calculation unit sends data of the load associated with the touch position to the determination unit (s14). If the load calculation unit is in a standby state again (s9: no) after step s14, it similarly waits for the time count value to increase by 1 (s15) and returns to step s3.
[0028] In a modified example, the load calculation unit may obtain the amount of pressure from the pressure sensor only when the device is in a pressed state.
[0029] In yet another modified example, the load calculation unit may not associate a load with a touch position other than the pressed position.
[0030] 8A is a diagram showing an example of the pressure amount acquired from the pressure sensor by the load calculation unit. In this example, the load calculation unit transitions to a pressing state during a period in which the time count value is n1, acquires a pressure amount of σ1, and stores it as an initial value. The load calculation unit acquires a pressure amount of σ2, which is the peak value, during a period in which the time count value is n2. Then, the load calculation unit transitions to a standby state during a period in which the time count value is n3.
[0031] 8(B) is a diagram showing the maximum pressure values obtained for the pressure values shown in FIG. 8(A). In the period before the time count value reaches n2, the maximum pressure value for each time count value period is equal to the pressure value for that time count value period. In the period when the time count value reaches n2 and the period thereafter, the maximum pressure value is σ2.
[0032] Figure 8(C) shows the load calculated for the pressure amount shown in Figure 8(A). The load during each time count value period corresponds to the difference between the maximum pressure amount during that time count value period and the initial pressure amount. During the time count value n2 and the period thereafter, the load takes the value σ2-σ1.
[0033] FIG. 9 is a conceptual diagram showing an example of load data associated with the touch positions shown in FIG. 3. The load data associated with the touch positions includes an ID number, an x coordinate, a y coordinate, and load data. A load with a value of λ calculated based on the amount of pressure is associated with the pressed touch position p7 assigned ID number 7. A load with a value of 0 is associated with the other touch positions.
[0034] 10 and 11 are flowcharts showing an example of the pressing position determination process performed by the determination unit.
[0035] As shown in FIG. 10, the determination unit first starts counting time in synchronization with the load calculation unit (s21) and enters a standby state (s22). Next, the determination unit acquires the touch position and quantities related to the pressed position from the touch panel (s23). If the determination unit is in the standby state and finds a pressed position based on the quantities related to the pressed position (s24: yes), it transitions to the pressed state (s25) and sends a load calculation command to the load calculation unit (s26). If the determination unit is in the pressed state and does not find a pressed position (s24: no, s27: yes), it transitions to the standby state (s28) and sends a load calculation end command to the load calculation unit (s29). After steps s26 and s29, or if the above cases are not met (s27: no), the determination unit proceeds to step s30.
[0036] 11, when the determination unit is in a pressed state (s30: yes), it receives data of the load associated with the touch position from the load calculation unit (s31). When the load associated with the pressed position is equal to or greater than a threshold (s32: yes), the determination unit determines that the pressed position is valid (s33). When the load associated with the pressed position is less than the threshold (s32: no), the determination unit determines that the pressed position is invalid (s34).
[0037] In a modified example, the determination unit may determine that a pressed position is invalid when the load associated with the pressed position is equal to a threshold value.
[0038] If the determination unit is in the standby state (s30: no), it determines that no pressing operation has been performed (s35). After steps s33 to s35, the determination unit waits for the time count value to be incremented by 1 (s36) and returns to step s23.
[0039] The load calculation unit and the judgment unit are configured to communicate with each other as follows: if the judgment unit sends a command to the load calculation unit during a certain time count value, the load calculation unit receives the command during that time count value. Also, if the load calculation unit sends load data during a certain time count value, the judgment unit receives the load data during that time count value.
[0040] According to this embodiment, the touch panel detects a touch position and a quantity related to the pressed position. The pressure sensor does not detect the pressed position, but detects the amount of pressure with high sensitivity. The determination unit checks whether a pressed position exists based on the quantity related to the pressed position. The load calculation unit calculates a load based on the amount of pressure, associates the calculated load with the pressed position, and associates a load with a value of 0 with touch positions other than the pressed position. This allows the load at each touch position to be accurately estimated.
[0041] The determination unit also compares the load at the pressure position with a threshold value to determine whether the pressure position is valid, making it possible to estimate the pressure position even when there are multiple touch positions.
[0042] Furthermore, for example, when a user performs a drag operation by moving their finger while pressing it on the detection surface, the pressure may weaken during the drag operation. According to this embodiment, the load associated with the pressure position depends on the maximum pressure amount. Therefore, even if the pressure weakens during the drag operation, the continuous pressure operation can be reliably detected.
[0043] The configurations shown in the above-described embodiments and their modifications may be replaced or combined as appropriate.
[0044] The above description of the embodiments should be considered to be illustrative in all respects and not restrictive. The scope of the present invention is defined not by the above embodiments but by the claims. Furthermore, the scope of the present invention is intended to include all modifications that are equivalent to the scope of the claims and fall within the scope thereof. [Explanation of symbols]
[0045] 1: Pressure position estimation system 11: Housing 12: Touch panel 13: Pressure sensor 14: Circuit board 15: Processing section 16: Load calculation section 17: Judgment section 21: Main surface
Claims
1. a touch panel that detects a touch position on a detection surface and a quantity related to a pressure position on the detection surface; a pressure sensor that detects the amount of pressure applied to the detection surface; a load calculation unit that, when the pressed position is continuously detected, continuously acquires the pressure amount from the pressure sensor, holds the initially acquired pressure amount when the pressed position is continuously detected as an initial value, holds the largest pressure amount acquired when the pressed position is continuously detected as a maximum value, calculates a difference between the maximum value and the initial value as a load, and associates the load with the pressed position; a determination unit that determines the validity of the pressed position based on the load.
2. 2. The pressure position estimation system according to claim 1, wherein the touch panel is realized by a capacitance system, and the quantity related to the pressure position corresponds to a distribution of change amounts of capacitance.
3. a touch panel that detects a touch position on a detection surface and a quantity related to a pressure position on the detection surface; a pressure sensor that detects the amount of pressure applied to the detection surface; a pressing position estimation system including a processing unit, the processing unit, when the pressed position is continuously detected, continuously acquiring the amount of pressure from the pressure sensor, holding the first acquired amount of pressure when the pressed position is continuously detected as an initial value, holding the largest amount of pressure acquired when the pressed position is continuously detected as a maximum value, calculating a difference between the maximum value and the initial value as a load, and linking the load to the pressed position; determining the validity of the pressure position based on the load.
4. a touch panel that detects a touch position on a detection surface and a quantity related to a pressure position on the detection surface; a pressure sensor that detects the amount of pressure applied to the detection surface; a pressure position estimation system including a processing unit, a step of continuously acquiring the pressure amount from the pressure sensor when the pressed position is continuously detected, holding the first acquired pressure amount when the pressed position is continuously detected as an initial value, holding the largest acquired pressure amount when the pressed position is continuously detected as a maximum value, calculating a difference between the maximum value and the initial value as a load, and linking the load to the pressed position; and determining the validity of the pressed position based on the load.
Citation Information
Patent Citations
Information processor, its method and program storage medium
JP2001202192A
Input device
JP2009163363A
Electronic apparatus and control method
JP2016006610A
Touch panel device
JP2019159765A
Operating device for vehicle
JP2020046945A