我現(xiàn)在讀和寫,用的是1S脈沖,加上計數(shù)器,當計數(shù)值等于1,的時候,讀參數(shù)值。當計數(shù)值等于2的時候,寫參數(shù)值。但是這樣速度慢,想問下,大家有沒有快一點的讀寫輪詢方法,用時間控制的方法效率不是很高,如果要讀寫多臺設(shè)備的話,整個周期會延長很多時間
出錯后不用管的。只要下一輪通訊正常的話那個錯誤標志會自己變0的。
我說的那個貼我自己找不到了。
這個庫我說說幾個要點。我只用過主機程序,從機的沒有用過。
ctrl指令兩個觸點長期接通就可以了。參數(shù)的話看著調(diào)吧。
MSG指令的EN位問題比較麻煩。長期接通不是辦法,除非只有**的一個信息向外發(fā)送。多于一個信息的話就要切換開關(guān)狀態(tài),讓出通訊。
要在什么時候斷開呢?
當done位由0變1的時候,下一個周期就不要再執(zhí)行這個MSG了。要把EN斷開。是切換的時候了。當然不切換也不會錯的,只是一直發(fā)送多余的相同的內(nèi)容罷了。(如果你是從機,你煩不煩???一直在嘮叨同一個事情)
這個0變1可能伴隨著出錯編號的產(chǎn)生,你要馬上記下出錯編號。因為下一個MSG可能使用到相同的出錯編號地址。出錯不影響你的切換。
first觸點。無論如何請只給一個周期的信號就好了。多了只會壞事。如果信息內(nèi)容變更了,就要把這個觸點斷開一個周期然后重新接通。還有一個要點。在EN位斷開之前的一個周期,first位一定要先斷開,這樣才會在下次調(diào)用MSG子程序的時候可以產(chǎn)生上升緣。否則,又有機會說錯了。
幾個MSG參數(shù)不個別說了。手冊都有。我說手冊沒有的。在first發(fā)出了信號之后Done位會在本個周期變0 。表示正在工作。這個0的期間不要更改任何參數(shù),包括*后一個間接尋址里面的值。因為通訊過程中一直要讀這些地址內(nèi)容。一變了的話就會這個錯那個錯的了。很多人用通訊去修改變頻器的速度給定,隨時想改就改,未有理會Done位。結(jié)果在不該改的時候改了。結(jié)果就產(chǎn)生了通訊錯。很莫名其妙的錯。然而,這個錯可能沒有檢測程序跟蹤就溜走了。輪到了下一輪通訊的時候恰好又通訊正常了。結(jié)果就掩蓋了剛才的錯誤,表面上看變頻器一直都在工作,誰又會懷疑剛才已經(jīng)發(fā)生了錯誤。*好是在EN位OFF的時候更改。
這個游戲是比較難玩。稍稍一錯,就完了。也不知道哪里錯。手冊也沒多說。只能面對著設(shè)備沉浸一段時間,否則一出錯就打消了使用的念頭了。