객체 지향을 통해 자동화의 효율성 제고
객체 지향을 통해 자동화의 효율성 제고
  • MSD
  • 승인 2022.03.22 09:36
  • 댓글 0
이 기사를 공유합니다

자료제공 | 서보스타(www.servostar.co.kr)
​​​​​​​시그마텍 홈페이지_ www.sigmatek-automation.com

기계장비가 점점 더 다양해지고 복잡해지면서 장비 설계에서의 소프트웨어와 그 가치가 더욱 중요해지고 있다. 메카트로닉 엔지니어링은 이러한 다양성을 보다 손쉽게 총괄해내는 유연성을 제공하는 키워드이다.

메카트로닉스적인 접근법을 통하게 되면, 소프트웨어도 마치 하드웨어와 같이 개별적인 기능들을 재현되고 원하는 대로 결합해 낼 수 있다. 시그마테크는 지난 22년간 이러한 소프트웨어적인 모듈화 기술 개발에 전력해 왔으며, 2000년에 자동화업계 최초로 객체 지향 프로그래밍을 도입하였다.

시그마테크가 자동화에 객체지향 방식을 도입한지 22년을 맞이하였다. IEC 61131-3 표준을 따르는 올인원 엔지니어링 도구 LASAL은 처음부터 객체 지향적이며 사용자의 프로그래밍 노력을 절약하는 로우 코드 플랫폼 형태로 개발되었다.

LASAL에서와 같이 객체들을 시각적으로 구현할 때, 프로젝트의 명료성과 유지보수성을 획기적으로 발전시킬 수 있다.

이러한 부분은 장비제조사의 중요한 부가가치가 된다, 왜냐하면 오늘날 장비의 부가가치는 소프트웨어에서 성패가 갈린다고 해도 과언이 아니기 때문이다. 응용 프로그램은 또한 서비스 도구를 포함하여 제어, 시각화, 모션 및 세이프티까지 전 요소를 일관성있게 개발할 수 있도록 지원한다. 객체지향형 프로그래밍에서 소프트웨어 개발자는 기계에 필요한 기능들과 이것이 상호 연결되는 방식을 고려하며, 작업을 분해하여 시각적으로 시뮬레이션한다. 즉, 어떤 기계 구성 요소가 어떻게 누구와 통신하고 데이터를 교환하는지가 시각적으로 한눈에 들어온다.

LASAL은 객체 지향, 서버/클라이언트 기술 및 시각화에 있어 새로운 지평을 열었다. 자동화의 모든 분야를 통합하는 현대적이고 일관성있는 엔지니어링 플랫폼의 이점을 누릴 수 있다. 제어(LASAL CLASS2), 시각화(LASAL SCREEN 및 웹기반 LASAL VISUDesigner), 모션(LASAL MOTION), 세이프티(LASAL SAFETY Designer)뿐만 아니라 OPC UA(LASAL SERVICE)를 통한 진단, 원격 유지 관리 및 데이터 교환이 가능하다.

모듈식 기계구조로 고도의 유연성
LASAL의 객체 지향 접근 방식을 통해 모든 실제 기계 구성 요소가 소프트웨어에서 재현된다. 모듈식 소프트웨어 기능 모듈은 사용된 하드웨어(예: 서보, 비동기식, 스테퍼 모터 또는 유압식, 하이브리드 또는 전기 컨트롤러)와 독립적으로 원하는 대로 결합하거나 교체할 수 있다. 따라서 적은 프로그래밍으로 소프트웨어의 고객 요청에 매우 빠르게 이 가능하다.

Fig1. LASAL 애드온은 프로그램 및 시각화 요소를 포함하는 테스트를 거친 기능 모듈을 바로 사용할 수 있다. 예를 들어 축 제어 또는 사용자 레벨 관리, VNC, 온도제어 등이 있다.. 이를 통해 소프트웨어 개발 시간을 최대 70%까지 줄일 수 있다.

기능과 통신 인터페이스가 정의되면 개발은 상향식에서 시작된다. 광범위한 LASAL 라이브러리의 도움으로 매개변수와 인터페이스가 제공되는 몇 번의 클릭으로 기계의 기본 기능을 조립할 수 있으며 소프트웨어 설계자는 이미 애플리케이션을 테스트할 수 있게 된다. 다양한 LASAL 라이브러리에는 10,000개 이상의 클래스가 포함돼 있다. 최신 템플릿과 테스트를 거쳐 바로 사용할 수 있는 소프트웨어 기능별 추가 기능 및 주제 기반 패키지와 같은 구성 요소도 사용할 수 있다. 예를 들면 컨트롤러, 레시피 관리, 알람 시스템, 안전, 데이터 분석뿐 아니라 다축 제어 또는 델타 로봇 시운전과 같은 복잡한 모션 기능도 포함한다.

Franz Aschl은 "최근에 통신용 라이브러리가 크게 성장하여 TCP/IP에서 OPC UA 클라이언트, 서버 및 MQTT를 통해 SSL 암호화까지 확장되었다"라고 말한다. 네트워킹에 대한 수요가 증가하고 있다. 예를 들어 카메라 시스템이나 제3자 제어를 통해 수평적으로 그리고 ERP, MES 및 클라우드와 같은 상위 시스템에서 수직적으로 네트워킹에 대한 수요가 증가하고 있다. 사전 정의된 소프트웨어 구성 요소를 사용하여 기본 기능에 대한 개발 작업을 최대 70%까지 줄일 수 있다. 애플리케이션 엔지니어는 기계 고유의 혁신적인 기능 구현에 집중할 수 있다.

재사용성-개발작업감소
시간은 돈이다. 이는 소프트웨어 설계에도 적용된다. 일단 생성 및 테스트된 애플리케이션 코드는 모듈식 구조 덕분에 유연하게 재사용하고 쉽게 변경할 수 있다. 또한 사전 정의된 기술 모듈뿐만 아니라 다양한 애플리케이션 범주에 대한 여러 기능 클래스가 표준 라이브러리에서 제공됩니다.

물론, 단 몇 줄의 코드만 존재하는 간단한 응용 프로그램에는 객체 지향 접근 방식까지 필요로 하지는 않다. 일반적인 프로그래밍으로 목표를 달성할 수 있다. 하지만 어플리케이션이 복잡하고 스마트해지면 객체 지향 프로그래밍(OOP)이 올바른 선택이다. 특히 다양한 기능뿐 아니라 스마트 머신 네트워크에 통합해야 하는 요구 사항이 있는 양산형 장비의 경우. 객체 지향 프로그래밍 개념은 어플리케이션의 모듈성, 명료한 구조 및 보다 손쉬운 재사용성이라는 부가가치를 부여한다. 이를 통해 소프트웨어는 하드웨어의 모듈성과 확장성에 보조를 맞출 수 있게 된다. 한편, 객체 지향 프로그래밍 방법은 점차 장비제조업계에도 익숙한 개념이 되어가고 있다. 특히 젊은 세대의 자동화 엔지니어에게 OOP는 이미 학교교육의 일부이며, 이 현대적인 프로그래밍 방법에 대한 경험을 갖추고 기능과 인터페이스에서 기계 소프트웨어를 객체 지향적으로 생각하는 수많은 소프트웨어 설계자가 이미 있다.

LASAL은 프로그래머에게 그래픽 하드웨어 편집기와 같은 훌륭한 기능을 제공하므로 프로그래머들의 반복적인 작업들은 최소화된다. 멀티 프로젝트 및 멀티 사용자 구조를 통해 여러 개발자가 동시에 한 프로젝트에서 작업할 수 있다.

Fig2. LASAL CLASS에서 마우스 클릭만으로 현재 하드웨어를 시각적으로 읽어 들이고 그래픽 하드웨어 편집기상에서 추가 또는 새로 구성할 수도 있다
Fig3. 시뮬레이션 도구 LARS는 응용 프로그램의 개발 시간을 줄이는 데 도움이 된다

소프트웨어의 버전 관리 - 자동생성
하이엔드, 미드레인지 및 보급형 모델 등 필요에 따라 하나의 베이스 프로젝트에서 개별 장비 버전을 파생하며, 한 번의 클릭만으로도 서로 다른 세팅값이 장착된 개별 엔드유저용 소프트웨어를 자동생성시킬 수 있다.(스크립팅)

객체지향-가능한 최고의 투명도
그래픽 표현으로 구현된 객체지향형 프로그래밍은 높은 품질과 투명도를 제공해준다. 소프트웨어 유지 관리 및 확장이 손쉬워 소프트웨어는 지속 가능성이 높다.

코딩과 데이터는 논리단위(객체)로 결합되어 있으며, 모든 객체는 청사진의 역할을 하며 프로그랭 코딩과 데이터를 품는 클래스로 구성되어 있다. 각각의 클래스는 드라이브 축 구동, 온도 측정 및 평가와 같은 특정 작업을 수행한다. 데이터는 캡슐화되어 보호되며 외부에서 임의로 변경할 수 없다 . 캡슐화된 객체는 인터페이스를 통해 외부와 통신하며, 명료하게 정의된 인터페이스 연결구조 덕분에 캡슐화된 소프트웨어 요소들은 손쉽게 교체작업을 할 수 있게 된다.

변수는 해당 방법만을 통해서만 조작할 수 있다. 명확한 인터페이스가 미리 정의되어 있어 적용할 수 있다."라고 Franz Aschl은 말한다. "모든 통신 인터페이스가 있는 네트워크에서 캡슐화된 개체의 시각적 표현은 고유하며 로우 코드 원칙뿐만 아니라 최대 투명성을 제공한다. 객체의 그래픽 표시를 통해 텍스트 편집기는 다른 객체 지향 도구와 달리 마지막에만 사용된다."라고 Franz Aschl은 설명한다.

소프트웨어 엔지니어는 ST(구조화된 텍스트), IEC 61131-3 또는 C에 따른 명령어 목록(IL), 래더 다이어그램(LD). 반복적인 기능을 인수함으로써 LASAL과 같은 최신 엔지니어링 도구는 사용자를 위한 객체 지향 프로그래밍 사용을 단순화한다. 예를 들어, 코드 클래스를 선언하기 위해 변수 또는 인터페이스가 백그라운드에서 자동으로 생성된다. Aschl은 "변수를 시각화할 수 있을 뿐만 아니라 글로벌 WAN 네트워크를 통해 회사 전반에 제공할 수 있으므로 개발 중에 어떤 인터페이스가 내부적으로 작동하거나 볼 수 있는지 결정된다."라고 말한다.

Fig4 베이스 프로젝트에서 Variant 편집기를 사용하면 하나의 프로젝트로 복수의 장비구성을 손쉽게 관리할 수 있다. 다양한 변형 또는 옵션을 간단히 활성화하거나 비활성화할 수 있다

 



주요기사
이슈포토