C#
C# 程式語言教學 從基礎到三菱PLC連線實作
掌握程式設計與工業自動化應用技巧,從 .NET Framework 到 MX Component 完整實戰訓練
課程總覽
.NET Framework 介紹
CLR、FCL 架構解析,C# 應用場景與 Visual Studio 2022 開發環境完整介紹
C# 語言基礎
資料型態、運算子、條件判斷、迴圈結構、陣列操作與例外處理完整教學
使用者介面設計
WinForms UI 設計原則、事件驅動設計、控制項佈局與防呆設計實作
三菱PLC連線實作
MX Component 安裝設定、TCP/IP 連線、記憶體讀寫、Heartbeat 機制設計
實作練習設計
計算機程式、猜數字遊戲、PLC 資料蒐集三大實作專案,即學即用
課程大綱
.NET Framework 與 C# 應用場景介紹
CLR 執行環境、FCL 類別庫架構解析,C# 在桌面、Web 及工業自動化的應用場景
Visual Studio 2022 開發環境安裝教學
社群版、專業版差異比較,系統需求、安裝步驟、IntelliSense 與除錯工具操作
C# 程式語言基礎教學
基本語法結構、資料型態、運算子、if/switch/for/while、陣列、例外處理 try-catch
三菱PLC連線教學與應用場景
MX Component 安裝、Communication Setup Utility 設定、TCP/IP 連線、D/M/W 記憶體讀寫、Handshake 機制、有限狀態機設計
實作練習題目設計
計算機程式、猜數字遊戲、PLC 資料蒐集儀表板 — 三個完整實作專案
實作練習專案
計算機程式
建立 WinForms 計算機介面,學習控制項佈局、事件驅動設計與防呆輸入處理
猜數字遊戲
整合亂數產生、迴圈邏輯、使用者輸入驗證,完成具互動性的猜數字遊戲應用
PLC 資料蒐集儀表板
使用 MX Component 連接三菱 PLC,定時讀取 D/M 記憶體,即時顯示並記錄生產數據
講師介紹
WILEY
電機工程碩士背景,超過 15 年工業自動化實務經驗。擅長 C/C++、C#、影像處理與 PLC 系統整合, 曾任職 CIM 工程師、AOI 專案工程師、AOI 視覺工程師、專案經理,現為岦威智控經理。
學 C# 程式語言,從入門到工業自動化整合
想學 C# 卻不知從哪裡開始?或者你已有基礎,想進一步整合三菱 PLC 做工業自動化開發?這篇文章整理了初學者最常問的問題,幫助你快速找到方向。
01什麼是 C#?與其他語言有什麼不同?
C#(唸作 C Sharp)是由 Microsoft 開發的強型別、物件導向程式語言,建構於 .NET Framework 生態系之上。相較於 Python 的動態彈性,C# 在大型專案與工業系統中更強調型別安全與效能;相較於 C++,C# 擁有更現代化的語法與自動記憶體管理(GC),大幅降低開發與維護成本。
在台灣製造業與自動化產業中,C# 是開發 PC 端 HMI(人機介面)、上位監控系統(SCADA)以及設備通訊整合程式的主流選擇之一,尤其搭配 WinForms 或 WPF 能快速打造符合工廠操作習慣的介面。
02為什麼工業自動化要學 C#?
工業自動化不再只靠 PLC 本身的邏輯控制,越來越多工廠需要「上位機軟體」整合設備資料、即時監控生產狀況、對接 MES 或雲端平台。C# 的關鍵優勢:
- 原生 Windows 整合:大多數工廠電腦運行 Windows,C# + WinForms 部署快速,無需額外環境。
- 豐富的通訊函式庫:支援 TCP/IP、RS-232/485、Modbus、OPC UA 等工業通訊協定,串接設備十分便利。
- 三菱官方 SDK 支援:三菱電機提供 MX Component,讓 C# 程式可直接讀寫 PLC 記憶體,是官方認可的整合方式。
- 長期維護性強:強型別語言在大型程式碼庫中更容易維護、交接,適合長期運行的設備系統。
- 薪資競爭力:能寫 C# 整合 PLC 的工程師,在台灣自動化產業薪資條件普遍優於純 PLC 技術人員。
03C# 在工廠/製造業的實際應用場景
從半導體、PCB、機械加工到食品包裝,C# 廣泛應用於各類製造場域:
以 WinForms 建立設備操作介面,即時顯示 PLC 狀態、警報、運轉參數,取代昂貴的工業觸控螢幕。
定時讀取 PLC D 暫存器數值,寫入資料庫或 CSV,供品管分析、SPC 管制圖、MES 對接使用。
整合 Halcon/OpenCV 影像處理結果,透過 Handshake 機制回傳判斷結果給 PLC,實現自動 NG 剔料。
將 PLC、變頻器、感測器等不同設備的資料彙整,透過 MQTT 或 REST API 上傳至雲端或 MES 系統。
04C# 如何與三菱 PLC 連線?
三菱電機提供 MELSOFT MX Component 函式庫,讓 PC 端的 C# 程式可以透過 Ethernet(TCP/IP)直接讀寫 PLC 記憶體(D、M、W、R、B 暫存器)。整體流程分為四個步驟:
- 安裝 MX Component:從三菱官方取得安裝包,完成 MELSOFT 元件安裝與授權。
- Communication Setup Utility 設定:以管理員身份執行,選擇 Ethernet Board + TCP 協定,輸入 PLC IP 位址,建立邏輯站號並測試連線。
- VS2022 專案引用 DLL:在 C# 專案中新增 MX Component 的 COM 參考,即可使用
ActEasyIF類別進行讀寫。 - 設計 Handshake 機制:透過有限狀態機(FSM)管理 Request/Busy/Done 交握流程,確保資料傳輸可靠性。
ActEasyIF plc = new ActEasyIF();
plc.ActLogicalStationNumber = 1;
int ret = plc.Open();
if (ret == 0) {
short[] data = new short[1];
plc.ReadDeviceBlock2("D100", 1, out data[0]);
Console.WriteLine($"D100 = {data[0]}");
}
plc.Close();
05完全沒基礎,可以學 C# 嗎?
可以。C# 語法結構清晰、Visual Studio 提供 IntelliSense 自動補全,讓初學者大幅降低拼字錯誤。建議學習路徑:
06學 C# 需要準備什麼環境?
Windows 10 以上,建議 RAM 16GB、SSD。i5 以上處理器確保 VS2022 流暢運行。
Community(社群版)完全免費,功能齊全,安裝 .NET 桌面開發工作負載即可開始學習。
需向三菱電機購買授權。課程提供教學用環境,學員無需自備 PLC 即可完成實作。
