Перейти к содержанию

Attiny15L таймер-автомат


Volodiatel

Рекомендуемые сообщения

Здравствуйте! Написал программу для управления двумя нагрузками под сабжевый контроллер. Работать по задумке должно так. Включаем выключатель, подающий питание на освещение и вентилятор, находящиеся в ванной. Загорается свет, запускается вентилятор. Через 1 час свет выключается, вентилятор включается каждые 22 мин на 1 мин. Если выключатель выключить и включить включится только освещение, отсчет времени начнется сначала. режим работы устройства переключится на следующий, то-есть на только освещение, а вентилятор выключится. Следующий режим - только вентилятор работает 22 мин и далее 1 мин каждые 22 мин. Если выключить и сразу включить выключатель, включится освещение и отсчет времени начнется сначала.

Схема проверки устройства и код во вложении. Питание пока осуществляется от отдельного блока питания 5В.

В коде временно для облегчения проверки установлены следующие временные промежутки: время работы освещения 10 сек, время работы вентилятора после отключения устройства  5 сек работает, 5 сек отключен.

 

Для исключения глюка в Протеусе, выводы PB1(вывод 6) и PB2 соединены между собой. Проблема в том, что в эмуляции все работает. Но в железе нагрузки не отключаются после выдержки времени. И еще заметил, что если включить питание без синхронизации, происходит кратковременное включение нагрузки, хотя код подразумевает без наличия сетевых импульсов нагрузки не включать.

Я начинающий на этом поприще, подскажите, что я не так делаю. Сменить контроллер, написать код на Си, уехать из страны пребывания не предлагать. Я просто хочу разобраться ну и научиться все-таки.....

 

2.JPG

Timcu.asm

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

на схеме нет никакого выключателя.

о каком выключателе идет речь, и что он выключает/включает?

Мудрость приходит вместе с импотенцией...

Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Публикую полную схему устройства. Если посмотреть на верхнюю схему проверки, выключатель тупо отрубает 220В.  Оптрон поставил временно, для гальванической развязки. Также, пока разбирался, немного изменил код. Код прилагаю. Теперь ситуация следующая. Включаю устройство(схему проверки, не готовое), т.е подаю +5 В от отдельного питальника. Нагрузка кратковременно включается и отключается.  Если подать сетевое напряжение на оптопару нагрузка включается и наконец-то через некоторое время отключается. Режимы переключаются, все в порядке. Но вопрос остался следующий. Почему при включении устройства идет кратковременное включение нагрузки? Нагрузка включается на время, определенное параметрами задержки в программе. Значит происходит прерывание по INT0 или по переполнению TMR0? Код подразумевает неподключение нагрузки, пока не придет хотя-бы один импульс сети на РВ2.

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

Поскольку я запутался, прошу помощи с исходником, может появятся какие-то мысли, почему так происходит?

1.JPG

TSU_exp.asm

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Конденсатор С3 уменьшите. 220-330 мкФ. Он долго заряжаться тут будет и в этот момент просаживать питание.

Зачем на PB2 резисторы? При размыкании выключателя контроллер просто обесточивается. С такой схемой вашу логику работы не реализовать. Проще запитать устройство на постоянной основе, а ваш выключатель использовать как удалённую кнопку.

P.S. А если при вкл/выкл пользователь замешкается и С3 не хватит на поддержание работоспособности? Всё сбросится. Это ненадёжно.

Изменено пользователем mr_smit
Ссылка на комментарий
Поделиться на другие сайты

1 час назад, donec сказал:

 

После включения реле напряжение питания МК не проседает? и VT1 и VT2 не пробиты?

Устройство реализовано только в стадии проверки. Схема выше.

1 час назад, mr_smit сказал:

Конденсатор С3 уменьшите. 220-330 мкФ. Он долго заряжаться тут будет и в этот момент просаживать питание.

Зачем на PB2 резисторы? При размыкании выключателя контроллер просто обесточивается. С такой схемой вашу логику работы не реализовать. Проще запитать устройство на постоянной основе, а ваш выключатель использовать как удалённую кнопку.

P.S. А если при вкл/выкл пользователь замешкается и С3 не хватит на поддержание работоспособности? Всё сбросится. Это ненадёжно.

Сами себе противоречите. С3 меньше, а то долго заряжается (ну, ладно, подберу опытным путем) и зачем резисторы если мк обесточивается..... Ну, как он обесточивается, если есть конденсатор, поддерживающий напряжение на МК? Сколько тот МК потребляет? Что-бы реле не брали лишний ток стоит диодик. Делитель показывает МК, что есть напряжение сети (импульсы там 50 Гц). Заодно там реализован таймер с внешним входом, который отсчитывает время, по истечении которого освещение вырубается. Тактовая частота МК 1,6Мгц, поэтому для обеспечения времени работы 1 час я взял частоту сети.

Товарищи, дорогие, коллеги! Заклинаю, отстаньте уже от схемы. Оно логически должно работать в стадии проверки. Проблема в том, что я еще только учусь программировать на AVR. Да, старый контроллер, да неудобный. Да, не поддерживается Си.

Оно уже работает, но есть проблема. Почему-то автомат включает нагрузки при первом включении без наличия импульсов сети. Я подаю питание на МК с БЛОКА ПИТАНИЯ 5 В. Не подключаю 220. И автомат включает нагрузки, хотя это не допускается алгоритмом программы. Чтобы включиться, должно произойти прерывание по INT0. А его нет. Или есть, но я не могу понять почему. Пожалуйста, прошу помощи только в этом!

Ссылка на комментарий
Поделиться на другие сайты

Все, проблему я решил, не прошло и недели. Огромное всем спасибо за участие. Но.... Уважаемые знатоки! Есть-ли варианты, где я накосячил, причем ошибка, как я и предполагал дилетантская.....  Я не сливаюсь, завтра напишу, а то уже умаялся.....

А нет, напишу сегодня. Геннадий, не видел вашего сообщения. Огромное вам спасибо! Именно это и произошло. На PICах писал, все инициализировал. А тут с чего-то взял, что содержимое регистров нулевое при старте. Еще раз всем спасибо!

 

Изменено пользователем Volodiatel
Ссылка на комментарий
Поделиться на другие сайты

И кто им помешает работать вместе?  Импульс пришел , таймер +1, прерывание по фронту инициируется... Все работает. Таймер переполнился - у него свое прерывание. 2 прерывания одновременно - не беда, сначала обработается по INT0, потом по переполнению таймера. Тоже все работает. Все по даташиту и проверено в железе.

Ссылка на комментарий
Поделиться на другие сайты

20.01.2020 в 18:59, Геннадий сказал:

значения по-умолчанию для Ваших переменных и флагов.

А также все порты вывода в ноль при старте . И не мешало бы базы транзисторов подтянуть на землю.

Ссылка на комментарий
Поделиться на другие сайты

Вроде, пространство ввода-вывода имеет значения по дефолту, оговоренные в даташите. Иначе регистр SREG, по умолчанию мог бы, например, разрешить прерывания....

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

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

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
  • Сообщения

    • Ну вот, пока готовил эскиз, на все вопросы ответили :-) Действительно, в 3D моделях DipTrace нет (или не нашёл) модели корпуса ТО220 с распайкой с нижней стороны и креплением к радиатору - по этому и получился такой 3D-портрет платы. Задуманная конструкция выглядит примерно так:  По факту, для наладки, сейчас подключаю транзисторы, закрепленные на радиаторе, проводами.
    • Чтобы потом не допиливать паровоз до истребителя. Заводские варианты схемотехники куда более предсказуемы. Из "вольностей" в первую очередь как-то решать проблему коммутации, подходящий переключатель для режимов искать история долгая и грустная. Что-то там с реле. На диапазоны 6п4н вроде же ?  пг2 хрен найдёшь, п2г тугое неудобство(  Рассыпушный ацп делать, боже упаси. Ну разве что был грешен, побаловался когда-то пнч-ацп. С 1108пп1 и 155 серией
    • Но зачем повторять 1в1? Там дана просто топология   Но не совсем же с нуля. Маловероятно, что вы найдете расширение диапазона 7135 до 200мВ по тому же методу, что это реализовано в В7-38, тем не менее, это вполне реализуемо. А вот до 20мВ я спустить диапазон не смог Что-то предусилитель интегратора отказывается вести себя хорошо   Для сравнения, та же точка (вход интегратора) при 200мв пределе, усиление х10   Ну и 2В Госпаде боже лтц2400, на этой штуке можно и 6 разрядник собрать, лютый АЦП, какие 4.5 разряда Цена на него сейчас конечно негуманная кстати.
    • Что то не нашёл примеров такой реализации замены. С нуля целесообразность подобного действа под вопросом. Тут мои полномочия всё) Как бы почему смотрю на hm8011-3, возможность реализации +/- норм настольного мультиметра без всякой там жести в виде кодинга и микро-мелких современных элементов. Для калибровки валяется где-то в1-12 и прецизионных резисторов если моих не хватит, есть где заказать.  На данный момент разве что качественного файла нет, пытался там всякими улучшайками чего сделать, увы. Пойду через впн лазить по уголочкам всяким, вдруг всплывёт чего. ------------- 8012, 80c32 + 27c512. Чертежи плат есть, осталось hex раздобыть 
    • Вот на этом фото? Я думал  тут радиатор будет под ними, и они к нему "пузом" будут прикручиваться, а дырочки - для отвёртки. У @asng60 транзисторы в наружную сторону "мордой" смотрят. "Пузом" на плату ложатся. Плата так разведена. Вот и непонятно, как их "пузом" к радиатору прикручивать.
    • Что касаемо модели Парафина, я бы порекомендовал товарищу Джексону проверить ток покоя выходного каскада, это первым делом, и вторым делом- проверить модель ОУ. Ибо в ОМ нет никаких оу а в парафине- есть. 
×
×
  • Создать...