KR20210085526A - 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법 - Google Patents

시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법 Download PDF

Info

Publication number
KR20210085526A
KR20210085526A KR1020190178640A KR20190178640A KR20210085526A KR 20210085526 A KR20210085526 A KR 20210085526A KR 1020190178640 A KR1020190178640 A KR 1020190178640A KR 20190178640 A KR20190178640 A KR 20190178640A KR 20210085526 A KR20210085526 A KR 20210085526A
Authority
KR
South Korea
Prior art keywords
address
address setting
main module
module
pulse signals
Prior art date
Application number
KR1020190178640A
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 KR1020190178640A priority Critical patent/KR20210085526A/ko
Publication of KR20210085526A publication Critical patent/KR20210085526A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0813Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • 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/40052High-speed IEEE 1394 serial bus
    • H04L12/40123Interconnection of computers and peripherals
    • 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
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

본 발명의 실시예에 따른 시리얼 통신을 이용하는 제어 시스템은 주소 설정 라인을 통해 복수의 개별 모듈을 메인 모듈로부터 직렬로 연결시키고; 상기 메인 모듈이 기 설정된 설정 주기 내에 i 개의 펄스 신호를 상기 주소 설정 라인을 통해 복수의 상기 개별 모듈 중 첫번째 개별 모듈로 전송하고; 각각의 상기 개별 모듈이 상기 주소 설정 라인의 전단에서 상기 설정 주기 내에 j 개의 펄스 신호가 수신되면, j+k 개의 펄스 신호를 상기 설정 주기 내에 상기 주소 설정 라인의 후단으로 전송하며, 각각의 상기 개별 모듈은 상기 주소 설정 라인의 전단에서 수신되는 상기 설정 주기 내의 상기 펄스 신호의 갯수에 기초하여, 상기 메인 모듈과의 통신을 위한 주소를 등록할 수 있다.
이를 통해, 별도의 통신 채널을 사용하거나 슬롯형 PCB나 기판없이, 일반적인 GPIO 포트를 이용하여 개별 모듈의 주소를 자동으로 설정하여, 제조비용을 절감하면서도 개별 모듈의 사이즈를 줄일 수 있다.

Description

시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법{CONTROL SYSTEM USING SERIAL COMMUNICATION AND METHOD FOR AUTOMATICALLY SETTING ADDRESS THEREOF}
본 발명은 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법에 관한 것으로서, 보다 상세하게는, 연료전지 발전 시스템과 같이 메인 모듈과 복수의 개별 모듈이 시리얼 통신을 통해 통신하는 제어 시스템에서 각각의 개별 모듈의 주소를 자동으로 설정하는 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법에 관한 것이다.
연료전지 발전 시스템과 같이 시스템 내부 제어, 계측 항목이 많은 제어 시스템은 제어, 계측 특성에 맞는 개별 모듈들의 조합으로 제어를 함으로써, 제어 시스템의 설치 면적을 줄이고, 설비 및 서비스 성능을 개선해오고 있다.
이 때, 복수의 개별 모듈은 메인 모듈과 시리얼 통신(Serial communication)을 통해 통신을 하는데, 시리얼 통신의 특성 상 각각의 개별 모듈은 고유한 주소가 설정되어 메인 모듈과의 통신이 수행된다.
도 1은 종래의 시리얼 통신을 이용하는 제어 시스템의 주소 설정 방법의 한 예를 설명하기 위한 도면으로, 개별 모듈(200)의 주소 설정을 위해 별도의 통신 채널을 이용하는 방법을 나타내고 있다.
도 1에 도시된 바와 같이, 개별 모듈(200)의 주소 설정을 위해 별도의 통신 채널을 사용하게 되면, 개별 모듈(200)에 설치되는 마이컴과 같은 프로세서에 별도의 통신 포트를 할당해 주어야 한다.
그런데, 메인 모듈(100)과 같이 고속, 대용량 메모리가 필요한 제어기에 적용되는 마이컴의 경우 통상 16비트 또는 32 비트 이상의 마이컴이나 CPU를 적용하기 때문에 개별 모듈(200)의 주소 설정을 위해 별도의 통신 포트를 할당할 수 있는 여분의 포트가 존재할 수 있다.
하지만, 개별 모듈(200)의 경우, 각각의 기능들이 단순하여 통상 8비트 정도의 핀 갯수가 적은 마이컴을 사용하는데, 이러한 스펙의 마이컴은 통신 채널을 2~3개 정도 지원하고 있다. 결론적으로 개별 모듈(200)은 주소 설정을 위한 별도의 통신 포트를 할당할 수 있는 여유가 없기 때문에, 도 1에 도시된 바와 같은, 주소 설정을 위해 별도의 통신 포트를 사용하는 경우, 개별 모듈(200)에 사용될 프로세서의 스펙을 불필요하게 올려야하는 문제점이 있다.
메인 모듈(100a)와 개별 모듈(200a)의 주소 설정을 위한 다른 방법으로, 도 2에 도시된 바와 같이, 슬롯형 PCB나 기판(300a)을 적용하는 방법이 제안되고 있다. 그러나, 슬롯형 PCB나 기판(300a) 자체가 고가의 제품이여서 재료비를 증가시키는 요인으로 작용할 뿐만 아니라, 슬롯(310a,320a) 갯수가 정해져 있어, 개별 모듈(200a)의 확정이나 축소에 제약이 발생하게 된다.
마지막으로, 도 3에 도시된 바와 같이, CAN 통신을 이용하여 개별 모듈(200b)의 주소를 설정하는 방법이 고려될 수 있으나, 메인 모듈(100b)의 메인 마이컴(110b) 외에 CAN 통신을 위한 메인 CAN 컨틀롤러(120b)와 메인 CAN 트랜시버(130b)를 설치하여야 한다. 마찬가지로, 개별 모듈(200b)에도 모듈 마이컴(210b) 외에 모듈 CAN 컨틀롤러(220b)와 모듈 CAN 트랜시버(230b)를 설치하여야 하는데, 이는 개별 모듈(200b)에 설치되는 모듈 마이컴(210b)의 비용보다 더 큰 비용이 소요될 수 있으며, 개별 모듈(200b)의 사이즈 또한 증가시키는 요인으로 작용하게 된다.
본 발명은 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법에 있어, 별도의 통신 채널을 사용하거나 별도의 슬롯을 사용하지 않고, 비통신 방식으로 개별 모듈의 주소를 자동으로 설정할 수 있는 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법을 제공하는데 그 목적이 있다.
본 발명은 개별 모듈을 확정하거나 축소하더라도 별도의 장비 추가 없이 자동으로 주소의 재설정이 가능한 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법을 제공하는데 또 다른 목적이 있다.
본 발명은 개별 모듈 내부의 타이머 오차, 인터럽트 에지 인식 비동기 등에 의한 오류에도 강인한 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법을 제공하는데 또 다른 목적이 있다.
본 발명의 실시예에 따른 시리얼 통신을 이용하는 제어 시스템에 있어서는 주소 설정 라인을 통해 복수의 개별 모듈을 메인 모듈로부터 직렬로 연결시키고; 상기 메인 모듈이 기 설정된 설정 주기 내에 i 개의 펄스 신호를 상기 주소 설정 라인을 통해 복수의 상기 개별 모듈 중 첫번째 개별 모듈로 전송하고; 각각의 상기 개별 모듈이 상기 주소 설정 라인의 전단에서 상기 설정 주기 내에 j 개의 펄스 신호가 수신되면, j+k 개의 펄스 신호를 상기 설정 주기 내에 상기 주소 설정 라인의 후단으로 전송하며, 각각의 상기 개별 모듈은 상기 주소 설정 라인의 전단에서 수신되는 상기 설정 주기 내의 상기 펄스 신호의 갯수에 기초하여, 상기 메인 모듈과의 통신을 위한 주소를 등록할 수 있다.
상기 메인 모듈은 기 설정된 주소 설정 시간 동안 상기 설정 주기마다 i개의 상기 펄스 신호를 전송하고, 각각의 상기 개별 모듈은 연속적으로 M회의 설정 주기 동안 카운팅된 펄스 신호의 갯수가 동일할 때 메인 모듈과의 통신을 위한 주소를 등록할 수 있다.
상기 메인 모듈은 주소 설정 시간이 경과되면, 각각의 주소로 모듈 정보 요청 신호를 전송하게 되고, 각각 상기 개별 모듈은 모듈 정보 요청 신호에 대한 응답으로 자신의 모듈 정보와 주소를 메인 모듈로 전송하여, 상기 메인 모듈이 각각의 상기 개별 모듈의 유형 등과 주소를 확인 가능하게 된다.
각각의 상기 개별 모듈은 개별 프로세서와, 버스 커넥터를 포함하며, 상기 주소 설정 라인은 상기 버스 커넥터의 입력용 GPIO 포트와 출력용 GPIO 포트를 통해 연결되고, 상기 입력용 GPIO 포트와 상기 출력용 GPIO 포트는 내부에서 직렬로 연결되어, 상기 메인 모듈과 복수의 상기 개별 모듈을 직렬로 연결시킬 수 있다.
상기 메인 모듈은 0.5초 ~ 2초 사이를 설정 주기로 설정하고, 10ms 폭과 50%dml 듀티비를 갖는 펄스 신호를 설정 주기에 한개를 전송하도록 마련되며, 상기 개별 모듈은 수신된 펄스 신호에 1을 더하여 출력할 수 있다.
본 발명의 실시예에 따른 시리얼 통신을 이용하는 제어 시스템의 자동 주소 설정 방법에 있어서는 복수의 개별 모듈을 메인 모듈로부터 직렬로 주소 설정 라인을 통해 연결하는 연결 단계, 상기 메인 모듈로부터 기 설정된 설정 주기 내에 기 설정된 기준 갯수의 펄스 신호가 상기 주소 설정 라인을 통해 복수의 상기 개별 모듈 중 첫번째 개별 모듈로 전송되는 전송 단계, 및 각각의 상기 개별 모듈이 상기 메인 모듈과의 통신을 위한 주소를 등록하는 주소 등록 단계를 포함하며; 상기 주소 등록 단계는 상기 주소 설정 라인의 전단에서 상기 설정 주기 내에 수신되는 펄스 신호를 카운팅하는 카운팅 단계, 상기 카운팅 단계에서 카운팅된 펄스 신호의 갯수에 기 설정된 추가값을 더한 갯수의 펄스 신호를 상기 설정 주기 내에 상기 주소 설정 라인의 후단으로 전송하는 재전송 단계, 및 상기 카운팅 단계에서 카운팅된 펄스 신호의 갯수에 기초하여, 상기 메인 모듈과의 통신을 위한 주소를 등록하는 주소 등록 단계를 포함할 수 있다.
본 발명에 따른 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법은 다음과 같은 효과가 하나 혹은 그 이상이 있다.
첫째, 별도의 통신 채널을 사용하거나 슬롯형 PCB나 기판없이, 일반적인 GPIO 포트를 이용하여 개별 모듈의 주소를 자동으로 설정하여, 제조비용을 절감하면서도 개별 모듈의 사이즈를 줄일 수 있는 효과가 제공된다.
둘째, 개별 모듈을 확장하거나 축소하는데 있어, 별도의 장비 추가없이 주소 재설정을 통해 개별 모듈의 주소를 설정할 수 있는 효과가 제공된다.
셋째, 본 발명은 개별 모듈 내부의 타이머 오차, 인터럽트 에지 인식 비동기 등에 의한 오류가 발생하더라도, 설정 주기 단위로 카운팅된 펄스 신호의 갯수가 M회 이상 연속적으로 동일할 때만 주소가 설정되도록 함으로써, 자체 오류에도 강인한 주소 설정을 제공할 수 있는 효과가 제공된다.
도 1 및 도 3은 종래의 시리얼 통신을 이용하는 제어 시스템의 주소 설정 방법의 한 예들을 설명하기 위한 도면이다.
도 4는 본 발명의 실시예에 따른 시리얼 통신을 이용한 제어 시스템의 구성을 나타낸 도면이다.
도 5는 본 발명의 실시예에 따른 시리얼 통신을 이용한 제어 시스템의 주소 설정 방법의 개념을 설정하기 위한 도면이다.
도 6은 본 발명의 실시예에 따른 시리얼 통신을 이용한 제어 시스템의 개별 모듈의 구성의 예를 나타낸 도면이다.
도 7은 본 발명의 실시예에 따른 시리얼 통신을 이용한 제어 시스템의 자동 주소 설정 방법의 제어 흐름도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하 첨부된 도면을 참조하여 본 발명의 실시예에 대해 구체적으로 설명한다.
도 4는 본 발명의 실시예에 따른 시리얼 통신을 이용한 제어 시스템의 구성을 나타낸 도면이다.
도 4를 참조하여 설명하면, 본 발명의 실시예에 따른 시리얼 통신을 이용한 제어 시스템은 메인 모듈(10)과, 복수의 개별 모듈(20), 및 주소 설정 라인(S)을 포함한다.
메인 모듈(10)은 각각의 개별 모듈(20)들과 시리얼 통신을 통해 통신하는데, 본 발명에서는 RS-485 통신 방식이 적용되는 것을 예로 하나, 본 발명의 기술적 사상이 이에 국한되지 않음은 물론이다.
각각의 개별 모듈(20)은 메인 모듈(10)과 시리얼 통신을 통해 통신하며, 계측된 정보를 전송하거나, 메인 모듈(10)의 제어에 따른 개별 동작을 수행한다. 본 발명에 따른 제어 시스템이 연료전지 발전 시스템에 적용되는 경우, 개별 모듈(20)은 각 위치의 온도 센서들, 각 위치의 밸브, 각 위치의 압력 센서 등을 포함할 수 있으며, 메인 모듈(10)은 이들을 제어하는 제어기(또는 서브 제어기)를 포함할 수 있다.
주소 설정 라인(S)은 복수의 개별 모듈(20)을 메인 모듈(10)로부터 직렬로 연결시킨다. 즉, 주소 설정 라인(S)은 메인 모듈(10), 개별 모듈(20) #1, 개별 모듈(20) #2, 개별모듈 #3, …, 개별 모듈(20) #N의 순으로 메인 모듈(10)과, 복수의 개별 모듈(20)을 직렬로 순차적으로 연결시킨다. 여기서, 본 발명에 따른 주소 설정 라인(S)은 통신 채널이 아닌 GPIO(General purpose input/output) 라인이 적용되는 것을 예로 한다.
상기와 같은 구성에 따라, 메인 모듈(10)이 복수의 개별 모듈(20)의 주소를 주소 설정 라인(S)을 통해 설정하는 방법에 대해 설명하면 다음과 같다.
먼저, 메인 모듈(10)은 기 설정된 설정 주기 내에서 i 개의 펄스 신호를 주소 설정 라인(S)을 통해 복수의 개별 모듈(20) 중 첫번재 개별 모듈(20), 즉 개별 모듈(20) #1로 전송한다. 본 발명의 실시예에서는 설정 주기를 1초로 하고, 도 6에 도시된 바와 같이, 메인 모듈(10)이 설정 주기인 1초 동안 1개의 펄스 신호를 개별 모듈(20) #1에 전송하는 것을 예로 하여 설명한다.
본 발명에서는 펄스 신호가 10ms의 폭과 50% 듀티비를 갖는 것을 예로 하고 있으나, 이에 국한되지 않으며, 상술한 설정 주기 또한 0.5 ~ 2초 사이의 값을 갖도록 설정 가능함은 물론이다.
개별 모듈(20)은 주소 설정 라인(S)의 전단에서 설정 주기 내에 j개의 펄스 신호가 수신되면, j+k개의 펄스 신호를 설정 주기 내에 주소 설정 라인(S)의 후단으로 전송한다.
예를 들어, 상술한 바와 같이, 메인 모듈(10)이 설정 주기인 1초에 1개의 펄스 신호를 개별 모듈(20) #1에 전송하고, 개별 모듈(20) #1이 1초 동안 1개의 펄스 신호를 감지하게 되면, 1+1(k=1인 경우), 즉 2개의 펄스 신호를 설정 주기인 1초 내에서 주소 설정 라인(S)의 후단으로 전송하게 되어, 개별 모듈(20) #2는 설정 주기인 1초 동안 2개의 펄스 신호를 수신하게 된다.
마찬가지로, 개별 모듈(20) #2는 설정 주기인 1초 동안 2개의 펄스 신호가 수신된 상태가 되고, 2+1(k=1인 경우)개의 펄스 신호를 설정 주기인 1초 내에서 주소 설정 라인(S)의 후단으로 전송하게 되어, 개별 모듈(20) #3은 설중 주기인 1초 동안 3개의 펄스 신호를 수신하게 된다.
상기와 같은 과정을 통해, 주소 설정 라인(S)의 최 말단의 개별 모듈(20) #N은 1초 동안 N개의 펄스 신호를 수신하게 된다.
이 때, 각각의 주소 설정 라인(S)의 전단에서 수신되는 설정 주기 내의 펄스 신호의 갯수에 기초하여, 메인 모듈(10)과의 통신을 위한 주소를 등록하게 된다. 본 발명에서는 개별 모듈(20) 자신이 수신한 펄스 신호의 갯수를 자신의 주소로 등록하는 것을 예로 하는데, 이에 국한되지 않고, 주소 설정을 0번부터 설정하고자 하는 경우, 펄스 갯수에서 1을 뺀 숫자를 주소로 설정할 수도 있다.
상기와 같은 과정을 통해, 별도의 통신 채널을 사용하거나 슬롯형 PCB나 기판을 사용하지 않고, 메인 모듈(10)과 복수의 개별 모듈(20)을 직렬로 연결시키는 주소 설정 라인(S), 예를 들어, GPIO 포트를 이용하여 개별 모듈(20)의 주소를 펄스 신호의 갯수를 통해 자동으로 설정하여, 제조 비용을 절감하면서도 개별 모듈(20)의 사이즈를 줄일 수 있는 효과가 제공된다.
도 6은 본 발명의 실시예에 따른 시리얼 통신을 이용한 제어 시스템의 개별 모듈(20)의 구성의 예를 나타낸 도면이다.
도 6을 참조하여 설명하면, 개별 모듈(20)은 개별 프로세서(21)와, 버스 커넥터(22)를 포함할 수 있다.
개별 프로세서(21)는 마이컴 형태로 마련될 수 있으며, 도 6에 도시된 실시예에서는 8 비트의 마이컴이 적용된 예를 나타내고 있다. 여기서, 개별 프로세서(21)에는 메인 모듈(10)과의 시리얼 통신을 위한 복수의 통신 포트, 입력용 GPIO 포트, 출력용 GPIO 포트가 할당될 수 있는데, 2~3개의 포트, 예를 들어 1c, 2c, 3c가 통신 포트로 할당될 수 있고, 7c가 입력용 GPIO 포트, 8c가 출력용 GPIO 포트로 할당될 수 있다.
버스 커넥터(22)는 메인 모듈(10)과의 시리얼 통신을 위해 개별 프로세서(21)의 통신 포트와 연결되는 복수의 통신 라인, 전단의 주소 설정 라인(S)과 개별 프로세서(21)의 입력용 GPIO 포트를 연결하기 위한 GPIO 입력 라인, 후단의 주소 설정 라인(S)과 개별 프로세서(21)의 출력용 GPIO 포트를 연결하는 GPIO 출력 라인을 포함할 수 있는데, 2~2개의 라인, 예를 들어, 1a-1b, 2a-2b, 3a-3b가 통신 라인으로 할당되고, 7a-7b가 GPIO 입력 라인, 8a-8b가 GPIO 출력 라인으로 할당될 수 있다.
여기서, GPIO 입력 라인과 GPIO 출력 라인은 버스 커넥터(22) 내부에서 직렬로 연결되어, 서로 인접한 개별 모듈(20)들을 연결하는 주소 설정 라인(S)을 직렬로 연결하는 구성을 갖게 된다. 즉, GPIO 입력 라인과 GPIO 출력 라인은 시리얼 통신을 위해 병렬 연결되는 구성을 가지나, GPIO 입력 라인과 GPIO 출력 라인은 직렬 연결되어, GPIO 입력 라인과 GPIO 출력 라인이 메인 모듈(10)과 복수의 개별 모듈(20)을 직렬 연결시키는 주소 설정 라인(S)을 형성하게 된다.
한편, 본 발명의 실시예에 따른 메인 모듈(10)은 기 설정된 주소 설정 시간동안 설정 주기마다 i 개의 펄스 신호를 주소 설정 라인(S)을 통해 전송할 수 있다. 예를 들어, 주소 설정 시간을 30초로 설정하고, 설정 주기와 펄스 신호의 갯수를 상술한 바와 같이, 1초, 1개로 설정하는 경우, 30초 간 매초마다 1개의 펄스 신호를 주소 설정 라인(S)을 통해 전송할 수 있다.
그리고, 각각의 개별 모듈(20)은 주소 설정 라인(S)의 전단에서 수신되는 펄스 신호의 갯수를 설정 주기인 1초 마다 카운팅하고, 카운팅된 펄스 신호의 갯수가 연속적으로 M회, 예를 들어 3회 동일한 경우, 메인 모듈(10)과의 통신을 위한 주소로 등록할 수 있다.
이를 통해, 개별 모듈(20) 내부의 타이머 오차, 인터럽트 에지 인식 비동기 등에 의한 오류가 발생하더라도, 설정 주기 단위로 카운팅된 펄스 신호의 갯수가 M회 이상 연속적으로 동일할 때만 주소가 설정되도록 함으로써, 자체 오류에도 강인한 주소 설정이 가능하게 된다.
도 7은 본 발명의 실시예에 따른 시리얼 통신을 이용한 제어 시스템의 자동 주소 설정 방법의 제어 흐름도이다. 도 7을 참조하여 설명하면, 개별 모듈(20)의 개별 프로세서(21)는 외부 인터럽트를 활성화하고(S10), 전단의 주소 설정 라인(S)으로부터 펄스 신호가 수신되는지 여부를 검출한다(S11).
펄스 신호가 수신되면, 개별 프로세서(21)는 외부 인터럽트를 이용하여 펄스 신호의 라이징 에지(Rising edge)를 검출하는 방법으로 펄스 신호의 갯수를 카운팅한다. 이 때, 개별 프로세서(21)는 설정 주기, 예컨대 상술한 1초가 경과될 때까지(S13)의 펄스 신호의 갯수를 카운팅한다.
그리고, 설정 주기가 경과되면, 개별 프로세서(21)는 카운팅 값, 즉 펄스 신호의 개수를 저장하고(S14), 이전 설정 주기에서의 카운팅 값과 동일한지 여부를 판단한다(S15). 여기서, 이전 설정 주기의 값과 동일한 경우, M회, 예컨대, 상술한 바와 같이, 3회의 설정 주기 동안 동일했는지 여부를 판단하고(S16), 동일한 경우, 카운팅된 값에 해당하는 주소를 등록하게 된다(S17).
반면, S16 단계에서 M회 이내인 경우, S12 단계 내지 S15 단계를 M 회까지 반복 수행하면서, 이전 카운팅 값과 동일한지 여부를 판단하여, 주소 등록 여부를 결정하게 된다.
S15 단계에서, 이전 카운팅 값과 현재 카운팅 값이 다른 것으로 판단하게 되면, 개별 프로세서(21)는 카운팅된 값을 초기화하고(S18), 다음 설정 주기에 대한 펄스 카운팅을 시작하게 되며, 상기와 같은 과정은 주소 설정 시간, 예컨대, 상술한 바와 같이 30초 동안 수행되면서, 연속된 M가 동일할 때 해당 카운팅 값, 즉 펄스 신호의 갯수에 따른 주소 등록이 이루어진다.
여기서, 개별 프로세서(21)는 설정 주기 마다 카운팅된 펄스 개수에 1을 더하여 펄스 신호를 후단의 개별 모듈(20)로 전송하도록 마련될 수 있고(도 7의 ⓐ 참조), M회 동일한 것으로 판단된 후에 전송할 수도 있다(도 7의 ⓑ 참조). 전자의 경우에도 후단의 개별 모듈(20)도 도 7에 도시된 과정을 수행하기 때문에, 잘못된 펄스 갯수가 전단의 개별 모듈(20)로부터 전송되더라도 도 7에 도시된 과정을 통해 오류의 수정이 가능하게 된다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였으나, 본 발명은 상기 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 제조될 수 있으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
10 : 메인 모듈 20 : 개별 모듈
21 : 개별 프로세서 22 : 버스 커넥터

Claims (11)

  1. 메인 모듈,
    상기 메인 모듈과 시리얼 통신 방식을 통해 통신하는 복수의 개별 모듈, 및
    복수의 상기 개별 모듈을 상기 메인 모듈로부터 직렬로 연결시키는 주소 설정 라인을 포함하고;
    상기 메인 모듈은 기 설정된 설정 주기 내에 i 개의 펄스 신호를 상기 주소 설정 라인을 통해 복수의 상기 개별 모듈 중 첫번째 개별 모듈로 전송하고;
    각각의 상기 개별 모듈은 상기 주소 설정 라인의 전단에서 상기 설정 주기 내에 j 개의 펄스 신호가 수신되면, j+k 개의 펄스 신호를 상기 설정 주기 내에 상기 주소 설정 라인의 후단으로 전송하며;
    각각의 상기 개별 모듈은 상기 주소 설정 라인의 전단에서 수신되는 상기 설정 주기 내의 상기 펄스 신호의 갯수에 기초하여, 상기 메인 모듈과의 통신을 위한 주소를 등록하는 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템.
  2. 청구항 1에 있어서,
    상기 메인 모듈은
    기 설정된 주소 설정 시간동안 상기 설정 주기마다 i 개의 상기 펄스 신호를 상기 주소 설정 라인을 통해 전송하고;
    각각의 상기 개별 모듈은
    상기 주소 설정 라인의 전단에서 수신되는 상기 펄스 신호의 갯수를 상기 설정 주기 마다 카운팅하고, 카운팅된 상기 펄스 신호의 갯수가 연속적으로 M회 동일한 경우 상기 메인 모듈과의 통신을 위한 주소를 등록하는 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템.
  3. 청구항 2에 있어서,
    상기 메인 모듈은 상기 주소 설정 시간이 경과되는 경우, 각각의 주소로 모듈 정보 요청 신호를 전송하며;
    각각의 상기 개별 모듈은 상기 모듈 정보 요청 신호에 대한 응답으로 자신의 모듈 정보와 주소를 상기 메인 모듈로 전송하는 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템.
  4. 청구항 1에 있어서,
    각각의 상기 개별 모듈은
    상기 메인 모듈과의 시리얼 통신을 위한 복수의 통신 포트, 입력용 GPIO 포트, 및 출력용 GPIO 포트를 갖는 개별 프로세서와;
    상기 메인 모듈과의 시리얼 통신을 위해 각각의 상기 통신 포트와 연결되어 복수의 통신 라인, 전단의 상기 주소 설정 라인과 상기 입력용 GPIO 포트를 연결하는 GPIO 입력 라인, 및 및 후단의 상기 주소 설정 라인과 상기 출력용 GPIO 포트를 연결하는 GPIO 출력 라인을 갖는 버스 커넥터를 포함하며;
    상기 GPIO 입력 라인과 상기 GPIO 출력 라인은 상기 버스 커넥터 내부에서 직렬로 연결되는 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템.
  5. 청구항 1에 있어서,
    i 및 k는 1인 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템.
  6. 청구항 1에 있어서,
    상기 설정 주기는 0.5초 ~ 2초 사이로 설정이고, 상기 펄스 신호는 10ms의 폭과 50%의 듀티비를 갖는 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템.
  7. 시리얼 통신을 이용하는 제어 시스템의 자동 주소 설정 방법에 있어서,
    복수의 개별 모듈을 메인 모듈로부터 직렬로 주소 설정 라인을 통해 연결하는 연결 단계,
    상기 메인 모듈로부터 기 설정된 설정 주기 내에 기 설정된 기준 갯수의 펄스 신호가 상기 주소 설정 라인을 통해 복수의 상기 개별 모듈 중 첫번째 개별 모듈로 전송되는 전송 단계, 및
    각각의 상기 개별 모듈이 상기 메인 모듈과의 통신을 위한 주소를 등록하는 주소 등록 단계를 포함하며;
    상기 주소 등록 단계는
    상기 주소 설정 라인의 전단에서 상기 설정 주기 내에 수신되는 펄스 신호를 카운팅하는 카운팅 단계,
    상기 카운팅 단계에서 카운팅된 펄스 신호의 갯수에 기 설정된 추가값을 더한 갯수의 펄스 신호를 상기 설정 주기 내에 상기 주소 설정 라인의 후단으로 전송하는 재전송 단계, 및
    상기 카운팅 단계에서 카운팅된 펄스 신호의 갯수에 기초하여, 상기 메인 모듈과의 통신을 위한 주소를 등록하는 주소 등록 단계를 포함하는 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템의 자동 주소 설정 방법.
  8. 청구항 1에 있어서,
    상기 전송 단계에서 상기 메인 모듈은 기 설정된 주소 설정 시간동안 상기 설정 주기마다 i 개의 상기 펄스 신호를 상기 주소 설정 라인을 통해 전송하고;
    상기 주소 등록 단계에서 상기 카운팅 단계는 상기 주소 설정 시간동안 상기 설정 주기마다 수행되며;
    상기 재전송 단계 및 상기 주소 등록 단계는 상기 카운팅 단계에서 카운팅된 펄스 신호의 갯수가 연속적으로 n회 동일하게 카운팅된 경우 수행되는 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템의 자동 주소 설정 방법.
  9. 청구항 8에 있어서,
    상기 주소 설정 시간이 경과되는 경우, 상기 메인 모듈로부터 각각의 주소로 시리얼 통신을 통해 모듈 정보 요청 신호가 전송되는 단계; 및
    각각의 상기 개별 모듈로부터 상기 모듈 정보 요청 신호에 대한 응답으로 자신의 모듈 정보와 주소가 시리얼 통신을 통해 상기 메인 모듈로 전송되는 단계를 더 포함하는 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템의 자동 주소 설정 방법.
  10. 청구항 7에 있어서,
    i 및 상기 추가값은 1인 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템의 자동 주소 설정 방법.
  11. 청구항 7에 있어서,
    상기 설정 주기는 0.5초 ~ 2초 사이로 설정이고, 상기 펄스 신호는 10ms의 폭과 50%의 듀티비를 갖는 것을 특징으로 하는 시리얼 통신을 이용하는 제어 시스템의 자동 주소 설정 방법.
KR1020190178640A 2019-12-30 2019-12-30 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법 KR20210085526A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190178640A KR20210085526A (ko) 2019-12-30 2019-12-30 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190178640A KR20210085526A (ko) 2019-12-30 2019-12-30 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법

Publications (1)

Publication Number Publication Date
KR20210085526A true KR20210085526A (ko) 2021-07-08

Family

ID=76893777

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190178640A KR20210085526A (ko) 2019-12-30 2019-12-30 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법

Country Status (1)

Country Link
KR (1) KR20210085526A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114261307A (zh) * 2021-12-31 2022-04-01 浙江吉智新能源汽车科技有限公司 电池箱的识别方法、装置、设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114261307A (zh) * 2021-12-31 2022-04-01 浙江吉智新能源汽车科技有限公司 电池箱的识别方法、装置、设备及存储介质
CN114261307B (zh) * 2021-12-31 2024-02-02 浙江吉利控股集团有限公司 电池箱的识别方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
US5568525A (en) System and method for connection of multiple protocol terminals
CN109150680B (zh) 一种适用于rs485总线的自适应确定地址组网电路及方法
CN110417930A (zh) 一种串行设备通信地址的自动分配方法
US5864715A (en) System for automatically terminating a daisy-chain peripheral bus with either single-ended or differential termination network depending on peripheral bus signals and peripheral device interfaces
US9294300B2 (en) Token based communication in daisy chain configured battery management devices
US10229078B2 (en) Multi-master bus
CN104199795B (zh) 一种总线架构的数据传送和接收方法
US20170010329A1 (en) Wakeup sequence for two-wire daisy chain communication system
US11245267B2 (en) Battery system, battery module and battery control circuit thereof
KR20210085526A (ko) 시리얼 통신을 이용하는 제어 시스템 및 자동 주소 설정 방법
CN109245950B (zh) 一种链路失效位置确定的方法以及相关装置
US7694053B2 (en) Slave assembly for determining source of data received over a two-wire master-slave communications bus
JP2019531638A (ja) 自動アドレス指定、およびその自動終了を含むマルチドロップ通信システムの構成
US7926008B2 (en) Integrated circuit with on-board power utilization information
US20200127868A1 (en) Communication system
CN105116807A (zh) 一种模块式控制器自动配置模块信息的系统及方法
US6356583B1 (en) Device and method for controlling the baud rate between a portable telephone and an external device
US20170126014A1 (en) Battery management system having capability for addressing and time-division communication
Cisco Troubleshooting the Initial Hardware Configuration
US4728754A (en) Inter-bus system
EP4047485B1 (en) Lin master testing device
CN116684389B (zh) 地址自动分配方法及具有其的主机、从机和通信设备
US20030196000A1 (en) Data transmission method
JPH04287150A (ja) 同期式シリアルバス方式
KR20070051186A (ko) 알에스485 통신시스템의 통신방법

Legal Events

Date Code Title Description
A201 Request for examination