IoT 단말, AP 디바이스 및 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법
기재된 실시예는 스마트 공장과 같이 대규모 사물 인터넷(Internet of Things, IoT) 단말이 초고밀도로 설치되어 LLN(Low-power and Lossy Networks)를 구성하는 경우에 사용되는 무선 센서 네트워크 프로토콜 스택에 관한 것이다. 산업용 IoT를 위한 무선 센서 네트워크 기술은 무선 근거리 개인통신망(WPAN) 전송규격인 IEEE802.15.4 표준을 기반으로 관련 산업의 요구에 적절한 상위 계층을 규정한 ZigBee, ISA100.11a 및 Wireless HART 등의 규격이 존재한다. 최근에 IEEE 802.15.4e에서는 TSCH(Time Slotted Channel Hopping) 기술을 이용하여 데이터를 송수신하는 MAC(Media Access Control) 템플릿을 표준화하였으며, 슬롯화된 매체접근과 채널 홉핑의 조합을 바탕으로 신뢰성 높은 통신을 실현하기 때문에 큰 주목을 받고 있다. 그러나, 이러한 IoT 용 무선 통신 기술은 넓은 지역에 저밀도로 디바이스가 설치되는 환경에서 동작하는 무선 센서 네트워크 스택이므로 원격 검침(AMI)과 같이 서비스에는 유용하게 사용되고 있으나, 반도체 및 디스플레이 공장과 같이 초고밀도로 디바이스가 설치되는 환경에서는 신호 간 간섭으로 성능이 급격히 저하된다. 이러한 신호 간 간섭 때문에 WiFi나 ZigBee와 같이 CSMA(Carrier Sense Multiple Access) 기술을 바탕으로 하고 있는 무선 통신 기술은 초고밀도 대규모 환경에서는 성능이 급격하게 저하되며, 아직 단일 공간에 1000개 수준의 대규모 무선 통신 디바이스가 동작하도록 지원하는 무선 IoT 통신 기술은 개발된 바 없다. 또한 TSCH 기술의 경우, 무선 신호 간 충돌 없는 송수신을 위해 스케줄링을 사용하게 되는데 네트워크에 참여하는 디바이스의 수가 많아짐에 따라 송수신 슬롯의 길이가 길어지고 응용 데이터를 주고 받는 속도가 느려지게 된다는 단점이 나타나게 되어 대규모 디바이스 환경에 적용하기에는 문제가 있다. 실시예에 따른 IoT 단말은, AP 디바이스와 무선 통신하는 RF 부, 클러스터 ID가 기록된 NFC 태그, 적어도 하나의 프로그램이 기록된 메모리 및 프로그램을 실행하는 프로세서를 포함하며, 프로그램은, NFC 태그로부터 독출된 클러스터 ID에 상응하도록 RF 부의 송수신 채널 주파수를 설정하고, 매 라운드마다 RF 부를 통해 AP 디바이스로부터 전송되는 스케줄을 기반으로 전송 슬롯을 설정하여 AP 디바이스로 데이터 전송할 수 있다. 이때, NFC 태그에는, 관리자의 스마트 디바이스로부터 NFC 통신을 통해 전송되는 클러스터 ID 및 IoT 단말 ID 및 수행 모드가 기록될 수 있다. 이때, 송수신 채널 주파수는, 클러스터 ID 별로 상이할 수 있다. 이때, 프로그램은, 수행 모드가 최초 접속 모드일 경우, 스케줄에 명시된 빈 슬롯(Empty Slot)들 중 하나의 슬롯을 통해 AP 디바이스로 클러스터 접속 요청 패킷을 전송하고, AP 디바이스로부터 응답 메시지를 수신함에 따라, 수행 모드를 최초 접속 모드에서 전송 모드로 전환할 수 있다. 실시예에 따른 IoT 단말은, 센서부를 더 포함하고, 프로그램은, 수행 모드가 전송 모드일 경우, 스케줄에 명시된 자신에게 할당된 슬롯을 통해 AP 디바이스로 센서부에 의해 측정된 센싱 데이터를 전송할 수 있다. 이때, 프로그램은, 수행 모드가 해제 모드일 경우, 스케줄에 명시된 자신에게 할당된 슬롯을 통해 클러스터 접속 해제 요청 패킷을 AP 디바이스에 전송할 수 있다. 이때, NFC 태그에는, 관리자의 스마트 디바이스로부터 NFC 통신을 통해 전송되는 해제 모드가 기록되고, 프로그램은, NFC 태그에 해제 모드가 기록됨에 따라, 수행 모드를 해제 모드로 판단할 수 있다. 실시예에 따른 AP 디바이스는, 클러스터에 포함된 적어도 하나의 IoT 단말과 무선 통신하는 RF 부, 클러스터 ID와 아울러 적어도 하나의 프로그램이 기록된 메모리 및 프로그램을 실행하는 프로세서를 포함하며, 프로그램은, 메모리로부터 독출된 클러스터 ID에 상응하도록 RF 부의 송수신 채널 주파수를 설정하고, 매 라운드 시작 시점에 클러스터에 포함된 적어도 하나의 IoT 단말에 할당할 전송 슬롯을 명시한 스케줄을 생성하여 RF 부를 통해 브로드캐스팅하고, 스케줄을 기반으로 슬롯별로 데이터를 수신하여 처리할 수 있다. 이때, 실시예에 따른 AP 디바이스는, 다른 AP 디바이스와 통신하는 다른 RF 부가 별도로 탑재될 수 있다. 이때, 프로그램은, 전원이 인가된 직후에는, 모든 슬롯들을 빈 슬롯(Empty slot)으로 설정한 스케줄을 생성하여 브로드캐스팅할 수 있다. 이때, 프로그램은, 적어도 하나의 IoT 단말로부터 빈 슬롯을 통해 클러스터 접속 요청 패킷이 수신됨에 따라, 해당 IoT 단말을 클러스터에 추가할 수 있다. 이때, 프로그램은, 스케줄에 명시된 적어도 하나의 전송 슬롯을 통해 수신되는 센싱 데이터를 라운드 별로 취합하여 시리얼 통신을 통해 서버에 전송할 수 있다. 이때, 프로그램은, 스케줄에 명시된 적어도 하나의 전송 슬롯을 통해 전송된 클러스터 접속 해제 요청 패킷을 수신함에 따라, 해당 IoT 단말을 클러스터에서 삭제하는 단계를 수행할 수 있다. 실시예에 따른 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법은, AP 디바이스가 매 라운드 시작 시점에 클러스터에 포함된 적어도 하나의 IoT 단말에 할당할 전송 슬롯을 명시한 스케줄을 생성하여 브로드캐스팅하는 단계, 클러스터에 포함된 적어도 하나의 IoT 단말이 AP 디바이스로부터 전송되는 스케줄을 기반으로 자신에게 할당된 전송 슬롯을 통해 센싱 데이터를 전송하는 단계 및 AP 디바이스가 스케줄에 명시된 적어도 하나의 전송 슬롯을 통해 수신되는 센싱 데이터를 라운드 별로 취합하여 시리얼 통신을 통해 서버에 전송하는 단계를 포함할 수 있다. 실시예에 따른 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법은, AP 디바이스가 전원 인가된 직후에 메모리로부터 독출된 클러스터 ID에 상응하도록 송수신 채널 주파수를 설정하는 단계 및 모든 슬롯들을 빈 슬롯(Empty slot)으로 설정한 스케줄을 생성하여 브로드캐스팅하는 단계를 더 포함할 수 있다. 실시예에 따른 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법은, IoT 단말이 NFC 태그로부터 독출된 클러스터 ID에 상응하도록 RF 부의 송수신 채널 주파수를 설정하는 단계를 더 포함할 수 있다. 실시예에 따른, 송수신 채널 주파수는, 클러스터 ID 별로 상이할 수 있다. 이때, IoT 단말이 수행 모드가 최초 접속 모드일 경우, 스케줄에 명시된 빈 슬롯(Empty Slot)들 중 하나의 슬롯을 통해 AP 디바이스로 클러스터 접속 요청 패킷을 전송하는 단계 및 AP 디바이스가 적어도 하나의 IoT 단말로부터 빈 슬롯을 통해 클러스터 접속 요청 패킷이 수신됨에 따라, 해당 IoT 단말을 클러스터에 추가하는 단계를 더 포함할 수 있다. 이때, IoT 단말이 클러스터 접속 요청에 대한 AP 디바이스로부터의 응답 메시지를 수신함에 따라, 수행 모드를 최초 접속 모드에서 전송 모드로 전환하는 단계를 더 포함할 수 있다. 이때, IoT 단말이 수행 모드가 해제 모드일 경우, 스케줄에 명시된 자신에게 할당된 슬롯을 통해 클러스터 접속 해제 요청 패킷을 AP 디바이스에 전송하는 단계 및 AP 디바이스가 클러스터에 포함된 적어도 하나의 클러스터 접속 해제 요청 패킷을 수신함에 따라, 해당 IoT 단말을 클러스터에서 삭제하는 단계를 더 포함할 수 있다. 실시예에 따라, 서로 상이한 채널을 사용하는 클러스터링 구조의 사용과 듀얼 RF를 장착한 AP 기능의 디바이스를 활용하여 신호 간 간섭을 구조적으로 최소화하고, 클러스터 내에서는 동적 스케줄링 방법의 적용하여 전송 성공율을 최대화하고 전송 지연시간을 최소화 할 수 있다. 실시예에 따라, 서로 상이한 채널을 사용하는 클러스터링 구조의 사용과 듀얼 RF를 장착한 AP 기능의 디바이스를 활용하여 신호 간 간섭을 구조적으로 최소화하고, 클러스터 내에서는 동적 스케줄링 방법의 적용하여 전송 성공율을 최대화하고 전송 지연시간을 최소화 할 수 있다. 도 1은 실시예에 따른 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 네트워크의 개략적인 구성도이다.
도 2는 실시예에 따른 하나의 클러스터 내에 존재하는 AP 디바이스와 IoT 단말 간의 송수신 주기의 예시도이다.
도 3은 실시예에 따른 IoT 단말에서의 AP 디바이스와의 무선 통신 방법을 설명하기 위한 순서도이다.
도 4는 실시예에 따른 AP 디바이스에서의 IoT 단말과의 무선 통신 방법을 설명하기 위한 순서도이다.
도 5는 실시예에 따른 컴퓨터 시스템 구성을 나타낸 도면이다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다. 비록 "제1" 또는 "제2" 등이 다양한 구성요소를 서술하기 위해서 사용되나, 이러한 구성요소는 상기와 같은 용어에 의해 제한되지 않는다. 상기와 같은 용어는 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용될 수 있다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있다. 본 명세서에서 사용된 용어는 실시예를 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 또는 "포함하는(comprising)"은 언급된 구성요소 또는 단계가 하나 이상의 다른 구성요소 또는 단계의 존재 또는 추가를 배제하지 않는다는 의미를 내포한다. 다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 해석될 수 있다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 이하에서는, 도 1 내지 도 5를 참조하여 실시예에 따른 장치 및 방법이 상세히 설명된다. 기존의 IoT 단말용 무선 통신의 경우 스마트 공장에 대규모 IoT 단말이 초고밀도로 설치되는 환경에서는 모든 디바이스의 전송 신호가 다른 모든 디바이스에게 수신되는 상황이 발생하여 송수신 성능이 급격하게 하락하는 문제가 발생하게 된다. 이러한 전송 신호 간 간섭 때문에 아직 스마트 공장에 1000대 규모의 무선 IoT 단말을 설치하여 운영하는 기술이 개발된 바는 없다. 본 발명에서는 대형 스마트 공장과 같이 실내 공간에 1000대 규모의 무선 IoT 단말을 설치하여 운영하는 환경에서 동작 가능한 무선 IoT 통신 기술을 제안한다. 도 1은 실시예에 따른 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 네트워크의 개략적인 구성도이다. 도 1을 참조하면, 실시예에 따른 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 네트워크는 IoT 단말(10), AP(Access Point) 디바이스(20) 및 서버(30)를 포함할 수 있다. IoT 단말(10)는 사물 인터넷 환경에 분산되어 존재하는 둘 이상의 기기들이 인터넷으로 연결되어 상호간에 정보를 주고받을 수 있는 기기일 수 있다. 예컨대, 스마트 팩토리 IoT 환경이라면, IoT 단말(10)은 센서, 액츄에이터 등을 포함하는 팩토리 환경에 마련된 다양한 기기들일 수 있다. 스마트 팩토리 IoT 환경과 같이 대규모의 초고밀도 환경에서는 실시예에 따라, IoT 단말(10)은 위치를 기준으로 소정 그룹들로 클러스터링된다. 그리고, AP 디바이스(20)가 복수의 IoT 단말(10)로 구성된 소정 클러스터를 관장한다. 실시예에 따른 IoT 단말(10)은, IoT 단말(10)는 자신이 포함된 클러스터를 관장하는 AP 디바이스(20)와 통신을 위한 하나의 RF 부가 탑재되어, AP 디바이스(20)에 RF 부를 통해 데이터를 송신할 수 있다. 실시예에 따른 IoT 단말(10)은, NFC 태그로부터 독출된 클러스터 ID에 상응하도록 RF 부의 송수신 채널 주파수를 설정할 수 있다. 즉, 좁은 공간에 대규모의 디바이스를 설치하는 스마트 공장의 경우에는 센싱 및 액츄에이션을 담당하는 디바이스의 위치가 중요하며 유지보수의 효율적 운영을 위해 디바이스의 물리적 위치도 중요하게 관리하게 된다. 이러한 물리적 위치를 관리하기 위해, IoT 단말(10)에는 생산 단계에서 NFC 태그가 부착될 수 있다. 이때, NFC 태그에는, 관리자의 스마트 디바이스와의 NFC 통신을 통해 전송되는 클러스터 ID 및 IoT 단말 ID 및 수행 모드가 독출 또는 기록될 수 있다. 이때, 송수신 채널 주파수는, 클러스터 ID 별로 상이할 수 있다. 즉, IoT 단말(10)의 송신 신호가 다른 디바이스에게 수신되는 경우 성능이 급격하게 하락하는 문제를 해결하기 위해, 실시예에 따라 AP 디바이스(20)에 접속되는 IoT 단말(10)들의 클러스터 별로 다른 주파수로 전송하도록 한다. 실시예에 따른 IoT 단말(10)은, 매 라운드마다 RF 부를 통해 AP 디바이스(20)로부터 전송되는 스케줄을 기반으로 전송 슬롯을 설정하여 AP 디바이스로 데이터 전송할 수 있다. 즉, 동일한 주파수로 송수신하는 동일한 클러스터 내에서의 각 IoT 단말(10)과 AP 디바이스(20) 간의 통신은 사전에 결정된 스케줄에 의해 정해진 슬롯(slot) 시간에 송수신을 하는 TSCH(Time-Slotted Channel Hopping) 방식을 사용한다. IoT 단말(10)의 상세 동작에 대해서는 도 3을 참조하여 후술하기로 한다. 한편, 실시예에 따른 AP 디바이스(20)는, IoT 단말(10)로부터 수신한 센싱 정보를 서버(30)로 전달한다. 또한, AP 디바이스(20)는 IoT 단말(10)와의 통신을 위한 제1 RF부와, 다른 AP 디바이스(20)와의 통신을 위한 별도의 제2 RF부가 탑재된다. 이때, 제1 RF부 및 제2 RF부는, 서로 상이한 주파수 대역을 사용하는 듀얼 MAC 기능을 탑재할 수 있다. 즉, AP 디바이스(20)는, 서버(30)에 시리얼 통신으로 연결된 싱크 기능을 수행하여, AP 디바이스(20) 간의 메쉬 라우팅을 통해 수집된 데이터를 서버(30)로 전송한다. 실시예에 따른 AP 디바이스(20)는, 매 라운드 시작 시점에 클러스터에 포함된 적어도 하나의 IoT 단말(10)에 할당할 전송 슬롯을 명시한 스케줄을 생성하여 RF 부를 통해 브로드캐스팅하고, 스케줄을 기반으로 슬롯별로 데이터를 수신하여 처리한다. 즉, 각 IoT 단말(10)가 송수신할 수 있는 슬롯(Slot)은 AP 디바이스(20)에서 결정하여 매 라운드 시작 시점에 해당 클러스터 내의 IoT 단말(10)에게 전송한다. 이때, AP 디바이스(20)와 IoT 단말(10)은 매우 근거리에 위치하므로, 대부분 싱글홉 통신으로 송수신이 가능하지만, 장애물이 있는 지역에 위치한 IoT 단말(10)이 존재할 수도 있으므로 멀티홉 전송도 지원될 수 있다. AP 디바이스(20)의 상세 동작에 대해서는 도 4를 참조하여 후술하기로 한다. 도 2는 실시예에 따른 하나의 클러스터 내에 존재하는 AP 디바이스와 IoT 단말 간의 송수신 주기의 예시도이다. 도 2를 참조하면, AP 디바이스(20)에서 스케줄(41)을 해당 클러스터에 포함된 IoT 단말(10)들에게 전송하면 각 IoT 단말(10)은 해당 라운드의 어느 슬롯에서 송수신할지에 대한 정보를 알게 되고, 약속된 슬롯에서 송수신을 함으로써 WiFi나 ZigBee와 같이 랜덤하게 전송하는 무선통신 기술에서 발생하게 되는 신호 간 충돌을 최소화할 수 있게 된다. 대규모 무선 디바이스가 설치되는 스마트 공장에서는 AP 디바이스(20)에 접속하게 되는 클러스터 내의 무선 IoT 단말(10) 수의 최대치와 각 IoT 단말(10)의 전송 주기가 결정되어 있으므로 라운드 별 최대 슬롯의 수도 결정되어 있다. 또한, 시스템을 처음 설치하는 경우에는 모든 슬롯이 빈 슬롯(Empty Slot) 상태이며, IoT 단말(10)의 전원이 켜짐에 따라 AP 디바이스(20)에 접속되는 IoT 단말(10)이 전송할 슬롯이 할당될 수 있다. 도 3은 실시예에 따른 IoT 단말에서의 AP 디바이스와의 무선 통신 방법을 설명하기 위한 순서도이다. 도 3을 참조하면, IoT 단말(10)은 전원이 인가됨에 따라, 자신이 포함된 클러스터를 관장하는 AP 디바이스(20)에 접속하여 클러스터링된다. 이때, IoT 단말(10)에 부착된 NFC 태그에는, IoT 단말(10)이 현장에 설치되기 전에 관리자의 스마트 디바이스로부터 NFC 통신을 통해 단말의 고유 ID 및 수행 모드에 대한 정보와 아울러 자신이 속하는 클러스터를 관장하는 AP 디바이스(20)의 클러스터 식별자(ID)가 기록될 수 있다. 이때, 클러스터 ID 별로 상이한 주파수가 설정되므로, 클러스터들 간의 간섭은 원천적으로 회피할 수 있다. 이때, IoT 단말의 고유 ID는, MAC address를 사용하게 되므로 IoT 단말들간의 ID는 중복되지 않는다. 따라서, 전원이 인가된 IoT 단말(10)은 NFC 태그로부터 독출된 클러스터 ID에 상응하도록 RF 부의 송수신 채널 주파수를 설정(S105)한 후, 설정된 송수신 주파수로 스케줄이 수신될 때까지 대기한다. IoT 단말(10)은 AP 디바이스(20)로부터 스케줄이 수신됨에 따라, 스케줄을 기반으로 자신에게 할당된 전송 슬롯을 설정한다(S110). 이때, 전원이 인가된 직후 IoT 단말(10)은 최초 접속 모드이므로, 스케줄에 자신에게 할당된 전송 슬롯이 명시되어 있지 않으므로, 전송 슬롯 설정이 생략될 수 있다. 그런 후, IoT 단말(10)은 수행 모드를 확인(S115)하여, 확인한 수행 모드에 따라 상이한 동작을 수행할 수 있다. 이때, 수행 모드는, 최초 접속 모드, 전송 모드 및 해제 모드가 있을 수 있다. S115의 확인 결과 수행 모드가 최초 접속 모드인 경우(S120), IoT 단말(10)은 AP 디바이스(20)에게 스케줄에 명시된 빈 슬롯(Empty Slot)들 중 하나의 슬롯을 전송 슬롯으로 설정(S125)하고, AP 디바이스(20)로 전송 슬롯으로 설정된 빈 슬롯을 통해 클러스터 접속 요청 패킷을 전송한다(S130). 즉, IoT 단말(10)의 전원이 켜진 경우에 수행하게 되는 클러스터 접속 요청은 초기 설치, 이동 설치 및 추가 설치 시에 발생되므로, 다수의 IoT 단말(10)들이 동시에 접속을 요청하는 경우가 발생될 수 있다. 이러한 경우 다수의 IoT 단말(10)들 간의 충돌 가능성을 최소화하기 위해 랜덤 시간만큼 대기 한 후에 빈 슬롯에 접속 요청 패킷을 보내게 된다. IoT 단말(10)은 AP 디바이스(20)로부터 접속 요청 패킷이 정상적으로 수신되었다는 응답 메시지를 수신함(S135)에 따라, 수행 모드를 최초 접속 모드에서 전송 모드로 전환(S140)하고, 다음 라운드까지 대기한다(S145). 반면, IoT 단말(10)은 접속 요청 패킷이 정상적으로 수신되었다는 응답 메시지를 수신하지 못할(S135) 경우, S110으로 진행하여 다음 스케줄을 수신하고 전술한 동일한 과정을 반복 수행한다. 반면, S115의 확인 결과 수행 모드가 전송 모드인 경우(S150), IoT 단말(10)은 수신한 스케줄에 명시된 할당받은 슬롯으로 센싱 데이터를 전송하는 과정을 매 라운드 마다 반복하게 된다(S155). 한편, S115의 확인 결과 수행 모드가 해제 모드인 경우, IoT 단말(10)은 스케줄에 명시된 자신에게 할당된 슬롯을 통해 클러스터 접속 해제 요청 패킷을 AP 디바이스(20)에 전송한다(S160). 이때, NFC 태그에는, 관리자의 스마트 디바이스로부터 NFC 통신을 통해 전송되는 해제 모드가 기록되고, IoT 단말(10)은 NFC 태그에 해제 모드가 기록됨에 따라, 수행 모드를 해제 모드로 판단할 수 있다. 즉, 이동설치나 제거를 위해서는 서버(30)나 AP 디바이스(20)로부터 클러스터 접속을 해제하는 패킷을 수신하는 별도의 과정을 거쳐서 클러스터에서 제외되고, 다음 라운드의 스케줄부터는 해당 IoT 단말(10)에 대한 슬롯을 할당하지 않도록 한다. 도 4는 실시예에 따른 AP 디바이스에서의 IoT 단말과의 무선 통신 방법을 설명하기 위한 순서도이다. 도 4를 참조하면, AP 디바이스(20)는 전원이 켜지게 되면 저장된 클러스터 ID를 읽고, 자신이 관리하게 될 클러스터의 송수신 채널을 설정한다(S205). 그런 후, AP 디바이스(20)는 모든 슬롯을 빈 슬롯(Empty slot)으로 설정한 Empty 스케줄을 생성하여 브로드캐스팅한(S210) 후, 라운드 시간 동안 슬롯별로 패킷의 수신을 기다린다(S215). AP 디바이스(20)는 슬롯에 패킷이 도달하지 않으면(S220), 다시 Empty 스케줄을 전송(S210)하는 과정을 반복한다. 반면, AP 디바이스(20)는 슬롯에 패킷이 수신되면(S220), 패킷의 종류에 따라 클러스터 접속 승인, 클러스터 접속 해제, 센싱 데이터의 취합 및 서버(30)로의 과정을 반복한다(S225~S255). 즉, AP 디바이스(20)는 적어도 하나의 IoT 단말로부터 빈 슬롯을 통해 클러스터 접속 요청 패킷이 수신됨(S225)에 따라, 해당 IoT 단말을 클러스터에 추가할 수 있다(S230). 또한, AP 디바이스(20)는 스케줄에 명시된 적어도 하나의 전송 슬롯을 통해 전송된 클러스터 접속 해제 요청 패킷을 수신함(S235)에 따라, 해당 IoT 단말을 클러스터에서 삭제할 수 있다(S240). 또한, AP 디바이스(20)는 스케줄에 명시된 적어도 하나의 전송 슬롯을 통해 수신되는 센싱 데이터를 라운드 별로 취합(S245~S250)하여 시리얼 통신을 통해 서버(30)에 전송한다(S255). 이때, 취합된 데이터의 서버(30)로의 전송은 라운드 마지막 부분에 한번 수행되며, IoT 단말(10)과의 전송 채널과는 다른 전송 채널을 사용하고 ZigBee 프로토콜을 사용한다. AP 디바이스(20)는 IoT 단말(10)를 통해 수집한 센싱 데이터를 ZigBee 프로토콜을 통해 서버(30)로 전송하게 되는데 이는 기존 ZigBee 프로토콜을 그대로 사용하는 것이므로 상세한 설명은 생략한다. 예컨대, 스마트 공장에 1000대 규모의 IoT 단말(10)가 설치되고 100개씩 클러스터링 되는 경우, IoT 단말(10)는 대규모이므로 신호 간 간섭 해결이 중요한 문제이지만, 100개의 IoT 단말(10)을 클러스터링하고 데이터를 취합하여 전송하는 AP 디바이스(20)는 10개 수준의 소규모이므로 기존 알고리즘을 그대로 사용하여도 문제가 되지 않는다. 한편, AP 디바이스(20)에 전원이 인가된 직후에는, S210과 같이 Empty 스케줄이 전송되므로, S235 내지 S255는 클러스터에 적어도 하나의 IoT 단말(10)이 추가된 다음 라운드부터 수행될 수 있다. 즉, AP 디바이스(20)는 클러스터에 포함된 적어도 하나의 IoT 단말(10)이 존재할 경우, S260에서 클러스터에 포함된 적어도 하나의 IoT 단말(10)에 전송 슬롯을 할당한 새로운 스케줄을 생성하여 브로드캐스팅(S260)한 이후에 S235 내지 S255가 수행될 수 있다. 그런 후, AP 디바이스(20)는 다음 라운드 시작 시점에서 클러스터에 포함된 적어도 하나의 IoT 단말에 할당할 전송 슬롯을 명시한 새로운 스케줄을 생성하여 RF 부를 통해 브로드캐스팅한다(S260). 한편, AP 디바이스(20)의 종료가 필요한 경우에는 서버(30)로부터 종료 패킷을 수신한 후 취합 데이터를 모두 서버(30)로 전송하고 클러스터 내 단말들에게 해제 요청 패킷을 전송한 후 종료하게 되는데 서비스 종료 상황에서만 작동되는 기능이므로 본 특허에서는 설명을 생략한다. 도 5는 실시예에 따른 컴퓨터 시스템 구성을 나타낸 도면이다. 실시예에 따른 IoT 단말(10), AP 디바이스(20) 및 서버(30)는 각각 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(1000)에서 구현될 수 있다. 컴퓨터 시스템(1000)은 버스(1020)를 통하여 서로 통신하는 하나 이상의 프로세서(1010), 메모리(1030), 사용자 인터페이스 입력 장치(1040), 사용자 인터페이스 출력 장치(1050) 및 스토리지(1060)를 포함할 수 있다. 또한, 컴퓨터 시스템(1000)은 네트워크(1080)에 연결되는 네트워크 인터페이스(1070)를 더 포함할 수 있다. 프로세서(1010)는 중앙 처리 장치 또는 메모리(1030)나 스토리지(1060)에 저장된 프로그램 또는 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(1030) 및 스토리지(1060)는 휘발성 매체, 비휘발성 매체, 분리형 매체, 비분리형 매체, 통신 매체, 또는 정보 전달 매체 중에서 적어도 하나 이상을 포함하는 저장 매체일 수 있다. 예를 들어, 메모리(1030)는 ROM(1031)이나 RAM(1032)을 포함할 수 있다. 이상에서 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 10 : IoT 단말
20: AP 디바이스
30 : 서버 본 발명에서는 다른 채널을 사용하는 클러스터링 구조의 사용과 듀얼 RF를 장착한 AP 기능의 디바이스를 활용하여 신호 간 간섭을 구조적으로 최소화하고, 클러스터 내에서는 동적 스케쥴링 방법의 적용하여 전송 성공율을 최대화하고 전송 지연시간을 최소화 할 수 있는 고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법을 제안한다.
본 발명의 실시예에 따른 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법은, AP 디바이스가 매 라운드 시작 시점에 클러스터에 포함된 적어도 하나의 IoT 단말에 할당할 전송 슬롯을 명시한 스케줄을 생성하여 브로드캐스팅하는 단계, 클러스터에 포함된 적어도 하나의 IoT 단말이 AP 디바이스로부터 전송되는 스케줄을 기반으로 자신에게 할당된 전송 슬롯을 통해 센싱 데이터를 전송하는 단계 및 AP 디바이스가 스케줄에 명시된 적어도 하나의 전송 슬롯을 통해 수신되는 센싱 데이터를 라운드 별로 취합하여 시리얼 통신을 통해 서버에 전송하는 단계를 포함할 수 있다. AP 디바이스와 무선 통신하는 RF 부;클러스터 ID가 기록된 NFC 태그; 적어도 하나의 프로그램이 기록된 메모리; 및프로그램을 실행하는 프로세서를 포함하며,프로그램은,NFC 태그로부터 독출된 클러스터 ID에 상응하도록 RF 부의 송수신 채널 주파수를 설정하고, 매 라운드마다 RF 부를 통해 AP 디바이스로부터 전송되는 스케줄을 기반으로 전송 슬롯을 설정하여 AP 디바이스로 데이터 전송하는, IoT 단말. 제1 항에 있어서, NFC 태그에는, 관리자의 스마트 디바이스로부터 NFC 통신을 통해 전송되는 클러스터 ID 및 IoT 단말 ID 및 수행 모드가 기록되는, IoT 단말. 제1 항에 있어서, 송수신 채널 주파수는, 클러스터 ID 별로 상이한, IoT 단말. 제1 항에 있어서, 프로그램은, 수행 모드가 최초 접속 모드일 경우, 스케줄에 명시된 빈 슬롯(Empty Slot)들 중 하나의 슬롯을 통해 AP 디바이스로 클러스터 접속 요청 패킷을 전송하고, AP 디바이스로부터 응답 메시지를 수신함에 따라, 수행 모드를 최초 접속 모드에서 전송 모드로 전환하는, IoT 단말. 제1 항에 있어서, 센서부를 더 포함하고, 프로그램은, 수행 모드가 전송 모드일 경우, 스케줄에 명시된 자신에게 할당된 슬롯을 통해 AP 디바이스로 센서부에 의해 측정된 센싱 데이터를 전송하는, IoT 단말. 제1 항에 있어서, 프로그램은, 수행 모드가 해제 모드일 경우, 스케줄에 명시된 자신에게 할당된 슬롯을 통해 클러스터 접속 해제 요청 패킷을 AP 디바이스에 전송하는, IoT 단말. 제1 항에 있어서, NFC 태그에는, 관리자의 스마트 디바이스로부터 NFC 통신을 통해 전송되는 해제 모드가 기록되고, 프로그램은, NFC 태그에 해제 모드가 기록됨에 따라, 수행 모드를 해제 모드로 판단하는, IoT 단말. 클러스터에 포함된 적어도 하나의 IoT 단말과 무선 통신하는 RF 부;클러스터 ID와 아울러 적어도 하나의 프로그램이 기록된 메모리; 및프로그램을 실행하는 프로세서를 포함하며,프로그램은, 메모리로부터 독출된 클러스터 ID에 상응하도록 RF 부의 송수신 채널 주파수를 설정하고, 매 라운드 시작 시점에 클러스터에 포함된 적어도 하나의 IoT 단말에 할당할 전송 슬롯을 명시한 스케줄을 생성하여 RF 부를 통해 브로드캐스팅하고, 스케줄을 기반으로 슬롯별로 데이터를 수신하여 처리하는, AP 디바이스. 제8 항에 있어서, 다른 AP 디바이스와 통신하는 다른 RF 부가 별도로 탑재되는, AP 디바이스. 제8 항에 있어서, 프로그램은, 전원이 인가된 직후에는, 모든 슬롯들을 빈 슬롯(Empty slot)으로 설정한 스케줄을 생성하여 브로드캐스팅하는, AP 디바이스. 제8 항에 있어서, 프로그램은, 적어도 하나의 IoT 단말로부터 빈 슬롯을 통해 클러스터 접속 요청 패킷이 수신됨에 따라, 해당 IoT 단말을 클러스터에 추가하는, AP 디바이스. 제8 항에 있어서, 프로그램은, 스케줄에 명시된 적어도 하나의 전송 슬롯을 통해 수신되는 센싱 데이터를 라운드 별로 취합하여 시리얼 통신을 통해 서버에 전송하는, AP 디바이스. 제8 항에 있어서, 프로그램은, 스케줄에 명시된 적어도 하나의 전송 슬롯을 통해 전송된 클러스터 접속 해제 요청 패킷을 수신함에 따라, 해당 IoT 단말을 클러스터에서 삭제하는 단계를 수행하는, AP 디바이스. AP 디바이스가 매 라운드 시작 시점에 클러스터에 포함된 적어도 하나의 IoT 단말에 할당할 전송 슬롯을 명시한 스케줄을 생성하여 브로드캐스팅하는 단계; 클러스터에 포함된 적어도 하나의 IoT 단말이 AP 디바이스로부터 전송되는 스케줄을 기반으로 자신에게 할당된 전송 슬롯을 통해 센싱 데이터를 전송하는 단계; 및AP 디바이스가 스케줄에 명시된 적어도 하나의 전송 슬롯을 통해 수신되는 센싱 데이터를 라운드 별로 취합하여 시리얼 통신을 통해 서버에 전송하는 단계를 포함하는, 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법. 제14 항에 있어서, AP 디바이스가 전원 인가된 직후에 메모리로부터 독출된 클러스터 ID에 상응하도록 송수신 채널 주파수를 설정하는 단계; 및모든 슬롯들을 빈 슬롯(Empty slot)으로 설정한 스케줄을 생성하여 브로드캐스팅하는 단계 더 포함하는, 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법. 제15 항에 있어서, IoT 단말이 NFC 태그로부터 독출된 클러스터 ID에 상응하도록 RF 부의 송수신 채널 주파수를 설정하는 단계를 더 포함하는, 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법. 제16 항에 있어서, 송수신 채널 주파수는, 클러스터 ID 별로 상이한, 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법. 제16 항에 있어서, IoT 단말이 수행 모드가 최초 접속 모드일 경우, 스케줄에 명시된 빈 슬롯(Empty Slot)들 중 하나의 슬롯을 통해 AP 디바이스로 클러스터 접속 요청 패킷을 전송하는 단계; 및AP 디바이스가 적어도 하나의 IoT 단말로부터 빈 슬롯을 통해 클러스터 접속 요청 패킷이 수신됨에 따라, 해당 IoT 단말을 클러스터에 추가하는 단계를 더 포함하는, 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법. 제18 항에 있어서, IoT 단말이 클러스터 접속 요청에 대한 AP 디바이스로부터의 응답 메시지를 수신함에 따라, 수행 모드를 최초 접속 모드에서 전송 모드로 전환하는 단계를 더 포함하는, 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법. 제18 항에 있어서, IoT 단말이 수행 모드가 해제 모드일 경우, 스케줄에 명시된 자신에게 할당된 슬롯을 통해 클러스터 접속 해제 요청 패킷을 AP 디바이스에 전송하는 단계; 및AP 디바이스가 클러스터에 포함된 적어도 하나의 클러스터 접속 해제 요청 패킷을 수신함에 따라, 해당 IoT 단말을 클러스터에서 삭제하는 단계를 더 포함하는, 초고밀도 환경의 대규모 IoT 단말 간 무선 통신 방법.