由于設計中被測量傳送機構的速度較高,因此采用M法來測量生產線的速度。同時為了平衡測速的高精度和測速的實時性,采用給定時間Tc可以變化的方式,對于傳送機構速度較低時,采用增加給定時間Tc的方法來提高測速的精度,而對于傳送機構速度較高時,采用減少給定時間Tc的方法來提高測速的實時性。
設在給定時間Tc內,編碼器A相輸出的脈沖個數為M,則用單位時間內編碼器脈沖數表示速度
實際上,主處理器ARM 從FPGA讀取的速度數據就是v。此外,若要在液晶屏上顯示生產線的速度,還需要將這個速度值v轉換進行轉換,設光電編碼器的滾動輪外周長為L,編碼器旋轉一圈A相輸出脈沖個數為N
對于商品的移動方向與打標平面內X或者Y軸的軸線平行的情況下,飛行標刻只需要對X或者¥方向的位置數據進行補償。飛行標刻時,在一次打標過程中商品只能沿著一個方向運動,非一次打標時允許商品沿著逆方向運動,即要實現數據的雙向補償,因此,不但要實現對光電編碼器輸出脈沖進行計數,還要實現鑒別光電編碼器的旋轉方向。編碼器計數子模塊 ENCODER_COUNTER16負責對A、B相脈沖進行相位鑒別和計數,一個周期的計數范圍是-32768~+32767。