PH10回轉體驅動軟件的設計
圖1 PH10回轉測頭系統的基本組成
1 PHC10的指令系統
PHC10的指令系統包括兩大類:第一類是由MMC發送至PHC10的指令,第二類是由PHC10返回至MMC的指令。指令代碼由大寫英文字母和控制符組成,以ASCII的形式傳送,所有指令都以
1.1 由MMC發送至PHC10的指令代碼
①控制代碼
控制代碼由MMC發送至PHC10用來設置和改變PH10M的工作方式,包括‘M’、‘N’、‘S’和‘U’。其中‘M’為設置PHC10為手動方式,‘N’設置PHC10為自動方式,‘S’為請求PHC10返回當前狀態,‘U’為在MMC發送角度代碼給PHC10后,更新PH10M的角度。實際使用中,若不連接PH10D,PHC10默認方式為自動方式,連接PH10D時,在MMC第一次向PHC10發送角度代碼(無效)之前為手動方式,發送一次角度代碼之后系統自動設定為自動方式,若再次使用PH10D,必須先向PHC10發送‘M’代碼。
②角度代碼‘A’和‘B’。
其中‘A’設置A軸的回轉角度,角度變化范圍0°~105°,有效指令如:A90.0
1.2 由PHC10返回至MMC的指令代碼
①控制代碼XON和XOFF。
XON通知MMC,PHC10C處于備用狀態,可以接收MMC的指令;XOFF通知MMC,PHC10在此之前接收到的信息無效或信息傳輸過程中出錯而不能繼續接收信息。通常,XOFF之后是產生錯誤的原因,如:
②確認代碼
確認代碼是PHC10接收到MMC的角度信息之后,根據信息的對錯作出的反應,包括‘V’,‘E’,‘C’和‘I’,‘V’表示接收到的角度信息有效,’C‘表示串行數據傳送格式不對‘I’表示接收到的角度值無效,‘E’表示接收到的代碼無效。其中‘E’、‘C’和‘I’均以XOFF引導。
③狀態代碼
狀態代碼是未對PH10進行操作之前或者向PHC10發送更新代碼‘U’之后,MMC請求PHC10返回的代碼,包括‘H’、‘M’、‘O’、‘D’和‘F’。‘M’表示系統當前的狀態為手動狀態,‘H’表示PH10D沒有連接,‘D’表示由于數據排列錯誤,‘O’表示有一個阻擋錯誤,‘F’表示由于受外力作用PH10M不能自鎖。返回的代碼是由上述代碼引導的角度信息,如ODA67.5B30.0
2 通信軟件設計
對PH10M的操作包括讀取PH10M當前的角度信息和設置PH10M的回轉角度。讀取PH10當前的角度信息即為請求PHC10返回當前狀態,其中包含A、B兩軸的角度,如1.2中所述;設置PH10的回轉角度分3個過程:首先請求PHC10返回當前狀態,這個過程也是讀取PH10M當前角度信息的過程;若狀態允許,接下來向PHC10發送新的角度值,等PHC10確認角度值有效后,再向PHC10發送角度更新命令‘U’;最后請求PHC10返回當前狀態,確定PH10M的回轉是否正常。圖2為查詢方式設置PH10M回轉角的軟件流程。
圖2 查詢方式設置PH10M回轉角的流程圖
3 值得注意的幾個問題
①在PH10M更新角度的過程中測量機不要移動,以免發生阻擋錯誤。
②在PHC10出現錯誤時測量機不要移動,因為此時過載檢測無效而不能保護PH10M。
③當PHC10確認接收到的角度代碼格式不對、代碼無效或角度無效時分別返回‘E’、‘C’或‘I’至MMC。這3個代碼均以XOFF引導,隔一段時間后返回XON,形如XOFF‘I’.....XON.因此MMC接收的確認代碼為上述3種代碼時,必須等待接收XON,否則,XON一值存在接收緩沖區中,影響后續通信。
④僅發送角度代碼至PHC10并不能引起PH10M角度的改變,只有當PHC10確認接收到的角度代碼有效后,MMC再發送角度更新代碼‘U’至PHC10才能引起PH10M角度改變。
⑤MMC發送‘U’至PHC10后必須等待PH10M角度更新完成,并接收PHC10返回的XON
文章版權歸西部工控xbgk所有,未經許可不得轉載。