首先講下,這片帖子不是講200smart PLC和變頻器通訊程序怎么編寫的,因?yàn)轭愃频奶泳W(wǎng)上其實(shí)有很多,而且大多數(shù)照著操作,編程就能成功。但是呢往往有一些鉆牛角尖的人,就是照貓畫虎還是會(huì)失敗,比如說像我這樣的。然而出錯(cuò)的原因,又是比較有意思的,可能有些人也會(huì)遇到,所以在此記錄下。
現(xiàn)在的通訊基本都是用的Modbus通訊,西門子PLC的這個(gè)也是比較多見,而且?guī)椭謨?cè)也都有介紹。Modbus通訊里面有一個(gè)指令碼是連續(xù)多字節(jié)傳送,功能碼是03。我之前是用慣了S7-1200PLC,所以喜歡把連續(xù)的寄存器地址寫在一起,舉個(gè)例子,比如變頻器啟停命令是40005,變頻器頻率設(shè)定是40006,那么我自然就會(huì)連續(xù)發(fā)送2個(gè)字地址。于是我在200smart PLC也是這么用的?蓪(shí)際調(diào)試的結(jié)果就是,這樣的連續(xù)傳送大于1個(gè)字的地址,變頻器通訊控制是失敗的。至于失敗的原因是smart200不行,還是變頻器端不行。我也沒有具體研究,咱也沒這個(gè)能力。
如圖,在字節(jié)數(shù)改成1以后,如果接線正確,參數(shù)正確,程序正確,那就能正常啟停變頻器,以及更改變頻器頻率。但是字節(jié)數(shù)改成2及以上,那肯定是通訊異常。而且現(xiàn)在網(wǎng)上的編程說明文檔也基本都是1個(gè)字節(jié)。
[ 此帖被尹夢(mèng)超在2022-03-10 17:23重新編輯 ]