...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
Mai 15, 2013 4:31:30 PM rpc.DefaultConnection processOutgoing INFO: Sending REQUEST Mai 15, 2013 4:31:30 PM rpc.DefaultConnection processIncoming INFO: Recieved RESPONSE <<< Value: [[org.jinterop.dcom.core.JIUnsignedInteger@6f14021e]], Timestamp: Mi Mai 15 16:31:30 MESZ 2013, Quality: 192, ErrorCode: 00000000 / value = 0 Mai 15, 2013 4:31:30 PM rpc.DefaultConnection processOutgoing INFO: Sending REQUEST Mai 15, 2013 4:31:30 PM rpc.DefaultConnection processIncoming INFO: Recieved RESPONSE <<< Value: [[org.jinterop.dcom.core.JIUnsignedInteger@15de3027]], Timestamp: Mi Mai 15 16:31:30 MESZ 2013, Quality: 192, ErrorCode: 00000000 / value = 0 >>> writing value 1 Mai 15, 2013 4:31:31 PM rpc.DefaultConnection processOutgoing INFO: Sending REQUEST Mai 15, 2013 4:31:31 PM rpc.DefaultConnection processIncoming INFO: Recieved RESPONSE Mai 15, 2013 4:31:31 PM rpc.DefaultConnection processOutgoing INFO: Sending REQUEST Mai 15, 2013 4:31:31 PM rpc.DefaultConnection processIncoming INFO: Recieved RESPONSE <<< Value: [[org.jinterop.dcom.core.JIUnsignedInteger@69d5ee81]], Timestamp: Mi Mai 15 16:31:30 MESZ 2013, Quality: 192, ErrorCode: 00000000 / value = 0 Mai 15, 2013 4:31:31 PM rpc.DefaultConnection processOutgoing INFO: Sending REQUEST Mai 15, 2013 4:31:31 PM rpc.DefaultConnection processIncoming INFO: Recieved RESPONSE <<< Value: [[org.jinterop.dcom.core.JIUnsignedInteger@2a4c6a7d]], Timestamp: Mi Mai 15 16:31:31 MESZ 2013, Quality: 192, ErrorCode: 00000000 / value = 1 Mai 15, 2013 4:31:32 PM rpc.DefaultConnection processOutgoing INFO: Sending REQUEST Mai 15, 2013 4:31:32 PM rpc.DefaultConnection processIncoming INFO: Recieved RESPONSE <<< Value: [[org.jinterop.dcom.core.JIUnsignedInteger@17f99aa6]], Timestamp: Mi Mai 15 16:31:31 MESZ 2013, Quality: 192, ErrorCode: 00000000 / value = 1 |
Thats it, pretty much.
Unfortunately, this is in many cases not enough. In this example there is no error handling, and this is quite needed. Within the "OPC Driver" of the openSCADA project, all this stuff is handled for you. So please feel free to peruse the code to get a feel how it works: https://github.com/ctron/org.openscada.atlantis/tree/1.0/org.openscada.da.server.opc/src/org/openscada/da/server/opc
Other tutorials
If you have a tutorial and want to be linked here, please drop us a line.
Next step - using the openSCADA infrastructure to access OPC servers
...