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