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