GPPW設定,Binary 交信,IP 192.0.1.11 。

通信Port:3010(16進制)

開專案,製作一個喜歡的Form,

那個插頭造型的元件就是Winsocket。

與三菱Q CPU PLC通訊須知:

三菱通信封包格式,例如→03FF0A0064000000204401006400

最初的03是WORD寫入命令,FF:站號;0A00:延遲時間;64000000:100的意思;

20:SPACE;44:D;〈本例為D100的意思〉;0100:長度(寫入點數)

最後的6400是欲寫入的值,等於10進制100的意思,

所以整個封包的意義是,把100寫入PLC的D100!!

程式如下:

procedure TForm1.Button1Click(Sender: TObject);

begin

ClientSocket1.Close;

StatusBar1.SimpleText:='Connect To PLC';   {最下面狀態Bar的顯示連接中}

ClientSocket1.Address:=Edit1.Text;                 {PLC的IP位址192.0.1.11}

ClientSocket1.Port := StrToInt(Edit3.Text) ;   {PLC的通信PORT:12304 (10進),等於3010(16進)}

ClientSocket1.Open;

end;

procedure TForm1.ClientSocket1Connect(Sender: TObject;

Socket: TCustomWinSocket);

begin

StatusBar1.SimpleText:='Connected';  {最下面狀態Bar的顯示已經連接}

end;

procedure TForm1.ClientSocket1Disconnect(Sender: TObject;

Socket: TCustomWinSocket);

begin

StatusBar1.SimpleText:='Disconnect';  {最下面狀態Bar的顯示無法連接}

end;

procedure TForm1.ClientSocket1Read(Sender: TObject;

Socket: TCustomWinSocket);

VAR

P,R,T : String;

K,L,i,j : Integer;

begin

EDIT4.TEXT := '';

P :=ClientSocket1.Socket.ReceiveText ;   {PLC回答}

L := Length(P);

FOR i := 1 To L Do

PLCAnswerData:= PLCAnswerData + IntToHex(Byte(p[i]),2);

EDIT4.TEXT := PLCAnswerData;  {秀出PLC回答}

if PLCAnswerData <> '' then

PLCAnswerChange

else

begin

ShowMessage('PLC Answer nothing,Please Check PLC Ethernet Card!')

end;

end;

procedure TForm1.Button2Click(Sender: TObject);

VAR

Q :STRING;

L,a,b,c,i : INTEGER;

begin

StatusBar1.SimpleText:='Send Data to PLC';  {最下面狀態Bar的顯示送資料到PLC}

PLCAnswerData := '';

L := Length(Edit2.Text);

if L > 0 then

begin

b :=0;

For i:= b to ((L Div 2)-1) do begin

b:= b+1;

c:= b + i;

a := StrToInt('0x0' + Copy(edit2.Text,c,2));  {欲送到PLC資料做處理}

Q := Q + Chr(a);   {欲送到PLC資料做字元轉換}

end;

ClientSocket1.Socket.SendText(Q);    {送資料到PLC}

end

else

begin

ShowMessage('Please Check Input!')

end;

end;

以上!

三菱socket通信实例_Delphi與三菱QCPU PLC通信控制(Winsocket篇) @ 非常低調(也談PLC) :: 隨意窩 Xuite日誌...相关推荐

  1. 三菱socket通信实例_三菱QUnCPU内置以太网Socket通信(TCP篇)

    声明:本文属于原创作品,版权归原作/译者所有,未经允许,严禁转载! 此次做一个使用三菱Q系列PLC内置以太网功能走标准以太网socket通讯的示例.该功能是通过专用指令与以太网连接的对象设备以 TCP ...

  2. 三菱socket通信实例_三菱自动化产品相关知识整理汇总

    先从应用最广泛的PLC产品来说下:小型机:FX3S.FX3G.FX3U.FX5U   中型机:L系列 大型机:Q系列.R系列 Q是比较老的产品,也是现在大型机里面应用比较普遍的产品,在Q之后开发出性价 ...

  3. android socket通信如何抓取,安卓Socket通信实例(客户端、服务端)

    安卓Socket通信实例 本文摘自:https://whatsblog.icu/index.php/Android/17.html 1.Socket通信必须知道的地方 1.首先,Socket通信采用T ...

  4. java socket发送定长报文_一个基于TCP协议的Socket通信实例

    原标题:一个基于TCP协议的Socket通信实例 1. 前言 一般接口对接多以http/https或webservice的方式,socket方式的对接比较少并且会有一些难度.正好前段时间完成了一个so ...

  5. Java 网络实例三(获取URL响应头的日期信息、获取URL响应头信息、解析URL、ServerSocket和Socket通信实例)

    获取 URL响应头的日期信息 以下实例演示了如何使用 HttpURLConnection 的 httpCon.getDate() 方法来获取 URL响应头的日期信息: import java.net. ...

  6. Java Socket 通信实例 - 转载

    基于Tcp协议的简单Socket通信实例(JAVA) 好久没写博客了,前段时间忙于做项目,耽误了些时间,今天开始继续写起~ 今天来讲下关于Socket通信的简单应用,关于什么是Socket以及一些网络 ...

  7. 笔记2:VC++ socket通信实例

    VC++ socket通信实例 网络中进程之间如何通信   首要解决的问题是如何唯一标识一个进程,在本地可以通过进程PID来唯一标识一个进程,但是在网络中这是行不通的.其实TCP/IP协议族已经帮我们 ...

  8. python安卓开发实例_python服务器与android客户端socket通信实例

    本文实例讲述了python服务器与android客户端socket通信的方法.分享给大家供大家参考.具体实现方法如下: 首先,服务器端使用python完成,下面为python代码: #server.p ...

  9. android 手机 与 python服务器_python服务器与android客户端socket通信实例

    本文实例讲述了python服务器与android客户端socket通信的方法.分享给大家供大家参考.具体实现方法如下: 首先,服务器端使用python完成,下面为python代码: #server.p ...

最新文章

  1. 数据结构----单链表增删改查
  2. SQL Server实用操作小技巧集合
  3. Form_Form与OAF页面互相调用(案例)
  4. java51_Java运行 Unsupported major.minor version 51.0 错误
  5. Request_获取ServletContext
  6. oracle 导入excel时间格式,将.xls或者.excel格式的数据导入到Oracle中
  7. 你知道出现“乱码”的原因是什么吗?(4)
  8. R-大数据分析挖掘(5-R基础回顾)
  9. Linux | Ubuntu:十年,十个关键时刻
  10. CSS实现垂直居中布局
  11. 修路方案(次小生成树)
  12. Qt与HTML/JavaScript网页端通信和调用
  13. golang超时控制
  14. 新建连接mysql编码选择_redhat5.432位安装mysql5.6.17数据库及创建数据库实例、配置编码...
  15. sass和compass学习笔记
  16. 中国最感人的8首爱情诗
  17. VirtualBox下Centos7安装增强功能
  18. 单片机开发和嵌入式开发流程图
  19. 国科大学习资料--最优化计算方法(王晓)--第五次作业答案
  20. 计算机连接投影仪后黑屏咋调试,解决办法:与投影机相连的笔记本电脑黑屏的原因和解决方法[图]...

热门文章

  1. 我的世界服务器怪物血量修改,我的世界调整怪物血量指令 | 手游网游页游攻略大全...
  2. @Font-face 的用法
  3. Java并发编程(六):从CPU缓存一致性协议到JMM(Java内存模型)
  4. PotPlayer下载
  5. HTML中的列表ol ul
  6. 一文快速回顾 Java 操作数据库的方式-JDBC
  7. C语言实现Json与结构体相互转换——cson
  8. 20_通用定时器原理
  9. 【整蛊小神器合集】听说:你的朋友很多?那试试这几款小程序嘛~(附:多份源码)
  10. 魔兽怀旧最新开服务器,魔兽世界:怀旧服“第八大区”上线,近期或开放更多新服务器...