基于MSP430的莫爾斯報訓(xùn)練裝置設(shè)計
算法采取等距離判定法區(qū)分點碼與劃碼、碼間隔與字間隔,即取點、劃碼時長的平均值作為它們之間的判定閾值,取碼、字間隔時長的平均值作為其判定閾值。識別的完整流程如圖5所示。
采樣電平翻轉(zhuǎn)時,記錄上一個狀態(tài)的持續(xù)時間t。對于碼信號,當(dāng)t>Tdh時,表示解出劃碼,在碼值中存入11,反之則存入10;對于間隔信號,當(dāng)t>Tmz時,代表解出字間隔,將碼值用00補足16 b后進(jìn)行順序法查表,查出的位置值經(jīng)過換算就能得到對應(yīng)的莫爾斯碼符號。
3.4 判定閾值的修正方法
為了實時跟蹤報務(wù)人員的擊鍵狀態(tài),算法需要根據(jù)最新的輸入碼時長不斷對判定閾值做出修正,采用加權(quán)平均的方法可以實現(xiàn)判定閾值的平滑變化。最近一次判定為點碼的修正流程如圖6所示。其他時長的修正方法與此類似。
(1)判斷最近一次點碼時長是否符合篩選要求。因為碼文中總有一些出錯的或時長相差較大的,如果將這些時長也用來修正閾值會對其準(zhǔn)確性產(chǎn)生較大的影響。t′d表示最近一次的點碼時長,t′d表示上一次的點碼時長,a為篩選因子。a取的越大則閾值起伏越大,此處取為O.5。滿足篩選要求的數(shù)據(jù)進(jìn)入步驟(2),否則放棄本次修正。
(2)對點碼時長求加權(quán)平均。t′d表示修正后的點碼時長,β為修正因子。β越接近于1,對閾值的平滑作用越強,但跟蹤能力越差。開始階段為了迅速適應(yīng)報務(wù)人員的習(xí)慣,取β為0.5,隨著拍發(fā)的進(jìn)行,為了保證閾值的平穩(wěn)變化,將β盧逐步減小到0.2。
(3)根據(jù)最近一次點碼時長更新點劃碼判定閾值。其中t′d表示上次的劃碼時長。
(4)對點劃判定閾值做平滑修正。Tdb表示點劃碼判定閾值的最新值,t′dh表示上一次的點劃碼判定閾值。
4 結(jié) 語
采用上述設(shè)計的莫爾斯報裝置可在不接駁電腦的情況下使用,識別結(jié)果直接在LED上滾動顯示,也可連接電腦,在上位機軟件中進(jìn)行成績評定,使用方便靈活。經(jīng)過改進(jìn)的算法識別速度快,錯碼率低,在算法跟蹤速度和識別準(zhǔn)確度間取得了良好的平衡。該裝置經(jīng)報務(wù)人員大規(guī)模使用,60~140碼/分條件下誤識別率小于10-5,效果良好。
評論