來源:深圳市鑫海文科技有限公司|發布時間:2019-04-12 20:02
計算機與驅動器之間需要通過通訊協議傳輸指令,所以驅動器串行口通訊協議就尤為重要。很多朋友可能對通訊協議不了解。今天就和大家介紹一下驅動器通訊協議。
計算機(PC)與驅動器(MCU)之間以幀為通訊單位。MCU不主動向計算機發送信息。PC根據需要發送命令幀,MCU完成相應功能后將發送應答幀。命令幀(PC一
>MCU)和應答幀(MCU->PC)的格式是相同的,二者幀內容有所不同。
1,幀格式:從機地址+主命令+索引區+輔助索引區+攜帶數據+校驗和
2,從機地址:本協議默認為01(1字節)。
3,主命令:01為命令幀,00為應答幀(1字節)。
4,索引區:幀功能高8位,本協議默認為00(1字節)。
5,輔助索引區:幀功能低8位(1字節)。
6,攜帶數據:幀內容(2字節)。
7,校驗和:從機地址、主命令、索引區、輔助索引區、攜帶數據所有字節校驗和(2字節)。
8,相關參數:
波特率=9600;字節格式=1個啟始位,8個數據位,無校驗位和1個停止位;
幀間隔>100ms;
幀內字節間隔=5-1000ms;
驅動器應答延時=20-200ms。
9,使用串口通訊前,需打開外殼把面板與驅動器的連接斷開,否則會影響通訊。
10,具體的幀命令內容(參見下表:驅動器串行口通信協議)。
功能描述 | 從機地址 | 主命令 | 輔助索引區 | 攜帶數據 | 主機發送實例(最后2位為求和校驗) | 從機回應實例(最后2位為求和校驗) | 備注 |
電機啟停 | 01 | 01 | 22 | 00|01 | 01 01 00 22 00 01 00 25 | 01 00 00 22 00 01 00 24 | 攜帶數據為2個字節。為1時電機啟動,為0時電機停車 |
電機正反轉 | 01 | 01 | 21 | 00|00 | 01 01 00 21 00 00 00 23 | 01 00 00 21 00 00 00 22 | 攜帶數據為0時正轉,為1時反轉 |
設置轉速 | 01 | 01 | 27 | 03|EB | 01 01 00 27 03 EB 01 17 | 01 00 00 27 03 EB 01 16 | 攜帶數據為電機轉速,本例為1000RPM,16進制 |
查詢轉速 | 01 | 01 | 27 | 00|00 | 01 00 00 27 00 00 00 28 | 01 00 00 27 ** ** ** ** | 從機攜帶數據為電機的實際轉速,16進制 |
發送命令校驗錯誤 | 01 | 00 00 00 00 00 00 00 00 | 此為主機發送命令校驗錯誤時從機的應答幀 |