1. EC_SdoWrite/EC_SdoRead 功能(néng)塊用于通過(guò)SDO讀/寫EtherCAT從站的對(duì)象。
2. 指令調用位置及圖标:
3. 描述 (1) 使用EC_SdoRead時EN需要一直處于ON狀态 (2) 正确的填寫wIndex和bySubIndex,确保從站中存在該對(duì)象否則指令會報錯 (3) 觸發(fā)xExecute一個上升沿指令開(kāi)始執行SDO通訊。 (4) SDO是非實時通信而且通訊時長(cháng)卻決于網絡狀态,數據塊大小和從站狀态。如果未能(néng)在dwTimeOut時長(cháng)内完成(chéng)通訊則會報錯ETC_TIME_OUT (5) 中間可以通過(guò)xAbort中斷指令 (6) 通訊成(chéng)功則pBuffer指向(xiàng)的指定長(cháng)度的數據將(jiāng)被寫入到從站對(duì)象中
4. 指令輸入輸出說明 符号 | | | | | | 上升沿:啓動從站參數的讀取.爲了在之後(hòu)再次釋放内部通道(dào),
實例必須被xExecute:調用至少一次= FALSE. | | | | | | | | | | | | | | | 監視時間的定義,以毫秒爲單位.如果在此時間到期時參數的寫入尚未完成(chéng),則輸出錯誤消息. | | | 指向(xiàng)包含要寫入的數據的數據緩沖區的指針. | | | | 輸出 | | | TRUE:參數的寫入完成(chéng)且沒(méi)有錯誤. | | | | | | | | | 有關xError顯示的錯誤原因的信息,例如超時時的ETC_CO_TIMEOUT | | | 如果設備中發(fā)生錯誤,此輸出將(jiāng)提供有關它的更多信息 | | | |
5. 錯誤說明 dwSdoAbort:輸出的是标準CANopen的SDO報錯信息
6. 應用舉例及使用注意事(shì)項 (1) 使用此庫的功能(néng)塊PLC固件需要在2.68以及上 (2) 編程軟件版本需要在V2.29及以上 (3) 需要讀寫的參數不需要在組态中添加,也不需要勾選啓用專家設置
此處設備ID即組态中的ID号 我們需要寫的地址位16#6098:0 也就是回原模式這(zhè)個參數,所以wIndex=16#6098(10#24728);bySubindex=0 超時時間=100ms 寫入起(qǐ)始地址=VB2350 寫入字節長(cháng)度=2
觸發(fā)指令,執行結果如下
寫入後(hòu),我們再把16#6098:0讀上來
|