Skip to content본문으로 건너뛰기
~/woojin-go
menu
~/woojin-go/tools/dwspapyrus

DWSPapyrus: DWStemp (동원 프로그램) 그래프 제작 프로그램

created 2024-01-24 · updated 2025-02-16KOlab data tools

리포지토리 주소

DWSPapyrusGitHub repositorygithub.com

다운로드 링크

wjgoarxiv/DWSPapyrus ReleasesGitHub repositorygithub.com

왜 만들었나

DWStemp (동원 프로그램) 인터페이스
DWStemp (동원 프로그램) 인터페이스

한국에서 고압 장비, 온도 컨트롤 등을 운용하는 연구실이라면 위 프로그램은 한 번씩 본 적 있을 것이다. 흔히 동원이라고 부르는 프로그램인데, 정확히는 DWStemp 라는 이름으로서 각종 실험실 컴퓨터에 설치되어 있는 꽤 오래된 프로그램이다.

왜 이렇게 Deprecated된 프로그램을 아직까지도 쓰냐… 라고 질문들이 많았었는데, 필자가 아는 바로는

(1) RS-232 포트 연결이 이 정도로 안정적인 프로그램이 잘 없다 (일반적인 랩뷰 프로그램들은 로깅이 불안정하다)

(2) 이 프로그램을 만든 분이 안타깝게도 이 세상에 존재하지 않으시다, 그래서 업데이트가 불가능하다 (건들 수 있는 소스 파일의 행방불명…)

와 같은 이유 때문에 아직까지도 많은 연구실이 2024년에도 이 프로그램을 사용하고 있다 (아마도?).

필자가 인턴 시절부터 사용했던 이 프로그램은 항상 같은 규격의 CSV 파일 (액셀 등에서 열어볼 수 있는 tabulated format 데이터)을 출력하는데, 문제는 대부분의 대학원생이 이걸 액셀에서 열고, 또 단위가 틀리다면 액셀에서 전체 셀에 대한 단위 연산을 진행하고, 이를 또 그래프 소프트웨어로 옮겨서 복사하고…. 와 같은 시간이 많이 소요되는 식의 작업 방식을 사용한다는 것이다.

어느 날 문득 필자에겐 매번 같은 규격의 CSV를 출력하는 이 ‘동원’ 프로그램으로부터, 바로 그래프까지 변환해서 사용자에게 미리 보여주고, 또 그 그래프를 다운받을 수 있게 하면 어떨까 라는 생각이 떠올랐다.

그래서 만들었다.

DWSPapyrus: DWStemp (동원 프로그램) 그래프 제작 프로그램 — image 1

.exe, .dmg 파일로 받아볼 수 있는 해당 프로그램은, 유저가 DWStemp로부터 출력된 CSV 데이터를 바로 읽고 또 그래프 출력까지 바로 도와줄 수 있다.

먼저, 테스트해 볼 CSV 파일을 살펴보도록 하자.

Example1.csv 697.8KB

1	RecNo.	Time	Pressure1	Pressure2	Temp.1	Temp.2	Temp. 3	Temp. 4
     2	No.   	sec	kgf/��	kgf/��	��	��	��	��
     3	         1	        60	     35.05	      0.00	    142.20	      0.00	      0.00	      0.00
     4	         2	       120	     35.04	      0.00	    142.40	      0.00	      0.00	      0.00
     5	         3	       180	     35.06	      0.00	    142.30	      0.00	      0.00	      0.00
     6	         4	       240	     35.07	      0.00	    142.20	      0.00	      0.00	      0.00
     7	         5	       300	     35.05	      0.00	    142.40	      0.00	      0.00	      0.00
...

8개의 column이 있는 일반적인 시계열 데이터다.

  • Pressure 1 ~ Pressure 2는 각 압력센서의 위치다. 사용자가 어떤 압력센서를 사용했느냐에 따라, 해당하는 압력센서의 데이터가 로깅된다. 이 데이터에서는 Pressure 1이 사용한 센서가 된다.
  • Temp.1 ~ Temp.4는 각 온도센서의 위치다. 사용자가 어떤 온도센서를 사용했느냐에 따라, 해당하는 온도센서의 데이터가 로깅된다. 이 데이터에서는 Temp.1이 사용한 센서가 된다.

이제 프로그램에서

온도, 압력센서 번호 셋팅, 온도 및 압력 값 나누기 창
온도, 압력센서 번호 셋팅, 온도 및 압력 값 나누기 창

이렇게 셋팅을 한 뒤, 데이터 불러오기 버튼을 눌러주자.

왜 온도 센서를 10으로 나누었는가..? 그것은 센서가 로깅할 때 온도 * 10의 값으로 데이터를 저장했기 때문이다 (왜 셋팅이 이렇게 되었는지는 모른다. 하지만 값을 크게 넣으면 정확도를 높일 수 있기 때문이 아니었을까? 아무튼 이건 유저가 잘 보고 판단해서 값을 기입해야 한다).

그러면 프로그램은

데이터 미리보기 창
데이터 미리보기 창

이런 식으로 처리된 데이터를 간단히 유저에게 보여준다. 보아하니 잘 들어온 듯 싶다.

이후, 보고 싶은 X데이터와 Y데이터를 각각 잘 입력해주고, 취향에 맞게 그래프를 보일 준비를 한다. 필자는 이렇게 셋팅해봤다.

DWSPapyrus: DWStemp (동원 프로그램) 그래프 제작 프로그램 — image 2

이제 준비가 되었다!

플롯!
플롯!

플롯! 하면,

DWSPapyrus: DWStemp (동원 프로그램) 그래프 제작 프로그램 — image 3

이런 식으로 그래프를 미리 보여준다. 어라, 왜 나는 폰트가 다릅니까? 라고 의문을 제기할 수 있는데, 그것은 SF Pro Display나 Helvetica가 컴퓨터에 없기 때문인 것으로 판단된다. 취향에 맞게 잘 설치하면 될 것으로 보인다. 그냥 기본 폰트를 써도 되고… ㅎ

이제 끝났다.

DWSPapyrus: DWStemp (동원 프로그램) 그래프 제작 프로그램 — image 4

얼른 저장한 PNG를 확인해보자. 참고로 필자는 체크 시 투명화! 옵션을 활성화 시켰기 때문에, 배경이 날아간 그래프가 그려진다. DPI 값은 300이었으므로, 300의 dpi를 가진 그래프가 그려질 것이다.

완성된 그래프.
완성된 그래프.

이 프로그램에 개선하였으면 사항, 이상한 점, 궁금한 점 등은 필자 메일로 질문해주었으면 하는 바람이다. 별 거 아닌 프로그램이지만, 여러분의 시간이 이 프로그램을 통해 조금이라도 단축된다면 필자는 기쁘고 보람찰 것이다.

■

Settings설정

Theme테마
Language언어
Text size글자 크기
Font글꼴
Background grid배경 격자
Motion모션
Accent포인트 색

Saved in this browser.이 브라우저에 저장돼요.