헤드램프가 회전 및 평형을 어떻게 유지하는가
상태바
헤드램프가 회전 및 평형을 어떻게 유지하는가
  • 정현준
  • 승인 2013.05.03 00:00
  • 댓글 0
이 기사를 공유합니다

스마트 자동차 전자분야에서 AFS(Adaptive Front-Lighting System)의 사용이 점차 증가하는 추세이다. AFS의 핵심 기능은 스테퍼 모터 제어를 통해 헤드램프가 회전 및 평형을 유지할 있도록 하는 것이다. 그리고 스톨(stall) 탐지는 스테퍼 모터를 항상 제어 상태로 있게 하는 주요한 진단 기능이다. 이 원고에서는 NCV70522의 스톨 탐지 원리와 알고리즘, 구현 방법을 제시하고자 한다.

글: 다니엘 부(Daniel Bu) / 시니어 FAE
     온세미컨덕터 /
www.onsemi.com


AFS에서 NCV70522로 스톨 탐지 기능을
구현하는 방법
기계적 구조의 한계로 인해 AFS(Adaptive Front-lighting System)에 사용되는 스테퍼 모터는 가끔씩 오작동(스톨)될 수 있다. 일단 모터에 스톨 현상이 발생하면 ECU는 헤드램프의 위치를 추적하지 못해 부적절하게 반응하게 되는데 이는 매우 심각한 안전 문제를 야기한다. 이는 곧 AFS 애플리케이션에서 이러한 '스톨' 탐지가 필수적이라는 것을 의미한다.

일반적으로 모터의 BEMF(Back Electromotive Force)를 이용해 모터가 스톨되었는지 아닌지 탐지할 수 있다. BEMF는 모터 속도, 부하, 공급 전압에 따라 달라진다. 스톨 탐지 기능을 가진 종래의 스테퍼 모터 드라이브 IC는 보통 모터 BEMF 출력을 갖지 않지만 스톨 탐지 알고리즘이 구축한 상태이다. 고객은 스톨 탐지를 위해 일부 문턱값 칩 레지스터를 설정할 수 있을 뿐이고, 이는 실제 동작 조건에 적응시킬 능력이 없으므로 실제 도로 조건 하에서 동작하기 전에 모든 세팅이 미리 결정된 '오프라인'이어야 한다는 것을 의미한다.  

NCV70522는 SLA 핀에서 나오는 모터 BEMF(Back EMF) 출력을 갖는데 이로써 실시간으로 스톨 탐지 계산이 가능해 서로 다른 조건들에 따라 탐지 레벨을 조정할 수 있게 된다. 

알고리즘 설명
전류가 감쇠하는 동안 코일 내의 상대적으로 높은 재순환 전류 때문에 코일 전압 Vcoil 은 일시적인 반응을 보여준다. 이 일시적 반응은 애플리케이션 소프트웨어에서 원하는 것이 아니기 때문에 비트에 의해 두 개의 동작 모드들이 선택될 수 있다. SLA 핀은 "투과 모드(transparent mode)"에서 전압의 일시적 반응을 완전히 보여준다.

비트 "SLAT"가 해제되면 각 코일 전류 제로 크로싱의 끝에서 전압 샘플들 만이 SLA 핀 상에 보인다. 코일 전압의 일시적 반응이 더 이상 보이지 않기 때문에 이 모드는 소프트웨어 같은 것으로 후처리를 위한 더 매끄러운 BEMF 입력을 발생시킨다.

샘플링된 BEMF를 적정 출력 레벨(0V-5V)로 가져가기 위해 샘플링된 코일 전압 Vcoil은 2 또는 4로 나누어진다. 이 분배기는 SPI 비트 를 통해 설정된다. 그림 1은 SLA 핀과 투과 비트(transparency-bit)의 동작을 설명한다.

"PWMsh"와 "Icoil=0"은 코일 전압의 샘플링 순간과 정지 순간을 SLAT와 함께 정의하는 내부 신호이다. 
이 BEMF 전압은 소위 "코일 전류 제로 크로싱" 이 일어날 때마다 샘플링된다. 코일마다 2곳의 제로 전류 위치가 각각의 전기 주기에 존재하며 각 전기 주기마다 총 4곳의 제로 전류 관측 지점이 만들어진다. BEMF는 각 전기 주기마다 4번 측정될 수 있다. BEMF 전압은 마이크로 스텝 위치가 "코일 전류 제로 크로싱" 상에 위치하면 모터 드라이버에 의해 샘플링되기만 한다. 마이크로 스텝 위치는 SPI에 의해 읽힐 수 있다.
소프트웨어를 통해 전기 주기에서 SLA 값의 4배를 기준으로 스톨 현상 여부를 유연하게 판단할 수 있다.


그림 1. SLA 핀의 타이밍 다이어그램
 

알고리즘 구현
NCV70522는 바이폴라 스테퍼 모터용 마이크로 스테핑 스테퍼 모터 드라이버이다. 이 칩은 I/O 핀과 SPI 인터페이스를 통해 외부 마이크로컨트롤러에 연결되어 있다. NCV70522에는 전류 변환 테이블이 들어있는데 "NXT" 입력핀 상의 클럭 신호 및 방향 레지스터의 상태[DIRCTRL] 또는 "DIR" 입력핀에 따라 다음 마이크로 스텝을 취한다.

이 칩은 풀 스텝에서부터 최대 32 마이크로 스텝까지 SPI 레지스터SM[2:0]의 선택에 따라 7가지 스텝 모드를 제공한다. NCV70522는 스톨 탐지 알고리즘과 모터 (BEMF)를 기반으로 토크 및 속도 조정에 사용하는 "속도 및 부하각" (SLA) 출력을 갖는다. 



그림 2. 일반적인 응용 회로도




그림 3. 스테퍼 모터 구동을 위한 플로우 차트


그림 2에 일반적인 애플리케이션 블록도가 나와있다.
시스템 전원이 켜지는 순간 마이크로컨트롤러가 초기화되면 NCV70522는 리셋된다. 이후에 코일 전류와 스테핑 모드가 설정되면 모터 드라이버가 사용 가능 상태로 된다. 모터를 돌리기 위해 NXT 펄스가 보내지는데 모터의 회전 속도는 NXT 펄스 주파수에 스테핑 모드의 값을 곱한 것과 같다. 그림 3은 플로우 차트이다.
이에 따라 4 "코일 전류 제로 크로싱"마다 2 SLA레벨이 1.5V 보다 낮으면 스톨되었다고 간주할 수 있다.



그림 4. 정상 상태와 스톨 상태 시에 확인한 SLA 출력 레벨은 다음과 같다.
 


맺음말
종래의 스테퍼 모터 드라이버 IC에 비해 NCV70522 는 AFS 시스템에서 매우 중요한 실시간 기능과 자체 학습 스톨 탐지 기능 구현에 사용되는 BMF 출력을 갖는다. 스톨 탐지 문턱값은 서로 다른 모터 속도, 부하 특성 그리고 공급 전압에 따라 조정될 수 있다.

참고문헌
NCV70522-DQ 제품 데이터쉬트, www.onsemi.com