요약:
본 문서는 MQTT를 사용하여 Genetec Industrial IoT 플러그인과 카메라를 통합하는 방법을 설명합니다.
이 문서는 mosquitto-2.0.21, TNO-C3020TRA, 그리고 Genetec Industrial IoT 플러그인을 함께 사용하여 시스템을 구축하는 방법을 다룹니다.
문서는 세 부분으로 나누어져 있습니다:
● 1부는 Mosquitto MQTT 브로커에 대해 설명합니다.
● 2부는 한화 비전 카메라에서 MQTT 설정을 구성하는 방법을 다룹니다.
● 3부는 Genetec Industrial IoT 플러그인에서 MQTT 설정 방법을 설명합니다.
단계별 가이드:
1부. Mosquitto MQTT 브로커 설정
이 섹션에서는 MQTT 통신을 위한 Mosquitto 메시지 브로커를 구성하는 방법을 설명합니다.
1. 무료 MQTT 도구인 “mosquitto”를 다운로드하고 설치합니다.
|
참고 : Mosquitto 브로커는 기본적으로 포트 1883을 사용하며, 포트 1883은 다른 애플리케이션에서 자주 사용되므로 설치 전에 해당 포트가 이미 사용 중인지 확인하는 것이 중요합니다. 명령 프롬프트(CMD)를 열고 netstat -ano | findstr "1883" 명령어를 실행하여 포트 1883이 현재 사용 중인지 확인합니다. 명령 실행 시 아무것도 반환되지 않으면 해당 포트는 사용 중이 아닙니다. 만약 포트 1883이 다른 애플리케이션에서 사용 중이라면, 다른 포트를 사용하도록 설정을 변경하세요. |
2. 사용자 비밀번호 생성 (선택 사항)
① 명령 프롬프트(CMD)를 엽니다.
② Mosquitto가 설치된 폴더로 이동합니다. (예: C:\Program Files\mosquitto).
③ 다음 mosquitto_passwd 명령어를 사용하여 비밀번호 파일을 생성합니다. 명령 실행 시 비밀번호 입력을 요청하며, 암호화된 비밀번호가 포함된 파일은 Mosquitto 설치 디렉터리에 저장됩니다.
|
[명령어 구문] |
● 옵션 -c: 새 파일 생성 (기존 파일이 있을 경우 덮어쓰기).
● passwordfile: 비밀번호 정보를 저장할 파일.
● username: 원하는 사용자 이름을 입력.
3. mosquitto.conf 파일을 편집하여 원하는 포트를 지정하고 비밀번호 인증을 활성화합니다. 빨간 상자에 표시된 내용을 설정 파일에 반드시 추가하세요. mosquitto.conf 파일은 Mosquitto 설치 디렉터리에 있습니다.
|
|
● listener: Mosquitto가 사용할 포트를 입력합니다. 포트 1883이 이미 사용 중이라면 다른 포트를 선택하세요.
● allow_anonymous: 익명 사용자 접속 허용 여부를 지정합니다. false로 설정하면 인증된 사용자만 접속할 수 있습니다.
● password_file: 비밀번호 파일이 위치한 경로를 입력합니다.
4. 메시지 브로커를 수동으로 실행하거나 서비스를 재시작합니다.
① Mosquitto Broker 서비스를 재시작합니다.
② 또는 Mosquitto 브로커 서비스를 중지한 후 수동으로 Mosquitto 브로커를 실행할 수 있습니다.
|
[명령어 구문] |
● -v: 자세한 로그 출력을 위해 verbose 모드 활성화.
● -c mosquitto.conf: mosquitto.conf 설정 파일을 사용하여 Mosquitto 브로커 실행.
2부. 카메라 설정
이 섹션에서는 온도 변화 감지 이벤트 발생 시 카메라가 MQTT 메시지를 발행하도록 설정하는 방법을 설명합니다.
1. MQTT 클라이언트 설정
① MQTT 활성화
② 메시지 브로커의 IP 주소와 포트 번호 입력
③ 메시지 브로커의 사용자 이름과 비밀번호 입력
2. MQTT 발행 추가
① 이벤트 – MQTT – 클라이언트 설정 – 발행/구독으로 이동
② 발행할 토픽과 페이로드를 입력합니다. 예를 들어, 토픽은 'temperature'로 설정하고 페이로드는 '현재 온도가 30도 이상입니다'라고 입력할 수 있습니다.
3. 온도 감지 이벤트 활성화
① 분석 – 온도 감지로 이동
② [온도 감지 활성화]를 체크
③ 감지 조건을 [이상]으로 선택하고 감지 임계값을 30도로 설정
4. 이벤트 규칙을 생성하고 온도 변화 감지 시 MQTT 메시지를 발행하도록 구성
① 이벤트 트리거를 추가하고 이벤트 유형으로 "온도 감지" 선택
② 이벤트 동작 설정에서 MQTT 섹션 아래 미리 구성한 MQTT 발행 선택
3부. Genetec Industrial IoT 플러그인 설정
이 섹션에서는 Genetec Industrial IoT 플러그인 설정 방법을 설명합니다. 플러그인 사용을 위해서는 GSC-IIoT 파트가 포함된 별도의 Genetec 라이선스가 필요합니다.
1. Config Tool을 열고 플러그인 작업을 선택합니다.
2. 엔티티를 추가하고 플러그인 유형을 Industrial IoT 플러그인으로 선택합니다.
3. 트리 목록에서 Industrial IoT 플러그인을 선택하고 프로토콜 탭으로 이동합니다.
4. 아래 단계를 따라 MQTT 프로토콜을 활성화하고 MQTT 브로커 연결을 구성합니다.
① MQTT 클라이언트 프로토콜을 켭니다.
② MQTT 브로커를 추가합니다.
③ 연결 정보 섹션에 1부에서 설정한 MQTT 브로커의 IP 주소와 포트 정보를 입력합니다.
④ 보안 섹션에서 암호화는 "없음"으로 선택하고 인증을 활성화한 후 사용자 이름과 비밀번호를 입력합니다.
5. MQTT 장치 추가
① 장치 탭 선택
② 장치 추가 버튼 클릭
③ 프로토콜로 MQTT 클라이언트 선택
④ MQTT 클라이언트와 통신할 MQTT 브로커 선택
6. 카메라가 발행하는 토픽을 구독하는 MQTT 장치에 데이터 포인트 추가
① “데이터 포인트 추가” 버튼 클릭
② 구독할 MQTT 토픽 입력. 예를 들어, 카메라가 "temperature" 토픽을 발행하면 "temperature"를 구독합니다.
③ 데이터 형식 유형으로 Raw 선택. Raw와 JSON 중 선택 가능하며, Raw 옵션은 토픽 페이로드를 그대로 출력하고자 할 때 사용합니다.
7. ONVIF Profile M을 통해 발행된 JSON 데이터를 사용하려면 아래 단계를 따라 설정하세요.
① “데이터 포인트 추가” 버튼 클릭
② 데이터 형식을 JSON으로 선택
③ 필요에 따라 MQTT 토픽과 JSON 경로를 입력합니다 — ONVIF Profile M의 모든 토픽을 구독하거나 특정 토픽을 구독하고 JSON 페이로드에서 특정 값을 추출할 수 있습니다.
i. ONVIF Profile M에서 발행된 모든 토픽을 구독하려면 예시 (a)와 같이 토픽에 #, JSON 경로에 $를 입력합니다.
ii. ONVIF Profile M에서 발행된 다양한 토픽 중 (b) 항목에 표시된 특정 토픽만 구독하고 JSON 페이로드에서 @MaxTemperature 값만 표시하려면 (c) 항목과 같이 다음 값을 입력합니다.
● MQTT 토픽:
wisenet/onvifej/VideoAnalytics/Radiometry/BoxTemperatureReading/&//TemparetureDetectionModule-01
● JSON 경로:
$.Data.Reading.BoxTemperatureReading.@MaxTemperature
8. Genetec Security Desk 모니터링 탭에서 추가된 MQTT 장치를 타일에 할당하여 수신된 데이터 값을 모니터링합니다.
① Security Desk를 열고 모니터링 작업을 선택합니다.
② 트리에서 MQTT 클라이언트 장치를 더블 클릭합니다.
i. 데이터 형식 유형이 Raw로 설정된 경우, 카메라가 발행한 토픽의 페이로드에 포함된 텍스트가 (a) 항목과 같이 그대로 표시됩니다.
ii. 데이터 형식 유형이 JSON이고 토픽이 #, JSON 경로가 $로 설정된 경우 ONVIF Profile M을 사용해 발행된 모든 토픽이 순차적으로 표시되며 (b) 항목과 같습니다.
iii. 데이터 형식 유형이 JSON이고 토픽과 JSON 경로 모두 원하는 대상으로 지정된 경우, MaxTemperature와 같은 특정 값만 (c) 항목과 같이 표시할 수 있습니다.
댓글
댓글 0개
댓글을 남기려면 로그인하세요.