產品分類

      當前位置: 首頁 > 工業控制產品 > 自動化控制 > 工業觸摸屏

      類型分類:
      科普知識
      數據分類:
      工業觸摸屏

      觸摸屏五點校正原理

      發布日期:2022-10-09 點擊率:180

             1. 物理坐標和邏輯坐標

        為了方便理解,我們首先引入2個概念,坐標和邏輯坐標。物理坐標就是觸摸屏上點的實際位置,我們通常以液晶上點的個數來度量。邏輯坐標就是觸摸屏上這一點被觸摸時A/D轉換后的坐標值。我們假定液晶最左下角為坐標軸原點A,我們在液晶上再任取一點B(十字線交叉中心),B在X方向距離A 10個點,在Y方向距離A 20個點,那么我們就說液晶上B點所正對的解摸屏上這一點的物理坐標為(10,20)。如果我們觸摸這一點時得到的X向A/D轉換值為100,Y向A/D,轉換值為200,我們就說這一點的邏輯坐標為(100,200)。

             2邏輯坐標的計算

        由于電阻式觸摸屏的電壓成線性均勻分布,那么A/D轉換后的坐標也成線性。假如我們將液晶最左下角點對應的解摸屏上的點定為物理坐標原點A其物理坐標記為(XA=0,YA=0)其邏輯坐標記為(XLA,YLA)(不一定為0)。那么觸摸屏上任意一點B的邏輯坐標可表達為:
        XLB=XLA+KXXB
        YLB=YLA+KYYB 式2-1
        其中KX、KY分別為觸摸屏X方向和Y方向的因子系數,這就像彈簧一樣(我們知道彈簧也是線性的),拉力與彈簧伸長正比。KX、KY可能為正,也可能為負,這根據具體觸摸屏安裝的方向和特性。每個液晶觸摸屏,我們也應該單獨計算每一個觸摸屏的K系數。

        如果A點不是坐標原點,也是任意一點式2-1可以表達成
        XLB=XLA+KX(XB-XA)
        YLB=YLA+KY(YB-YA) 式2-2
        由式2-2我們可以推出計算K系統的公式
        KX=(XLB-XLA)/(XB-XA)
        KY=(YLB-YLA)/(YB-YA) 式2-3

        2.2.3五點法確定基坐標和K系統

        在液晶上固定的位置顯示五個點,因為是固定的位置,所以這五個點的物理坐標是預知的。這五個點不應太靠邊,因為邊緣點對應的觸摸屏線性一般不太好。
             (1) 首先在ABCDE對應的位置逐步用尖狀物觸摸,得到五個點的邏輯坐標。
       ?。?) 分別比較A 和C、B和D的橫坐標,如果差值不在允許范圍(你自己規定一個即可,比如5),則重復操作(1)(2)步。
       ?。?) 分別比較A和B、C和D 的縱坐標,如果差值不在允許范圍(你自己規定一個即可,比如5),則重復操作(1)(2)(3)步。
       ?。?) 根據式2-3,用2組數據計算X向K系數平均值KX={(XLB-XLA)/(XB-XA)+(XLD-XLD)/(XD-XC)}/2
        (5) 根據式2-3,用2組數據計算Y系數平均值KY={(YLA-YLC)/(YA-YC)+(YLB-YLD)/(YB-YD)}/2
        (6) 將C點邏輯坐標作為基坐標,根據式2-2則觸摸屏上任意一點F邏輯坐標與基坐標的關系為:
        XLF=XLC+KX(XF-XC)
        YLF=YLC+KY(YF-YC)  式2-4
        根據這個公式,我們也可逆推出F點的物理坐標
        XF=(XLF-XLC)/KX+XC
        YF=(YLF-YLC)/KY+YC 式2-5
       ?。?) 用公式2-4求出E點邏輯坐標,并與(1)步得到的E點坐標比較,如果差值不在允許范圍(你自己規定一個即可,比如5),則重復操作以上步驟直到滿足要求。
       ?。?) 將基坐標XLC、YLC、XC、YC和KX、KY記錄在存儲設備,觸摸屏校正完成。

            3觸摸屏應用的編程思路

        3.1觸摸區域的判定
        我們關心的是,我們如何通過用戶觸摸任意一點得到的邏輯坐標,來判斷這一點是否在液晶的某個特定顯示區內。通常我們在液晶的特定區域提供一些按鈕(Button)式的矩形區域,以便用戶操作,所以這個區域所對應觸摸屏區域的邏輯坐標最小點(我們假定為這個區域的左下角)和邏輯坐標最大點(我們假定為這個區域的右上角)兩點的物坐標是預知的。假如我們事先將這兩點的物理坐標存在程序里,我們再利用已計算并存儲好的基坐標和k系數,用公式2-5求出觸摸任意一點的物理坐標,那么,觸摸任意一點得到的物理坐標只要在這兩點范圍內,我們就可以判定用戶觸摸的位置,正是液晶上Button的矩形區域內。
        如果液晶上有若干個Button區域,那么我們將每個區域邏輯坐標最大點和最小點的物理坐標存成數組或表的形式,使用時選用公式2-5計算出觸摸點的物理坐標,再從存儲設備中提取出區域的兩點物理坐標查表即可判定用戶觸摸的區域。

        3.2觸摸區域的劃分
        作為用戶交互的操作界面,不可能只顯示一個Button,也不可能在不同屏總是在同一個位置顯示Button,那么怎樣才能做一個統一的數據表,以滿足各式各樣的需求呢?在這里筆者僅講一個網絡法劃分區域的辦法,這個方法其實很簡單,就是編程人員先確定一個最小區域的Button,再以些為最小單位將屏幕劃分成網格狀,如圖3-1,一個Button可能包含一個或幾個最小單元。我們將每個單元編上號,并將每個單元邏輯坐標最大點和最小點的物理坐標存成數組或表的形式,編程人員只要知道每一屏的每一個Button是由哪幾個單元組成就可以判斷觸摸了哪一個Button.

         3.3觸摸屏的精度
        我們知道,觸摸屏的精度是由A/D轉換的位數決定的,有8位、9位、10位或更多,一般來說,精度越高越好,但是像LCD、CRT這樣的設備上安裝的觸摸屏并不一定需要精度太高的A/D的轉器件,LCD、CRT都有自己固定的分辨率,A/D轉換器件的精度高出LCD、CRT的分辨率基本是無意義的,反而為單片機計算增加了麻煩。例如一個320點×240點的LCD,我們最多只需要1/320的精度就夠了,那么最多也就需要一個9位的A/D轉換。事實上,我們也不一定需要1/320的精度,在實際應用中,每一個Button都是一個較大的矩形區域,包含若干個點,任兩個Button的距離也都很大,這樣我們就根本用不了這樣高的精度,在編程時,我們可以將A/D轉的結果進行一定的右移位來降低轉換精度,以求節省單片機的變量資源,增加代碼執行效率,這樣做有可能好幾個點是同一個邏輯坐標,但是對我們的使用毫無影響。
       


      下一篇: PLC、DCS、FCS三大控

      上一篇: 汽車導航顯示屏觸摸原

      主站蜘蛛池模板: 亚欧在线精品免费观看一区| 美女啪啪一区二区三区| 一区二区日韩国产精品| 精品深夜AV无码一区二区| 久久一区二区明星换脸| 日产亚洲一区二区三区| 国产对白精品刺激一区二区| 在线|一区二区三区| 国产激情无码一区二区三区| 久久se精品一区精品二区国产| 国产裸体舞一区二区三区| 久久亚洲色一区二区三区| asmr国产一区在线| 中文字幕日韩人妻不卡一区 | 精品国产一区二区三区AV| 精品人妻一区二区三区四区在线| 精品国产一区二区22| 末成年女A∨片一区二区| 国产精品福利一区| 精品一区二区三区四区| 无码一区二区三区免费视频| 不卡一区二区在线| 国产精品高清一区二区人妖| 国产一区在线观看免费| 无码人妻久久一区二区三区免费| 在线电影一区二区| 色老板在线视频一区二区| 加勒比无码一区二区三区| 人妻少妇一区二区三区| 日韩久久精品一区二区三区| 97av麻豆蜜桃一区二区| 上原亚衣一区二区在线观看| 成人精品视频一区二区| 无码少妇一区二区| 一区二区三区www| 成人精品一区二区不卡视频| 无码人妻一区二区三区免费n鬼沢| 日韩精品一区二区三区中文字幕| 色噜噜狠狠一区二区三区果冻 | 中文字幕精品一区二区精品| 2018高清国产一区二区三区 |