KR101498877B1 - 프로그램 작성 장치 및 화상 제어 시스템 - Google Patents

프로그램 작성 장치 및 화상 제어 시스템 Download PDF

Info

Publication number
KR101498877B1
KR101498877B1 KR1020127033459A KR20127033459A KR101498877B1 KR 101498877 B1 KR101498877 B1 KR 101498877B1 KR 1020127033459 A KR1020127033459 A KR 1020127033459A KR 20127033459 A KR20127033459 A KR 20127033459A KR 101498877 B1 KR101498877 B1 KR 101498877B1
Authority
KR
South Korea
Prior art keywords
image
program
motion
processing
fbd
Prior art date
Application number
KR1020127033459A
Other languages
English (en)
Other versions
KR20130040925A (ko
Inventor
겐이치 모리모토
Original Assignee
미츠비시 히타치 파워 시스템즈 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 미츠비시 히타치 파워 시스템즈 가부시키가이샤 filed Critical 미츠비시 히타치 파워 시스템즈 가부시키가이샤
Publication of KR20130040925A publication Critical patent/KR20130040925A/ko
Application granted granted Critical
Publication of KR101498877B1 publication Critical patent/KR101498877B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

프로그램 작성 시스템(10)은, 묘화 툴(14)에 의해, 화상 표시부(20)의 화면에서 소정의 움직임을 행하게 하는 화상이 묘화되고, FBD 작화 툴(16)에 의해, 묘화 툴(14)에서 묘화된 화상을 오브젝트로서 취급하고, 그 오브젝트에 대하여 움직임을 행하게 하기 위한 신호선을 접속하는 것에 의해, 화상이 행하는 움직임이 정의됨과 아울러, 그 정의한 움직임을 화상이 행하기 위한 처리의 흐름이 FBD 언어로 기술된다. 이에 의해, 높은 표현력을 갖는 화상 표시를 실현할 수 있다.

Description

프로그램 작성 장치 및 화상 제어 시스템{PROGRAM-PRODUCING DEVICE AND IMAGE CONTROL SYSTEM}
본 발명은, 프로그램 작성 장치 및 화상 제어 시스템에 관한 것이다.
종래, 퍼스널컴퓨터 등을 이용한 그래픽 사용자 인터페이스에 의해, 기계 장치 및 플랜트 등의 운전 감시 조작을 행하는 경우에 이용하는 프로그램을 하기와 같이 개발하고 있었다.
도 8은, 상기 프로그램을 개발하는 과정을 나타낸 모식도이다.
종래, 화상 표시부(100)의 화면에 표시시키는 화상을 묘화하는 툴로서는, 예컨대, 그래픽 에디터 등의 마우스를 이용한 묘화 툴(102)이 사용되고 있었다. 이 때문에, 묘화 내용은 가시화되고, 묘화를 행하는 작업자는 묘화 내용을 확인하면서 묘화하는 것이 가능했다.
한편, 프로그램을 작성하기 위한 툴로서는, C++ 언어 및 JAVA 등의 구조화 언어(함수나 인수를 배열하여 적는 것에 의해 동작을 기술하는 언어)를 이용한 프로그래밍 툴(104)이 이용되고 있었다. 이 때문에, 프로그램은, 프로그램 언어에 정통한 작업자가 설계할 필요가 있으며, 그 작업자는, 묘화 툴을 사용하는 작업자와는 다른 전문 지식 및 기능이 필요했다.
또한, 프로그램 언어로 기술된 로직(처리)의 동작 상태를 가시화하기 위해, 일반적으로, 브레이크 포인트라 부르는 처리를 중단하는 구조를 프로그램에 넣는 것에 의해, 프로그램을 동작의 요소마다 일단 멈추고, 프로그램의 변수의 값을 표시시키나, 스텝 실행이라고 하는, 1행씩의 실행을 행하는 것에 의해, 동작 상태를 확인하는 방법을 이용하고 있었다. 그러나, 이 방법에서는, 화면 표시부(100)측의 액션(버튼의 클릭 등의 이벤트)에 의해 반응하는 동작 등, 프로그램의 움직임과 액션의 연동을 리얼타임으로 확인하는 것이 어려웠다. 그 때문에, 프로그램의 작업자는, 프로그램이 예기(豫期)한 동작을 하지 않는 경우, 액션에 대한 반응 타이밍 등의 조정에 노력을 요하고 있었다.
그래서, 작업자가 프로그래밍 작업을 용이하게 실시할 수 있고, 시각적으로 이해가 용이한 환경에서 프로그램을 작성하는 것을 목적으로 한 기술로서, 특허 문헌 1에는, 동작을 정의하기 위한 대상이 되는 그래픽 오브젝트 및 그 그래픽 오브젝트의 특성을 선택하고, 선택한 복수의 그래픽 오브젝트의 관계를 정의하고, 선택한 그래픽 오브젝트의 동작 룰을 설정하는 것에 의해, 프로그램을 자동 생성하는 비주얼 프로그래밍 방법이 개시되어 있다.
또한, SCADA(Supervisory Control Data Acquisition) 시스템이라 불리는, 컴퓨터에 의한 시스템 감시 및 프로세스 제어 등을 행하는 시스템이 플랜트 등에 이용되고 있다. SCADA 시스템은, 상술할 묘화 툴로 묘화한 화상에 대하여, 「ON」, 「OFF」, 또는 「수치」의 신호를 할당하여, 다른 시스템에서 생성된 신호의 변화에 의해 화상이 변화하는 감시 화면에 의해 시스템 감시 및 프로세스 제어 등을 행한다.
(선행 기술 문헌)
(특허 문헌)
(특허 문헌 1) 국제 공개 제 98/040817호
그러나, 특허 문헌 1에 기재된 기술에서는, 프로그래밍의 작업자는, 미리 정해진 그래픽 오브젝트, 및 그 특성밖에 선택할 수 없어, 높은 표현력을 갖는 화상을 화상 표시 장치의 화면상에 실현할 수는 없었다.
또한, SCADA 시스템에서는, 다른 시스템에는 화상이 표시되는 화면측의 정보가 없기 때문에, 각 이벤트 등의 신호가, 번호 등으로 번호가 붙여져 관리되고 있으며, 작업자는, 대량의 신호에 고유의 명칭을 붙이는 등, 관리 업무가 증가하고 있었다. 또한, 다른 시스템과 SCADA 시스템의 인터페이스를 미리 정의할 필요가 있기 때문에, 화상의 표현으로서, 예컨대 「색이 변한다」 또는 「수치가 변한다」 등의 간단한 표현밖에 할 수 없다고 하는, 화상 표현상의 제약이 있었다. 그 때문에, SCADA 시스템에서는, 화면에 표시시키는 화상에, 예컨대 동화상 및 지도 정보 등을 조합하는 등의 높은 표현력을 줄 수 없어, 단순한 감시 화면은 작성할 수 있지만, 높은 표현력을 갖는 감시 화상의 구축이 용이하지 않았다.
한편, 전용 어플리케이션 개발 프레임워크(리치 클라이언트 기술)를 이용하는 것에 의해, 높은 표현력을 갖는 화상 표시를 실현시키는 것이 가능하다. 이것은, 도 8에 나타내는 묘화 툴(102) 및 프로그래밍 툴(104)을 같은 툴로 실현하는 것에 의해, 묘화한 화상 부품의 움직임을, 프로그래밍할 수 있도록 한 것이다. 그러나, 이 기술은, 프로그래밍 언어로서 C++ 등을 이용하는 경우가 있으며, 이와 같은 경우, 작업자는, 고도의 프로그래밍의 지식을 필요로 한다. 또한, 프로그래밍 언어를 사용하지 않는 경우에는, 화상 부품에 「프로퍼티」라 불리는 움직임의 파라미터를 미리 부여하여 두는 것에 의해, 동작을 규정하지만, 동작의 상태를 가시화하는 것이 곤란하다고 하는 문제가 있다.
본 발명은, 이와 같은 사정을 감안하여 이루어진 것으로, 높은 표현력을 갖는 화상 표시를 실현시키는 프로그램을, 간이하게 작성할 수 있는 프로그램 작성 장치 및 화상 제어 시스템을 제공하는 것을 목적으로 한다.
상기 과제를 해결하기 위해, 본 발명의 프로그램 작성 장치 및 화상 제어 시스템은 이하의 수단을 채용한다.
즉, 본 발명의 제 1 형태에 따른 프로그램 작성 장치는, 화상 표시 장치의 화면에 표시되는 화상을 제어하는 처리를 컴퓨터에 실행시키기 위한 프로그램을 작성하는 프로그램 작성 장치로서, 상기 화상 표시 장치의 화면에서 소정의 움직임을 행하게 하는 화상을 묘화하는 묘화 수단과, 상기 묘화 수단에 의해 묘화되는 상기 화상을 오브젝트로서 취급하고, 그 오브젝트에 대하여 상기 움직임을 행하게 하기 위한 신호선을 접속하는 것에 의해, 상기 화상이 행하는 움직임을 정의함과 아울러, 그 정의한 움직임을 상기 화상이 행하기 위한 처리의 흐름을 기능 블록 도표(function block diagram) 언어로 기술하는 처리 기술 수단을 구비한다.
상기 구성에 의하면, 묘화 수단에 의해, 화상 표시 장치의 화면에서 소정의 움직임을 행하게 하는 화상이 묘화된다. 즉, 작업자는, 프로그램에 의해 제어되는 화상으로서, 미리 정해진 화상을 이용하는 것이 아니고, 묘화 수단에 의해 묘화한 임의의 다양한 화상을 이용할 수 있다.
또, 여기서 말하는 화상이란, 예컨대, 도형, 복수의 도형의 조합, 사진 화상, 및 동화상 등을 포함한다.
또한, 화상의 움직임이란, 화상의 형상의 변화, 화상의 색채의 변화, 화상의 소거 또는 출현, 화상의 이동, 및 화상의 전환 등이다. 또, 화상의 전환에는, 화면 전체를 표시하는 화상, 즉, 페이지의 전환을 포함한다. 이들 화상의 움직임은, 화상 표시 장치의 화상 처리에 관한 기능에 포함되는 것이다.
그리고, 처리 기술 수단에 의해, 묘화 수단에서 묘화된 화상을 오브젝트로서 취급하고, 그 오브젝트에 대하여 움직임을 행하게 하기 위한 신호선을 접속하는 것에 의해, 화상이 행하는 움직임이 정의됨과 아울러, 그 정의한 움직임을 화상이 행하기 위한 처리의 흐름이 기능 블록 도표 언어로 기술된다.
여기서, 기능 블록 도표(Function Block Diagram, 이하, 「FBD」라고 한다) 언어는, 요소 기호와 요소 기호를 신호선으로 연결하는 것에 의해 처리의 흐름을 나타내는 프로그램 언어이며, 작업자는, 요소 기호를 나타내는 도형과 신호선을 나타내는 도형을 이용하여 처리의 흐름을 작화하게 되기 때문에, 묘화와 같은 감각으로 프로그램할 수 있다. 그 때문에, C++ 언어 등의 고도의 프로그램 언어를 습득하고 있지 않은 작업자도, 용이하게 프로그램을 작성할 수 있다.
그리고, 묘화 수단에서 묘화된 화상이, FBD 언어에 있어서 오브젝트로서 취급되고, 그 오브젝트에 대하여 움직임을 행하게 하기 위한 신호선이 접속되는 것에 의해, 화상이 행하는 움직임이 정의된다.
이와 같이, 본 발명은, 묘화 수단에 의해 임의의 화상이 묘화되고, 처리 기술 수단에 의해, 화상의 움직임을 정의함과 아울러, 정의한 움직임을 화상이 행하기 위한 처리의 흐름이 FBD 언어로 기술되므로, 높은 표현력을 갖는 화상 표시를 실현시키는 프로그램을, 간이하게 작성할 수 있다.
상기 제 1 형태에서는, 상기 묘화 수단에서 묘화되는 화상이, 그 화상을 오브젝트로서 나타낸 정보를 갖고, 상기 처리 기술 수단이, 상기 정보를 개재시키는 것에 의해, 상기 화상의 움직임을 행하기 위한 처리의 흐름을 기능 블록 도표 언어로 기록하는 것이 바람직하다.
상기 구성에 의하면, 묘화 수단에 의해 묘화되는 화상은, 그 화상을 오브젝트로서 나타낸 정보를 갖고 있다. 그 정보는, 화상의 특징을 나타낸 메타 데이터이며, 예컨대, XML(eXtensible Markup Language)로 기술되어 있다.
그리고, 처리 기술 수단에 의해, 상기 정보를 개재시키는 것에 의해, 화상의 움직임을 행하기 위한 처리의 흐름이 FBD 언어로 기술된다.
이와 같이, 본 발명은, 화상의 특징 및 그 화상이 가능한 움직임을 나타내는 정보를 개재시켜 프로그램을 작성하므로, 묘화 수단을 갖는 장치와, 처리 기술 수단을 갖는 장치를 다른 장치로 할 수 있고, 그 결과, 화상의 묘화, FBD 언어에 의한 프로그램의 작성의 작업을 개별적으로 행할 수 있다.
상기 제 1 형태에서는, 상기 정보가, 상기 처리 기술 수단에 의해 상기 화상에 대하여 새로운 움직임이 정의된 경우에, 그 움직임을 행하기 위한 파라미터가 삽입되고, 상기 화상 표시 장치에 기억시키는 것이 바람직하다.
상기 구성에 의하면, 화상을 오브젝트로서 나타낸 정보는, 처리 기술 수단에 의해 화상에 대하여 새로운 움직임이 정의된 경우에, 그 움직임을 행하기 위한 파라미터가 삽입되고, 화상 표시 장치에 기억된다. 이에 의해, 화상 표시 장치는, 처리 기술 수단에서 기술된 처리를 나타내는 프로그램이 실행된 경우에, 상기 정보를 이용하여 처리 기술 수단에 의해 정의된 움직임을 행하도록 화상을 표시할 수 있다.
한편, 본 발명의 제 2 형태에 따른 화상 제어 시스템은, 묘화 수단에 의해 묘화된 화상의 특징 및 그 화상이 행하는 움직임을 나타낸 정보를 기억한 화상 표시 장치와, 상기 정보로 나타내어진 상기 화상이 상기 정보로 나타내어진 상기 움직임을 행하기 위한 처리의 흐름을, 기능 블록 도표 언어로 기술한 프로그램을 기억한 연산 장치를 구비하고, 상기 연산 장치는, 상기 프로그램으로 나타내어진 처리를 실행하고, 상기 화상 표시 장치는, 상기 연산 장치에 의한 처리의 내용에 근거하여 상기 정보에 의해 나타내어진 움직임을 행하도록 화상을 표시시킨다.
상기 구성에 의하면, 화상 표시 장치는, 묘화 수단에 의해 묘화된 화상의 특징 및 그 화상이 행하는 움직임을 나타낸 정보를 기억하고 있다.
상기 화상이란, 예컨대, 도형, 복수의 도형의 조합, 사진 화상, 및 동화상 등이며, 작업자가 묘화 수단을 이용하여 묘화한 화상이다. 또한, 움직임이란, 화상의 형상의 변화, 화상의 색채의 변화, 화상의 소거 또는 출현, 화상의 이동, 및 화상의 전환 등이다. 특히, 화상의 전환에는, 화면 전체를 표시하는 화상, 즉, 페이지의 전환을 포함한다. 즉, 이들 화상의 움직임은, 화상 표시 장치의 화상 처리에 관한 기능에 포함되는 것이다.
한편, 연산 장치는, 상기 정보로 나타내어진 화상이 상기 정보로 나타내어진 움직임을 행하기 위한 처리의 흐름을, FBD 언어로 기술한 프로그램을 기억하고 있다.
또한, 프로그램은, 묘화 수단에서 묘화된 화상을 오브젝트로서 취급하고, 그 오브젝트에 대하여 움직임을 행하게 하기 위한 신호선을 접속하는 것에 의해, 화상이 행하는 움직임이 정의됨과 아울러, 그 정의한 움직임을 화상이 행하기 위한 처리의 흐름이 FBD 언어로 기술된 것이다.
그리고, 연산 장치는, 프로그램으로 나타내어진 처리를 실행하고, 화상 표시 장치는, 연산 장치에 의한 처리의 내용에 근거하여 상기 정보에 의해 나타내어진 움직임을 행하도록 화상을 표시시키므로, FBD 언어를 이용하여 작성한 프로그램에 의해, 높은 표현력을 갖는 화상 표시를 실현시킬 수 있다.
본 발명에 의하면, 높은 표현력을 갖는 화상 표시를 실현시키는 프로그램을, 간이하게 작성할 수 있다고 하는 우수한 효과를 갖는다.
도 1은 본 발명의 실시형태에 따른 프로그램 작성 시스템의 구성을 나타내는 도면이다.
도 2는 본 발명의 실시형태에 따른 프로그램의 처리를 감시하는 감시 툴을 마련한 경우의 구성도이다.
도 3은 본 발명의 실시형태에 따른 묘화 툴을 구비하는 정보 처리 장치의 화면에 표시되는 묘화 에디터 화면의 일례를 나타내는 도면이다.
도 4는 본 발명의 실시형태에 따른 FBD 작화 툴로 작화되는 처리의 흐름을 나타내는 모식도이다.
도 5는 본 발명의 실시형태에 따른 FBD 작화 툴을 구비하는 정보 처리 장치의 화면에 표시되는 FBD 작화 화면의 일례를 나타내는 모식도이다.
도 6a는 본 발명의 실시형태에 따른 FBD 작화 툴을 이용한 FBD 도면의 작화의 흐름의 설명에 필요한 모식도이다.
도 6b는 본 발명의 실시형태에 따른 FBD 작화 툴을 이용한 FBD 도면의 작화의 흐름의 설명에 필요한 모식도이다.
도 6c는 본 발명의 실시형태에 따른 FBD 작화 툴을 이용한 FBD 도면의 작화의 흐름의 설명에 필요한 모식도이다.
도 7은 본 발명의 실시형태에 따른 FBD 작화 툴을 이용한 FBD 도면의 작화의 흐름의 설명에 필요한 모식도이다.
도 8은 종래의 프로그램의 개발 과정의 설명에 필요한 모식도이다.
이하에, 본 발명에 따른 프로그램 작성 장치 및 화상 제어 시스템의 일 실시형태에 대하여, 도면을 참조하여 설명한다.
도 1에, 본 실시형태에 따른 프로그램 작성 시스템(10)의 구성을 나타낸다. 프로그램 작성 시스템(10)은, 퍼스널컴퓨터 등의 정보 처리 장치(12C)의 화상 표시부(20)의 화면에 표시되는 화상을 제어하는 처리를 컴퓨터에 실행시키기 위한 프로그램을 작성하는 시스템이다.
또, 프로그램 작성 시스템(10)에서 작성되는 프로그램은, 정보 처리 장치(12C)를 이용한 그래픽 사용자 인터페이스에 의해, 예컨대, 기계나 플랜트 등의 운전 조작 및 감시 조작 등을 행하는 기능을 실현하기 위한 것이다.
본 실시형태에 따른 프로그램 작성 시스템(10)은, 묘화 툴(14)을 탑재한 정보 처리 장치(12A), 및 FBD 작화 툴(16)을 탑재한 정보 처리 장치(12B)를 구비한다.
묘화 툴(14)은, 작업자가, 화상 표시부(20)의 화면에서 소정의 움직임을 행하게 하는 화상을 묘화하기 위한 것이며, 예컨대, 그래픽 에디터 등의 마우스를 이용한 묘화 툴이다.
또, 묘화 툴(14)에 의해 묘화되는 화상에는, 예컨대, 복수의 도형의 조합, 사진 화상, 및 동화상 등이 포함된다.
또한, 화상의 움직임이란, 화상의 형상의 변화, 화상의 색채의 변화, 화상의 소거 또는 출현, 화상의 이동, 및 화상의 전환 등이다. 또, 화상의 전환에는, 화면 전체를 표시하는 화상, 즉, 페이지의 전환을 포함한다. 이들 화상의 움직임은, 화상 표시부(20)가 구비하는 그래픽 엔진(22)의 화상 처리에 관한 기능에 포함되는 것이다.
또한, 묘화 툴(14)은, 묘화한 화상을 그래픽 오브젝트로서 기재한 메타 데이터(이하, 「밑그림 정보」라고 한다)를 생성한다. 메타 데이터인 밑그림 정보는, 화상의 특징을 나타내는 포맷(본 실시형태에서는, XML(eXtensible Markup Language))으로 기술되어 있다. 특히 본 실시형태에서는, 밑그림 정보는 XML로 기술되어 있기 때문에, 임의의 프로그램에서 밑그림 정보에 기재되어 있는 그래픽 오브젝트를 이용할 수 있다.
또, 상기 화상의 특징이란, 구체적으로는, 화상의 형상, 화상의 크기, 및 화면상에서의 위치 등이다.
한편, FBD 작화 툴(16)은, 작업자가, 묘화 툴(14)에 의해 묘화되는 화상을 오브젝트로서 취급하고, 그 오브젝트에 대하여 상기 움직임을 행하게 하기 위한 신호선을 접속하는 것에 의해, 화상이 행하는 움직임을 정의함과 아울러, 그 정의한 움직임을 화상이 행하기 위한 처리의 흐름을 FBD 언어로 기술하는 것이다.
여기서, FBD 언어는, 요소 기호와 요소 기호를 신호선으로 연결하는 것에 의해 처리의 흐름을 나타내는 프로그램 언어이며, 작업자는, 요소 기호를 나타내는 도형과 신호선을 나타내는 도형을 이용하여 처리의 흐름을 작화하게 되기 때문에(작화된 도면을 FBD 도면이라고 한다), 묘화와 같은 감각으로 프로그램할 수 있다. 또한, 신호의 흐름은, 요소 기호와 요소 기호의 신호선의 접속으로 나타내어지기 때문에, 번호를 붙여 관리를 행할 필요가 없다. 이와 같이, FBD 언어를 이용하는 것에 의해, C++ 언어 등의 고도의 프로그램 언어를 습득하고 있지 않은 작업자도, 용이하게 프로그램을 작성할 수 있다.
또한, FBD 언어의 특징으로서는, FBD 도면에 의해 프로그램의 동작 상태를 가시화하는 것이 가능하며, 간이하게 신호의 처리 상태를 리얼타임으로 확인할 수 있음과 아울러, 파라미터의 조정이 용이하다.
본 실시형태에 따른 FBD 작화 툴(16)은, 묘화한 화상을 그래픽 오브젝트로서 기재한 밑그림 정보를 개재시켜 FBD 언어에 의해 프로그램을 작성한다.
즉, 본 실시형태에 따른 FBD 작화 툴(16)에서는, 밑그림 정보를 읽는 것에 의해 그래픽 오브젝트를 인식하고, 그래픽 오브젝트를 나타내는 요소 기호와 연산용 요소 기호를 신호선으로 연결하는 것에 의해 FBD 도면을 작화한다.
그리고, FBD 도면의 작화에 있어서, 그래픽 오브젝트를 나타내는 요소 기호에, 그 요소 기호에 대응하는 화상의 움직임을 제어하기 위한 신호선을 접속하는 것에 의해, 화상의 움직임이 정의된다.
또한, 밑그림 정보는, FBD 묘화 툴(14)에 의해 화상에 대하여 새로운 움직임이 정의된 경우에, 그 움직임을 행하기 위한 파라미터가 삽입된다.
한편, 정보 처리 장치(12C)에는, 밑그림 정보 및 FBD 작화 툴(16)에서 FBD 언어에 의해 기술된 처리의 흐름에 근거한 프로그램이 송신되고, 밑그림 정보는, 화상 표시부(20)에 기억되고, 프로그램은 연산 처리부(24)에 기억된다.
연산 처리부(24)는, 기억한 프로그램으로 나타내어지는 처리를 제어 로직(26)에서 실행한다. 그리고, 화상 표시부(20)는, 그래픽 엔진(22)을 통해 연산 처리부(24)에 의한 처리의 내용에 근거하여 밑그림 정보에 의해 나타내어진 움직임을 행하도록 화상을 표시한다. 또, 화상 표시부(20)에 대한 조작(마우스의 조작, 터치 패널의 조작 등)이 행해지면, 그 조작의 내용을 나타내는 정보가 화상 표시부(20)로부터 연산 처리부(24)에 송신되고, 그 송신된 정보에 따라 연산 처리부(24)가 프로그램으로 나타내어지는 처리를 더 행한다.
도 2는, FBD 언어로 작성한 프로그램의 처리를 감시하는 감시 툴(30)을 마련한 경우의 구성도이다.
본 실시형태에서는, 정보 처리 장치(12D)에 감시 툴(30)이 구비되어 있으며, 정보 처리 장치(12C)와 정보 처리 장치(12D)는, 통신 회선(28)을 통해 접속되어 있으며, 정보 처리 장치(12C)에서 실행되고 있는 프로그램의 처리 상태를 나타내는 정보가, 정보 처리 장치(12C)로부터 정보 처리 장치(12D)에 송신된다.
감시 툴(30)은, 정보 처리 장치(12D)의 화상 표시부의 화면에, 화상 표시부(20)에서 표시되는 화상과 같은 화상과 함께 FBD 도면을 표시하고, FBD 도면상에서 신호의 흐름을 표시(가시화)하는 것에 의해, 프로그램의 처리 상태를 작업자가 용이하게 확인할 수 있도록 한 것이다. 예컨대, ON 신호가 흐르고 있는 신호선은 적색으로 표시되고, OFF 신호가 흐르고 있는 신호선은 청색으로 표시된다. 또한, 수치가 흐르는 신호선은, 그 수치가 신호선상에 표시된다. 또, 여기서 말하는 수치란, 화상 표시부(20)에서 표시되는 화상의 움직임에 이용되기 위한 수치도 포함된다.
다음으로, 프로그램 작성 시스템(10)에 있어서의 프로그램의 작성의 흐름을 설명한다.
프로그램 작성 시스템(10)의 FBD 작화 툴(16)에는, 그래픽 엔진(22)이 갖는 화상 처리에 관한 기능(Application Program Interface(API))이, 파라미터로서 미리 규정되어 있다. 즉, FBD 작화 툴(16)은, 화상의 움직임을 포함시켜, 미리 규정되어 있는 파라미터를 화상에 줄 수 있다. 표 1은, 상기 파라미터의 일례이다.
Figure 112012106487913-pct00001
또, 작업자는, 묘화 툴(14)을 이용한 화상의 형성, FBD 작화 툴(16)을 이용한 FBD 언어에 의한 처리의 흐름의 기술 중 어느 것을 먼저 행하더라도 좋다. 이하의 설명에서는, 작업자가, 묘화 툴(14)을 이용한 화상의 형성을 행한 후에, FBD 작화 툴(16)을 이용한 FBD 언어에 의한 처리의 흐름의 기술을 행하는 경우에 대하여 설명한다.
도 3은, 묘화 툴(14)을 탑재한 정보 처리 장치(12A)의 화면에 표시되는 묘화 에디터 화면(40)의 일례이다.
묘화 에디터 화면(40)은, 화상을 묘화하기 위한 묘화 영역(42)을 갖고 있다.
묘화 영역(42)의 위쪽에는, 묘화 에디터 화면(40)을 조작하기 위한 묘화 에디터 조작 메뉴(44)가 배치되어 있다. 한편, 묘화 영역(42)의 왼쪽에는, 사각형, 원형, 및 사다리꼴 등의 기본 도형을 선택하고, 묘화 영역(42)에 묘화하기 위한 기본 도형 표시부(46), 및 직선 및 곡선 등의 기술 툴을 선택하고, 묘화 영역(42)에 묘화하기 위한 기술 툴 표시부(48)가 배치되어 있다.
그리고, 작업자는, 묘화 영역(42)에, 기본 도형 표시부(46) 및 기술 툴 표시부(48) 등에서 도형 또는 선을 선택하고, 선택한 도형 및 선을 조합하는 등 하여 임의의 도형을 묘화한다. 또, 묘화 툴(14)은, 동화상이나 사진 화상 등을 읽고, 이들을 묘화 영역(42)에 표시하고, 다른 화상과 조합할 수도 있다.
도 3의 예에 있어서, 평면형 캔버스(50)로서 형성된 화상은, 화상 표시부(20)의 화면 전체에 표시되는 화상이다. 팝업형 캔버스(52)로서 형성된 화상은, 소정의 조작(예컨대, 버튼으로서 형성된 화상의 클릭)이 행해지면 표시되는 다이얼로그 박스이며, 투명형 캔버스(54)로서 형성된 화상은, 소정의 조작(예컨대, 버튼으로서 형성된 화상의 클릭)이 행해지면 표시되는, 배경이 투명하게 된 메뉴 화면이다.
다음으로, 화상 부품의 묘화가 종료되면, 1개의 덩어리로서 식별되는 화상(이하, 「화상 부품」이라고 한다)마다, 고유의 명칭을 붙인다. 또, 각 캔버스도 화상 부품으로서 인식되어야 하는 것이기 때문에 고유의 명칭을 붙인다. 명칭으로서는, 문자, 번호, 문자와 번호의 조합 등, 각 화상을 식별할 수 있는 것이면 된다.
도 3에 있어서, 각 캔버스의 위쪽에 기재되어 있는 문자와 번호의 조합이 각 캔버스의 명칭이며, 각 화상 부품에 겹쳐 기재되어 있는 문자와 번호의 조합이 각 화상 부품의 명칭이다.
그리고, 묘화한 화상 부품의 기억이 실행되면, 묘화한 화상 부품을 나타내는 그래픽 오브젝트가, XML 형식의 밑그림 정보(메타 데이터)로서 생성된다.
이상이, 묘화 툴(14)을 이용한 화상 부품의 묘화의 흐름이다.
다음으로, FBD 작화 툴(16)을 이용한 FBD 언어에 의한 처리의 흐름의 기술에 대하여 설명한다. 또, 이하의 설명에서는, 도 4에 나타내는 바와 같은, 화면에 표시된 평면형 캔버스(50)의 「검토」가 클릭되면, 투명형 캔버스(54)로서 형성된 서브메뉴가 표시되기까지의 처리의 흐름을 FBD 언어로 기술하는 경우에 대하여 설명한다.
도 5는, FBD 작화 툴(16)을 구비하는 정보 처리 장치(12B)의 화면에 표시되는 FBD 작화 화면(60)의 일례이다.
FBD 작화 화면(60)은, FBD 도면을 작화하기 위한 영역인 작화 영역(62)을 갖고 있다.
또한, 작화 영역(62)의 위쪽에는, FBD 작화 화면(60)을 조작하기 위한 FBD 작화 조작 메뉴(64)가 배치되어 있다. 한편, 작화 영역(62)의 왼쪽에는, FBD 도면을 작화하기 위해 이용하는 부품이나 제어 기호를 선택하고, 작화 영역(62)에 작화하기 위한 부품 기호 표시부(66)가 배치되어 있다.
FBD 작화 툴(16)로 FBD 도면의 작화를 행함에 있어서 작업자는, FBD 작화 툴(16)에 밑그림 정보를 읽게 한다. 밑그림 정보가 읽혀지면, 도 6a에 나타내는 바와 같이, 묘화 툴(14)로 묘화된 화상 부품에 대응하는 오브젝트의 명칭의 일람이 작화 영역(62)에 표시된다.
다음으로, 작업자는, 도 6b에 나타내는 바와 같이, 소망하는 화상 부품을 일람으로부터 드래그 앤드 드롭(drag and drop)하는 것에 의해, 작화 영역(62)에 배치한다. 이에 의해, 작화 영역(62)에는, 직사각형 형상의 요소 기호에 선택한 화상 부품의 명칭이 기재된 상태로 표시된다. 즉, 화상 부품의 명칭이 기재된 요소 기호는, 그 화상 부품에 의한 화상 표현을 나타내는 것이다.
또, 일람에 있어서, 선택된 화상 부품의 명칭에는, 체크가 들어간다. 이에 의해, 작업자는, 화상 부품의 선택 및 비선택을 용이하게 판단할 수 있다.
다음으로, 작업자는, 화상 부품에 움직임을 제어하기 위한 신호선을 접속한다. 도 6c는, 「Panel-1」의 화상 부품을 항상 화면에 표시시키는 경우에 있어서의 접속의 일례이며, 이 경우, 「Panel-1」의 화상 부품을 나타내는 요소 기호의 「Open」의 입력 부분에, 상시 「ON」 신호를 출력하는 요소 기호가 신호선을 통해 접속된다. 또, 신호선을 접속하지 않는 화상 부품은, 고정치로서 부품의 프로퍼티에 초기치가 삽입된다.
이와 같이 하여, 화상 부품을 나타내는 요소 기호에 신호를 출력하는 요소 기호를 신호선을 통해 접속하는 것에 의해, 각 화상 부품에 대응하는 화상의 움직임이 정의된다.
도 7은, 도 4에 나타낸 처리를 행하기 위한 FBD 도면이며, 도면에 나타내는 바와 같이 작업자는, 일련의 처리에 필요한 연산용 요소 기호와 화상 부품을 나타내는 요소 기호를 신호선으로 접속하는 것에 의해, FBD 도면을 완성시킨다.
또, 통신이나 정보의 추출 등은, 전용 요소 기호를 이용하여 상기와 같이 작화 영역(62)에서 작화한다. 또한, 각 요소 기호에 입력할 수 있는 신호는, 「부동 소수점」, 「on」, 「off」, 「정수」, 및 「문자」이다.
다음으로, FBD 도면의 작성이 완료되면, FBD 도면은, 도시하지 않는 기억 수단에 기억된다. 그 기억을 할 때에, FBD 도면의 작화에 의해 새롭게 추가된 움직임을 나타내는 파라미터가, 밑그림 정보에 삽입되어, 밑그림 정보가 갱신된다. 또, FBD 도면은, 컴퓨터에서 실행 가능한 프로그램의 형식으로 컴파일된다.
그리고, 밑그림 정보는, 화상 표시부(20)에 송신되고, 프로그램은 연산 처리부(24)에 송신되고, 밑그림 정보와 프로그램이 연동하여 동작을 개시한다.
또, FBD 작화 툴(16)을 이용한 FBD 언어에 의한 처리의 흐름의 기술을 행한 후에, 묘화 툴(14)을 이용한 화상의 형성을 행하는 경우는, 우선, 그래픽 오브젝트가 되는 화상 부품의 최저한의 특징을 기재한 밑그림 정보를 XML로 작성하고, 그 밑그림 정보를 통해 FBD 작화 툴(16)로 화상의 움직임을 정의함과 아울러 처리의 흐름을 나타내는 프로그램을 작화한다. 그리고, 밑그림 정보에 근거하여 묘화 툴(14)로 화상을 묘화하고, 묘화한 내용에 근거하여 밑그림 정보를 갱신한다.
이상 설명한 바와 같이, 본 실시형태에 따른 프로그램 작성 시스템(10)은, 묘화 툴(14)에 의해, 화상 표시부(20)의 화면에서 소정의 움직임을 행하게 하는 화상이 묘화되고, FBD 작화 툴(16)에 의해, 묘화 툴(14)에서 묘화된 화상을 오브젝트로서 취급하고, 그 오브젝트에 대하여 움직임을 행하게 하기 위한 신호선을 접속하는 것에 의해, 화상이 행하는 움직임이 정의됨과 아울러, 그 정의한 움직임을 화상이 행하기 위한 처리의 흐름이 FBD 언어로 기술된다.
이에 의해, 본 실시형태에 따른 프로그램 작성 시스템(10)은, 높은 표현력을 갖는 화상 표시를 실현시키는 프로그램을, 간이하게 작성할 수 있다.
또한, 본 실시형태에 따른 프로그램 작성 시스템(10)은, 묘화 툴(14)에 의해 묘화되는 화상이, 그 화상을 오브젝트로서 나타낸 밑그림 정보를 갖고, FBD 작화 툴(16)에 의해, 밑그림 정보를 개재시키는 것에 의해, 화상의 움직임을 행하기 위한 처리의 흐름이 FBD 언어로 기술된다. 이에 의해, 묘화 툴(14)을 탑재한 정보 처리 장치(12A)와, FBD 작화 툴(16)을 탑재한 정보 처리 장치(12B)를 다른 장치로 할 수 있고, 그 결과, 화상의 묘화, FBD 언어에 의한 프로그램의 작성의 작업을 개별적으로 행할 수 있다.
또한, 본 실시형태에 따른 프로그램 작성 시스템(10)은, 밑그림 정보가, FBD 작화 툴(16)에 의해 화상에 대하여 새로운 움직임이 정의된 경우에, 그 움직임을 행하기 위한 파라미터가 삽입되고, 화상 표시부(20)에 기억되므로, 화상 표시부(20)는, FBD 작화 툴(16)로 기술된 처리를 나타내는 프로그램이 실행된 경우에, FBD 작화 툴(16)에 의해 정의된 움직임을 행하도록 화상을 표시할 수 있다.
이상, 본 발명을, 상기 실시형태를 이용하여 설명했지만, 본 발명의 기술적 범위는 상기 실시형태에 기재된 범위로는 한정되지 않는다. 발명의 요지를 일탈하지 않는 범위에서 상기 실시형태에 다양한 변경 또는 개량을 가할 수 있고, 그 변경 또는 개량을 가한 형태도 본 발명의 기술적 범위에 포함된다.
예컨대, 상기 실시형태에서는, 프로그램 작성 시스템(10)은, 묘화 툴(14)을 탑재한 정보 처리 장치(12A), 및 FBD 작화 툴(16)을 탑재한 정보 처리 장치(12B)를 구비하는 경우에 대하여 설명했지만, 본 발명은, 이것으로 한정되는 것은 아니고, 묘화 툴(14)과 FBD 작화 툴(16)이 동일한 정보 처리 장치에 탑재되는 형태로 하더라도 좋다.
또한, 상기 실시형태에서는, 정보 처리 장치(12C)가, FBD 작화 툴(16)로 기술된 프로그램을 실행하는 연산 처리부(24) 및 밑그림 정보에 의해 나타내어지는 화상을 표시하는 화상 표시부(20)를 구비하는 경우에 대하여 설명했지만, 본 발명은, 이것으로 한정되는 것은 아니고, 연산 처리부(24)와 화상 표시부(20)를 각각 다른 정보 처리 장치가 구비하는 형태로 하더라도 좋다.
이 형태의 경우, 연산 처리부(24)를 구비한 정보 처리 장치에 프로그램에 기억되고, 화상 표시부(20)를 구비한 정보 처리 장치에 밑그림 정보가 기억된다. 그리고, 연산 처리부(24)를 구비한 정보 처리 장치와 화상 표시부(20)를 구비한 정보 처리 장치가 통신 회선을 통해 정보의 송수신을 행하는 것에 의해, 화상 표시부(20)에 밑그림 정보에 의해 나타내어지는 움직임을 행하도록 화상을 표시시킨다.
또한, 상기 실시형태에서는, 정보 처리 장치(12D)가 FBD 감시 툴(30)을 구비하는 경우에 대하여 설명했지만, 본 발명은, 이것으로 한정되는 것은 아니고, 정보 처리 장치(12C)가 FBD 감시 툴(30)을 구비하는 형태로 하더라도 좋다.
또한, 상기 실시형태에서는, 프로그램을 FBD 언어를 이용하여 기술하는 경우에 대하여 설명했지만, 본 발명은, 이것으로 한정되는 것은 아니고, 프로그램을 래더 언어를 이용하여 기술하는 형태로 하더라도 좋다.
10 : 프로그램 작성 시스템
14 : 묘화 툴
16 : FBD 작화 툴
20 : 화상 표시부
24 : 연산 처리부

Claims (4)

  1. 화상 표시 장치의 화면에 표시되는 화상을 제어하는 처리를 컴퓨터에 실행시키기 위한 프로그램을 작성하는 프로그램 작성 장치로서,
    상기 화상 표시 장치의 화면에서 소정의 움직임을 행하게 하는 화상을 묘화하는 묘화 수단과,
    상기 묘화 수단에 의해 묘화되는 상기 화상을 오브젝트로서 취급하고, 그 오브젝트에 대하여 상기 움직임을 행하게 하기 위한 신호선을 접속하는 것에 의해, 상기 화상이 행하는 움직임을 정의함과 아울러, 그 정의한 움직임을 상기 화상이 행하기 위한 처리의 흐름을 기능 블록 도표(function block diagram) 언어로 기술하는 처리 기술 수단
    을 구비한 프로그램 작성 장치.
  2. 제 1 항에 있어서,
    상기 묘화 수단에서 묘화되는 화상은, 그 화상을 오브젝트로서 나타낸 정보를 갖고,
    상기 처리 기술 수단은, 상기 정보를 개재시키는 것에 의해, 상기 화상의 움직임을 행하기 위한 처리의 흐름을 기능 블록 도표 언어로 기술하는
    프로그램 작성 장치.
  3. 제 2 항에 있어서,
    상기 정보는, 상기 처리 기술 수단에 의해 상기 화상에 대하여 새로운 움직임이 정의된 경우에, 그 움직임을 행하기 위한 파라미터가 삽입되고, 상기 화상 표시 장치에 기억되는 프로그램 작성 장치.
  4. 묘화 수단에 의해 묘화된 화상의 특징 및 그 화상이 행하는 움직임을 나타낸 정보를 기억한 화상 표시 장치와,
    상기 정보로 나타내어진 상기 화상이 상기 정보로 나타내어진 상기 움직임을 행하기 위한 처리의 흐름을, 기능 블록 도표 언어로 기술한 프로그램을 기억한 연산 장치
    를 구비하고,
    상기 연산 장치는, 상기 프로그램으로 나타내어진 처리를 실행하고,
    상기 화상 표시 장치는, 상기 연산 장치에 의한 처리의 내용에 근거하여 상기 정보에 의해 나타내어진 움직임을 행하도록 화상을 표시시키는
    화상 제어 시스템.
KR1020127033459A 2010-08-06 2011-08-01 프로그램 작성 장치 및 화상 제어 시스템 KR101498877B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010177400A JP2012038068A (ja) 2010-08-06 2010-08-06 プログラム作成装置及び画像制御システム
JPJP-P-2010-177400 2010-08-06
PCT/JP2011/067614 WO2012017992A1 (ja) 2010-08-06 2011-08-01 プログラム作成装置及び画像制御システム

Publications (2)

Publication Number Publication Date
KR20130040925A KR20130040925A (ko) 2013-04-24
KR101498877B1 true KR101498877B1 (ko) 2015-03-05

Family

ID=45559489

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127033459A KR101498877B1 (ko) 2010-08-06 2011-08-01 프로그램 작성 장치 및 화상 제어 시스템

Country Status (6)

Country Link
US (1) US20130106863A1 (ko)
EP (1) EP2602712A4 (ko)
JP (1) JP2012038068A (ko)
KR (1) KR101498877B1 (ko)
CN (1) CN102959509A (ko)
WO (1) WO2012017992A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6489985B2 (ja) * 2015-09-24 2019-03-27 ルネサスエレクトロニクス株式会社 プログラム開発支援装置およびプログラム開発支援ソフトウェア
JP6922431B2 (ja) * 2017-05-31 2021-08-18 オムロン株式会社 プログラム開発支援装置、プログラム開発支援方法、および、プログラム開発支援プログラム
CN112346807A (zh) * 2020-11-06 2021-02-09 广州小鹏自动驾驶科技有限公司 一种图像标注方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10307716A (ja) * 1997-05-06 1998-11-17 Hitachi Software Eng Co Ltd 画面フローによるビジュアルプログラミング装置
US6366300B1 (en) * 1997-03-11 2002-04-02 Mitsubishi Denki Kabushiki Kaisha Visual programming method and its system
JP2009277220A (ja) * 2008-04-14 2009-11-26 Canon Inc 情報処理装置及びその制御方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5737622A (en) * 1986-04-14 1998-04-07 National Instruments Corporation Method and apparatus for more efficient function synchronization in a data flow program
JP2001075791A (ja) * 1999-09-02 2001-03-23 Digital Electronics Corp エディタ装置およびエディタプログラムを記録した記録媒体
US7999827B2 (en) * 2005-11-28 2011-08-16 Autodesk, Inc. Method and system for generating dynamic blocks
CN101038544A (zh) * 2006-03-13 2007-09-19 杨力祥 通用程序图示化设计方案
US8078980B2 (en) * 2008-03-20 2011-12-13 National Instruments Corporation User defined wire appearance indicating communication functionality in a graphical programming environment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6366300B1 (en) * 1997-03-11 2002-04-02 Mitsubishi Denki Kabushiki Kaisha Visual programming method and its system
JPH10307716A (ja) * 1997-05-06 1998-11-17 Hitachi Software Eng Co Ltd 画面フローによるビジュアルプログラミング装置
JP2009277220A (ja) * 2008-04-14 2009-11-26 Canon Inc 情報処理装置及びその制御方法

Also Published As

Publication number Publication date
EP2602712A4 (en) 2014-01-08
EP2602712A1 (en) 2013-06-12
WO2012017992A1 (ja) 2012-02-09
CN102959509A (zh) 2013-03-06
US20130106863A1 (en) 2013-05-02
JP2012038068A (ja) 2012-02-23
KR20130040925A (ko) 2013-04-24

Similar Documents

Publication Publication Date Title
CN102124445B (zh) 用于针对自动化过程创建hmi应用的方法和系统
US20130131844A1 (en) Method for Selecting Shapes in a Graphical Display
US8843892B2 (en) Visual representations of code in application development environments
JP2014238853A (ja) プロセス環境におけるスクリプト化グラフィックス
CN112579050A (zh) 基于任务的配置呈现背景
KR20170073604A (ko) 데이터 미리보기를 통한 작업 작성 기법
EP3171266B1 (en) User interface widget modeling and placement
KR100246862B1 (ko) 툴 버튼의 설정 방법 및 편집 장치
CN112364496B (zh) 基于html5和vue技术的航电仿真面板生成系统
KR101498877B1 (ko) 프로그램 작성 장치 및 화상 제어 시스템
CN104063212B (zh) 创建用户界面的方法
CN104081347A (zh) 运算次序的图形表示
US10809904B2 (en) Interactive time range selector
JP3805776B2 (ja) グラフィカルプログラミング装置及びプログラマブル表示器
JP2002108600A (ja) 制御システムの端末装置、記録媒体、および、制御システム
EP3640794A1 (en) Program development support device, program development support method, and program development support program
JP2009193489A (ja) 作業手順書作成システム
JP2007041846A (ja) プログラム表示方法および装置
JP4892509B2 (ja) 監視画面作成装置
US7876324B2 (en) Method and system for developing a strategy for use in a controller and storage medium for storing instructions which effectuate the method
US20190317664A1 (en) Display control apparatus, non-transitory recording medium and display controlling method
JP4851390B2 (ja) エディタ装置およびエディタプログラム
JP4619941B2 (ja) 信号パターン作成装置
JP7477027B1 (ja) 情報処理装置、情報処理方法、及びプログラム
KR20130060523A (ko) 데이터 마이닝 프로세스 자동화 시스템, 방법 및 그에 대한 기록매체

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
N231 Notification of change of applicant
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee