KR100609493B1 - 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법 - Google Patents

복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법 Download PDF

Info

Publication number
KR100609493B1
KR100609493B1 KR1020040065538A KR20040065538A KR100609493B1 KR 100609493 B1 KR100609493 B1 KR 100609493B1 KR 1020040065538 A KR1020040065538 A KR 1020040065538A KR 20040065538 A KR20040065538 A KR 20040065538A KR 100609493 B1 KR100609493 B1 KR 100609493B1
Authority
KR
South Korea
Prior art keywords
data
transmitting
sensor
slave
message
Prior art date
Application number
KR1020040065538A
Other languages
English (en)
Other versions
KR20060017035A (ko
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 KR1020040065538A priority Critical patent/KR100609493B1/ko
Publication of KR20060017035A publication Critical patent/KR20060017035A/ko
Application granted granted Critical
Publication of KR100609493B1 publication Critical patent/KR100609493B1/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/627Controller area network [CAN] identifiers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

개시된 복수의 센서 데이터를 하나의 CAN 메시지로 전송하는 방법은 마스트로 동작하는 마스터 CAN 접속수단과 슬레이브로 동작하는 적어도 하나의 슬레이브 CAN 접속수단을 통하여, 마스터 CAN 접속수단과 슬레이브 CAN 접속수단 각각에 연결된 센서로부터 검출된 데이터를 하나의 CAN 메시지로 전송하는 방법에 있어서, 리세시브 비트(recessive bit)를 전송한 후, 자신에 연결된 센서로부터 검출된 데이터를 전송하는 마스터 CAN 접속수단 동작단계와 리세시브 비트 전송 구간 동안 자신에 연결된 센서로부터 검출된 데이터를 전송하는 슬레이브 CAN 접속수단 동작단계를 포함하여 구성된다.
이와 같은 구성의 복수의 센서 데이터를 하나의 CAN 메시지로 전송하는 방법은 기존의 캔(CAN: Controller Area Network) 기반의 제어 시스템에 전혀 영향을 주지 않으면서, 복수개의 센서로부터 검출된 데이터를 하나의 CAN 메시지로 전송할 수 있게 함으로써, 검출된 복수의 센서 데이터를 짧은 시간에 신뢰성 있게 전송하게 하는 효과를 제공할 수 있다.
CAN(controller Area Network), 센서, 리세시브 비트(recessive bit), 도미넌트 비트(dominant bit), 마스터, 슬레이브

Description

복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법{Method for transmitting multiple sensors data with a CAN message}
도 1은 표준 CAN 메시지의 구조를 도시한 도면.
도 2는 본 발명의 일실시예에 따른 복수의 센서 데이터를 하나의 CAN 메시지로 전송하는 방법을 실시하기 위한 CAN 기반의 제어 시스템의 개념 블록도.
도 3은 본 발명의 일실시예에 따라 재구성된 하나의 CAN 메시지 구조를 도시한 도면.
도 4는 본 발명의 일실시예에 따른 복수의 센서 데이터를 하나의 CAN 메시지로 생성하기 위한 마스트 CAN 접속수단의 동작을 도시한 흐름도.
도 5는 본 발명의 일실시예에 따른 복수의 센서 데이터를 하나의 CAN 메시지로 생성하기 위한 슬레이브 CAN 접속장치의 동작을 도시한 흐름도.
< 도면의 주요부분에 대한 부호의 설명 >
100... 제 1 CAN 접속수단(마스터) 102... 제 1센서 인터페이스
104... 제 1패킷 구성부 106... 제 1트랜시버
110... 제 1센서 200... 제 2 CAN 접속수단(슬레이브)
202... 제 2센서 인터페이스 204... 제 2패킷 구성부
206... 제 2트랜시버 210... 제 2센서
300... 제 3 CAN 접속수단(슬레이브) 302... 제 3센서 인터페이스
304... 제 3패킷 구성부 306... 제 3트랜시버
310... 제 3센서 400... CAN 노드
500... CAN(Controller Area Network) 버스
본 발명은 복수의 센서 데이터를 하나의 CAN 메시지로 전송하는 방법에 관한 것으로서, 더 상세하게는 캔(CAN: Controller Area Network) 기반의 제어 시스템에서 마스트로 동작하는 마스터 CAN 접속수단과 슬레이브로 동작하는 적어도 하나의 슬레이브 CAN 접속수단을 통하여, 복수개의 센서로부터 검출된 데이터를 하나의 CAN 메시지로 전송하는, 복수의 센서 데이터를 하나의 CAN 메시지로 전송하는 방법에 관한 것이다.
일반적으로 CAN(Controller Area Network)이란 분산된 실시간 제어 및 자동화에 많이 사용되는 시리얼 프로토콜로서, 원래 1980년대에 자동차용 네트워크 프로토콜로 개발되었지만, 성능이 우수하면서 비용이 저렴하여 ISO에 의해서 시리얼 통신 규약 ISO 11898 국제 표준으로 지정되어, 제조업, 항공, 철도 등의 여러 산업 분야에도 널리 이용되고 있다.
CAN은 CAN 메시지내의 식별자(ID)의 길이에 따라서 표준 CAN(11비트 ID), 확장 CAN(29비트 ID)로 구분되며, ISO 규격에 따라 ISO 11898(1Mbps 이상), ISO 11519(125Kbps 이하)로 구분된다.
도 1은 표준 CAN 메시지의 구조를 도시한다. 도 1을 참조하면, 표준 CAN 메시지는 프레임 시작 필드(SOF: Start Of Frame), 중재 필드(Arbitration Field), 제어 필드(Control Field), 데이터 필드(Data Field), CRC 필드(Cyclic Redundancy Check Field), ACK 필드(ACKnowledge Field), 프레임 종료 필드(EOF: End Of Frame Field)를 포함하여 구성된다.
프레임 시작(SOF) 필드는 메시지 프레임의 시작을 표시하며, 메시지 프레임의 맨 처음에 위치하고, 디폴트로 "0"의 값을 가진다.
중재 필드는 11 비트의 식별자와 원격 전송 요구(RTR: Remote Transmission Request) 비트를 가진다. RTR 비트가 "0"의 값(디폴트)을 가질 때, CAN 메시지가 데이터 프레임 상태임을 의미하고, RTR 비트가 "1"의 값을 가질 때, CAN 메시지가 원격 프레임(Remote Frame) 상태임을 의미한다.
원격 프레임은 데이터 버스상의 한 노드로부터 다른 노드로 데이터 전송을 요청할 때 사용되어지며, 데이터를 보내기 전에 사용되는 메시지 프레임이므로 데이터 필드를 포함하지 않는다.
제어 필드는 6비트로 구성되며, 향후 사용을 위해 예약된 R1, R2("0"의 값을 가짐)와 데이터 필드의 바이트 수를 가리키는 4비트의 데이터 길이 코드(DLC: Data Length Code)로 구성된다.
데이터 필드는 한 노드로부터 다른 노드로 전하고자 하는 데이터를 포함하며 0 내지 8바이트로 구성된다.
CRC 필드는 17비트의 주기적 중복 확인(CRC) 코드를 가지며, 데이터 필드의 끝을 알리는 "1"의 값을 가지는 비트가 이어진다.
ACK 필드는 2비트로 구성되며, 첫 번째 비트는 "0"의 값을 가지는 슬롯(Slot) 비트로서, 메시지를 성공적으로 수신한 다른 노드로부터 전송된 "1"의 값으로 기록될 수 있다. 두 번째 비트는 "1"의 값을 가진다.
프레임 종료(EOF) 필드는 7비트로 구성되며, 모두 "1"의 값을 가진다. EOF에 뒤이어 모두 "1"의 값을 가진 3비트의 프레임 중단 필드(INTermission Field)가 이어진다. 3비트의 INT 주기 이후에 CAN 버스는 자유 상태로 인식된다. 이후 버스 아이들 타임(Idle Time)은 "0"을 포함하는 임의의 길이를 갖는다.
상기의 표준 CAN 메시지는 CAN 기반의 제어 시스템에서 검출된 센서 데이터를 전송하기 위한 구조로서, 실제로 전송하고자 하는 데이터는 CAN 메시지의 데이터 필드(1byte ∼ 8byte)에 실리게 되고, CAN 메시지의 나머지 부분은 CAN 통신을 위한 오버헤드에 해당한다.
상기 표준 CAN은 다중 통신을 지원하며, CSMA/CD + AMP(Carrier Sense Multiple Access / Collision Detection with Arbitration on Message Priority) 방식을 이용한다. 표준 CAN의 각 노드의 데이터 메시지 항목에는 CAN에서 각각의 노드를 유일하게 식별할 수 있는 노드 식별자(11비트 ID 또는 29비트 ID)를 가지고 있으므로, 송신측 및 수신측 주소가 포함되지 않는다.
상기 표준 CAN의 동작을 간단히 설명하면, CAN 노드에 메시지를 보내기 전에 메시지 간 충돌 검출을 수행하여 CAN 버스가 사용 중인지를 파악한다.
CAN 노드들은 CAN 버스 상에 있는 메시지를 수신한 후 자신에게 필요한 메시지인지 식별자(ID)를 통하여 평가한 후 자신이 필요로 하는 식별자(ID)인 경우에만 메시지를 취하고 그렇지 않은 경우에 메시지를 무시한다.
CAN 버스 상에 흘러 다니는 여러 노드의 데이터들이 동시에 특정 노드로 유입되는 경우에 식별자(ID)의 숫자를 비교하여 메시지의 우선순위를 결정하는데 식별자(ID)의 숫자가 낮은 경우가 우선순위가 더 높다.
우선순위가 높은 메시지는 CAN 버스의 사용 권한을 보장 받으며, 낮은 순위의 메시지는 자동적으로 다음 버스 사이클에 재전송을 수행하며, 높은 순위를 가진 메시지가 전송을 완료할 때 까지 대기하게 된다.
CAN을 통하여 전송되는 데이터는 데이터양이 작은 센서, 예를 들면, ON/OFF 스위치의 경우와 같이 1bit밖에 필요하지 않는 복수개의 센서들에 의해 검출되는 데이터일 수 있다.
상기 센서들은 CAN을 통해 크게 2가지 방법으로 연결될 수 있다.
첫 번째 방법은 각각의 센서를 CAN에 직접 연결하는 방법이다. 이 방법은 구현이 간단하지만, 데이터 전송에 걸리는 시간이 많이 걸리는 단점이 있다. CAN의 경우 데이터를 패킷을 통해 전송하고, 한 비트의 데이터를 보내더라도 최소 8바이트의 패킷 오버헤드가 필요하게 된다.
예를 들어, 세 개의 센서에서 각각 2 비트의 데이터를 다른 CAN 보드에 보낸다고 하면, 24 바이트 (8 바이트 ㅧ 3 패킷)의 데이터를 전송하는 시간이 걸리게 된다. 그러나, 실제로 보내는 데이터의 양은 6 비트일 뿐이며, 이로 인한 전송시간 의 증가는 CAN을 이용한 제어 시스템의 제어주기를 길게 하게 함으로써, 전체적인 시스템의 제어 성능을 저하시키는 문제점을 초래하게 한다.
두 번째 방법은 상기에서와 같이 전송시간이 많이 걸리는 단점을 해소하기 위하여 센서를 직접 CAN에 연결하지 않고, 센서의 데이터를 한 개의 보드에 전선을 모아서 연결하고, 그 보드를 CAN에 연결하는 방법이다.
이 경우 센서의 데이터를 한 개의 패킷으로 모아서 보낼 수 있어 전송시간을 줄일 수 있게 된다. 그러나 이 방법은 한 개의 보드에 연결하고자 하는 센서들이 물리적으로 떨어져 있게 되고, 결과적으로 전선의 길이가 길어져, CAN을 사용하여 전선의 길이를 줄이고자 하는 본래의 목적에 반하는 문제점이 발생한다.
본 발명은 상기의 문제점을 해결하기 위하여 창출된 것으로서, 캔(CAN: Controller Area Network) 기반의 제어 시스템에서 마스트로 동작하는 마스터 CAN 접속수단과 슬레이브로 동작하는 적어도 하나의 슬레이브 CAN 접속수단을 통하여, 복수개의 센서로부터 검출된 데이터를 하나의 CAN 메시지로 전송할 수 있도록 개선된 복수의 센서 데이터를 하나의 CAN 메시지로 전송하는 방법을 제공하는 것을 그 목적으로 한다.
상기의 목적을 달성하기 위한 본 발명은, 마스트로 동작하는 마스터 CAN 접속수단과 슬레이브로 동작하는 적어도 하나의 슬레이브 CAN 접속수단을 통하여, 마스터 CAN 접속수단과 슬레이브 CAN 접속수단 각각에 연결된 센서로부터 검출된 데 이터를 하나의 CAN 메시지로 전송하는 방법에 있어서, (a) 리세시브 비트(recessive bit)를 전송한 후, 자신에 연결된 센서로부터 검출된 데이터를 전송하는 마스터 CAN 접속수단 동작단계; 및 (b) 상기 리세시브 비트 전송 구간 동안 자신에 연결된 센서로부터 검출된 데이터를 전송하는 슬레이브 CAN 접속수단 동작단계;를 포함하여 구성된다.
여기에서 상기 마스터 CAN 접속수단 동작단계는 (a1) 약속된 ID를 전송하는 단계; (a2) 상기 슬레이브 CAN 접속수단의 센서 데이터 구간 동안 리세시브 비트를 전송하는 단계; (a3) 자신에 연결된 센서로부터 검출된 데이터를 전송하는 단계;를 포함하고, 상기 슬레이브 CAN 접속수단 동작단계는 (b1) 상기 약속된 ID를 감지하는 단계; (b2) 상기 리세시브 비트 전송 구간 동안 자신에 연결된 센서로부터 검출된 데이터를 전송하는 단계를 포함하는 것이 바람직하다.
또한, 상기 마스터 CAN 접속수단 동작단계는 (a4) 상기 슬레이브 CAN 접속수단의 센서 데이터를 기록하는 단계; (a5) 상기 기록된 슬레이브 CAN 접속수단의 센서 데이터와 마스터 CAN 접속수단 센서 데이터를 포함하여 에러 검출 코드를 계산하여 전송하는 단계;를 더 포함하는 것이 바람직하다.
또한, 상기 CAN 메시지는 프레임 시작 필드(SOF: Start Of Frame), 중재 필드(Arbitration Field), 제어 필드(Control Field), 데이터 필드(Data Field), CRC 필드(Cyclic Redundancy Check Field), ACK 필드(ACKnowledge Field), 프레임 종료 필드(EOF: End Of Frame Field)를 포함하여 구성되고, 상기 데이터 필드는 상기 슬레이브 CAN 접속수단의 센서 데이터와 상기 마스터 CAN 접속수단의 센서 데이터를 포함하여 구성되는 것이 바람직하다.
또한, 상기 마스터 CAN 접속수단과 슬레이브 CAN 접속수단의 개수는 각각의 센서로부터 입력되는 데이터 비트의 합이 상기 CAN 메시지의 데이터 필드 비트수 보다 작은 범위 내에서 결정되는 것이 바람직하다.
이하 첨부된 도면을 참조하면서 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다.
도 2는 본 발명의 일실시예에 따른 복수의 센서 데이터를 하나의 CAN 메시지로 전송하는 방법을 실시하기 위한 CAN 기반의 제어 시스템의 개념 블록도이다. 도면을 참조하면, CAN 기반 제어 시스템은 세 개의 센서(110,210,310), 각 센서(110,210,310)에 연결되는 세 개의 CAN 접속수단(100,200,300), 각 CAN 접속수단(100,200,300)에 연결되는 CAN 버스(500)및 CAN 버스(500)에 연결되는 CAN 노드(400)를 포함하여 구성된다.
상기 센서(110,210,310)는 검출되는 데이터의 크기가 작은 센서인 것이 바람직하다. 예를 들면, 온(on) / 오프(off) 스위치 또는 수 비트의 정보량을 검출하는 센서일 수 있다.
상기 CAN 접속수단(100,200,300)은 센서(110,210,310)로부터 데이터를 입력받는 센서 인터페이스(102,202,302), 센서 인터페이스(102,202,302)로부터 전송되는 데이터를 패킷으로 구성하는 패킷 구성부(104,204,304) 및 패킷 구성부(104,204,304)로부터 전송되는 패킷을 CAN 버스(500)를 통하여 전송하는 트랜시버(tranceiver)(106,206,306)를 포함하여 구성될 수 있다.
상기 센서(110,210,310)와 센서(110,210,310)에 연결되는 CAN 접속수단(100,200,300)은 각각 세 개로 구성되는 상기 예시에 한정되지 아니하며, 세 개 이상으로 구성될 수 있다. 예를 들면, n 개의 센서로부터 입력되는 데이터 비트의 합이 CAN 메시지의 데이터 필드 비트수 보다 작은 범위 내에서 센서 및 센서에 대응하는 CAN 접속수단은 세 개 이상의 복수개로 구성될 수 있다.
복수개의 CAN 접속수단(100,200,300) 중 하나는 마스터(master)로 동작하고 그 나머지는 슬레이브(slave)로 동작하도록 구성되는 것이 바람직하다. 본 실시 예에서 마스트로 동작하는 CAN 접속수단은 제 1센서(110)에 접속되는 CAN 접속수단(100)으로 하고, 제2센서(210)와 제3센서(310)에 접속되는 CAN 접속수단(200,300)은 슬레이브로 동작하는 것으로 한다.
이하, CAN 기반 제어 시스템이 세 개의 센서(110,210,310)와 각 센서(110,210,310)에 대응되는 세 개의 CAN 접속수단(100,200,300)을 포함하는 경우를 예시하여 설명한다. 제 1센서(110)로부터 검출되는 데이터를 n1 비트, 제 2센서(210)로부터 검출되는 데이터를 n2 비트, 제 3센서(310)로부터 검출되는 데이터를 n3 비트라고 하면, n1 + n2 + n3 < 64비트(표준 CAN 메시지 구조에 데이터 필드 비트수)를 만족하는 것을 조건으로, 세 개의 센서(110,210,310)로부터 검출된 데이터는 본 발명의 일실시예에 따라 하나의 CAN 메시지로 구성되어 전송될 수 있다.
도 3은 본 발명의 일실시예에 따라 재구성된 하나의 CAN 메시지 구조를 도시한다. 도면을 참조하면, CAN 메시지의 데이터 필드는 세 개의 센서(110,210,310) 데이터가 합쳐져 재구성되는데, 여기에서, n1 비트는 마스트로 동작하는 CAN 접속 수단(100)의 제 1센서(110)로 부터 검출된 데이터이고, n2 비트와 n3 비트는 슬레이브로 동작하는 CAN 접속수단(200,300)의 제2센서(210)와 제3센서(310)로부터 검출되는 데이터이다.
상기 CAN 노드(400)는 CAN 기반 제어 시스템에서, 본 발명의 일실시예에 따라 마스터 CAN 접속수단(100)과 슬레이브 CAN 접속수단(200,300)을 통하여, 하나의 CAN 메시지로 전송되는 센서 데이터를 수신하는 곳으로 상정되는 임의의 노드이다.
상기 CAN 버스(500)는 확장 CAN(29비트 ID)를 지원하는 버스일 수 있으며, 바람직하게는 표준 CAN(11비트 ID)을 지원하는 버스일 수 있다. 이하 CAN 버스(500)는 표준 CAN을 지원하는 경우를 예시하여 설명한다.
상기에서 설명한 CAN 기반 제어 시스템을 통하여 복수의 센서 데이터를 하나의 CAN 메시지로 전송하는 방법을 좀 더 상세하게 설명한다.
도 4는 본 발명의 일실시예에 따른 복수의 센서 데이터를 하나의 CAN 메시지로 전송하기 위한 마스트 CAN 접속수단의 동작을 도시한 흐름도이다.
도면을 참조하면, 마스트 CAN 접속수단(100)의 패킷 구성부(104)는 먼저 CAN 버스(500)가 사용 중인지 확인(S100)하여, CAN 버스(500)가 사용 중이면 다시 CAN 버스(500)의 사용여부를 검토하는 단계(S100)로 천이되고, CAN 버스(500)가 사용 중이 아니면 프레임 시작(SOF) 필드를 전송(S102)함으로서 패킷의 전송을 시작한다.
그리고, 중재 필드(Arbitration Field) 값으로 미리 약속한 ID를 전송(S104)하고, 표준 CAN 메시지의 전송 우선순위에 따라서 다른 패킷과 우선순위를 비교 (S106)한다. 우선순위가 다른 패킷보다 낮으면 전송을 중단하고 다시 CAN 버스(500)의 사용여부를 검토하는 단계(S100)로 천이된다. 우선순위가 다른 패킷보다 높으면 제어 필드(Control Field)를 전송(S108)한다. 제어필드를 전송하는 단계까지의 단계(S100 내지 S108)는 표준 CAN 프로토콜과 동일한 방법으로 진행될 수 있다.
본 발명의 일실시예에 따른 복수의 센서 데이터를 하나의 CAN 메시지로 구성하여 전송하는 방법은 아래에서 설명할 데이터 필드(Data Field)의 전송단계(S110)에 핵심적인 특징이 있다.
마스터 CAN 접속 수단(100)의 패킷 구성부(S104)는 데이터 필드(Data Field)의 처음 n2 비트와 n3 비트 구간에서 리세시브 비트(recessive bit)를 전송한다. CAN 버스(500)상에서의 데이터의 상태는 리세시브 비트(recessive bit)와 도미넌트 비트(dominant bit)가 있는데, CAN 버스(500)상의 한 노드에서 리세시브 비트(recessive)를 출력하고 다른 노드에서 도미넌트 비트(dominant bit)를 출력하면 CAN 버스(500)의 상태는 도미넌트 비트(dominant bit)가 된다.
따라서, 마스터 CAN 접속수단(100)에서 n2 비트와 n3 비트 구간에서 리세시브 비트(recessive bit)를 전송하는 동안 슬레이브 CAN 접속수단(200,300)은 제2센서(210)와 제3센서(310)가 검출한 데이터를 전송할 수 있게 된다. 이 때, 마스터 CAN 접속수단(100)은 CRC(Cyclic Redundancy Code)계산 수행을 위하여 CAN 버스(500)상의 제2센서(210)와 제3센서(310)에서 검출된 데이터를 기록한다.
마스터 CAN 접속수단(100)의 패킷 구성부(104)는 n2 비트와 n3 비트 구간이 지나면, 제1센서(110)에서 검출된 데이터를 전송하고, 기록된 제2센서(210)와 제3센서(310)에서 검출된 데이터를 고려하여 CRC 필드의 CRC 값을 계산(S112)하여 전송함으로써, CAN 메시지의 수신측 노드(400)에서 CRC 에러가 발생하지 않도록 한다.
이어서 표준 CAN 프로토콜에 따라서, ACK 필드, 프레임 종료 필드(End of Frame Field)를 순차적으로 전송(S114)한다.
도 5는 본 발명의 일실시예에 따른 복수의 센서 데이터를 하나의 CAN 메시지로 생성하기 위한 슬레이브 CAN 접속장치의 동작을 도시한 흐름도이다.
도면을 참조하면, 슬레이브 CAN 접속 수단(200,300)의 패킷 구성부(204,304)는 CAN 버스(500)를 계속 감시(S200)하다가 약속된 ID를 가지는 CAN 메시지가 감지되면, 약속된 데이터 필드(Data Field)의 위치까지 기다린 후(S202), 자기 자신의 데이터 즉 센서(210,310)에서 검출된 데이터를 전송(S204)한다.
상기 도 4에서 설명한 바와 같이 마스터 CAN 접속수단이 동작하고, 도 5에서 설명한 바와 같이 슬레이브 CAN 접속수단이 동작하면 세 개의 센서에서 검출된 데이터가 도 3에서 설명한 바와 같이 하나의 CAN 메시지로 구성되어 전송될 수 있다.
다시 설명하면, 도 3에서 도시된 CAN 메시지의 프레임 시작(SOF) 필드와 중재 필드(Arbitration Field), 제어 필드(Control Field)는 마스터 CAN 접속수단(100)에 의해서 전송되고, 데이터 필드(Data Field)의 n2 비트는 제2센서(210)에 접속된 슬레이브 CAN 접속수단(200)에 의해서 전송되고, 그 다음 n3 비트는 제3센서(310)에 접속된 슬레이브 CAN 접속수단(300)에 의해서 전송된 후, CRC 필드, ACK 필드 및 프레임 종료 필드(End of Frame Field)의 데이터는 다시 마스터로 동작하는 CAN 접속수단(100)에 의해서 전송되게 된다.
상술한 바와 같이 본 발명의 복수의 센서 데이터를 하나의 CAN 메시지로 전송하는 방법은, 기존의 캔(CAN: Controller Area Network) 기반의 제어 시스템에 전혀 영향을 주지 않으면서, 복수개의 센서로부터 검출된 데이터를 하나의 CAN 메시지로 전송할 수 있게 함으로써, 검출된 복수의 센서 데이터를 짧은 시간에 신뢰성 있게 전송하게 하는 효과를 제공한다.
본 발명은 상기에 설명되고 도면에 예시된 것에 의해 한정되는 것은 아니며 다음에 기재되는 청구의 범위 내에서 더 많은 변형 및 변용예가 가능한 것임은 물론이다.

Claims (5)

  1. 마스트로 동작하는 마스터 CAN 접속수단과 슬레이브로 동작하는 적어도 하나의 슬레이브 CAN 접속수단을 통하여, 마스터 CAN 접속수단과 슬레이브 CAN 접속수단 각각에 연결된 센서로부터 검출된 데이터를 하나의 CAN 메시지로 전송하는 방법에 있어서,
    (a) 리세시브 비트(recessive bit)를 전송한 후, 자신에 연결된 센서로부터 검출된 데이터를 전송하는 마스터 CAN 접속수단 동작단계; 및
    (b) 상기 리세시브 비트 전송 구간 동안 자신에 연결된 센서로부터 검출된 데이터를 전송하는 슬레이브 CAN 접속수단 동작단계;
    를 포함하여 구성되는 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법.
  2. 제1항에 있어서,
    상기 마스터 CAN 접속수단 동작단계는
    (a1) 약속된 ID를 전송하는 단계;
    (a2) 상기 슬레이브 CAN 접속수단의 센서 데이터 구간 동안 리세시브 비트를 전송하는 단계;
    (a3) 자신에 연결된 센서로부터 검출된 데이터를 전송하는 단계;를 포함하고,
    상기 슬레이브 CAN 접속수단 동작단계는
    (b1) 상기 약속된 ID를 감지하는 단계;
    (b2) 상기 리세시브 비트 전송 구간 동안 자신에 연결된 센서로부터 검출된 데이터를 전송하는 단계를 포함하는 것을 특징으로 하는 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법.
  3. 제2항에 있어서,
    상기 마스터 CAN 접속수단 동작단계는
    (a4) 상기 슬레이브 CAN 접속수단의 센서 데이터를 기록하는 단계;
    (a5) 상기 기록된 슬레이브 CAN 접속수단의 센서 데이터와 마스터 CAN 접속수단 센서 데이터를 포함하여 에러 검출 코드를 계산하여 전송하는 단계;를 더 포함하는 것을 특징으로 하는 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법.
  4. 제1항 내지 제3항의 어느 한 항에 있어서,
    상기 CAN 메시지는 프레임 시작 필드(SOF: Start Of Frame), 중재 필드(Arbitration Field), 제어 필드(Control Field), 데이터 필드(Data Field), CRC 필드(Cyclic Redundancy Check Field), ACK 필드(ACKnowledge Field), 프레임 종료 필드(EOF: End Of Frame Field)를 포함하여 구성되고,
    상기 데이터 필드는 상기 슬레이브 CAN 접속수단의 센서 데이터와 상기 마스 터 CAN 접속수단의 센서 데이터를 포함하여 구성되는 것을 특징으로 하는 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법.
  5. 제4항에 있어서,
    상기 마스터 CAN 접속수단과 슬레이브 CAN 접속수단의 개수는 각각의 센서로부터 입력되는 데이터 비트의 합이 상기 CAN 메시지의 데이터 필드 비트수 보다 작은 범위 내에서 결정되는 것을 특징으로 하는 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법.
KR1020040065538A 2004-08-19 2004-08-19 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법 KR100609493B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040065538A KR100609493B1 (ko) 2004-08-19 2004-08-19 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040065538A KR100609493B1 (ko) 2004-08-19 2004-08-19 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법

Publications (2)

Publication Number Publication Date
KR20060017035A KR20060017035A (ko) 2006-02-23
KR100609493B1 true KR100609493B1 (ko) 2006-08-08

Family

ID=37125175

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040065538A KR100609493B1 (ko) 2004-08-19 2004-08-19 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법

Country Status (1)

Country Link
KR (1) KR100609493B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140029431A (ko) * 2011-04-06 2014-03-10 로베르트 보쉬 게엠베하 직렬 버스 시스템에서 데이터 전송 보안의 조정 방법 및 장치
KR20140029432A (ko) * 2011-04-06 2014-03-10 로베르트 보쉬 게엠베하 직렬 버스 시스템에서 데이터 전송 용량을 증대하기 위한 방법 및 장치

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010041223A1 (de) * 2010-09-22 2012-03-22 Robert Bosch Gmbh Verfahren und Vorrichtung zur seriellen Datenübertragung mit umschaltbarer Datenrate
KR101221829B1 (ko) * 2011-04-22 2013-01-15 한국기계연구원 알에스 485 시리얼 통신 방식의 공작기계 감시 시스템
KR102256670B1 (ko) * 2019-11-06 2021-05-27 (주)로보티즈 효율적인 통신 버스 중재 시스템 및 방법
KR102535563B1 (ko) 2021-03-05 2023-05-26 숭실대학교 산학협력단 Can 버스를 이용한 다중 uart 통신 방법, 이를 수행하기 위한 기록 매체 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5854454A (en) 1996-09-16 1998-12-29 Otis Elevator Company Message routing in control area network (CAN) protocol
US6363083B1 (en) 1999-03-12 2002-03-26 Otis Elevator Company Bilevel node identifiers in control area network (CAN) protocol

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5854454A (en) 1996-09-16 1998-12-29 Otis Elevator Company Message routing in control area network (CAN) protocol
US6363083B1 (en) 1999-03-12 2002-03-26 Otis Elevator Company Bilevel node identifiers in control area network (CAN) protocol

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140029431A (ko) * 2011-04-06 2014-03-10 로베르트 보쉬 게엠베하 직렬 버스 시스템에서 데이터 전송 보안의 조정 방법 및 장치
KR20140029432A (ko) * 2011-04-06 2014-03-10 로베르트 보쉬 게엠베하 직렬 버스 시스템에서 데이터 전송 용량을 증대하기 위한 방법 및 장치
KR20140029433A (ko) * 2011-04-06 2014-03-10 로베르트 보쉬 게엠베하 직렬 버스 시스템에서 데이터 전송 용량을 증대하기 위한 방법 및 장치
KR20140030178A (ko) * 2011-04-06 2014-03-11 로베르트 보쉬 게엠베하 직렬 버스 시스템에서 데이터 전송 보안의 조정 방법 및 장치
KR101876602B1 (ko) * 2011-04-06 2018-07-09 로베르트 보쉬 게엠베하 직렬 버스 시스템에서 데이터 전송 보안의 조정 방법 및 장치
KR101921357B1 (ko) 2011-04-06 2018-11-22 로베르트 보쉬 게엠베하 직렬 버스 시스템에서 데이터 전송 용량을 증대하기 위한 방법 및 장치
KR101921771B1 (ko) 2011-04-06 2018-11-23 로베르트 보쉬 게엠베하 직렬 버스 시스템에서 데이터 전송 보안의 조정 방법 및 장치
KR101932787B1 (ko) 2011-04-06 2019-03-15 로베르트 보쉬 게엠베하 직렬 버스 시스템에서 데이터 전송 용량을 증대하기 위한 방법 및 장치

Also Published As

Publication number Publication date
KR20060017035A (ko) 2006-02-23

Similar Documents

Publication Publication Date Title
US6266334B1 (en) Method for optimizing acknowledge packet rate
US8509257B2 (en) CAN node, and communication method of communication system including CAN node
US6754184B2 (en) Information processing apparatus and method, and distribution medium
US6741566B1 (en) Remote management ethernet network and device
US20030179719A1 (en) Method and apparatus for transmitting packets at a transfer rate that depends on a response from a destination
US7389469B2 (en) Bus systems, apparatuses, and methods of operating a bus
JP2003174486A (ja) 情報通信装置、情報通信方法および情報通信処理プログラム
US20020061025A1 (en) Data transmitting and receiving apparatus and data transmitting and receiving method
KR100609493B1 (ko) 복수의 센서 데이터를 하나의 캔 메시지로 전송하는 방법
KR100775516B1 (ko) 플렉스레이와 캔의 제어 시스템 및 그 제어 방법
JP2021534672A (ja) フレームシールドユニット、シリアルバスシステムの加入局、およびシリアルバスシステムにおける通信方法
Hasnaoui et al. An implementation of a proposed modification of CAN protocol on CAN fieldbus controller component for supporting a dynamic priority policy
US20060248249A1 (en) Systems and methods for multiple input instrumentation buses
KR100583811B1 (ko) 휴머노이드 로봇에 대한 캔 메시지의 식별자 인가방법 및캔 메시지의 전송 중재 방법
EP1758306B1 (en) Method and device for transmitting a control signal of a resilient packet ring media access control
US7801053B2 (en) Method for setting consistent values for a parameter in a network of distributed stations, as well as a network subscriber station for carrying out the method
US6996124B1 (en) Mechanism to strip LARQ header and regenerate FCS to support sleep mode wake up
US11831466B2 (en) User station for a serial bus system, and method for transmitting a message in a serial bus system
CN110855540B (zh) 一种基于单环网的485多主通信方法和系统
KR101601303B1 (ko) 이종 프로토콜 메시지 중개 방법
KR100226781B1 (ko) 노드(node)인식(recognition)방법
JP2002111698A (ja) データ転送装置、ネットワークシステム及びデータ転送方法
JP2836603B2 (ja) ローカルエリアネットワーク
Kim et al. Communication using controller area network protocol
KR100320739B1 (ko) 원거리 접속용 아이 트리플 이 1394 시스템 및 그 구성 방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee