"AE2100"과 920MHz 대역 무선 "SmartHop"을 이용하여 원격 지역의 센서 데이터를 수집하자(2)- 데이터 수집 편-

요약

  • 본고는 OKI를 사용하는 AI 테두리 컴퓨터'AE2100'이 920MHz 주파수대 다중 점프 무선'SmartHop'을 통해 원격 센서 데이터를 수집하여 AE2100에 시각화하는 방법을 소개한다.
  • 는 두 번째'데이터 수집 편'에서 AE2100에서 노드 RED를 가져와 Modbus RTU에 대응하는 센서 데이터의 수집, 시각화하는 방법을 소개했다.
  • 개시하다


    Node-READ는 브라우저 기반 편집기에서 트레이에 배열된 다양한 노드를 연결하여 프로세스를 쉽게 만들 수 있는 도구입니다.
    이번에는 AE2100의 docker에 노드 RED를 가져와 CO2 농도 및 온습도 데이터 수집(Modbus RTU 프로토콜)·시각화하는 방법을 소개한다.센서 데이터 수집은 처음 구축된 SmartHop의 무선 네트워크를 통해 이뤄진다.

    컨디션


    실행 환경은 아래 그림과 같은 구성을 전제로 한다.

    TeraTerm을 통해 창 PC에서 AE2100, AE2100에서 인터넷으로 연결할 수 있는지 확인하십시오.
    기타 환경은 "AE2100"과 920MHz 주파수대 무선 "SmartHop"을 이용하여 원격 지역의 센서 데이터를 수집하자(1)-무선 네트워크 구축 편을 참조하십시오.

    AE2100에 노드 -RID 가져오기


    Node-RID 구성 및 AE2100에서 가져오는 방법에 대한 간단한 설명은 OKI AE2100 & Node-RID로 낮은 IoT를 시도해 보세요.구축편에 나와 있습니다.
    위 글의 "Docker file"섹션에 두 개의 Node-RID 라이브러리가 추가로 설치되어 있습니다. 이 글에서 사용할 수 있도록 아래 두 개의 프로그램 라이브러리를 설치하십시오.
    · node-red-contrib-modbus(Modbus RTU 구현용 노드)
    · node-red-conntrib-flat(부동점 데이터 변환용 노드)
    ※ 본 기사는 MQTT를 사용하지 않으므로'Docker 용기의 실행'장에 기재된 1883번 포트를 설치할 필요가 없습니다.
    AE2100으로 Node-RID를 가져온 후 웹 브라우저에서http://192.168.100.1:1880방문하다.익숙한 프로세스 편집기가 나타날 것입니다.

    Modbus RTU에서 데이터 수집


    Node-RID의 흐름 편집기에서 다양한 노드를 작업공간에 구성하여 노드를 선으로 연결하여 프로세스를 만듭니다.
    본 보도에서 Modbus RTU 프로토콜에서 CO2 농도와 온도와 습도 데이터를 수집하는 절차는 다음과 같다.

    전체적인 절차로 Modbus RTU의 읽기 명령에 따라 1초 간격으로 CO2 컨트롤러의 데이터(CO2 농도)와 무선 입력 단원의 데이터(온습도)를 수집하여 계기판이 보일 때까지 한다.
    이번에 사용한 노드는 다음과 같은 8가지가 있다.나는 각 노드가 각자 어떤 처리를 했는지 해설하고 싶다.(각 노드의 자세한 기능은 Qita의 멋진 글 등을 참조하십시오.)

    inject 노드


    프로젝트 노드는 일정한 간격으로 자동으로 흐름을 시작할 수 있습니다.
    이 글은 1초 간격으로 데이터를 수집하는 프로세스를 만드는 inject 노드를 시작점에 설정합니다.

    Modbus Getter 노드


    Modbus Getter 노드는 Modbus RTU 프로토콜에 따라 데이터를 수집할 수 있습니다.
    이 글은 CO2 컨트롤러라면 번호 1의 레지스터 0x044의 데이터(CO2 농도)를 읽고, 무선 입력 단원이라면 번호 2의 레지스터 0x002~0x007의 데이터를 읽는다.
    ※ 무선 입력 유닛은 입력 1, 입력 2, 입력 3의 데이터를 일괄적으로 수집하고, 후속 노드에서는 입력 1 데이터(온도)와 입력 3 데이터(습도)를 각각 분할해 표시합니다.
    ※ 각 센서의 레지스터 지도는 각자의 규격서를 참조하세요.

    【설정치】
    · 이름: 임의(센서가 인식할 수 있는 이름 등)
    ・Unit-ID: 사이트 번호(센서에 설정된 사이트 번호)
    ・FC: Modbus의 기능 코드(센서의 수집 항목에 따라 설정)
    ・Address: 데이터 수집 시작 레지스터(센서 수집 항목에 따라 설정)
    /Quantity: 수집된 데이터 수 (byte 수)
    • Server: RS485(ModbusRTU의 경우)

    function 노드


    function 노드는 문자열을 디지털 데이터로 변환합니다.이 글은 다음에 설명한chart 노드에서 시간 서열도를 만들 때 숫자 데이터가 아닌 것을 입력하면 도표를 표시할 수 없기 때문에chart 노드 앞에 설정합니다.
    또 무선 입력 단원에서는 두 데이터를 결합해 처리했다.(대상 데이터가 32비트 부동 소수점 데이터이기 때문)

    split 노드


    이 글은 무선 입력 단원의 연속 6개의 데이터를 모아 읽는다.split 노드는 6개의 데이터를 [2 데이터, 2 데이터, 2 데이터]로 분할한다.
    ※ 무선 입력 유닛의 데이터가 32비트 부동점이기 때문에 2개 데이터

    switch 노드


    switch 노드에서 split 노드를 분할한 데이터를 3개의 출력으로 분리합니다.이번에는 입력 1(열전지가 측정한 온도)과 입력 3(습도)을 사용하기 때문에 노드 출력 측면 위의 두 번째 출력을 사용하지 않는다.

    toFlat 노드


    무선 입력 장치의 대상 데이터(1(온도), 습도 입력)는 32비트 부동점으로 변환이 필요하다.toFlat 노드를 중계하여 32비트 부동점을 10진수로 변환합니다.
    센서 데이터가 어떤 데이터 형식으로 출력되는지는 센서의 수집 항목에 따라 각 센서의 규격서에서 확인하십시오.

    gauge 노드


    수집된 센서 데이터의 순간값은 도표로 표시한다.계기판이 표시되다.

    chart 노드


    폴리라인 차트에 수집된 센서 데이터의 시간 시퀀스 값을 표시합니다.대시보드에 폴리라인 차트가 표시됩니다.
    ※ 막대그래프나 떡그림에서도 볼 수 있다.

    debug 노드 확인 방법 사용하기


    이전 장에서 설명한 내용 이외에 Node-RID에는 debug 노드라는 편리한 노드가 하나 더 있다.
    디버깅을 위해 아래 debug 노드를 설정하십시오.오른쪽에 있는 디버그 편집기에서 각 센서의 응답 데이터를 확인할 수 있습니다.프로세스 제작 과정에서도 데이터를 제대로 수집할 수 있는지 확인하기 위해 적절히 활용할 것을 권고한다.

    상기 그림의 예에서 Modbus Getter 노드를 사용하여 수집한 각 센서 데이터의 원시 값은 배열을 통해 얻을 수 있음을 확인할 수 있다.
    그나저나 실제로 AE2100과 각 센서 간에 다음과 같은 전문교환이 이뤄졌으며, Modbus Getter 노드를 이용하면 Modbus 프로토콜의 전문을 무의식적으로 수집할 수 있어 편리하다.

    대시보드 표시 확인


    다음 그림과 같이 계기판에 CO2 농도, 온도, 습도의 도표와 CO2 농도와 온도의 시간 추이를 표시할 수 있다.
    또한gaugge 노드와chart 노드의 상세한 설정과 계기판의 열기 방법OKI AE2100 & Node-RID로 낮은 IoT를 시도해 보세요.실천편에 간단명료하게 기재되어 있으니 참고하시기 바랍니다.

    총결산


    이번에 AE2100은 노드-RID를 도입하여 920MHz 주파수대 다중 점프 무선'SmartHop'을 통해 센서 데이터의 수집과 가시화를 진행하였다.원격지역의 센서 데이터를 수집할 수 있어 공장과 청사 등 넓은 구역에서도 일제히 감시할 수 있다.
    환경 데이터 외에도 전력값, 접점 정보 등 각종 센서 데이터를 수집할 수 있으니 반드시 도전해 주십시오.
  • "AE2100"과 920MHz 주파수대 무선 "SmartHop"을 이용하여 원격 지역의 센서 데이터를 수집하자(1)-무선 네트워크 구축 편
  • 좋은 웹페이지 즐겨찾기