我用socket测试软件进行了PC和PC之间的数据通讯测试,找了几个软件测试都非常成功。
然后我通过自己编写Matlab程序和PC进行Socket通讯测试,也是很成功。没有任何问题,代码文件我在附件中附上。
通过了这些测试,基本PC端Socket通讯实验已基本建立起来,接下来我计划用PLC和PC进行通讯测试。
程序是用样板程序
和PC通讯数据交互成功。
经过我的改良和测试终于满足了要求。
1.首先初始化Socket通讯参数.我将Socket通讯模式设置成不定长获取数据,1024Word,这样可以确保每次都能把数据全部抓到.而且还可以知道发送的数据个数。
2.打开Socket通讯接口,
☆☆★注意打开的HMI按钮是M1000,打开状态存入M100,M101处,M100表示打开完成,M101 ON表示打开失败,失败代码存入D100中;
☆★★那么SD1282.0是什么意思呢,所以SD1282.0表示的是第一个Socket连接状态,如果打开了则不能再打开。
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
编号SD1282
◆名称打开已完成的信号
◆内容存储打开已完成的状态
◆详细内容
存储Socket通信的连接(打开方式为“Socket通信”的连接)打开完成状态。
Socket通信以外的连接对应的位通常为[0]。
b15 b14 ~ b1 b0
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
SD1282 | | | ····· | | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| | | |
| | | +-→ 连接1
| | +-----→ 连接2
| | :
| | :
| +---------------------------------------------------------→ 连接15
+-------------------------------------------------------------→ 连接16
0:打开未完成
1:打开已完成
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
☆★★那么SD1284.0是什么意思呢,所以SD1284.0表示的是第一个Socket打开请求状态,如果已经请求了则不能再再请求。
◆编号SD1284
◆名称打开请求信号
◆内容存储打开请求状态
◆详细内容
存储Socket通信的连接打开请求状态。
Socket通信以外的连接对应的位通常为[0]。
b15 b14 ~ b1 b0
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
SD1284 | | | ····· | | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
| | | |
| | | +-→ 连接1
| | +-----→ 连接2
| | :
| | :
| +---------------------------------------------------------→ 连接15
+-------------------------------------------------------------→ 连接16
0:无打开请求
1:打开请求中
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
◆编号SD1288
◆名称内置以太网端口连接状态
◆内容存储内置以太网端口的连接状态
◆详细内容
存储内置以太网端口的连接状态。
b15 ~ b11 b10 b9 ~ b0
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
SD1288 | | | |1/0| | ····· | |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
|
+------→ 连接状态
0:未连接集线器或对象设备,或断线
1:与集线器或对象设备连接中
首先在PC端打开软件.
记住测试的时候要关闭防火墙
PLC端参数设置
设置PLC IP为192.168.1.10 连接Server端IP为 192.168.1.195 端口为1000.
3.PLC端打开Socket端口,PC端马上收到信号,连接成功
4.PLC端发送数据 Hello word 数据存储在D301-D305 10个字符
发送到PC端,PC端接收并显示接收到的字符。
5.PC端发送数据至PLC端 发送数据位Hello World .数据接收后保存至D501之后的数据区
数据接收成功。