Пользователь
–0,1
рейтинг
25 июня 2012 в 17:13

Я презираю Arduino из песочницы

Я – выпускник специальности «Микроэлектроника и полупроводниковые устройства». За годы обучения я разработал множество устройств на микроконтроллерах, участвовал в конкурсах вместе со своей командой и являлся заведующим лабораторией встраиваемых систем. У меня есть мечта – создать в своей стране условия для разработки роботизированных систем и есть план её достижения, одним из пунктов которого является участие в подготовке большого количества профессионалов в этой области.
Arduino


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

Это не первая моя статья на эту тему: у меня возникает желание написать такую сразу после прочтения фразы о безграничных возможностях платформы в DIY-топике на Хабре. У меня возникает желание написать об истинной цене деталей после прочтения статьи о покупке конструктора за $200 почти ничего не содержащего (уж простите, запамятовал где видел).


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

Благодаря Arduino увидело свет множество проектов, которые пылились в банках памяти мозга их авторов.

Честно признаюсь, я иногда и сам пользовался кодом, написанным для Ардуино (к примеру, фирма InvenSense производит модуль MPU6050, запустить нормально который получилось только у Jeff Rowberg).
Презираю я тех людей, которые, открыв для себя мир микроконтроллеров, не потрудились осмотреться в нём и тех, кто нагло наживается на подобных людях.

К нам в лабораторию заходил (и работал с нами) студент кафедры информационных технологий — поклонник Arduino. Человек тратил огромные деньги на покупку самих *дуин и модулей к ним. Я не без сожаления наблюдал, как будущий (я всё же надеюсь) создатель роботизированных систем не мог запустить ШИМ нужной частоты, хотя «лётных» часов работы с платформой он намотал немало.

Так вот, этот студент показал мне «измеритель уровня заряда батареи», или как-то так. Я специально нашёл его сейчас на ebay, где он называется «High Sensitivity Voltage Sensor Module -Arduino Compatible» и продаётся за $8.58. Вот он, на рисунке:

High Sensitivity Voltage Sensor Module


Кстати, центральный провод, который «+» — он просто висит в воздухе – всё сделано для максимального удобного подключения простого делителя напряжения, красная цена которому 2 цента за резисторы и 20 центов за разьём – это если в розницу покупать.

Это не единственный случай обмана нашего брата, ниже я приведу ещё несколько. Сейчас же, для любителей структурирования, я напишу основные недостатки Arduino.
  1. Библиотеки. Я люблю библиотеки – я пишу свои классы и функции, или использую грамотно написанный код моих коллег – это существенно ускоряет мою работу. Библиотеки Arduino просты в освоении, но на этом их плюсы заканчиваются. К примеру, вы можете всю жизнь формировать задержки с помощью delay-функций и не иметь простейшего представления, как работает таймер на микроконтроллере — из таких минусов состоят все библиотеки Arduino.
    Я имею в виду то, что таймер и другая периферия в микроконтроллере реализована так, чтоб компенсировать его однопоточность прерываниями. А люди тратят процессорное время на декрементацию неиспользуемой переменной.
    Деление и использование чисел с плавающей точкой на восьмибитных контроллерах AVR – это то, к чему надо прибегать только в самых крайних случаях, когда без этого обойтись никак нельзя.
    Строка в последовательный порт не посылается с помощью конечного автомата с множеством пустых циклов ожидания флага опустошения буфера в основном теле программы – это опять же пустое расходование ресурсов – ведь есть прерывания.
    Да, в Arduino можно включить прерывания, но кто это делает?
    На Хабре есть хорошая статья о том, как ускорить работу библиотек Arduino. Меня она, если честно, поразила тем, что даже работники оборонной промышленности скатились до работы с платформой, но дать общие понятия о скорости работы этих библиотек она может.
  2. Среда разработки. Микроконтроллеры можно программировать в IAR, Eclipse, Keil и других, менее известных средах.
    IAR EWB

    А IDE Arduino является кроссплатформенным и с подсветкой синтаксиса.
    Arduino IDE


  3. Мощность. Причём, как аппаратная, так и рассеиваемая. Разработка любой встраиваемой системы начинается с выбора компонентов в зависимости от требуемых функций. Для моргания диодом Atmega328 (или 2560) – слишком мощно, а для создания системы реального времени с алгоритмами обработки изображений – слишком слабо.
  4. Расхолаживание программистов. Программирование микроконтроллера не требует особых навыков и умений, но потратить пару часов и изучить работу нескольких периферийных устройств, тем самым размяв свои мозги, всё же придётся. Зачем это делать, если можно написать что-то вроде analogRead и digitalWrite?
  5. Цена. Тут уже вопрос не только к производителям Arduino и клонов: цены на контроллеры AVR в целом завышены. К примеру, Atmega2560 обойдётся вам в $10. За такие же деньги можно купить два STM32F103. Так получилось потому – что людям лень учить другие контроллеры, а по этим кругом множество материалов и примеров.


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

Arduino Compatible Mini Motor Speed counter Sensor AVR PIC – заменяется светодиодом и фототранзистором, подключающимися к центральному контроллеру и двадцатью строчками кода. Он не стоит 7.98.

2*4 Matrix Keyboard Push Buttons AVR ARM Arduino Compatible – это просто кнопки, которые можно купить по цене 10 штук за доллар.

Есть один девайс в мире, который я ненавижу больше чем Arduino – это mbed. Его разработчики взяли контроллер LPC1768 (есть ещё на LPC11U24), припаяли его на плату с двумя стабилизаторами (о качестве разводки платы я говорить не буду), вывели половину ног наружу (вторая половина никуда не подключена, что очень раздражает), написали онлайн недо-IDE (впрочем, чуть лучше, чем у Arduino, хоть и требует подключения к интернету) и продают его за $64. Простите, но это уже совсем.

Что делать, если вы, вдруг, решили перестать топтаться на месте, и начать изучать микроконтроллеры?
  1. На Хабре был цикл статей «STM32F1xx — лечимся от ардуинозависимости вместе» — статьи хорошие и достаточно понятные, жаль, что автор забросил написание новых статей.
  2. Всех новичков посылают на easyelectronics.ru, где товарищ DIHALT публиковал учебный курс по микроконтроллерам AVR.
  3. «Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С» С. Ф. Баррет, Д. Дж. Пак – супер книга, помогает понять основы программирования на C для микроконтроллеров. Единственная проблема – вы вряд ли достанете микроконтроллеры Freescale, поэтому примеры придётся самостоятельно портировать примеры на AVR, PIC, MSP430 или любой другой контроллер.
  4. Перед покупкой чего бы то не было для своих устройств, почитайте об этом хотя-бы в Википедии — возможно эту же деталь можно купить дешевле, если назвать её по-другому.

Вообще знаете, что странно? Среди пользователей Arduino есть даже те, кто презирают Apple за их «направленность на недалёкого занятого-для-таких-мелочей юзера».

Я не хочу никого обидеть или переубедить. Но я буду рад, если хоть один человек, дочитавший статью до этого момента, поменяет Arduino на простой микроконтроллер – может быть, из него получится хороший разработчик встраиваемых систем в будущем.
@aronsky
карма
47,7
рейтинг –0,1
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое

Комментарии (516)

  • +145
    Я не хочу становится разработчиком встраиваемых систем. У меня есть прекрасная работа и прекрасная область, на которой я специализируюсь и которая приносит мне очень неплохой доход.

    А с микроконтроллером я хочу просто поиграться. Не заморачиваясь излишней пайкой, изучением периферии и прочим. И я готов переплачивать за простоту и отсутствие геммороя.
    • +53
      Кажется, автор имел в виду не тех, кому хочется поиграться, а тех, для кого это специальность и хлеб.
      • +14
        Кажется, что не тех.
      • +34
        Не представляю, для кого ардуино является специальностью и хлебом, кроме его продавцов :)
        • +2
          вы видимо не видели готовые продукты на аурдуйнях. Например автомат, торгующий прохладительными напитками. А если такие изделия существуют, то надо полагать, что их разработчики крайне мало понимают в электронике. Отсюда можно делать выводы о качестве конечных продуктов.
          Еще был случай, контора попросила разработать одно устройство. По сути очень простецкое с аппаратной точки зрения. Себестоимость конечного железа была около 300 рублей вместе с печаткой и сборкой. До меня его там разрабатывал ардуинщик. Мини серию в 50 штук он собирался сделать на ардуйне256 + шилд. Естественно цена там была аховая. Работодатель в этом плохо соображал, думал что такие модные веяния в мире электронике, что все это круто и супер надежно. Потом его друг узнал об этом и раскрыл глаза, вообщем вовремя спохватились. И супер модный код я тоже видел, немного смеялся.
          • +1
            В таких случаях три фактора часто действуют (по одному или в сочетаниях):
            — заказчик не компетентен
            — заказчик не готов платить за работу квалифицированны специалистов «почему-то» отя щи больше денег чем любители по-сути.
            — таки специалистов просто не хватает на всех заказчиков
            Про коррупцию и т. п. умолчим. И такая ситуация далеко не только на рынке разработки софта или девайсов, но и, например, на строительном, несмотря на то, что подлежит обязательному лицензированию деятельность на нём.
          • +21
            Тут есть и обратная сторона. Один супер-пупер-электронщик сделает дело и уволится. И фиг ему замену найдешь, чтоб разбираться в его супер-коде и супер-плате. В результате придется дважды платить — и ему, и тому, кто не настолько крут, но будет вынужден переписывать все с нуля.

            Так что бывает дешевле заплатить за менее красивое творение, но которое потребует намного более дешевой поддержки.
          • +1
            Вполне можно на ардуино сделать прототип или тестовую партию для проверки перспективности девайса. А заказчики, которые хотят то, что на слуху, вместо того, чтобы доверить технические решения профессионалам во всех отраслях водятся.
            • 0
              Под каждый контроллер, производитель продает так называемый отладочный модуль. Использовать андруино рационально, когда вы будет использовать Атмегу входящию в его состав. Но тем не менее все слишком заостряют внимание на мк производства Атмел и не видят аналогов вообще.
              • 0
                +В комплекте с отладочным модулем всегда идет тонна примеров.
              • НЛО прилетело и опубликовало эту надпись здесь
                • 0
                  Программные библиотеки есть и под другие мк. Например под Сygnal(C8051) от компании Силабс есть просто гора примеров и программных библиотек от производителя. Там даже есть Мастер который позволяет вам сгенерить конфигурацию пинов с нужными вам параметрами таймеров, SPI и тд. Также аналогичные мастера есть под все их микросхемы: под езерернет(CP2200), радио и тд. У других производителей мк тоже самое есть, но в меньшем объеме.
                  А что касается прототипов, то серийный Андруино дороже серийного СТМ32влдисковери, при том что последняя имеет куда как больше возможностей.
                  • 0
                    т.е. мастер вам код генерит по С++ и ассемблер.
                  • НЛО прилетело и опубликовало эту надпись здесь
                    • 0
                      1. Возможно.
                      2. Может. Но почему бы не пробывать и другие мк?
                      3. А с другими мк плат отлаженных плат нет? Не аргумент.
                      4. У нас(на Украине) дешевле взять стм32(20$) или Лаунчпад от ТИ(10$). Я не видел дешевых Андруин(в среднем от 30$). Возможно у вас другие ценовые расценки. Так что тоже возможно.
                      П.С.
                      А теперь подумаем сколько стоит напечатать плату:
                      К слову цена печати плат одной промышленной заготовки(300 на 400 мм)~10$(на заготовки размещается может как комплект из разных плат, так и одинаковые платы, цена с учетом распилки плат) Подготовка производства(изготовление шаблонов и тд)~40$.(цены Киевского завода Радар). Т.е. 40 платим один раз и 10 за каждый лист. Распайка-не знаю, но есть фирмы предоставляющие такие услуги. Такие услуги предоставляются как фирмам так и частным лицам. У китайцев еще дешевле. Разумеется еще комплектующие и тд, но обычно дешевле изготовить платы под свои нужды. Да и изделие лучше выглядит. Возможно вам действительно дешевле использовать Андруино, но у нас дешевле к нему вообще не прикасаться. Конечно будет еще этап исправления ошибок, но изделие будет качественней.
                  • НЛО прилетело и опубликовало эту надпись здесь
          • +13
            Ну и чёрт бы с ним, с торговым автоматом. Там разница в цене железки в 50 баксов роли не играет ни малейшей, зато для программирования ардуин и последующей поддержки кода можно задействовать более доступную рабочую силу. Это 21-ый век, когда время живых людей стоит намного дороже бездушного железа.
            • +21
              21й век: от говнокода и говносайтов переходим к говноэлектронике, дальше обратно к говномеханике… продуктам питания и т.п. Главное, чтобы самолёты не делали на таких игрушках и через 15 фреймворков…

              PS: минусуйте — я готов :)
              • +16
                говноэлектронике
                И в чём же она говно? В том, что неоптимально расходует вычислительные ресурсы? Но позвольте, код-то при этом сам по себе проще. Да, он медлителен, но он понятен, его легко читать и поддерживать. В конце концов в синхронном коде намного сложнее сделать ошибку. В итоге получаем ситуацию, когда не нужно знать особенности железа, достаточно сосредоточиться на бизнес-логике. Сейчас никто не пишет офисные пакеты на ассемблере, сейчас это приходит и на микроконтроллеры, ресурсы которых уже позволяют использовать тот же подход, что и для ПК.
                Резюмируя: мы получаем надёжность за счёт избыточности ресурсов. Если мне не изменяет память, в военных и используемых в опасных отраслях системах так делали всегда.
                Я понимаю вашу страсть к «байтоёбству», но в реальной жизни сейчас оно зачастую не просто не нужно, но и вредно.
                • –6
                  Не в избыточности дело. Используя чужой код получаешь запас чужих граблей/ошибок. Но для мелких домашних поделок это не имеет значения.
                  • +7
                    Используя чужой код получаешь запас чужих граблей/ошибок.
                    Т. е. вы предлагаете для, ну, скажем, текстового редактора с нуля писать прошивку BIOS, ядро ОС, библиотеки прикладного уровня и всё такое?
                    • +1
                      Нет, предлагаю разумно оценивать область применения поделки.
                      И если в драйвер для люстры (плавное включение, регулировка освещенности, расписание,...) я не парясь применю готовые либы, то в модуль управления паровым котлом перепишу их сам. Т.к. риски при зависании контроллера парового котла несколько выше.
                      • 0
                        Обычно достаточно взять адекватные проверенные временем библиотеки, а не наколеночное студенческое поделие, позавчера выложенное в интернете. Как правило, стандартные библиотеки от производителя устройства достаточно надёжны.
                        • –2
                          Их как правило нет. Точнее, то, что есть — это очень тонкая базовая прослойка. BIOS и близко не валялся, да.
                      • +13
                        То есть ваш пилотный набор велосипедов для парового котла окажется абсолютно безошибочным с первого раза,

                        в то время, когда

                        либа написанная, протестированная и отлаженная несколькими людьми в течение продолжительного времени и прошедшая боевую «проверку на вшивость» в огромном количестве разношерстных девайсов — так, поссать выйти?

                        :)
                        • +1
                          это зависит от уровня/квалификации разработчика ;)

                          микроконтроллеры это не линукс, там сложно найти нормальные проверенные либы.
                        • 0
                          использовал готовые либы под ту же ардуину и то приходилось исправлять баги и подпирать костылями. т.к. без них код просто не работал в ряде случаев.
                          не знаю какие там еще есть ошибки которых я не заметил, но т.к. я делаю «для домашнего применения» меня это мало беспокоит.
                      • 0
                        Вот я бы сделал как раз с точностью до наоборот — поиграть в переписывание либ под люстру еще куда ни шло, а вот с нуля на свои грабли наступать с паровым котлом поостерегся бы. Да, не брал бы первое, что под руку попадет, поискал бы качественные решения, но с нуля писать точно бы не стал — уже не раз проходили, что каждый вновь приходящий «крутой» разработчик горит желанием переписать все «правильно» и с нуля.
                        • –1
                          Все-равно библиотека библиотеке рознь. Когда андроид только появился, появилось куча глючных библиотек. Часть их было просто портировано под дэлвик, а часть написана с нуля. В итоге часто было надежней написать с нуля свой собственный (пусть и облегченный) вариант. Я имею ввиду библиотеки по сложности, как ORM.
                          Вообще написание с нуля не такая уже и плохая практика, если знаешь, что именно нужно, т.к. готовые библиотеки — это часто 90% ненужного функционала.
                          • +1
                            Ну для свеженаписанных/свежепортированных библиотек это нормально. Но свой велосипед тоже будет свеженаписанным. Кроме того, широкоиспользуемые библиотеки обычно выправляются быстрее — большая база пользователей эффективнее выявляет баги. Своей же на пользу может пойти только то, что в ней нет ненужного функционала и несомых им багов, да то, что она досконально понятна, что облегчает отладку.
                    • +1
                      Я предлагаю для текстового редактора писать код непосредственно под ОС, а не под какую-то виртуальную машину, развёрнутую на виртуальном сервере, с базой данных, веб клиентом… чтобы в результате на экране увидеть такой же редактор, только тормозящий на ровном месте.
                      • +4
                        Окей, тратьте на это пару лет жизни, я склепаю за пару дней, пользователь будет доволен, ведь его задачи решаются уже сейчас, а не когда кто-то допилит свою дорогую, сложную и непереносимую на другое железо систему, которая к моменту выпуска уже год как морально устарела.
                        • 0
                          А вы уверены, что каждому пользователю нужно тормозное, но переносимое на другое железо ПО? Каждый ежедневно запускает один и тот же текстовый редактор под виндой, на айфоне, на айпаде, в линуксе...?

                          Лучше написать хорошо под одну систему, чем плохо, но под все. Хотя я смотрю современные программисты думают иначе :)
                          • +7
                            Я верю в то, что решение, работающее сейчас, лучше решения, которое заработает через год. Этим всё сказано.
                            • +3
                              Это ли не девиз говнокода? Лучше сейчас тяп-ляп, чем завтра хорошо?
                              Если речь о сиюминутных игрушках типа новой версии винлокера, весёлого фермера и т.п. — то да, главное сделать срочно, пока это не сделал твой сосед по лестничной клетке.
                              Но это всё мелкие ремесленные поделки, не более. Если бы все программисты шли таким путём не было бы ни Quake3, ни AutoCad,… да в общем ничего хорошего бы не было. Были бы одни фриварные однодневки, за которые деньги платить жалко и которые зарабатывают только на рекламе.
                              • +11
                                facepalm.svg

                                Сделайте сначала хоть что-то, что уже сейчас, но работает. Ищите боттлнеки, оптимизируйте. Переписывайте совсем уж критичные части на C или даже на асме. В итоге у вас продукт начнёт работать завтра, а через 3 месяца достигнет 90% той производительности, что то сложное мегаоптимизированное поделие, которое вы бы выпустили через год, а потом ещё полгода фиксили баги. А они обязательно будут, поверьте. Только вот вылавливать их в таком коде намного сложнее. Как говорил один из создателей языка C, отладка кода вдвое сложнее, чем его написание, так что если вы пишете код настолько умно, насколько можете, то вы по определению недостаточно сообразительны, чтобы его отлаживать.

                                Так что рекомендую скатать свой перфекционизм в трубочку, отложить куда-нибудь подальше и вернуться к реалиям жизни.
                                • +3
                                  Где то рядом ходит старый общеизвестный термин «стоимость владения».
                                  В чем то вы оба правы. Просто потому, что представляете конкурирующие подходы. И наилучшее решение — вести параллельно такие разработки с целью сохранения конкурентности (когда это возможно).
                                  То что монопольное использование только одного пути — это тупик, надеюсь, очевидно?
                                • –5
                                  > Как говорил один из создателей языка C, отладка кода вдвое сложнее, чем его написание, так что если вы пишете код настолько умно, насколько можете, то вы по определению недостаточно сообразительны, чтобы его отлаживать.

                                  Извините, но вы сейчас что-то нескладное сказали, над вами потешаться будут…
                                  • +4
                                    Я всего лишь процитировал г-на Брайана Кернигана. Если вы вдруг не знаете, кто это, что вы вообще забыли на Хабре?
                                    • –6
                                      Предположил что вы соглашаетесь с этим бредом, как видно по реакции — не ошибся.
                              • +2
                                По-моему, вам холиваров надо. Вы, вероятно, ничего так и не смогли продать по-настоящему — начиная с переговоров, заканчивая внедрением. Тот девиз, который вы переиначиваете звучит так: лучше сейчас, но чтобы решало задачи, чем с рюшечками и няшечками когда уже совсем будет не нужно.
                              • +1
                                Помню, в середине 90-х разработчики Автокада в течение нескольких лет боролись с какой-то структурой размером в 18 КБ, через которую там шла вся работа. Все понимали, что это плохо, но ничего не могли с ней поделать. Чем это закончилось, не знаю.
                                • +2
                                  Это закончилось тем, что Автокад уже лет 10-15 является лидером на рынке 2D «САПРа», именем нарицательным и основоположником стандартов в этом деле.
                                  • 0
                                    Насчет 2D может быть. А так на слуху все больше Cyclone, Pointools, Geomagic, FaroScene, CloudWorx и прочие подобные системы…
                                    • +2
                                      Когда я был инженером, у меня на слуху для 3D были Компас, T-flex, SolidWorks, Pro-Engineer, Unigraphix, и любимая Catia.
                                      Как быстро всё меняется :)
                                      • 0
                                        Это мы со своими сканерами виноваты. Облака по 100-1000 миллионов точек надо чем-то переваривать :) А пользователи обрадовались возможности контроля сборки и reverse engineering — вот им и приходится пользоваться этими системами.
                                  • 0
                                    И при этом жрет ресурсов как лошадь. Нанокад по сравнению с ним, летает при том же функционале :)
                                    • 0
                                      Когда я работал с AutoCad — нанокада не было вообще.
                                      И старые версии ACAD'а летали очень шустро. После примерно 2002 и далее — с каждым годом(!) их стали набивать всякой фигнёй и они становятся всё более неповоротливыми. В те времена я уже перешёл на 3Д и потерял к сабжу интерес.
                  • –6
                    Вот я именно об этом! Любая прослойка, любая интерпретация с языка на язык, с одной виртуальной машины на другую — куча лишних движений, тормоза и растущая в геометрической прогрессии ненадёжность. К глюкам кода (который теперь пишется «легко и быстро») добавляются глюки прослоек.
                    • +1
                      Все эти лишние движения неспроста. Например, допустить утечку памяти на Java значительно сложнее чем на С. Виртуальных машин не так уж много, все используют одни и те же машины, следовательно, глюков там мало. Приложения же пишут все кому не лень, соответственно если производительность не так уж критична, то чем больше функционала реализуют стандартные компоненты, тем лучше (например, memory management). «Преждевременная оптимизация — это корень всех бед»(с). Это не говоря об отладке и прочих благах.
                      • –2
                        Зато допустить утечку открытых файлов — на яве куда проще чем на Си.
                        Вся эта автоматическая сборка мусора прекрасно стимулирует написание говнокода.
                  • +1
                    интересно, те кто минусуют этот пост под контроллеры программировали? :D
                  • НЛО прилетело и опубликовало эту надпись здесь
                • +1
                  А скажите пожалуйста, в ситуации, когда заказчиком поставлено ограничение на стоимость оконечного устройства, что не такая уж и редкость, будет ли допустимо для разработчика встраиваемых вычислительных систем «неоптимально расходовать вычислительные ресурсы»?

                  Может ли разработчик встраиваемых вычислительных систем поручиться, что ему не понадобятся в будущем, в соответствии с изменившимися требованиями заказчика, те самые вычислительные мощности, которые он так не оптимально расходовал?
                  • 0
                    будет ли допустимо для разработчика встраиваемых вычислительных систем «неоптимально расходовать вычислительные ресурсы»
                    Ровно до той поры, пока он вписываетесь в поставленные рамки, очевидно.
                    соответствии с изменившимися требованиями заказчика, те самые вычислительные мощности, которые он так не оптимально расходовал
                    Вот когда понадобятся, тогда и будет оптимизировать, содрав с заказчика на это дополнительные средства в связи с изменениями ТЗ.
                    • 0
                      Оптимизация встраиваемой системы может состоять не только в оптимизации программной составляющей. Вполне возможна ситуация, когда оптимизация программы исчерпала свои возможности и разработчикам придется переходить к оптимизации железной составляющей системы, что встает в уже совсем другие задачи, другие сроки и другие деньги…
                      Не все проблемы возможно решить лишь тратой денег, кое-где возможно придется потратить и свое время, которое могло быть потрачено с куда большей пользой…
                      • +3
                        Не все проблемы возможно решить лишь тратой денег, кое-где возможно придется потратить и свое время
                        Деньги — это время, выраженное через труд и средства производства.
                        • 0
                          Все же есть некоторая разница между тратой чужих денег и тратой своего времени…
                          • +3
                            Не хотите тратить своё время — найдите того, кто будет тратить своё и платите ему зарплату, так вся экономическая система уже много веков работает.
                            • 0
                              Однако мы отошли от темы изначальной дискуссии.
                              Опять же повторюсь, на мой взгляд, не все проблемы можно решить с помощью денег. Физические законы, например, с помощью денег не поменяешь.
                              Что мешает изначально делать нормальную систему, в которой предусмотрены возможные и скорее всего неизбежные изменения в будущем?
                              По крайней мере, не придется тратить свое время, которые могло быть потрачено с куда большей пользой, на куда более развивающие задачи. Причем, вышесказанное верно и для самого разработчика, как и для того, кого наймут.
                              • +2
                                Что мешает изначально делать нормальную систему, в которой предусмотрены возможные и скорее всего неизбежные изменения в будущем?
                                Вы пытаетесь предусмотреть все возможные изменения? Поздравляю, вы зря тратите своё время и деньги заказчика. Проблемы нужно решать, когда они появляются на горизонте, а не высасывать их из пальца.
                                • 0
                                  Не все проблемы можно решить, когда они появились на горизонте. Уточню — мы ведь сейчас говорим не о программном коде, а о железе, аппаратуре, на которую неумолимо действуют законы физики, как минимум.
                                  Небольшой пример. Заказчику — транспортной компании, в ведении которой автомобили и самолеты, понадобились некие GPS-маячки, которые она хочет ставить на свои автомобили и может быть в будущем на самолеты. Если мы пойдем по принципу «решаем проблемы, когда они появляются на горизонте», то скорее всего сначала будут созданы автомобильные маячки, которые потом попытаются впихнуть на самолеты — мы ведь решаем проблемы по мере их поступления…
                                  А потом внезапно выяснится, что проще спроектировать отдельные маячки для самолетов, потому что автомобильные не пролезают либо по электромагнитному излучению, либо по устойчивости к вибрациям и перегрузкам и так далее.
                                  Но что интересно, в случае, когда мы предусмотрели «миграцию» наших систем на самолеты, тратится меньше и денег и времени заказчика, чем в разобранном, увы. Небольшая доработка уже существующей системы и разработка новой это две отдельные категории со своими временными и денежными затратами…
                                  • 0
                                    Вы сейчас привели пример проблемы, которая уже маячит на горизонте, а не высосана из пальца. У меня такое впечатление, что либо я как-то непонятно излагаю свои мысли, либо вы не читаете, что я пишу.
                                    • 0
                                      Возможно мы друг друга недопоняли. Как я вижу, теоретическая возможность того, что GPS-маяки будут в будущем ставиться в самолеты — эта проблема не маячит на горизонте. А вот когда производителю таки по настоящему становятся нужны GPS-маячки в самолетах — вот тогда проблема и появляется на горизонте.
                                      • 0
                                        В общем, надо брать человека, понимающего что-то в управлении рисками, чтобы он посчитал, насколько целесообразно для предприятия тратить ресурсы на предусмотрение такой вот гипотетической возможности. Это вопрос исключительно экономической целесообразности, а не идеологии разработки железа и ПО.
                                  • +1
                                    Пример не из жизни. На самолёты никогда не будут ставить то, что ставят в такси. И наоборот компания-разработчик ПО авионики не будет заниматься gps-навигаторами для такси, потому что её медленный, учитывающий многие тонкости, процесс не заточен под «хочу фичу уже вчера, дёшево».
                                    • 0
                                      Я знаю — пример из головы, выдуман за пару минут. Хотелось с его помощью показать, что железо не настолько гибкое, как программные продукты и что ему приходится работать не в идеальной среде, а в реальном мире со своими ограничениями.
                                      • +1
                                        Софт тоже не такой гибкий, как кажется.
                                        Вон, в соседнем топике упоминается, что для решения одной проблемы софта (подтормаживание UI андроида) нужно практически с нуля переделывать ОС и весь парк программ. На этом фоне железо еще и подешевле будет.
                      • 0
                        Цитата из Гаррисона (вроде бы из «Фантастической саги»): «За деньги мы можем сделать практически всё. А за очень большие деньги мы можем сделать всё абсолютно. Просто на это нужно больше времени и денег»
                        • +1
                          Ну, одно дело цитаты из фантастики, а другое — реальная жизнь…
                • +3
                  Несколько раз пробежал глазами ваш коментарий, пытаясь понять, что в нём меня так зацепило. Ведь действительно, простота поддержки кода — это важный фактор и во всех серьёзных проектах её нужно учитывать. Но с другой стороны, фраза про то, что лучше написать хоть и медлительный, но более понятный для человека код подразумевает неутешительный вывод. Индустрия развивается, ориентируясь на посредственных специалистов. Теперь и в сфере встраиваемых систем, традиционно требующей высокой квалификации, больше не нужно быть супер профи чтобы писть код. Более того, лучше быть таким как все; таким, чтобы было легко заменить на кого-то другого.

                  Думаю, это не новость и не откровение. Действительно, профессия разработчика становится все больше похожей на профессию рабочего на заводе. Минимум индивидуализма, максимум стандартицации. Только осознавать это немного грустно.
                  • 0
                    Индустрия развивается, ориентируясь на посредственных специалистов.
                    Человеческое время стоит дорого. Даже профи потратит намного больше времени на поиск проблемы в асинхронщине, чем в синхронном коде, например. Зачастую дешевле отдать лишние пару баксов за железку, чем на пару порядков больше за труд специалиста. Экономическая целесообразность, ничего более.
                    • +1
                      Но ведь тактовая частота больше не растет? Так что любое масштабирование должно в конечном итоге стать асинхронным.
                      Но все равно непонятно, что сейчас выгоднее — выжимать последние проценты эффективности из однопоточного кода, стараться его сделать неэффективным, но понятным, чтобы профи смог переделать его в параллельный, или все бросить и разрабатывать параллельную архитектуру программы изначально? Я сейчас никак не могу выбрать между первым и третьим вариантами. С одной стороны, большинство пользователей проекта работает в пакетном режиме, и им будет достаточно запускать несколько программ обработки в параллель, с другой — не хочется заставлять тех, кто пользуется графическим интерфейсом, ждать лишнюю минуту появления промежуточного результата (ведь человеческое время стоит дорого...). Но оптимальная архитектура программы для двух вариантов различается кардинально :(
                      • +3
                        Но ведь тактовая частота больше не растет? Так что любое масштабирование должно в конечном итоге стать асинхронным.
                        Асинхронщина != распараллеливание. Когда наступит понимание того, чем они отличаются, продолжим дискуссию.
                        • –1
                          Разумеется, асинхронщина была задолго до многоядерности. Но распараллеливание без взаимодействия потоков… хорошо, пойду искать понимание.
                          • 0
                            Ну как пример.
                            apache для обработки каждого соединения форкается, порождая новый процесс. Обработка запросов происходит параллельно, но код у него при этом синхронный, т. к. поток ждёт завершения сетевых операций, чтения из файлов, etc.
                            nginx работает на фиксированном числе потоков (для упрощения можно сказать, что на одном, там обычно каждое ядро процессора обрабатывает свой набор сокетов). Он не ждёт, пока у него что-то прочитается из сокета/файла или завершится отправка данных, а обрабатывает другие события, меняя логический контекст задачи. Запросы обрабатываются асинхронно, но не параллельно, а последовательно.

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

                            В итоге знаете, чем всё заканчивается? В интернеты смотрит эффективный nginx или squid, которые пилит команда умных людей, готовых поддерживать эту сложную махину, а всю логику миллионов веб-приложений делают на чём-то, что каждый запрос обрабатывает синхронно в отдельном потоке. Просто потому что это проще писать и проще поддерживать.
                            • 0
                              Ясно, спасибо. Тогда аналогия с моей задачей будет — «а что делать, если появятся запросы, синхронная/последовательная обработка которых займет непростительно долгое время».
                              • +2
                                А вот это называется bottleneck (бутылочное горлышко), и его надо оптимизировать. Что не является поводом писать в так весь код.
                                • 0
                                  В моем случае это окажется половина кода (около 20000 строк) :( — длинная цепочка обработки потока данных, по большей части последовательная. Чтобы ее распараллелить, придется переобдумывать каждый фрагмент.
                • 0
                  Резюмируя: мы получаем надёжность за счёт избыточности ресурсов. Если мне не изменяет память, в военных и используемых в опасных отраслях системах так делали всегда.

                  Нет не получаем, потому что «потратить ресурсы впустую» != «увеличить надежность».
                  Надежность за счет избыточности — это, например, реализация алгоритма/функции тремя/пятью различными способами разными командами. Во время выполнения «побеждает» наиболее популярный вариант. Ресурсы непосредственно потрачены на увеличение надежности.
                  • +2
                    Они потрачены на упрощение, что прямо влияет на надёжность — в простом коде меньше ошибок и их проще исправлять.
              • 0
                К сожалению, вы правы. Один случай мне запомнился надолго. Когда вышел андроид, все кричали что-то вроде: «Да кому нужно это тормозное поделие на java», а потом, когда в телефоны начали встраивать процессоры по 1 Ггц и вышло что-то вроде arduino от майкрософта, для которой можно было на C# писать, все кричали, мол, кому это тормозное говно на микроконтроллерах нужно.
              • НЛО прилетело и опубликовало эту надпись здесь
                • 0
                  Я предпочитаю покупать что-нибудь посередине — например, «самую дорогую из не самых дорогих». Но обычно смотрю в первую очередь на функционал и производителя.
                  • НЛО прилетело и опубликовало эту надпись здесь
                    • 0
                      Там я вообще на ценник не смотрю. Иногда случаются неприятные неожиданности вроде носков за 250 руб, но редко.
          • 0
            Видел атмеловский чип внутри какого-то планшета. До сих пор гадаю, что он там делает.
            • 0
              Atmel делает не только процессоры, но и, например, EEPROM и Flash.
              • 0
                Точно не память, шесть-восемь ножек всего было. Вроде, Tiny, но давно было, могу приврать.
                • +1
                  Вот у меня прямо сейчас на столе лежит платка с микросхемой Flash-памяти о восьми ногах. Не Atmel, правда, а Microchip, но Atmel вроде такие же делает.
                  • 0
                    Сейчас поискал: контроллер тачскрина, MXT224.
            • +1
              Вот у меня на столе модуль от пром. контроллера одного из флагманов лежит. В нем тоже Атмел :)
          • НЛО прилетело и опубликовало эту надпись здесь
            • +1
              www.seeedstudio.com/depot/fusion-pcb-service-p-835.html?cPath=185 цены
              we.easyelectronics.ru/woddy/ocherednye-platy-s-seeedstudio-teper-vishnevye.html фото результата

              ну или резонит в москве хвалят (сам не сталкивался)
              • НЛО прилетело и опубликовало эту надпись здесь
                • 0
                  Фабрично выгодно уже от 10 плат.
                  • НЛО прилетело и опубликовало эту надпись здесь
                    • 0
                      Страныне у вас какие то заводы. У нас тут есть производитель:

                      Подготовка 600р за гербер слой. А дальше при заказе в 10шт будет меньше 300р за плату 10х15. Но там будет маска, металлизация, лужение. Срок изготовления — неделя.
                      • НЛО прилетело и опубликовало эту надпись здесь
                        • 0
                          Нет, не шлют. Это наш местный заводик. У них обслуживание совковое, зато можно сначала сделать, а заплатить через пол года :)
                          • НЛО прилетело и опубликовало эту надпись здесь
                            • 0
                              Ну не всем. Но мне уже через три заказа пошло сначала стулья, потом деньги :)
                        • 0
                          У них похоже даже сайта нету. Вот что нарыл:

                          www.price74.ru/?price&mode=firm&id=3588
            • 0
              Черт, у меня тоже автомат по продаже напитков!

              Но решил все указанные три проблемы простым способом — делаю только для себя!

              Хотя с другой стороны, если мне потребуется второй такой же автомат, то там сделать на 100% идентичную структуру будет сложно — попробую что-то оптимизировать, но уж точно не буду травить и утюжить, а тем более паять МК — простите, но время дороже.
        • +14
          У нас её часто используют для прототипов. Дешевле и быстрее купить всё нужное, пускай даже за $200, чем нагружать конструкторов, которых не хватает и день работы одного стоит компании дороже $200.
      • +3
        Скорее всего. Ну хочется мне мигать диодами с помощь мк, на кой мне самому разводить плату, искать компоненты. Ардуина изначально и предполагалась для таких вещей. Ну а переплата, автор поста разведет и спаяет мне плату (индивидуально, ну чтоб диодами поморгать)за 20-40$?
        • –1
          Да тысячи платок. Не обязательно выбирать самую тупую и огороженную.
      • +1
        А Aruduino разве предназначен для профессионалов?
        • +2
          Почему нет? Сделал быстро прототип, а если все супер — уже разработал промышленный вариант со своим железом.
          • +2
            Вроде есть профессиональные макетные наборы, не?
            • 0
              Тоже вариант
            • 0
              Конечно, именно так всегда и делается. Вот например отличная макетка www.terraelectronica.ru/news_made.php?ID=53
          • +1
            В случае, когда необходимо прототипирование, у разработчиков встраиваемых вычислительных систем есть возможность воспользоваться отладочными наборами, предоставляемыми самим производителем нужного им электронного компонента (коих — производителей — многие сотни и Atmel лишь капля в море).
            Пример такого набора — CC2530 ZigBee Development Kit (http://www.ti.com/tool/cc2530zdk)
      • НЛО прилетело и опубликовало эту надпись здесь
        • 0
          проектировка платы 2-3 дня. заказ в китае от 10штук — копейки (месяц почту ждать). паять надо время но тоже не особо проблема
          • НЛО прилетело и опубликовало эту надпись здесь
            • 0
              Дурик гол как сокол. Там нет ничего практически. Что либо к ней подключать это либо каша из проводов, Которые вечно пытаются вылететь либо делать шилд = плата. А раз плата, то сразу делаем все от и до и дурка не нужна. ЕДинственно бывают редкие случаи когда на дурку можно повесить нужный шилд и это будет прям вот в самый раз.
              • НЛО прилетело и опубликовало эту надпись здесь
                • 0
                  Если планируешь выпускать их более менее серийно (хотя бы десятки экземпляров) то заказная плата в любом случае будет. И на худой конец можно будет послать обезьяну которая вытащит ее, вставит новую и ок. А ардуиновский конструктор надо правильно разобрать и собрать.
              • 0
                Такие ли уж редкие? Тем более шилды можно собирать в этажерку.
                • НЛО прилетело и опубликовало эту надпись здесь
                • 0
                  Представь себе эту этажерку в серийном устройстве.
    • +15
      Полностью поддерживаю. Именно такой комментарий я сам хотел оставить.

      Я достаточно наигрался Ардуиной в паре с Андроидом. Было интересно создать какую либо «живую железку» под управлением телефона. Но углубляться в тайны микроконтроллера, пайку и все такое желания не было и нету :)

      Это почти равносильно тому, что презирать людей которые используют фреймворки или другие системы контент-менджмента, вместо того, что бы писать свои :)
      • +1
        Автор в конце намекал на apple, что ближе к делу нежели фреймверки :)
      • –3
        Большая часть фреймворков позволяет использовать 0,5-1% возможностей того, над чем они нагорожены.
        Скажем, из реляционной БД только записывать и сохранять по одной строчке.
        Ардуйня — как раз из таких. Кажется, что стало проще (а на самом деле, вещь закрыли шторкой с окошком, через которое видно лишь пару кнопок).
        • 0
          Аналогично, процессор использует только доли процента квантовых возможностей кристалла, из которого он сделан. Но мы же им пользуемся!
          • –2
            Потенциальные возможности кристалла нужно ещё раскрыть, фреймворки же скрывают уже подготовленное и приведённое в готовый к употреблению вид. Преподнося это как «удобство».
            • +1
              Не скрывают, а подносят в другом виде, более удобном. Аппаратный API оптимизирован для простоты его реализации, а вовсе не простоты работы с ним.
              Разумеется ограничения есть, и в случае wiring — довольно существенные, но для многих задач они неактуальны, а в других можно работать в обход. Или вообще отказаться от ардуино — это не серебряная пуля и для многих задач элементарно непригодна.
            • НЛО прилетело и опубликовало эту надпись здесь
    • +3
      Согласен с вами. Но своим постом я хочу привлечь внимание тех, кто хочет больше чем просто поиграться. Я не против Ардуино, но меня расстраивает её использование работниками моей отрасли (идея написания поста у меня родилась после нескольких случаев, 2 из которых я описал).
      • +5
        Я думаю, те, кто хочет больше, чем поиграться, уже сейчас используют более специализированные инструменты. А настоящего профессионала отличает способность выбирать инструменты, наиболее отвечающие задаче, а не руководствуясь «престижем профессии», «так принято» и «настоящие мужики не используют ардуино».
        • +3
          Как думаете, я бы стал об этом говорить, если бы я не заметил тенденцию? Вот сегодня человек опубликует в DIY статью, как собрать автомат на ардуино, а завтра студент понесёт преподавателю курсовую, сделанную из этой статьи. Или другой случай — приходит студент и говорит: я хочу научится программировать контроллеры, с чего мне начать — с ардуино?
          • +2
            А вы ему что отвечаете?
          • –2
            Вы конечно же знаете классический вопрос, который преподаватели задают первокурсникам радиофакультетов. Для тех, кто может не знать, напомню, о чём речь:

            — Здесь есть радиолюбители?
            Дальше, если кто-то отозвался (поднял руку, например) — традиционно преподаватель выгоняет отозвавшихся.

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

            Так вот, я это к тому, что если к вам студент принёс курсовую, сделанную на Арудино, его можно смело выгнать — уже не демонстративно. Ни к чему профессионалу использовать любительские инструменты.
            • +4
              Все верно. Но тому, кто занимается авиамоделированием, ни к чему заканчивать авиационный институт и тестировать свои модели в аэродинамической трубе. Это же хобби.

              Просто автор этой статьи немного размыто составил вводную часть и заголовок. В результате все любители восприняли посылку как крестовый поход против радиолюбительства. Ну хочется им платить за что-то. Ну пусть платят.
            • НЛО прилетело и опубликовало эту надпись здесь
              • –1
                Я бы запрещал… Или требовал бы аргументировать(Почему Атмега?-Почему не ПИК? Не МСП430 или любой другой?). Одна из повседневных задач электронщика выбрать этот инструмент. А специалист-пусть виртуозно владеющий одним инструментом-не кому не нужный специалист. Наличия кучи готовых решений? — Специалист должен уметь разобраться. Специалисту необходимо умение работать с техдокументацией(читать даташиты).
                • НЛО прилетело и опубликовало эту надпись здесь
                  • 0
                    Хорошо, но в каждой курсовой работе есть раздел: Выбор элементной базы или подобный ему… А чтобы разобраться с протоколом-проще слепить в Квартусе схему с пиком(там их достаточно много в стандартных либах). А еще сам Микрочип предоставляет хороший эмулятор встроенный в их ИДЕ. Зачем вообще железо использовать в таком случае?
                    • НЛО прилетело и опубликовало эту надпись здесь
                      • НЛО прилетело и опубликовало эту надпись здесь
                    • +1
                      Причины выбора дины могут быть типа «широкое распространение, высокоуровневый язык программирования, большое число готового кода»
                      • 0
                        Трудно найти такой мк, для которого не портирован высокоуровневый С...(мне только один такой попался это 8-ми ядерный P8X32A фирмы Параллакс, но для него есть свой язык) Большое число готового кода-есть примеры на сайте производителя, их часто достаточно для многих задач. Широкое распространение имеют также те же Пики. Что касается дешевизны, то лаунчпад на мсп430 или дискавери стм32 дешевле в 2 раза. Я не говорю выгонять-я говорю пускай аргументируют выбор. Правда есть случаи-когда вот под рукой валялось, потому его и взяли… У меня такое было, когда надо было завтра проект сдавать-а схема на пики вспыхнула синим пламенем, пришлось срочно хватать мк из состава МСП430 лаунчпада. Итого прошивка была за 30 минут портирована, ибо и там и там С.(правда проект не сложный был). С учетом того что МСП430 я держал в руках 1й раз в жизни-не плохой результат.
                    • 0
                      Простите, спутал квартус с протеусом.
          • 0
            Давайте не будем все же путать одно с другим. Вот придет к вам студент, вы ему и объясните почему не надо использовать ардуино. Если есть специалисты которые разрабатывают какие-никакие промышленные решения на ардуино — пусть. Всегда есть хорошие специалисты и всегда есть плохие! От этого не уйти никуда. Старайтесь готовить хороших специалистов, а ардунио оставьте нам, тем, кто принадлежит к области IT(программисты, сисадмины) но для кого микроконтроллеры не являются профильной стороной. Мы будем делать кучу прикольных штук в свое удовольствие, возможно кто-то сам углубится в микроконтроллеры и сменит ардунио на что-то другое.
            Являясь веб разрабочиком (пишу сейчас на java) я плотно работаю также и с фронтенд частью, и мне постоянно хочется сказать людям с которыми я работаю — «Не используйте jquery, вы плохо знаете js, вам надо его учить, вы пишите плохой код, в котором потом возникает много путаницы и так далее» Но jQuery сейчас популярна и любой за пару дней сомжет написать простенький функицонал, как и с вашим ардуино, но с этим кодом будет невозможно работать, а если проект большой то все надо переписывать иначе будет полная каша.
            Вот вам и аналогия. Всегда есть хорший специалист и всегда есть плохой. Плохой также может стать всегда хорошим если захочет.
            Но есть еще и 3 тип — это люди которые не хотят быть хорошими специалистами и не хотят быть плохими им просто нужно быстро и просто, а главное сейчас что-то сделать, скорее всего дя себя и для этого они ищут простой инструмент.
    • +3
      Берите отладочную плату, они есть для всех микроконтроллеров.
      Есть реально мощные варианты с блек-джеком и шлюхами (цветными сенсорными дисплеями, GSM-модулями, сетевыми разъемами и т.д.).
      Стоят обычно не дороже ардуины только с блек-джеком (каким-нибудь модным шилдом типа сетевого).
      Нужно все-таки по сторонам смотреть иногда.
    • 0
      Внезапно, большинство плюсовавших ненавидят говносайты на похапе.
    • +1
      Вот-вот, а ещё не плохо бы разделять людей, которые пишут логику, которая из простой железяки делает нечто умное и тех, кто просто организует работу этой железяки.
  • +4
    Начал изучение мк сразу с AVR. Arduino так и не попробовал. Считаю её игрушкой, которую можно использовать когда надо быстро спрототипировать некое устройство.
    • +2
      ардуино — нормальная тема для прототипирования

      к тому же, если покупать у китайцев, то внезапно оказывается, то arduino mega 2560 стоит не 2500 рублей, а $21.80 + бесплатная доставка
      • –3
        Что?! Это же нереально дорого, неужели Вы не понимаете?
        • +2
          Слушайте, ну куда дорого, я в день больше получаю. С ардуино можно за пару вечеров получить результат.
          Вы вместо этого предлагаете осваивать микроконтроллеры. Ок. Но если бы это было всё… Но ведь это не всё. Кроме собственно микроконтроллеров нужно же еще освоить схемотехнику, научится нормально паять, вытравливать дорожки и еще уйму разных прикладных навыков.
          Я лет 5-6 назад пробовал этим заниматся, получилось не очень и забросил. Чтобы во всем этом как следует разобратся уйдет месяц, не меньше.

          20$ или месяц изучения не нужных мне навыков… хмм, даже не знаю что и выбрать.
          • –1
            Дело не в абсолютной величине. Сравните с ценой аналогов, ну или с ценой «голого» процессора и макетки.
            • +8
              Я знаю, что там компонентов на 1-2$. Ну и что?
              Понимаете, я даже не знаю какие именно компоненты мне нужны. Я не знаю что потом с ними делать. Я не очень хорошо умею паять — мало практики. Не умею вытравливать платы. Не умею составлять схемы.
              А самое главное — не очень то хочу уметь. Что я буду делать с «голым» процессором? Повешу как брелок на ключи?
              • +1
                А что Вы делаете с процессором впаянным на платку и обозванным «Ардуино»? Травить платы необязательно — есть куча макетных. А навыки пайки еще никому не мешали: китайские провода отлетали и будут отлетать от наушников, зарядок и пр.
                • +1
                  habrahabr.ru/hub/arduino/posts/ примеров вагон.

                  Для реализации этих же вещей без использования ардуино потребовалось бы на порядок(или на два) больше знаний. А это, зачастую, означает, что они просто небыли бы реализованы вовсе.
                  • 0
                    Да неправда. На макетке с проводами собрать можно не менее сложные штуки, чем на ардуинах. Без паяльника.
                    • +4
                      На С можно писать не менее сложные штуки, чем на питоне с джанго.

                      Скорее наоборот, можно писать куда более сложные штуки. Думаю с помощью отдельных компонентов и самостоятельной их сборки тоже можно сделать куда больше, чем при использовании арудино.
                  • 0
                    Arduino Uno — это МК, программатор, стабилизатор напряжения(одна микросхемка на 3 ножки и пара конденсаторов), кнопочка, светодиоды и разъемы. Какие же она дает такие особенные возможности для реализации? Скорее добавляет лишнего хлама в схему.
                    • +6
                      Она не дает никаких дополнительных возможностей. Она очень сильно снижает входной порог.
                      • 0
                        Но есть же аналоги? Почему не брать их? Например сейчас появились очень дешевый платки от СТМ(Stm32VLDiscovery)? С любимым всеми ядром АРМа на борту.
                        • 0
                          Нагуглил. Стоит 20-23$. Можно за точно такие же деньги купить у китайцев мега2560.

                          Наверняка это хороший аналог, но у ардуины есть несколько заметных достоинств. Например довольно удобный язык(arm насколько я знаю не входит в число поддерживаемых МК). Куча готовых модулей. И самое главное — огромное количество how-to в сети.
                          • 0
                            Можно использовать wirish из проекта maple. И у той платки свой веский плюс — JTAG.
  • +15
    Предлагаете поменять модульную систему с унифицированными интерфейсами на самостоятельную разводку плат, их выпиливание, высверливание, рисование дорожек, вытравливании, лужение, монтаж и т. п.?

    Я помнится сам собирал устройства из модулей подобных «High Sensitivity Voltage Sensor Module -Arduino Compatible», содержащих резистор, транзистор или кнопку, правда самодельных. Один раз попилить, попаять, поклеить, а потом что угодно (типа приёмника прямого усиления, мультивибратора для мигания гирлянд или цветомузыки) можно было собирать без пайки, плат и т. п., про складывая кубики.
    • –10
      Дороговато, знаете ли, использовать какие-нибудь «дуины» в качестве игрушек…
      • +3
        Это и есть классическая игрушка, хобби из раздела DIY.
      • +22
        Я не хочу с игрушкой тратить все выходные, пытаясь адекватно выпилить плату, развести и пропаять домашними средствами. Уже молчу, что какой-нибудь RS-232 или другие приблуды для связи с компьютером заработают не с первого раза.

        Это так, крик души :)
        • +2
          Ну, не знаю, что вам сказать: я сначала на макетке собираю; потом уже напаиваю…
          • 0
            Даже GPS или Ethernet? :)
            • +1
              У нас все проще: RS-232, CAN, SPI…
              • 0
                Ну так у вас проще, а нас, может быть, и нет)
            • +1
              Я таким не занимался, но видел макетку с гпс приемником. Там одна здоровая гибридная микросхема и куча проводков было-ничего сверхневозможного. С ГСМом ситуация аналогичная(например модуль SIM300). А вообще есть куча макеток и плат переходников под корпуса TQFP, SOIC и тд(что касается езернета). Как оказалось, при наличие готового посадочного места паять-вообще песня.
        • +1
          Да вы что, в этом же весь кайф. Я иногда просто так что-нибудь выпиливаю и травлю. Что-нибудь припаиваю, а потом выбрасываю.

          Но это шутка :)
        • +2
          В том-то и дело, что если вы хотите собрать макет — ардуина чудесно подходит. Но меня вгоняет в смятение тот факт, что ардуину люди суют в продакшн. Особенно, когда лепят на ней n-коптеры.
        • +2
          Берите отладочную плату, они есть для всех микроконтроллеров.
          Бывают реально мощные варианты вплоть до цветных сенсорных дисплеев и GSM-модулей.
          • 0
            Согласен. Возможности Ардуины очень скупы. Все что можно на ней собрать без использования дополнительных модулей можно собрать вообще без макетирования (на худой конец смоделировать в том же протеусе). Пихать ардуино в окончательное изделие — вообще кощунство.
        • –1
          Кстати, к сожалению, разработчики (точнее, дизайнеры) игр думают также.
          Зачем тратить время на поиск аптечек — отошёл в уголок и раны сами собой затянулись.
          Модное говно вроде CoD — и вовсе мультик, который посмотрел от начала до конца за 4-6 часов и забыл.
          Никакого фана.
      • 0
        Сильно дороже чем PC с топовым процессором, парой топовых видеокарт и т. п.?
        • 0
          Ну, если на то пошло, то можно и «мэйбахи» какие-нибудь вспомнить…
          • +1
            Их никто не позиционирует как игровые, а тут именно «игровой PC», «игровой ноутбук» по цене много выше «офисного»/«домашнего».
  • +3
    Хорошо написал! Действительно, поражаюсь иной раз, когда вижу, что задачи простой автоматизации решают путем нагромождения множества всех этих *duino, NI'шных и прочих модулей. А когда этим еще и «рулят» из LabView, я понимаю: целью работы был только распил денег.
    • 0
      Автоматизации чего? Вы же не промышленные устройства?
      • +1
        > Автоматизации чего?

        Да хоть завода!
        • 0
          Ну кто будет автоматизировать завод с помошью платформы, предназначенной для " небольшое прикольное устройство может даже человек без специального образования, с минимальными познаниями в программировании и с отсутствием познаний в электронике" ССЗБ, если что-то пойдёт не так.

          • –1
            habrahabr.ru/post/141442/ ну вот чел например в оборонку влез с андруино… Думаю дальше будет хуже…
            • +2
              Тут скорее о состоянии оборонки нужно сожалеть, что конструировать электронные приборы приходится людям, не имеющего соотвествующего образования.
    • +5
      Если оно пользуется спросом — то почему бы и нет?
      Я вот сейчас вряд ли встречу программиста, котороый пишет на java и прям-таки занимается оптимизацией на уровне ассемблерной сборки. А ведь мог бы. Вопрос в затратах. Иногда дешевле потратить больше железных мощностей и заплатить за якобы никому не нужные резисторы с ценой по $8, чем разбираться, какой электрон куда девается.

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

      Я часто сознательно пишу код, который может и не оптимален по скорости, но зато в результате дает тот «конструктор», из которого потом можно легко клепать, не думая об особенностях. Это оправдано, когда скорость работы не важна, а важна скорость разработки. Другое дело когда важна скорость работы — тогда уж извини, скорость работы устройства возрастет, но поимеем проигрыш в другом — во времени этой разработки. Тут то же самое — либо клемпаем быстро, но затратно по деньгам, либо дешево, но сколько лет надо на изучение микроэлектроники в универе…
      • 0
        Да уж, не понять нам, нищим бюджетникам, такого…
        • +1
          спор идеологий. На мой взгляд излишняя оптимизация порой отрывает у проекта львиную долю времени. Последнее время калёным железом удаляю из себя оптимизаю. Нехватает мощности — другой камень. Памяти, другой камень и т.п. Цена вопроса ОДИНАКОВАЯ почти. Даже так, более мощный камень стоит ДЕШЕВЛЕ!
          • +1
            Я тоже стараюсь не сильно на оптимизации зацикливаться. Для начала — сделать так, чтобы система базовые функции правильно выполняла. А потом уже, если вдруг время появится, можно и поиграться в оптимизатора.
      • +2
        Есть тонкость путаницы тёплого с мягким. Если нужно скхозить что-то побыстренькому, то ардуино вполне. Если серьёзнее, то на мой взгляд стоит вообще забыть о микроконтроллерах AVR, есть более дешёвые и в тысячу раз более мощные решения.
      • +2
        В случае со встраиваемыми системами не получится просто доплатить кому надо, дабы получить более мощную систему — это не PC; обязательно придется решать множество не слишком заметных с первого взгляда вопросов, начиная хотя бы с того, что вы скорее всего не сможете просто выпаять из платы старый микроконтроллер и припаять на его место новый, более быстрый. Да даже если и сможете — заказчиком вполне могут быть поставлены жесткие ограничения по цене или же тепловыделение нового компонента будет выше, чем у старого и эту проблему придется как-то решать. Или же новый компонент может банально не влезать по габаритам или не проходить по чрезмерному электромагнитному излучению, влияющему на соседние электронные компоненты.
        Ну и заканчивая тем, что более быстрый компонент вполне может быть более быстрым за счет более высокой тактовой частоты, чем старый компонент. Что, в свою очередь повлечет за собой скорее всего полную переделку печатной платы, где этот компонент будет установлен — разводка печатных плат для высокочастотных устройств и для низкочастотных это две большие разницы.
        Вариантов масса и учесть их — задача еще та…
    • 0
      Вот часть аппаратуры Большого Адронного Коллайдера управляется LabView. Наверное тоже дураки ;-) Просто в странах с более развитой экономикой (на которые Ардуина в большей степени и рассчитана) стоимость труда, накладные расходи, стоимость времени ожидания, стоимость рисков что что-то не сразу заработает значительно выше чем у нас. Стоимость плат на их фоне уже не так сильно влияет.
      • +2
        А БАК тоже на Ардуине работает? :)
  • +10
    Нет, ну а что вы хотели? По-моему, Arduino за глаза хватает тем, кто не особо занимается ни низкоуровневым программированием, ни вообще чем-то связанным со схемотехникой и другими сложными словами.

    Профессионал прекрасно знает, что Arduino пацанам ему не надо. Так что…
    А встраиваемые системы это круто. Но Arduino как-то раз сэкономил столько времени и нервов, пока я пытался завести UART между контроллером и D-Link DIR-320. Ардуинка помогла быстро решить нужную задачу. И, да, подход хоть и дилетантский, но задачу он выполнил.

    P.S. А чем подсветка кода-то не устроила? :)
  • +22
    Автор критикует продукт нацеленный на любителей и поиграться с профессиональной точки зрения. Помоему это как-то не правильно. Разве есть замена ардуино, для людей которые не хотят сталкиваться с паяльником, но хотят попрограммировать микроконтроллеры?
    • +1
      Совсем не сталкиваться все-таки не удастся, даже с дуиной. Питание и моторчики-лампочки придется паять.

      Замена есть, конечно есть. Вот, например, ST выбускает копеечные платы с макеткой в комплекте. Ищите stm32f0-discovery.
      Но инстинкт и нежелание читать английскую документацию не позволяют выбиться из общего тренда. И ардуино царствует в умах самодельщиков.
    • 0
      Практически ко всем семействам контроллеров есть подобные платы. Есть и с ЖК-экранами и с тач-скринами и ещё много с чем. Периодически их раздают бесплатно на выставках и семинарах. Вот не далее как весной заполучил такую плату. Так там современный ARM Cortex-M3, нормальный дебаггер итд итп.

      И программируются они не намного сложнее на самом деле. Я сначала тоже на Ардуину смотрел, а потом увидел пару относительно серьёзных проектов на ней — так там всё тоже сводится к обычному С фактически, потому что в стандартных библиотеках либо нужного функционала нет, либо он тормозит.
    • 0
      Замены нет. Но программирование ардуины — иллюзия программирования МК, мир грёз, в котором неокрепший ум лишь погрязнет.
    • +4
      Автор критикует неспособность мыслить. Не более того.
      • +3
        И нежелание мыслить. А таких большинство.
  • +4
    Я программист но порой приходят в голову «железные» идеи. И они дохнут как мухи в банке т.к. нет необходимых знаний для электроники. Собирался в скором времени купить ардуину чего-то смастерить но Вы меня опечалили. Я увидел в топике ссылки на другие темы, может они мне помогут, просто…

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

    Короче внесли вы сумятицу в мою душу )
    • +6
      Нечего печалиться — покупайте, если нравится. Эта статья как критика профессиональным раллистом гражданской машины с точки зрения ее пригодности для ралли.
      • +5
        Скорей как критика хачи тюнинга. Не есть прикольные ребята которые делают его ради лулзов, чисто поржать. Это нормально. Хобби такое. Но ведь, глядя на них, находятся те кто начинает это повторять уже на полном серьезе. И вот тут становиться страшно.
    • +1
      Кроме ардуины есть много других аналогичных плат. Если Вас функционал ардуины устраивает — берите её. Если хочется большего — ищите другие варианты — там тоже НИЧЕГО не нужно паять.
      • –1
        Ищите другие варианты… в итоге упомянутый выше программист потратит дни/недели на поиски, сравнения, вникание в непрофильную область. А если пересчитать затраченное время на стоимость часа его работы… ой, не факт, что ардуина эта проклятая выйдет дороже.
        Доступность информации сильно недооценивают.
  • 0
    Если мы ардуину рассматриваем только в качестве исключительно хобби, на выходных пописать кода и поморгать диодами, то сколько будет стоить собрать аналог, начиная с покупки нормального паяльника, химии, инструмента и материалов?
    • +2
      Я думаю паяльник будет самой дорогой покупкой.
      • 0
        Мне бы цифру, что можно было сравнить. Хоть примерно.
        • +7
          Самая большая цифра будет «Время на обучение» :)
          • 0
            Время на обучение? Это несложно. Я научился за 3-4 дня. Самое сложное для меня было правильно нарисовать схему, и аккуратно просверлить отверстия. Если собирать аналог Arduino, то можно воспользоваться готовыми вариантами и просто распечатать.
            • +1
              У некоторых андруина стоит как час работы. Потому из плюсов сделать самому — только полученный опыт.
        • 0
          Зависит от качества конечно. Самый простой паяльник поиграться на выходных стоит меньше 200 рублей. Кусок текстолита в пределах 100. Хлорное железо для травли тоже рублей 70 за банку. Ну и детали.
        • 0
          stm32f0-discovery — от 8 долларов. Мощнее дуины намного, паять не обязательно.
          stm32f4-discovery — от 15, мощная, куча вкусняшек на борту.
          stm8s-discovery — от 6 долларов, сопоставима с дуинами по мощности, минималистичная, зато можно отломать от программатора.

          И это только ST.
    • +1
      В пару-тройку тысяч для базового набора уложитесь (но все равно, если радиоэлектроникой занимаетесь, вам все это будет нужно).
      А самопальный аналог ардуины обойдется рублей в 200..300. Но, конечно, все зависит от потребностей: можно и в 50р уложиться.
      • +3
        Я не занимаюсь радиоэлектроникой, потому мне, по вашим данным, внезапно дешевле купить готовый набор ардуины за 2500 рублей, вместо базового набора инструмента + затраченного на все это времени + деталей для собственно аналога. Вот вам и ответ. Я еще раз говорю, я рассматривал исключительно в виде хобби.
        • 0
          Да вам никто и не возражает: если «дуины» используются только как хобби — пожалуйста. Деньги ваши.
          Но если их начинают использовать для чего-то более серьезного…
        • 0
          Прикол в том, что сама по себе дурка ничо не умеет. Совсем. От голого мк ее отличает только подведенное питание, интерфейс для связи с компом и штырьки на портах. Вот и все, что там есть. Так что паять все же придется.
          • 0
            Про либы и документацию забыл.
            Да и digitalWrite(pin, value) куда проще, чем регистры дергать. Ведь надо учесть режим вывода, проверить, переключить, после уже записать нужное состояние.
            Но и медленнее конечно в 60(!) раз чем обычная запись в регистр. Но если ты моргаешь светодиодами какая разница сколько тактов это займет.
            • +1
              А при чем тут оно? Бери эту ардуину иде, пиши со своими любимыми либами, а полученный хекс заливай в микроконтроллер своей платы. Или накатывай бутлоадер, а дальше работай как с ардуино. Правда в выборе ограничен будешь только теми мк, что поддерживаются дуркой.
              • 0
                Именно так и делаю :) К сожалению это служит барьером для освоения других платформ. Дискавери и msp430 так и лежат на полке без дела :(
    • +2
      Я себе лет 7 назад собрал «ардуину» за ~500 рублей на макетке. Самое дорогое это pic16f877 был. 4 семисегментных индикатора, 6 кнопок (из мыша), панелька под МК и под кварцы, куча разъемчиков для подключения (с материнки), связь с компом по RS232 + внутрисхемный программатор. Бонусом возможность программировать радиостанции с компа :) Использую для оттестировать код, проверить работу периферии, изучить какое-нибудь новое устройство. А потом прошивку переношу в готовое устройство нажатием пары кнопок.
  • +3
    Думаю, не стОит так сурово. Ардуина занимает свою нишу, иначе она не стала бы столь популярной. Её назначение — именно поиграться. Сделать, например, автоматический выключатель света в сортире, или интеллектуальный преобразователь RS232 — GPIO. Солидарен с автором, самого ужаснуло упоминание сей железки оборонным инженером. Легкая попсовая штука, позволяющая людям несложно реализовывать немудрёные затеи, хотя и попадаются талантливые штуки. А что до цены на прибамбасы к ней — спрос рождает предложение.
  • +2
    Подписываюсь!
  • +8
    Да, мысли интересные. И только для разработчиков встраиваемых систем. А люди вокруг — разные.

    Я программист и контроллеры мне никогда не попадались. Но вот увидев статьи, что мигать светом в туалете можно даже через интернет — меня задело! И так появилось небольшое хобби, где управлять мнимой лампочкой нужно без использования большого системного блока ATX. Примерно так.

    Я наверно никогда не буду разрабатывать встраиваемые системы в стиральной машине. А вот сделать простую штуку для себя — только рад буду. Мне не нужно брать голый контроллер оптом в Китае, искать обвязку к нему, пилить и травить плату. Зачем мне этим заниматься, если времени и так мало? Я куплю Arduino за 10$, включу его в USB и за один вечер сделаю что давно хотел — например сигнализацию в дачный домик с GSM-модемом, охранными и пожарными датчиками! Я уж я её не буду продавать налево и направо — я буду пользоваться ею сам.
  • +3
    А что вы думаете о TI Launchpad например?
    • 0
      Launchpad хорошая штука, но думать и изучать там придется гораздо больше. Хотя бы даже архитектуру контроллеров MSP430.
    • +3
      Мы с коллегой хотим преподавать на его основе студентам основы программирования микроконтроллеров. MSP430G2553 имеют всё необходимое для обучения основам, являясь при этом запредельно дешёвыми (и вообще потенциально-бесплатными для университетов).
      Тем более, что при всех своих достоинствах, он является достатчно простым для понимания (характерная особенность большинства устройств TI).
      • –2
        А либы где готовые брать? Сколько займет прикрутить к msp430 например тот же езернет? К ардуине это потребовало менее часа (найти либы, проверить, выбрать стабильную).
        • +5
          Мне кажется, вы не до конца понимаете суть предмета «Программирование микроконтроллеров».
          • –2
            Отлично понимаю. Вопрос что вы хотите преподавать. Если программирование «сферического контроллера в вакууме» то msp430 и подойдет. Если же хотите подготовить специалистов прикладного уровня, то и учить надо что-то более распространенное.
            • +3
              Если в университетах начнут изучать ардуино, то откуда будут браться специалисты, чтобы писать к нему новые либы?
              • +2
                Из тех изучающих, кто захочет понять, «что у нея внутре». Такие наверняка найдутся.
              • 0
                Я не об ардуине говорю. Для подготовки к реальной жизни надо преподавать stm32 или AVR. Вы зайдите в любой магазин хоть российский хоть ебай и сравните цены и доступность AVR и msp430. При производстве реальных изделий MSP оказываются неконкурентноспособными. Ну и с документацией/примерами тоже туго. Единственный плюс — дешевые макетки, но этот плюс весьма сомнительный.
                • +2
                  Преподавание stm32 или AVR я поддерживаю. Отладочной платы такого
                  image уровня хватит на целый курс, а более-менее нормальный ВУЗ может себе позволить изготовление таких самостоятельно.
                • +1
                  Пару раз видел девайсы на MSP430. И оба были измерительными приборами. Здесь в пользу MSP430 играют два фактора — микропотребление (которое вообще одна из ключевых фишек семейства) и хорошие АЦП.
                  Так что свою нишу они находят. Ну и в конечном счете не так важно, на чем осваивать все это дело — в общем они одинаковы, а если инженера останавливают частные различия — его плохо обучили. На «освоенном» МК удерживает не знакомство с ним, а база наработок.
                • 0
                  У нас в Киеве лаунчпад свободно достается и стоит аж 10$. Образовательные учреждения на сайте ТИ могу заказать БЕСПЛАТНЫЕ семплы. Также данные семплы могут получить студенты через своих преподов(увы, для частных лиц семпл получить практически нереально). В качестве семпла есть куча отладочных модулей с впаянными экранчиками и прочей фигней. У них хороший набор периферии и они достаточно мало жрут. Но я бы взял все таки стм32 для преподавания… Все таки АРМ более актуальней.
            • 0
              Специалистов прикладного уровня в ПТУ учат.
              • –1
                Ага. Тогда и и с++ надо преподавать в ПТУ. а в вузах только брейнфак. отличный аргумент.
                • +2
                  Первым языком программирования, который нам рассказывали в университете, была машина Тьюринга — в курсе матлогики на первом курсе. Фортран появился только на втором. Считаю, что удачный подход.
                  • 0
                    Интересная позиция, но я её правильной не считаю. Особенно тратить время на фортран, когда есть более актуальные и востребованные языки.

                    Машину Тьюринга одобряю, т.к. это просто базовые основы.
                    • 0
                      «Когда» — правильный вопрос. Это было в 85-м. Более актуальных языков найти было не очень просто (разве что Алгол и PL-1).
                      • 0
                        в 85 году согласен, было актуально.
                • +2
                  Я всегда думал, что выпускнику вуза должно быть все равно, на каком языке программирования ему придется писать на работе, на бейсике или на джаве, с какими микроконтроллерами ему придется столкнуться. «Ай мы не учили ARMы, у нас лабы на К580 ардуине были».
                  Кстати да, я в вузе на к580 и к1801 учился программировать, 7 лет назад всего лишь. :)
                  • 0
                    Я тоже так думал, пока не пришлось программиста на работу нанимать. Вот тогда и приходишь в шок, от того что наши ВУЗы выпускают. А свободно программируют на любых языках единицы.
                    • +1
                      Если же хотите подготовить специалистов прикладного уровня, то и учить надо что-то более распространенное.
                      Однако Ваш язык программирования не так распространен в вузах :)
                      Представляю: кафедра С++, кафедра шарпа, кафедра Java, кафедра эзотерических языков.
                  • 0
                    Тоже думаю, что все равно. Да для него и лямбда-выражения на ассемблере не должны быть проблемой.
                    И он должен в рамках обучения написать хотя бы два malloc'а. А то придется программировать какой-нибудь DCPU-16 с нуля, и что он делать будет? :D
                    • 0
                      Писать «по собственному желанию»:)
                      • +1
                        А кто ж его потом на новую работу возьмет? Без знания DCPU-16?
        • +1
          В свое время максимальное что прикручивали с микроконтроллерам это была «внешняя память» (проекция триггеров и тп в память). А там уже зная основы, архитектуру можно было написать все что душе угодно.

          Любимый студенческий контроллер:
          image

          Который управляет стендами (делали девушки кстати):
          image
          image
      • +2
        Да они для всех практически бесплатны, цена в $4.30 чисто символическая, по названию платформы 430, и это включая дорогущую FedEx доставку. Документации полно, сред разработки и компиляторов хватает на любой вкус.

        Я выбрал эту платформу из-за наследия PDP-11, раньше программировал на БК-0010. Ассемблер MSP430 конечно довольно сильно отличается, но и в нем есть своя прелесть и красота.
      • 0
        Где они дешевы-то? Дешев только LaunchPad, сами МК дороже AVR'ок серии mega, при крайне спартанском фарше.
        LP наверное единственная отладочная платформа, закупаемая десятками ради прилагающихся к ней камушков (два G2xxx в комплекте и один F1612 в FET'е). А иногда ее и как arduino используют.
      • 0
        Тем более, что при всех своих достоинствах, он является достатчно простым для понимания (характерная особенность большинства устройств TI).

        Ага :) Сейчас как раз обдумываю статью про ассемблер C6xxx :)
  • 0
    Пользуясь случаем, спрошу у профессионалов. Сам электронщиком не являюсь, однако электронная часть будет использована в одном проекте. Задача: создать ≈100-150 устройств для пилотного проекта, использующих ZigBee. Возможностей готовых плат XBee не хватает.

    Пока вижу варианты решения:
    1. Arduino — благодаря стандартизованному шелду можно купить тираж в сотню устройств, соединить их, получить готовый прототип решения. Стоимость получится порядка (30+15)*100 = 4500 евро. Время разработки фактически эквивалентно времени написания и отладки прошивки, т.е. 1-2 недели.

    2. Спаять самому: стоимость будет примерно раза в 2 дешевле, т.е. можно уложиться в 2000 евро. Меньше не получится, т.к. ZigBee модуль. Время создания будет равно написанию прошивки И пайке, отладки и тестированию каждой из плат. На пайку и тестирование 1 платы уйдет пускай 30-60 минут. Т.е. около 8 плат в рабочий день. 100 плат будут готовы за 12 рабочих дней + риски. Плюс специалист по электронике будет заниматься тупой и совершенно демотивирующей работой, и велика вероятность что он просто пошлет нас куда-подальше, ибо «не для того я столько учился чтобы китайцем работать».

    Организовать сборку в Китае или Зеленограде — не вариант, т.к. стоимость в десяток раз превысит стоимость Ардуин, а сроки будут раза в 4 выше чем спаять самому.

    Какие еще варианты?
    • +1
      aronsky, dlinyj, shtirlitsus, Eddy_Em, k0ldbl00d и сочувствующие, предлагающие использовать другие решения. Ваше мнение действительно хотелось бы услышать, т.к. в данный момент действительно стоит такая задача, и, возможно, вы подскажете действительно отличный вариант. Заранее спасибо!
      • +3
        К сожалению по тематике Зигби ничего не могу сказать.

        Можно нанять студентов, которые будут паять за еду :), как делает dihalt
        • 0
          Опасаюсь, что получится отвратительное качество. Если будет рендомно лагать сотня устройств, то поддержка такого решения превратится в сущий ад.
          • +2
            ARM — спасёт отца русской демократии. Он дешевле и мощнее любого AVR
            • 0
              Плохо, что попадаются такие ужасные корпуса, что замучаешься паять!
              А ведь на стадии разработки паять совсем не хочется (т.к. наверняка, пока доведешь устройство до рабочего вида, спалишь контроллер-другой)…
              Но, конечно, сжечь двухсотрублевую МКшку — дешевле, нежели ардуину какую.
              • +1
                Они еденицы долларов стоят :). Ну TQFP вполне паябельные даже совковым паялом.
              • 0
                Сорокарублёвую STM еще дешевле. Предлагаю сделать макет на Arduino, а на этапе изготовления развести печатки под рассыпуху (тщательно всё проверив), попробовать собрать одно устройство методом ЛУТ (если слоёв 1-2), а потом уже заказать платы.

                Если цель — сделать быстрее, проще и дешевле — оставайтесь на ардуино. Если — качественнее, компактнее, серьёзнее и дешевле — делайте на рассыпухе.
          • 0
            Это решается самотестированием. Или специальной тествой прошивкой плюс тестовая пепяка одеваемая на порты во время теста. Не забывайте что сборка из модулей ардуины запросто может так же неконтачить.

            А по поводу монтажа можеем посотрудничать. У меня как раз бойцы простаивают
            • 0
              По монтажу вопрос будет актуальный после прототипа. Так что можем. Однако это ближе к зиме. Сейчас компонентов там будет порядка 10-15 баксов, плюс плата, плюс монтаж… Сомневаюсь что выйдет дешевле 40 баксов в итоге, а 5 баксов экономии не оправдывают того количества действий, которые нужно ради них проделать.

              В конце концов там надо еще софт писать, другие вопросы решать, а тут за 5 баксов на месяц работы.
            • 0
              Тестовая пепяка — это сильно :)
            • 0
              Как раз возникла потребность в монтаже компонентов. Честно говоря, думал что у таких спецов как Вы есть какой-то более хитрый автоматизированный способ монтажа/пайки, нежели студенты, готовые работать за еду =)
              Хитрый способ = сотня китайцев завод в Китае, найденный путем долгих поисков, проб и ошибок. Думал что есть предложения наподобие этого, но чтобы и компоненты сразу напаивали, по 1 центу за пайку.
              • 0
                1 цент за пайку это для меня дорого %)
              • 0
                С китайцами есть проблема — таможня. При моих объемах производства попадаешь на растаможку. Есть и конторы которые это берут на себя и паяют дешево (на уровне моих монтажников), но у них минимальный заказ от полумиллиона рублей. Я конечно осилю, но пока мне проще так.
      • +2
        Если необходимо произвести партию устройств, больше чем десяток-другой, у нас обычно пользуются услугами добрых китайцев: те довольно немного берут за изготовление партии печаток + пайку элементов.
        Правда, я лично с китайцами не связывался: серийным производством не занимаюсь, а одиночные изделия просто берешь себе, да паяешь.
        • 0
          поддерживаю. в данной ситуации — Китай — это наше всё.
          • 0
            Первая плата стоит от 5 до 15 тысяч евро. Тираж обычно берут не менее 1000 устройств. Сроки для производства и поставки первой партии несколько месяцев.
            • 0
              Это у кого такие варварские цены? Когда я узнавал, то стоимость изготовления первого образца (под соглассование) была 500 баксов. А дальше работают они только от 20к евро за заказ, возможна рассрочка. Оплата нормальным безналом, доставка до города транспортными компаниями.
          • +1
            К тому, же если ошибся в дизайне платы, то весь тираж, включая дорогущий первый экземпляр идет в утиль. Равно как и если после портотипа нужно будет изменить устройство — снова платить за первый экземпляр немалое бабло.
    • 0
      нет конкретики. думаю, можно подобрать подходящий по оптимальности эквивалент ардуины или любой другой отладочной платы с модулями, но, опять же зависит от поставленных задач и сроков реализации.
      • 0
        Задача — сбор данных со счетчиков воды/газа/температуры/влажности и передача данных по ZigBee, организованной по mesh-принципу. Решение должно быть энергоэффективным, предполагается возможность работы от батареек. К одному устройству нужна возможность подключения не менее 3 датчиков. Тип сигнала с датчиков может быть разный (аналоговый, импульсный и т.д.).

        Для обеспечения энергоэффективности устройство должно 99.9% находиться в спящем режиме, и при этом продолжать подсчет импульсов со входов импульсных счетчиков. По расписанию должно просыпаться и отправлять данные.

        На пилотный проект нужно от 100 до 200 устройств. Опыт работы с Китаем и Зеленоградом имеется по другим проектам (существенно более сложным с точки зрения электроники). Первая плата пробная стоит в 2-3 раза больше чем весь тираж Ардуин, сроки тоже большие, вопросы с таможней и прочей бюрократией.

        На проект отводится 1,5-2,5 месяца.
        • +2
          Энергоэффективность и спящий режим тогда про Arduino даже не стоит вспоминать.

          И со сроками что-то вы совсем загнули. За 2,5 месяца вы хотите разработать протоколы обмена, железо, софт, произвести испытания и отладку ПАКа и произвести 100 терминальных устройств?
          Это не серьезно.

          При нормальных сроках можно было бы порекомендовать например

          CC2420+MSP430 ZigBee/IEEE 802.15.4 development kit

          Необходимые АЦП у msp430 имеются. Энергопотребление ниже некуда. Исключительно профессиональное решение…

          Впрочем уверен, что у ST и Atmel'а тоже найдется что сказать по этому поводу…
    • 0
      Сколько людей занимается проектом и каких они специализаций? Это важно.
      После выбора микроконтроллера (низкое потребление, развитая система простоя, надёжность, запас мощности для апгрейдов), закажите себе отладочную плату у производителя. Соедините прототип проводами и начинайте писать софт.
      Тем временем электронщик разводит это, проверяет и отправляет китайцам для изготовления печаток. Только печаток, без напайки — это не будет стоить дорого. Китайцы сделают и электрические тесты.
      Когда печатки придут — их могут собирать студенты первых курсов либо колледжей соответствующей специальности за опыт.
      Я не знаю конечную цену вашего устройства, но 45 евро только за детали — это много. Вы уверены, что устройство будет конкурентноспособным? Эту ценц вы особенно почувствуете, когда пойдёте в производство (больше ≈100-150 устройств).
      • 0
        Количество людей будет зависеть от объема инвестиций, однако на прототип нужно расчитывать на 3 профессиональные пары рук — электронщика, и 2 программистов. У всех троих большой и богатый опыт работы в своих областях.

        Устройство не является конечным продуктом, а лишь частью программно-аппаратной системы, поэтому маржа в него не закладывается. Клиент платит за автоматизацию, а уж какими там методами мы ее обеспечим — это наша задача. Мы с удовольствием готовы использовать готовый продукт, просто его нет.

        Цена за первую плату в любом случае будет не менее 2-3 тысяч евро, китайцы не будут работать на партии 100 устройств по 5 баксов за штуку. Им за 500 баксов будет лень заморачиваться с этим делом.

        ИМХО идеальным решением было бы найти готовую плату, пускай не ардуино. После прототипа она в любом случае будет доработана, и тогда уже речь пойдет азиатских коллег. Сейчас же нужен прототип системы, нужно его сделать за 2-3 месяца, и нужно чтобы он адекватно работал. Китайцы со скрипом успеют доставить за это время, будут дороже ардуино, а смысл пока неясен.
        • +1
          Откуда у вас такие суммы за первую плату?
          Купите пару отладочных прат с тем же процессором, что и на понравившейся ардуине, накиньте ваши датчики и сделайте код. Вы вроде с опытом, сразу поймете срастается или нет. Разводите плату, заказывайте платы где-нибудь типа pcbwing. Паралельно закупите комплектующие.
          Ну а потом паять, 100-200 штук можно за пару дней спаять, но думаю можно и контрактную пайку найти.
          • +1
            Откуда у вас такие суммы за первую плату?


            Не совсем понял вопроса: откуда деньги на партию ардуин или откуда взята сумма за первую плату у китайцев?

            По первому варианту — какая разница, это бизнес и бизнес всегда требует денег на первом этапе. По второму — ну вот такой тариф. Возможно, мы общались не с теми китайцами. Если у вас есть контакты тех, кто готов делать дешевый тираж без платы за разработку 1го экземпляра, требований к минимальной сумме или количеству — очень прошу поделиться контактом.

            pcbwing — рассмотрим. Лично я не слышал, спрошу у коллеги, который этим занимается. Спасибо!
            • 0
              Да, я имел ввиду откуда такой тариф на первую плату.
              Тут конечно требуется уточнение, что туда входит. Если это тариф за разработку с нуля, то это одно, но если это только за то чтобы сделать плату и спаять ее, то как-то многовато. Лучше этими деньгами своих электронщика и программиста мотивируйте, они вам быстрее и лучше все сделают.

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

              На самом деле тут вся сложность по срокам упирается в пайку. Если своих мощностей нет, то надо искать кто спаяет по контракту.

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

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

              Насчет контактов по разработке сказать не могу т.к. я сам разработчик и моя ответственность заканчивается на рабочем прототипе готовом к производству. Сам платы для прототипов заказываю на PCBWING. Первые экземпляры паяю сам, не зависимо от сложности. В результате смутно представляю, что такое ардуино, но перед началом производства каждого изделия имею полностью рабочие несколько экземпляров именно в том виде, как оно и будет далее производиться.
  • +9
    Вы мне напоминаете людей, которые говорят, что покупать первую машину надо обязательно Ладу, чтобы: 1) не жалко её было разбить; 2) чтобы человек прочувствовал машину 3) чтобы умел ездить на механике и чтобы никакого автомата!
    Так вот, машина должна быть для человека, а не человек для машины. Если придумали автоматическую коробку передач, чтобы облегчить жизнь людям, то надо пользрваться этим благом прогресса. А досконально знать устройство автомобиля ни к чему — для этого есть автосервисы. Вы же не требуете бухгалтера, чтобы она знала устройство компьютера? А она от вас в свою очередь не требует знания дебета, кредита и ставок НДФЛ, только лишь для того, чтобы выплатить вам зарплату.
    • +1
      Но ведь так неинтересно. Если ты занимаешься чем-то и это тебе нравится, то хочется понять как это работает, все детали и особенности. Гораздо приятнее когда ты сам разработал плату, собрал ее, написал код и все работает.
      • +3
        кому-то надо машину, чтоб доехать до магазина, например.
        а кому-то — чтоб разобрать до винтика и собрать.
      • +3
        Кому как. Зачастую важен результат, а не процесс.
      • +1
        Все детали понять невозможно (на современном уровне науке уж точно), всегда придётся остановиться на каком-то уровне абстракции, можно на «кубиках» дуино, можно на процессах проходящих в n-p переходах, можно ещё ниже спускаться. С софтом примерно то же самое, когда-то с удивлением узнал, что в процессорах есть микрокод.
      • +3
        На самом деле с первого раза даже у профи-электронщиков в 90% случаях, никогда на 100% ничего не работает. Всегда все кончается кучей проводов. И только со второго раза(когда поправлены все ошибки) все может заработать. Это очень может демотивировать новичка.
    • 0
      Мне кажется, это некорректная аналогия. Конечно, в случае простого пользователя она верна. Но в случае разработчика — нет, он должен разбираться во внутреннем устройстве разрабатываемых систем, дабы мочь разрабатывать хорошие встраиваемые системы. А то получится так, что «досконально знать устройство системы ни к чему», а потом выяснится, что написанный код не работает из-за неких, не учтенных ранее особенностей системы, ведь он писался для «идеальной» системы в голове программиста, а не для реальной, на которую могут воздействовать десятки факторов, которые как раз и упустил из виду программист.
    • –4
      Типичный потребитель (потребыдло). Ставишь на одну чашу весов навыки конструирования девайсов, теоретические знания и опыт, на другую — некое готовое изделие (ардуйню). И естественно, та чаша весов, где лежит готовый предмет оказывается тяжелее.

      В корне не верно сравнивать некую вещь и умение изготовить вещь (возможно, гораздо более интересную). Если тебе второе не нужно, это вовсе не причина считать его чем-то второсортным (как отечественное корыто (Ладу) по сравнению с более дорогим импортным корытом). Если ты конечно не мнишь себя хозяином жизни, а людей, обладающих знаниями и создающих для тебя вещи — второсортным отребьем.
      • 0
        Вы про разделение труда вообще слышали?
        • –4
          Слышал немного.

          Красивую болтовню из учебника по экономике про время, деньги и прочее нельзя применять повсюду. В частности, инженерия и болтовня ГСМ-экономистов несовместимы.
  • +42
    Люди платят $8.68 за штуку, которая стоит не более $0.10? Так что же вы стоите, идите и продавайте им эти штуки!!! Можете даже как злобный капиталист продавать их по $0.50 — рынок будет ваш, а ненавистные ардуино и мбед разорятся нафиг!

    А пока вы жалуетесь на хабре, кто-то делает деньги.
    • 0
      Давно имею такую мысль :) А вообще таких много, например МастерКит занимается чем-то схожим…
  • НЛО прилетело и опубликовало эту надпись здесь
    • +5
      тут недавно проскакивала статейка про самодельные диоды...
      • НЛО прилетело и опубликовало эту надпись здесь
        • +6
          Диоды и триоды — это ладно, тут вон BarsMonster микросхемы собственные собирается делать
          • +5
            И да, я Ардуину тоже недолюбливаю
            • НЛО прилетело и опубликовало эту надпись здесь
  • +3
    Расхолаживание программистов. Программирование микроконтроллера не требует особых навыков и умений, но потратить пару часов и изучить работу нескольких периферийных устройств, тем самым размяв свои мозги, всё же придётся. Зачем это делать, если можно написать что-то вроде analogRead и digitalWrite?
    Ну, по поводу простоты, не соглашусь. Написать обработку аналогового входа для какого-нибудь STM32F не проблема, особенно учитывая наличие стандартной периферийной библиотеки и нормального даташита. Но как только пытаешься эти же драйвера подружить с FreeRTOS, временами требуется приложить достаточно много сил, терпения и времени.
    Пару раз наблюдала с каким трудом некоторые программисты на «высоких» языках осваивали программирование под МК.
    Сама имела дело с Arduino один единственный раз, на хакатоне по Android в феврале. Обплевалась. Не понравилось ни аппаратное решение, ни библиотеки, ни, тем более, лагающее IDE.
    • +3
      Я не зря привёл в качестве примера статью об использовании STM32. На инициализацию периферии у наших программистов уходит несколько минут, а FreeRTOS мы используем почти в каждом проекте — с ней работать намного проще.
      • +1
        Согласна. Но некоторые библиотеки все-таки приходится допиливать, потому что на том же freeRTOS они работают не совсем корректно.
  • +1
    Было бы интересно почитать обзор других демо-плат с аналогичными возможностями. Я сам учился похоже на той же специальности, но в наше время даже Adruino не было.
  • +3
    Использую Arduino когда мне нужно проверить какую-то идею. Я прекрасно понимаю, что всё то же самое можно реализовать гораздо компактнее и практичнее. Но! На это требуется больше времени. Настройка среды: «IAR, Eclipse, Keil» требуют какой никакой настройки. Через IDE Arduino я собирал проект на незнакомом компьютере за 10 минут. Удобство разьёма: мне не нужно каждый раз искать программатор (дома он, или на работе, или прикручен к другой плате). Мне не нужно думать над тем, как подключить ультразвуковой датчик (уже есть готовые и рабочие библиотеки). Вместо того, чтобы собирать сборку на диодах и тратить два вечера чтобы отладить её, можно взять мотор-шилд в котором всё это уже есть.
    При этом я скорее программист, чем электронщик. Мне не нужно по жизни разбираться в том, как работает та или иная плата, или помнить, какую ногу надо заземлить напрямую, а какую через конденсатор. Конечно, я не буду покупать светодиод только потому что у него подписано «Ардуино-совместимый». Но и желания собирать что-то что требует больше чем пять минут работы с паяльником у меня обычно нет.

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

    Так что в упор не понимаю этой статьи пропитанной ненавистью к одному из хороших средств достижения цели. Ненавидеть надо людей, которые не хотят совершенствоваться в области своих знаний, а не инструмент.
    • +1
      Если я правильно понял, статья рассчитана на разработчиков встраиваемых систем, которым нужно во всем этом разбираться, чтобы их системы работали. Не разобрался со своей печатной платой — получи нерабочее устройство или же рабочее, но порой выкидывающее престраннейшие глюки, источник которых искать придется еще долго. Не заземлил через конденсатор ногу, к которой подключается питание — привет высокочастотным наводкам по питанию. Ну и так далее. Железо ошибок не прощает.
  • +3
    Ну да, так во всем, собственно. Спрос и предложение сошлись именно в этой точке. Кто-то режет картоху на 4 части, засовывает в печку и продает «Картофель Айдахо» по 200 рублей за порцию, хотя там картох на 10 рублей.
  • +5
    А мне и моему сыну нравится ардуино. Раньше парень играл в конструктор «Знаток». Теперь играет с ардуиной. Маленькое замечание — физика в школе у него еще не началась. А по мне, так просто не охота заморачиваться со всякими программаторами, я не электронщик, я хочу просто поиграться.
    Еще меня радуют «разоблачатели всяких *дуин», если тебе настолько не нравится, то предложи что-нибудь свое (только пожалуйста без изготовления плат). Заодно глядишь, выпустишь свой более производительный конструктор. Чо, бизнес.
    • 0
      А вот это зря. Нинай, что за «знаток», но конструкторы часто весьма неплохи. Не только показывают как нужно соединить детальки, но и дают понять почему. Ардуйня же — это сугубо потребительский девайс рода «нажми кнопку — получишь банан». Её нельзя рассматривать, как конструктор, т.к. конструирования там нет. Купи сыну айфон — научится пользоваться айфоном, купи ардуину — научится пользоваться ей. Пользы одинаково.

      Советую завязать с ардуинами и послушать разоблачителей повнимательней.
  • 0
    Тут все дело в уровне подготовленности, времени, возможностях. Я в свое время тоже паял свои платы на контроллерах, модули делал, переферию, но времени на это перестало хватать, а необходимость появилась — ардуино самое быстрое и простое решение. Естественно нельзя его считать окончательным вариантом для серьезных разработок, но на уровне проверки возможности реализации, построения первой грубой модели и быстрого решения задачи вполне подходит.
    • 0
      А можно пример, в каких случаях ардуино дает возможность что-то проверить? Что на ней можно такого потестить, что на практике работает не так, как в теории? Цифровая электроника не такая уж и непредсказуемая вещь.
      • 0
        Вопрос не в том работает чтото так или не так, а проверить возможность какой либо своей идеи, например проверить будет ли работать GPS модуль и насколько он будет эффективней другого, или провести тесты различных компонентов. Понятно, что все это по сути одно и тоже, но зато позволяет сверить характеристики не по паспорту, а у себя на столе, убедиться, проверить, может быть выявить недочеты, несовместимости и учесть их в разрабатываемом устройстве.
  • +14
    Ардуиносрач =)
  • +1
    Хотел бы согласиться. Делать поделки за цену Ардуины, мне вообще не хочется. Они просто очень дорогие
    • 0
      А я иногда (когда требуется простое штучное изделие) просто покупаю Ардуину mini или nano за 350 рублей. Разве это дорого? Учитывая стоимость Atmega168 в 120 рублей, кварца еще рублей в 20, и прочей мелочевки, + сэкономленное время на разводку/травление/пайку.
      • 0
        Не так давно видел платку с кортексом, нацеленную на аналогичные мини-ардуино цели, но по цене 5-7 баксов. Насколько я понял, поддерживает Maple, а это прямой аналог фреймворка ардуино. Единственное, что неясно — это можно ли ее купить готовую.
  • +8
    я ардуинщик, я не хочу учить микроконтроллеры, я хочу поиграться
  • +1
    Сколько ненависти… любой человек, знающий свою область может написать аналогичное, например я веб-разработчик… и теперь мне надо писать статьи о том что нельзя использовать готовые CMS, а всегда писать свою под каждый проект?
    Честно — мне ардуинка нравиться и да, я понимаю что компоненты стоят намного дешевле и можно спаять самому, но вот проблема даже печатную плату сделать, всё напаять, надеятся что не спалил и т.д., намного удобнее (для меня) взять готовую ардуинку (например мини, которая по сути брейкборд для атмеги, но с удобствами), подпаять кнопки и спокойно поморгать светодиодиком… или полетать на коптере.
    У всех свои цели и задачи и не стоит так пинать ардуинку и модули к ней — за удобство надо платить.
    • +1
      Ну при его знаниях пусть организует производство более дешевых «ардуинок» с такими же удобствами — так народ брать будет на ура и только спасибо скажет.

      Но при всем моем уважении к автору, для этого надо еще организовать производство, просечь, чего хочет конечный потребитель, да и вообще иметь к этому талант. И все это стоит отдельных денег между прочим. В результате имеем цену. Ну может и завышенную, но если б все на каждом углу могли предложить подобное — согласитесь, цена бы сама по себе упала.
  • +24
    Я презираю тех, кто покупает в магазине хлеб. Нет, ну понятное дело, что вначале можно было бы купить хлеб — ну, чтобы попробовать, ощутить вкус и т.д. Но зачем покупать хлеб постоянно? Ведь это всего-лишь мука, вода, дрожжи + еще пару простых компонентов. Если это купить по отдельности — будет намного дешевле. Ну да, придётся построить пекарню и каждый день вставать в 5 утра, чтобы успеть замесить\выпечь булочку к завтраку, но ведь вы будете понимать весь процесс, сможете сэкономить (на партиях от 10000 булок) и вообще будете классным типом!
    • +4
      А между прочим домашняя хлебопечь… очень даже рулит :)
      • +3
        И корова на балконе… :)
    • +20
      Мука? Я презираю тех кто покупает муку, ведь можно встать ранним утром, засеять поле, ухаживать за ним всё лето и собрать прекрасный урожай.
      • НЛО прилетело и опубликовало эту надпись здесь
    • +1
      Аналогия в корне неправильная. Должно быть так: автор предлагает печь хлеб и муки в специальной пекарне. А ардуино фанаты предлагают это делать в той же само кастрюле, где варится борщ, только докупив при этом новый набор ручек к ней и насадку на плиту а в качестве ингридиентов брать пальмовое масло и смесь кукурзной муки с крахмалом. В итоге получается не очень качественно, дорого и в небольшом количестве, но зато удобно и доступно каждой домохозяйке, «которая готова переплатить за удобства и не желает пару лет тратить на изучение хлебопечек»
    • –1
      Я презираю идиотов. Которые позиционируют хлеб, как универсальную платформу для приготовления еды.
      • 0
        Не смешно. У ребенка целиакия, пшеницу ей нельзя. А у нас вся пишевая промышленность построена на пшеничной и ржаной муке.
  • +27
    Пост «расистский», хотя автора я где-то понимаю.
    Ардуино — это не игрушка. Это пример универсальной SDK c отладочной платой по цене в 10-100 раз меньше чем любые с похожим функционалом. Я работал на китайском заводе по производству медиа-плееров. Даже для самого простого ЦД-плеера отладочная плата стоила 10 000 Евро, и еще 200 Евро JIG для программирования. И безумная софтина а-ля IAR, чтобы сломать мозг и навсегда зависеть от того китайца, который все это написал…

    Вы чудесным образом выдаете за черное все, что на самом деле является белым.
    Ардуино привлекает к микроконтроллерам массу молодежи. Разве Вы не этого хотите, как патриот?
    Нет, в современных реалиях нет никакой необходимости так глубоко погружаться физические процессы микроконтроллера (этим занимаются совершенно другие специалисты — разработчики микроконтроллеров). Это все равно что полностью писать приложение на Асме, когда есть JAVA или .NET.
    Раз «микроконтроллер» становится настолько совершенным, и его цена (как микросхемы) уже не отличается от стоимости обычного резистора, будьте добры следовать за прогрессом и осваивать новую методологию разработки.
    Ардуино позволяет собрать и отладить контроллер на любой вкус, который ни коем образом не пойдет в серию в своем Ардуиновском виде. Для коммерческого проекта Вы закажете его отдельно, по своей схеме и только с необходимыми для этой схемы деталями. И он будет стоить для Вас свои положенные 10 баксов, а для потребителя — 50.
    Что Вы там говорите про невозможность процессов реального времени??
    Акститесь… Коптер, это не система реального времени? А здесь хватит и Вам и внукам…

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

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

    По человечески я Вас понимаю, я тоже патриот своей Родины. Но Родине не нужны супер-профессионалы по STM32F103, и даже не нужны разработчики своих аналогичных кристалов — все это уже есть у людей. Родине нужны хорошие программисты Ардуино на языке с подсветкой синтаксиса, а не быдлокодеры. Нужны светлые головы, с конкурентной ЗП и без патологических идей свалить в Кембридж. Нужен Ё-Мобиль. Нужен Фобос-Грунт, но на Фобосе… Нужны свои топливные элементы и супер-конденсаторы. Нужны сытые и обеспеченные лабораториями фундаментальные специалисты. И не нужно объять необъятное. Не имея своего кремниевого фундамента, не надо готовить по нему специалистов. Пусть каждый занимается тем, что у него получается лучше всего. Так у Человечества будет больше шансов.
    • 0
      Я собрал коптер. Естественно, плата управления — самодельная — на основе STM32F103. Изготовил я её ЛУТом, но есть готовые модули (тот же Discovery). На написание и отладку софта у меня ушёл 1 день (правда, алгоритм фильтра Калмана у меня уже был нарисован). Теперь он выполняет всё то-же, что делает стандартная плата управления и обладает ещё огромным ресурсом для моих экспериментов (мечтаю его сделать полностью автономным).
      Я не уверен, используют ли Кембридже Arduino, но в курсах от MIT вместо LabView (упоминавшегося выше), используют Python.
      • 0
        … и я за Вас рад, совершенно искренне.
        и даже больше, чем за АвтоВАЗ, потому что Вы это делаете бескорыстно.
        • 0
          Поясните суть своей аллегории.
          • +4
            Извольте. Вы проповедуете путь от А до Я, хотя в современных реалиях «А» и «Я» уже представляют собой самостоятельные предметы.
            При этом Вы не изготавливаете ЛУТом персональный компьютер, хотя могли бы пойти и по такому пути, чтобы быть до конца честным перед самим собой.
            Между этим и этим решением функционально разницы практически нет. Даже продукты на них почти одинаковы, за что говорит и Ваш коптер.
            Но у последнего есть отличный SDK, удобный, с множеством библиотек и огромным количеством готовых доп. модулей к основной плате.
            Это конкурирующие решения, и у второго сильное преимущество в среде разработки.

            Я не удивлюсь, если и другие производители в итоге совместят свои решения с языком Ардуино (Wiring), это позволит приложениям мигрировать между контроллерами и сыграет все