首先你先要有顆PLC能支援Ethernet(廢話), 本系列都是以FX5U為範例
因為使用FX5U所以還需要安裝GX Works 3
在你的PLC專案內,開啟左邊的"參數" -> FX5UCPU -> 模組參數 -> 乙太網路端口 視窗
在"對象設備連接配置設置" 點選 <詳細設置> ,會開啟下圖的視窗
並新增SLMP連接設備加入列表中 ,記得選取"TCP"協議 (這是我們要用的通訊方式) ,然後設定Port 9000, (這是我的設定) ,如圖內No.2 項目.
其他的項目可以不用管,這樣SLMP的設定就完成了! 輕鬆簡單
存檔後,記得要將剛剛改好了參數寫入PLC, 寫完之後PLC還要作 Reset(切記切記!!)
這樣你的PLC算大功告成!
另外一提的是GX Works 3有乙太網路診斷的功能,可以監控PLC的連線狀況,非常方便
以上就是PLC的SLMP設定啦!!收工!
顯示具有 Mitsubishi PLC 三菱Ethernet protocol C# coding系列 標籤的文章。 顯示所有文章
顯示具有 Mitsubishi PLC 三菱Ethernet protocol C# coding系列 標籤的文章。 顯示所有文章
2016年12月2日 星期五
PLC Ethernet SLMP通訊格式 C#
前言.
開始講解前先說明這系列(SLMP)的說明,主要是紀錄自己在寫protocol時碰到的問題或想法.
人老了很容易忘記事情,只好記錄下來了.
如果你對c#是完全陌生的話,此系列並不會講解太詳細(抱歉,人很懶).
當然如果您發現有錯誤的地方,也非常歡迎糾正喔!
以上是廢話.
這系列大致會分成幾篇
1.PLC的設定方法
2.TCP的編寫
3.SLMP的編寫
4.測試
使用的PLC是:Mitsubishi FX5U
通訊格式是:SLMP (廢話)
因為手邊目前只有這顆CPU有支援Ethernet ,所以只能測試一種CPU,有點可惜
以後有機會再測試Q系列的
開始講解前先說明這系列(SLMP)的說明,主要是紀錄自己在寫protocol時碰到的問題或想法.
人老了很容易忘記事情,只好記錄下來了.
如果你對c#是完全陌生的話,此系列並不會講解太詳細(抱歉,人很懶).
當然如果您發現有錯誤的地方,也非常歡迎糾正喔!
以上是廢話.
這系列大致會分成幾篇
1.PLC的設定方法
2.TCP的編寫
3.SLMP的編寫
4.測試
使用的PLC是:Mitsubishi FX5U
通訊格式是:SLMP (廢話)
因為手邊目前只有這顆CPU有支援Ethernet ,所以只能測試一種CPU,有點可惜
以後有機會再測試Q系列的
2016年11月30日 星期三
PLC SLMP Protocol的用法 (一)
在Receive loop的動作於一般TCP server的動作不同
一般server都會有ack的回應封包,所以可以判定資料封包是否有收完全
SLMP沒有這動作
PLC單純只會回應client端send的封包,資料封包丟完後無ACK的
簡單講也就是non-handshaking 的server啦
以下是code
private void OnReceive(System.IAsyncResult ar)
{
try
{
// Read data from the remote device.
int bytesRead = tcpAsyn.EndReceive(ar);
if (bytesRead > 0)
{
// There might be more data, so store the data received so far.
asb.Append(Encoding.ASCII.GetString(tcpAsyClBuffer, 0, bytesRead));
// Get the rest of the data.
tcpAsyn.BeginReceive(tcpAsyClBuffer, 0,tcpAsyClBuffer.Length , 0,
new AsyncCallback(OnReceive), tcpAsyn);
}
else
{
// All the data has arrived; put it in response.
if (asb.Length > 1)
{
response = asb.ToString();
}
//add do_packet
do_packet();
// Signal that all bytes have been received.
receiveDone.Set();
}
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
//Console.ReadKey(true);
}
}
上面的一般tcp server的用法
這樣是無法正常運作的喔
訂閱:
文章 (Atom)


