티스토리 뷰

화면 단위 태그 그룹 정의는 서버와 클라이언트 사이에 태그 데이터의 효율적인 전송과 HMI 화면에 대한 효과적인 관리를 위해서 화면 단위 또는 작업 단위로 태그들을 묶어 놓은 것입니다. 화면별 태그 그룹 트리에서는 위의 그림과 같이 여러 기능을 툴바와 콘텍스트 메뉴를 통해서 제공하고 있습니다.

 


화면 단위 태그 그룹 추가는 위의 창과 같이 화면 그룹의 아이디를 입력하는 것으로 시작합니다. 화면 그룹 내에서 중복되지 않는 영문자 및 숫자로 입력합니다. 태그 그룹 추가, 삭제 및 이름 변경을 화면별 태그 그룹에서 수행했다면 각 화면 그룹에 속하는 태그 설정은 중앙의 작업 영역에서 수행합니다. 

 

......

                case "overview": 
                    TagRead.SetTagGroup(scrname, true); 
                    if (scr_overview == null) 
                    { 
                        scr_overview = new HMIOverview(); 
                        scr_overview.MdiParent = this; 
                    } 
                    scr_overview.Dock = DockStyle.Fill; 
                    scr_overview.Show(); 
                    break;

......

위의 코드는 특정 화면을 선택했을때 구동하는 코드로 현재 동작하는 화면을 SetTagGroup(화면명, true)로 설정해 놓으면 서버/클라이언트 간의 데이터 전송을 담당하는 쓰레드에서 해당 그룹에 속하는 태그 데이터들을 일괄적으로 전송 받습니다.

 

        public HMIOverview() 
        { 
            int tmpidx; 

            InitializeComponent(); 
            if ((tmpidx = CliGbl.setGroupStart("overview")) >= 0) 
            { 
                uigrp = (ushort)tmpidx; 
                CliGbl.setGroupControl(uigrp, this.Controls); 
                CliGbl.setGroupEnd(uigrp); 
                ui_timer.Enabled = true; 
                //LogWriter.Instance.WriteToLog("overview start"); 
            } 
        }



        private void ui_timer_Tick(object sender, EventArgs e) 
        { 
            if (this.Visible) CliGbl.UIUpdater(uigrp); 
        }

위의 코드는 특정 화면 클래스의 초기 루틴과 주기적인 화면 업데이트 루틴 예제로 작업 단위를 "화면 그룹에 속한 모든 태그"로 단순화 시킨 것을 확인할 수 있습니다. 화면 단위 태그 그룹이 서버/클라이언트간의 데이터 전송 뿐만아니라 HMI 화면 동작에도 영향을 미치고 있음을 확인 할 수 있습니다.

 

동운 HMI 환경 설정기에서는 좀더 편리한 화면 단위 태그 그룹 설정을 위해서 "소스 코드에서 태그 정보 자동 추출" 기능을 제공하고 있습니다. C# 언어에서는 화면 디자인 파일을 *.Designer.cs 파일을 통해서 관리하는데 환경 설정기에서 이 소스 코드를 분석해서 태그 그룹에 자동으로 태그들을 등록시켜주는 기능입니다. 위의 화면은 "소스 코드에서 태그 정보 자동 추출" 기능을 선택하면 나오는 대화창으로 [확인] 버튼으로 진행하면 됩니다.

 

 

다음 화면은 위의 그림과 같이 *.Designer.cs 파일을 선택하는 화면으로 동운 HMI 소스코드가 위치한 프로젝트 폴더에서 등록하려는 *.Designer.cs 파일을 선택하면 태그를 설정한 컨트롤을 찾아서 해당 그룹에 찾은 태그들을 자동으로 등록합니다.

 

특정 화면 그룹을 선택하면 위의 그림과 같이 화면 중앙의 작업창에서 그룹에 포함시킬 태그를 추가하거나 삭제 할 수 있습니다. 그룹내 태그의 순서는 실제 동작에는 아무런 영향을 주지 않기 때문에 태그 순서를 변경하는 기능은 별도로 제공하지 않습니다. 다만 위의 그림처럼 표 상단에 있는 항목 타이틀을 클릭해서 해당 항목 기준으로 오름 차순 또는 내림차순으로 태그의 등록 여부를 확인할 수 있습니다(저장후 다시 확인하명 원래의 순서로 복귀합니다). 항목 타이틀 우측에 삼각형으로 오름 차순인지 내림 차순인지를 표시하는데 위의 예제에서는 태그 이름을 기준으로 내림 차순 표시하고 있습니다.

 

특정 태그의 삭제는 행번호 셀을 클릭하여 행전체를 선택한 상태에서 [Delete]키를 누르면 해당 태그를 현재 화면 단위 태그 그룹에서 제외시킵니다.

 

특정 그룹에 태그를 추가하려면 위의 그림처럼 우측에 있는 태그 목록에서 추가하려는 태그를 끌어다가 좌측 표 영역에다가 놓기하는 방식을(드래그 & 드롭) 사용하면 됩니다. 태그를 끌어다 놓기하면 위의 그림처럼 그룹의 맨 뒤에 해당 태그를 추가합니다.

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/03   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함