在回轉窯的控制系統中,無論傳輸數據還是傳輸圖形參數,通信雙方都必須遵從統一的通信協議。通信協議是對數據和圖形參數傳送方式的規定。
由于圖形參數的不可重入性,故接收、發送不能同時進行,因此回轉窯的系統采用是上下位機主從式通信。上下位機功能與通信在回轉窯中的作用很大,上位機可以隨時將指令發送給下位機,而下位機只能響應上位機的指令,上位機始終具有初始傳送優先權(即每次通信均由上位機來啟動,下位機總是處于被動狀態)。
但是,如果上位機和下位機中某一臺運行速度較快,很容易造成運行較慢的計算機還沒來得及處理先前的數據和圖形參數,新的數據和圖形參數又來了,這就引起“過沖”錯。故通常,采用上下位機通信口采用軟件握手和硬件握手相結合的方法來 。常規的硬件握手是通過發送和接收trs和cts信號完成對數據流的方向及其相應的傳輸方向轉換的控制,然而在pcl-745b通信卡上的rs-458接口能夠自動地判斷數據流的方向并能自動轉換傳輸方向,因此在該系統上下位機通信中采用軟件握手即可,無需采用硬件握手形式。
上下位機軟件握手通信協議:當上位機向下位機索要數據或圖形參數時,上位機先發“呼叫”信號驗證線路是否正確連接,下位機收到“呼叫”信號后,返回“連接正確”信號,上位機收到后就發“發送數據”信號并做好數據或圖形參數接收準備;當下位機收到“發送數據”的字符后,開始發送數據或圖形參數,每發送一個字節求一次“累加和”。“累加和”是每發送的一個字節數據(或命令代碼)都累加到一個單元中去,累加過程中發生多次向高位進位(丟失), 在累加單元中剩余的結果。假定數據或圖形參數塊長16個字節,起始地址為30h,一個數據或圖形參數塊發完后 出“累加和”。上位機接收數據或圖形參數并轉存到數據區,起始地址也為30h。同時,每接收一字節也計算一次“累加和”,當數據或圖形參數塊接收完畢后,再接收從下位機發來的“累加和”,并將它與自己計算的“累加和”進行比較。若兩者相等,說明接收正確,則上位機向下位機發送“數據正確”的信號;若兩者不等,說明接收不正確,則上位機向下位機發送“數據不正確”的信號,請求重發。下位機收到“數據正確”的字符后,結束發送;若收到“數據不正確”的字符則重新將數據或圖形參數發送一次。