안녕하세요? 


이번 포스팅에서는 CiMon이라는 프로그램을 가지고서 일종의 디자인 작업이라고 해야 할까요? 아무튼 아날로그 신호라고 해서 0과 1만으로 OFF와 ON만이 되는 것이 아니라, 보통 1~100사이의 값에 따라서 변하고 그에 따라서 뭐라고 해야 할까요? 수치가 변하는 태그를 만들어서 사용한다고 해야 할까요?



먼저 CiMon의 프로그램 상에서 아날로그라고 이름을 지어야 하는데 실수로 아날로드1이라고 지었는 것을 볼 수 있었습니다. 일단 여기서는 가상 태그로 만들어 주도록 합니다. 여기서 지난번에 말한대로 '실태그'의 갯수에 따라서 구매해야 하는 라이센스가 달라집니다.



다음으로는 고급설정 항목으로 들어가서, 내부 데이터에 최대값이 처음에는 말도 안되게 큰 값으로 되어 있는 것을 '100'으로 설정하도록 합니다. 이렇게 하는 이유는 처음 설정된 것이 6자리에 가깝기 때문에, 너무 커서, 아날로그 태그의 값을 변경해서 표시가 나려면 너무 큰 값을 변경해야 하기 때문입니다.



다음은 사각형 통을 설정하고서, 여기다가 아날로그 태그를 이용해서 물탱크에 물이 차는 것을 구현해 보려고 하는데, 우선 사각형의 수직 채우기에 방금 만들어 놓은 아날로그 태그를 지정하도록 합니다.



다음으로는 '채우기 설정'이라는 것을 이용해서 아래에서 부터 위로 채워지도록 설정을 하도록 합니다.



이제 제대로 작동하는 것이 맞는지 확인해 보기 위해서 CiMon X를 실행하도록 합니다. 여기서 아직은 아무런 아날로그의 태그 값에 변화를 주지 않았기 때문에-0이라는 값이기 때문에 사각형 박스가 완전히 비어 있는 것을 볼 수 있습니다.



디자인 툴인 CiMonD에서 설명한 것과 마찬가지로 빨간색 깃발 아이콘을 눌러서 라이브러리를 불러옵니다. 여기서 나오는 아날로그 태그를 클릭하도록 합니다.



기본값이 0으로 되어 있는 것을 볼 수 있는데, 여기 변경값에다가 지정하고 싶은 값을 지정 하도록 합니다.



45라는 값으로 변경이 완료된 것을 확인하고 나서, 다음에 움직이도록 합니다.




완료가 되었으면, 완전히 텅텅민 물탱크로 지정한 사각형에 빨간색이 채워지는 것이 볼 수 있습니다.



다음은 새로운 CiMonX를 종료하고, CiMonD에서 새로운 사각형을 만들고 나서, 여기다가 이제는 수직변형이라는 것을 주도록 합니다. 이 기능은 사각형의 길이가 수직으로 아날로그 태크에 따라서 변한다는 것을 의미합니다.



잘못 타이핑한걸 알았지만, 아무튼 아날로드1이라는 이 아날로그 태그를 지정하도록 합니다.



이번에도 CiMonX를 실행해서 여기서 사각형이 완전히 납짝해져 있는 것을 볼 수 있습니다. 이런 상태에서서 이제 라이브러리를 불러오도록 합니다.



이번에도 역시 아날로그 태그의 기본값은 0으로 되어 있는 것을 볼 수 있습니다. 이제 이걸 클릭해서........



아까전과 같이 45라는 임의의 값으로 변경 하도록 합니다. 그리고 나서 라이브러리 창을 닫아서 결과를 지켜 보도록 합니다.



처음에는 바닥밖에 없는 것에서, 어느정도 사각형이 올라왔는 것을 볼 수 있었습니다. 아무튼 이걸로 수직변형도 적용하는 데 성공하였습니다.



일단 일련의 작업을 한 다음에.... 예 무언가 하나를 하려고 했는데 실패하고, 이제 CiMonX에서 일일히 라이브러리를 불러와서 수정하는게 귀찮기는 하기에, 아예 CiMonX상에서 숫자를 입력하면 그냥 아날로그 태그의 값이 변할 수 있도록 하는 일종의 계기판을 CiMonD에서 만드는 작업을 하는 것입니다. 위 스크린샷에 나오는 태그값이라는 메뉴를 클릭해서 글자상자를 만드는 것처럼 그어주도록 합니다.



그리고 여기 '태그값'을 더블클릭해서 여기다가 아날로그 태그를 지정하도록 합니다.





다음으로 여기다가 태그값 입력에 [데이터 입력]이라는 항목으로 가서, 여기다가 태그는 아까 보았던 아날로드1을 지정하다록 하고, 군더더가가 거의 없는 윈도우 테마 입력기3을 지정합니다.



다음은 동그라미 하나를 그리고 나서, 여기다가 색변화를 지정하도록 합니다. 일단 여기서 50이하의 값을 아날로그 태그가 나타내면 노란색, 70이상의 값이면 파란색, 그리고 90이상의 값이면 빨간색이 되도록 합니다.



그리고 나서 아까전에 실패했는 것인데, 한마디로 설명하자면, [그라데이션]이 있는 막대가 아날로그 태그의 값이 올라가면 그런 막대가 설정하는 것처럼 보이게 하는 트릭이라고 해야 할까요? 그런 기법을 쓰는 것인데, 다른 건 다 이해가 되었습니다.


1)먼저 그라데이션이 있는 사각형을 그린다.-채우기 색의 메뉴를 이용

2)그리고 같은 크기의 완전히 하얀색-배경과 같은 색의 사각형을 만들어서 위에 덮어 씁니다.

3)위 스크린샷과 같이 100-아날로그 태그를 지정해서, -값으로 만들어서 역으로 채워졌다가 아날로그 태그의 값이 증가하면 줄어들도록 합니다. 


여기서 이 마지막 3번에서 100-아날로그 태그를 몰라서 많이 헤메었습니다. 아무튼 이걸 사용해서 지정을 하도록 합니다.



다음은 배경에 있는 사각막대기 아래에서 위로 올라오는 것처럼 보여야 하기 때문에, 여기서는 위에서 채우기로 합니다. 하지만 통상적으로는 위에서 부터 채워지는 것으로 되겠지만, 100-아날로그 태그 로 되어있기 때문에, 여기서는 제일 처음에는 100% 채워져 있다가, 아날로그 태그의 값이 커지면 커질수록 위쪽으로 줄어 들게 됩니다.



여기서는 제일 위에 80이라는 값이 있는데, 이 값이 아날로드1의 태그값을 지정한 것입니다. 라이브러리를 따로 열지 않아도 태그값의 표면에 나오는 숫자를 입력하는 것만으로 간편하게 아날로그 태그값을 변경할 수 있으며, 여기다가 대다수가 제 의도대로 변하는 것을 CiMonX에서 확인할 수 있었습니다.



다음은 아날로그 계기판 중에 하나인 원형 계기판을 만드는 과정입닙다. 우선 위 스크린샷에 보이는 것처럼 '라이브러리' 라는 것을 클릭하도록 합니다.



여기다가 계기N이라는 것을 눌러서 임의의 원형 계기판을 가져 오도록 합니다.



잠시 착각을 했는데, 우선은 사각형 계기판 부터 만들어 보는 것을 실습하도록 했습니다. 원하는 계기판을 가져와서 그룹해제를 선택하도록 합니다.



라이브러리에 있는 파일 형식은 WMF형식이며, 위 스크린샷에 보이는 것처럼 스위치에 해당하는 부분만과 배경이 되는 것을 따로 그룹으로 묶어 주도록 합니다.




그리고 수직끌기라는 것을 지정해서 먼저 이동범위는 좀 어려운데, CiMonD의 화면상에서 저 아날로그 기기가 움직일 만한 공간의 X좌표를 일일히 계산해서 입력해야 합니다. 그 이유는 아날로그 태그는 0~100사이의 움직임이기는 하지만, 실제 눈에 보이는 계기판은 200입니다. 그래서 하는 수 없이 2픽셀마다 1 아날로그 태그값이 변경되어야 하는데, 그렇게 만들어 주기 위해서 입니다.



우선 수직으로 움직이는 계기판은 CiMonX에서 제대로 작동하는 것을 보았고, 이번에는 수평으로 움직이는 계기판을 만들고자 합니다. 전체적인 과정은 수직 계기판과 같습니다.



다음은 역시 수평끌기 메뉴에서 움직이게 될 거리와, 연결될 아날로그 태그이름 등을 하도록 합니다.



CiMonX에서 제대로 작동하는 것을 확인하였습니다.



드디어 원형 계기판을 구현하는 단계에 왔습니다. 역시 라이브러리의 계기N에서 위 그림에서 보이는 것과 같이 계기판을 가지고 오도록 합니다.



일단 문자를 편집하기 위한 과정에 들어가 보도록 합니다.



다음에는 바늘이 되기 위한 것을 위한 선을 그어주도록 합니다. 그래도 이걸 바로 바늘로 만들 수는 없고, 조금은 조작을 하도록 합니다.



다음은 바늘의 긴 부분과 짧은 부분-절대 시계가 아니기는 하지만, 이 부분을 만들어 주도록 합니다. 그리고 선의 굵기와 색도 변경을 주도록 합니다.



최대 회전각도를 지정합니다. 이 계기판은 360도를 완전히 다 도는 것이 아니기 때문에 움직일 각도를 지정 하도록 합니다. 그리고 나서 회전의 중심축을 지정해야 하는데, 디폴트로 있는 것이 아니라 바늘이 움직일 축을 만들어야 하니까 일일히 X,Y 좌표를 확인하고 나서, 위 스크린샷의 메뉴에서 보이는 것처럼 여기다가 지정을 합니다.



마지막으로 완성이 된 것입니다. 아무튼 간에 이걸로 어제 했는 PLC 자동제어 수업의 내용의 절반이 끝났다고 해야 할까요? 하루 7시간 가까이 학습을 하다 보니 그 내용이 만만하지 않기는 하지만, 그래도 이런 포스팅 꺼리로 만들 수 있는 점은 어떤 의미로 좋다는 생각이 듭니다.

  1. W120G 2018.11.23 16:49

    잘배우고 갑니다. 예제 감사해요~^^

+ Recent posts