2017-01-11 19 views
2

PLC 장치에서 샘플을 수집/처리하고 장치의 일부 제어 태그로 작업하는 솔루션을 설계해야합니다. 제발, 그 접근법을 제안 해주세요. 긴 질문에 사과드립니다. 나는 더 작고 합리적인 과목/질문이 무엇인지를 배우고 나서 더 많은 질문으로 나눌 것입니다.OPC UA로 시작하는 방법 - PLC 장치에서 데이터를 샘플링하고 수집합니까?

회사의 솔루션은 거의 처음부터 구축되었습니다. 일부 PLC 장치가 있으며 KEPServerEx ( IoT Gateway가없는 )가 있습니다. PLC 디바이스는 이미 제 3 자 독점 소프트웨어를 통해 사용됩니다. 그러나 미래를위한 "더 큰 틀"은 없습니다. 그런 관점에서 볼 때 현대적인 디자인을 도입 할 수는 있지만 예산은 제한적입니다.

KEPServerEx가 PLC 장치에 액세스하기위한 좋은 선택이지만 지금까지 실습 경험이 없습니다. OPC UA는 구형 OPC (DA)보다 선택해야 할 것 같습니다. 나는 또한 PLC로 작업하는 사다리 방식을 알고있다.

KEPServerEx에 대해 "IoT Gateway"(사용되지 않음)에 대해 배웠던 것부터 KepServer는 샘플링 빈도를 PLC 태그 수준에서 설정할 수 있습니다. 또한 데이터 전송 빈도는 IoT Gateway에서 설정할 수 있습니다. 그런 다음 IoT 게이트웨이는 샘플 값을 저장하기 위해 내부 (메모리) 버퍼를 사용하고 튜플 (tagID, value, quality, timestamp)을 읽고 제 3 자에게 전달할 수 있습니다.

나에게 분명하지 않은 것은 IoT 게이트웨이없이 어떻게 할 것인가입니다. 기본 작업이어야한다고 가정합니다. OPC 서버를 통해 PLC를 사용하기위한 (tagID, value, quality, timestamp)는 일반적인 것입니까? 또는 KEPServerEx에 대해서만 일반인가, 아니면 IoT Gateway (옵션) 플러그인에 대해 특별한 것입니까?

저는 OPC Foundation이 최근에 Publish/Subscribe 메커니즘을 OPC UA에 추가 한 것을 알았습니다. KEPServerEx의 최신 버전도 필요합니까? 또는 이전 OPC 서버와 함께 사용할 수 있습니까?

저는 프로그래밍 및 데이터베이스 작업에 상당히 경험이 있습니다. 또한 산업용 센서, 액추에이터에 대한 기술적 배경도 있습니다. 그러나 업계에서 디지털 자동화 작업을 해 본 적이 없습니다.

감사합니다. 좋은 하루 보내십시오.

답변

1

통신하고자하는 PLC와 장치가 데이터를 전송할 통신 네트워크에 따라 KEPServerEX가 통신 할 수 있도록 적절한 드라이버 패키지를 구입해야합니다. 당신의 PLC는 오므론 NJ PLC이며,이 KEPServerEX가 거주하고 서버와 이더넷 네트워크에

경우, 당신은에서 "오므론 NJ 이더넷"드라이버를 사용해야합니다 : 예를 들어

스위트 패키지 Kepware는 "Omron Suite"를 제공합니다.

내가 KEPServerEx에 대한 (사용되지 않음) "의 IoT 게이트웨이"에 대해 배운 것을에서

의 KepServer는 PLC 태그 수준에서 샘플링 주파수를 설정할 수 있습니다 여잔 게이트웨이에 대한 질문에 대해서는

. 또한 데이터 전송 빈도는 IoT Gateway에서 설정할 수 있습니다. 그런 다음 IoT 게이트웨이는 샘플 값을 저장하기 위해 내부 (메모리) 버퍼를 사용하고 튜플 (tagID, value, quality, timestamp)을 읽고 제 3 자에게 전달할 수 있습니다.

적절한 전술 드라이버를 사용하고 당신이 원하는 곳으로 PLC 데이터 (ODBC 클라이언트, SQL Server 데이터베이스 등)을 보내 다른 드라이버 패키지를 사용하여, 여잔 게이트웨이없이 수행 할 수 있습니다. 그것은 당신이 획득하고있는 데이터로 무엇을하고 싶은지에 달려 있습니다.

+0

말해 주면 데이터를 SQL 데이터베이스로 보내도록 선택합니다. "다른 드라이버 패키지"가 PLC 드라이버 용 드라이버와 통신하는 방법은 무엇입니까? 데이터 경로에 버퍼가 있습니까? PLC 드라이버가 데이터를 푸시합니까? 아니면 실시간으로 데이터를 요청할 책임이있는 SQL 액세스 드라이버입니까? – pepr

+1

다시 말하지만, 이는 전적으로 통신 네트워크에 달려 있습니다. PLC 네트워크와 SQL 데이터베이스 서버가 이더넷 네트워크에 있습니까? KepServerEX는 각 태그에 대해 지정한 스캔 속도로 PLC의 데이터를 요청합니다. KepServerEX를 사용하여 해당 데이터를 SQL Server로 푸시하려면 Kepware의 "DataLogger"패키지가 있어야 해당 OPC 데이터를 SQL Server로 보낼 수 있습니다. DataLogger는 OPC 서버 (KepServerEX)에서 데이터를 가져와 지정한 트리거를 기반으로 SQL 데이터베이스로 푸시합니다. – controller

+0

KepServerEX에는 샘플링 된 PLC 데이터 용 버퍼가 있습니까? DataLogger가 OPC 서버에서 데이터를 가져올 때까지 데이터가 다른 곳에 저장되어 있습니까? 아니면 샘플링 된 레코드가 즉시 DataLogger에 푸시됩니까? – pepr

1

특정 장치와 통신 할 때 장치가 사용하는 프로토콜을 알아야하며 그 프로토콜은 매우 다양 할 수 있습니다.

가끔 장치 제조업체가 사용자를 대신하여 OPC 서버를 제공하거나 KepServerEx 또는 Matrikon과 같은 타사 연결 서버를 사용하여 클라이언트가 사용할 수있는 OPC 인터페이스를 제공 할 수 있습니다.

KepServerEx 또는 특정 요구 사항에 대해서는 알지 못하지만 보통 OPC 서버에는 클라이언트가 하드웨어에서 직접 읽을 수있는 값을 저장하는 캐시가 있습니다. 구독은 유사하게 구성 할 수 있습니다. 예 : 주파수, 임계 값 등.

OPC 서버/제 3 자의 프로토콜이 장치 값을 샘플링 할 수있는 빈도를 결정합니다. 예 : 일부 프로토콜은 값에 대해 폴링 할 장치를 필요로하며, 일부 프로토콜은 더 정교합니다.

OPC 클라이언트를 만드는 경우 제조업체의 타사 또는 OPC 서버에 연결하는 OPC 서버의 종류와 구독 항목이 변경 될 때마다 클라이언트가 값을 저장하는 것이 거의 자유 롭습니다. 꽤 사소한.

1

Visual Studio에 익숙한 경우 AdvancedHMI가 해결책 일 수 있습니다. 특정 PLC는 언급하지 않았지만 AdvancedHMI에는 무료 패키지의 일부로 많은 PLC 통신 드라이버가 포함되어 있습니다. 이렇게하면 PLC에서 데이터베이스로 값을 전송하기 위해 VB 또는 C#을 작성할 수 있습니다. 드라이버는 OPC 드라이버가 아니지만 훨씬 더 간단하고 효율적으로 사용할 수 있도록 설계되었습니다.

+0

감사합니다. 제가 확인하겠습니다. – pepr