本指南將向您展示如何使用 EtherCAT Master QEC-M-01P 和數位 I/O 從站 QEC-RXXDXX系列.
注意事項:QEC 的 PoE(乙太網路供電)
在QEC 產品裝置中,使用者可以很容易區分PoE 和非PoE: 如果RJ45 外殼為紅色,則為PoE 類型;如果RJ45 外殼為黑色,則為非PoE 類型。
非PoE型 | PoE型 |
---|---|
PoE(乙太網路供電)是一種透過網路供電的功能。 QEC 可配備選購的 PoE 功能以減少佈線。 在實際應用中,PoE是根據系統設備來選擇的,因此在評估和測試時請注意以下幾點:
- QEC 的 PoE 功能與 EtherCAT P 不同且不相容,且 QEC 的 PoE 功能基於 PoE Type B,接腳功能如下:
- 連接 PoE 和非 PoE 設備時,請確保斷開引腳 4、5、7 和 8 處的乙太網路電纜(例如,支援 PoE 的 QEC EtherCAT 主站與第三方 EtherCAT 從站連接時)。
- QEC 的PoE 最多可傳輸24V/3A 的電源。
1. 連接及接線硬體
這裡使用以下設備:
- QEC M 01P01P(EtherCAT 主站/PoE PoE)
- QEC R11D88H N (EtherCAT Slave 8-ch 數位輸入與8-ch 數位輸出/PoE)
- 24V 電源
- 24V LED
1.1 QEC-M-01P
帶有PoE 功能的QEC EtherCAT 主站。
- 使用 EtherCAT Out 連接埠(上)透過 RJ45 電纜(由 PoE 供電)連接到 QEC-R11D88H 的 EtherCAT In 連接埠。
- 透過 EU 端子連接到 Vs+/Vs- 和 Vp+/Vp- 電源以獲得 24V 電源。
1.2 QEC-R11D88H-N
- 從 VP+ 連接到 DO 0+。
- 將 24V LED+ 端子連接到 DO 0-。
- 將 24V LED- 端連接至 VP-。
2. 軟體/開發環境:86Duino IDE
從以下位置下載 86duino IDE https://www.qec.tw/software/.
下載後,請將下載的zip檔解壓縮,無需安裝其他軟體,只需雙擊86duino.exe即可啟動IDE。
*注意:如果 Windows 顯示警告,請按一下「詳細資料」一次,然後按一下「繼續執行」按鈕一次。
86Duino Coding IDE 500+ 如下圖所示。
3.連接PC並設定環境
請依照以下步驟設定環境:
- 透過 Micro USB 轉 USB 線將 QEC-M-01P 連接至 PC(已安裝 86Duino IDE)。
- 開啟 QEC 電源。
- 開啟電腦中的“裝置管理員”(按Win+X後在選單中選擇)->“連接埠(COM & LPT)”,展開連接埠; 您應該看到偵測到“Prolific PL2303GC USB 串列 COM 連接埠 (COMx)”; 如果沒有,您將需要安裝所需的驅動程式。
(對於Windows PL2303驅動程序,您可以下載於: 這裡)
- 打開86Duino IDE。
- 選擇正確的板子:在 IDE 選單中,選擇 Tools> Board > QEC-M-01(或您使用的 QEC-M 主模型)。
- 選擇連接埠:在 IDE 選單中,選擇“工具”>“連接埠”,然後選擇要連接到 QEC-M 主裝置的 USB 連接埠(在本例中為 COM3 (QEC))。
3.1 開發方式1:寫程式碼
EtherCAT 主站 (QEC-M-01P) 和數位 IO 從站 (QEC-R11D88H-N) 可透過 86Duino IDE 中的 EtherCAT 函式庫進行設定和程式設計。
在Arduino 開發環境中,主要分為兩大部分: setup()
以及 loop()
,分別對應初始化和主程式。 在操作 EtherCAT 網路之前,必須對其進行一次配置。 在 EtherCAT 設備中,該過程應該是從 Pre-OP 到 OP 模式。
以下範例假設我們要將Digital Output 的Pin0 設成HIGH 維持4 秒後,在改成LOW 維持1 秒。
3.1.1 對於 QEC 從站
使用QEC Slave時,可以使用專用的QEC Ethercat Slave Library。 例如,QEC-R11D88H就可以使用 EthercatDevice_QECRXXD 類。 範例程式碼如下:
#include "Ethercat.h" // Include the EtherCAT Library EthercatMaster master; // Create an EtherCAT Master Object EthercatDevice_QECR11D88H slave; // Create an EtherCAT Slave Object for QEC-R11D88H // put your setup code here, to run once: void setup() { // Initialize the EtherCAT Master. If successful, all slaves enter PRE-OPERATIONAL state master.begin(); // Attach the QEC-R11D88H slave device to the EtherCAT Master at position 0 slave.attach(0, master); // Start the EtherCAT Master. If successful, all slaves enter OPERATIONAL state // The parameter 1000000 sets the cycle time in nanoseconds master.start(1000000, ECAT_SYNC); } // put your main code here, to run repeatedly: void loop() { // Set digital output at pin 0 to HIGH slave.digitalWrite(0, HIGH); delay(4000); // Wait for 4 seconds // Set digital output at pin 0 to LOW slave.digitalWrite(0, LOW); delay(1000); // Wait for 1 second }
3.1.2 針對第三方從站
在使用非QEC 的從站時,則可以使用EthercatDevice_Generic 的功能,可參考到 EthercatDevice 類別。範例程式碼參考如下,也可透用在QEC R11D88H 上。
#include "Ethercat.h" // Include the EtherCAT Library EthercatMaster master; // Create an EtherCAT Master Object EthercatDevice_Generic slave; // Create an EtherCAT Slave Object // put your setup code here, to run once: void setup() { // Initialize the EtherCAT Master. If successful, all slaves enter PRE-OPERATIONAL state master.begin(); // Attach the QEC-R11D88H slave device to the EtherCAT Master at position 0 slave.attach(0, master); // Start the EtherCAT Master. If successful, all slaves enter OPERATIONAL state // The parameter 1000000 sets the cycle time in nanoseconds master.start(1000000, ECAT_SYNC); } // put your main code here, to run repeatedly: void loop() { // Write a HIGH value to a bit in the Process Data Output at index 0 slave.pdoBitWrite(0, HIGH); delay(4000); // Wait for 4 seconds // Write a LOW value to the same bit in the Process Data Output at index 0 slave.pdoBitWrite(0, LOW); delay(1000); // Wait for 1 second }
注意: 程式碼撰寫好後,請點擊工具列上的 進行編譯;確認編譯完成且沒有錯誤,您可以點選 進行上傳。上傳完成後,程式將會運行,LED 將開始閃爍。
4. 開發方法2:用86EVA 與程式碼
86EVA 是基於86Duino IDE 中EtherCAT Library 的圖形化EtherCAT 組態工具,是 86Duino IDE 的開發套件。使用者可以透過86EVA 將EtherCAT 主站(QEC M 01P) 與Digital IO 從站(QEC R11D88H N) 進行組態,然後開始進行編程。
以下範例假設我們要將Digital Output 的Pin0 設成HIGH 維持4 秒後,在改成LOW 維持1 秒。
步驟1:開啟86EVA,並進行掃描
可透過以下按鈕打開86EVA 工具。
確認選擇了正確的COM port 後,按下「Connect 」 按鈕開始掃描EtherCAT 網路。
完成對EtherCAT 網路上已連接設備的掃描後,將顯示已連接的設備。
按左下角的「View 」按鈕可以查看裝置的狀態。
步驟2:設定參數
在掃描完成的設備圖像上按兩下進入相應的參數設定畫面。
QEC-M-01
按兩下QEC M 01 的圖像以查看參數設定。
如果第一次開發,請先使用預設設置;點擊左上角「Back 」返回。
QEC-R11D88H-N
按兩下QEC R11D88H 的圖像以查看參數設定。
繼續向下操作到Digital Output Pin Mapping 區塊。其中,我們將Digital Output Pin Mapping 的DQ00 的下拉框中選擇“Virtual Pin 後,點擊左上角「Back 」返回。
此動作是將QEC R11D88H 的Digital Output Pin0 設置成EVA 的虛擬D0 腳位。
步驟3:生成程式碼
設定完設備的參數後,回到主畫面,並按下右下角的「Code Generation 」按鈕。
完成後,按兩下確定按鈕或10 秒後自動關閉86EVA 。
生成的程式碼及檔案如下:
- sketch_oct04a:主專案 (.ino,取決於您的專案名稱)
- ChatGPT.h:可供ChatGPT 參考的參數
- myeva.cpp:86EVA 的C++ 程式碼
- myeva.h:86EVA 的Header 檔
補充說明: 86EVA 生成程式碼後,會在主程式(. 中自動產生以下程式碼,缺一個都會導致86EVA 不運作。
#include “myeva.h”
:引入EVA 的Header 檔EVA.begin()
於setup();
:初始化EVA 功能
步驟4:編寫程式碼
以下範例假設我們要將EVA 的D0 腳位 為Digital Output 的Pin0) 設成HIGH 維持4 秒後,在改成LOW 維持1 秒。
#include "myeva.h" // Include EVA function void setup() { EVA.begin(); // Initialize EVA function. // put your setup code here, to run once: } void loop() { // put your main code here, to run repeatedly: // Set EVA D0 pin to HIGH EVA.digitalWrite(0, HIGH); delay(4000); // Wait for 4 seconds // Set EVA D0 pin to HIGH EVA.digitalWrite(0, LOW); delay(1000); // Wait for 1 second }
注意: 程式碼撰寫好後,請點擊工具列上的 進行編譯;確認編譯完成且沒有錯誤,您可以點選 進行上傳。上傳完成後,程式將會運行,LED 將開始閃爍。
5. 故障排除
5.1 QEC-M-01無法成功上傳程式碼
當您無法成功上傳程式碼時,請開啟86EVA檢查您的QEC EtherCAT Master環境是否異常。 如下圖所示,請嘗試更新您的QEC EtherCAT Master的環境,其中包括以下三項:Bootloader、EtherCAT韌體和EtherCAT工具。
現在,我們將進一步解釋如何進行更新:
步驟1. 設置QEC-M
- 下載和安裝 86Duino IDE 500(或更新的版本):你可以從後方連結下載: 軟體.
- 連接 QEC-M 主站:使用 USB 纜線將 QEC-M 主站連接到電腦上。
- 打開 86Duino IDE:在安裝完成後,打開 86Duino IDE 軟體。
- 選擇開發板:從 IDE 選單中選擇「工具」>「開發板」>「QEC-M-01」(或您正在使用的 QEC-M 的特定型號)。
- Select Port: From the IDE menu, choose “Tools” > “Port” and select the USB port to which the QEC-M is connected.
步驟2. 點擊Burn Bootloader按鈕
連接到 QEC-M 產品後,進入「Tool」>「Burn Bootloader」。 目前所選的 QEC-M 名稱將會出現。 單擊它將開始更新過程,該過程大約需要 5-20 分鐘。
- QEC-M-01:
步驟3. 完成更新
完成以上步驟後,你的 QEC-M 主站就已經成功更新至最新版本開發環境了。
如需更多資訊和樣品請求,請寫信至 info@qec.tw,致電離您最近的 ICOP分公司,或聯絡我們的 官方全球經銷商。