Сигнализатор разряда аккумулятора.

evil eyes
Offline
Зарегистрирован: 18.07.2011

Прошу Вашей помощи. Как подключить аккум к ардуине?

Имеется литий полимерный аккум, состоящий из 3х банок по 3,7 В. они соединены последовательно.

Особенностью литий полимерных батарей является опасность разряда ниже 3 В.

Как подключить, вернее через что к ардуине. Хоху получать 3 значения, пусть некой величины, которая будет имненяться пропорцианально напряжению. Дальше мулитиметром и показаниями с входов ардуины я определю приблизительное значение , которое будет соотвецтвовать 3 В, а вообще 3,2 В(скорее всего). Ну а дальше я смогу уже настроить или пищалку или световую индикацию. Для того что бы показать пример http://www.goodluckbuy.com/1-8s-lipo-battery-voltage-tester-and-low-volt...

только бужет изменяться индикация габаритов квадрокортера, так как на удалении более 50 м писка не слышно, а не вижно уже с 10 метров.

 

Спасибо, если я выразился некорректно извеняйте.

Для более простой аналогии - имеем 3 последовательно соединенных батарейки 1,5В как можно замерять напряжение каждой ?

AlexFisher
AlexFisher аватар
Offline
Зарегистрирован: 20.12.2011

evil eyes пишет:

Для более простой аналогии - имеем 3 последовательно соединенных батарейки 1,5В как можно замерять напряжение каждой ?

Очень просто. Заводим из на 3 аналоговых входа ардуины и измеряем разности между входами :)

evil eyes
Offline
Зарегистрирован: 18.07.2011

AlexFisher пишет:

evil eyes пишет:

Для более простой аналогии - имеем 3 последовательно соединенных батарейки 1,5В как можно замерять напряжение каждой ?

Очень просто. Заводим из на 3 аналоговых входа ардуины и измеряем разности между входами :)

Я понимаю что на А0-А2. Но на А0 будет 3,7В, а на А1 уже 7,4 В... это первая проблема.
 

А вторая- не будет ли кз? А с учетом , что аккум дает порядка 100А , но боюсь выгорит абсолютно все.

step962
Offline
Зарегистрирован: 23.05.2011

evil eyes пишет:

AlexFisher пишет:

Очень просто. Заводим из на 3 аналоговых входа ардуины и измеряем разности между входами :)

Я понимаю что на А0-А2. Но на А0 будет 3,7В, а на А1 уже 7,4 В... это первая проблема.
 


В первом ведре 3,7 л спирта, а в двух - уже 7,4. Вопрос: сколько литров спирта во втором ведре? (^_~)
Вы таки считаете, что такая задача не поддается решению??? (@_@)

axill
Offline
Зарегистрирован: 05.09.2011

evil eyes пишет:

AlexFisher пишет:
баобщее правило - если хотим замерить на аналоговом входе напряжен е, то если оно больше напряжения питания микроконтроллера, то подключаться нужно через делитель напряжения на двух резисторах. В случае ардуино уно напряжение питания 5в. Делитель нужно так расчитать, чтобы при максимальном напряжении на входе, на вход ардуины попадало не более 5в. Если не знаем достоверно какой максимум - после делителя ставим стабилитрон на напряжен е 5в

evil eyes пишет:

Для более простой аналогии - имеем 3 последовательно соединенных батарейки 1,5В как можно замерять напряжение каждой ?

Очень просто. Заводим из на 3 аналоговых входа ардуины и измеряем разности между входами :)

Я понимаю что на А0-А2. Но на А0 будет 3,7В, а на А1 уже 7,4 В... это первая проблема.
 

А вторая- не будет ли кз? А с учетом , что аккум дает порядка 100А , но боюсь выгорит абсолютно все.

axill
Offline
Зарегистрирован: 05.09.2011

 Извиняюсь, мое сообщение вклинилось в цитату;) на айпаде текст сливается с фоном и печатать приходится вслепую ;)

evil eyes
Offline
Зарегистрирован: 18.07.2011

step962 пишет:
evil eyes пишет:

AlexFisher пишет:

Очень просто. Заводим из на 3 аналоговых входа ардуины и измеряем разности между входами :)

Я понимаю что на А0-А2. Но на А0 будет 3,7В, а на А1 уже 7,4 В... это первая проблема.
 

В первом ведре 3,7 л спирта, а в двух - уже 7,4. Вопрос: сколько литров спирта во втором ведре? (^_~) Вы таки считаете, что такая задача не поддается решению??? (@_@)

А с каких пор ардуина может понимать на аналоговом пине 12,6В с током в 100А ? В этом весь вопрос, как подключить, так что бы не сжечь ардуину. Если бы вопрос был в расчетах,я задал бы его в другой ветке форума.

evil eyes
Offline
Зарегистрирован: 18.07.2011

axill пишет:

 Извиняюсь, мое сообщение вклинилось в цитату;) на айпаде текст сливается с фоном и печатать приходится вслепую ;)

Вот я и прошу помощи, как правильно расчитать, а то при неверном расчете, второй попытки не будет.

AlexFisher
AlexFisher аватар
Offline
Зарегистрирован: 20.12.2011

Поставте делитель из 2-х одинаковых сопротивлений от 10 до 100 кОм и будет у Вас вместо 7.4 всего 3,7.

Если не знаете, что такое делитель напряжения, поищите "делитель напряжения на резисторах". Напряжение на входах превышать нельзя - не более 5 вольт.

evil eyes
Offline
Зарегистрирован: 18.07.2011

AlexFisher пишет:

Поставте делитель из 2-х одинаковых сопротивлений от 10 до 100 кОм и будет у Вас вместо 7.4 всего 3,7.

Если не знаете, что такое делитель напряжения, поищите "делитель напряжения на резисторах". Напряжение на входах превышать нельзя - не более 5 вольт.

Вот...спасибо. теперь есть от чего оттолкнуться. Еще раз спасибо.

leshak
Offline
Зарегистрирован: 29.09.2011

 Кстати а ток в 100A тут вообще не причем. A-входы меряют напряжение (когда включены в режим входа). Как и любой вольтметр. Через идеальный вольтметр ток вообще не должен идти. На них стоят многокилоомные сопротивления внутри (кажись что-то 100K). Следовательно ток на них пойдет в любом случае "микроскопический".

А вообще 100A вы не описались? Не каждая дорожка/провод/разъем выдержит. А если вы попытаетесь 100A прогнать через регулятор дуины - ну ему точно шибздец настанет.

evil eyes
Offline
Зарегистрирован: 18.07.2011

leshak пишет:

 Кстати а ток в 100A тут вообще не причем. A-входы меряют напряжение (когда включены в режим входа). Как и любой вольтметр. Через идеальный вольтметр ток вообще не должен идти. На них стоят многокилоомные сопротивления внутри (кажись что-то 100K). Следовательно ток на них пойдет в любом случае "микроскопический".

А вообще 100A вы не описались? Не каждая дорожка/провод/разъем выдержит. А если вы попытаетесь 100A прогнать через регулятор дуины - ну ему точно шибздец настанет.

Нет, это не опечатка. 4 двигателя с 21А на каждом+ освещение. Ну может порядка 90А. Но это идет не через ардуину. Хм.. ну что ж... попробую рискнуть, я тоже надеюсь на высокое сопративление, но как бы я не ошибся.

step962
Offline
Зарегистрирован: 23.05.2011

leshak пишет:

А вообще 100A вы не описались? Не каждая дорожка/провод/разъем выдержит. А если вы попытаетесь 100A прогнать через регулятор дуины - ну ему точно шибздец настанет.

есть регуляторы и на 200А/40В. Вполне возможно, что есть что-нибудь и покруче (о, точно, нашел - 300А/56В). Ибо крутить такими монстрами - это не семечки грызть.

step962
Offline
Зарегистрирован: 23.05.2011

evil eyes пишет:
надеюсь на высокое сопративление, но как бы я не ошибся.

 

Надеяться не надо - в этом можете быть уверены. Совершенно спокойно запитывал от четырехбаночной батареи плату автопилота (да и сигнализаторы разряда спокойно на батарею садятся) и в то же время сжигал жало отвертки (и разъем батареи) при случайном касании к контактам.

4ishops
Offline
Зарегистрирован: 06.10.2012

 Arduino умеет сам измерять напряжение питания, как вариант можно использовать

 

long readVcc() {
  // Read 1.1V reference against AVcc
  // set the reference to Vcc and the measurement to the internal 1.1V reference
  #if defined(__AVR_ATmega32U4__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
    ADMUX = _BV(REFS0) | _BV(MUX4) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);
  #elif defined (__AVR_ATtiny24__) || defined(__AVR_ATtiny44__) || defined(__AVR_ATtiny84__)
    ADMUX = _BV(MUX5) | _BV(MUX0);
  #elif defined (__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__)
    ADMUX = _BV(MUX3) | _BV(MUX2);
  #else
    ADMUX = _BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);
  #endif  
 
  delay(2); // Wait for Vref to settle
  ADCSRA |= _BV(ADSC); // Start conversion
  while (bit_is_set(ADCSRA,ADSC)); // measuring
 
  uint8_t low  = ADCL; // must read ADCL first - it then locks ADCH  
  uint8_t high = ADCH; // unlocks both
 
  long result = (high<<8) | low;
 
  result = 1125300L / result; // Calculate Vcc (in mV); 1125300 = 1.1*1023*1000
  return result; // Vcc in millivolts
}