이하 본 발명의 바람직한 실시 예를 첨부된 도면의 참조와 함께 상세히 설명한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.
이하, 본 발명은 이동통신 단말기에서 액션에 따른 명령어를 정의하기 위한 방법에 대해 설명한다. 이하 설명에서 키 입력은 하드웨어적인 키뿐만 아니라 터치 패널 상의 가상 키, 예를 들어, 스크린 상의 버튼, 가상 키보드 등으로부터의 키 입력을 모두 포함한다.
도 1은 본 발명에 따른 이동통신 단말기의 구성을 도시하고 있다.
상기 도 1을 참조하면, 이동통신 단말기(101)의 제어부(MPU : Micro-Processor Unit)(101)는 상기 이동통신 단말기의 전반적인 동작을 제어한다. 예를 들어, 음성통신 및 데이터통신을 위한 처리 및 제어를 수행하고, 통상적인 기능에 더하여 본 발명에 따라, 터치 패널(패드 또는 스크린)에 입력되는 패턴을 인식하여 예약된 기능 조합을 일괄처리 하기 위한 기능을 처리한다. 따라서, 이하 설명에 있어서 통상적인 제어부(101)의 처리 및 제어에 관한 설명은 생략한다.
메모리(103)는 롬, 램, 플래시 롬들로 구성될 수 있다. 상기 롬(ROM : Read Only Memory)은 상기 제어부(101)의 처리 및 제어를 위한 프로그램의 마이크로코드와 각종 참조 데이터를 저장한다. 특히, 본 발명에 따라 터치 패널(패드 또는 스크린)에 입력되는 패턴을 인식하여 예약된 기능 조합을 일괄처리 하기 위한 프로그램을 저장한다. 상기 램(RAM : Random Access Memory)은 상기 제어부(101)의 워킹 메 모리(working memory)로, 각종 프로그램 수행 중에 발생하는 일시적인 데이터를 저장한다. 상기 플래시 롬(flash ROM)은 문서 자료 등 갱신 가능한 각종 보관용 데이터를 저장한다. 특히, 본 발명에 따라, 코드 북(Code Book) 또는 사전(Dictionary)을 구비하며, 하기 문자 인식기(117)에서 인식된 문자(또는 심볼)를 상기 코드 북(Code Book) 또는 사전(Dictionary)에 코드로 저장하고 관리하며, 또한, 상기 코드 북(Code Book) 내의 각각의 코드 워드(code word)를 조합하여 코드열(code sentence)을 저장 및 관리할 수도 있다. 또한, 상기 플래시 롬은 액션 리스트(Action List)를 구비하여 단말기의 액션, 예를 들어, 키 입력 또는 이벤트를 정의하며, 상기 단말기의 액션은 명령어(command)로 저장 및 관리된다. 또한, 상기 플래시 롬은 상기 코드(또는 코드열)와 상기 명령어(또는 명령어 조합) 쌍(pair)의 제스처(gesture)를 저장하여 특정 코드(또는 코드열)와 상기 특정 코드에 대응하는 하나의 명령어(또는 명령어 조합)를 매핑시키는 역할을 한다.
키입력부(105)는 0 ~ 9의 숫자키 버튼들과, 메뉴버튼(menu), 취소버튼(지움), 확인버튼, 통화버튼(TALK), 종료버튼(END), 인터넷 접속버튼, 네비게이션 키(또는 방향키), 버튼들(▲/▼/◀/▶)등 다수의 기능키들을 구비하며, 사용자가 누르는 키에 대응하는 키입력 데이터를 상기 제어부(101)로 제공한다. 표시부(107)는 상기 휴대용 단말기의 동작 중에 발생되는 상태 정보, 제한된 숫자의 문자들, 다량의 동영상 및 정지영상 등을 디스플레이한다. 상기 표시부(107)는 칼라 액정 디스플레이 장치(LCD : Liquid Crystal Display)를 사용할 수 있다.
상기 제어부(101)에 연결된 음성처리부(109)와, 상기 음성처리부(109)에 접 속된 스피커 및 마이크는 전화 통신 및 음성 녹음에 사용되는 음성 입출력 블록이다. 상기 음성처리부(109)는 상기 제어부(101)에서 제공되는 디지털데이터를 아날로그 음성신호로 변환하여 상기 스피커를 통해 송출하고, 상기 마이크를 통해 수신되는 음성신호를 디지털데이터로 변환하여 상기 제어부(101)로 제공한다.
또한, 통신부(111)는 안테나를 통해 입출력되는 무선신호를 송수신 처리하는 기능을 수행한다. 예를 들어, 송신인 경우, 송신할 데이터를 채널코딩(channel coding) 및 확산(spreading)한 후, RF(Radio Frequency)처리하여 송신하는 기능을 수행하고, 수신인 경우, 수신되는 RF신호를 기저대역신호(despreading) 및 채널복호(channel decoding)하여 데이터를 복원하는 기능을 수행한다.
근거리 통신 처리부(113)는 근거리 송수신부(115)와 제어부(101)의 인터페이스를 위한 장치로서, 상기 제어부(101)에서 입력되는 신호를 부호화하여 상기 근거리 송수신부(115)로 송신하고, 상기 근거리 송수신부(115)로부터 수신되는 신호를 복호화하여 제어부(101)로 출력한다.
상기 근거리 송수신부(115)는 상기 근거리 통신 처리부(113)에서 변환된 신호를 수신하여 USB(Universal Serial Bus), 블루투스(Bluetooth), 적외선통신(Infrared Data Association : IrDA), UART(universal asynchronous receiver/transmitter), UWB(Ultra Wide Band) 등의 근거리 통신을 통해 전송하고, 상기 근거리 통신을 통해 수신된 신호를 상기 근거리 통신 처리부(113)로 전송해 주는 역할을 한다. 여기서, 상기 근거리 통신 중 상기 적외선통신을 이용할 경우, 송신부는 적외선 LED를 사용할 수 있고, 수신부는 적외선 감광다이오드(IRDA PHOTO DIODE)를 사용할 수 있다.
터치 패널(119)은 사용자로부터 문자(들) 또는 심볼(들)의 패턴을 입력받아 터치 패널 데이터를 출력한다. 여기서, 상기 터치 패널 데이터는 상기 제어부(101)가 상기 문자(들) 또는 심볼(들)을 인식함에 있어 필요한 공간 좌표 데이터와 해당 문자의 획수를 나타내는 획 데이터의 자원으로 이루어진다. 또한, 상기 터치 패널 데이터는 하기 문자(또는 심볼) 인식기의 처리를 거칠 때만이 문자 또는 심볼로서의 의미를 가지는 데이터가 될 수도 있다.
터치 패널 드라이버(121)는 자체에 A/D 컨버터를 내장하고 있어 상기 터치 패널(119)로부터 출력되는 아날로그 신호를 디지털 데이터 형태의 터치 패널 데이터로 변환하여 출력하는 동작을 수행한다. 상기 터치 패널 드라이버(121)에서 디지털 변환되어 출력되는 상기 터치 패널 데이터는 상기 제어부(101)에 인가되고, 상기 제어부(101)는 상기 인가된 터치 패널 데이터를 문자 인식기(117)로 출력된다.
상기 문자 인식기(117)은 미리 프로그램 코드화된 문자인식 프로그램에 따라 상기 터치 패널(119)에 입력된 문자 또는 심볼 패턴의 정확한 좌표 데이터와 획 데이터를 계산하여 독출하고, 상기 독출된 데이터들을 상기 문자 또는 심볼로 인식하여 해당 문자(또는 심볼)인식 동작을 수행하는 역할을 한다. 여기서, 상기 인식된 문자(또는 심볼)(들)는 메모리(103)에 코드(또는 코드열)로 저장된다.
도 2는 본 발명의 실시 예에 따른 이동통신 단말기에서 특정 액션에 따른 명령어를 정의하기 위한 방법의 절차를 도시하고 있다.
상기 도 2를 참조하면, 제어부(101)는 201단계에서 사용자의 키 입력에 따른 명령어(command) 정의 메뉴의 선택이 있는지 검사한다. 여기서, 상기 명령어 정의 메뉴는 키 입력 또는 이벤트와 같은 특정 액션(Action)(들)을 기록(Record)하여 하나의 명령어로 정의하기 위한 메뉴로서, 상기한 바와 같이 명령어 정의 메뉴로 진입하거나 또는 일련의 키(Key)를 누름으로써 상기 단말기의 액션(들)을 저장하는 액션 기록기(Action Recorder)를 실행할 수도 있다. 예를 들어, 아이들(Idle) 상태에서 특정 소프트 키를 길게 누름으로써 사용자는 상기 액션 기록기를 실행시킬 수 있다. 상기 명령어 정의 메뉴의 선택이 감지될 시, 상기 제어부(101)는 203단계로 진행하여 특정 액션이 기록되어 있는 기존의 명령어 목록을 표시부(107)로 출력한다.
이후, 상기 제어부(101)는 205단계에서 새로운 명령어를 정의하기 위한, 즉 새로운 액션을 기록하기 위한 키 입력이 있는지 검사한다. 상기 새로운 명령어의 정의를 위한 키 입력이 감지되지 않을 시, 상기 제어부(101)는 207단계에서 기존 명령어들의 조합을 위한 키 입력이 있는지 검사한다. 상기 기존 명령어들의 조합을 위한 키 입력이 감지될 시, 상기 제어부(101)는 209단계로 진행하여 상기 명령어 목록, 즉 액션 목록에서 사용자의 선택에 따른 명령어들을 조합하고, 215단계에서 사용자로부터 새로운 이름을 입력받아 상기 조합된 명령어들을 상기 입력받은 이름의 명령어로 저장한다. 이때, 상기 사용자의 새로운 이름 입력이 없을 시, 상기 제어부(101)는 디폴트 이름(default name)으로 상기 명령어를 저장한다. 상기 기존 명령어들의 조합을 위한 키 입력이 감지되지 않을 시, 상기 제어부(101)는 해당 기능을 수행한다.
상기 새로운 명령어의 정의를 위한 키 입력이 감지될 시, 상기 제어부(101)는 211단계로 진행하여 단말의 모드를 액션 기록 모드로 변경하고, 사용자의 단말 조작에 따른 액션을 기록한다. 다시 말해, 현 상태에서 입력되는 모든 액션(들)을 순서대로 저장한다. 이때, 상기 표시부(107)의 특정 영역에는 상기 액션이 저장중임을 나타내는 아이콘(ICON)이 표시될 수 있다.
이후, 상기 제어부(101)는 213단계에서 상기 액션 기록의 종료를 위한 키 입력이 있는지 검사한다. 여기서, 상기 액션의 기록은 사용자가 키를 조작하여 정의한 메뉴로 진입하거나 또는 일련의 키, 예를 들어, 상기 특정 소프트 키를 길게 누름으로써 종료될 수 있다. 상기 액션 기록의 종료를 위한 키 입력이 감지될 시, 상기 제어부(101)는 상기 액션의 저장 상태를 표시하는 상기 아이콘을 오프(OFF)하고, 215단계로 진행하여 상기 액션(들)을 저장한다. 여기서, 상기 저장된 액션(들)은 하나의 명령어(Command)가 되며, 이때, 상기 명령어에는 디폴트 이름(Default name)으로 이름이 자동으로 붙는다. 또는, 사용자가 직접 상기 명령어 이름을 입력하여 상기 명령어를 완성할 수도 있다. 이후, 상기 제어부(101)는 본 발명에 따른 알고리즘을 종료한다.
도 3은 본 발명의 실시 예에 따른 이동통신 단말기에서 터치 패널로 입력되는 패턴을 정의하기 위한 방법의 절차를 도시하고 있다. 여기서, 상기 터치 패널은 터치 패드 또는 터치 스크린을 포함하는 의미이다.
상기 도 3을 참조하면, 제어부(101)는 301단계에서 사용자의 키 입력에 따른 패턴(pattern) 정의 메뉴의 선택이 있는지 검사한다. 상기 패턴 정의 메뉴의 선택 이 감지될 시, 상기 제어부(101)는 303단계로 진행하여 기존에 정의된 패턴(들)의 목록을 상기 표시부(107)로 출력한다. 여기서, 상기 패턴(들)은 메모리(103)에 구비된 코드 북(Code Book) 또는 사전(Dictionary)에 코드(또는 코드열)로써 저장되어 있다.
이후, 상기 제어부(101)는 305단계에서 새로운 패턴을 정의하기 위한 사용자의 키 입력이 있는지 검사한다. 상기 새로운 패턴의 정의를 위한 키 입력이 감지되지 않을 시, 상기 제어부(101)는 307단계로 진행하여 기존 패턴들의 조합을 위한 키 입력이 있는지 검사한다. 여기서, 상기 기존 패턴들의 조합은 하나의 패턴이 아닌 다수의 연속된 패턴 입력으로 상기 다수의 패턴에 매핑된 명령어들을 일괄 처리하고자 하는 경우 필요한 기능이다. 여기서, 상기 터치 패널의 특성상 주변의 여러 물건이 무작위로 접촉될 때 오동작을 피할 수 있도록, 사용자는 특이한 패턴, 예를 들어, {s}와 {e}로 정의되는 시작 제스처(Start Gesture)와 종료 제스쳐(End Gesture)를 정의하고, 상기 두 패턴({s}, {e}) 사이에 상기 다수의 패턴들을 조합하여 하나의 제스처로 정의할 수 있다.
예를 들어, 미리 지정된 문자나, 사진, 화일들을 SMS(Short Message Service), MMS (Multimedia Messaging System), e-Mail로 간편히 전송하고자 하는 경우, 다수의 패턴 조합 {s} S d k 7 {e}를 생성하고 상기 패턴 조합에 매핑된 각각의 명령어들을 정의함으로써, 폰북에 저장된 사람 중 이름이 Dongsoo이고 성이 Kim인 사람에게 "Good Luck" 내용의 문자메시지를 즉시 전송하는 것으로 정의할 수 있고, 다수의 패턴 조합 {s} M h l 8 {e}를 생성하고 상기 패턴 조합에 매핑된 각 각의 명령어들을 정의함으로써, 폰북에 저장된 사람 중 이름이 Heesoo이고 성이 Lee인 사람에게 "Happy Birthday" 내용의 문자와 오디오, 그림 파일을 자동첨부하여 MMS를 즉시 전송하는 것으로 정의할 수 있다. 또한, 다수의 패턴 조합 {s} e d k 9 {e}를 생성하고 상기 패턴 조합에 매핑된 각각의 명령어들을 정의함으로써, 폰북에 저장된 사람 중 이름이 Dongsoo이고 성이 Kim인 사람에게 포토 앨범(Photo Album) 내 사진 전부를 첨부하여 e-Mail로 즉시 전송하는 것으로 정의할 수도 있으며, 다수의 패턴 조합 {s} T V 6 {e}를 생성하고 상기 패턴 조합에 매핑된 각각의 명령어들을 정의함으로써, 적외선 통신(IrDa)으로 TV 채널 6번을 선택하는 적외선을 출력하는 것으로 정의할 수 있다.
상기 기존 패턴들의 조합을 위한 키 입력이 감지될 시, 상기 제어부(101)는 309단계에서 상기 패턴 목록, 즉 코드 북(Code Book)에서 사용자의 선택에 따른 각각의 코드 워드(code word)를 조합하고, 315단계에서 사용자로부터 새로운 이름을 입력받은 후, 상기 입력받은 이름으로 상기 조합된 패턴들, 즉 코드열(code sentence)을 저장한다. 이때, 상기 사용자의 새로운 이름 입력이 없을 시, 상기 제어부(101)는 디폴트 이름(default name)으로 상기 패턴을 저장할 수 있다. 상기 기존 패턴들의 조합을 위한 키 입력이 감지되지 않을 시, 상기 제어부(101)는 해당 기능을 수행한다.
상기 새로운 패턴 정의를 위한 키 입력이 감지될 시, 상기 제어부(101)는 311단계로 진행하여 단말의 모드를 패턴 그리기 모드로 변경하고, 터치 패널(119)을 통해 사용자로부터 상기 패턴을 입력받는다. 여기서, 상기 제어부(101)는 상기 터치 패널(119)로부터 입력되는 패턴을 문자(들) 또는 심볼(들)로 인식하고, 상기 인식된 문자(또는 심볼)(들)를 메모리(103)에 구비된 코드 북(Code Book) 또는 사전(Dictionary)에 코드(또는 코드열)로써 저장할 수 있다.
여기서, 상기 단말에 상기 터치 패널이 없는 경우, 상기 터치 패널과 근거리 통신 기능을 구비한 액세서리로부터 상기 패턴의 입력을 전달받을 수 있다. 즉, 사용자가 상기 액세서리의 터치 패널을 통해 입력한 패턴을 상기 근거리 통신 수단(113, 115)을 이용하여 상기 단말로 전달함으로써, 상기 단말은 상기 패턴을 입력받을 수 있다. 여기서, 상기 근거리 통신은 USB(Universal Serial Bus)등의 유선 형태와 블루투스(Bluetooth), 적외선통신(Infrared Data Association : IrDA), UART(universal asynchronous receiver/transmitter), UWB(Ultra Wide Band)등의 무선 형태를 포함한다.
이후, 상기 제어부(101)는 313단계에서 상기 패턴 그리기의 완료를 위한 키 입력이 있는지 검사한다. 상기 패턴 그리기의 완료를 위한 키 입력이 감지될 시, 상기 제어부(101)는 315단계로 진행하여 상기 입력된 패턴을 저장한다. 여기서, 상기 저장된 패턴에는 디폴트 이름(Default name)이 자동으로 붙을 수 있으며, 또는, 사용자가 직접 상기 패턴의 이름을 입력함으로써 상기 패턴의 저장을 완료할 수도 있다. 이후, 상기 제어부(101)는 본 발명에 따른 알고리즘을 종료한다.
도 4는 본 발명의 실시 예에 따른 이동통신 단말기에서 패널입력의 패턴인식을 이용한 명령 일괄처리 방법의 전체적인 흐름을 도시한 도면이다.
상기 도 4를 참조하면, 제어부(101)는 401단계에서 사용자의 키 조작에 따라 제스처 정의 메뉴를 실행한다.
이후, 상기 제어부(101)는 403단계로 진행하여 코드 북(103)에서 특정 패턴에 대응하는 코드(열)를 선택하기 위한 사용자의 키 입력이 있는지 검사한다. 상기 코드(열)의 선택이 감지되지 않을 시, 상기 제어부(101)는 해당 기능을 수행한다.
상기 코드(열)의 선택을 위한 키 입력이 감지될 시, 상기 제어부(101)는 405단계로 진행하여 명령어 목록(command list)에서 특정 명령어에 대응하는 액션을 선택하기 위한 키 입력이 있는지 검사한다. 여기서, 상기 명령어는 기존 명령어들의 조합일 수도 있다. 상기 액션 선택이 감지될 시, 상기 제어부(101)는 407단계에서 상기 선택된 코드(열)과 명령어 쌍의 제스처를 정의한다. 이때, 상기 제어부(101)는 상기 생성된 제스처를 메모리(103)에 새로운 이름으로 저장하여 상기 코드(열)와 상기 코드(열)에 대응하는 하나의 패턴을 매핑하고, 상기 제스처 정의 메뉴를 종료한다.
이후, 상기 제어부(101)는 409단계에서 상기 패턴에 대응하는 제스처 신호가 수신되는지 검사한다. 상기 코드(열)에 대응하는 제스처 신호가 수신되지 않을 시, 상기 제어부(101)는 해당 기능을 수행한다. 상기 코드(열)에 대응하는 제스처 신호가 수신될 시, 상기 제어부(101)는 411단계에서 상기 패턴에 매핑된 명령어(또는 명령어 조합)에 따른 액션을 자동 일괄 수행한다. 다시 말해, 사용자가 터치 패널(119)에 스타일러스 등으로 패턴을 그리면, 상기 제어부(101)는 상기 입력되는 패턴, 즉 제스처 신호를 문자 또는 심볼로 인식하고, 상기 인식한 문자 또는 심볼이 상기 코드 북(103)에 특정 코드로써 기 저장된 패턴인지 검사한다. 여기서, 상 기 문자 또는 심볼이 상기 코드 북(103)에 기 저장된 패턴임이 확인되면, 상기 제어부(101)는 제스처 목록을 이용하여 상기 패턴에 대응하는 제스처를 검색할 수 있고, 이로써, 상기 패턴에 매핑되는 상기 명령어(또는 명령어 조합)를 추출하여 일괄 수행할 수 있다.
여기서, 상기 단말에 상기 터치 패널이 없는 경우, 상기 터치 패널과 근거리 통신 기능을 구비한 액세서리로부터 상기 패턴의 입력을 전달받을 수 있다. 즉, 사용자가 상기 액세서리의 터치 패널을 통해 입력한 패턴을 상기 근거리 통신 수단(113, 115)을 이용하여 상기 단말로 전달함으로써, 상기 단말은 상기 패턴을 입력받을 수 있다. 여기서, 상기 근거리 통신은 USB(Universal Serial Bus)등의 유선 형태와 블루투스(Bluetooth), 적외선통신(Infrared Data Association : IrDA), UART(universal asynchronous receiver/transmitter), UWB(Ultra Wide Band)등의 무선 형태를 포함한다. 이후, 상기 제어부(101)는 본 발명에 따른 알고리즘을 종료한다.
상기한 바와 같이 패널입력의 패턴인식을 이용하여 명령을 일괄처리하는 예로써, 1. MP3 재생기를 열고, 2. 상기 MP3 재생기의 음악 리스트에서 '존레논 이메진'을 찾고, 3. 재생을 위한 일련의 키(Key)를 누르는 동작 등의 액션(Action)들을 저장할 수 있으며, 이때, 상기 액션들을 명령어 '존레논-이메진'으로 명명하고, 패턴 ∝를 정의하여 하나의 제스처를 생성할 수 있다. 이후, 사용자가 상기 터치 패널(119)을 통해 상기 패턴 ∝을 입력하면, 상기 제어부(101)는 자동으로 상기 액션들을 일괄수행한다.
또 다른 예로, 폰북의 정렬된 순서대로 찾는 메뉴로 진입하기 위한 [소프트 2] 키 + [5/jkl]키 + [2/abc]키 + [6/mno]키 + [6/mno]키 + [8/ghi]키 + [Send]키를 차례로 조합한 액션을 하나의 명령어로 만들고, 패턴 △로 정의하면, 'jang'을 폰북에서 찾아서 즉시 발신하는 제스처(Gesture)를 만들 수 있다.
또한, 위급 상황시, 특정 번호로 SMS(Short Message Service), MMS (Multimedia Messaging System)를 자동 발신할 수 있는 제스처 ∴를 생성할 수도 있다. 또 다른 예로, 음성 녹음(Voice Recording) 불러오기와 녹음을 시작하는 제스처(gesture) A를 만들고, 음성 녹음(Voice Recording) 정지 후 자신의 이메일 계정으로 최근 음성(voice) 화일을 첨부하여 자동전송하는 제스처(gesture) B를 만들면, 사용자는 상기 제스처 A를 한 후, 음성을 녹음하고, 상기 제스처 B를 함으로써, 간단히 음성을 메모하고 전송할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.