VB로 RS232 제어 하기 예제
다음은 중량을 측정하는 저울의 무게를 RS-232 통신으로 일정 시간 마다 읽어 Display하는 소스의 핵심 부분이다.
If comWeigher.PortOpen = True Then comWeigher.PortOpen = False
comWeigher.CommPort = 1
comWeigher.Settings = "9600,N,8,1"
comWeigher.PortOpen = True '현재 포트를 연다.
Text2.Text = comWeigher.PortOpen
Timer1.Enabled = True
Timer1.Interval = 5000 ' 5 sec
buffer$ = ""
Do
DoEvents
buffer = buffer & comWeigher.Input
Position = InStr(1, buffer, "#0001 ", vbBinaryCompare)
If Position > 0 Then
buffer = Mid(buffer, Position)
If InStr(1, buffer, "Kg", vbBinaryCompare) Then
result1 = Mid(buffer, 10, 8)
result = ""
For i = 1 To Len(result1)
If Mid(result1, i, 1) >= "0" And Mid(result1, i, 1) <= "9" Then
result = result + Mid(result1, i, 1)
End If
Next i
Exit Do
End If
End If
Text1.Text = buffer$
Loop While (Timer1.Enabled = True) ' 5 sec 이후에는 timer 가 중지 됨
comWeigher.PortOpen = False ' 포트를 닫는다.
Text2.Text = comWeigher.PortOpen
Text1.Text = Val(result)
Timer1.Enabled = False
'자동화 이야기 > 지멘스' 카테고리의 다른 글
Simatic manager에서 언어 문제로 프로젝트가 열리지 않을 때.. (0) | 2016.03.15 |
---|---|
libnodave - Simatic s7 PLC Comunication Library (1) | 2008.11.30 |
옛날 PLC (0) | 2008.10.05 |
SIMATIC S7 Fun Part 1 (0) | 2008.09.21 |
The S7 Architecture (0) | 2008.03.06 |