#1 2019-02-23 04:39:21

Crusherhead
Учасник
Зареєстрований: 2019-02-09
Повідомлень: 26

Помогите собрать тестер для батареек

#define newLED 2 // зеленый светодиод - новая
#define okLED 4 // желтый светодиод - норма
#define oldLED 6 //красный светодиод - старая

int analogValue = 0;
float voltage = 0;
int ledDelay = 2000;


void setup() 
{
pinMode(2,OUTPUT);
pinMode(4,OUTPUT);
pinMode(6,OUTPUT);
Serial.begin(9600);  
}

void loop() 
{
  analogValue = analogRead(0); Serial.println(analogRead(0));
  voltage = 0.0048*analogValue;
  if(voltage >= 1.6) 
  {
    digitalWrite(newLED,HIGH); Serial.println("gr");
    delay(ledDelay); Serial.println("DDDDD");
    digitalWrite(newLED,LOW); Serial.println("X");
  }
  else if(voltage < 1.6 && voltage > 1.4) 
  {
  digitalWrite(okLED,HIGH); Serial.println("yl");
  delay(ledDelay); Serial.println("DDDDD");
  digitalWrite(okLED,LOW);  Serial.println("X");
  } 
  else if(voltage < 1.4)
  {
  digitalWrite(oldLED,HIGH); Serial.println("rd");
  delay(ledDelay); Serial.println("DDDDD");
  digitalWrite(oldLED,LOW); Serial.println("X");
  }
}


Я собрал тестер для гальванических источников напряжения, не превышающих 5В.Схема работает, но я Столкнулся с следующей проблемой:
1) По какой то причине сами по себе с определенной периодичностью светяться светодиоды: красный,желтый,зеленый и в обратном порядке.

2) прописал Serial.println(analogRead(0)); для того, что бы посмотреть что твориться на аналоговом выходе, а там значение скачет: 143,99,87,55,242,325,450 и т.д.

3) поменял 4 платы, проблема не устраняется.

Получается, что никакие данные с щупов схемы , + и - не считываются, потому что нет батарейки, а схема что то считывает постоянно. Но если батарейку протестировать, то схема работает.

У меня вопрос: 1) кто может объяснить, почему на 0 пине скачат какие то значения ? 2)  почему светятся светодиоды, если нет тестируемой батарейки? 3) как сделать что бы устранить это явление? что бы светодиоды светились только при тестировании батарейки ?

Сразу хочу сказать, что изначально пробовал прописать digitalWrite(LOW) на все светодиоды, но это не помогло. Микроконтроллер просто проигнорировал код.

Жду вашего  ответа и помощи.

С уважением.


есть фото и видео проекта и схема,но загрузить ничего не могу, какой то глюк,кому интересно посмотреть я пришлю

Остання редакція Crusherhead (2019-02-23 04:46:31)

Неактивний

#2 2019-02-23 14:11:09

vvr
Учасник
Зареєстрований: 2015-04-12
Повідомлень: 878

Re: Помогите собрать тестер для батареек

у вас аналоговый вход болтается в воздухе, вот всё и пляшет.
подтяните его или к земле или к питанию и всё устаканится.

Неактивний

#3 2019-02-23 19:09:22

г0сть
Гість

Re: Помогите собрать тестер для батареек

ТС-у уже все давно популярно объяснили на конкурирующем ресурсе .ru

#4 2019-02-24 11:46:04

Crusherhead
Учасник
Зареєстрований: 2019-02-09
Повідомлень: 26

Re: Помогите собрать тестер для батареек

vvr пише:

у вас аналоговый вход болтается в воздухе, вот всё и пляшет.
подтяните его или к земле или к питанию и всё устаканится.



скажите, а есть принципиальная разница на + или на землю подтягивать?

Неактивний

#5 2019-02-24 12:55:31

vvr
Учасник
Зареєстрований: 2015-04-12
Повідомлень: 878

Re: Помогите собрать тестер для батареек

Crusherhead пише:
vvr пише:

у вас аналоговый вход болтается в воздухе, вот всё и пляшет.
подтяните его или к земле или к питанию и всё устаканится.



скажите, а есть принципиальная разница на + или на землю подтягивать?

ну вы же учитесь - попробуйте оба варианта, посмотрите в сериале чем будут отличаться.

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму