Смотря кто делать будет. У людей со светлыми головами много времени не займет. ИнСАТ работу заказать, быстро сделают.
Основной вопрос не "сколько займёт прикручивание ST к p-code", а "сколько у ОВЕН займёт прикручивание p-code к ОЛ-ПР".
Прикрутить p-code к ОЛ (например, сделать ОЛ-блок с полем ввода IL программы, или ОЛ-блок куда вставляется прямо base64 p-code) и задокументировать не должно быть сложной задачей.
Ну, допустим, программист думает недели полторы над форматом хранения-обмена этим самым p-code.
Потом 3 дня добавляется новый блок с полем ввода для p-code в ОЛ.
Потом неделю делается загрузка из этого формата (распознавание вставленной программы в понятное ОЛ представление)
Потом ещё неделя на запись p-code в *.owl.
Потом ещё неделя на скрещивание нового блока с имеющимся в ОЛ компилятором.
Потом ещё неделя на скрещивание нового блока с имеющейся в ОЛ симуляцией.
Потом документатор документирует. Допустим, это тоже неделя (там писать-то день или два, но попутно будет тратиться время программиста на пояснение, поэтому пишем суммарно неделю).
Итого 7 мифических человеко-недель = 1.5 (формат) + 0.6 (блок) + 1 (чтение) + 1 (запись) + 1 (компилятор) + 1 (симуляция) + 1 (документация)
Без понятия какая компенсация в ОВЕН, но грубо можно оценить как 400 т.р. == 200 т.р. (со всеми налогами) * 2 мес
Прикручивание же ST к p-code можно вообще за пределами ОВЕН делать.
Реальный пример: лично я прикрутил ST к управлению быстрыми входами-выходами ПЛК110. Суммарно работы заняли менее месяца на выходных.
Ну да, ну да....
И что же ОВЕН никак не может прикрутить новые CDS SP к СПК? А Инсат на 2..3 года(!) задержал выход МС4, которая и сейчас "сырая"?
Ну, да.
Hardella работает, а варианта от ОВЕН (или ещё кого-то) на горизонте не видно.
Ещё раз подтверждается факт, что "ну да, ну да..." говорят те, кто не разбираются в предмете.
Можно много чего с умным видом говорить, но Hardella работает, хотя скептики только и делали, что занимались своим скептическим делом.
А как это относится к ОЛ-ПР?
Как-никак, на КДС ОВЕН вряд ли имеет ощутимое влияние.
Работать же "со своим p-code" должно быть гораздо проще.
Так программа МС4 посложнее, чем p-code блок для ОЛ.
Генератор p-code из ST кто напишет?
По поводу альтернативы Харделлы. Видимо, никому не нужны быстрые входы-выходы. Это стандартно. Многие кричат "сделай", как сделают - нужно единицам.
А хоть кто.
Вполне возможно, прямо в p-code напишут. Точно так же, как сейчас "из спортивного интереса" рисуют ОЛ картинки на 1000+ элементов.
Ну и диадемовая черепаха, в конце концов, чем плоха?
Я пример приводил к тому, что много кто говорил, что "мой подход нерабочий". По факту же, подход оказался рабочий.
Так и тут: много кто говорит, что нужно много миллионов и вообще невозможно, а вариант с p-code может оказаться вполне рабочим. Вариант с C, разумеется, и рассматривать смысла нет.
Разумеется, рынок потребителей для быстрых входов-выходов небольшой. Заходит пара человек в день, и вряд ли многим из них нужны быстрые выходы.
Вот текущая Яндекс Метрика черепахи (19 декабря это дата запуска сайта):
Вложение 30521
Что то не густо .Вот статистика Каскады :cool:
А вот это гениально, значит нет трансляции в машинные коды? А позволю себе спросить - что там есть? Какова же эта таинственная архитектура ПО ПР, которая не совпадает видимо со всеми известными архитектурами ПО, с момента создания вычислительных систем? В каком виде ПО ВАШЕМУ существует программа, выполняемая микроконтроллером семейства STM32, который по слухам является ядром ПР200?
Я небольшую байку расскажу, если позволите. Шесть лет назад я делал свой контроллер для линейки оборудования, предназначенного для производства пластиковых окон. Возможности контроллера были примерно равны ПР200, ядром был микроконтроллер семейства ARM7, исполнение панельное, с графическим ЖКИ 128х64. Поскольку меня интересовало универсальное решение, то я исполнил его в виде программируемого контроллера - основная функция имела вид:
{
Input (); // ввод значений
User (); // пользовательская программа
Output (); // вывод значений
}
При этом функция User() создавалась в отдельном файле и состояла из последовательности макросов, каждый из которых соответствовал функциональному блоку. В отдельном файле были описан набор этих макросов, в виде функций на С.
Линейка оборудования в итоге в производство не пошла, а с ней умер и контроллер, да и я перестал электроникой заниматься - Китай и Турция победили все. Но по итогам в целом все работало, только иногда при старте привода сбрасывался ЖКИ - это я бы победил. И в планах была графическая оболочка для создания программ на FBD, необходимая для написания сложных программ и возможной продажи контроллера отдельно. В качестве такой оболочки планировалось применить редактор схем из любого бесплатного САПР печатных плат, например Kicad. Указанные редакторы позволяют создавать многолистовые иерархические схемы (читай программы), поддерживают библиотеки компонентов (читай ФБ) и имена цепей (читай переменные), на выходе выдают в текстовом виде netlist (список цепей), из которого можно узнать какие компоненты, какими цепями и с чем соединены. Таким образом можно создать библиотеку ФБ, нарисовать программу в виде схемы (прямо бальзам на душу наверное некоторым участникам форума?) и получить эту программу в текстовом виде. Потом написанной заранее утилитой "разобрать" текст и поставить каждому ФБ в соответствие функцию на С, а затем сформировать текстовый же файл, содержащий функцию User(). По окончании прогнать все через компилятор. Получившийся код, средствами контроллера (системная прошивка) залить в память, начиная с указанного адреса. И вуаля.
К чему я это все? К тому что в данной "архитектуре ПО" язык С присутствует ИЗНАЧАЛЬНО, пополнять библиотеки как символов, так и макросов пользователь может сам и в каком ему угодно объеме. И самое главное - во всех средах разработки программ для программируемых контроллеров, подобный подход присутствует так или иначе. Потому что контроллеры не программируются на графических языках, они все должны быть странслированы в один из языков, с которого существует компилятор, позволяющий получить hex-файл, для заливки в контроллер. А таких языков всего два фактически - С и С++. Поэтому я и считаю что С присутствует в ОЛ изначально - еще раз, ОЛ может быть написан на чем угодно, но микроконтроллеры программируются в основном на С и другого я зыка практически не понимают.
Кстати. Вариант "написания" пользовательской программы с использованием схемного редактора - оказывается встречается. Пару месяцев назад, разбираясь с системой ЧПУ под Linux, я столкнулся с подобной возможностью, реализованной на gEDA. Идеи действительно витают в воздухе.
А какая разница?
По факту: ПР200 пользуется спросом -- значит, цель достигнута.
Гораздо интереснее как обстоит дело с p-code в ОЛ. Раз уж ОЛ не занимается мышиными кодами (что, в целом, было ожидаемо), то наверняка там p-code (значит, p-блок можно добавить без переделки всей среды ОЛ).
В.Филоненко боится остаться без хлеба, если раскроет все свои "великие секреты" ? Вот и темнит человек, туману напускает. ;) Только все тайное рано или поздно становится явным. Владислав, лучше вам расколоться побыстрее. Стоять на пути технического прогресса весьма чревато. Народ хочет перемен в ОЛ. Вы с народом или нет ?
Где туман? Нет тумана. Русским по белому сказано, что ОЛ не занимается мышиными кодами.
Точно так же, Владислав говорит, что "добавление C в ОЛ это полная переделка ОЛ".
Ну, да. Каждому ежу должно быть понятно, что "добавление С потребует полную переделку".
Кому непонятно -- пусть идут и делают своё изделие на С.
Нужно не Владислава раскалывать (он-то наверняка смеётся в голос над попыткам расколоть то, чего нет), а задавать вопросы в духе "когда будет p-блок".
Но и об этом спрашивать Владислава толка нет, ведь Владислав не занимается ОЛ-ПР.
Господа.
Удалил я. Хватит холивар разводить.
Сколько кто и как разрабатывает и сколько это стоит - нет совершенно никакого смысла обсуждать.
Мы слышим Вас, и слышим других клиентов. И обсуждаем разные варианты.
Но еще раз напоминаю: все мы (у кого не так - тот счастливчик) работаем в условиях ограниченных ресурсов.
И соответственно ранжируются задачи по важности, сложности и загрузке ресурсов.
Очень рады новым идеям и предложениям.
Но темы, а че ОВЕНу - 2 месяца, 2 года, да это дешево - давайте оставим.
Ну не скажите. Даже математики широко используют в своём аппарате графические представления математических операций. См. теория графов, например. Или в алгебре - для представления множеств, подмножеств, колец, полей и пр. рисуют всякие кружочки, колечки.
http://www.myshared.ru/slide/959908/
http://mydocx.ru/10-95260.html
Опять же графики, гистограммы. Лучше один раз увидеть, чем сто раз прочитать. Вот вы спидометр какой предпочитаете - стрелочный или цифровой?
И будут продолжать удалять.
Только давайте быть честными: идеи и пожелания - это всегда хорошо, оценка работы и критика по продуктам конструктивная - тоже хорошо и никогда не удалялась (где вы еще такое видели)...
А круговерть с тем, что я то супер эксперт и я точно знаю как надо работать и вас еще поучу - будет удаляться.
Поймите правильно - Влад или я можем сидеть и смеяться, или не сидеть и не смеяться. Речь не об этом. Речь о том, чтобы уважать других пользователей, которые так же хотят читать и оставлять свои предложения и пожелания, но заходят в тему, видят как несколько человек "меряется" крутизной в 27 страниц, но по сути о нескольких предложениях, и уходят.
Если кто-то может указать какие сообщения ПО ТЕМЕ были удалены - милости прошу.
Отдельную тему Ситникова, как Вы заметили, никто не удаляет, так как она отдельная, и не засоряет другие темы.
Приписка: как Вы заметили - даже сообщения Филоненко удаляются, если они не относятся к теме.
Позвольте узнать, куда просите? В пешее? :D
Было моё сообщение такого толка:
1) Вопросы по теме "концептуальности p-code блоков" с точки зрения ОЛ. Если p-code "не концептуален", то есть ли смысл обсуждать дальше?
2) Цитирование лицензии на ОЛ в части того, что само по себе наличие p-code блоков не делает ОЛ "ненадёжным". В лицензии ОЛ и сейчас полный отказ от ответственности. Я к чему: я к тому, что в индустрии используется BPF -- а там требования по безопасности и гарантированному времени выполнения ого-го какие. И ничего, p-code в полный рост.
Вроде как, абсолютно всё по теме.
Цитата:
Сообщение от vladimirsitnikov
Ну и/или мой пост с оценками того, сколько времени нужно на добавление p-code блока в ОЛ (там были слова "Итого 7 мифических человеко-недель = 1.5 (формат) + 0.6 (блок) + 1 (чтение) + 1 (запись) + 1 (компилятор) + 1 (симуляция) + 1 (документация)"). Тут разнообразные личности постоянно заявляют "это сложно, долго, невозможно". Я привёл конкретные цифры. Разумеется, они могут быть неточны, но это хоть что-то, и это что-то напрямую относится к обсуждаемой теме.
Обсуждение сложности реализации напрямую относится к обсуждению "идеи". Можно пожелать чего-то экстравагантного, но, если оно потребует 10 человеко-лет, то лучше сразу принять, что в ближайшем будущем этого не появится. Возможно, даже и обсуждать не стоит. И наоборот: если идея не особо сложная, то можно и пообсуждать -- может выгореть. Ещё раз: смысл обсуждения не в том, сколько "ОВЕН наварит", а в "реалистичности самой идеи".
В пешее в самом крайнем случае :)
Если погорячился, и что-то убрал по существу - приношу извинения.
Но надо понимать, что кроме нас четверых - пятерых, 28 страниц никто читать не будет. Из нас четверых вряд ли кто-то, де факто, будет использовать p-code, а остальные просто не дочитают этот триллер. С учетом, что на 26 странице звучит, к стати совершенно справедливо вопрос - а что это. На 24 странице...
А делать прогнозы по срокам реализации, как и любые прогнозы - дело вообще не благодарное, с учетом, что сами мы на них повлиять ну никак не можем :)
По факту, читают, делятся мнениями. Зачастую даже по теме, и это при том, что тема действительно неширокая.
И да и нет.
Поднимался вопрос (возможно и не однократно) "дайте хоть какой-нибудь язык кроме квадратиков".
Я не про себя, и не про вопли "сделайте же C в ОЛ".
Использовать p-code можно по-разному. Можно макросы составлять, а можно эти макросы использовать в проектах.
Так вот: соглашусь, желающих составлять макросы на p-code будет меньше, чем общее количество пользователей ОЛ.
Но, если будет макрос, то его смогут использовать все. В том числе и те, кто сам бы такой макрос составить не смог.
Тема "вопрос-ответ (новичковая)", например, тоже не предназначена для "дочитывания".
Да, многие и не понимают что такое p-code, но:
1) Это слово вполне даёт понять (кому надо) что я имею ввиду
2) Это нормально, когда пользователи ОЛ-ПР не понимают как оно устроено. Вопрос "что такое p-code" в этом плане мало чем отличается от вопроса "что такое прошивка". Многие понятия не имеют как устроена прошивка ПР, но это не мешает им создавать проекты.
3) Если грубо, то для конечного пользователя p-code блок можно сравнить с "макросом, написанным на IL". С точки зрения "обывателя-рисователя квадратиков", язык IL ущербен, непонятен, и непонятно зачем нужен. Но, с точки зрения взаимодействия систем, подобие языка IL это как раз то, что нужно. IL легко реализовать, и в нём сохраняется вся мощь. "Тот самый ST" можно можно превращать в IL (читай -- в p-code) и таким образом можно получить "ST макросы в ОЛ" и не нагружать ОЛ ST редактором.
4) В пользовательском интерфейсе же отображение этого самого p-code как IL можно и НЕ делать. Формат записи Apache Thrift или Google Protocol Buffers может быть гораздо более удобным в разработке, т.к. текстовое представление IL приходилось бы парсить, а Thrift/protobuf предоставляют готовые средства для чтения и записи сообщений.
Самое замечательное - это не то что "28 страниц никто не будет читать" (по факту - читают), а то что эти 28 страниц вообще существуют. Странно, что вообще приходится убеждать в необходимости макросов на текстовом языке. Наверное действительно архитектура ПО в ПР200 какая-то необычная, потому что я так и не понял - почему добавить указанную возможность нельзя или сильно дорого. Меня бы вообще не волновал этот вопрос, будь аппаратные возможности ПР200 хуже, процессор например 8-разрядный дохлый или что. Но на сегодняшний день я вижу, что расширить функционал ПР200 буквально ничего не стоит, относительно всех других усилий, уже затраченных на его проектирование и постановку производства. Я не являюсь экспертом, но имею все же не маленький многолетний опыт в автоматике и электронике, в том числе и в проектировании и создании микропроцессорных систем, поэтому все же могу судить.
Вы создавали микропроцессорные системы, которые программировались ИХ ПОТРЕБИТЕЛЕМ на разработанной вами инструменталке не на АССЕМБЛЕРЕ или С?
Использовать p-code можно по-разному. Можно макросы составлять, а можно эти макросы использовать в проектах.
Так вот: соглашусь, желающих составлять макросы на p-code будет меньше, чем общее количество пользователей ОЛ.
Но, если будет макрос, то его смогут использовать все. В том числе и те, кто сам бы такой макрос составить не смог.
именно об этом чаще всего и идет речь...
Я делал встроенные системы, они не программировались, а работали по написанному мной софту. Последний из созданных мной контроллеров должен был программироваться, в том числе с использованием С, но я его не закончил на этапе графической оболочки для программирования (железо и текстовые программы - работали) - тема умерла.
Не понимаю вашего вопроса - я за то чтобы С был как вариант, для написания макросов. Чем это помешает тем, кто мыслит "кубиками" - мне не понятно, т.к. "кубики" в любом случае останутся.
Кстати да, может кому и не надо сразу создание макросов на текстовом языке, но получив такой макрос в готовом виде от кого-нибудь, он его может посмотреть/изменить и в дальнейшем может написать и свой. В итоге человек обучится. А если возможности нет, то и возможного развития тоже нет. Об этом забывают часто.
Само по себе "наличие C" не помешает кубистам.
Но поймите же, наконец. "Сделать C в ОЛ" потребует очень больших затрат. Прямо настолько больших, что и ждать, что ОВЕН реально сделает это самое С нет никакого смысла.
Если очень хочется "С в ОЛ", то открывайте свою тему про это и вперёд. С этим самым Си море проблем: сообщения об ошибках, проверка корректности кода (например, выход за границу массива), симуляция, автодополнение, online и прочее прочее.
С другой стороны, тупой как пробка p-code блок и реализовать в ОЛ несложно, и поддержка для разных моделей ПР должна быть простой. Да и в будущем этот самый p-code блок не будет мешаться: сделать, например, online режим в программе с p-code блоками гораздо проще, чем в программе, где пользовательские блоки написаны на C.
Надо ардуино запилить под пр200))
Да там и С и FBD ,причем в одном флаконе -FLProg .