WO2010050173A1 - 携帯機器、操作検出方法および操作検出プログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents

携帯機器、操作検出方法および操作検出プログラムを記録したコンピュータ読み取り可能な記録媒体 Download PDF

Info

Publication number
WO2010050173A1
WO2010050173A1 PCT/JP2009/005638 JP2009005638W WO2010050173A1 WO 2010050173 A1 WO2010050173 A1 WO 2010050173A1 JP 2009005638 W JP2009005638 W JP 2009005638W WO 2010050173 A1 WO2010050173 A1 WO 2010050173A1
Authority
WO
WIPO (PCT)
Prior art keywords
touch panel
acceleration
value
detected
moving average
Prior art date
Application number
PCT/JP2009/005638
Other languages
English (en)
French (fr)
Inventor
中井裕
松尾直紀
Original Assignee
京セラ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 京セラ株式会社 filed Critical 京セラ株式会社
Priority to US13/126,075 priority Critical patent/US20110205177A1/en
Priority to KR1020117012012A priority patent/KR101210740B1/ko
Publication of WO2010050173A1 publication Critical patent/WO2010050173A1/ja
Priority to US14/337,766 priority patent/US9727216B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1637Details related to the display arrangement, including those related to the mounting of the display in the housing
    • G06F1/1643Details related to the display arrangement, including those related to the mounting of the display in the housing the display being associated to a digitizer, e.g. laptops that can be used as penpads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1694Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being a single or a set of motion sensors for pointer control or gesture input obtained by sensing movements of the portable computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0412Digitisers structurally integrated in a display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0414Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means using force sensing means to determine a position
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/12Details of telephonic subscriber devices including a sensor for measuring a physical value, e.g. temperature or motion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/22Details of telephonic subscriber devices including a touch pad, a touch sensor or a touch detector

Definitions

  • the present invention relates to a portable device, an operation detection method, and a computer-readable recording medium on which an operation detection program is recorded, and in particular, a portable device provided with a touch panel 5, an operation detection method and an operation detection program executed on the portable device
  • the present invention relates to a computer-readable recording medium.
  • LCD liquid crystal display device
  • touch panel 5 superimposed thereon
  • An image of a plurality of keys is displayed on the liquid crystal display device, and it is detected by the touch panel 5 whether any of the plurality of keys is instructed, and an input of numbers or characters is accepted (for example, Patent Document 1).
  • a method of inputting English characters, kana characters, and katakana characters is to assign a plurality of characters to one key and input one of the plurality of characters according to the number of times the same key is continuously pressed.
  • the input method that accepts is adopted.
  • the touch panel 5 can detect the instructed position, but in order to detect an operation for instructing the same position a plurality of times on the touch panel 5, two operations for releasing the finger after touching the touch panel 5 are pressed. You only have to do it a number of times. For this reason, there exists a problem that operation becomes difficult. JP 2005-92441 A
  • the present invention has been made to solve the above-described problems, and one of the objects of the present invention is to provide a portable device that can detect an operation of a user pressing the touch panel while touching the touch panel. It is.
  • Another object of the present invention is to provide an operation detection method capable of detecting an operation in which a user presses a touch panel while touching the touch panel.
  • Still another object of the present invention is to provide a computer-readable recording medium in which an operation detection program capable of detecting an operation of pressing a touch panel while a user touches the touch panel is recorded.
  • a portable device is detected by an acceleration sensor while it is detected that the touch panel, an acceleration sensor that detects acceleration, and an instruction from the touch panel are detected.
  • Detecting means for detecting a predetermined operation based on the acceleration to be performed.
  • the operation detection method is an operation detection method executed by a portable device provided with a touch panel, wherein an acceleration is detected and an instruction from the touch panel is detected. Detecting a predetermined operation based on the acceleration detected during the operation.
  • an operation detection program recorded on a computer-readable recording medium is an operation detection program executed on a portable device having a touch panel, and a step of detecting acceleration, And causing the computer to execute a step of detecting a predetermined operation based on an acceleration detected while it is detected that an instruction is given by the touch panel.
  • FIG. 1 is a perspective view showing an appearance of a mobile phone according to one embodiment of the present invention.
  • a mobile phone 1 as a mobile device includes an LCD 3 on an upper surface, a touch panel 5 disposed so as to be superimposed on the LCD 3, a speaker 7 constituting a receiver, and a microphone 9.
  • an organic EL (Electro Luminescence) display may be used instead of the LCD 3.
  • the touch panel 5 may be a pressure-sensitive type that detects a change in pressure, or may be an electrostatic type that detects an electric signal due to static electricity.
  • the touch panel 5 can be disposed on the back side of the LCD 3.
  • an electrostatic type is used.
  • the touch panel 5 detects a position touched by the finger with the finger as an indicated position.
  • the touch panel 5 outputs the detected indication position to the control unit 11 while the user is touching with a finger.
  • the same indicated position is continuously output to the control unit 11.
  • the designated position may be output to the control unit 11 at predetermined time intervals. Even in this case, the control unit 11 can detect that the user continuously touches the touch panel 5 with a finger.
  • FIG. 2 is a functional block diagram showing an example of functions of the mobile phone in the present embodiment.
  • a mobile phone 1 includes a control unit 11 for controlling the entire mobile phone 1, a radio circuit 13 connected to an antenna 13A, a codec unit 21 for processing audio data, A microphone 9 and a speaker 7 connected to the codec unit 21, the LCD 3, the touch panel 5, a RAM (Random Access Memory) 15 used as a work area of the control unit 11, and the control unit 11
  • An EEPROM (Electronically Erasable and Programmable Read Only Memory) 17 for storing programs and the like, an acceleration sensor 19, a vibration unit 23, and a card interface (I / F) 25 are included.
  • the wireless circuit 13 performs wireless communication with a base station device connected to a communication network.
  • a radio signal transmitted from the base station apparatus is received by the antenna 13A.
  • the radio circuit 13 receives the radio signal received by the antenna 13 ⁇ / b> A and outputs an audio signal obtained by demodulating the radio signal to the codec unit 21.
  • the radio circuit 13 receives an audio signal from the codec unit 21, and outputs a radio signal obtained by modulating the audio signal to the antenna 13A.
  • a radio signal transmitted from the antenna 13A is received by the base station apparatus.
  • the codec unit 21 decodes the audio signal input from the radio circuit 13, converts the decoded digital audio signal to analog, amplifies it, and outputs it to the speaker 7.
  • the codec unit 21 receives an analog audio signal from the microphone 9, converts the audio signal to digital, encodes it, and outputs the encoded audio signal to the radio circuit 13.
  • a removable flash memory 27 is attached to the card I / F 25.
  • the control unit 11 can access the flash memory 27 via the card I / F 25.
  • a program to be executed by the control unit 11 is stored in the EEPROM 17 will be described.
  • the program is stored in the flash memory 27, the program is read from the flash memory 27, and the control unit 11 You may make it perform.
  • the recording medium for storing the program is not limited to the flash memory 27, but a flexible disk, cassette tape, optical disk (CD-ROM (Compact Disc-ROM) / MO (Magnetic Optical Disc) / MD (Mini Disc) / DVD (Digital). (Versatile Disc)), a semiconductor memory such as an IC card, an optical card, a mask ROM, an EPROM (Erasable Programmable ROM), and an EEPROM (Electronically EPROM).
  • the mobile phone 1 may be connected to the Internet via the wireless circuit 13 and the program may be downloaded from a computer connected to the Internet and executed by the control unit 11.
  • the program here includes not only a program directly executable by the control unit 11 but also a source program, a compressed program, an encrypted program, and the like.
  • the acceleration sensor 19 detects acceleration and outputs the detected acceleration to the control unit 11.
  • the direction of acceleration detected by the acceleration sensor 19 is a direction in which the mobile phone 1 moves in the user's hand when the user holds the mobile phone 1 in his hand and performs an operation of pressing the touch panel 5.
  • the acceleration detected by the acceleration sensor 19 is in a direction perpendicular to the surface of the touch panel 5.
  • the direction perpendicular to the surface of the touch panel 5 includes a direction within a range that is not perpendicular due to a manufacturing error.
  • FIG. 3 is a functional block diagram showing an outline of the functions of the control unit.
  • control unit 11 includes an instruction position receiving unit 51 that receives an instruction position from touch panel 5, an operation detection unit 53 that detects a predetermined operation, and one of a plurality of predetermined signals.
  • a signal determination unit 55 that determines a signal and a display control unit 57 that controls the display of the LCD 5 are included.
  • the display control unit 57 controls the LCD 7 to display an image on the LCD 7.
  • the display control unit 57 outputs key information including a set of names and areas of a plurality of keys included in the image displayed on the LCD 7 to the signal determination unit 55.
  • the designated position receiving unit 51 receives the designated position output from the touch panel 5 and outputs the received designated position to the operation detecting unit 53 and the signal determining unit 55.
  • the designated position receiving unit 51 continuously outputs the designated position to the operation detecting unit 53 and the signal determining unit 55 while the user is touching the touch panel 5.
  • the operation detection unit 53 detects an operation of pressing the finger on the touch panel 5 while touching the touch panel 5 with the finger while the user holds the mobile phone 1 in his / her hand.
  • the user presses the touch panel 5 with his / her finger while touching the touch panel 5 the upper surface of the mobile phone 1 on which the touch panel 5 is attached is pressed, and the mobile phone 1 moves in the space by the user's hand.
  • This movement is a reciprocating motion in a direction substantially perpendicular to the surface of the touch panel 5.
  • the operation detection unit 53 detects the reciprocating motion of the mobile phone 1 based on the acceleration input from the acceleration sensor 19 while the instruction position is input from the instruction position reception unit 51, so that the touch panel 5 is touched with a finger. An operation of pressing a finger on the touch panel 5 while touching is detected.
  • the operation detection unit 53 includes an acceleration detection unit 61 that receives the acceleration output from the acceleration sensor 19, a primary differential calculation unit 63 that differentiates the acceleration, and a moving average calculation unit that calculates a moving average of the differentiated acceleration. 65, a second derivative calculating unit 67 for differentiating the moving average value, a maximum value extracting unit 69 for extracting the maximum value of the moving average value, a minimum value extracting unit 71 for extracting the minimum value of the moving average value, and a maximum A difference calculating unit 73 that calculates a difference between the value and the minimum value.
  • the acceleration detection unit 61 receives an instruction position from the instruction position reception unit 51 and receives an acceleration from the acceleration sensor 19.
  • the acceleration detection unit 61 samples the acceleration output from the acceleration sensor 19 at predetermined time intervals while the instruction position is input from the instruction position reception unit 51, and the sampled acceleration is input to the first derivative calculation unit 63.
  • Output
  • the acceleration output from the acceleration detector 61 is indicated by A (n).
  • the variable n is a positive integer and indicates a sampling point.
  • the acceleration detecting unit 61 resets the variable n to “1” when the designated position is no longer input from the designated position receiving unit 51, and starts sampling when the designated position is next input from the designated position receiving unit 51. , Output acceleration A (n).
  • FIG. 4 shows an example of the acceleration A (n).
  • the primary differential calculation unit 63 differentiates the acceleration input from the acceleration detection unit 61.
  • the value obtained by differentiating the acceleration once is referred to as a primary differential value B (n).
  • the primary differential value B (n) indicates a change in the acceleration A (n) and is suitable for detecting the reciprocating motion of the mobile phone 1.
  • the primary differential value B (n) is calculated using the following equation (1).
  • B (n) (A (n + 1) ⁇ A (n ⁇ 1)) / 2 (1)
  • the primary differential calculation unit 63 outputs the calculated primary differential value B (n) to the moving average calculation unit 65.
  • FIG. 5 shows an example of the primary differential value B (n).
  • a primary differential value B (n) shown in FIG. 5 is a primary differential value calculated based on the acceleration A (n) shown in FIG.
  • the moving average calculator 65 calculates a moving average value of the primary differential value B (n) for a predetermined time.
  • the moving average value is calculated in order to remove noise. In particular, it is possible to remove vibration having a shorter period than vibration based on an operation of pressing the touch panel 5 with a finger.
  • a moving average value S (n) that is an average of six consecutive primary differential values is calculated using the following equation (2).
  • S (n) (B (n ⁇ 5) + B (n ⁇ 4) + B (n ⁇ 3) + B (n ⁇ 2) + B (n ⁇ 1) + B (n)) / 6 (2)
  • the moving average calculation unit 65 outputs the calculated moving average value S (n) to the secondary differential calculation unit 67, the maximum value extraction unit 69, and the minimum value extraction unit 71.
  • FIG. 6 shows an example of the moving average value S (n).
  • the moving average value S (n) shown in FIG. 6 is a moving average value calculated from the first derivative B (n) shown in FIG.
  • the moving average value is an average of six consecutive primary differential values, but the number of primary differential values that are the targets of the moving average is pressed to the touch panel 5 while touching the touch panel 5 with a finger. It is determined by a period suitable for detecting a change in acceleration due to an operation to be performed and a sampling period. A period suitable for detecting a change in acceleration due to an operation of pressing the finger on the touch panel 5 while touching the touch panel 5 with a finger can be obtained by an experiment.
  • the secondary differential calculation unit 67 differentiates the moving average value.
  • a value obtained by differentiating the moving average value once is referred to as a secondary differential value C (n).
  • the secondary differential value C (n) is calculated using the following equation (3).
  • C (n) (S (n + 1) ⁇ S (n ⁇ 1)) / 2 (3)
  • the secondary differential calculation unit 67 outputs the calculated secondary differential value C (n) to the maximum value extraction unit 69 and the minimum value extraction unit 71.
  • FIG. 7 shows an example of the secondary differential value B (n).
  • the secondary differential value C (n) shown in FIG. 7 is a secondary differential value calculated based on the moving average value S (n) shown in FIG. The reason why the secondary differential value C (n) is calculated is to obtain the extreme value of the moving average value S (n).
  • the sample point at which the secondary differential value C (n) is closest to “0” indicates the extreme value of the moving average value S (n).
  • the secondary differential calculation unit 67 outputs a variable n for specifying the sample point at which the secondary differential value C (n) is closest to “0” to the local maximum value extracting unit 69 and the local minimum value extracting unit 71.
  • the sample point at which the secondary differential value C (n) is closest to “0” is N.
  • the maximum value extraction unit 69 receives the moving average value S (n) from the moving average calculation unit 65 and the sample point N from the second derivative calculation unit 67.
  • the local maximum extraction unit 69 extracts the maximum extreme value from the moving average value S (n). Specifically, if the moving average value S (N) at the sample point N input from the secondary differential calculation unit 67 is larger than the previous moving average value S (N ⁇ 1), it is determined as the local maximum value.
  • the maximum value extracting unit 69 outputs the moving average value S (N) to the difference calculating unit 73 as a maximum value.
  • the minimum value extraction unit 71 receives the moving average value S (n) from the moving average calculation unit 65 and the sample point N from the secondary differential calculation unit 67.
  • the minimum value extraction unit 71 extracts a minimum value from the moving average value S (n). Specifically, if the moving average value S (N) at the sample point N input from the secondary differential calculation unit 67 is smaller than the previous moving average value S (N ⁇ 1), it is determined as a minimum value.
  • the minimum value extraction unit 71 outputs the moving average value S (N) to the difference calculation unit 73 as a minimum value.
  • the difference calculation unit 73 receives the maximum value from the maximum value extraction unit 69 and receives the minimum value from the minimum value extraction unit.
  • the difference calculation unit 73 calculates a difference between the maximum value and the minimum value, and compares the calculated difference with a threshold value. If the calculated difference is equal to or greater than the threshold value, the difference calculating unit 73 detects an operation of pressing a finger while touching the touch panel 5 (hereinafter referred to as “pressing operation”), and indicates that the pressing operation has been input.
  • the signal is output to the signal determination unit 55.
  • the threshold value is a predetermined value and can be obtained by experiment.
  • the mobile phone 1 moves in the space by the user's hand and reciprocates in a direction substantially perpendicular to the surface of the touch panel 5.
  • the absolute value of the first derivative of the acceleration generated at that time may be set to the minimum value.
  • the signal determination unit 55 receives a key input from the display control unit 57, an instruction position from the instruction position reception unit 51, and a signal indicating that a pressing operation is input from the difference calculation unit 73. Based on the key information input from the display control unit 57 and the designated position input from the designated position receiving unit 51, the signal determining unit 55 determines which of the plurality of keys included in the image displayed on the LCD 7 is. It detects whether the user has instructed.
  • a case where three English letters “A”, “B”, and “C” are assigned to the key designated by the user will be described as an example.
  • the signal determination unit 55 receives a pressing operation from the difference calculation unit 73 while the instruction position indicating the position of the key to which three English characters are assigned is continuously input from the instruction position reception unit 51. Is counted.
  • a key table in which English letters assigned to each of a plurality of keys included in an image displayed on the LCD 3 are associated with the number of instructions is stored in the EEPROM 17 in advance.
  • the signal determination unit 55 refers to the key table and determines a character determined by the key specified at the indicated position and the counted number.
  • the signal determination unit 55 determines the character to be displayed as a character to be displayed, and stores it in a predetermined area of the RAM 15 and displays it in a predetermined area of the LCD 3, for example.
  • FIG. 8 is a flowchart showing an example of the flow of the operation detection process.
  • the operation detection process is a process executed by the control unit 11 when the control unit 11 included in the mobile phone 1 executes an operation detection program. Referring to FIG. 8, control unit 11 is in a standby state until it detects an instruction to touch touch panel 5 by the user (NO in step S01), and detects an instruction to touch touch panel 5 by the user (YES in step S01). The process proceeds to step S02. When an instruction position is input from the touch panel 5, the control unit 11 detects an instruction to touch the touch panel 5 by the user. In other words, the operation detection process is a process executed on condition that the user touches the touch panel 5.
  • step S02 “1” is set to the variable n and other variables are initialized.
  • the variables initialized here are the stop counter C1, the operation counter C2, the maximum value MAX, the minimum value MIN, the acceleration array A (n), the primary differential value array B (n), and the moving average value array S.
  • (N) is an array C (n) of secondary differential values, each of which is set to “0”.
  • step S03 the acceleration output from the acceleration sensor 19 is acquired, and the acquired acceleration is set in the acceleration array A (n).
  • step S04 as in step S01, it is determined whether or not an instruction to touch the touch panel 5 by the user has been detected. If an instruction from the user is detected, the process proceeds to step S05. If not, the process ends. That is, the operation detection process is a process of detecting an operation of pressing the touch panel 5 with a finger after the user touches the touch panel 5 with a finger until the finger leaves the touch panel 5.
  • step S05 it is determined whether or not the variable n is larger than “2”. If variable n is greater than “2”, the process proceeds to step S06; otherwise, the process proceeds to step S22.
  • the reason why the processing after step S06 is executed when the variable n is larger than “2” is to calculate the first-order differential value in step S06.
  • step S22 the variable n is set to a value obtained by adding “1” thereto, and the process returns to step S03.
  • step S06 a primary differential value is calculated, and the calculated primary differential value is set in the array B (n). Specifically, the primary differential value is calculated from the acceleration A (n ⁇ 1) and the acceleration A (n + 1) using the above-described equation (1).
  • step S07 it is determined whether or not the variable n is larger than “7”. If variable n is greater than “7”, the process proceeds to step S08; otherwise, the process proceeds to step S22.
  • the reason why the processing after step S08 is executed when the variable n is larger than “7” is to calculate the moving average value in step S08.
  • step S22 the variable n is set to a value obtained by adding “1” thereto, and the process returns to step S03.
  • step S08 the moving average value of the primary differential value is calculated, and the calculated moving average value is set in the array S (n). Specifically, the primary differential values B (n-5), B (n-4), B (n-3), B (n-2), B (n-1), and B (n n) and the moving average value is calculated using the above-described equation (2).
  • step S09 it is determined whether or not the absolute value of the calculated moving average value S (n) is equal to or less than a threshold value T1. If the absolute value of moving average value S (n) is equal to or smaller than threshold value T1, the process proceeds to step S10; otherwise, the process proceeds to step S10.
  • step S10 the stop counter C1 is set to a value obtained by adding “1” thereto, and the process proceeds to step S11.
  • step S11 it is determined whether or not the stop counter C1 is larger than a threshold value P. If the stop counter C1 is greater than the threshold value P, the process is terminated; otherwise, the process proceeds to step S12.
  • the stop counter C1 is a counter for counting the number of times that the absolute value of the moving average value S (n) is continuously equal to or less than the threshold value T1. Since the process is terminated when the stop counter C1 becomes larger than the threshold value P, the process is terminated when the absolute value of the moving average value S (n) is continuously P times or more and the threshold value T1 or less. If the absolute value of the moving average value S (n) is equal to or less than the threshold value T1, the acceleration does not change. If the state continues for a predetermined time, whether or not an operation is input to the mobile phone 1 It can be determined that the mobile phone is placed on a desk or the like away from the hand and the mobile phone 1 is not operated.
  • step S12 it is determined whether or not the variable n is larger than “9”. If variable n is greater than “9”, the process proceeds to step S13; otherwise, the process proceeds to step S22.
  • the reason why the processing after step S13 is executed when the variable n is larger than “9” is to calculate the secondary differential value based on the moving average value in step S13.
  • step S22 the variable n is set to a value obtained by adding “1” thereto, and the process returns to step S03.
  • step S13 a differential value is calculated from the moving average value S (n), and the calculated differential value is set in the array C (n). Specifically, the differential value is calculated from the moving average value S (n ⁇ 1) and the moving average value S (n + 1) using the above-described equation (3).
  • a differential value obtained by differentiating the moving average value S (n) is indicated by a secondary differential value C (n).
  • step S14 it is determined whether or not the secondary differential value C (n) is “0”. Note that C (n) may not be “0” depending on the sampling point. In this case, the determination as to whether C (n) is “0” is the highest when C (n) is “0”. What is necessary is just to judge whether it is near. If the secondary differential value C (n) is “0”, the process proceeds to step S15; otherwise, the process proceeds to step S22. When the secondary differential value C (n) becomes “0”, the moving average value S (n) becomes maximum or minimum.
  • step S15 the moving average values S (n) and S (n-1) are compared. If moving average value S (n) is larger than moving average value S (n ⁇ 1), the process proceeds to step S16; otherwise, the process proceeds to step S17.
  • step S16 the moving average value S (n) is set to the maximum value MAX which is a variable for setting the maximum value, and the process proceeds to step S18.
  • step S17 the moving average value S (n) is set to the minimum value MIN that is a variable for setting the minimum value, and the process proceeds to step S18.
  • step S18 a difference between the maximum value MAX and the minimum value MIN is obtained, and it is determined whether or not the difference is larger than the threshold value T2. If the difference is larger than threshold value T2, the process proceeds to step S19; otherwise, the process proceeds to step S22.
  • step S19 the operation counter C2 is set to a value obtained by adding “1” thereto. When the difference between the maximum value and the minimum value is equal to or greater than the threshold value T2, it is detected that the operation of pressing the touch panel 5 with the finger is performed once. Can eliminate vibration.
  • step S20 “0” is set for each of the variables MAX, MIN, and C1, and the process proceeds to step S21.
  • step S21 a character is determined based on the designated position input from the touch panel 5 and the value set in the operation counter C2, and the process proceeds to step S22.
  • step S22 the variable n is set to a value obtained by adding “1” thereto, and the process returns to step S03.
  • the key instructed by the user is specified from the key information consisting of the name and area of each of the plurality of keys included in the image displayed on the LCD 3 and the designated position input from the touch panel 5.
  • a plurality of characters assigned in advance to the specified key are determined from the specified key and the key table.
  • a character corresponding to the number of operations is determined from a plurality of characters.
  • the number of operations is a value set in the operation counter C2.
  • the third vibration is represented.
  • the sample point has a maximum value of 4 and the sample point has a minimum value of 7.
  • the sample point has a maximum value at 14 and the sample point has a minimum value at 20.
  • the sample point becomes a maximum value at 27 and the sample point becomes a minimum value at 32.
  • the first vibration with sample points 7 to 10 in the moving average value, the first vibration with sample points 7 to 10, the second vibration with sample points 11 to 22, and the sample points 23 to 35.
  • the third vibration is represented.
  • the sample point has a maximum value at 7, and the sample point has a minimum value at 9. Since the difference between the maximum value and the minimum value is smaller than the threshold value T2, an operation of pressing the touch panel 5 with a finger is not detected.
  • the sample point has a maximum value at 13 and the sample point has a minimum value at 19. Since the difference between the maximum value and the minimum value is larger than the threshold value T2, an operation of pressing the touch panel 5 with a finger is detected. Further, in the third vibration, the sample point has a maximum value at 26, and the sample point has a minimum value at 32. Since the difference between the maximum value and the minimum value is larger than the threshold value T2, an operation of pressing the touch panel 5 with a finger is detected.
  • the mobile phone 1 as the mobile device in the present embodiment is touched by the user touching the touch panel 5 based on the acceleration detected while it is detected that the touch panel 5 is instructed. Since an operation of pressing the touch panel 5 is detected, the user can input an operation of pressing the same position on the touch panel 5 a plurality of times.
  • a predetermined operation is detected when the difference between the maximum value and the minimum value of the differential value of acceleration is equal to or greater than a predetermined threshold value, vibration generated by an operation of the user pressing the touch panel 5 while touching the touch panel 5 One operation can be detected in one cycle.
  • the detection means performs a moving average of the differential value of the output of the acceleration sensor 19 for a predetermined time and calculates a difference between the continuous maximum value and the minimum value, the noise included in the detected acceleration is detected. Can be reduced. In particular, it is possible to remove a signal different from vibration generated by an operation of pressing the touch panel 5 while the user touches the touch panel 5.
  • one of the plurality of characters is determined based on the indication position detected by the touch panel 5 and the number of times that the user presses the touch panel 5 while touching the touch panel 5, the user is the same. By simply pressing the position, one can be selected from a plurality of characters.
  • the acceleration sensor 19 is arranged so as to detect acceleration in a direction perpendicular to the panel surface of the touch panel 5, vibration generated by an operation of pressing the touch panel 5 while touching the touch panel 5 can be detected.
  • the mobile phone 1 has been described as an example of the mobile device.
  • the operation detection method for causing the mobile phone 1 to execute the operation detection process illustrated in FIG. It goes without saying that the invention can be understood as an operation detection program for causing the control unit 11 (computer) included in the telephone 1 to execute.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Position Input By Displaying (AREA)
  • Telephone Function (AREA)
  • Input From Keyboards Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】 ユーザがタッチパネルに触れながらタッチパネルを押下する操作を検出すること。 【解決手段】 携帯電話機は、タッチパネルと、加速度を検出する加速度センサと、タッチパネルにより指示されていることが検出されている間に、加速度センサにより検出される加速度に基づいて、所定の操作を検出する操作検出部53と、を備える。このため、ユーザがタッチパネルに触れながらタッチパネルを押下する操作を検出することができる。

Description

携帯機器、操作検出方法および操作検出プログラムを記録したコンピュータ読み取り可能な記録媒体
 この発明は携帯機器、操作検出方法および操作検出プログラムを記録したコンピュータ読み取り可能な記録媒体に関し、特にタッチパネル5を備えた携帯機器、その携帯機器で実行される操作検出方法および操作検出プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
 近年、液晶表示装置(以下「LCD」という))と、その上に重畳されたタッチパネル5とを備えた携帯電話機が登場している。液晶表示装置に複数のキーの画像を表示し、複数のキーのいずれかが指示されたかをタッチパネル5で検出し、数字または文字等の入力を受け付ける(例えば、特許文献1)。この携帯電話機において、英文字、かな文字、カタカナ文字を入力する方法は、1つのキーに複数の文字を割り当てておき、同じキーが連続して押下された回数によって、複数の文字の1つの入力を受け付ける入力方法が採用されている。
 しかしながら、タッチパネル5は指示された位置を検出することはできるが、同じ位置を複数回指示する操作をタッチパネル5で検出するためには、指をタッチパネル5に触れた後に離す2つの操作を押下する回数だけしなければならない。このため、操作が困難になるといった問題がある。
特開2005-92441号公報
 この発明は上述した問題点を解決するためになされたもので、この発明の目的の一つは、ユーザがタッチパネルに触れながらタッチパネルを押下する操作を検出することが可能な携帯機器を提供することである。
 この発明の他の目的は、ユーザがタッチパネルに触れながらタッチパネルを押下する操作を検出することが可能な操作検出方法を提供することである。
 この発明のさらに他の目的は、ユーザがタッチパネルに触れながらタッチパネルを押下する操作を検出することが可能な操作検出プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することである。
 上述した目的を達成するためにこの発明のある局面によれば、携帯機器は、タッチパネルと、加速度を検出する加速度センサと、タッチパネルにより指示されていることが検出されている間に加速度センサにより検出される加速度に基づいて、所定の操作を検出する検出手段と、を備える。
 この発明の他の局面によれば、操作検出方法は、タッチパネルを備えた携帯機器で実行される操作検出方法であって、加速度を検出するステップと、タッチパネルにより指示されていることが検出されている間に検出される加速度に基づいて、所定の操作を検出するステップと、を含む。
 この発明のさらに他の局面によれば、コンピュータ読み取り可能な記録媒体に記録された操作検出プログラムは、タッチパネルを備えた携帯機器で実行される操作検出プログラムであって、加速度を検出するステップと、タッチパネルにより指示されていることが検出されている間に検出される加速度に基づいて、所定の操作を検出するステップと、をコンピュータに実行させる。
本発明の実施の形態の一つにおける携帯電話機の外観を示す斜視図である。 本実施の形態における携帯電話機の機能の一例を示す機能ブロック図である。 制御部の機能の概要を示す機能ブロック図である。 加速度A(n)の一例を示す図である。 1次微分値B(n)の一例を示す図である。 移動平均値S(n)の一例を示す図である。 2次微分値B(n)の一例を示す図である。 操作検出処理の流れの一例を示すフローチャートである。
 以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
 図1は、本発明の実施の形態の一つにおける携帯電話機の外観を示す斜視図である。図1を参照して、携帯機器としての携帯電話機1は、上面にLCD3と、LCD3の上に重畳して配置されたタッチパネル5と、レシーバを構成するスピーカ7と、マイクロフォン9と、を含む。なお、ここでは携帯電話機1がLCD3を備える例を示すが、LCD3に代えて、有機EL(Electro Luminescence)ディスプレイを用いてもよい。
 タッチパネル5は、圧力の変化を感知する感圧式であってもよいし、静電気による電気信号を感知する静電式であってもよい。静電式のタッチパネル5を用いる場合には、タッチパネル5をLCD3の裏側に配置することができる。ここでは静電式を用いている。タッチパネル5は、ユーザがタッチパネル5に指で触れると、ユーザが指で触れた位置を指示位置として検出する。タッチパネル5は、ユーザが指で触れている間は、検出される指示位置を制御部11に出力する。ユーザが同じ位置を指示している場合には、同じ指示位置を制御部11に継続して出力する。なお、ユーザがタッチパネル5を指で触れている間、所定時間間隔で指示位置を制御部11に出力するようにしてもよい。この場合であっても、制御部11は、ユーザが継続してタッチパネル5を指で触れていることを検出することができる。
 図2は、本実施の形態における携帯電話機の機能の一例を示す機能ブロック図である。図2を参照して、携帯電話機1は、携帯電話機1の全体を制御するための制御部11と、アンテナ13Aと接続された無線回路13と、音声データを処理するためのコーデック部21と、それぞれがコーデック部21に接続されたマイクロフォン9およびスピーカ7と、LCD3と、タッチパネル5と、制御部11の作業領域として使用されるRAM(Random Access Memory)15と、制御部11で実行するためのプログラム等を記憶するためのEEPROM(Electronically Erasable and Programmable Read Only Memory)17と、加速度センサ19と、振動部23と、カードインターフェース(I/F)25と、を含む。
 無線回路13は、通信網に接続された基地局装置と無線通信する。基地局装置が送信する無線信号は、アンテナ13Aにより受信される。無線回路13は、アンテナ13Aにより受信された無線信号が入力され、無線信号を復調した音声信号をコーデック部21に出力する。また、無線回路13は、コーデック部21から音声信号が入力され、音声信号を変調した無線信号をアンテナ13Aに出力する。アンテナ13Aから送信される無線信号は、基地局装置で受信される。
 コーデック部21は、無線回路13から入力される音声信号を復号し、復号したデジタルの音声信号をアナログに変換し、増幅し、スピーカ7に出力する。また、コーデック部21は、マイクロフォン9からアナログの音声信号が入力され、音声信号をデジタルに変換し、符号化し、そして符号化した音声信号を無線回路13に出力する。
 カードI/F25には、着脱可能なフラッシュメモリ27が装着される。制御部11は、カードI/F25を介して、フラッシュメモリ27にアクセスが可能である。なお、ここでは制御部11が実行するためのプログラムをEEPROM17に記憶しておく例を説明するが、プログラムをフラッシュメモリ27に記憶しておき、フラッシュメモリ27からプログラムを読み出して、制御部11が実行するようにしてもよい。プログラムを記憶する記録媒体としては、フラッシュメモリ27に限られず、フレキシブルディスク、カセットテープ、光ディスク(CD-ROM(Compact Disc-ROM)/MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、ICカード、光カード、マスクROM、EPROM(Erasable Programmable ROM)、EEPROM(Electronically EPROM)などの半導体メモリ等でもよい。
 また、携帯電話機1をインターネットに無線回路13を介して接続し、インターネットに接続されたコンピュータからプログラムをダウンロードして、制御部11が実行するようにしてもよい。ここでいうプログラムは、制御部11が直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
 加速度センサ19は、加速を検出し、検出した加速度を制御部11に出力する。加速度センサ19が検出する加速度の方向は、携帯電話機1をユーザが手に持って、タッチパネル5を押下する操作をする場合に、ユーザの手の中で携帯電話機1が移動する方向である。好ましくは、加速度センサ19が検出する加速度は、タッチパネル5の面に垂直な方向である。なお、タッチパネル5の面に垂直な方向は、製造誤差により垂直とはならない範囲内の方向を含む。
 図3は、制御部の機能の概要を示す機能ブロック図である。図3を参照して、制御部11は、タッチパネル5から指示位置を受け付ける指示位置受付部51と、所定の操作を検出する操作検出部53と、予め定められた複数の信号のうちから1つの信号を決定する信号決定部55と、LCD5の表示を制御する表示制御部57と、を含む。
 表示制御部57は、LCD7を制御して、LCD7に画像を表示する。ここでは説明のために、LCD7に複数のキーの画像を表示する例を説明する。表示制御部57は、LCD7に表示した画像に含まれる複数のキーそれぞれの名称と領域との組からなるキー情報を信号決定部55に出力する。
 指示位置受付部51は、タッチパネル5が出力する指示位置を受け付け、受け付けた指示位置を操作検出部53および信号決定部55に出力する。指示位置受付部51は、ユーザがタッチパネル5の表面を継続して触れる場合、ユーザがタッチパネル5に触れている間、指示位置を操作検出部53および信号決定部55に継続して出力する。
 操作検出部53は、ユーザが携帯電話機1を手に持った状態で、タッチパネル5に指で触れながら指をタッチパネル5に押下する操作を検出する。ユーザがタッチパネル5に指で触れながら指をタッチパネル5に押下する場合、携帯電話機1のタッチパネル5が装着された上面が押されるので、携帯電話機1はユーザの手によって空間を移動する。この移動は、タッチパネル5の面に略垂直な方向の往復運動となる。または、手首を中心にした円周軌道上を往復する往復運動となる。これらの往復運動の移動距離はきわめて短いため、携帯電話機1の移動はタッチパネル5に略垂直な方向となる。操作検出部53は、指示位置受付部51から指示位置が入力されている間に加速度センサ19から入力される加速度に基づいて、携帯電話機1の往復運動を検出することにより、タッチパネル5に指で触れながら指をタッチパネル5に押下する操作を検出する。
 このため、操作検出部53は、加速度センサ19が出力する加速度を受け付ける加速度検出部61と、加速度を微分する1次微分算出部63と、微分された加速度の移動平均を算出する移動平均算出部65と、移動平均値を微分する2次微分算出部67と、移動平均値の極大値を抽出する極大値抽出部69と、移動平均値の極小値を抽出する極小値抽出部71と、極大値と極小値との差分を算出する差分算出部73と、を含む。
 加速度検出部61は、指示位置受付部51から指示位置が入力され、加速度センサ19から加速度が入力される。加速度検出部61は、指示位置受付部51から指示位置が入力されている間、加速度センサ19が出力する加速度を所定時間間隔でサンプリングし、サンプリングして取得した加速度を1次微分算出部63に出力する。ここでは、加速度検出部61が出力する加速度をA(n)で示す。変数nは、正の整数であり、サンプリング点を示す。加速度検出部61は、指示位置受付部51から指示位置が入力されなくなると、変数nを「1」にリセットし、次に指示位置受付部51から指示位置が入力されると、サンプリングを開始し、加速度A(n)を出力する。図4に、加速度A(n)の一例を示す。
 1次微分算出部63は、加速度検出部61から入力される加速度を微分する。ここでは、加速度を1回微分した値を1次微分値B(n)という。1次微分値B(n)は、加速度A(n)の変化を示し、携帯電話機1の往復運動を検出するのに適している。具体的には、1次微分値B(n)を次式(1)を用いて算出する。
B(n)=(A(n+1)-A(n-1))/2 … (1)
 1次微分算出部63は、算出した1次微分値B(n)を移動平均算出部65に出力する。図5に、1次微分値B(n)の一例を示す。図5に示す1次微分値B(n)は、図4に示した加速度A(n)に基づき算出された1次微分値である。
 移動平均算出部65は、所定時間における1次微分値B(n)の移動平均値を算出する。移動平均値を算出するのは、ノイズを除去するためである。特に、指でタッチパネル5を押下する操作に基づく振動よりも周期の短い振動を除くことができる。具体的には、連続する6つの1次微分値の平均である移動平均値S(n)を次式(2)を用いて算出する。
S(n)=(B(n-5)+B(n-4)+B(n-3)+B(n-2)+B(n-1)+B(n))/6 … (2)
 移動平均算出部65は、算出した移動平均値S(n)を2次微分算出部67、極大値抽出部69および極小値抽出部71に出力する。図6に、移動平均値S(n)の一例を示す。図6に示す移動平均値S(n)は、図5に示した1次微分地B(n)から算出された移動平均値である。
 なお、ここでは、移動平均値を連続する6つの1次微分値の平均としたが、移動平均の対象となる1次微分値の数は、タッチパネル5に指で触れながら指をタッチパネル5に押下する操作による加速度の変化を検出するために適した期間と、サンプリング周期によって定まる。タッチパネル5に指で触れながら指をタッチパネル5に押下する操作による加速度の変化を検出するために適した期間は、実験により求めることができる。
 2次微分算出部67は、移動平均値を微分する。ここでは、移動平均値を1回微分した値を2次微分値C(n)という。具体的には、2次微分値C(n)を次式(3)を用いて算出する。
C(n)=(S(n+1)-S(n-1))/2 … (3)
 2次微分算出部67は、算出した2次微分値C(n)を極大値抽出部69および極小値抽出部71に出力する。図7に、2次微分値B(n)の一例を示す。図7に示す2次微分値C(n)は、図6に示した移動平均値S(n)に基づき算出された2次微分値である。2次微分値C(n)を算出するのは、移動平均値S(n)の極値を求めるためである。2次微分値C(n)が「0」に最も近い値となるサンプル点が移動平均値S(n)の極値を示す。2次微分算出部67は、2次微分値C(n)が「0」に最も近い値となるサンプル点を特定するための変数nを極大値抽出部69および極小値抽出部71に出力する。ここでは、2次微分値C(n)が「0」に最も近い値となるサンプル点をNとする。
 極大値抽出部69は、移動平均算出部65から移動平均値S(n)が入力され、2次微分算出部67からサンプル点Nが入力される。極大値抽出部69は、移動平均値S(n)のうちから最大の極値を抽出する。具体的には、2次微分算出部67から入力されるサンプル点Nにおける移動平均値S(N)が1つ前の移動平均値S(N-1)より大きければ極大値と判定する。極大値抽出部69は、サンプル点Nにおける移動平均値S(N)を極大値と判定する場合には移動平均値S(N)を極大値として差分算出部73に出力する。
 極小値抽出部71は、移動平均算出部65から移動平均値S(n)が入力され、2次微分算出部67からサンプル点Nが入力される。極小値抽出部71は、移動平均値S(n)のうちから極小値を抽出する。具体的には、2次微分算出部67から入力されるサンプル点Nにおける移動平均値S(N)が1つ前の移動平均値S(N-1)より小さければ極小値と判定する。極小値抽出部71は、サンプル点Nにおける移動平均値S(N)を極小値と判定する場合には移動平均値S(N)を極小値として差分算出部73に出力する。
 差分算出部73は、極大値抽出部69から極大値が入力され、極小値抽出部から極小値が入力される。差分算出部73は、極大値と極小値との差分を算出し、算出された差分をしきい値と比較する。差分算出部73は、算出された差分がしきい値以上であれば、指をタッチパネル5に触れながら押下する操作(以下「押下操作」という)を検出し、押下操作が入力されたことを示す信号を信号決定部55に出力する。しきい値は、予め定められた値であり、実験によって求めることができる。例えば、ユーザが携帯電話機1を手に持ってタッチパネル5の表面を指で押す操作をする場合に、携帯電話機1がユーザの手によって空間を移動し、タッチパネル5の面に略垂直な方向に往復運動するが、そのときに発生する加速度の1次微分値の絶対値の最小の値とすればよい。
 信号決定部55は、表示制御部57からキー情報が入力され、指示位置受付部51から指示位置が入力され、差分算出部73から押下操作が入力されたことを示す信号が入力される。信号決定部55は、表示制御部57から入力されるキー情報と、指示位置受付部51から入力される指示位置とに基づいて、LCD7に表示されている画像に含まれる複数のキーのいずれがユーザにより指示されたかを検出する。以下、ユーザにより指示されたキーに3つの英文字「A」、「B」および「C」が割り当てられている場合を例に説明する。
 信号決定部55は、指示位置受付部51から3つの英文字が割り当てられたキーの位置を示す指示位置が継続して入力されている間に、差分算出部73から押下操作が入力されたことを示す信号が入力される回数をカウントする。LCD3に表示される画像に含まれる複数のキーそれぞれに割り当てられた英文字と、指示回数とを関連付けたキーテーブルが予めEEPROM17に記憶されている。信号決定部55は、キーテーブルを参照して、指示位置で特定されるキーと、カウントされた回数とにより定まる文字を決定する。例えば、「ABC」が割り当てられたキーの位置を示す指示位置が継続して入力されている間に、押下操作が入力されたことを示す信号が1回入力されると文字「A」、「B」および「C」のうちから文字「A」を選択し、2回入力されると文字「B」を選択し、3回入力されると文字「C」を選択する。信号決定部55は、文字を選択する毎に、選択された文字を表示する文字に決定し、例えば、RAM15の所定の領域に格納するとともに、LCD3の所定の領域に表示する。
 図8は、操作検出処理の流れの一例を示すフローチャートである。操作検出処理は、携帯電話機1が備える制御部11が操作検出プログラムを実行することにより、制御部11により実行される処理である。図8を参照して、制御部11は、ユーザによりタッチパネル5に触れる指示を検出するまで待機状態となり(ステップS01でNO)、ユーザによるタッチパネル5に触れる指示を検出すると(ステップS01でYES)、処理をステップS02に進める。制御部11は、タッチパネル5から指示位置が入力されると、ユーザによるタッチパネル5に触れる指示を検出する。換言すれば、操作検出処理は、ユーザがタッチパネル5に触れることを条件に実行される処理である。
 ステップS02においては、変数nに「1」を設定するとともに、他の変数を初期化する。ここで初期化される変数は、停止カウンタC1,操作カウンタC2、極大値MAX、極小値MIN、加速度の配列A(n)、1次微分値の配列B(n)、移動平均値の配列S(n)、2次微分値の配列C(n)であり、それぞれ「0」が設定される。
 ステップS03においては、加速度センサ19が出力する加速度を取得し、取得された加速度を加速度の配列A(n)に設定する。
 ステップS04においては、ステップS01と同様に、ユーザによるタッチパネル5に触れる指示が検出されているか否かを判断する。ユーザによる指示が検出されていれば、処理をステップS05に進めるが、そうでなければ処理を終了する。すなわち、操作検出処理は、ユーザが指でタッチパネル5に触れてから、タッチパネル5から指が離れるまでに指でタッチパネル5を押下する操作を検出する処理である。
 ステップS05においては、変数nが「2」より大きいか否かを判断する。変数nが「2」より大きければ処理をステップS06に進めるが、そうでなければ処理をステップS22に進める。変数nが「2」より大きい場合にステップS06以降の処理を実行するのは、ステップS06において1次微分値を算出するためである。ステップS22においては、変数nをそれに「1」を加算した値に設定し、処理をステップS03に戻す。
 ステップS06においては、1次微分値を算出し、配列B(n)に算出された1次微分値を設定する。具体的には、加速度A(n-1)と加速度A(n+1)とから上述した式(1)を用いて1次微分値を算出する。
 ステップS07においては、変数nが「7」より大きいか否かを判断する。変数nが「7」より大きければ処理をステップS08に進めるが、そうでなければ処理をステップS22に進める。変数nが「7」より大きい場合にステップS08以降の処理を実行するのは、ステップS08において移動平均値を算出するためである。ステップS22においては、変数nをそれに「1」を加算した値に設定し、処理をステップS03に戻す。
 ステップS08においては、1次微分値の移動平均値を算出し、配列S(n)に算出された移動平均値を設定する。具体的には、1次微分値B(n-5)とB(n-4)と、B(n-3)と、B(n-2)と、B(n-1)と、B(n)とから上述した式(2)を用いて移動平均値を算出する。
 次のステップS09においては、算出された移動平均値S(n)の絶対値がしきい値T1以下か否かを判断する。移動平均値S(n)の絶対値がしきい値T1以下ならば処理をステップS10に進め、そうでなければ処理をステップS10に進める。ステップS10においては、停止カウンタC1をそれに「1」を加算した値に設定し、処理をステップS11に進める。ステップS11においては、停止カウンタC1がしきい値Pより大きいか否かを判断する。停止カウンタC1がしきい値Pより大きければ処理を終了し、そうでなければ処理をステップS12に進める。停止カウンタC1は、移動平均値S(n)の絶対値が連続してしきい値T1以下となる回数をカウントするためのカウンタでがある。停止カウンタC1がしきい値Pより大きくなると処理を終了するため、移動平均値S(n)の絶対値が連続してP回以上しきい値T1以下となる場合に処理を終了する。移動平均値S(n)の絶対値がしきい値T1以下となる場合は、加速度が変化しない状態であり、その状態が所定時間継続する場合には携帯電話機1に操作が入力されていないか、手から離れて机の上などに携帯電話機が置かれた状態であり、携帯電話機1を操作しない状態であると判断できる。
 ステップS12においては、変数nが「9」より大きいか否かを判断する。変数nが「9」より大きければ処理をステップS13に進めるが、そうでなければ処理をステップS22に進める。変数nが「9」より大きい場合にステップS13以降の処理を実行するのは、ステップS13において移動平均値に基づいて2次微分値を算出するためである。ステップS22においては、変数nをそれに「1」を加算した値に設定し、処理をステップS03に戻す。
 ステップS13においては、移動平均値S(n)から微分値を算出し、配列C(n)に算出された微分値を設定する。具体的には、移動平均値S(n―1)と移動平均値S(n+1)とから上述した式(3)を用いて微分値を算出する。ここでは、移動平均値S(n)を微分した微分値を2次微分値C(n)で示す。
 ステップS14においては、2次微分値C(n)が「0」か否かを判断する。なお、サンプリング点によってC(n)が「0」にならない場合があるので、その場合には、C(n)が「0」か否かの判断は、C(n)が「0」に最も近いか否かを判断するようにすればよい。2次微分値C(n)が「0」ならば処理をステップS15に進めるが、そうでなければ処理をステップS22に進める。2次微分値C(n)が「0」になる場合において、移動平均値S(n)が極大または極小になる。
 ステップS15においては、移動平均値S(n)とS(n-1)とを比較する。移動平均値S(n)が移動平均値S(n-1)より大きければ、処理をステップS16に進め、そうでなければ処理をステップS17に進める。ステップS16においては、極大値を設定するための変数である極大値MAXに移動平均値S(n)を設定し、処理をステップS18に進める。一方、ステップS17においては、極小値を設定するための変数である極小値MINに移動平均値S(n)を設定し、処理をステップS18に進める。
 ステップS18においては、極大値MAXと極小値MINとの差分を求め、その差分がしきい値T2よりも大きいか否かを判断する。差分がしきい値T2よりも大きければ処理をステップS19に進めるが、そうでなければ処理をステップS22に進める。ステップS19においては、操作カウンタC2をそれに「1」を加算した値に設定する。極大値と極小値との差分がしきい値T2以上のときに、指でタッチパネル5を押下する操作が1回されたと検出するので、指でタッチパネル5を押下する操作に基づく振動とは関係のない振動を除くことができる。そして、ステップS20において、変数であるMAX、MIN、C1それぞれに「0」を設定し、処理をステップS21に進める。
 ステップS21においては、タッチパネル5から入力される指示位置と、操作カウンタC2に設定されている値に基づき文字を決定し、処理をステップS22に進める。ステップS22においては、変数nをそれに「1」を加算した値に設定し、処理をステップS03に戻す。具体的には、LCD3に表示されている画像に含まれる複数のキーそれぞれの名称と領域との組からなるキー情報とタッチパネル5から入力される指示位置とから、ユーザにより指示されたキーを特定し、特定されたキーとキーテーブルとから特定されたキーに対して予め割り当てられている複数の文字を決定する。そして、複数の文字のうちから操作回数に対応する文字を決定する。操作回数は、操作カウンタC2に設定されている値である。
 ここで、図4に示した加速度を参照して、サンプル点が1~8までの第1の振動と、サンプル点が8~21までの第2の振動と、サンプル点が22~33までの第3の振動とが表されている。第1の振動では、サンプル点が4で極大値となり、サンプル点が7で極小値となる。また、第2の振動では、サンプル点が14で極大値となり、サンプル点が20で極小値となる。また、第3の振動では、サンプル点が27で極大値となり、サンプル点が32で極小値となる。
 一方、図6を参照して、移動平均値においては、サンプル点が7~10までの第1の振動と、サンプル点が11~22までの第2の振動と、サンプル点が23~35までの第3の振動とが表されている。第1の振動では、サンプル点が7で極大値となり、サンプル点が9で極小値となる。極大値と極小値との差分がしきい値T2より小さいので、指でタッチパネル5を押下する操作は検出されない。
 また、第2の振動では、サンプル点が13で極大値となり、サンプル点が19で極小値となる。極大値と極小値との差分がしきい値T2よりも大きいので、指でタッチパネル5を押下する操作が検出される。また、第3の振動では、サンプル点が26で極大値となり、サンプル点が32で極小値となる。極大値と極小値との差分がしきい値T2よりも大きいので、指でタッチパネル5を押下する操作が検出される。
 以上説明したように、本実施の形態における携帯機器としての携帯電話機1は、タッチパネル5が指示されていることが検出されている間に検出される加速度に基づいて、ユーザがタッチパネル5に触れながらタッチパネル5を押下する操作を検出するので、ユーザは、タッチパネル5の同じ位置を複数回押下する操作を入力することができる。
 また、加速度の微分値の極大値と極小値との差が所定のしきい値以上のときに所定の操作を検出するので、ユーザがタッチパネル5に触れながらタッチパネル5を押下する操作により発生する振動の1周期で、1回の操作を検出することができる。
 また、検出手段は、加速度センサ19の出力の微分値を所定の時間で移動平均し、移動平均値で連続する極大値と極小値との差を算出するので、検出された加速度に含まれるノイズを低減することができる。特に、ユーザがタッチパネル5に触れながらタッチパネル5を押下する操作により発生する振動とは異なる信号を除去することができる。
 また、タッチパネル5により検出される指示位置と、ユーザがタッチパネル5に触れながらタッチパネル5を押下する操作が検出される回数とに基づき、複数の文字のうちから1つを決定するので、ユーザは同じ位置を押下する操作をするだけで、複数の文字のうちから1つを選択することができる。
 また、加速度センサ19は、タッチパネル5のパネル面に垂直な方向の加速度を検出するように配置されるので、タッチパネル5に触れながらタッチパネル5を押下する操作により発生する振動を検出することができる。
 なお、上述した実施の形態においては、携帯機器の一例として携帯電話機1について説明したが、図8に示した操作検出処理を携帯電話機1に実行させるための操作検出方法またはその操作検出方法を携帯電話機1が備える制御部11(コンピュータ)に実行させるための操作検出プログラムとして発明を捉えることができるのは言うまでもない。
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。

Claims (11)

  1.  タッチパネルと、
     加速度を検出する加速度センサと、
     前記タッチパネルにより指示されていることが検出されている間に前記加速度センサにより検出される加速度に基づいて、所定の操作を検出する検出部と、を備えた携帯機器。
  2.  前記検出部は、加速度の微分値の極大値と極小値との差が所定のしきい値以上のときに前記所定の操作を検出する、請求項1に記載の携帯機器。
  3.  前記検出部は、前記加速度センサの出力の微分値を所定の時間で移動平均する移動平均部を含み、前記移動平均された値で連続する極大値と極小値との差を算出する、請求項2に記載の携帯機器。
  4.  前記タッチパネルにより検出される位置情報と、前記検出部により前記所定の操作が検出される回数とに基づき、複数の信号のうちから1つを決定する信号決定部と、をさらに備えた請求項1に記載の携帯機器。
  5.  前記加速度センサは、前記タッチパネルのパネル面に垂直な方向の加速度を検出する、請求項1に記載の携帯機器。
  6.  タッチパネルを備えた携帯機器で実行される操作検出方法であって、
     加速度を検出するステップと、
     前記タッチパネルにより指示されていることが検出されている間に検出される加速度に基づいて、所定の操作を検出するステップと、を含む操作検出方法。
  7.  前記検出するステップは、加速度の微分値の極大値と極小値との差が所定のしきい値以上のときに前記所定の操作を検出するステップを含む、請求項6に記載の操作検出方法。
  8.  前記検出するステップは、加速度の微分値を所定の時間で移動平均するステップと、
     前記移動平均された値で連続する極大値と極小値との差を算出するステップと、を含む請求項7に記載の操作検出方法。
  9.  前記タッチパネルにより検出される位置情報と、前記検出ステップにおいて前記所定の操作が検出される回数とに基づき、複数の信号のうちから1つを決定するステップをさらに含む、請求項7に記載の操作検出方法。
  10.  前記検出するステップにおいて検出される加速度は、前記タッチパネルのパネル面に垂直な方向である、請求項7に記載の携帯機器。
  11.  タッチパネルを備えた携帯機器で実行される操作検出プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
     加速度を検出するステップと、
     前記タッチパネルにより指示されていることが検出されている間に検出される加速度に基づいて、所定の操作を検出するステップと、をコンピュータに実行させる操作検出プログラムを記録したコンピュータ読み取り可能な記録媒体。
PCT/JP2009/005638 2008-10-29 2009-10-26 携帯機器、操作検出方法および操作検出プログラムを記録したコンピュータ読み取り可能な記録媒体 WO2010050173A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US13/126,075 US20110205177A1 (en) 2008-10-29 2009-10-26 Portable device, method of detecting operation, and computer-readable storage medium storing program for detecting operation
KR1020117012012A KR101210740B1 (ko) 2008-10-29 2009-10-26 휴대 기기, 조작 검출 방법 및 조작 검출 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체
US14/337,766 US9727216B2 (en) 2008-10-29 2014-07-22 Portable device, method of detecting operation, and computer-readable storage medium storing program for detecting operation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-278146 2008-10-29
JP2008278146A JP5280800B2 (ja) 2008-10-29 2008-10-29 携帯機器、操作検出方法および操作検出プログラム

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US13/126,075 A-371-Of-International US20110205177A1 (en) 2008-10-29 2009-10-26 Portable device, method of detecting operation, and computer-readable storage medium storing program for detecting operation
US14/337,766 Continuation US9727216B2 (en) 2008-10-29 2014-07-22 Portable device, method of detecting operation, and computer-readable storage medium storing program for detecting operation

Publications (1)

Publication Number Publication Date
WO2010050173A1 true WO2010050173A1 (ja) 2010-05-06

Family

ID=42128543

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/005638 WO2010050173A1 (ja) 2008-10-29 2009-10-26 携帯機器、操作検出方法および操作検出プログラムを記録したコンピュータ読み取り可能な記録媒体

Country Status (4)

Country Link
US (2) US20110205177A1 (ja)
JP (1) JP5280800B2 (ja)
KR (1) KR101210740B1 (ja)
WO (1) WO2010050173A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101173400B1 (ko) 2010-12-02 2012-08-10 한국과학기술원 내장 가속도 센서를 이용한 휴대 기기에서의 터치스크린 조작 방법 및 휴대기기

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2938097B1 (fr) * 2008-10-30 2010-12-31 Oberthur Technologies Carte a microcircuit, dispositif electronique associe a une telle carte, et procede de commande d'un tel dispositif electronique
JP5742187B2 (ja) 2010-11-26 2015-07-01 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
JP5703873B2 (ja) 2011-03-17 2015-04-22 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
EP2813937A4 (en) * 2012-02-08 2016-01-20 Nec Corp PORTABLE DEVICE AND OPERATING METHOD THEREFOR
CN103092480B (zh) * 2013-01-17 2016-08-17 广东欧珀移动通信有限公司 一种快速返回列表首页的方法及移动终端
JP6497283B2 (ja) * 2015-09-11 2019-04-10 株式会社デンソー データ解析装置
TWI641522B (zh) * 2017-05-18 2018-11-21 晶翔微系統股份有限公司 減速警示裝置及方法
CN114237420B (zh) * 2020-05-06 2023-08-15 Oppo(重庆)智能科技有限公司 触摸屏控制方法及装置、电子设备、存储介质
DE102021002801A1 (de) * 2021-05-26 2022-12-01 Mercedes-Benz Group AG Verfahren zur Signalauswertung
JP2024024784A (ja) * 2022-08-10 2024-02-26 マレリ株式会社 操作パネル

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005092441A (ja) * 2003-09-16 2005-04-07 Aizu:Kk 文字入力方法
JP2005352924A (ja) * 2004-06-11 2005-12-22 Mitsubishi Electric Corp ユーザインタフェース装置
JP2008234496A (ja) * 2007-03-22 2008-10-02 Mikio Uehara 入力装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6369794B1 (en) * 1998-09-09 2002-04-09 Matsushita Electric Industrial Co., Ltd. Operation indication outputting device for giving operation indication according to type of user's action
US6201554B1 (en) * 1999-01-12 2001-03-13 Ericsson Inc. Device control apparatus for hand-held data processing device
US6466198B1 (en) * 1999-11-05 2002-10-15 Innoventions, Inc. View navigation and magnification of a hand-held device with a display
US11275405B2 (en) * 2005-03-04 2022-03-15 Apple Inc. Multi-functional hand-held device
JP3910541B2 (ja) * 2003-01-21 2007-04-25 富士フイルム株式会社 画像格納装置
JP2006178755A (ja) * 2004-12-22 2006-07-06 Hitachi Ltd 文字入力方法および文字入力装置
JP2006323690A (ja) * 2005-05-19 2006-11-30 Sony Corp 検索装置,プログラム及び検索方法
KR100879517B1 (ko) 2006-08-16 2009-01-22 삼성전자주식회사 휴대 단말기 및 그의 모드 전환 방법
US20090153475A1 (en) * 2007-12-14 2009-06-18 Apple Inc. Use of a remote controller Z-direction input mechanism in a media system
US20110029869A1 (en) * 2008-02-29 2011-02-03 Mclennan Hamish Method and system responsive to intentional movement of a device
US8587515B2 (en) * 2008-08-05 2013-11-19 Apple Inc. Systems and methods for processing motion sensor generated data
EP2341414A1 (en) * 2009-12-31 2011-07-06 Sony Computer Entertainment Europe Limited Portable electronic device and method of controlling a portable electronic device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005092441A (ja) * 2003-09-16 2005-04-07 Aizu:Kk 文字入力方法
JP2005352924A (ja) * 2004-06-11 2005-12-22 Mitsubishi Electric Corp ユーザインタフェース装置
JP2008234496A (ja) * 2007-03-22 2008-10-02 Mikio Uehara 入力装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101173400B1 (ko) 2010-12-02 2012-08-10 한국과학기술원 내장 가속도 센서를 이용한 휴대 기기에서의 터치스크린 조작 방법 및 휴대기기

Also Published As

Publication number Publication date
US9727216B2 (en) 2017-08-08
JP2010109552A (ja) 2010-05-13
KR20110077021A (ko) 2011-07-06
JP5280800B2 (ja) 2013-09-04
US20110205177A1 (en) 2011-08-25
US20140337784A1 (en) 2014-11-13
KR101210740B1 (ko) 2012-12-11

Similar Documents

Publication Publication Date Title
JP5280800B2 (ja) 携帯機器、操作検出方法および操作検出プログラム
KR101220633B1 (ko) 소리를 이용한 터치세기 검출방법, 이를 위한 입력장치 및 사용자 단말
JP5207699B2 (ja) 文字入力装置、文字入力方法および文字入力プログラム
JP5916042B2 (ja) タッチスクリーンを備えた装置及びそのタッチ認識方法
JP5561043B2 (ja) 携帯端末装置及びプログラム
JP6483452B2 (ja) 電子機器、制御方法、及び制御プログラム
KR100821161B1 (ko) 터치스크린을 이용한 문자 입력방법 및 장치
CN103995666B (zh) 一种设置工作模式的方法和装置
JP2013073330A (ja) 携帯型電子機器、タッチ領域設定方法およびプログラム
JP2018148286A (ja) 電子機器及び制御方法
CN106802808A (zh) 悬浮按钮控制方法及装置
JP5965018B2 (ja) 携帯端末、ロック解除プログラムおよびロック解除方法
JP2011243157A (ja) 電子機器、ボタンサイズ制御方法、及びプログラム
CN106936986A (zh) 应用处理方法及装置
JP4444023B2 (ja) 携帯端末
JP4385864B2 (ja) 携帯端末及び情報入力方法
JP6208808B2 (ja) 文字入力装置、文字入力方法および文字入力プログラム
JP6408665B2 (ja) 文字入力装置、文字入力方法および文字入力プログラム
JP6121833B2 (ja) 電子機器とその制御方法
JP5934280B2 (ja) 文字入力装置、文字入力方法および文字入力プログラム
JP5542906B2 (ja) 文字入力装置、文字入力方法および文字入力プログラム
CN108008902B (zh) 一种虚拟键盘的调整方法、装置和一种播放方法、装置
WO2017206382A1 (zh) 一种输入字符的方法、装置以及终端设备
EP2637388A1 (en) Mobile telephone device and display control method thereof
JP5395599B2 (ja) 情報処理装置、入力装置及び情報処理装置の入力方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09823286

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13126075

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20117012012

Country of ref document: KR

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 09823286

Country of ref document: EP

Kind code of ref document: A1