/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
excel og plc
Fra : claus larsen


Dato : 01-02-09 14:29

Jeg har en kode her, som jeg har fundet, men den skal rettes lidt i. Når man
starter den, henter den noget data i en plc og lægger værdien ind i et felt,
som hedder A1 og opdaterer værdien hele tiden. Jeg kunne godt tænke mig, at
hver gang der kommer en ny værdi fra plc'en så skal den ind i et nyt felt,
f.eks a1, a2, a3, osv. Og så kunne jeg godt tænke mig, at der kommer
tidspunkt ud fra værdien, dvs. når der kommer data i a1, så kommer der
tidspunkt i b1 osv. Koden ser sådan ud lige nu:

'
' Excel VBA Example Code: Read single data element using OPC
'
Dim OPCServer1 As OPCServer 'Create references to OPC Server
Dim WithEvents OPCGroup1 As OPCGroup 'and Group objects
Private Sub CommandButton1_Click()
If OPCServer1 Is Nothing Then 'When OPC
server doesn't exist ...
Set OPCServer1 = New OPCServer 'Create
instance of OPC Server
OPCServer1.Connect "RSLinx OPC Server" 'Connect to
an OPC Server
Set OPCGroup1 = OPCServer1.OPCGroups.Add("MyOPCData") 'Create an
OPC group in the OPC Server
OPCGroup1.OPCItems.AddItem "[SLC]S:42", 1 'Add an Item
to OPC Group & assign ClientHandle
' OPCGroup1.OPCItems.AddItem "[Topic]Item", ClientHandle
OPCGroup1.IsSubscribed = True 'Receive
data whenever it changes
End If
End Sub
Private Sub CommandButton2_Click()
On Error Resume Next 'Ignore
errors if OPC group or server doesn't exist
Set OPCGroup1 = Nothing 'Remove
Group
OPCServer1.Disconnect 'Disconnect
from server
Set OPCServer1 = Nothing 'Remove
Server
End Sub
Private Sub OPCGroup1_DataChange(ByVal TransactionID As Long, ByVal NumItems
As Long, ClientHandles() As Long, ItemValues() As Variant, Qualities() As
Long, TimeStamps() As Date)
[A1] = ItemValues(1) 'Assign data value to spreadsheet
cell

' For x = 1 To NumItems 'Another method for handling more
than one item
' Select Case ClientHandles(x) 'based on the ClientHandle assigned
in AddItem method
' Case 1 '
' [A1] = ItemValues(x) '-Do this when ClientHandle = 1
' Case 2 '
' '-Do this when ClientHandle = 2
' Case 3 '
' '-Do this when ClientHandle = 3
' End Select '
' Next x '
End Sub

MVH
Claus larsen



 
 
Søg
Reklame
Statistik
Spørgsmål : 177414
Tips : 31962
Nyheder : 719565
Indlæg : 6407844
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste