Перейти к содержанию
  • записи
    53
  • комментариев
    1 217
  • просмотров
    81 319

Микроскоп в роли молотка?


Falconist

31 591 просмотр

На форуме как-то исподволь сложилось мнение, что я являюсь каким-то "микроконтроллероненавистником"... Отнюдь нет! МК - великолепный инструмент для решения множества достаточно сложных задач, которые с применением рассыпной логики решались с огромным геморроем. Ключевые слова здесь: "достаточно сложных"! Но когда МК пихают во все дырки куда ни попадя (типа помигать светодиодами) - поневоле приходят на ум слова "забивать гвозди микроскопом". Причем, апологеты массового применения МК заливаются соловьями (сиречь нагло врут), утверждая, что при изменении алгоритма работы "в железе ничего менять не надо - только в прошивке".

Ситуация вчерашнего и сегодняшнего дней, категорически противоречащая этому утверждению: взял субподряд на изготовлении узла управления специфической мигалки для авто. Алгоритм такой: при подаче напряжения питания должно последовать 4 вспышки, после чего светодиод светится постоянно, пока не снято напряжения питания. Если снова подать питание - цикл повторяется. Если снять питание, пока идут вспышки, то при его новой подаче цикл начинается сначала. Причем, первый импульс должен начинаться в момент подачи питания.

Собственно, схема была уже изготовлена "умельцем", выполнена на микроконтроллере. Показана в работе клиенту. Тому не понравилась частота вспышек (слишком частые), потребовал ее уменьшить. А "умелец" куда-то сдрыстнул и сейчас находится за пределами реального доступа. ВСЁ! Прошивка неизвестна. Программатора нет. Средств изменения констант на плате нет.

Даже если бы всё (за исключением последнего пункта) и было - попробую ситуацию немного усугубить. Изменили константу, отвечающую за частоту. Прошили МК заново. Показали клиенту. Ему не понравилось количество вспышек. Потребовал увеличить с 4 до 8  Изменили константу, отвечающую за к-во вспышек. Прошили МК заново. Показали клиенту. Теперь ему снова не понравилась частота вспышек - слишком мала. Изменили константу, отвечающую за частоту. Прошили МК заново. Показали клиенту... И т.д. и т.п. Причем, клиент ничего не может поменять сам - только ехать на сервис, чтобы перепрошивали МК.

Причем, утрировал ситуацию я не сильно. Буквально вчера речь шла о 4-х вспышках. А сегодня генподрядчик возжелал, чтобы их было 8!

Покрутил я Т.З. и так и эдак... И уже ночью сообразил, что вся "хотелка" может быть реализована с помощью одной-единственной КМОП микросхемы CD4060:

Мигалка - логика.GIF

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

При подаче напряжения питания счетчик обнуляется через конденсатор С1 и запускается тактовая генерация. С выходов Q9 или Q10 (выбираемых перемычкой Х2) единичные импульсы поступают на силовой блок, запрещая его работу (т.е., формируя паузы между импульсами). Через 4-8-16 таких импульсов (опять же их количество выбирается перемычкой Х3), единица через диод VD1 "затыкает" генератор тактовых импульсов и счетчик остается в этом состоянии до снятия напряжения питания. На исполнительный узел поступает логический ноль, разрешая его работу. Частота генерации регулируется подстроечным резистором R1. ВСЁ! Алгоритм соблюден. Меняться в определенных пределах может клиентом, совершенно незнакомым с МК самостоятельно. Размеры платы практически такие же, как и с МК. Не требует программатора и умения программирования.

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


 

462 Комментария


Рекомендуемые комментарии



7 часов назад, Falconist сказал:

Скупой платит дважды 
 

 

Цитата

Таки мы продаем или покупаем ?

Используя МК можно даже не заморачиваться с джамперами и пр . Завести юсб интерфейс и оперативно менять настройки взяв с собой ноутбук. Даже корпус вскрывать не придется. 

Вы сами говорите про гибкость 4060 для этой задачи , так МК будет сверх гибок.

По большому счету все зависит от разработчика.

Да и перепрошивать , имхо, проще , чем перепаивать.

Изменил программу , скомпилировал, зашил , работает.

И так сколько угодно раз. А плату раз - два , пять можно перепаять, потом дорожки отслояться.

Ссылка на комментарий
12 минуты назад, E_C_C сказал:

МК будет сверх гибок

А нахрена нужна СВЕРХгибкость, если и обічной гибкости более, чем достаточно?

12 минуты назад, E_C_C сказал:

плату раз - два, пять можно перепаять, потом дорожки отслоят(ь)ся...

Это если проектировать так же похабно, как запрограммировал предыдущий горе-кодер. А на моей плате НИЧЕГО не надо перепаивать. НИ РАЗУ. Потому, как спроектирована с учетом всех возможных и невозможных переделок. И ноутбук с собой таскать не надо :P...

Кстати, на ней же буду делать защиту от перегрева 2 х 30 Вт матриц. Сначала они помигают 8...16 (как захочет заказчик) раз на повышеной яркости, а потом включатся на половинную яркость на постоянно. И опять же, только джампер переставить.

Вот так проектировать надо!

Ссылка на комментарий
1 час назад, Falconist сказал:

Вот так проектировать надо !

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

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

Лично мне, мое время жалко ,  изображать бессребреника можно, но  оценят ли ?

Собственно ,этот спор ни о чем. Все равно что спорить о том , какие МК  лучше - авр , пики  или, например стм. Всем понятно, что стм :-) ,  но ведь спорят.

Лучшая элементная база - та которую знаешь.

Изменено пользователем E_C_C
Ссылка на комментарий

Чтоб набрать ведро воды из колодца достаточно ведра и верёвки и нет нужды строить насосную станцию с инфраструктурой.... решение Фалкониста для выполнения требований заказчика считаю оптимальным решением. Раз такой заказчик, то при изготовлении девайса можно обсудить возможные варианты моргания и изложить алгоритм переключения джамперов в мануале. Пусть потом по хотелке как хочет так и переключает. 

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

Фальконист копеешным девайсом избавил клиента от всякой завистмости, предоставив ему самому выбирать алгоритм моргания и по факту сэкономил ему Н-сумму купюр денег разного цвета. Утрируя он избавил клиента от постройки насосной станции, приделав к его ведру с верёвкой банальный ворот, которому кроме вращательных усилий руки ничего не трэба.

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

Изменено пользователем FonSchtirlitz
Ссылка на комментарий

Не нашёл чёткого определения термина "необходимая достаточность"...Да и хрен с ним. Ёмкий термин и чисто по-русски уже самодостаточен. Для китайца или японца НД за обеденным столом это пара палочек. Для русского это ложка. Британскому серу/лорду трэба весь набор "инструментов" а узбеку для плова достаточно собственной кисти руки, естессно предварительно вымытой. Вот вам и критерий НД. Конечно русский может трескать плов ложкой, китаец ковырять его куайцзы а какой нибудь сер Гарри Уинсли Честертон будет три часа орудовать столовым серебром. И каждый при своём критерии. Вопрос. Нафига предлагать узбеку ложку, куайцзы или столовое серебро когда собственная пятерня, которая растёт и из меня, заменяет все предметы разом?

Другое дело на приёме у сера Честертона. На светском рауте куайцзы и пятерня с ложкой почему-то не катят... навязывание иного критерия НД?  Вопрос. Нафига такие заморочки если у приглашённых узбека есть пятерня, русского ложка и китайца палочки?

Ссылка на комментарий

Вообще-то, определение существует и изложено достаточно четко:

Цитата

Необходимыми условиями истинности утверждения А называются условия, без соблюдения которых А не может быть истинным.

Достаточными называются такие условия, при наличии (выполнении, соблюдении) которых утверждение А является истинным.

Суждение K является необходимым и достаточным условием суждения X, когда K является как необходимым условием X, так и достаточным. 

Ссылка на комментарий

Викиверсию филологическо-философской муры, а именно "видов связи суждений" отмёл сразу, т.к "суждения" и выбор минимально допустимого схемотехнического решения друг от друга как Владик и Минск. Я русский, и чую разницу языковых понятий на генном уровне. А вот словосочетание "необходимая достаточность" говорит само за себя и без трактовки. Я его смысл кожей чую. [не-обходи-(ми)мо] [до-ста(100%)-точно=до-сыта] В украинском языке есть однокоренное -дОсить, чаще произносится -дОсыть=достаточно.

Цитата

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

Изменено пользователем FonSchtirlitz
Ссылка на комментарий
1 час назад, FonSchtirlitz сказал:

чую разницу языковых понятий на генном уровне

Это Вы себе льстите. Гены здесь абсолютно ни при чем. Язык чувствуется поэтом "на вкус". А Вы- как раз поэт. Я тоже, потому тоже чувствую языковые понятия интуитивно.

Если охарактеризовать термин "необходимая достаточность" на банально-кухонном уровне (для простоты восприятия), то получается: "Больше - "масло масляное", меньше - маргарин".

Ссылка на комментарий

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

- А много ли "Маша" даёт молока?

- Не выдоишь за день, устанет рука!

Чувак поглядел мля на "Машу" свою

-Зачем же дурак, я тебя продаю?

-Я "Машку" свою не продам никому

- Такая скотина нужна самому! (с)

Ни петушки ни кукуха тут нема и ваш сарказм, гражданин @mail_robot, считаю не уместным. Он мне напоминает зайца на именинах у льва, басни гениального Крылова, только в народной интерпретации {похлёбка дрянь, пирог г@вно, подайте мне пальто...(R)}

Ссылка на комментарий
10 часов назад, FonSchtirlitz сказал:

Он мне напоминает зайца на именинах у льва, басни гениального Крылова,

Крылова ???

Хотя... ну может быть ... из неизданного...вам то виднее , гены же не обмануть.

16 часов назад, FonSchtirlitz сказал:

чую разницу языковых понятий на генном уровне.

 

Ссылка на комментарий

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

Ссылка на комментарий

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

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

Ссылка на комментарий
21 минуту назад, Falconist сказал:

про дисплей

При двух кнопках и карусельке,  с функционалом как у вашего устройства необходим дисплей? 
А вот при более широком функционале, для удобства, дисплей очень хорошее решение.

Ссылка на комментарий

И в итоге 99,99% возможностей оказываются МК не востребованными. А те, что востребованы - для ударов по гвоздю. С чем справляется и молоток.
 

Ссылка на комментарий

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

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

26 минут назад, Falconist сказал:

итоге 99,99%

Грустно конечно, что у вас такие итоги, даже меньшие чем у детей первый раз зажигающих светодиодик через Arduino.

Ссылка на комментарий
57 минут назад, EropbeB сказал:

для тех же кто с ними дружит и понимает, для того они проще молотка

Вот только согласовать с нагрузкой у них тямы не хватает. 
 

Ссылка на комментарий

Да хватает.

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

Забавно ваше сравнение в использовании мк по прямому назначению и микроскопа используемого не по назначению. Если нравится аналогия с гвоздем, ну пусть кмопка будет молотком, а мкашка тогда ну нейлер, ну никак не микроскоп. Не будет, конечно, такого художественного эффекта, зато ближе к сути.

 

 

 

Ссылка на комментарий
9 часов назад, EropbeB сказал:

если клиент возжелает шоб вымаргивало стишки морзой...

Вот только тогда это будет задачей как раз для МК! И другие варианты решения при данном условии будут ни аппаратно, ни экономически нецелесообразны.

Ссылка на комментарий

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Добавить комментарий...

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

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

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

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

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

Загрузка...
×
×
  • Создать...