스나군 작업실

멀티위의 밧데리 알람 설정 방법 본문

쿼드캅터 제작기/참고자료

멀티위의 밧데리 알람 설정 방법

스나군 2012. 1. 5. 03:38
원문 : 김한철(cona05) http://cafe.naver.com/kbsoft/6785

알고 계신분도 계시겠지만 멀티위의 기능중 밧데리 전압 알람기능이 있습니다.

알고 있으면 편리한 밧데리 알람 기능설정에 대해서 강좌를 해보려 합니다.

 

멀티위 밧데리 알람기능은 셀별 모니터링은 않되고 밧데리 공급전압이 일정이상 (3단계로 분류해서 표시함)

이하로 떨어질경우 부져 또는 LED로 표시해주는 기능을 쓸수 있습니다.

 

일단 제가 구성한 밧데리 알람 회로입니다.

A123은 다이오드로 없어도 문제는 없습니다.

서지전압등이 밧데라인을 타고 들어올경우 이를 VCC나 GND로 흘려보내는 기능을 합니다.

MCU보호 차원에서 달았습니다.

 

중요한것은 오른쪽의 41.2K와 10K 저항입니다

이저항이 BAT+와 GND에 직렬연결되어 있고 저항중간에 MCU가 전압을 읽는 구조로 되어있습니다.

학교다닐때 과학 시간에 배운 전압 분배 법칙을 이용해서 높은 전압을 일정 비율로 낮춰서 읽는 방법입니다.

우리가 멀티위에 사용하는 MCU는 5V전원을 사용하므로 이보다 높은 전압을 읽고자 할때는 아래 그림과 같이

저항을 2개를 연결해서 분압해서 일정비율로 전압을 낮춰 읽습니다.

대충 이런 내용이고 공식은 '전압분배 법칙'으로 검색하면 자세히 나옵니다.

 

멀티위의 소스상에서는 PULL UP저항은 51k옴 이고 PULL DOWN 저항은 33k옴 저항이 달려있습니다.

저는 3.3V 기준전압으로도 읽기위해서 아래와 같이 PULL UP저항을 41.2K와 PULL DOWN 저항을 10K를 사용 했습니다.

 

멀티위 기본소스를 그대로 사용하시려면 51K 와 33K 저항을 사용하시는것이 좋습니다.

이때 저항은 오차율이 1%이하 짜리로 구입해서 사용하시는것이 좋습니다.


멀티위 소스상의 CONFIG.H 탭의 빨간색 네모친 부분을 보면

알람레벨을 3단계로 설정 할수 있습니다.

제가 멀티위의 디폴트 저항인 51k와 33k를 사용하지 않은 이유가 전압 레벨 설정시 직관성이 없어서

41.2k와 10k저항을 사용했습니다.

이렇게 설정할경우 설정전압값에서 10을 곱한 값을 설정하면 되므로 설정이 편리합니다.

이유는 멀티위에 사용된 MCU의 ADC분해능이 10BIT 이며

제가 사용한 저항을 더한값은 51.2K가 되므로 1024 =  (51.2k*20) 이런 관계가 성립되므로 설정 전압값에 10을 곱한 값을 설정해서 사용할수 있는 이유 입니다.

 

기본이 3셀용으로 되어 있는데 저는 2셀 쿼드 콥터를 사용하는 관계로 아래와 같이 소스를 수정했습니다.

멀티위 컨피그 상에서 보이는 전압과 실제 테스트로 측정한 전압이 오차가 생길때

 VBATSCALE  뒤에적힌 숫자를 바꿔주면 오차를 줄일수 있습니다.

보통 사용한 저항의 오차때문에 읽어들이는 전압차이가 발생하게 됩니다.

 

멀티위 컨피그 화면의 좌측 하단부에서 밧데리 전압 모티터링 값을 확인할수 있습니다.

제가 만든 멀티위 보드에서는 밧데리 전압을  A6 포트로 읽어드리도록 만들었으므로

V_BATPIN 을 A6으로 수정했습니다.

기본은 A3으로 되어 있습니다.


그리고 밧데리 전압이 낮을 경우 LED 또는 부져로 출력되는 핀은 D8핀으로 했으므로 아래와 같이 소스에서 수정했습니다.

멀티위이 디폴트 저항인 51k와 33k 저항을 사용하신다면 아래 부분은 수정하실 필요없습니다.

 

멀티위에서 기본회로의 저항과 상의 아래와 같이 소스를 수정했습니다.

VBSCAL은 사용않고 VBAT계산 식을 아래 동그라미 친것처럼 수정했습니다.

요건 기준전압을 3.3V로 설정을 가정해서 아래와 같이 수정한겁니다.

(저 같은 경우 아날로그 가속도 센서를 사용해서 3.3V전압을 Vref에 연결후 이를 기준전압으로 사용해서 측정하는 방식을 사용했기 때무에 3.3V로 설정했습니다. 아날로그 가속도 센서를 사용할것이 아니면 기준전압을 5V로 설정해서 수식을 아래와 같이 수정하시면 됩니다.)

제가 사용한 41.2k, 10k 저항을 사용시

3.3V를 측정기준전압으로 사용할경우 최대 16.9V 까지 측정이 가능합니다. 따라서 3셀 밧데리 까지 모니터링이 가능하겠죠

5V를 측정기준전압으로 설정시 최대 25.6V까지 측정이 가능하게 됩니다.

수식은 :  측정최대전압 =   10k /(10k+41.2k) * 기준전압     

 

만약 저와 동일한 저항값을 사용하고 기준전압을 5V로 설정해서 사용할경우

vbat = ((vbatRaw>>3)*5/20) ;

으로 수정해서 사용하면 됩니다.

 

좀더 간단한 수식으로는

vbat = (vbatRaw*5)>>1;

위와같이 할경우  밧데리 전압은 vbatRaw/100 이 되게 됩니다.

위의 수식을 쓸경우 CONFIG.H 탭에서

밧데리 알람 값을 아래와 같이 *100한 값으로 적으면 됩니다.

#define VBATLEVEL1_3S 710   // 7.1V
#define VBATLEVEL2_3S  680  // 6.8V
#define VBATLEVEL3_3S 660   // 6.6V


내용이 너무 두서 없었나요?

멀티위 에서 밧데리 알람긴은 매우 유용한 기능이나 꼭 사용하시길 바랍니다.


부저는 지자기 센서와 떨어뜨려 놓아야 하며
부저에 0.1uF 커패시터를 병렬로 달아놓아야 한다


'쿼드캅터 제작기 > 참고자료' 카테고리의 다른 글

멀티위 쿼드캅터X 설정방법  (0) 2012.01.04
쿼드콥터 사이트  (0) 2011.12.23
Comments