專利名稱:一種鼠標及其方法
技術領域:
本發明涉及計算機輔助設備領域,特別涉及為活動不便人士和使用環境受限的計算機輔助設備,具體的講是一種鼠標及其方法。
背景技術:
隨著計算機等智能終端的廣泛應用,其功能越來越強大,人機界面越來越友好,使更多的用戶可以方便的通過鼠標等計算機輔助設備對計算機等智能終端進行操作,并且目前各種移動智能終端,如掌上電腦PDA,正在越來越廣泛的應用于日常生活。一般的信息輸入是依靠按鍵,觸摸屏或者鼠標等來輸入,但是對于各種小型的移動智能終端由于體積的限制,不能夠使用鼠標進行輸入。而在計算機等終端使用上,很多行動不便的殘疾人也可能會需要使用鼠標等輔助設備對計算機進行操控,但是如果沒有手臂或者相關身體部分存在不便的情況下使用計算機就會很不方便,以至于不能夠操作計算機。
針對于以上問題,現有技術中出現過一些基于紅外線偵測的頭戴式鼠標,其能夠向計算機傳送點頭或者轉向的頭部運動數據,用裝置在使用者前額的紅外線感測設備,將頭部的動作轉化為鼠標的信號。這種裝置具有兩個紅外線傳感器,一個在用戶面對的顯示器上,另一個位于用戶特殊的頭盔上,兩個傳感器都連接于計算機的USB接口上,該裝置可以用來做操作桿、鼠標或者通過矢量計算生成控制指令的USB模擬控制器。但是該裝置的缺點在于需要復雜的偵測設備,并且造價太高。
公開于2003年6月18的中國專利02278190.0,公開了一種頭戴式鼠標,由頭夾和肩夾組成,在頭夾上設有多個轉動軸,轉動軸內設有回位彈簧,轉動繩一端固定在頭夾上,另一端繞在轉動軸上,該裝置的可靠性較低,不利于頭戴,使用上存在著不足。
公開于2001年5月16日的中國專利00243548.9,公開了一種穿戴式手持鼠標,利用軌跡球類型的鼠標結合吊環,以實現在不需要使用鼠標時可以將其吊掛在手背上,但是該方案的不足在于,對于雙手有殘疾或者移動智能終端來說,該鼠標的使用同樣是不方便的。
發明內容
本發明的目的在于提供一種鼠標及其方法,以便殘疾人士或者在移動智能終端上可以方便的實現鼠標功能。
本發明的目的在于提供一種鼠標,利用簡單的機械結構對同一水平面內垂直的兩個滾動軸的監控實現鼠標功能。
本發明的另一目的在于提供一種鼠標方法,監控滾動軸的轉動,利用相應算法實現將用戶的動作軌跡轉換為屏幕上鼠標的移動軌跡。
一種鼠標,包括兩個檢測單元,相互垂直,分別代表屏幕上的X軸和Y軸,用于檢測鼠標傾斜角度的變化;處理單元與所述檢測單元相連接,用于將傾斜角度數據轉換為X軸方向和Y軸方向上的位移數據;終端機與所述處理單元相連接,控制光標在屏幕上移動。
每個檢測單元包括一固定部分和一轉動部分,所述固定部分不隨轉動部分的轉動而轉動。
所述轉動部分為一轉動軸,所述固定部分為一滾輪,滾輪套接于轉動軸,在所述滾輪的基準位置還具有一加重塊,以使滾輪在轉動軸轉動時保持基準位置始終不變。
所述轉動部分為一轉動軸和一殼體;所述固定部分為一滾輪,滾輪套接于轉動軸,所述轉動軸固定于殼體;在所述滾輪的基準位置還具有一加重塊,以使滾輪在轉動軸和殼體轉動時保持基準位置始終不變。
所述導電點設置于所述滾輪的內側壁的多條刻度線上,所述電刷設置于所述轉動軸上,所述導電點與電刷活動接觸。
所述導電點位于所述轉動軸的側壁的多條刻度線上,所述電刷位于所述滾輪內側壁上,所述導電點與電刷活動接觸。
所述導電點位于所述滾輪的外側壁的多條刻度線上,所述電刷位于所述殼體內側壁上,所述導電點與電刷活動接觸。
所述導電點位于所述殼體內側壁的多條刻度線上,所述電刷位于所述滾輪外側壁上,所述導電點與電刷活動接觸。
不同刻度線上的導電點為不同的序列,當電刷接觸不同序列的導電點時,產生不同信號以代表不同傾角。
所述不同序列的導電點是指,在不同刻度線上設置不相同數目的導電點或者設置具有不相同電壓值的導電點。
一種鼠標方法,包括以下步驟
設置步驟,初始化代表屏幕上X軸和Y軸的兩個檢測單元;采集步驟,當檢測單元沿水平面傾斜時,采集兩個檢測單元傾斜角度的變化數據;處理步驟處理單元接收所述傾角數據,并將其轉換為X軸方向和Y軸方向的位移數據;顯示步驟,處理單元將所述位移數據傳送到終端機,由終端機根據位移數據控制光標在屏幕上移動。
在所述采集步驟中包括以下具體步驟通過檢測單元中的一固定部分和一轉動部分采集該檢測單元所對應X軸或Y軸方向的傾角數據。
在所述采集步驟中還包括判斷鼠標按鍵的步驟,當檢測單元保持當前傾斜角度一段時間內不變則由處理單元產生一鼠標按鍵信號。
在所述采集步驟中還包括判斷鼠標按鍵的步驟,當一段時間內檢測單元變化值超過一預定值則由處理單元產生一鼠標按鍵信號。
本發明的有益效果在于,成本低、結構簡單,并且通過立體的輸入鼠標數據,增加了鼠標的功能,將本發明設置于頭部或手背或其他位置都可以減輕操作計算機、便攜終端的不便,還可以方便身體上有殘疾的用戶,使他們操作計算機成為可能。
圖1為本發明一實施例框圖;圖2為圖1實施例檢測單元結構示意圖;圖3為圖2滾輪刻度示例圖;圖4A和圖4B為圖2殼體傾斜導致電刷與滾輪導電點接觸位置變化示意圖;圖5為本發明方案另一實施例框圖;圖6為本發明方法的流程圖;圖7為本發明單片機向PC機傳輸數據的流程圖。
具體實施例方式
下面,結合附圖對于本發明進行如下詳細說明。
如圖1所示,為本發明一實施例框圖。本實施例鼠標由檢測單元部分(機械部分)和單片機控制部分組成。單片機通過檢測單元部分采集當前機械部分相對水平面的傾斜角度,將該角度信息轉換成位移信息并按照PS/2協議編碼打包成三個字節的數據包,然后按照PS/2協議的時序通過PC的PS/2鼠標接口要求發送給PC,從而控制PC端鼠標箭頭的運行軌跡。本實施例可以用于頭盔和帽子上。
如圖2所示,為本發明檢測單元結構示意圖。該檢測單元可以測量水平面上X軸或Y軸兩個方向的傾斜角度,兩部分的結構是完全相同的,下面只闡述如何測量一個方向的傾斜角度。
檢測單元外側可以具備有殼體(圖未示),該殼體為4cm×4cm×4cm的正方形大小,其作用是把其內部的功能部件集成在一起,構成一個完整的裝置。X軸和Y軸兩個方向上的檢測單元也可以安裝于頭盔或者帽子的正前方帽沿和與正前方成直角的帽沿處。檢測單元分為兩個部分固定部分和轉動部分,其中轉動部分為轉動軸201,固定于殼體或者是帽沿部分,當使用者頭部傾斜時殼體或者帽沿隨之傾斜,轉動軸也隨殼體或者帽沿的傾斜而傾斜;固定部分為相對于轉動部分的傾斜而轉動的滾輪202,滾輪的某一基準位置203在使用者頭部傾斜(帶動整個檢測單元發生傾斜)時,繞轉動軸轉動而保持基準位置方向不變。導電點204在本例中位于滾輪內壁,還具有電刷205在本例中一端設于轉動軸201另一端活動接觸于導電點204。當然,轉動部分和固定部分都是相對的。
殼體中央也可具有兩個互相垂直的轉動軸(即把X軸Y軸方向的兩個檢測單元置于同一殼體內),分別對應X軸和Y軸,兩個軸均位于水平面上。在每個軸上均安裝一滾輪,該滾輪可繞軸自由轉動。在滾輪四周的某一點放一加重塊從而使滾輪的重心在該點附近,將該點作為滾輪的基準位置,這樣當檢測單元發生傾斜與水平面產生傾角時,帶動轉動軸偏離水平面,并由于重力作用,滾輪會繞軸旋轉,而基準位置總是在最下方。這樣在滾輪上標上刻度,通過讀取刻度的值就能獲知當前轉動軸線相對水平面的傾斜角度信息。其中一個檢測單元檢測左右方向的傾斜角度,另一個檢測前后方向的傾斜角度,根據用戶頭或者手等的傾斜來判斷屏幕上鼠標的移動方向和距離。
如圖3所示,為本發明滾輪刻度示例圖。在滾輪上標上刻度206,將整個圓周分為32份(可根據需要分為不同份數),每份對應360/32=11.25度,這樣整個檢測單元測角的精度也就是11.25度,如果有更高的精度要求將圓周分配更多的刻度即可。當轉動軸位于水平面上時基準位置處的刻度為0,對應傾角為0,當轉動軸傾斜時基準位置處的刻度就代表了當前的傾角信息,例如基準位置處當前刻度為2,則當前的傾角就是2*11.25=22.5度。
圖4A和圖4B為本發明殼體的傾斜導致電刷與滾輪導電點接觸位置變化示意圖。單片機需要讀取當前的刻度值,這是該檢測單元的關鍵內容。目前的設計中一個圓周有32個刻度,這樣在每個刻度處放置最多5個導電點,就可以通過這幾個導電點的個數、放置的位置來區別不同的刻度值。在殼體的基準位置處放置5個電刷205,也可以在轉動軸上設置5個電刷,如果電刷205設置在殼體上則導電點(圖未示)設置于滾輪外側壁上,如果電刷205設置于轉動軸上則導電點設置在滾輪內側壁上;當然,電刷205和導電點的設置可以具有更大的靈活性,在滾輪上設置電刷205,在殼體上設置導電點也是可以的,主要利用電刷205與導電點相結合實現這種轉動部分與固定部分傾角角度檢測的目的。電刷與基準位置之間的夾角,鼠標在用戶的操作下傾斜后電刷與基準位置之間的夾角,兩個角度的差值為α。
電刷205分別接到單片機的5個數據IO口上,滾輪上的導電點則均連接到殼體的地線上。在單片機程序中設置這5個數據IO口為漏極開路輸出形式,并賦初始值為1。這樣電刷205如果接觸到導電點,因為導電點處的電壓為0,則單片機讀取該IO口的值將是0,否則將是1。因為上述所述32個刻度點,通過將刻度進行5位二進制編碼(代表32個刻度點),刻度0對應00000,刻度1對應00001...依此類推,其中在編碼為0的位置放置導電點,編碼為1的位置不放置,例如刻度0為5個導電點,刻度1為四個導電點,單片機讀到的5位IO口的值就對應了當前基準位置處的刻度值。同樣可以根據鼠標的精度設置不同的滾輪刻度,所對應的二進制編碼的數位也將改變。
表1為本發明處理單元向計算機傳送數據格式的數據結構。
單片機讀取到刻度值后將通過PS/2協議與PC通信。PC與單片機之間傳輸的信號包括時鐘信號CLK和串行雙向的命令/數據信號(COMM/DATA),采用的是PS/2協議,這是一種同步串行通信協議。時鐘信號CLK由單片機產生。PC向單片機發出命令,單片機接收到合法命令后向PC發出應答信號,如果命令要求還會接著向PC發送數據信號。PC對來自單片機的信號無需回應,并且能夠通過將時鐘線CLK置為低電平來終止由單片機到PC機的通信。單片機向PC發送的數據信號采用3字節數據包格式。
如圖5所示,為本發明方案另一實施例框圖。本系統的處理單元采用C8051F021單片機,角度檢測單元采用MSIN-H3DXX-F系列高精度數字傾角傳感器。使用兩個傾角傳感器采集模擬信號并進行計算和處理從而獲得鼠標在PC屏幕上水平方向和垂直方向的相對位移,然后將獲得的位移數據通過RS232串口發送至單片機。單片機對這兩個方向上的傾角數據進行一系列處理,分析得出這兩組位移數據,通過PS/2接口發送數據包使鼠標箭頭移動一定的位移。采用12V直流電源供電,板上經過一電源模塊XR10/12S05將12V輸入轉為5V,作為傾角傳感器的電源,單片機C8051F021所需的3.3V電源由LM1086電源芯片將5V轉為3.3V提供。
單片機的P0.0與P0.1配置成串口,分別與傾角傳感器的TX和RX管腳相連。P2.1與PC機的PS/2接口的DATA口相接,P2.0與PC機的PS/2接口的CLK口相接。串口0用來與傾角檢測單元通信。定時器0為延時函數提供時間基準;定時器1作為串口0的波特率發生器;看門狗定時器在軟件進入死循環時實現軟件復位;其它IO端口與硬件定義相同,其中未用的IO口引出留作以后功能擴展使用。
如圖6所示,為本發明方法的流程圖。系統開始,步驟S11;首先系統進行初始化,步驟S12;通過檢測單元進行傾角采樣,步驟S13;單片機處理單元對數據進行處理,步驟S14;單片機與PC機進行數據傳輸,步驟S15;PC機根據接收到的數據控制屏幕上的光標,步驟S16。其中,PC機可以是任何具有光標處理能力的終端,手機、PDA等。
兩個檢測單元所測得的傾角為鼠標傾斜后X軸Y軸與Z軸的夾角,且互相垂直,也就是XOZ,YOZ平面上的夾角,設為α和β,那么根據α和β的大小發送相對位移量X軸相對位移ΔX=K*α,Y軸相對位移ΔY=K*β,K是比例系數,可根據鼠標精度和靈敏度來設定。
當用戶需要確認本發明鼠標選定內容,即,鼠標左右鍵的功能,是通過以下步驟來實現的。當鼠標在某一段時間內(例如0.2秒)保持傾斜角度不變化,則代表選中光標所在位置,如果光標只是經過某些控制區域則不代表選中。如果鼠標在很短時間內變化的傾角很大,則設定為鼠標右鍵功能,或者可以檢測單元的傾角和方向作為鼠標按鍵的設定,當但某個時間內傾角達到某個特定值,再結合傾角的方向作為鼠標的某個按鍵,比如鼠標從左往右很快移動作為左鍵,從右往左作右鍵,從前往后作為中鍵。如此實現鼠標左右鍵功能的設定很多,不做一一舉例。
如圖7所示,為本發明方法單片機到PC機數據傳輸流程圖。傳輸過程開始,步驟S21;檢測時鐘線是否為高(時鐘線為高表明當前主機允許單片機發送數據),步驟S22;如果為高,即,PC機端要求檢測鼠標輸入信號,則單片機檢測數據線是否為高,步驟S23,否則進入步驟S22,循環檢測時鐘線是否為高。如果單片機檢測數據線為高,則將數據線拉低,作為發送起始位,步驟S24;如果數據線為低則接收PC機數據,進入步驟S29;單片機將經過加工的數據向PC機進行傳輸,步驟S25;判斷是否傳輸完一個完整的信息,步驟S26;如果傳送完畢則單片機將時鐘線拉低以便PC機進行光標移動,步驟S27,如果沒有傳送完畢則進行步驟25,繼續傳輸;單片機釋放時鐘線(釋放時鐘線表示將時鐘線對應的IO口置為1,這樣主機方能將時鐘線拉低),允許傳輸下一數據包,步驟S28;所有數據傳輸完成后回到步驟S22。
本發明的有益效果在于,成本低、結構簡單,并且通過立體的輸入鼠標數據,不需要現有鼠標必須接觸而產生X軸和Y軸的位移,特別是在一些便攜式終端上增加了便利性;增加了鼠標的功能,將本發明設置于頭部或手背或其他位置可以減少操作計算機、便攜終端的不便,還可以方便身體上有殘疾的用戶,使他們操作計算機成為可能。
以上具體實施方式
僅用于說明本發明,而非用于限定本發明。
權利要求
1.一種鼠標,其特征在于兩個檢測單元,相互垂直,分別代表屏幕上的X軸和Y軸,用于檢測鼠標傾斜角度的變化;處理單元與所述檢測單元相連接,用于將傾斜角度數據轉換為X軸方向和Y軸方向上的位移數據;終端機與所述處理單元相連接,控制光標在屏幕上移動。
2.根據權利要求1所述的一種鼠標,其特征在于,每個檢測單元包括一固定部分和一轉動部分,所述固定部分不隨轉動部分的轉動而轉動。
3.根據權利要求2所述的一種鼠標,其特征在于,所述轉動部分為一轉動軸,所述固定部分為一滾輪,滾輪套接于轉動軸,在所述滾輪的基準位置還具有一加重塊,以使滾輪在轉動軸轉動時保持基準位置始終不變。
4.根據權利要求2所述的一種鼠標,其特征在于,所述轉動部分為一轉動軸和一殼體;所述固定部分為一滾輪,滾輪套接于轉動軸,所述轉動軸固定于殼體;在所述滾輪的基準位置還具有一加重塊,以使滾輪在轉動軸和殼體轉動時保持基準位置始終不變。
5.根據權利要求3所述的一種鼠標,其特征在于還具有導電點和電刷,所述導電點設置于所述滾輪的內側壁的多條刻度線上,所述電刷設置于所述轉動軸上,所述導電點與電刷活動接觸。
6.根據權利要求3所述的一種鼠標,其特征在于還具有導電點和電刷,所述導電點位于所述轉動軸的側壁的多條刻度線上,所述電刷位于所述滾輪內側壁上,所述導電點與電刷活動接觸。
7.根據權利要求4所述的一種鼠標,其特征在于還具有導電點和電刷,所述導電點位于所述滾輪的外側壁的多條刻度線上,所述電刷位于所述殼體內側壁上,所述導電點與電刷活動接觸。
8.根據權利要求4所述的一種鼠標,其特征在于還具有導電點和電刷,所述導電點位于所述殼體內側壁的多條刻度線上,所述電刷位于所述滾輪外側壁上,所述導電點與電刷活動接觸。
9.根據權利要求5或6或7或8中任意一項所述的一種鼠標,其特征在于,不同刻度線上的導電點為不同的序列,當電刷接觸不同序列的導電點時,產生不同信號以代表不同傾角。
10.根據權利要求9所述的一種鼠標,其特征在于,所述不同序列的導電點是指,在不同刻度線上設置不相同數目的導電點或者設置具有不相同電壓值的導電點。
11.一種鼠標方法,其特征在于包括以下步驟設置步驟,初始化代表屏幕上X軸和Y軸的兩個檢測單元;采集步驟,當檢測單元沿水平面傾斜時,采集兩個檢測單元傾斜角度的變化數據;處理步驟處理單元接收所述傾角數據,并將其轉換為X軸方向和Y軸方向的位移數據;顯示步驟,處理單元將所述位移數據傳送到終端機,由終端機根據位移數據控制光標在屏幕上移動。
12.根據權利要求11所述的一種鼠標方法,其特征在于,在所述采集步驟中包括以下具體步驟通過檢測單元中的一固定部分和一轉動部分采集該檢測單元所對應X軸或Y軸方向的傾角數據。
13.根據權利要求11所述的一種鼠標方法,其特征在于,在所述采集步驟中還包括判斷鼠標按鍵的步驟,當檢測單元保持當前傾斜角度一段時間內不變則由處理單元產生一鼠標按鍵信號。
14.根據權利要求11所述的一種鼠標方法,其特征在于,在所述采集步驟中還包括判斷鼠標按鍵的步驟,當一段時間內檢測單元變化值超過一預定值則由處理單元產生一鼠標按鍵信號。
全文摘要
手暫時不能應用鼠標的用戶,和在小型移動終端上使用鼠標的困難,本發明提出了一種鼠標和方法,其中鼠標的特征在于兩個檢測單元,分別代表屏幕上的X軸和Y軸,用于檢測鼠標傾斜角度的變化;處理單元與所述檢測單元相連接,用于將傾斜角度數據轉換為X軸方向和Y軸方向上的位移數據;終端機與所述處理單元相連接,控制光標在屏幕上移動。本發明有益效果在于,成本低、結構簡單,并且通過立體的輸入鼠標數據,不需要現有鼠標必須接觸而產生X軸和Y軸的位移,特別是在一些便攜式終端上增加了便利性;還可以方便身體上有殘疾的用戶,使他們操作計算機成為可能。
文檔編號G06F3/033GK1979392SQ20051010528
公開日2007年6月13日 申請日期2005年11月30日 優先權日2005年11月30日
發明者聶進 申請人:西門子(中國)有限公司