SCADABR 시스템 구조를 파악하는 효과적인 방법중에 하나는 시스템의 빌드 과정을 분석하는 것으로 SCADABR이 JAVA 프로젝트 이고 MAVEN을 사용하고 있으므로 프로젝트의 pom.xml을 살펴보면 연관 라이브러리들을 확인할 수 있습니다. 아래의 표는 pom.xml에 기술되어 빌드에 포함되는 연관 패키지입니다. 이 라이브러리 들은 설치후 WEB-INF/lib폴더에 저장합니다. groupId artifactId version scope 1 axis axis 1.2.1 compile 2 br.org.scadabr dnp34j 1.12.4 3 br.org.scadabr.protocol iec101 1.12.4 4 com.atlassian crowd-integration-client 2.1.1 5 com..
웹기반 HMI ScadaBR의 데이터베이스 스키마는 사용자가 톰캣 서버를 가동하여 서블릿 컨텍스트가 전달되는 시점에 테이블 존재 여부를 검사하여 없을때 테이블 스키마를 자동 생성합니다. MangoContextListener 클래스를 통해서 databaseInitialize 함수를 실행하고 이때 BasePooledAccess를 상속한 데이터베이스 종류별 클래스를 통해서 테이블 검사와 스키마 생성 작업을 수행합니다. 다음의 코드는 MySQLAccess.java의 일부로 users 테이블에 대해서 간단한 쿼리를 수행하고 테이블이 없으면 "/WEB-INF/db/createTables-mysql.sql"에 저장한 스키마 일괄 생성 스크립트를 수행하는 것을 확인할 수 있습니다. 스키마 생성을 위한 SQL 스크립트는..
SCADABR 1.0의 설치 프로그램을 통해서 SCADABR의 연관 패키지와 시스템 구조를 알아보고자 합니다. SCADABR은 NSIS를 활용하여 설치 프로그램을 제작하기 때문에 NSIS 스크립트를 보면 SCADABR의 설치 과정과 연관 패키지 및 시스템 구조를 개략적으로 파악할 수 있습니다. NSIS에 대해서는 간단하게 설치 프로그램 제작하기 - NSIS를 참조하세요. SCADABR 코드를 체크 아웃 받아 scadabr\Win32 Installer\ScadaBR CE 1.0를 보면 NSIS 스크립트의 확장자인 *.nsi 파일 두개를 확인 할 수 있는데 ScadaBRINSTALL.nsi 를 통해서 설치 과정을 분석하고자 합니다. 다음은 설치 스크립트중에 설치 과정을 이끌어가는 페이지 정의 부분으로 이 부..
앞선 포스팅에서 ScadaBR을 설치한 다음 톰캣 서버가 시스템 부팅시 서비스로 자동 동작하지 하도록 설정하지 않았다면 아래의 그림과 같이 ScadaBR>Monitor Tomcat 메뉴로 Apache Service Manager를 가동시킨다. Apache Service Manager가 동작하면 우측 하단에 Tray가 생기는데 이 트레이를 통해서 "Start Service"를 선택하면 이제 부터 ScadaBR에 웹을 통해서 접근할 수 있다. 아파치 톰캣을 서비스로 자동 시작하도록 설정하고 싶을 때는 트레이 메뉴>Configure...을 선택하거나 ScadaBR>Configure Tomcat을 선택한 다음 아래의 그림과 같이 General 탭의 Startup Type을 "Automatic"으로 설정하면 된다..
다양한 SCADA/HMI 프로그램들이 존재하지만 상용 SCADA/HMI 프로그램의 대부분은 특정 운영체제(많은 경우 윈도우)나 PLC에 의존적이다. 그렇지만 현대의 컴퓨팅 환경은 인터넷의 발달과 스마트폰/태블릿등 다양한 플랫폼의 활성화로 SCADA/HMI 시스템도 데스크탑과 로컬 네트웍을 벗어나 다양한 사용자 환경에 대응해야할 필요성이 높아지고 있다. 이번 포스팅은 웹기반으로 화면을 제공하여 다양한 플랫폼을 지원하면서도 사용이 편리하고 통신 드라이버도 다양하게 지원하는 오픈소스 SCADA/HMI 시스템을 설치하고 테스트하고자 한다. 패키지의 이름은 SCADABR로 이름 뒤에 붙은 BR은 맨처음에는 HTML 태그중 하나인 과 연관이 있나 생각했었는데 홈페이지인 http://www.scadabr.org.br..
비주얼베이직 기반으로 SCADA/HMI를 편리하게 만들 수 있는 Advanced HMI는 실상 스크립트 작성 능력이 없어도 기본 제공 컨트롤의 적절한 배치와 태그 설정 만으로도 일반적인 SCADA/HMI 기능은 충분히 소화할 수 있다. 이번 포스팅은 Advanced HMI에서 제공하는 기본 컨트롤들의 구체적인 내용을 살펴 보고자 한다. * Advanced HMI의 기본 컨트롤 각 컨트롤은 PLC 태그와 연동되어 표시하거나 PLC 태그 없이 개별 속성으로 표시할 수도 있다. PLC 태그는 각 컨트롤별로 "PLCAddress*" 이름의 속성에 입력하면 된다. Annunciator.vb Value가 True면 적색배경, False면 회색 배경을 갖는다. 클릭했을때의 제어 전송 방식은 OutputType에 다음..
SCADA/HMI를 통해서 편리하게 화면을 작성하고 작업 환경에 필요한 기능을 작성하더라도 작업 대상이 되는 개별 기기를 컨트롤하는 PLC와의 접속이 원활하지 못하면 아무런 소용이 없게된다. 오픈 소스 SCADA/HMI로 무료인 Microsoft Visual Basic 2010 Express를 기반으로 손쉽게 화면을 작성할 수 있는 Advanced HMI는 다음과 같은 통신 드라이버들을 기본적으로 제공하고 있으므로 적절한 설정으로 PLC에 접속해서 작업을 진행하면 된다. 드라이버 내부 코드가 MfgControl.AdvancedHMI.Drivers.dll로 배포되고 소스가 없는 단점이 있지만 나름의 드라이버를 추가할 수 있다는 여지가 있다. * MODBUS TCPMODBUS TCP/IP를 지원하는 PLC들..
SCADA/HMI 프로그램을 개발하거나 스터디하면서 겪게되는 많은 어려움중에 하나는 개발중에 프로그램을 테스트 해 볼 수 있는 환경이 갖춰지지 않는 경우가 많다는 것이다. 테스트 할 수 있는 고가의 PLC가 없다보니 스터디를 하더라도 이해도가 떨어지고 개발한 프로그램의 품질도 다듬어지지 못하는 사례가 빈번하게 발생할 수 있다. 이런 경우 개발자의 필요를 채워 줄 수 있는 것이 바로 "PLC Simulator"로 PLC와 SCADA 제품을 판매하는 메이저 업체들은 이 시뮬레이터도 유료로 판매하고 있다. 지멘스의 PLC 시뮬레이터의 경우에는 PLC 메모리 뿐만아니라 실제 PLC프로그램을 그대로 시뮬레이터에 적용할 수 있는 기능도 제공하고 있는데 이번 포스팅에서는 무료로 사용할 수 있는 "Modbus PLC ..
PLC 공급업체에서 제공하는 HMI나 비싼 라이선스 비용을 지불하고 HMI(SCADA)를 사용하는 곳이 아니라면 한번쯤 무료 또는 오픈소스 HMI/SCADA를 검토해 보았을 것이다. 그렇지만 많은 경우 설명서가 충분하지 않거나 한글화 되어 있지 않고 설치 방법이 복잡하거나 필요한 드라이버가 없는 등 쉽사리 현업에 적용할 엄두가 나지 않는 경우가 많았을 것이다. 이번 포스팅은 윈도우 환경에서 쉽게 HMI(SCADA)시스템을 맛볼 수 있고 윈도우 개발자에게 익숙한 비주얼 스튜디오를 기반 환경으로 삼아 확장성 있는 HMI/SCADA를 구축할 수 있는 Advanced HMI(http://advancedhmi.com/)의 설치 및 간단한 사용법을 다루고자 한다. 본격적인 설치 및 사용법을 다루기 전에 Advanc..
발전소, 제철소등의 대형 플랜트 뿐만아니라 소규모 다이캐스팅 장비나 CNC 선반에 이르기까지 장비에 대한 모니터링과 작업 자동화에 없어서는 않될 존재가 바로 HMI / SCADA 소프트웨어 패키지이다. 현장에 많이 적용되어 사용하고 있는 HMI/SCADA 소프트웨어들은 대부분 PLC 생산 업체가 자체 PLC를 기준으로 서비스를 제공하기 위하여 제작한 소프트웨어이기 때문에 업체간에 호환이 되지 않고, 가격 또한 싸지 않다는 문제점이 있다. PLC 벤더가 아닌 소프트웨어 전문 업체가 제작하는 경우도 있지만 이 경우에도 개발 버전 따로, 런타임 버전 따로 라이선스 비용을 지불해야 하는 등의 문제점이 있다. 이번 포스팅에서 오픈 소스 HMI / SCADA를 다룰까 한다. 패키지들은 비주얼스튜디오 같은 기존의 I..
- Total
- Today
- Yesterday
- C# HMI
- OPC
- cubrid
- Tibero
- SCADA
- XGT PLC
- 3D 스카다
- S400
- 큐브리드
- Advanced HMI
- modbus
- 스카다
- LS산전
- 동운HMI
- 웹HMI
- SCADABR
- 지멘스
- Siemens
- XGT전용프로토콜
- C#
- 웹스카다
- plc simulator
- 티베로
- HMI개발
- 3D SCADA
- 동운 HMI
- DB드라이버
- 3D HMI
- hmi
- s300
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |