#1 2022-01-07 12:23:28

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Глючит от блока питания?

Китайская nano от батареи работает отлично, а от сети не дольше 3-х часов: или перегружается или намертво зависает скетч (и ватчдог не помогает), причем две платы через короткое время вообще умерли с одинаковой ошибкой avrdude: verification error, first mismatch at byte 0x0000 0x62 != 0x0c.

Пробовал разные блоки питания: обычные USB зарядки для телефона, от роутера D-link 5v 2A подключал к пину 5v, подключал 9v 1A к пину VIN, паял два конденсатора на 470мкф и 0.1мкф - не помогает

Нужна стабильная работа датчика MH-Z19 с дисплеем 1602-i2c от сети: пробовать другие конденсаторы? искать другой блок питания? взять оригинальную nano? прикрутить аппаратный ватчдог? перейти на Raspberry Pi Pico с оригинальным блоком питиния? что посоветуете новичку?

Остання редакція normal (2022-01-08 15:22:24)

Неактивний

#2 2022-01-08 15:38:56

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

Кажется нашел причину, если вставить delay(1) в loop - это сильно улучшает ситуацию и стабилизирует ардуинку, нда...

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
  static unsigned long timer = 0;  
  if (millis() - timer >= 1000) {
    static bool blink = true;
    digitalWrite(LED_BUILTIN, blink? HIGH : LOW);
    blink = !blink;
    timer = millis();
  }
  delay(1);
}

Неактивний

#3 2022-01-08 16:28:18

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

Re: Глючит от блока питания?

да и без этого должно адекватно работать

Неактивний

#4 2022-01-08 17:06:41

Honey
Учасник
З Киев
Зареєстрований: 2020-09-26
Повідомлень: 184

Re: Глючит от блока питания?

normal пише:

avrdude: verification error, first mismatch at byte 0x0000 0x62 != 0x0c.

Это значит, что загрузчик при проверке прочитал не то, что ранее якобы записал. Вариантов два: либо он пишет не то (битый загрузчик, запрет на запись), либо прошивка залочилась и соответственно при чтении читаются хардварно-искаженные данные.
Лечится сбросом мк и перепрошивкой загрузчика.
Причина может быть, например, в статическом электричестве.

Неактивний

#5 2022-01-08 17:22:11

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

vvr пише:

да и без этого должно адекватно работать

От ноута или повербанка работает норм, а от сети нет, я заливал такой код для пищалки и долго слушал (чтобы на светодиод не смотреть): по идее должен быть один длинный писк при старте и один короткий раз в минуту, а на деле оказалось может час работать правильно, а может и пять раз перегружаться и даже трели выдавать короткими писками (значит и таймер сбивается) или просто перестает пикать (пока вручную блок питания из сети не передернешь)

#define BUZZER_IO_PIN 5
void setup() {
  pinMode(BUZZER_IO_PIN, OUTPUT);
  digitalWrite(BUZZER_IO_PIN, LOW);
  delay(1000);
  digitalWrite(BUZZER_IO_PIN, HIGH);
}
void loop() {
  static unsigned long timer = 0;  
  if (millis() - timer >= 60000) {
    digitalWrite(BUZZER_IO_PIN, LOW);
    delay(100);
    digitalWrite(BUZZER_IO_PIN, HIGH);
    timer = millis();
  }
}

Я нашел этот delay в штатных примерах и объяснение

  delay(1);        // delay in between reads for stability 

Остання редакція normal (2022-01-08 17:31:15)

Неактивний

#6 2022-01-08 17:32:16

г0сть
Гість

Re: Глючит от блока питания?

Нанка на каком чипе? Может вавгат?

#7 2022-01-08 17:40:34

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

DCCduino Nano CH340 с новым загрузчиком, на чипе написано Atmel

Остання редакція normal (2022-01-08 17:45:06)

Неактивний

#8 2022-01-25 13:11:21

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

Honey пише:

Лечится сбросом мк и перепрошивкой загрузчика

Спасибо, с помощью уцелевшей нанки восстановил слетевший загрузчик у двух других, а с ними кажется получилось точнее локализовать проблему зависаний, но решить нет, итак:

1. Питание - Power Bank Cord A10 Li-ion 10000 мАч
2. Nano на чипе ATmega328PB с фьюзами Low:0xFF High:0xDA Ext:0xFD Lock:0xCF
3. Нагрузка - разные комбинации датчиков и дисплеев (MH-Z19C, MQ-4, MQ-7, HTU-21, LCD1602_I2C, TM1637, MH-FMD) с общим потреблением до 300мА
4. Скетч - штатный Blink
5. Обвязка - паял проводами для макетных плат или от витой пары (могу сфоткать)

Если питание подавать в miniUSB - все замечательно работает сутками с нагрузкой! (кроме мерцания дисплея 1602)
Если тоже самое питание подавать на 5V - через пару часов с нагрузкой виснет (светодиод не blink'ает), без нагрузки вроде не виснет

Есть какие-то догадки?

Неактивний

#9 2022-01-25 13:33:03

г0сть
Гість

Re: Глючит от блока питания?

normal пише:

(кроме мерцания дисплея 1602)

Никакие мысли не приходят? Как минимум некачественное питание(пульсации) с выхода павербанка. Ставьте конденсаторы электролит+керамика.

#10 2022-01-25 15:40:47

Honey
Учасник
З Киев
Зареєстрований: 2020-09-26
Повідомлень: 184

Re: Глючит от блока питания?

normal пише:

Если питание подавать в miniUSB - все замечательно работает сутками с нагрузкой! (кроме мерцания дисплея 1602)
Если тоже самое питание подавать на 5V - через пару часов с нагрузкой виснет (светодиод не blink'ает), без нагрузки вроде не виснет

Есть какие-то догадки?

По схеме разница между VUSB и +5V только в диоде Шоттки.
Догадок две: либо с павербанка напряжение меняет полярность (экзотический случай), либо падения напряжения на диоде (0.3-0.4В) какраз достаточно чтобы уберечь м/к от повышенного напряжения питания.

Неактивний

#11 2022-01-25 16:50:44

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

г0сть пише:

Никакие мысли не приходят? Как минимум некачественное питание(пульсации) с выхода павербанка. Ставьте конденсаторы электролит+керамика.

Я читал, что LCD с датчиком CO2 мерцает у всех, контрастность дисплея зависит от напряжения, а оно как раз падает из-за того диода на USB с 5 до 4.7 вольт (это происходит где-то 2 раза в секунду, во время включения лампы датчика CO2 и потребления ним ~100мА). От того же павербанка при питании в +5V не мерцает, аналогично и с разными блоками питания: через USB мерцает, через +5V нет (но виснет через 0-24 часа), из десятка зарядок и блоков питания нашел один, который выдает 5.5 вольт, вот с ним не мерцает. Пробовал блок питания 9 вольт подавать на VIN - тоже потом виснет. Конденсаторы ставил 0.1мкФ и 470мкФ, есть и другие, но не знаю какие лучше поставить.

Неактивний

#12 2022-01-25 17:03:22

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

Honey пише:

падения напряжения на диоде (0.3-0.4В) какраз достаточно чтобы уберечь м/к от повышенного напряжения питания.

Получается при снижении напряжения МК перегружается, а при повышении может зависать? Конденсаторы от повышенного не спасут или что ещё можно припаять? Я думал купить ещё блок питания Sunny попробовать, но не знаю как лучше питать: на 5в или 7.5в или 9в в VIN и есть сомнения, что он будет лучше, чем мои от всяких старых роутеров и т.д.

Неактивний

#13 2022-01-25 17:25:30

Honey
Учасник
З Киев
Зареєстрований: 2020-09-26
Повідомлень: 184

Re: Глючит от блока питания?

С вообще отключенным датчиком CO2 при любом способе питания мк не зависает?

Неактивний

#14 2022-01-25 18:05:15

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

Перепроверю этот момент точнее и потом отпишу, при питании в USB с датчиком CO2 не зависает, я сделал ещё тестовый экземпляр и постепенно добавляю обвязку и оставляю работать на день: без нагрузки не зависло, сегодня с утра подключены два мощных датчика (MQ-4 и MQ-7) и ещё тоже не зависло, но если питать в USB (все равно чем), то светодиод моргает ровно (секунду горит, секунду не горит), если питать в 5V от павербанка моргает тоже ровно, если питать от блока питания в 5V без датчиков моргает опять ровно, если подключить нагрузку - светодиод пляшет как хочет: может 5 секунд гореть, может мерцать по 5 раз за секунду, это значит либо перегрузка какая-то, либо delay(1000) сбивается...

Неактивний

#15 2022-01-25 18:20:59

Honey
Учасник
З Киев
Зареєстрований: 2020-09-26
Повідомлень: 184

Re: Глючит от блока питания?

Замерьте еще сопротивление провода питаният от БП до Вашей схемы.

Неактивний

#16 2022-01-25 18:57:33

г0сть
Гість

Re: Глючит от блока питания?

Схему подключений, подробную, в студию

#17 2022-01-25 20:04:49

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

Схему я не рисовал, может по фото будет видно: здесь подключены по питанию 5V только нано, датчик CO2 (RX->D2, TX->D3) и дисплей (SDA->A4, SDL->A5)
1.jpg
Вот когда все подключено с другим БП, не понимаю, в каких точках нужно измерять сопротивление провода БП?
2.jpg

Неактивний

#18 2022-01-25 20:33:52

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

Вот в этой связке павербанка + USB гарантированно работает (и возможно даже от блока питания), если переключаюсь на питание через DC разъем, то через какое-то время зависает и это точно виснет не LCD, т.к. ни светодиод не мигает, ни пищалка не пищит (проверял разные варианты), ни watchdog не перезапускает скетч, не виснет внутри I2C (т.к. пробовал вместо штатной Wire либу WSWire)
3.jpg

Остання редакція normal (2022-01-25 20:34:38)

Неактивний

#19 2022-01-25 21:08:33

Honey
Учасник
З Киев
Зареєстрований: 2020-09-26
Повідомлень: 184

Re: Глючит от блока питания?

Рассмотрите вариант блока питания 7-25В и внутри корпуса понизьте его стабилизатором до 5В.
Можно один стабилизатор для всех модулей и один отдельно для датчика CO2 (есть подозрение, что это он виноват в скачках напряжения), между RX/TX ардуино и датчика резисторы 200-300 Ом.

Неактивний

#20 2022-01-25 23:14:16

г0сть
Гість

Re: Глючит от блока питания?

Провода на ардуинке припаяны или натянуты на гребенку и держатся только за счет кембриков/термоусадок. Гребенку паяли китайцы или вы? Взять тестер и прозвонить качество пайки от вывода 5V до ног МК, то же с gnd. Напряжения на пине 5V замеряли при питании от usb и БП?

#21 2022-01-26 13:50:20

GreenDer
Гість

Re: Глючит от блока питания?

normal пише:

Перепроверю этот момент точнее и потом отпишу, при питании в USB с датчиком CO2 не зависает, я сделал ещё тестовый экземпляр и постепенно добавляю обвязку и оставляю работать на день: без нагрузки не зависло, сегодня с утра подключены два мощных датчика (MQ-4 и MQ-7) и ещё тоже не зависло, но если питать в USB (все равно чем), то светодиод моргает ровно (секунду горит, секунду не горит), если питать в 5V от павербанка моргает тоже ровно, если питать от блока питания в 5V без датчиков моргает опять ровно, если подключить нагрузку - светодиод пляшет как хочет: может 5 секунд гореть, может мерцать по 5 раз за секунду, это значит либо перегрузка какая-то, либо delay(1000) сбивается...

Скорее всего у Вас хаотично перезагружается микроконтроллер от того и пляски светодиода.
Добавьте какой-то маркер запуска микроконтроллера. Сообщение "Start." в Уарт к примеру или пазу в две-три секунды до запуска кода который светодиодом мигает. Так Вы сузите круг поиска.

#22 2022-01-26 15:47:57

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

Honey пише:

Рассмотрите вариант

Спасибо, привез стабилизаторов 3 шт (буду пробовать)

г0сть пише:

Провода на ардуинке припаяны или

Все паял сам (гребенки первый раз), может где-то и накосячил, но воспроизводится на всех трех нанках и перепаивал провода не один раз. Напряжение замерил:
- при работе от USB (павербанк или БП без разницы): при старте 4.34v, через секунд 5 (как начинает моргать датчик CO2) прыгает 4.34v-4.61v
- при работе от 5V (павербанк): при старте 4.95v, потом прыгает 4.95v-5.05v
- при работе от 5V (БП): при старте 4.95v, потом прыгает 4.95v-4.99v
Дальше не замерял, возможно перед зависанием есть какой-то скачок или помеха...

GreenDer пише:

Скорее всего у Вас хаотично перезагружается микроконтроллер от того и пляски светодиода

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

Неактивний

#23 2022-01-26 15:57:26

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

Сейчас вот опять воспроизвел на другом образце (от БП в 5V):
1. пару дней проверял без нагрузки и с другими датчками - не зависло, но с нагрузкой светодиод иногда тоже плясал
2. с утра припаял только питание датчика CO2 - светодиод начал иногда тоже плясать (но напряжение при этом не менялось), мог даже минуту светится или не светится, один раз почему-то светодиод RX пару минут горел потом потух, бывало пол часа все правильно моргает, до обеда не зависло
3. припаял RXTX в D2D3, все тоже самое, а через пару часов смотрю висит, при этом горят POW, L, RX и больше уже ничего не моргает, напряжение в таком состоянии 4.94v-4.96v, на пине D2 0.53v, на D3 3.15v (если это играет какую-то роль)
4.jpg

Неактивний

#24 2022-01-26 16:45:38

normal
Учасник
Зареєстрований: 2022-01-05
Повідомлень: 24

Re: Глючит от блока питания?

Отключил датчик CO2, подключил пищалку - с ней тоже глючит, вообще какая-то хрень: подключил оба провода (USB и DC), на плате ничего не трогаю, в один и тот-же БП втыкаю USB кабель - работает норм, вместо него втыкаю DC - сразу глючит... Попробую отрезать miniUSB на кабеле и подключить в 5V минуя DC разъем (может экранировка какая-то в кабеле играет роль)

Upd: попробовал - кабель и разъем с проводами роли не играют, важно подключено в USB или 5V и какая параллельно нагрузка, причем при перегрузке напряжение остается прежним (или мультиметр не ловит скачок не знаю), перед перегрузкой иногда бывает зависание скетча, причем может довольно длительно подвиснуть, возможно зависает навсегда (без перегрузки) по этой же причине... Может какая-то помеха проходит по 5V, а по USB её убирает тот диод?

Остання редакція normal (2022-01-26 17:30:40)

Неактивний

#25 2022-01-26 17:36:36

г0сть
Гість

Re: Глючит от блока питания?

normal пише:

Попробую отрезать miniUSB на кабеле и подключить в 5V минуя DC разъем

Upd: попробовал - кабель и разъем с проводами роли не играют, важно подключено в USB или 5V и какая параллельно нагрузка, причем при перегрузке напряжение остается прежним (или мультиметр не ловит скачок не знаю), перед перегрузкой иногда бывает зависание скетча, причем может довольно длительно подвиснуть, возможно зависает навсегда (без перегрузки) по этой же причине... Может какая-то помеха проходит по 5V, а по USB её убирает тот диод?

Ну теперь попробуйте подключить обрезанный miniusb к БП и посмотрите на поведение дурины при питании от БП через usb

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

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

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