KR101704423B1 - 멀티드롭 통신에서의 식별자 검색 방법 - Google Patents

멀티드롭 통신에서의 식별자 검색 방법 Download PDF

Info

Publication number
KR101704423B1
KR101704423B1 KR1020150152205A KR20150152205A KR101704423B1 KR 101704423 B1 KR101704423 B1 KR 101704423B1 KR 1020150152205 A KR1020150152205 A KR 1020150152205A KR 20150152205 A KR20150152205 A KR 20150152205A KR 101704423 B1 KR101704423 B1 KR 101704423B1
Authority
KR
South Korea
Prior art keywords
packet
slave
command packet
controller
slave controller
Prior art date
Application number
KR1020150152205A
Other languages
English (en)
Inventor
김병수
최대성
Original Assignee
(주)로보티즈
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)로보티즈 filed Critical (주)로보티즈
Priority to KR1020150152205A priority Critical patent/KR101704423B1/ko
Application granted granted Critical
Publication of KR101704423B1 publication Critical patent/KR101704423B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40143Bus networks involving priority mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40019Details regarding a bus master
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling

Abstract

본 발명은 멀티드롭 통신에서의 식별자 검색 방법에 있어서, 보다 상세하게는 불특정 다수에게 전송되는 Ping 명령의 문제점과 종래에 식별자(Identification)를 특정해야 하는 문제점에 대한 개선을 통해 식별자 검색 절차와 시간을 단축시킬 수 있는 멀티드롭 통신에서의 식별자 검색 방법에 관한 것으로, 마스터컨트롤러가 명령패킷을 생성하여 통신버스로 전송하는 송신단계, 그리고 복수의 슬래이브컨트롤러가 상기 명령패킷의 응답에 해당하는 상태패킷을 각각 생성하여 상기 통신버스를 통해 순차적으로 전송하는 응답단계를 포함하되, 상기 응답단계는 상기 복수의 슬래이브컨트롤러가 정해진 우선순위에 따라 상기 명령패킷을 순차적으로 체크하고, 상기 우선순위에 따라 상기 상태패킷으로 응답하는 것이 특징인 발명이다.

Description

멀티드롭 통신에서의 식별자 검색 방법{method for searching identification in Multi-drop communication}
본 발명은 멀티드롭 통신에서의 식별자 검색 방법에 관한 것으로, 보다 상세하게는 불특정 다수에게 전송되는 Ping 명령의 문제점과 종래에 식별자(Identification)를 특정해야 하는 문제점에 대한 개선을 통해 식별자 검색 절차와 시간을 단축시킬 수 있는 멀티드롭 통신에서의 식별자 검색 방법에 관한 것이다.
멀티드롭(Multi-drop) 통신은 식별자(이하, ID)를 기반으로 마스터컨트롤러(Master controller)의 명령에 대해 슬래이브컨트롤러(Slave controller)들이 응답하도록 구성된다.
따라서, 슬래이브컨트롤러는 임의로 통신버스를 점유할 수 없고, 마스터컨트롤러의 요청이 있을 경우에만 한시적으로 통신버스를 점유해서 응답한다. 예를 들면 마스터컨트롤러가 ID가 '1'인 슬래이브컨트롤러[1]의 위치정보가 필요할 경우, 마스터컨트롤러는 슬래이브컨트롤러[1]에게 위치정보를 요청하는 명령패킷을 송신한다. 이때, 모든 슬래이브컨트롤러들은 수신 상태로 대기해야 한다. 마스터컨트롤러에 의해 명령패킷이 수신된 경우에는, 해당 명령패킷을 분석하고 ID가 부합될 경우에 슬래이브컨트롤러[1]가 통신버스를 점유해서 위치정보을 포함하는 상태패킷을 송신한다.
이와 같이, 멀티드롭 통신에서 마스터컨트롤러가 슬래이브컨트롤러에게 통신버스의 점유권(송신 권한)을 제공하는 방법은 슬래이브컨트롤러의 ID에 기반한다. 그 때문에, 마스터컨트롤러는 통신버스에 연결된 슬래이브컨트롤러들의 ID를 정확히 알고 있어야 한다. 따라서, 슬래이브컨트롤러의 ID를 검색하는 절차가 매우 중요하다.
종래 기술에서는 슬래이브컨트롤러의 ID를 검색하기 위해서, 각각의 ID 별로 명령패킷을 전송하고 응답(상태패킷)이 있는지를 확인하였다.
통신버스에 연결될 수 있는 슬래이브컨트롤러들의 ID가 1000개(0~999)라고 가정해 보면, 마스터컨트롤러는 통신버스에 연결된 슬레이브컨트롤러들의 ID를 확인하기 위해 슬래이브컨트롤러[0]부터 슬래이브컨트롤러[999]까지 1000번의 명령패킷을 송신한다. 이때, 임의의 슬래이브컨트롤러로부터 응답(상태패킷)이 있을 경우에, 마스터컨트롤러는 해당 ID를 갖는 슬래이브컨트롤러가 통신버스에 연결되어 있음을 확인할 수 있다.
통신속도(baudrate)가 57,600bps이고 명령패킷과 상태패킷의 길이가 6byte라고 가정하면, 패킷 전송시간은 약 1ms이다. 슬래이브컨트롤러가 명령패킷을 분석하고 상태패킷을 생성하는 시간은 프로세서(CPU)에 따라 다소 차이가 날수는 있지만 매우 빠른 시간에 완료될 수 있는데, 0.3ms로 가정하자.
종래 기술에 따른 식별자 검색 절차에서, 1개의 슬래이브컨트롤러가 통신버스에 연결되었는지 여부를 파악하기 위해 걸리는 시간은 통신버스 상에 슬래이브컨트롤러의 존재 유무와 상관없이 2.6ms이다. 1000개의 ID를 검색해야 할 경우에는 총 2.6s가 소요된다.
한편, 마스터컨트롤러는 매 순간마다 통신버스에 관여하여 누가 통신버스를 점유할지 여부를 결정해야 한다. 즉, 마스터컨트롤러는 슬래이브컨트롤러[0](Slave[0])에 명령패킷을 전송함으로써 통신버스의 점유권을 슬래이브컨트롤러[0](Slave[0])에게 부여한다. 슬래이브컨트롤러[0](Slave[0])는 일시적으로 통신버스의 점유권을 부여받고 상태패킷을 송신한 후 버스 점유권을 마스터컨트롤러에게 되돌려준다. 마스터컨트롤러는 다시 슬래이브컨트롤러[1](Slave[1])에 명령패킷을 전송하여 버스 점유권을 슬래이브컨트롤러[1](Slave[1])에게 부여하고, 슬래이브컨트롤러[1](Slave[1])이 존재하지 않을 경우 타임아웃을 이용하여 버스의 점유권을 재획득한다.
만일 마스터컨트롤로와 슬래이브컨트롤러 간에 다수의 통신속도(Baudrate)가 사용될 경우에는 전술된 식별자 검색 절차를 통신속도 별로 각각 수행해야 한다.
예를 들면, 슬래이브컨트롤러의 통신속도를 10가지로 선택이 가능하고, 각 통신속도마다 슬래이브컨트롤러의 ID를 1000개(0~999)로 설정 가능한 경우를 가정하자. 그리고 통상적으로 마스터컨트롤러가 통신속도를 변경하는데 소요되는 시간과 통신속도가 변경될 경우에 패킷 전송시간이 달라지는 변수는 무시하더라도, 이경우에 통신버스에 연결된 슬래이브컨트롤러들의 ID를 검색하기 위해 필요한 총 시간은 1개의 슬래이브컨트롤러가 통신버스에 연결되었는지 여부를 파악하는데 걸리는 시간 2.6ms와 슬래이브컨트롤러의 ID 개수 1000과 선택 가능한 통신속도 10의 곱으로서 2.6ms*1000*10 = 26초가 필요하다.
결국 종래 기술에서는 복수의 슬래이브컨트롤러들의 ID를 특정한 명령패킷들 즉, 명령세트가 요구되어, 슬래이브컨트롤러들의 ID를 검색하는 절차가 복잡하고 또한 슬래이브컨트롤러들의 ID를 검색하는 시간도 많이 소요되는 문제가 있었다.
한편, 종래 기술의 Ping 명령을 사용할 경우에는 브로드캐스팅 ID를 적용할 수 있다. 예를 들면, 통신버스에 1개의 슬래이브컨트롤러만 있을 때 마스터컨트롤러가 브로드캐스팅 ID로 요청하면, 그 슬래이브컨트롤러는 통신버스를 점유하여 해당 응답을 전송할 수 있다. 그러나, 슬래이브컨트롤러가 2개 이상일 때 마스터컨트롤러가 브로드캐스팅 ID로 요청하면, 각 슬래이브컨트롤러가 동시에 통신버스를 점유하여 응답하기 때문에, 통신버스를 통해 전송되는 신호는 왜곡될 수 있고 오류가 발생될 수 있다. 이러한 문제를 해결하기 위해 종래의 시스템에서는 브로드캐스팅 ID로 슬래이브컨트롤러들에게 상태패킷을 요청할 시에는 응답하지 않도록 설계하고 있다. 즉, 종래 기술에서는 Ping 명령을 사용할 경우에 브로드캐스팅 ID로 설정된 명령을 수신한 슬래이브컨트롤러는 동시에 응답하거나 전혀 응답하지 않도록 했었다. 그로 인해서 마스터컨트롤러가 통신버스에 연결된 슬래이브컨트롤러의 ID를 확인할 수 없다는 문제가 있었다.
특허문헌1: 대한민국 공개특허공보 제10-2013-0045690호 특허문헌2: 대한민국 공개특허공보 제10-2008-0057802호
본 발명의 목적은 상기한 점을 감안하여 안출한 것으로, 특히 불특정 다수에게 전송되는 Ping 명령에 의해 마스터컨트롤러가 통신버스에 연결된 슬래이브컨트롤러의 ID를 확인할 수 없었던 문제점과 종래에 식별자(Identification)를 특정해서 상태패킷을 요청해야 함에 따른 복잡한 식별자 검색 절차와 많은 검색 시간의 문제를 해소해 주는 멀티드롭 통신에서의 식별자 검색 방법을 제공하는 데 있다.
상기한 목적을 달성하기 위한 본 발명의 일실시예는, 마스터컨트롤러가 명령패킷을 생성하여 통신버스로 전송하는 송신단계, 그리고 복수의 슬래이브컨트롤러가 상기 명령패킷의 응답에 해당하는 상태패킷을 각각 생성하여 상기 통신버스를 통해 순차적으로 전송하는 응답단계를 포함하며, 상기 응답단계는, 상기 복수의 슬래이브컨트롤러가 정해진 우선순위에 따라 상기 명령패킷을 순차적으로 체크하고, 상기 우선순위에 따라 상기 상태패킷으로 응답하는 것이며, 또한 상기 응답단계는, 상기 복수의 슬래이브컨트롤러 중 우선순위가 제n순위인 제n슬레이브컨트롤러가 상기 명령패킷에 대응하는 제n상태패킷으로 응답한 후에, 우선순위가 제n+1순위인 제n+1슬레이브컨트롤러가 상기 명령패킷에 대응하는 제n+1상태패킷으로 응답하는 것을 특징으로 하는 멀티드롭 통신에서의 식별자 검색 방법을 제공한다.
삭제
바람직하게, 상기 응답단계에서 상기 복수의 슬래이브컨트롤러에게 상기 명령패킷에 대응하여 응답하는데 허용되는 응답 대기시간을 각각 설정할 수 있다.
보다 바람직하게, 상기 응답단계는 상기 복수의 슬래이브컨트롤러 중 우선순위가 제n순위인 제n슬레이브컨트롤러가 상기 응답 대기시간의 만료 시점까지 상기 명령패킷에 대응하는 상태패킷으로 응답하지 않으면, 상기 우선순위가 제n+1순위인 제n+1슬레이브컨트롤러가 상기 명령패킷에 대응하는 상태패킷으로 응답하기 위해 상기 통신버스를 점유할 수 있다. 또는, 상기 복수의 슬래이브컨트롤러 중 우선순위가 제n순위인 제n슬레이브컨트롤러가 상기 응답 대기시간의 만료 시간 이전에 상기 명령패킷에 대응하는 상태패킷으로 응답하면, 상기 제n슬레이브컨트롤러의 응답 시점에 상기 제n슬레이브컨트롤러에 설정된 응답 대기시간을 만료시키고 상기 우선순위가 제n+1순위인 제n+1슬레이브컨트롤러가 상기 명령패킷에 대응하는 상태패킷으로 응답하기 위해 상기 통신버스를 점유할 수 있다.
바람직하게, 상기 명령패킷은 상기 복수의 슬래이브컨트롤러를 각각 식별하기 위한 식별정보를 제외하여 구성될 수 있다.
바람직하게, 상기 명령패킷은 상기 복수의 슬래이브컨트롤러를 각각 특정하지 않는 브로드캐스팅 식별자를 포함하는 식별자 필드를 가질 수 있다.
상기한 목적을 달성하기 위한 본 발명의 다른 실시예는, a) 복수의 슬래이브컨트롤러 중에서 제n슬래이브컨트롤러가 수신한 명령패킷에 응답하여 제n상태패킷을 자신이 점유한 통신버스를 통해 전송하는 단계와, b) 상기 제n슬래이브컨트롤러가 상기 통신버스의 점유권을 해제하는 단계와, c) 상기 제n슬래이브컨트롤러의 다음 우선순위를 가지는 제n+1슬래이브컨트롤러가 수신한 명령패킷에 응답하여 제n+1상태패킷을 자신이 점유한 상기 통신버스를 통해 전송하는 단계를 포함하며, 상기 a 단계는, 상기 복수의 슬래이브컨트롤러 중 우선순위가 제n순위인 제n슬레이브컨트롤러가 상기 명령패킷에 대응하는 제n상태패킷으로 응답하는 것이고, 이후 상기 c 단계는, 우선순위가 제n+1순위인 제n+1슬레이브컨트롤러가 상기 명령패킷에 대응하는 제n+1상태패킷으로 응답하는 것을 특징으로 하는 멀티드롭 통신에서의 식별자 검색 방법을 제공한다.
바람직하게, 상기 명령패킷은 상기 복수의 슬래이브컨트롤러를 각각 특정하기 위한 식별자 필드를 제외하여 구성될 수 있다.
바람직하게, 상기 명령패킷은 상기 복수의 슬래이브컨트롤러를 특정하지 않는 브로드캐스팅 식별자를 포함하여 구성될 수 있다.
본 발명에 따르면, 슬래이브컨트롤러가 정해진 우선순위에 따라 통신버스를 점유하여 상태패킷을 전송하고 또한 마스터컨트롤러가 통신버스에 연결된 복수의 슬래이브컨트롤러의 ID를 검색하기 위해 슬래이브컨트롤로의 ID가 특정된 명령세트가 요구되지 않음에 따라, 마스터컨트롤러가 매 순간마다 통신버스의 점유권을 할당하는 절차가 요구되지 않는다. 따라서, 복수의 슬래이브컨트롤러의 ID를 검색하는데 마스터컨트롤러의 개입 부분이 삭제되어 전체 ID 검색 시간을 현저히 단축할 수 있다. 즉, 마스터컨트롤러가 통신버스의 점유권을 직접 관리하지 않고 슬래이브컨트롤러가 통신버스의 점유 여부를 정해진 우선순위에 따라 스스로 판단하기 때문에, ID 검색 절차가 간단해지고 또한 전체 ID 검색 시간이 단축된다.
또한, 본 발명은 명령패킷을 구성하는 필드들 중에서 ID 필드를 배제시킬 수도 있고, 브로드캐스팅 ID를 적용하는 기술에도 용이하게 적용할 수 있다.
도 1은 본 발명에 따른 멀티드롭 통신에서의 식별자 검색 절차를 도시한 다이어그램이고,
도 2는 본 발명의 일 실시예에서 브로드캐스팅 ID를 적용하는 경우의 명령패킷과 상태패킷의 포맷 구성을 도시한 다이어그램이다.
본 발명의 다른 목적, 특징 및 이점들은 첨부한 도면을 참조한 실시 예들의 상세한 설명을 통해 명백해질 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예의 구성과 그 작용을 설명하며, 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시 예로서 설명되는 것이며, 이것에 의해서 상기한 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.
이하, 첨부한 도면을 참조하여 본 발명에 따른 멀티드롭 통신에서의 식별자 검색 방법의 바람직한 실시 예를 자세히 설명한다.
본 발명에서는 마스터컨트롤러가 매 순간마다 통신버스의 점유권을 할당하는 절차가 요구되지 않고 마스터컨트롤러는 슬래이브컨트롤러의 ID를 특정하지 않는 명령패킷을 전송한다. 이러한 명령패킷에 대한 응답으로 슬래이브컨트롤러가 정해진 우선순위에 따라 통신버스를 점유하여 상태패킷을 전송한다.
본 발명에서 마스터컨트롤러가 전송하는 명령패킷에 슬래이브컨트롤러의 ID를 특정하지 않는다는 것은, 명령패킷의 필드들 중에서 슬래이브컨트롤러의 ID가 삽입되는 ID 필드를 삭제하거나 명령패킷이 ID 필드를 가지더라도 그 ID 필드에 브로드캐스팅 ID가 삽입되는 것을 의미한다.
또한, 본 발명에서 마스터컨트롤러는 슬래이브컨트롤러의 ID를 특정하지 않으면서 명령패킷으로 슬레이브컨트롤러들의 특정 상태를 요청하고, 그에 응답하여 슬래이브컨트롤러는 명령패킷의 요청에 따라 상태정보를 포함하는 상태패킷을 전송한다. 여기서, 상태정보는 슬레이브컨트롤러 자신의 위치나 오류발생여부나 버전정보 등을 포함할 수 있다.
도 1은 본 발명에 따른 멀티드롭 통신에서의 식별자 검색 절차를 도시한 다이어그램이다.
도 1을 참조하면, 마스터컨트롤러는 특정 정보가 필요할 경우에 명령패킷을 생성한다(S10).
일 예로, 마스터컨트롤러가 생성하는 명령패킷은 특정 정보를 요청할 대상에 해당하는 복수의 슬래이브컨트롤러를 각각 식별하기 위한 식별정보를 제외하여 구성될 수 있다. 즉, 복수의 슬래이브컨트롤러를 각각 특정하기 위한 ID 필드가 제외하여 구성시킴으로써, 그 ID 필드가 배제된 명령패킷을 생성한다.
다른 예로, 마스터컨트롤러가 생성하는 명령패킷은 특정 정보를 요청할 대상에 해당하는 복수의 슬래이브컨트롤러를 각각 특정하지 않는 브로드캐스팅 ID를 포함하는 ID 필드를 가질 수 있다.
이어, 마스터컨트롤러는 생성된 명령패킷을 통신버스로 전송한다(S20).
이전 순위의 슬래이브컨트롤러의 응답 이후에 나머지 슬래이브컨트롤러들은 수신한 명령패킷의 응답에 해당하는 상태패킷을 각각 생성하여 통신버스를 통해 우선순위에 따라 순차적으로 전송하여 응답한다(S30,S40,S60,S70). 복수의 슬래이브컨트롤러에 의한 응답은 복수의 슬래이브컨트롤러가 정해진 우선순위에 따라 명령패킷을 순차적으로 체크하고, 그 우선순위에 따라 상태패킷으로 응답한다.
예를 들어, 복수의 슬래이브컨트롤러 중 우선순위가 제0순위인 제0슬레이브컨트롤러(Slave[0])가 명령패킷에 대응하는 제0상태패킷을 생성하고(S30), 통신버스를 점유하여 그 생성된 제0상태패킷을 전송한다(S40).
제0슬레이브컨트롤러(Slave[0])가 제0상태패킷을 전송한 후에, 그 제0슬레이브컨트롤러(Slave[0])는 통신버스의 점유권을 해제한다.
한편, 본 발명에서는 복수의 슬래이브컨트롤러에게 명령패킷에 대응하여 응답하는데 허용되는 응답 대기시간을 각각 설정할 수 있다. 여기서, 응답 대기시간은 복수의 슬래이브컨트롤러 중에서 통신버스에 연결 되지 않은 슬래이브컨트롤러에게 상태패킷을 전송하는데 최대로 허용하는 시간으로 이해될 수 있으며, 그 응답 대기시간이 만료되는 시점까지 상태패킷을 전송하지 않는 슬래이브컨트롤러는 통신버스에 연결되지 않는 것으로 판단할 수 있다. 물론, 응답 대기시간 내에 특정 슬래이브컨트롤러가 상태패킷으로 응답하는 경우에는 해당 슬래이브컨트롤러에게 할당된 응답 대기시간이 만기 이전에 종료되는 처리하고, 다음 우선순위를 가지는 슬래이브컨트롤러가 상태패킷을 전송할 수 있는 상태가 된다.
보다 상세하게, 복수의 슬래이브컨트롤러 중 우선순위가 제1순위인 제1슬레이브컨트롤러(Slave[1])가 응답 대기시간의 만료 시점(Timeout)까지 명령패킷에 대응하는 상태패킷으로 응답하지 않으면, 제1슬레이브컨트롤러(Slave[1])가 통신버스에 연결되지 않은 상태로 판단한다(S50).
일 예로, 패킷 전송시간은 1ms로 하고 상태패킷의 생성시간을 0.3ms로 가정할 때, 전술된 응답 대기시간은 상태패킷이 마스터컨트롤러에 수신 완료되는 시점까지 1.3ms로 설정할 수 있다.
그러나, 본 발명에서는 상패패킷의 생성시간 이후에 해당 슬래이브컨트롤러가 생성된 상태패킷 전체가 통신버스에 로딩 완료되면, 다음 순위의 슬래이브컨트롤로가 상태패킷을 생성하기 시작할 수 있다. 따라서, 응답 대기시간을 상태패킷이 마스터컨트롤러에 수신 완료되는 시점까지 설정하지 않고, 그보다 작은 시간으로 설정할 수 있다. 일 예로, 상태패킷 생성시간이 0.3ms이고 그 상패패킷이 통신버스에 로딩 완료되기까지의 시간이 패킷 전송시간 1ms 미만인 (1-a)ms일 수 있으므로, 응답 대기시간을 (1.3-a)ms로 설정할 수 있다. 따라서, 응답 대기시간의 카운트를 통해 복수의 슬래이브컨트롤러 중 통신버스의 연결 여부를 판단할 수 있는 시간은 1.3ms 보다 작은 (1.3-a)ms일 수 있다. 따라서, 본 발명에서와 같이 마스터컨트롤러의 개입 없이 슬래이브컨트롤러가 우선순위에 따라 상태패킷을 전송하면, 슬래이브컨트롤러가 통신버스에 미연결됨을 판단하는 타이머의 만료시간(Timeout)을 보다 짧게 설정할 수 있다.
반면에, 복수의 슬래이브컨트롤러 중 우선순위가 제1순위인 제1슬레이브컨트롤러(Slave[1])가 상기 응답 대기시간의 만료 이전에 명령패킷에 대응하는 상태패킷으로 응답하면, 제1슬레이브컨트롤러(Slave[1])의 응답 시점에 제1슬레이브컨트롤러에 설정된 응답 대기시간을 만료시키고 우선순위가 제2순위인 제2슬레이브컨트롤러가 통신버스를 점유하여 명령패킷에 대응하는 제1상태패킷으로 응답할 수 있다.
도 1은 우선순위가 제1순위인 제1슬레이브컨트롤러(Slave[1])가 응답 대기시간의 만료 시점(Timeout)까지 명령패킷에 대응하는 상태패킷으로 응답하지 않은 경우에, 제1슬레이브컨트롤러(Slave[1])에 설정된 응답 대기시간이 만료된 후 우선순위가 제2순위인 제2슬레이브컨트롤러(Slave[2])가 명령패킷에 대응하는 상태패킷으로 응답하는 예를 나타낸 것이다.
그에 따라, 우선순위가 제2순위인 제2슬레이브컨트롤러(Slave[2])가 명령패킷에 대응하는 제2상태패킷을 생성하고(S60), 점유한 통신버스를 통해 제2상태패킷을 전송한다(S70).
본 발명에서는 복수의 슬래이브컨트롤러들에게 우선순위가 부여되며, 그 우선순위에 따른 오른차순 또는 내림차순의 순서로 상태패킷을 순차적으로 전송하여 응답할 수 있다.
상기한 도 1의 절차를 적용하여 메인컨트롤러가 통신버스를 통해 복수의 네트워크형 액츄에이터모듈을 제어하는 절차를 예로써 설명한다.
먼저 메인컨트롤러가 명령패킷을 생성하여 통신버스를 통해 전송한다.
이어, 복수의 네트워크형 액츄에이터모듈은 수신된 명령패킷을 정해진 우선순위에 따라 순차적으로 체크하고, 수신된 명령패킷에 대응하는 상태패킷을 각각 생성하여 통신버스를 통해 순차적으로 응답한다.
특히, 복수의 네트워크형 액츄에이터모듈 중 우선순위가 제n순위인 제n액츄에이터모듈은 수신된 명령패킷에 대응하는 제n상태패킷으로 응답하고, 이후에, 우선순위가 제n+1순위인 제n+1액츄에이터모듈이 수신된 명령패킷에 대응하는 제n+1상태패킷으로 응답할 수 있다.
만약, 우선순위가 제n+1순위인 제n+1액츄에이터모듈이 전술된 응답 대기시간이 만료되는 시점까지 응답하지 않으면, 그 응답 대기시간 만료 후에 우선순위가 제n+2순위인 제n+2액츄에이터모듈이 명령패킷에 대응하는 제n+2상태패킷으로 응답할 수 있다.
도 2는 본 발명의 일 실시예에서 브로드캐스팅 ID를 적용하는 경우의 명령패킷과 상태패킷의 포맷 구성을 도시한 다이어그램으로, 본 발명의 일 예에 따른 명령패킷은 복수의 슬래이브컨트롤러를 특정하지 않는 브로드캐스팅 ID를 포함하여 구성될 수 있다.
도 2를 참조하면, 마스터컨트롤러는 Ping 명령을 위해 불특정 다수를 특정하는 브로드케스팅 ID를 사용하여 명령패킷을 생성하고, 그 생성된 명령패킷을 통신버스를 통해 전송한다.
이상의 본 발명에서는 마스터컨트롤러가 통신버스의 점유권을 할당하는데 개입하지 않고, 슬래이브컨트롤러가 우선순위에 따라 통신버스의 점유 여부를 결정한다.
따라서, 통신버스에 연결된 모든 슬래이브컨트롤러는 상태패킷을 전송할 우선순위가 정해지기 때문에, 각 슬래이브컨트롤러는 자신의 상태패킷을 미리 준비할 시간 즉, 상태패킷의 생성시간을 가질 수 있다. 즉, 제n슬래이브컨트롤러가 상태패킷의 전송 중에, 제n+1슬래이브컨트롤러는 자신의 상태패킷을 생성할 수 있다. 그에 따라 최고 우선순위의 슬래이브컨트롤러를 제외한 후순위 슬래이브컨트롤러들은 상태패킷을 생성하는 시간을 줄일 수 있다.
지금까지 본 발명의 바람직한 실시 예에 대해 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성을 벗어나지 않는 범위 내에서 변형된 형태로 구현할 수 있을 것이다.
그러므로 여기서 설명한 본 발명의 실시 예는 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 하고, 본 발명의 범위는 상술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함되는 것으로 해석되어야 한다.

Claims (9)

  1. 마스터컨트롤러가 명령패킷을 생성하여 통신버스로 전송하는 송신단계; 그리고
    복수의 슬래이브컨트롤러가 상기 명령패킷의 응답에 해당하는 상태패킷을 각각 생성하여 상기 통신버스를 통해 순차적으로 전송하는 응답단계;
    를 포함하며,
    상기 응답단계는, 상기 복수의 슬래이브컨트롤러가 정해진 우선순위에 따라 상기 명령패킷을 순차적으로 체크하고, 상기 우선순위에 따라 상기 상태패킷으로 응답하는 것이며,
    또한 상기 응답단계는, 상기 복수의 슬래이브컨트롤러 중 우선순위가 제n순위인 제n슬레이브컨트롤러가 상기 명령패킷에 대응하는 제n상태패킷으로 응답한 후에, 우선순위가 제n+1순위인 제n+1슬레이브컨트롤러가 상기 명령패킷에 대응하는 제n+1상태패킷으로 응답하는 것을 특징으로 하는 멀티드롭 통신에서의 식별자 검색 방법.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 응답단계에서,
    상기 복수의 슬래이브컨트롤러에게 상기 명령패킷에 대응하여 응답하는데 허용되는 응답 대기시간을 각각 설정하는 것을 특징으로 하는 멀티드롭 통신에서의 식별자 검색 방법.
  4. 제 3 항에 있어서,
    상기 응답단계는,
    상기 복수의 슬래이브컨트롤러 중 우선순위가 제n순위인 제n슬레이브컨트롤러가 상기 응답 대기시간의 만료 시점까지 상기 명령패킷에 대응하는 상태패킷으로 응답하지 않으면, 상기 우선순위가 제n+1순위인 제n+1슬레이브컨트롤러가 상기 명령패킷에 대응하는 상태패킷으로 응답하기 위해 상기 통신버스를 점유하거나,
    상기 복수의 슬래이브컨트롤러 중 우선순위가 제n순위인 제n슬레이브컨트롤러가 상기 응답 대기시간의 만료 시간 이전에 상기 명령패킷에 대응하는 상태패킷으로 응답하면, 상기 제n슬레이브컨트롤러의 응답 시점에 상기 제n슬레이브컨트롤러에 설정된 응답 대기시간을 만료시키고 상기 우선순위가 제n+1순위인 제n+1슬레이브컨트롤러가 상기 명령패킷에 대응하는 상태패킷으로 응답하기 위해 상기 통신버스를 점유하는 것을 특징으로 하는 멀티드롭 통신에서의 식별자 검색 방법.
  5. 제 1 항에 있어서,
    상기 명령패킷은,
    상기 복수의 슬래이브컨트롤러를 각각 식별하기 위한 식별정보를 제외하여 구성되는 것을 특징으로 하는 멀티드롭 통신에서의 식별자 검색 방법.
  6. 제 1 항에 있어서,
    상기 명령패킷은,
    상기 복수의 슬래이브컨트롤러를 각각 특정하지 않는 브로드캐스팅 식별자를 포함하는 식별자 필드를 가지는 것을 특징으로 하는 멀티드롭 통신에서의 식별자 검색 방법.
  7. a) 복수의 슬래이브컨트롤러 중에서 제n슬래이브컨트롤러가 수신한 명령패킷에 응답하여 제n상태패킷을 자신이 점유한 통신버스를 통해 전송하는 단계와;
    b) 상기 제n슬래이브컨트롤러가 상기 통신버스의 점유권을 해제하는 단계와;
    c) 상기 제n슬래이브컨트롤러의 다음 우선순위를 가지는 제n+1슬래이브컨트롤러가 수신한 명령패킷에 응답하여 제n+1상태패킷을 자신이 점유한 상기 통신버스를 통해 전송하는 단계;
    를 포함하며,
    상기 a 단계는, 상기 복수의 슬래이브컨트롤러 중 우선순위가 제n순위인 제n슬레이브컨트롤러가 상기 명령패킷에 대응하는 제n상태패킷으로 응답하는 것이고,
    이후 상기 c 단계는, 우선순위가 제n+1순위인 제n+1슬레이브컨트롤러가 상기 명령패킷에 대응하는 제n+1상태패킷으로 응답하는 것을 특징으로 하는 멀티드롭 통신에서의 식별자 검색 방법.
  8. 제 7 항에 있어서,
    상기 명령패킷은 상기 복수의 슬래이브컨트롤러를 각각 특정하기 위한 식별자 필드를 제외하여 구성되는 것을 특징으로 하는 멀티드롭 통신에서의 식별자 검색 방법.
  9. 제 7 항에 있어서,
    상기 명령패킷은 상기 복수의 슬래이브컨트롤러를 특정하지 않는 브로드캐스팅 식별자를 포함하여 구성되는 것을 특징으로 하는 멀티드롭 통신에서의 식별자 검색 방법.


KR1020150152205A 2015-10-30 2015-10-30 멀티드롭 통신에서의 식별자 검색 방법 KR101704423B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150152205A KR101704423B1 (ko) 2015-10-30 2015-10-30 멀티드롭 통신에서의 식별자 검색 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150152205A KR101704423B1 (ko) 2015-10-30 2015-10-30 멀티드롭 통신에서의 식별자 검색 방법

Publications (1)

Publication Number Publication Date
KR101704423B1 true KR101704423B1 (ko) 2017-02-09

Family

ID=58154565

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150152205A KR101704423B1 (ko) 2015-10-30 2015-10-30 멀티드롭 통신에서의 식별자 검색 방법

Country Status (1)

Country Link
KR (1) KR101704423B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021090987A1 (ko) * 2019-11-06 2021-05-14 (주)로보티즈 효율적인 통신 버스 중재 시스템 및 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080057802A (ko) 2006-12-21 2008-06-25 (주)로보티즈 네트워크형 액츄에이터 모듈
KR20130045690A (ko) 2011-10-26 2013-05-06 (주)로보티즈 네트워크형 엑츄에이터 모듈 제어방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080057802A (ko) 2006-12-21 2008-06-25 (주)로보티즈 네트워크형 액츄에이터 모듈
KR20130045690A (ko) 2011-10-26 2013-05-06 (주)로보티즈 네트워크형 엑츄에이터 모듈 제어방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021090987A1 (ko) * 2019-11-06 2021-05-14 (주)로보티즈 효율적인 통신 버스 중재 시스템 및 방법
US11841813B2 (en) 2019-11-06 2023-12-12 Robotis Co., Ltd. System and method for efficient communication bus arbitration

Similar Documents

Publication Publication Date Title
US7313716B2 (en) Method and device for exchanging data between at least two stations connected via a bus system
EP2675113B1 (en) Method for configurating canopen network, method for operating slave device of canopen network and system for controlling plc device using canopen network
KR940006369A (ko) 데이타 송신방법 및 장치
HUT69354A (en) Method for controlling the scheduling of multiple acces to communication resourches
WO2010039770A1 (en) Data transmission over a network with channel bonding
CN106537851B (zh) 具有访问时隙和优先级分辨的访问方法
KR20170033277A (ko) 데이터 프레임의 동적 우선순위 재조정을 이용한 시리얼 데이터 전송을 위한 스테이션 및 방법
US20140372646A1 (en) Receiver based communication permission token allocation
KR101704423B1 (ko) 멀티드롭 통신에서의 식별자 검색 방법
CN110266568B (zh) 串行总线系统的成员站和串行总线系统中数据传输的方法
CN1322721C (zh) 使用总线的预仲裁装置及其方法
CN112000019A (zh) 用于共享设备指令控制的方法、装置及设备
CN111030775B (zh) 一种数据传输方法、装置及设备
JP2015053568A (ja) 通信制御装置
US20180219694A1 (en) Method for searching identifier in multi-drop communication
JPH0774718A (ja) 時分割通信制御方法
JP3813824B2 (ja) 機器の起動間隔管理装置、起動間隔管理システム及び起動間隔管理方法
CN113691630B (zh) Dns请求处理方法、装置、系统、电子设备和存储介质
KR101266949B1 (ko) 네트워크에서의 데이터 전송방법
CN112769640B (zh) 进程通信方法、系统、服务器及存储介质
JP3075649B2 (ja) 時分割多重通信方式
KR102114572B1 (ko) 시분할 다중접속 방식에서의 저지연 전송을 위한 방법 및 그 방법을 위한 기기
CN115884229B (zh) 传输时延的管理方法、电子设备和存储介质
KR102210050B1 (ko) RAPIEnet 프로토콜에서 국번 자동 할당 방법
US6865630B2 (en) Apparatus and method of preventing congestion in message transmission system

Legal Events

Date Code Title Description
GRNT Written decision to grant