안녕하세요?


이번 포스팅에서는 CiMon Scada를 이용해서 건물의 흡기와 배기를 하는 시스템 패널을 구축해 보도록 하고, 이걸 사용자가 마음대로 작동과 정지 시간을 변경할 수 있도록 패널을 만드는 것을 실습해 보았습니다. 그래서 이번 포스팅에서는 관련된 내용을 포스팅 하고자 합니다.



우선은 새 프로젝트를 만들도록 해 봅니다.



일단 CiMonD에서 디자인 작업에 들어가 보도록 합니다.




그 다음에는 팬이 돌아간다는 것을 시작적으로 나타내기 위해서, 애니메이션으로 만들고자 합니다. 그래소 4컷으로 애니메이션을 하나하나 만들어 보도록 합니다.



CiMonD의 메뉴중에 애니메이션 편집이라는 것이 있는데, 여기에 방금전에 만들어 둔 1개 1개의 애니메이션 컷을 Ctrl + V 해서 복사해 주도록 합니다.



전부 복사해 놓은 다음의 화면입니다.



다른 이름으로 저장이라는 것을 하는데, 저는 새로운 그룹을 하나 만들어서 찾아보기 좋도록  합니다.



그래서 애니메이션 삽입에 들어가 보면, 제가 자작으로 만들어 놓은 애니메이션이 있는 것을 볼 수 있습니다.




그리고 이번에는 버튼에 관한 태그를 만들어 놓도록 하고, 다음으로는 팬에 대해서 태그를 만들도록 합니다.



이번에는 ON시켰을 경우 변하는 것 까지 디자인을 하도록 합니다.



버튼의 태그값이 바뀌면 태그동작에서 스크립트를 작동시키도록 설정을 합니다.



스크립트의 내용은 간단합니다. IF문을 사용해서 버튼의 태그가 1이면, 팬을 동작, 아니면 팬을 OFF시키라고 하면 됩니다.



CiMonX에서 실행을 시켜 보았을 때, 제대로 동작을 하는 것을 확인할 수 있었습니다.



다음은 시계라는 기능을 만들기 위한 작업입니다. 일단 최대값이 24라고 해서 24시간을 표시하는 시계에 관계된 태그를 아날로그 태그로 하나 만들어 주도록 합니다.



그리고 스크립트에서는 While문을 써서, 계속 값이 증가하도록 하는데, While 밖에서 0으로 선언이 된 변수는 24라는 값이 되면, 다시 0으로 돌아오게 하는 것이 핵심입니다. 원래는 시간 단위로 해야 겠지만, 여기서는 그냥 1초=1시간 단위로 계산을 해서 간단하게 작업을 했습니다.




CiMonX에서 제대로 작동을 하는 지를 살펴 보았고, 성공적인 것을 확인할 수 있었습니다.



다음은 main()이라는 이름명의 함수를 지정해서, 여기서는 CiMonX를 시작하자 마자 시간에 관계된 스크립트를 바로 실행시킬 수 있도록 지정합니다.



다음으로는 스위치/램프 명령을 불러와서, 자동/수동을 설정하는 것으로 들어가 보도록 합니다.



그리고 당연히 이와 관련된 태그를 만들고, 태그동작으로 스크립트 하나를 동작 시키도록 합니다.



그리고 이번에는 if문을 2중으로 쓰는 형태로 만들어서, 자동운전에 관한 태그가 0-OFF인 상태로 수동일 때 수동으로 버튼을 누를 때 작동을 하도록 스크립트를 수정하였습니다.



다음으로는 시간에 따라서, 팬을 작동시키는 스크립트를 짜도록 합니다. 여기서는 자동운전이 ON되어 있고, 그리고 시간이 어느정도 되었는 지에 따라서 자동으로 팬을 ON/OFF시키도록 하였습니다.



그리고 특이하게도 이 시간에 따라서 자동으로 작동이 되는 스크립트는 시간을 나타내는 아날로그 태그가 값이 변할 때 마다 자동으로 변하도록 했습니다.



이제 오늘의 하이라이트라고 해야 할까요? 그룹 일정기에 대한 것을 CiMonD에 있는 도구 모음으로 그룹 일정기를 클릭 하도록 합니다.




여기서는 그룹목록이라는 항목 아래에 추가, 편집 삭제 라는 메뉴가 있는데, 이 메뉴는 CiMonD에서만 있습니다. 여기를 클릭하면 태그를 지정하고, 태그의 값을 일일히 변경 시킬 수 있게 됩니다.



문제는 이 그룹일정기를 CiMonX상에서 나타나게 해야 하는데, 그 방법은 간단했습니다. 버튼을 하나 만들고, 명령식에다가 gsch_dialog(0)라는 명령식을 입력하기만 하면 됩니다. 그러면 CiMonX상에서 버튼을 누르면 그룹 일정 편집기를 열 수 있게 됩니다.



미리 지정해 둔 그룹목록을 CiMonX상에서 실행을 키기고 나면, 여기서 나오는 것을 알 수 있습니다. 여기서 중요한 것은 그룹에 지정된 태그는 단 1개이며, 변하는 값을 단 1개라서, 토글 스위치 마냥 ON/OFF를 동시에 시킬 수는 없습니다. 그래서 같은 태그를 두고서, ON과 OFF를 각각 따로 지정을 해야만 합니다.


그리고 다시 중요한 것은 하나, CiMonX에서는 이렇게 그룹의 이름과 태그의 값을 지정할 수 없다는 것입니다. 그래서 이를 조심해야 합니다. 그리고 동작 시간은 스크립트에 지정한 시간이 아니라 CiMonX의 시간이며, 이 시간은 CiMonX가 실행되고 있는 컴퓨터의 시스템상 시간입니다.


그리고 동작시간에 정확하게 들어 맞아야만 작동을 한다는 것도 잊으면 안됩니다. 1분이라도 지나간 다음에 동작시간을 지정한다고 해서, ON/OFF가 조종이 되지 않는다는 것입니다. 그래도 언제나 동작시간은 시스템 시간 보다 더 이른 시간이 되도록 지정해야 원하는 대로 동작을 시킬 수 있으며, 위 스크린샷에 나오는 '등록'이라는 버튼을 눌러야 제대로 등록이 되면서 지정이 되는 것입니다.


저작자 표시
신고

+ Recent posts

티스토리 툴바