Не стабильно работает.

Обсуждаем контроллеры компании Atmel.
Ответить
Опытный кот
Сообщения: 806
Зарегистрирован: Ср май 06, 2015 06:41:27
Откуда: Благовещенск

Сообщение Андрей СШ »

правило 2.2.
из-за него любая тема на этом форуме выглядит как разговор слепых дебилов.

Что это за display в коде?

Вот это место непонятно

Код: Выделить всё

Serial.begin(9600);
  _modbusMaster.begin(19200);
у меги328 вроде только один USART
Последний раз редактировалось Андрей СШ Вс авг 23, 2015 06:24:53, всего редактировалось 1 раз.
Реклама
Встал на лапы
Аватара пользователя
Сообщения: 132
Зарегистрирован: Вт мар 04, 2014 20:09:54
Откуда: Орёл

Сообщение seval »

Андрей СШ писал(а):правило 2.2.
из-за него любая тема на этом форуме выглядит как разговор слепых дебилов.
А шо поделать?!
И кстати в датчике снятие показаний раз в секунду. А дребезжит не по детски.
Реклама
Встал на лапы
Аватара пользователя
Сообщения: 132
Зарегистрирован: Вт мар 04, 2014 20:09:54
Откуда: Орёл

Сообщение seval »

Андрей СШ писал(а):
Что это за display в коде?

Вот это место непонятно

Код: Выделить всё

Serial.begin(9600);
  _modbusMaster.begin(19200);
у меги328 вроде только один USART
Это осталось от другой программы.
Можно убрать эту строку.
Дисплей это команды из библиотеки для OLED дисплея маленького.
Опытный кот
Сообщения: 806
Зарегистрирован: Ср май 06, 2015 06:41:27
Откуда: Благовещенск

Сообщение Андрей СШ »

Вы уверены, что команды дисплею не приходят на ногу, управляющую транзистором?
Реклама
Эиком - электронные компоненты и радиодетали
Встал на лапы
Аватара пользователя
Сообщения: 132
Зарегистрирован: Вт мар 04, 2014 20:09:54
Откуда: Орёл

Сообщение seval »

Андрей СШ писал(а):Вы уверены, что команды дисплею не приходят на ногу, управляющую транзистором?
Что то я аж заикатся начал. :o
Вроде уверен.
Вот сравнение

Код: Выделить всё

_gtv3 =  ((_gtv1) >= (_gtv5)) && (! ((_gtv1) <= (_gtv6))) ;
_gtv4 =  ((_gtv2) >= (_gtv5)) && (! ((_gtv2) <= (_gtv6))) ;
А здесь выходит на транзистор

Код: Выделить всё

digitalWrite(9,  (_gtv3) || (_gtv4) );
Когда реле просто щелкает, например раз в секунду, то все нормально, но если оно стоит долго включенным тогда начинаются проблемы.
Я вот вспомнил что у меня между мастером и слейвами провод витая пара, это нормально? Длина максимум 7 метров
Реклама
Опытный кот
Сообщения: 806
Зарегистрирован: Ср май 06, 2015 06:41:27
Откуда: Благовещенск

Сообщение Андрей СШ »

В программе не назначены ноги для интерфейса с дисплеем кроме

Код: Выделить всё

#define OLED_RESET 4
Как у него остальные ноги по умолчанию заданы непонятно
Реклама
Встал на лапы
Аватара пользователя
Сообщения: 132
Зарегистрирован: Вт мар 04, 2014 20:09:54
Откуда: Орёл

Сообщение seval »

Андрей СШ писал(а):В программе не назначены ноги для интерфейса с дисплеем кроме

Код: Выделить всё

#define OLED_RESET 4
Как у него остальные ноги по умолчанию заданы непонятно
Дисплей подключен по I2C. Это аналоговые ноги 4 и 5 (нога 27 и 28 МК)
Я так понимаю OLED_RESET 4 это параметр и не относится к ногам МК
Сейчас пробую запустить (транзистор еще не менял). При запуске реле включается на две секунды, и выключается. Хотя первоначально в программе стоит включение реле на 10 сек. При выключении может дернуться немного. И все. Пока питание не выключишь.
Поменял конденсаторы возле стабилизатора на электролиты 100мкФ 16В и поставил 470мкф 16В на входе. Осталось поменять транзистор.
Опытный кот
Сообщения: 806
Зарегистрирован: Ср май 06, 2015 06:41:27
Откуда: Благовещенск

Сообщение Андрей СШ »

Фича в том, что этот драйвер может программно генерировать I2C на любых ногах и использовать аппаратный тоже. Надо точно выяснить какой режим ему задан. Или проще зокомментировать все обращения к дисплею из программы (вместе include) чтобы не гадать.
Встал на лапы
Аватара пользователя
Сообщения: 132
Зарегистрирован: Вт мар 04, 2014 20:09:54
Откуда: Орёл

Сообщение seval »

Андрей СШ писал(а):Или проще зокомментировать все обращения к дисплею из программы
Попробую сегодня попозже.
Убрал дисплей из программы. Получается что еще поменял конденсаторы возле стабилизатора. Добавил 470мкФ конденсатор на входе. Заменил транзистор. Поставил в «боевые» условия.
Два раза поднял влажность в ванной. Вроде сработало.
Потом обратил внимание что вентилятор постоянно работает.
Теперь при подаче питания реле срабатывает даже без МК. :))
Завтра буду смотреть кто виноват.
Встал на лапы
Аватара пользователя
Сообщения: 132
Зарегистрирован: Вт мар 04, 2014 20:09:54
Откуда: Орёл

Сообщение seval »

Попробовал программу что бы щелкало реле раз в секунду. Поработало так примерно пол часа, и начались сбои. Время срабатывания менялось. Попробовал стабилизатор 7805, а он горячий. Подержал немного рукой, он остыл немного и работа реле стабилизировалась. Чего это?
Открыл глаза
Сообщения: 57
Зарегистрирован: Сб авг 15, 2015 08:47:13

Сообщение 47ронин »

Редко но бывает - самовозбуждение стабилизатора, электролиты и керамические конденсаторы надо и на вход и на выход стабилизатора повесить и чем ближе к ногам тем лучше.
Опытный кот
Сообщения: 806
Зарегистрирован: Ср май 06, 2015 06:41:27
Откуда: Благовещенск

Сообщение Андрей СШ »

И тишина.

Чем закончилась эпопея непонятно.
Ответить

Вернуться в «AVR»