Weigher와 통신 (VB 6.0)
봉신 로드셀 인디게이터의 Data를 rs232 통신으로 읽어서 화면에 출력 하는 예제이다.
주요 코드를 소개 하면 …
<port open>
If comWeigher.PortOpen = True Then comWeigher.PortOpen = False
comWeigher.CommPort = 1
comWeigher.Settings = "9600,N,8,1"
comWeigher.PortOpen = True '현재 포트를 연다.
<Weigher에서 오는 데이터를 분석 필터링한다>
Do
DoEvents
ComBuffer = ComBuffer & comWeigher.Input
Position = InStr(1, ComBuffer, "#000", vbBinaryCompare)
If Position > 0 Then
ComBuffer = Mid(ComBuffer, Position)
If InStr(1, ComBuffer, "Kg", vbBinaryCompare) Then
Result1 = Mid$(ComBuffer, 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 = ComBuffer
Loop While (Timer1.Enabled = True) ' 5 sec 이후에는 timer 가 중지 됨
Program Source
'컴퓨터 이야기 > 내가 만든 소프트웨어' 카테고리의 다른 글
Excel Addin gUtil Ver 0.1 (0) | 2009.06.26 |
---|---|
텍스트 암호화 프로그램 (0) | 2009.03.22 |
패스워드 암호화 관리 프로그램을 만들다. (0) | 2008.10.19 |
sic assembler (0) | 2008.10.08 |
goldic (200lx용 사전) (0) | 2008.09.28 |
usb to rs232 driver 받는곳
USB to RS232는 FTDI라는 칩으로 구현한것이기 때문에 FTDI Chip을 만든 제조사에서 드라이버를 받으면 오리지널을 받을 수 있다. 물론 자기가 가지고 있는 O/S와 환경에 맞는 드라이버를 찾아 설치 하면 된다.
'컴퓨터 이야기' 카테고리의 다른 글
저장 매체의 신뢰성과 영속성 (하드 디스크, 종이…) (0) | 2008.11.17 |
---|---|
Apple ][ ??? 당구장 컴퓨터의 정체 (0) | 2008.11.03 |
윈도우 표시 글꼴을 바꿔 보자 (0) | 2008.10.16 |
katMouse 비활성화된 윈도우도 스크롤 하자(마우스 도우미) (0) | 2008.10.16 |
윈도우를 항상 위로 (Allways Top) (0) | 2008.10.16 |
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 |
rs232가 아직도 많이 사용 되고 있다.
참 생명도 오랜 가는 interface 방식 중의 하나다.
처음 사회에 첫발을 내디딘후 1년 정도 지나서 부터 RS232를 접했고 그게 20여년이 넘었으니....
가끔씩 RS232에 대한 자료가 필요 할때가 있어 찾아 보기도 하는데 잘 정리된 사이트 중 하나를 소개 한다.
http://www.camiresearch.com/Data_Com_Basics/RS232_standard.html
'전자 이야기' 카테고리의 다른 글
USB 오실로스코프로 찍어본 Profibus 파형 (DSO2300 USB Oscilloscope) (0) | 2008.02.07 |
---|---|
USB 오실로 스코프 (0) | 2008.01.27 |