below is some simple sample code.
i use rslinx single node ($400) for single PLC applications and rslinx oem ($900) for multiple PLC applications. for me these have worked very well.
as you already may know, in rslinx you set up your driver and then set up a topic which points to the PLC via the driver. the topic name is the OPC access path.
good luck!
Option Explicit
Option Base 1
Private WithEvents mvarServer As RsiOPCAut
PCServer
Private WithEvents mvarProcessGroup As RsiOPCAut
PCGroup
Private mvarProcessHomingStateNumber As RsiOPCAut
PCItem
Private mvarProcessSolderTableStateNumber As RsiOPCAut
PCItem
Private mvarProcessGlassTableStateNumber As RsiOPCAut
PCItem
Private mvarProcessSolderTableLiftStateNumber As RsiOPCAut
PCItem
Private Sub Form_Load()
On Error GoTo ErrorHandler
'On Error Resume Next
Me.Caption = Me.Caption & " v" & App.Major & "." & App.Minor & " Build " & App.Revision
Set mvarServer = New RsiOPCAut
PCServer
mvarServer.Connect "RSLinx OPC Server"
Set mvarProcessGroup = mvarServer.OPCGroups.Add("LayupGroup1")
mvarProcessGroup.OPCItems.DefaultAccessPath = "process1"
mvarProcessGroup.UpdateRate = 1000
mvarProcessGroup.IsSubscribed = True
Set mvarProcessHomingStateNumber = mvarProcessGroup.OPCItems.AddItem("N7:5", 1)
Set mvarProcessSolderTableStateNumber = mvarProcessGroup.OPCItems.AddItem("N7:1", 2)
Set mvarProcessGlassTableStateNumber = mvarProcessGroup.OPCItems.AddItem("N7:2", 3)
Set mvarProcessSolderTableLiftStateNumber = mvarProcessGroup.OPCItems.AddItem("N7:3", 4)
mvarProcessGroup.IsActive = True
Exit Sub
ErrorHandler:
MsgBox "An error has occurred. Try again or contact a controls engineer.", , "Warning"
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
Set mvarProcessHomingStateNumber = Nothing
Set mvarProcessSolderTableStateNumber = Nothing
Set mvarProcessGlassTableStateNumber = Nothing
Set mvarProcessSolderTableLiftStateNumber = Nothing
Set mvarProcessGroup = Nothing
mvarServer.Disconnect
Set mvarServer = Nothing
End Sub
Private Sub mvarProcessGroup_DataChange(ByVal TransactionID As Long, ByVal NumItems As Long, ClientHandles() As Long, ItemValues() As Variant, Qualities() As Long, TimeStamps() As Date)
Dim i As Long
On Error GoTo ErrorHandler
For i = 1 To NumItems
Select Case ClientHandles(i)
Case 1
lblHoming(0).Caption = ItemValues(i)
Case 2
lblSolderTable(0).Caption = ItemValues(i)
Case 3
lblGlassTable(0).Caption = ItemValues(i)
Case 4
lblSolderTableLift(0).Caption = ItemValues(i)
End Select
Next i
Exit Sub
ErrorHandler:
fraProcess(0).BackColor = vbRed
MessageBox Me.hWnd, Err.Description, "Error: " & Err.Number, vbExclamation
End Sub