:: 진공에 대해 알려주마.

오실로스코프 본문

진공/노하우

오실로스코프

하이백 2022. 2. 14. 22:17

오실로스코프(Oscilloscope)는 전기 신호를 화면에 표시해 주는 장치이다. 어떤 장치의 전기 신호를 화면에 그래프로 보여준다. 얼마나 빠른 신호까지를 보여주는지가 오실로스코프의 성능을 말해준다.

제어에서는 주로 통신의 잇슈를 해결하기 위하여 주로 사용한다. 통신이 안 되는 경우 어디서부터 안되는지 신호는 제대로 나오는지 파악하기 위하여 사용한다.

이전에 시리얼 장치와 통신을 시도하던 중 문제가 생겨 이를 해결하기 위하여 이것저것 보다가 오실로스코프까지 물려 보았다. 0과 1이 생각한 것 같이 표시되지 않는다. 무언가 빠트린 부분이 있다.

오실로스코프를 하나 장만했다. 핫한 알리에서 FNIRSI DSO152을 구매하여 얼마 전 물건을 배송받았다.  사용후기부터 말하겠다. 9600bps는 보기가 어려웠다. 화면 리프레쉬율이 너무 낮은 것 같다. 50bps로 테스트를 진행하였다. 

FNIRSI DSO152 Oscilloscope

 

우선 아스키문자 A는 0x41이고 2진수로 0100 0001이며 비트를 전송할 때 LSB를 먼저 전송한다. 비트 배열의 왼쪽 끝을 MSB(상위비트)라 하며 오른쪽을 끝을 LSB(하위비트)라고 한다.

통신 방식마다 MSB를 먼저 전송하거나 LSB를 먼저 전송하는 규격이 있다. RS-232는 LSB를 먼저 보낸다.  결국 전송 순서는 bit0부터 bit7 순서로 전송하게 된다. 실제 전송되는 비트는 1000 0010이다.

9600,N,8,1 규격으로 K문자를 전송하면 아래와 같은 절차를 따라 전송하게 된다.
1. 전송 규격은 Start bit + ASCII "A" + Stop bit
2. Start bit는 0, ASCII A는 1000 0010, Stop bit는 1이다.
3. 이렇게 구성된 A문자 "0 1000 0010 1"를 전송하라고 하드웨어에 전달하면 
4. 하드웨어는 받은 비트를 conversion 하여 물리적 케이블로 전송하게 된다. 이때 실제 전송 비트는 "1 0111 1101 0"이 된다.

 

A문자는 이렇게 전송될 것인가?

 

아래 사진의 실제 전송 되는 파형을 찍은 것이다. 

ASCII "A" 실제파형

위의 이미지는 파형만 표시한 것이고 아래 이미지는 코멘트를 붙여 봤다.

보충설명

 

이전의 이미지를 삭제하고 다시 테스트하여 올린 것이다. 이전의 오실로스코프가 아래와 같이 Normal high로 표시되어 오실로스코프 설정을 잘못한 것이지 아니면 신호가 다른 것인지 알 수 없어 다시 작업을 진행한 것이다.

"A" 상하반전으로 표시됨.

 

참고만 하시라

 


 

정리해 보았다.​ (K문자를 전송하는 경우)

조건은 9600N81 이다. 9600bps에 None parity, data 8bit, 1 stop bit 표준 설정이다. 
제어에서는 포트를 오픈하고 문자를 send 하면 된다. 나머지는 hardware의 firmware가 처리하는 작업이며 이것을 이해하기 위하여 절차를 기록한 것이다. 이것을 알아야 오실로스코프에 찍히는 파형을 알 수 있다.

1. 해당 문자의 아스키코드를 이용하여 이진수 문자를 확인한다. 
2. 앞뒤에 start, stop bit를 추가한다. START BIT=0, STOP BIT=1, 패리티비트 없음
3. 하드 웨어에서 전송전 conversion을 진행하여 전송한다.

1. ASCII K = 0x4B = 0100 1011
2. 0(start bit) + 1101 0010 (LSB부터전송) + 1(stop bit)
3. 0110100101을 conversion 하여 다음과 같이 변경 1001011010
4. 최종전달비트의조합 1001011010

 

ASCII "K"

 

ASCII C = 0x43 = 0100 0011

ASCII "C"

 

 

 

'진공 > 노하우' 카테고리의 다른 글

Access CC-LINK  (0) 2022.08.31
Install WINDOWS XP  (2) 2022.04.27
INTERLOCK  (0) 2020.12.27
GAS VALVE  (0) 2020.12.10
설비 제어 소프트웨어 엔지니어의 이해  (12) 2020.11.19
Comments