驅動器接電機實現485通訊,只需要接485A 485B兩根線,多個電機可以設置成不同地址串聯過去。驅動器內部485都通過光耦隔離,解決了一臺主機連接多臺從機容易被干擾和損壞的問題。 驅動器可以通過modbus(RTU模式)來控制驅動器。主機可以通過modbus的讀寫寄存器功能來設置驅動器參數和控制運行。驅動器支持的功能碼為0x3(讀寄存器)、0x6(寫寄存器)、0x78(寫目標位置)、0x7a(修改設備地址)。 寄存器列表如下:
驅動器有配套的上位機控制軟件,可以通過軟件設置更改驅動器參數。
modbus方式位置控制過程通過撥碼開關SW1打OFF再上電即為位置模式。 先上電可以通過我們提供上位機軟件設置如下參數: 1. Modbus使能 發送 1(只有modbus使能為1才能改其他參數,且外部脈沖信號無效。) 2. 電機加速度 發送 5000 (根據實際需要設置加速度,不設置即使用默認參數20000) 3. 目標轉速 發送 1500 (根據實際運行需要設置運行的速度,不設置即使用默認參數2800) 4. 電子齒輪分子 發送 0 (電子齒輪分子保存為0后,下次上電mdobus使能默認是1) 5. 參數保存標志 發送 1 (發此參數后,前面設置的參數保存到內部) 6. 重新上電,看參數是否已經正確保存。以上設置只需要用提供的上位機設置即可 參數設置完以后,就可以通過PLC或者單片機,或者自己設計的上位機軟件發位置命令。發位置命令只需要過0x10命令發送需要走的位置就行。 1. 發增量位置(增量位置的含義是,發送的數據即為電機需要向前或者向后走的位置) 例如需要向前走一圈(假設電機編碼器為1000線編碼器,一圈脈沖數即為4000) 2. 發****位置(****位置的含義是,剛剛上電或者****位置清0或者自動找原點后的時候定義位置為0,****位置就是走到新發的位置,如第一次發4000為走一圈,第二次發已經走到了4000的位置,再發相同命令電機不走) 例如需要電機走到2圈位置(假設電機編碼器為1000線編碼器,2圈脈沖數即為8000) 例如需要電機走回原點(當電子齒輪分子為0的時候,發送0為清除當前位置,所以走回原點發送1,此時一個脈沖并不會影響精度) 注:控制電機只需要先發送需要的位置(盡量用****位置指令,因為可以重復發多次,依然是走到相同位置),然后可以通過讀取****位置對比是否走到設置位置,來判斷是否執行下一條指令(注意判斷的時候需要允許+-2的誤差);蛘呖梢酝ㄟ^接PF信號,走到位后,驅動器會給出一個光耦輸出的開關量信號。 Modbus通信格式 modbus主機讀取數據及從機應答格式 (功能碼03)
串口接收到的數據都是無符號數,如果寄存器是有符號數,發送的則是二進制補碼的格式 modbus主機寫數據及從機應答格式 (功能碼06)
modbus主機寫脈沖數 (功能碼0x10)
modbus主機寫增量脈沖數 (特殊功能碼0x78)
modbus主機寫****位置 (特殊功能碼0x7b)
Modbus同步控制多臺電機 同步控制多臺伺服電機,最多100臺。通訊格式如下:
設備地址:默認是0,這樣發給所有地址電機都能收到。 功能碼:0x10 兼容標準功能碼,支持盡量多的標準設備 寄存器地址:默認0x16,此地址為****位置的地址。 寄存器個數:如果控制1臺電機個位0x4,如果2臺0x8,以此類推。 數據長度:可以發任意數。
數據內容:每個電機會根據自己地址不同來截取自己對應的數據,如果是1號地址的電機,就是前面8個字節,內容如上表所示。 1軸位置:地址1電機的****位置。 1軸速度:地址1電機的目標速度。 1軸加速度:地址1電機的加速度。

|