作者popo14777 (草草)
看板java
标题[问题]java读写三菱plc
时间Sun Jul 17 00:25:43 2022
我使用网路上提供的open source
(来源1:
https://reurl.cc/VDKgoN),
(来源2:
https://reurl.cc/Erkyvn)
它的名称是HslCommunication,下载後在Eclipse汇入jar档,
撰写网路上提供的程式码,第一阶段已经可以成功与plc连接沟通,
但无法读出数据(数据寄存器D200),执行时第28行报出「NullPointerException」讯息,
如下图:
https://imgur.com/QFjsn57
程式码如下:
package test;
import HslCommunication.Core.Types.OperateResult;
import HslCommunication.Core.Types.OperateResultExOne;
import HslCommunication.Profinet.Melsec.MelsecMcNet;
@SuppressWarnings("unused")
public class TestPLC {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("Hello PLC !!");
MelsecMcNet melsec_net = new MelsecMcNet("192.168.1.195",6000);
melsec_net.setNetworkNumber((byte) 0x00);
melsec_net.setNetworkStationNumber((byte) 0x00);
melsec_net.setConnectTimeOut(1000);
melsec_net.ConnectServer();
OperateResult connectResult = melsec_net.ConnectServer();
if(connectResult.IsSuccess){
System.out.println("连接成功");
}
else {
System.out.println("连接失败:"+connectResult.Message);
}
int int_D200 = melsec_net.ReadInt32("D200").Content;
System.out.println(int_D200);
错误讯息如下:
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "java.lang.Integer.intValue()"
because "HslCommunication.Profinet.Melsec.MelsecMcNet.ReadInt32(String).Content" is
null at test.TestPLC.main(TestPLC.java:28)
软体版本/硬体规格:
1. Eclipse版本:2022.3,jdk版本:17.0
2. 作业系统:window 10
3. PLC型号:FX-3U
请问程式码是否有错误呢?需要怎麽做才能读取D200的值呢?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.161.183.10 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1657988746.A.F68.html
※ 编辑: popo14777 (118.161.183.10 台湾), 07/17/2022 00:26:43
※ 编辑: popo14777 (1.163.79.169 台湾), 07/20/2022 22:19:44
1F:→ NullLife: 拆装箱问题, ReadInt32(String)回传物件的Content是null 07/22 04:14
请问要怎麽做呢
※ 编辑: popo14777 (118.161.142.214 台湾), 07/23/2022 15:05:55
2F:推 NullLife: 这已经不是怎麽做的问题了 你要去查ReadInt32("D200") 07/26 08:58
3F:→ NullLife: 回传的物件里的Content为什麽是null 07/26 08:59
4F:→ NullLife: 对code不熟不建议一直.去操作回传物件 07/26 08:59
5F:→ NullLife: 建议你一行只做一件事情 把每个回传的物件用变数接起来 07/26 09:01
6F:→ NullLife: 你才好观察每个回传的物件及内容 07/26 09:01