Сразу видно как человек относится к окружающему миру. Я ПРОГРАМИСТ — это проффесия будущего, а остальные динозавры и отмирающие проффесии.
А вот теперь посмотрите. Вы сидите в комнате которая освещается лампочками, которые питаются от общей сети, которая запитана от электростанций. Кто Вам всё это обеспечил. Те же электрики, которые собирали проводку, и линии питания, электронщики которые разрабатывали системы управления сетями, электростанциями. Разработчики и эксплуатационники систем АСУ, которые работают именно на языках LAD и FBD. Вся промышленная автоматика написана на этих языках, та что вас обеспечивает, кормит, одевает и обувает. Вот как раз для этих электриков электронщиков, и АСУ-шников рассчитана программа FLProg. И поверьте — это далеко не вымирающий класс специалистов, и я подозреваю этих людей как бы не больше «истинных» программистов.
Я то же специализируюсь на сименсе. Очень долго думал оставить network или сделать плату. И всё таки решил сделать так. Программа рассчитана на электриков и электронщиков, и для них понятие плата как то привычнее.
Управление девайсами на 220В? Добавить модуль реле и все.
Модуль реле накроется через неделю (желательно твердотельное реле или оптосемистр). При включении контактора ардуинка зависнет (необходима экранировка контроллера вместе с дисплеем), при срабатывании конечника расположенного за 10 м контроллер зависнет (необходима опторазвязка входа).
Считать данные с датчиков?
периодические зависания датчиков находящиеся на некотором удалении (необходима правильная экранировака кабеля+ правильный подбор самого кабеля).
Если хотите узнать какие реально полезные устройства собирают на ардуинке и какие проблемы возникают в процессе их создания — загляните на форум . Там электронщики собирают от устройств управления двигателем до дозаторов в пищевой промышленности и промышленных станков.
Вот как раз то потому что ардуино не решает их проблемы. Она имеет практически чистые входы — выходы контроллера которые требуют дополнительных усилий по их развязки с исполнительными цепями. Но поскольку по этой причине в по мнению програмистов ардуино — зло, то альтернативой является те самые контроллеры за большие бабки, как например habrahabr.ru/company/contactless/blog/213243 где все развязки уже сделаны и на долю программиста остается чисто творческая работа, и не надо марать ручки паяльником или чем то ещё
Мне кажется основной вопрос не ПОЧЕМУ не любят Arduino а КТО не любит Arduino.
Больше всех о том что ардуино ЗЛО кричат именно «истинные» программисты. А почему? Потому что они в основном только и умеют что писать код. Не спорю красивый, правильный, и надёжный. Но как только встаёт вопрос о том что бы разработать и расчитать входные развязки, выходные ключи, экранировку и развязки питания, они испытывают шок. «Транзистор, опропара — нет не слышали и не знаем что это такое». Им намного легче взять готовый контроллер за 1000500 рублей где все эти задачи уже решили те самые электронщики о которых они с таким пренебрежением отзываются («ну как же они не умеют писать красивый код, их задача делать для нас готовые железяки») и впарить их заказчику как абсолютно надёжное устройство.
А те самые электронщики если хоть немного разобрались с кодом сделают из той же ардуинки абсолютно надёжное устройство, пускай не с очень красивым кодом, но правильно рассчитанное и разработанное. И оно будет работать и приносить пользу в отличие от поделок которые творят «истинные гуру» программирования. Хотя и от этих поделок есть польза. По крайней мере есть откуда скопипастить куски кода))))
Еще раз — не следует смешивать горькое с холодным.
А чем отличается ПЛК и микроконтроллер? ПЛК — это микроконтроллер+входные развязки+выходные ключи или выходные реле. Часто добавляют простенький дисплей, ну и интерфейсы выводят.
Круг задач решаемых графическими языками практически не ограничен, что опять таки доказано годами эксплуатации действительно больших систем автоматизации. Управление той — же турбиной — это далеко не термостат. По крайней мере использовать все возможности микроконтроллера вполне можно.
уровень вхождения для языка схем автоматики весьма высок
Для кого? Электронщик пользуясь этим языком находится в привычном окружении и пользуется привычными знаниями и терминами. Он занимается своей обычной работой, то есть просто создаёт схему.
Для программиста который разрабатывает данную среду? Ну Вы же призываете электронщиков изучать непонятные для них языки программирования. Причем для создания законченных изделий им необходимо изучить язык на достаточно серьёзном уровне. Так почему бы программисту не освоить хотя бы азы электроники что бы понимать чем отличается Т-триггер от RS-триггера.
Ну а мой посыл опять таки оправдан большим опытом в разработке промышленной автоматики. Обычное программирование для меня хобби, и я не считаю себя професионалом — программистом. Все таки я больше конструктор-схемотехник. И людей в среде разработчиков систем АСУ, которые являются обычными программистами — единицы. Но между тем заводы работают, электростанции выдают электроэнергию, котельные дают тепло.
Вот я и предлагаю программистам заниматься своим делом, разрабатывая те самые среды разработки для электронщиков. Только для недорогих контроллеров. Примеры есть. Проект Horizont Automatics, Canny (но у них свой контроллер и цена высоковата), ну и мой проект FLProg. Это только Российские проекты. Horizont Automatics и FLProg бесплатны. Рассчитаны на недорогие ардуинки (хотя я потихоньку готовлюсь к расширению списка контроллеров).
Так что можно обойтись без дорогих промышленных контроллеров, взяв от них самое ценное — проверенные годами графические языки. Нужно только желание программистов заняться создание подобных сред, ну и не драть за них большие деньги.
Но к сожалению большинство программистов сегодня пишут «Весёлые фермы», всякие онлайн стратегии, и т.п. Ведь за них при небольших умственных и физических затратах можно стрясти с хомячков неплохие деньги.
Simens выпускают газотурбинные генераторы. И вы не поверите, но во всей прошивке для всех контроллеров которые управляют турбиной нет ни строчки кода. А только чарты (схемы по нашему). Разработчики этой системы не имеют ни малейшего представления какой код крутится в контроллерах. Я лично общался и с разработчиками, и с сервисниками и поэтому знаю об этом. И представляете, они эти поделки не только не прячут, а ещё и продают по всему миру. Вот ужас то!!! И так во всех промышленных системах. Как ни странно их разрабатывают инженеры — электронщики, а не программисты. Куда катится мир.
И зачем таким электронщикам вообще контроллеры? Пусть рисуют схемы для ПЛИС, в графическом режиме.
А зачем программистам микроконтроллеры? Пускай программируют однопалатные компьютеры.
А зачем электронщикам контроллеры, можете спросить любого из нескольких тысяч пользователей программы. Зайдите на сайт (flprog.ru), почитайте форум, посмотрите статьи пользователей. Посмотрите что делают люди совершенно не знакомые с программированием в классическом смысле. На 99% это законченные и приносящие пользу изделия. В отличие от игрушек настоящих программистов.
Насчет неудачных попыток Вы можете спросить у того -же Simens, Schneider, ABB и др. Большинство настоящих систем управления производством, да и практически любая автоматизированная система написана как раз с помощью сред где как Вы говорите «надо соединять квадратики». Хотя в этой фразе всё таки чувствуется программист. Для Вас всё что не связанно с написанием многих «буковок» — это детские забавы. А тут не просто детские забавы — это создание принципиальной схемы, как раз то, в чем электронщики сильны. А вот для программиста — это действительно соединение между собой непонятных квадратиков
Наверное так хорошо было-бы, но Вы то уже большой и наверное в сказки не верите. Возможно и есть уникумы которые могут осилить две разные области деятельности на высоком уровне, но чаще всего получается и не там и не тут высоких уровней нет. Как говорится за двумя зайцами погонишся… Жизнь требует сосредоточится на какой — то конкретной дороге. Кормить семью, и иметь работу надо сейчас а не через 20 лет. Поэтому в большинстве организаций занимающихся разработкой устройств на микроконтроллерах работают пары: программист+инженер-электронщик.
Как я уже писал выше, для создания систем АСУ производители промышленных контроллеров нашли выход позволяющий обойтись без программиста, и этот подход полностью себя оправдал. Но правда цены на такие контроллеры пугают.
Каждый должен заниматься тем что ему нравится, тогда и результат будет. Нравится писать код — пиши. Нравится рисовать схемы — рисуй. И не надо заставлять себя заниматься тем, к чему душа не лежит.
Я как раз и пробую дать возможность перевести программирование контроллера в привычную для электронщика процедуру создания принципиальной схемы, которая потом будет работать внутри контроллера. Ну не нужны им всякие if-ы, for-ы и т.д. Им нужны реле, контакты, реле сравнения. Ну или компараторы, дешифраторы, тригеры… В этом они хорошо понимают. Ну а задача программиста создать им инструмент который поможет им это делать. Потому что научить программиста например расчёту помехозащищённости, или расчёту выходного силового ключа то же сложная задача. Если он справится, честь и хвала ему, ну а если не справится, то такое изделие (которое сгорит после 10 пусков) и не нужно.
Я не совсем согласен с Вашим утверждением что успеха в создании конструкций на микроконтроллерах невозможно добится без изучения языка программирования. По Вашим выкладкам получается что разработчик должен быть этаким супер универсалом. В совершенстве знать языки програмирования (включая ассемблер), и при этом отлично разбираться в электронике и конструировании устройств. Честно говоря «Это фантастика сынок»(цитата). Слишком разные области знаний. Это давно уже поняли производители промышленных контроллеров, и создали свои специфические среды программирования, которые позволяют имено конструкторам-электронщикам создавать серьёзные системы управления. По роду своей деятельности я работаю как раз в обеих областях, и чаще всего втречаю программистов которые не имеют ни малейшего представления как работает транзистор, и инженеров для которых понятие «указатель на область памяти» — пустой звук. Причем и те и другие отличные проффесионалы в своей области. Что бы стать проффесионалов в каждой из этих областей, надо посвятить этому большую часть своей жизни, и на другую просто не останется времени.
Программисты используют микроконтроллеры на «поиграться», и поэтому большинство представленных на хабре постов о изделях от программистов с красивым кодом представляют собой игрушки. А представленные на гиктайме посты от хороших элетронщиков (реально полезные устройства) имеют код собранный с помощью копи-паста из примеров. Да и чаще всего электронщики шарахаются от контроллеров когда только заходит разговор об их программировании.
В свое время я начал проект (для себя любимого, и друзей) где попытался решить эту проблемму, и вот на третий год жизни проекта, я могу с уверенностью сказать, что тем же электронщикам надо только дать понятный им инструмент, и тогда они свернут горы. Они действительно создают полезный и законченные проекты начиная от промышленных станков, заканчивая управлением солнечными батареями. Я думаю что начав ломать свой мозг изучением того же си, они никогда бы не сделали того, что делают сейчас используя понятные инструменты.
Мое мнение -«Каждый должен нести свой чемодан»(опять цитата). Программисты пускай создают те самые инструменты — нормальные среды программирования для различных контроллеров (возьмите тот же TiaPortal от Siemens), а конструкторы с помощью этих инструментов уже будут создавать полезные устройства. Наверное такой симбиоз будет наиболее удачен.
У меня отделом QA работает сообщество пользователей программы. И я очень благодарен им за это. Я сам не в силах сделать полное тестирование программы при выходе новой версии, поэтому подобные косяки всё таки иногда случаются
Спасибо за подсказку. Исправлю в описании контроллера (точнее уже исправил. В следующей версии не будет).
Самое интересное что за три года существования проекта, Вы первый заметили эту ошибку. Возможно этот текст действительно никто не читает )))
В этих блоках будет возможность подключения библиотек. Пока только не решил будет ли библиотека упаковываться в файл блока или прикладываться отдельным файлом.
Пользовательские блоки с возможностью написания собственного кода в планах. Вообще планы по развитию проекта огромные, не хватает только рук и времени. Проектом занимаюсь в свободное от основной работы время, поэтому и развитие не такое быстрое как хотелось бы.
Не думаю. Скорее всего устройства собираются где то в Китае, а там и большие партии и малые делают по практически по одной цене. Даже единичные экземпляры. Так что скорее всего всё — таки рынок. Дешевле вариантов нет, немного маркетинга и цену можно задирать. Кому нужно и за такую цену возьмут. А остальные не интересны. Прибыли Apple не дают спать многим нашим бизнесменам, вот они и пытаются идти тем же путем.
Интересно, кто ни будь может объяснить высокую стоимость этого устройства. По функционалу (и значит по железу) оно проще самого дешового китайского телефона. Экрана (один из самых дорогих компонентов) нет, аккумулятор маленький и копеечный. За что такая сумма? За сервис я ещё понимаю, поддержка сервера и софта. Но устройство то покупается отдельно. Вот Вы дорогой автор, объясните, что входит в цену вашего устройства которая сопоставима с ценой смартфона среднего класса. По функционалу и составу железа они стоят очень далеко друг от друга. Или цена формируется по принципу — «Раз там дорого, значит и мы цену задерём»
А я даже и не знаю теперь куда писать. С одной стороны у меня блог о разработке программы, соответственно как бы хабр. С другой стороны программа для программирования ардуино, и основными хабами были именно DIY и Ардуино. Ситуация…
А вот теперь посмотрите. Вы сидите в комнате которая освещается лампочками, которые питаются от общей сети, которая запитана от электростанций. Кто Вам всё это обеспечил. Те же электрики, которые собирали проводку, и линии питания, электронщики которые разрабатывали системы управления сетями, электростанциями. Разработчики и эксплуатационники систем АСУ, которые работают именно на языках LAD и FBD. Вся промышленная автоматика написана на этих языках, та что вас обеспечивает, кормит, одевает и обувает. Вот как раз для этих электриков электронщиков, и АСУ-шников рассчитана программа FLProg. И поверьте — это далеко не вымирающий класс специалистов, и я подозреваю этих людей как бы не больше «истинных» программистов.
Модуль реле накроется через неделю (желательно твердотельное реле или оптосемистр). При включении контактора ардуинка зависнет (необходима экранировка контроллера вместе с дисплеем), при срабатывании конечника расположенного за 10 м контроллер зависнет (необходима опторазвязка входа).
периодические зависания датчиков находящиеся на некотором удалении (необходима правильная экранировака кабеля+ правильный подбор самого кабеля).
Если хотите узнать какие реально полезные устройства собирают на ардуинке и какие проблемы возникают в процессе их создания — загляните на форум . Там электронщики собирают от устройств управления двигателем до дозаторов в пищевой промышленности и промышленных станков.
Больше всех о том что ардуино ЗЛО кричат именно «истинные» программисты. А почему? Потому что они в основном только и умеют что писать код. Не спорю красивый, правильный, и надёжный. Но как только встаёт вопрос о том что бы разработать и расчитать входные развязки, выходные ключи, экранировку и развязки питания, они испытывают шок. «Транзистор, опропара — нет не слышали и не знаем что это такое». Им намного легче взять готовый контроллер за 1000500 рублей где все эти задачи уже решили те самые электронщики о которых они с таким пренебрежением отзываются («ну как же они не умеют писать красивый код, их задача делать для нас готовые железяки») и впарить их заказчику как абсолютно надёжное устройство.
А те самые электронщики если хоть немного разобрались с кодом сделают из той же ардуинки абсолютно надёжное устройство, пускай не с очень красивым кодом, но правильно рассчитанное и разработанное. И оно будет работать и приносить пользу в отличие от поделок которые творят «истинные гуру» программирования. Хотя и от этих поделок есть польза. По крайней мере есть откуда скопипастить куски кода))))
А чем отличается ПЛК и микроконтроллер? ПЛК — это микроконтроллер+входные развязки+выходные ключи или выходные реле. Часто добавляют простенький дисплей, ну и интерфейсы выводят.
Круг задач решаемых графическими языками практически не ограничен, что опять таки доказано годами эксплуатации действительно больших систем автоматизации. Управление той — же турбиной — это далеко не термостат. По крайней мере использовать все возможности микроконтроллера вполне можно.
Для кого? Электронщик пользуясь этим языком находится в привычном окружении и пользуется привычными знаниями и терминами. Он занимается своей обычной работой, то есть просто создаёт схему.
Для программиста который разрабатывает данную среду? Ну Вы же призываете электронщиков изучать непонятные для них языки программирования. Причем для создания законченных изделий им необходимо изучить язык на достаточно серьёзном уровне. Так почему бы программисту не освоить хотя бы азы электроники что бы понимать чем отличается Т-триггер от RS-триггера.
Ну а мой посыл опять таки оправдан большим опытом в разработке промышленной автоматики. Обычное программирование для меня хобби, и я не считаю себя професионалом — программистом. Все таки я больше конструктор-схемотехник. И людей в среде разработчиков систем АСУ, которые являются обычными программистами — единицы. Но между тем заводы работают, электростанции выдают электроэнергию, котельные дают тепло.
Так что можно обойтись без дорогих промышленных контроллеров, взяв от них самое ценное — проверенные годами графические языки. Нужно только желание программистов заняться создание подобных сред, ну и не драть за них большие деньги.
Но к сожалению большинство программистов сегодня пишут «Весёлые фермы», всякие онлайн стратегии, и т.п. Ведь за них при небольших умственных и физических затратах можно стрясти с хомячков неплохие деньги.
А зачем программистам микроконтроллеры? Пускай программируют однопалатные компьютеры.
А зачем электронщикам контроллеры, можете спросить любого из нескольких тысяч пользователей программы. Зайдите на сайт (flprog.ru), почитайте форум, посмотрите статьи пользователей. Посмотрите что делают люди совершенно не знакомые с программированием в классическом смысле. На 99% это законченные и приносящие пользу изделия. В отличие от игрушек настоящих программистов.
Как я уже писал выше, для создания систем АСУ производители промышленных контроллеров нашли выход позволяющий обойтись без программиста, и этот подход полностью себя оправдал. Но правда цены на такие контроллеры пугают.
Каждый должен заниматься тем что ему нравится, тогда и результат будет. Нравится писать код — пиши. Нравится рисовать схемы — рисуй. И не надо заставлять себя заниматься тем, к чему душа не лежит.
Я как раз и пробую дать возможность перевести программирование контроллера в привычную для электронщика процедуру создания принципиальной схемы, которая потом будет работать внутри контроллера. Ну не нужны им всякие if-ы, for-ы и т.д. Им нужны реле, контакты, реле сравнения. Ну или компараторы, дешифраторы, тригеры… В этом они хорошо понимают. Ну а задача программиста создать им инструмент который поможет им это делать. Потому что научить программиста например расчёту помехозащищённости, или расчёту выходного силового ключа то же сложная задача. Если он справится, честь и хвала ему, ну а если не справится, то такое изделие (которое сгорит после 10 пусков) и не нужно.
Программисты используют микроконтроллеры на «поиграться», и поэтому большинство представленных на хабре постов о изделях от программистов с красивым кодом представляют собой игрушки. А представленные на гиктайме посты от хороших элетронщиков (реально полезные устройства) имеют код собранный с помощью копи-паста из примеров. Да и чаще всего электронщики шарахаются от контроллеров когда только заходит разговор об их программировании.
В свое время я начал проект (для себя любимого, и друзей) где попытался решить эту проблемму, и вот на третий год жизни проекта, я могу с уверенностью сказать, что тем же электронщикам надо только дать понятный им инструмент, и тогда они свернут горы. Они действительно создают полезный и законченные проекты начиная от промышленных станков, заканчивая управлением солнечными батареями. Я думаю что начав ломать свой мозг изучением того же си, они никогда бы не сделали того, что делают сейчас используя понятные инструменты.
Мое мнение -«Каждый должен нести свой чемодан»(опять цитата). Программисты пускай создают те самые инструменты — нормальные среды программирования для различных контроллеров (возьмите тот же TiaPortal от Siemens), а конструкторы с помощью этих инструментов уже будут создавать полезные устройства. Наверное такой симбиоз будет наиболее удачен.
Самое интересное что за три года существования проекта, Вы первый заметили эту ошибку. Возможно этот текст действительно никто не читает )))