Jump to content

    
Marks

Управление нагрузкой с помощью ATtiny13

Recommended Posts

Доброго всем времени суток, когда то очень давно заканчивал училище связи, но было это больше 35 лет назад, с тех пор много воды утекло, да и знания утеряны, мозг надо было постоянно "кормить".
А теперь к сути вопроса. В итоге должен получится "умный", в меру надежный выключатель питания борта радиоуправляемой модели.

Есть вот такая простенькая схема управления питанием нагрузки (картинка 1), в данном случае это лампочка. Суть схемы в том, что при замыкании кнопки лампочка обесточивается.
Задача, сделать управление этой "кнопкой" по средством прошитого в ATtiny алгоритма, но при этом исключить "случайные" отключения питания нагрузки, которые могут быть вызваны появлением на управляющем выходе МК логического ноля.
Суть идеи, некое устройство между выходом МК и затвором ключа, заменяющее кнопку, которое должно работать следующим образом, если на выходе МК появляется прямоугольные импульсы, заданной частоты, то кнопка считается нажатой.
Есть еще одна сложность, не сильно сложная, решаемая посредством использования драйвера или еще одного MOSFETA (картинка 2), питания нагрузки 8,4В, а питания ATtiny 5В, которые получаются от 8,4В через стабилизатор типа 7805 или аналогичного.

 

photo_2022-01-18_22-35-41.jpg

photo_2022-01-18_22-45-43.jpg

Share this post


Link to post
Share on other sites
22 минуты назад, Marks сказал:

Есть еще одна сложность, не сильно сложная

А в чем суть вопроса тогда? Управление, как уже нарисовали, составным транзистором, считать импульсы тиня сможет... Начинайте реализовывать, сложности тут не вижу. Или вы хотите, чтобы кто-то за вас все сделал и проверил, тогда в раздел "предлагаю работу"...

Edited by mantech

Share this post


Link to post
Share on other sites

Я вероятно не понятно выразился, задача защититься от случайного появления на затворе полевика логического ноля, чисто аппаратным способом.
т.е. отключения питания должно происходить только при появлении на выходе Тиньки прямоугольных импульсов, заданной частоты.
во всех остальных случаях (постоянный логический ноль/логическая единица) питания нагрузки должно оставаться.
головой понимаю, что это достаточно простая задача, реализуется на RC цепочках, но пока никак не придумаю.

Share this post


Link to post
Share on other sites
52 minutes ago, Marks said:

заданной частоты

А это обязательно?

Просто меандр любой частоты через конденсатор на диодный выпрямитель и триггер шмитта.

На определенную частоту больше деталей потребуется.

Share this post


Link to post
Share on other sites
1 hour ago, Marks said:

Задача, сделать управление этой "кнопкой" по средством прошитого в ATtiny алгоритма, но при этом исключить "случайные" отключения питания нагрузки, которые могут быть вызваны появлением на управляющем выходе МК логического ноля.

А можно поинтересоваться, чем обусловлена такая перестраховка, почему ожидается случайное изменение логического уровня на порту микроконтроллера? Почему просто не использовать логические 0 и 1 для управления?

Если, например, у вас может по к-л причинам сработать перезагрузка МК по ватчдогу, то, если верно помню, по умолчанию, когда МК в ресете, состояние портов перейдут в высокоимпедансное состояние. Если в таком случае надо поддерживать высокий лог. уровень на затворе транзистора - это и так будет из-за имеющейся подтяжки к + питания, МК не повлияет. А после ресета надо сразу инициализировать порт в нужное состояние (выход с лог. 1), не переводя порт в состояние лог. 0, (т.к. нельзя допускать отключения нагрузки). Тут я могу мог подзабыть некоторые нюансы (т.к. с этими МК давно не работал), но идея такая. Но, даже, если всё же по какой-то причине может ожидаться уход состояния порта в лог. ноль, то, если эта вещь будет довольно кратковременная - можно просто поставить RC цепочку между портом МК и затвором с достаточной постоянной времени, чтобы транзистор не заметил кратковременного изменения состояния порта МК.

Возможно, конечно, есть требования к скорости отключения этой нагрузки, которые при этом не получится удовлетворить (т.к. наличие RC затормозит процесс), но просто вариант с генерацией меандра кажется избыточным на первый взгляд (по крайней мере без понимания специфики применения и причин того, что порт МК может "случайно" изменить состояние).

Share this post


Link to post
Share on other sites
6 часов назад, Marks сказал:

т.е. отключения питания должно происходить только при появлении на выходе Тиньки прямоугольных импульсов, заданной частоты.
во всех остальных случаях (постоянный логический ноль/логическая единица) питания нагрузки должно оставаться.
головой понимаю, что это достаточно простая задача, реализуется на RC цепочках, но пока никак не придумаю.

Гы..., на мой взгляд - задача совсем не простая. Придумать что-то можно, но, на "рассыпухе" получиться не маленький огород, а если использовать микроконтроллер, то можете получить вероятность сбоя ещё выше, чем было вообще без Ваших "защит"... Может искать другие критерии для принятия решения "надо точно отключить"... Например - обязательное присутствие ДВУХ сигналов для приниятия решения "отключить". И помните - самая надёжная деталь в устройстве - это та, которой в устройстве нет...

Share this post


Link to post
Share on other sites

Не понятно, зачем понадобилась такая возня, ведь у современных микроконтроллеров не бывает описанных судорог конечностей, а если абстрактно, то вот:

 

bad-567.gif.9aa95a6b5a03b88b8819f395595dc547.gif

 

Триггеры Шмитта могут быть как xx74LVC2G14, так и неивертирующими, т.е. xx74LVC2G17 — в этом случае, C2 и R4 надо подключить к общему проводу.

Share this post


Link to post
Share on other sites

Доброго всем времени суток.

8 часов назад, tgruzd сказал:

Случайно не WWDT изобретаете?

Нет, есть желание попробовать сделать "умный" выключатель питания борта авиамодели, просто на старости решил вспомнить молодость.
Пропадание питания на приемнике на долю секунды вызывает перезапуск приемника, этот процесс занимает от 0,2 до 0,5 секунды в зависимости от производителя.
В это время модель не управляема и этого времени часто хватает, что бы "встретиться с планетой".

3 часа назад, варп сказал:

а если использовать микроконтроллер, то можете получить вероятность сбоя ещё выше, чем было вообще без Ваших "защит"...

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

3 часа назад, варп сказал:

Может искать другие критерии для принятия решения "надо точно отключить"... Например - обязательное присутствие ДВУХ сигналов для приниятия решения "отключить". И помните - самая надёжная деталь в устройстве - это та, которой в устройстве нет...

ТЭСС и КАС нам в Питере (ЛВВИУС) преподавали хорошо )).

8 часов назад, MONSTR сказал:

Возможно, конечно, есть требования к скорости отключения этой нагрузки, которые при этом не получится удовлетворить (т.к. наличие RC затормозит процесс), но просто вариант с генерацией меандра кажется избыточным на первый взгляд (по крайней мере без понимания специфики применения и причин того, что порт МК может "случайно" изменить состояние).

скорость отключения не имеет значения, задача исключить случайное отключение.

Самая первая идея была поставить параллельно выходу вторую батарейку через диод и отключать ее банальным выключателем.

 

Современные системы питания, так называемые дистрибьютеры на авиамоделях имею вообще по два независимых канала ),
но это для больших моделей, в модели 1,8м размахом лишнего места мало.

53 минуты назад, Plain сказал:

Не понятно, зачем понадобилась такая возня, ведь у современных микроконтроллеров не бывает описанных судорог конечностей, а если абстрактно, то вот:

товарищ с ними вплотную работает, говорит что бывает.

Share this post


Link to post
Share on other sites
47 минут назад, Marks сказал:

говорит что бывает

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

Share this post


Link to post
Share on other sites
31 minutes ago, Marks said:

товарищ с ними вплотную работает, говорит что бывает.

Так физическая причина то этого ("случайного" дерганья) в чём? Товарищ её называет?

Quote

Самая первая идея была поставить параллельно выходу вторую батарейку через диод и отключать ее банальным выключателем.

А зачем вторая батарейка? Почему одного источника питания мало?

Share this post


Link to post
Share on other sites
21 минуту назад, MONSTR сказал:

А зачем вторая батарейка? Почему одного источника питания мало?

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

21 минуту назад, MONSTR сказал:

Так физическая причина то этого ("случайного" дерганья) в чём? Товарищ её называет?

Артем сказал, что в момент перезапуска именно Тиньки не возможно гарантировать, что на выходе не появится кратковременный логический ноль, почему не объяснил, да я и не спрашивал.
Отсюда и возникла идея управления не уровнем сигнала.

Я в итоге стал думать о варианте "два одинаковых канала от одного источника питания", реализация выглядит значительно проще.

25 минут назад, Plain сказал:

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

на реальном выключателе от "кнопки" на затвор резистор 100Ом и между истоком и затвором конденсатор 0,1мкф и вполне себе работает.

2 часа назад, Plain сказал:

Триггеры Шмитта могут быть как xx74LVC2G14

спасибо

Edited by Marks

Share this post


Link to post
Share on other sites
2 minutes ago, Marks said:

Артем сказал, что в момент перезапуска именно Тиньки не возможно гарантировать появление кратковременного логического ноля на выходах, почему не объяснил, да я и не спрашивал.

Стоп, а для чего гарантировать появление кратковременного ноля на выходе МК?

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

Из даташита Attiny13:

image.thumb.png.45cf4c7a815e7a73c3e9b956b1a18f91.png

image.thumb.png.753fc51458e2f6098ca0530765de4536.png

image.thumb.png.08c043dffef6524527ec026b686a1612.png

image.thumb.png.8b6f6a0f4f29cd277a17429d09619b7e.png

Т.е. во время ресета и сразу после - порт в состоянии высокоимпедансного входа, который не влияет на внешнюю цепь. При наличии подтягивающего резистора к + питания - затвор останется к нему подтянутым во время ресета и нагрузка не отключится. Вроде как нет причин микроконтроллеру притягивать затвор транзистора у нулю, если специально этого не сделано в прошивке.

 

Share this post


Link to post
Share on other sites
4 minutes ago, MONSTR said:

Т.е. во время ресета и сразу после - порт в состоянии высокоимпедансного входа, который не влияет на внешнюю цепь. При наличии подтягивающего резистора к + питания - затвор останется к нему подтянутым во время ресета и нагрузка не отключится. Вроде как нет причин микроконтроллеру притягивать затвор транзистора у нулю, если специально этого не сделано в прошивке.

С включенной подтяжкой к питанию

image.thumb.png.a3a57af74672cc6e45e8d63ffabc08fc.png

Т.е. гарантированного "жесткого" нуля в состоянии сброса и до момента инициализации I/O там быть не может.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.