我只能說,你根本不理解【RS D10 K12 D30 K10】這條指令的作用。所以才搞出“為什么把12個寄存器塞到 10個寄存器里面 塞得下嗎?”這樣的笑話。這條指令分兩部分理解:前半部分是設定D10-D21這12個寄存器存儲發(fā)送的數據,后半部分是設定D30-D39這10個寄存器存儲接收的數據。M8122置1發(fā)送數據,M8123置1表示接收完數據。
三菱變頻器與PLC的串行通信有多種:第一種是MODBUS,這種方法應用廣泛,移植性好,不僅適用變頻器,而且適用其它具有MODBUS通信功能的驅動器、傳感器等。采用CRC校驗碼糾錯。第二種是三菱專用協(xié)議,采用和校驗,因適用設備單一,已很少采用。第三種是CC-LINK,需用專用通信模塊,通信編程最簡單。第四種是CC-LINK IE,未來的主流發(fā)展方向。
ENQ是三菱變頻器的專用協(xié)議通信指令的控制碼之一,命令代碼表示PLC命令變頻器干具體的事情(如啟動、停止、變向、變速,讀取轉速、電流數據等),等待時間表示,PLC發(fā)送通信數據給變頻器后,要求等多少時間后,變頻器發(fā)送應答信號,這個等待時間由變頻器的參數Pr.123設定,可以設為無等待時間。這樣PLC就少發(fā)一個數據。
建議看看李金城寫的書,他寫了幾本有關三菱PLC的書。每本書都非常好。建議學習變頻器的MODBUS通信。對于采用專用協(xié)議的通信程序不做分析。
[ 此帖被zhangqi_1234在2019-07-20 00:54重新編輯 ]