Posting

Machbase의 최신 소식을 지금 만나보세요

[MACHBASE 연동] TwinCAT

Machbase 와 TwinCAT 연동 방법

BECKHOFF 사의 TwinCAT 이라는 제품 중 TF6420 Database Server 와 마크베이스간의 연동 방법에 대한 글입니다.

해당 내용은 TwinCAT 제품 설치부터 마크베이스와 연동하기까지의 방법을 기술하고 있습니다.

TwinCAT 이란?

The TwinCAT Software System turns any compatible PC into a real-time controller with a multi-PLC system and NC/CNC axis control.

즉, PC와 PLC 간 데이터 컨트롤 소프트웨어입니다.

HMI, Motion Control, Vision, Connectivity 등 다양한 기능을 지원합니다.

TwinCAT Database Server

TwinCAT 에서 Connectivity Function 중 Database Server 와 연동을 위한 기능입니다.

InfluxDB, MySQL, MongoDB, PostgreSQL, ODBC 등 다양한 DB를 지원합니다.

여기서 공식적으로는 마크베이스DB를 지원하진않으나, 저희는 ODBC 를 통해 연동하도록 하겠습니다.

TwinCAT Database Server PDF 문서 : TF6420_TC3_Database_Server_EN.pdf

TwinCAT 다운로드 및 설치

TwinCAT Database Server 를 사용하기 위해서는 우선적으로 TwinCAT XAE(eXtended Automation Engineering) 설치가 필요합니다.

아래와 같이 주소로 접속후 좌측 TREE 구조의 다운로드 경로를 따라서 다운로드받습니다.

1) 다운로드 주소 : https://www.beckhoff.com/twincat/

2) 다운로드 경로 : Download -> Software -> TwinCAT 3 -> TFxxxx | Engineering -> TwinCAT 3.1 – eXtended Automation Engineering(XAE) 다운로드

down1.png

3) 팝업창에서 Start Download 클릭

down2.png

4) 다음 화면에서 Download as Guest  클릭 후, 내용 작성 후 Register 버튼 클릭

down3.png
down4.png

5) 작성한 Email 주소로 Download 주소가 온다.

– XAE(TC31-Full-Setup…), Database-Server(TF6420…), Controller-Toolbol(TF4100…) 의 3가지 제품의 다운로드 주소가 포함되어있다.

– XAE와 더불어 나머지 모두 다운로드하여 설치한다.

down5.png

6) 설치

– 설치는 의외로 매우 간단(Next 버튼 클릭)하며, 설치가 완료된후 재부팅이 필요하다.

– 다만, XAE 를 우선적으로 설치해야하며, XAE를 설치 및 PC재부팅 이후에 나머지 Database-Server 와 Controller-Toolbox를 설치해주어야 정상설치된다.

– 나머지 제품도 모두 설치한 이후, PC를 재부팅해주어야 소프트웨어가 정상동작한다.

* 재부팅 이후, TcSysUI.exe 관련 오류창이 뜰수있는데, 무시해도 좋다.

7day trial 라이센스 등록

설치가 완료된 이후, 프로그램을 정상적으로 사용하기 위해서는 라이센스를 등록해줘야한다.

기본적으로 7day 라이센스를 제공하고 있으나 별도로 등록을 해줘야한다.

다음과 같은 절차를 통해 라이센스를 등록하도록 한다.

우선, 아래와 같이 설치한 XAE(TwinCAT XAE Shell)를 구동시킨다.

license1.png

1) TwinCAT XAE Project 생성

– 프로젝트 생성 경로 : File -> New -> Project -> TwinCAT Projects -> TwinCAT XAE Project (XML format) 선택 후 OK

license2.png

2) 라이센스 메뉴 선택

– 아래와 같이 프로젝트 Solution Explorer 창에서 SYSTEM -> License 를 더블클릭한다.

license3.png

3) 사용할 제품 선택

– 아래와 같이 라이센스 창에서 Manage Licenses 탭메뉴를 클릭한 후, Order No 가 TF4100, TF6420 인 항목에 Add License 의 cpu license 를 체크한다.

license4.png
license5.png

3) 7day 라이센스 활성화

– 다시 첫번째 탭메뉴인 Order Information (Runtime) 으로 돌아와, 7 Days Trial License.. 버튼을 클릭 후, 화면에 나타나는 Security Code 를 동일하게 입력후 OK 버튼을 누르면 활성화된다.

license6.png
license7.png

4) 프로젝트 저장 후, PC 재부팅

– Ctrl+s 로 프로젝트 저장 후, PC 를 재부팅해야 라이센스가 정상인식된다. 

– TF6420 Configurator 를 구동시킨 후, 아래와 같이 상태가 Ready 이면 라이센스가 정상 등록된 것이다.

license8.png

Machbase 연동

Machbase 와 연동하기 위해서는 윈도우버전의 Machbase ODBC 32bit 버전이 필요하다.

(TwinCAT Database-Server 는 64bit/32bit 모두 지원된다고 되어있으나, ODBC의 경우 32bit 만 지원되는것으로 보여진다.)

해당 문서에서는 machbaseSDK-fog-6.1.0 을 설치하여 연동하였다.

machbaseSDK-fog-6.1.0 다운로드 경로 :

http://dl.machbase.com/dist/6.1.0/machbaseSDK-fog-6.1.0.official-WINDOWS-X86-release.msi

마크베이스 설치내용은 해당문서에서 제외하도록 한다.

아래와 같은 절차로 ODBC 드라이버 설치 확인부터 TwinCAT Database-Server 에 ODBC 연동까지 기술한다.

1) ODBC 드라이버 설치 확인

– 아래와 같이 ODBC 데이터 원본 관리자를 통해 드라이버가 설치되었는지 확인한다.

connect1.png

2) DB Pool 생성

– TF6420 Configurator 를 구동시킨 후, 아래와 같이 DB Pool를 생성한다.

– New DB Connection 클릭한 후, 생성된 DatabaseConnection 더블클릭한다.

connect2.png

– 더블클릭하면 아무 설정이 안된 상태의 화면이 생기고, 거기에서 DatabaseType 을 ODBC 로 선택한다.

– ODBC 를 선택하면 아래와 같이 Driver 를 선택할 수 있는 란이 있고, 여기서 오른쪽 마우스를 클릭하여 Paramater 값을 추가하도록 한다.

connect3.png
connect4.png

– 아래 화면과 같이 Parameter를 추가하고 CHECK 버튼을 눌러 정상등록 및 연동여부를 확인한다.

– 아래 내용은 테스트를 위한 설정으로 SERVER 및 PORT_NO 는 달라질 수 있습니다.

– Database Type : ODBC

– Driver : MachbaseSDK

– SERVER : 해당 DB서버 IP 주소

– UID : SYS

– PWD : MANAGER

– PORT_NO : 해당 DB서버 PORT 번호

– NLS_USE : MS949

connect5.png

– 정상등록 및 연결이되었다면 아래와 같이 창이 뜬다.

connect6.png

3) DB Configuration Pool 추가 

– 아래 화면과 같이 Solution Explorer 에 DatabaseConnection1 를 마우스 오른쪽 클릭하여 Add to DB Configuration Pool 를 클릭하여 Configuration 에 추가한다.

connect7.png

– Add to Database Configuration Pool 를 클릭하면 아래와 같이 Pool 등록 창이 뜬다.

connect8.png

– 아래와 같이 DB Configuration Pool 에 등록된 것을 확인할 수 있다.

connect9.png

4) Configuration 활성화

– DB Pool 를 등록하였다고 사용할 수 없으며 Configuration 을 활성화를 시켜줘야 사용할 수 있다.

– 아래 화면과 같이 File -> Activate Configuration 을 클릭하여 활성화를 한다.

connect10.png

– 정상적으로 활성화가 되면 아래 화면과 같이 프로그램 상태바에 정상적으로 활성화가 되었다는 로그가 뜬다.

connect11.png

DB 접속 및 쿼리 실행

다음은 등록된 DB Connection을 사용하여 쿼리 사용법을 기술한다.

테스트해본 결과, SELECT, INSERT, DELETE, DROP, CREATE 등 DML, DDL 모두 정상 동작하였으나, 

SELECT 의 경우 출력결과를 확인할 순 없었다.

쿼리는 자체 제공하는 SQL Query Editor 를 사용하여 쿼리를 실행할 수 있다.

1) SQL Query Editor 사용

– 아래 화면과 같이 View -> SQL Query Editor 메뉴를 클릭한다.

query1.png

– 아래 화면과 같이 사용할 DB Connection 을 선택한다.

query2.png

2) 쿼리 실행

– SELECT/INSERT/DELETE/CREATE TABLE 각각 용도에 맞는 탭 메뉴를 제공하고 있으나, CREATE TABLE 은 정상 작동하지 않는다.

– SELECT 탭메뉴에서 create table, select , insert , delete , drop 등 쿼리문을 입력한 후, Execute 를 클릭하면 정상적으로 수행된다.

– 아래 화면과 같이 메시지창에서 정상 실행된 로그가 출력되며, 실제 해당 서버에서도 테이블 생성 및 데이터 입력등이 정상적으로 수행된 것을 확인할 수 있다.

query3.png

결론

– 공식적으로 TwinCAT은 저희 Machbase를 지원하지 않으나,  TwinCAT 을 사용하시고 저희 Machbase DB를 사용하시고자 하는 고객의 pain point 를 해소할 수 있을 것으로 보여집니다.

– 저희 Machbase의 다양한 SDK 지원으로 다시 한번 마크베이스의 유연성을 확인할 수 있었습니다.

감사합니다.

연관 포스트

C언어로 Binary data를 Machbase에 넣기

1.개요 Data를 다루다 보면 numeric, varchar 형 데이터뿐만 아니라 JPG, PNG, MP3와 같은 Binary data도 database에 저장해야 할 때가 존재한다. 그러나 일반 data들과는 달리 Binary

[MACHBASE 연동] Android studio에서 JDBC 연결하기

마크베이스 기술지원본부 이현민 1. 개요 수많은 데이터들이 많은 환경에서 생성되고 있는 오늘날, 우리 현대인들의 동반자인 스마트폰 또한 데이터생성의 주체로써 또는 전달자로서 알게 모르게 그 구실을