我用jeasyopc连接OPC服务器,在网上找到这样的代码:

//初始化服务
JOpc.coInitialize();
//建立server对象
JOpc jOpc = new JOpc("10.10.0.158", "kingView.view","jopc1");
try {
jOpc.connect();
} catch (ConnectivityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
OpcGroup group = new OpcGroup("group", true, 500, 0.0f);
OpcItem item = new OpcItem("Door1", true, "");
group.addItem(item);
jOpc.addGroup(group);
try {
jOpc.registerGroup(group);
} catch (ComponentNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnableAddGroupException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
jOpc.registerItem(group, item);
} catch (ComponentNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnableAddItemException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
jOpc.synchWriteItem(group, item);
} catch (ComponentNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SynchWriteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
有几个疑问
1:
JOpc jOpc = new JOpc("10.10.0.158", "kingView.view","jopc1");
中的第三个参数是从那里来?自己指定的?
2:
连接的时候不用输入用户名、密码吗?
3:
group、item是什么作用?他们要跟服务器上对应吗?
4:
可以在linux中运行吗
5:
这个例子连接不上的原因可能是什么?
6:
连接有同步、异步,异步分订阅还有个什么?有什么区别?谢谢!

解决方案 »

  1.   

      在linux中运行  自己试试呗,顶!!!!!!!
      

  2.   

    1:
    JOpc jOpc = new JOpc("10.10.0.158", "kingView.view","jopc1");
    中的第三个参数是从那里来?自己指定的?
    答:第三个参数你看一下就知道,只是一个描述此OPC的名称而已,无所谓.
    2:
    连接的时候不用输入用户名、密码吗?
    答:OPC客户端与OPC服务器端连接需要许多设置,不需要用户名和密码,你可以上网搜索一下OPC配置.有很多.
    3:
    group、item是什么作用?他们要跟服务器上对应吗?
    group,item是OPC协议的数据结构.
                    opcServer
                        |
               —————————
               |        |       |
             group    group    group
               |        |       |
             -----
             |   |
            item item
    4:
    可以在linux中运行吗
    答:没问题。
    5:
    这个例子连接不上的原因可能是什么?
    答:可能是OPC客户端的一些配置没有配置好,或者是服务器端的一些配置问题。
    6:
    连接有同步、异步,异步分订阅还有个什么?有什么区别?
    这个嘛,无能为力。哈哈!
      

  3.   

    求指教jeasyopc怎么连接其他机器上的opc 服务器
    JOpc jOpc = new JOpc("10.10.0.158", "kingView.view","jopc1");
    把第一个参数改了也不行啊
      

  4.   


    确保IP地址正确,且服务器端OPC服务开启并配置好了。
      

  5.   

    各位大侠,使用JeasyOPC怎么获取一个opcItem对象啊,我想取出opcItem对象里面的所有属性?谢啦
      

  6.   

    JeasyOPC的订阅功能是asynch20Read这个方法吗?跟asynch10Read这个异步读有什么区别?
      

  7.   

    主动权不同,订阅是OPC服务器在数据更新时主动将数据返回给客户端
    异步是客户端发请求给服务器。服务器马上将数据返回给客户端
      

  8.   

    发现有关jeasyopc的信息好少哦