[QEC教程]
完整教學請參見 EtherCAT 範例:QEC 數位輸入/輸出.
數位輸出
首先,我們將先透過EtherCAT數位輸出模組,QEC-R11D0F,讓外部LED閃爍。
硬體說明
- QEC-M-01
- QEC-R11D0F: EtherCAT 16數位輸出通道從站模組
- 其他: 24V LED
電路
構建電路前,請先將QEC-M上的EtherCAT Out網路與QEC-R11D0F的EtherCAT In網路連接。
此範例將使用QEC-R11D0F的Vp電源作為QEC-R11D0F Pin0的電源:
- Vp電源連接到QEC-R11D0F Pin0+
- LED的VCC線連接到QEC-R11D0F Pin0-
- LED的負極連接回到Vp電源的GND
如圖所示。
代碼
建構電路後,將EtherCAT主站,QEC-M-01與個人電腦連接,啟動86Duino軟體 (IDE) 並輸入以下程式碼。您也可以範例選單中,載入 File / Examples / Ethercat / Blink。
您要做的第一件事是引用EtherCAT函式庫。
#include "Ethercat.h"
設定EtherCAT主站與從站物件名稱。
EthercatMaster master; EthercatDevice_QECR11D0FH slave; // Depend on your QEC device name
接下來,將EtherCAT主站與從站初始化,並將從站掛載到EtherCAT中。
注意,在使用從站attach()時,需要放在主站begin()的後面,且需要在主站start()的前面。
master.begin(); slave.attach(0, master); master.start();
在主程式中 (loop),您需要利用以下程式碼,透過QEC-R11D0F Pin0提供24V電壓 (來自Vp電源的延伸) 給LED。
slave.digitalWrite(0, HIGH);
Then, you close it by using the below command.
slave.digitalWrite(0, LOW);
這會將QEC-R11D0F Pin0恢復成0伏電壓,關閉LED。
在打開和關閉之間,需要有足夠的閃爍時間,因此需要使用delay()命令,在4000毫秒亮,以及1000毫秒內暗,並且不執行其他任何操作。
範例
#include "Ethercat.h" EthercatMaster master; EthercatDevice_QECR11D0FH slave; // Depend on your QEC device name void setup(void) { master.begin(); slave.attach(0, master); master.start(); } void loop() { slave.digitalWrite(0, HIGH); delay(4000); slave.digitalWrite(0, LOW); delay(1000); }
學習更多
您可以在EtherCAT 應用中找到有關基本QEC 應用的更多資訊。
您也可以探索語言或函式庫,提供更詳細的 86Duino IDE 程式設計集合。