TwinCAT Analytics의 확장 덕분에 이제 엔지니어링 환경에서 TwinCAT Vision 기능을 사용하여 이미지를 간편하게 종합적으로 평가할 수 있게 되었다. © Beckhoff
몇 년 전까지만 해도 기계에 사용되는 비전 솔루션은 인터페이스를 통해 실제 기계 제어 시스템과 통신하는 완전 독립형 시스템이었다. 또한 비전 라이브러리 또는 간단한 구성을 용이하게 하는 특수 하드웨어의 통합을 위한 프로그래밍 시에 요구되는 코드가 다소 많았다. TwinCAT Vision은 이미지 처리를 기계 제어 시스템에 통합됨으로써, 인터페이스에 대한 필요성을 해소하고, IEC 61131-3에 따른 일상적인 수준의 프로그래밍을 가능하게 한다. TwinCAT Vision과 TwinCAT Analytics의 통합과 이에 따른 두 접근 방식의 결합을 통해 이제 간단한 구성으로도 엔지니어링 및 어플리케이션을 간편하게 최적화할 수 있다.
개별적으로 살펴보면, 두 TwinCAT 제품 간의 작업 분배가 명확하다. TwinCAT Vision은 기계 제어에 맞게 이미지 처리 작업을 생성하도록 설계되어 있다. 카메라는 드라이브 축과 상당히 유사한 방식으로 그래픽 인터페이스를 통해 구성한다. 이미지 처리 자체가 전적으로 PLC 내에서 프로그래밍되기 때문에, 매우 광범위한 PLC 라이브러리를 이용할 수 있다. 반면에 TwinCAT Analytics는 고해상도 진동, 상태 값, 드라이브 위치와 같은 기계의 프로세스 데이터를 평가하기 위한 다수의 다양한 알고리즘을 제공한다. 주요한 차이는 알고리즘의 사용이다. PLC 라이브러리로 작업하는 것과 달리 TwinCAT Analytics는 구성 편집기에서 순수 그래픽을 바탕으로 사용한다. 알고리즘 자체는 같은 PLC 라이브러리를 기반으로 하며 구성이 완료되면 Analytics 사용자가 새로 생성된 PLC 프로젝트에서 자동 PLC 코드를 생성하는 데 사용할 수 있다. 전체 프로세스가 상당히 간단하며, 사용자가 스스로 프로그래밍을 할 필요가 없다.
광범위한 분석 기능
TwinCAT Analytics는 기본적인 엣지 카운터, 한계 모니터링, 엔벨롭(Envelopes)을 포함한 매우 간단한 것에서 고도로 정교한 것까지 광범위한 알고리즘은 물론 특수 분석, 상관 함수, 머신러닝 분야의 비지도 클러스터링 방법을 제공한다. 전체적으로 150개가 넘는 프로세스 데이터 평가를 위한 알고리즘이 존재한다. 이들은 네트워크상에서 구성되며 개별적으로 연결되어 체인을 형성한다. 형성된 체인은 향후 재사용을 위해 템플릿으로 저장할 수 있다. 많은 사용자가 어플리케이션에 매우 특화된 방식으로 이를 활용하여 알고리즘 툴박스에서 특정 기계 모듈이나 기계 구성요소를 위한 섹션과 같은 추가 섹션을 만든다. 따라서 ‘Module MH_Milling_Long3c’와 같은 기계 모듈 이름을 툴박스에 등재할 수 있기 때문에, 서비스 기술자가 다양한 기계의 여러 다른 부품에 맞는 알고리즘을 사용할 수 있다. 이 데이터는 TwinCAT Scope 소프트웨어 오실로스코프와 함께 처리를 위해 그래픽 형태로 전송할 수 있을 뿐 아니라 시계열 선 차트, 막대 그래프 또는 3D 차트 형태의 그래픽으로 표시하는 것도 가능하다. 알고리즘 결과를 간단한 드래그 앤 드롭 조작을 통해 타임스탬프와 더불어 차트에 연결하여 이벤트를 분류하고 기계 사이클 정확도와 함께 표시할 수 있다. 이는 실시간 기계 데이터 및 과거 데이터 두 개 모두에 적용되는데, 예를 들어 논리 연산자를 사용하여 데이터 스트림에서 특정한 상태 연관성을 찾을 수 있다. 따라서 특히 오작동을 찾을 때 시간을 대폭 절약할 수 있다. 하지만 진정한 엔지니어링 간소화 방법은 PLC 코드 생성의 자동화이다.
일반적으로, 코드 생성 기능을 갖춘 TwinCAT Analytics를 사용하면 PLC 런타임 환경에서의 연속적인 분석이 가능하다. 이는 기계 제어 런타임 자체일 수도, 혹은 기계 제어와 병렬로 실행되며 실제 제어 프로세스와 분리된 원격 디바이스 상의 런타임일 수도 있다. 이와 같은 분리 방식은 프로세스와 독립적으로 항상 분석 결과를 교환하고 업데이트할 수 있다는 이점을 제공하는데, 특히 데이터 분석 경험이 지속적으로 증가하고 있는 일반적인 시나리오에서 더 그렇다. 정교한 알고리즘을 기계 제어 시스템과 함께 사용하는 것 또한 일반적이지 않다. 많은 사용자가 이와 같은 알고리즘을 사용하여 프로그래밍하고 기존 제어 코드에 통합하는 방식을 인정하고 있다. 더구나, 사용자가 이미 구성하고 시험한 것을 다시 입력하는 것은 시간 낭비이다. 따라서 자동 코드 생성은 개발 단계에서 프로그래밍 오류를 방지하고 시간을 크게 줄여준다. 이러한 이점은 사용자가 분석 코드뿐 아니라 분석 결과 표시를 위한 웹 기반 대시보드를 자동으로 생성하는 경우에 더욱 두드러지게 나타난다.
TwinCAT Analytics Editor와 비전 알고리즘, 모듈 와쳐, 이미지 갤러리 © Beckhoff
Vision 통합을 통해 얻은 이점
기계에서 카메라 시스템이 전통적인 센서를 대체하는 경우가 점차 증가하고 있고 다수의 센서를 단일 카메라 시스템에 통합할 수 있다는 점을 고려할 때, 이미지 데이터 평가를 TwinCAT Analytics에 통합하는 것은 당연한 일이다. 또한 TwinCAT Analytics의 로우 코드 접근 방식은 다수의 특수 비전 툴에서 보편화되어 있으며, 따라서 TwinCAT Vision을 이상적으로 보완할 수 있다. 그렇기 때문에 다수의 비전 알고리즘을 TwinCAT Analytics에 점진적으로 통합하는 것이 당연한 단계라고 할 수 있다. TwinCAT을 사용하여 비전 어플리케이션을 만들면 더 이상 프로그래밍부터 시작할 필요가 없다는 점에서 분명한 이점을 제공한다. 필수 알고리즘들을 비실시간 상황에서 실행하고 테스트하기 전에 구성 프로세스에 간편하게 통합할 수 있다. 특히 어플리케이션의 초기 평가 단계 동안 다양한 기능 및 파라미터를 시험해야 하는데, 이제 매번 실시간 구성을 활성화하고 코드를 다운로드해야 하는 번거로움을 피할 수 있다. 독립성은 기계 상태를 복원할 필요성을 없애고, 따라서 새 결과를 이전 결과와 비교할 수 있게 해준다. 예를 들어, 이는 불합격 식별이 필요한 최종 테스트에서 특히 유용하다.
비실시간 상황에 더해, 과거 미가공 이미지 데이터를 반복적으로 사용하여 평가 및 파라미터를 최적화할 수 있다는 것 또한 장점이다. 색상 필터 및 중간값 필터와 같은 알고리즘 모듈에서의 출력 이미지를 Detect Blobs 또는 Read QR Code와 같은 다른 비전 알고리즘에서의 입력과 연계할 수 있다. 하나 이상의 카메라 시스템에 대한 이상적인 설정을 찾게 되면 버튼을 눌러 간단히 TwinCAT Vision 라이브러리를 기반으로 하는 필요한 실시간 PLC 코드를 생성하여 제어 시스템으로 다운로드할 수 있다. 생성된 PLC 코드는 투명하게 판독할 수 있으며 객체 지향적이다. 구조가 이전에 구성된 네트워크를 기반으로 되어 있기 때문에, 사용자가 생성된 코드로 방법을 손쉽게 찾을 수 있다. 이 시점에서 어플리케이션을 이상적으로 마무리할 수 있으며, 언제라도(후속 코드 비교 및 병합 단계 등에서) 세부적인 변경을 수행할 수 있다. 사용자 입장에서 TwinCAT Vision 라이브러리의 세부 문서를 사용하여 생성된 코드의 비전별 부분을 파악하는 것 또한 매우 편리하다. 이 기능만으로도 엔지니어링이 대폭 간소화되어 시간을 크게 단축하고 관련된 엔지니어링 비용도 절약할 수 있다.
TwinCAT Scope에서 프로세스 데이터와 동기화되는 비전 이미지 © Beckhoff
소프트웨어 오실로스코프를 통한 보다 세부적인 평가
이 외에도 Vision과 TwinCAT Analytics의 통합에 따른 이점은 많은데, 다른 표준 TwinCAT Analytics 기능 또한 이미지 데이터 평가에 유용하다. 예를 들어, 프로세스 데이터와 같은 방식으로 이미지 데이터를 드래그 앤 드롭 방식으로 TwinCAT Scope에 붙여 넣을 수 있다. 비전 알고리즘의 출력 이미지를 Scope로 드래그하여 캠 차트에서 직접 개별적으로 시각화할 수도 있다. 필요한 경우, 마우스로 이미지를 프로세스 데이터 차트 중 하나로 끌어 놓을 수 있다. 그러면 이미지가 차트의 배경에 나타나는데, 색상으로 구분되는 마커가 처리 날짜와 같은 세부 정보와 이미지를 시간 축에 할당한다.
Vision 전용 기능도 TwinCAT Analytics에 통합되었다. 꾸준한 제품 개발의 목표는 해당 알고리즘에 맞는 특수 요소로 사용자를 이상적으로 지원하는 인터페이스를 만드는 것이다. Analytics에서의 알고리즘 구현 방식은 필요한 수준으로 표준화되어 있으며, 개별적인 구현도 가능하다. 이는 예를 들어 추후 윤곽 조정 시에 다시 불러오기 위해 앞서 찾은 윤곽을 저장하는 프로세스를 직관적이고 간편하게 해준다. 모듈 와쳐(module watcher)를 위한 툴 창과 같은 다른 기능도 전체 알고리즘에 대해 일반화되어 있다. 모듈 와쳐는 선택된 이미지 처리 모듈에 따라 입력 및 출력 이미지를 직접 표시한다. 반면 이미지 갤러리는 서로 다른 알고리즘의 여러 입력 및 출력 이미지를 개별적으로 편집할 수 있게 해준다. 이와 같은 목적으로 스트림의 이미지 또는 하드 디스크의 단일 이미지를 로드하고 고정하여 현재 이미지들과 비교할 수 있다. 갤러리는 색상 선택기, 픽셀 측정, 픽셀 위치, 명암비 설정과 같은 다수의 표준 기능도 제공한다. 각 이미지에 도형 및 레이블을 더 추가할 수도 있다. 이러한 방식으로 처리된 이미지를 다양한 이미지 형식으로 내보낼 수 있다.
이미지에서 윤곽을 찾고 라벨링 작업에 필요한 특수 창 © Beckhoff
끊임없는 개발
점진적인 알고리즘의 확장에 이은 다음 개발 단계는 웹 기반 대시보드를 위한 Vision 컨트롤의 자동 생성과 관련된 것이다. 대시보드는 분석 엔지니어링에서 정의할 수 있는 사용자 역할별로 이미지 처리 결과를 영구적으로 표시하는 데 사용한다. 플랫폼 독립적인 HTML 5 대시보드 덕분에 개발자, 어플리케이션 엔지니어, 커미셔닝 엔지니어와 같은 전문가뿐 아니라 기계 오퍼레이터, 생산/운영 관리자들 또한 TwinCAT Analytics Vision 통합 솔루션을 효과적으로 이용할 수 있다. 기계 오퍼레이터과 생산/운영 관리자들은 시간과 장소를 불문하고 모바일 디바이스를 통해 필요에 따라 중요한 생산 데이터도 확인할 수 있다.
작성자
Pascal Dresselhaus, TwinCAT 제품 관리자, Beckhoff Automation
링크:
www.beckhoff.com/twincat-analytics
www.beckhoff.com/twincat-vision