Средство для программирования контроллера: Си или МЭК 61131? |
Ответить | Страница <1 1415161718 53> |
Автор | |
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 29 Сентябрь 2003 Категория: Isle Of Man Online Status: Offline Публикации: 119 |
Опубликовано: 01 Октябрь 2003 15:00 |
Владимир Е. Зюбин http://www.iae.nsk.su/~zyubin/iec1131.htm необходимо отметить, что интерпретационная модель имеет недостаток - она всегда снижает показатели эффективности исполнения программы. Это заблуждение. Извинительным обстоятельством является его распространенность. Не вдаваясь в теорию, приведу ссылку на пример, где интерпретатор (SPF) показывает лучшие бенчмарки чем многие компиляторы, включая С http://talk.mail.ru/article-26762867.html Аналогичные бенчмарки неоднократно приводились в группе comp.lang.forth для других быстрых Фортов. |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 29 Сентябрь 2003 Категория: Isle Of Man Online Status: Offline Публикации: 119 |
|
Владимир Е. Зюбин http://www.iae.nsk.su/~zyubin/iec1131.htm На практике использование языка низкого уровня может быть оправданным только в двух случаях: Перечислены не все случаи, когда использование языка более низкого уровня оправданы. Помимо указанных, можно назвать: в) для обеспечения совместимости с ранее разработанными и выпущенными продуктами г) для того, чтобы не исключить из круга охваченных стандартом продукты небольших фирм, которые могут для своих изделий "осилить" язык IL (с силу простоты его реализации), но не имеют возможности потратиться на создание графических ST и/или FBD Последний пункт, с моей точки зрения, являлся доминирующей причиной, по которой в МЭК вошел IL. Для меня это свидетельство демократизма и гуманности комитета. |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 29 Сентябрь 2003 Категория: Isle Of Man Online Status: Offline Публикации: 119 |
|
Владимир Е. Зюбин http://www.iae.nsk.su/~zyubin/iec1131.htm Но интерпретатор означает невозможность создания ни быстродействующего, ни малого по объему кода! Это ошибка. Пример: интерпретаторы FVM (Forth Virtual Machine), как правило являются, быстродействующими, а исполняемый ими код компактным. Выбирая тот или иной вариант шитого кода удается настраивать соотношение (размер кода)/(скорость исполнения) в довольно широких пределах. Типично Форт-программа займет места в 2-3 раза меньше чем аналогичная, написанная на С. Для примера укажу, что быстрый SPF4, о котором я упоминал ранее, занимает примерно 70КБ (он написан, естественно, на Форте, то есть "сам на себе") |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 09 Сентябрь 2003 Категория: Russian Federation Online Status: Offline Публикации: 247 |
|
Доктор Q на "Ядро-интерпретатор, как следует уже из
его названия, транслирует пользовательский алгоритм во время исполнения.": Из названия следует, что он его интерперетирует. Если это рассматривать как утверждение о том, что "интерпретатор вообще" должен транслировать (или компилировать, поскольку в выч. технике эти два слова - синонимы) программу "на ходу" - то это ошибка. Увы, должен Вас разочаровать, Вы используте собственную терминологию, отличную от общепринятой... транслятор и компилятор это не синонимы, а интерпретатор - это вид транслятора, который транслирует программу именно "на лету", строчка за строчкой... Вот, например из ISA словаря interpreter A system program which allows the execution of computer programs using a step by step translation of individual instructions instead of translating the complete program before execution. Ну или сюда загляните: http://www.InstantWeb.com/D/dictionary/foldoc.cgi?query=interpreter По-моему, Вам рекомендовали уже... чаще заглядывать в толковые словари, зря не пользуетесь советом и ссылками.. |
|
Владимир Е. Зюбин
Язык Рефлекс -- Си-подобный язык программирования ПЛК http://reflex-language.narod.ru/ |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 29 Сентябрь 2003 Категория: Isle Of Man Online Status: Offline Публикации: 119 |
|
Владимир Е. Зюбин http://www.iae.nsk.su/~zyubin/iec1131.htm По поводу IL, собрано из разных мест в статье: его происхождением: для некоторых моделей ПЛК фирмы Siemens является языком Ассемблера но и в общем случае единственным обоснованием для IL может быть только его полное совпадение с ассемблером целевой системы, что в нашем случае невыполнимо У языка IL нет видимых обоснований для существования? - Почему нет? Есть. IL - это традиционный язык программного средства STEP 5 (компания Siemens) и имеет определенную группу поклонников Знакомы ли Вы или Ваши сотрудники с ассемблером для одного из ПЛК фирмы Siemens? Если не знакомы, то IEC 1131-3 продукты - это отличная возможность для удовлетворения Вашего любопытства. Относительно IL. Да, это умирающий язык, ориентированный на бывших пользователей STEP5 Насколько мне известно, язык, соответствующий IL, появился еще в самых первых PLC, созданных в конце 60-х годов компаниями Gould Modicon и Allen Bradley. Язык STEP5 появился существенно позже, в конце 70-х или начале 80-х. То, что некоторые старшие модели Simatic-S5 интерпретировали (текстовый вариант) STEP5 аппаратно, это правда. Утверждение, что в STEP5 этот вариант языка вошел потому, что он уже был реализован как система комад этих PLC - это ошибка, дело обстояло с точностью до наоборот. То есть, _сначала_ был разработан STEP5, а уж _потом_ Siemens в _некоторых_ моделях реализовал его на секционных процессорах Am2900. К сожалению, ссылок дать не могу, эту информацию, если память не изменяет, я почерпнул из разговоров с сотрудниками совместного предприятия Минприбор-Сименс. IL является ассемблером некоего виртуального процессора, это верно. Однако архитектура (и даже мнемоники ассемблера) этого процессора более всего напоминает MC6800, только в 16-битном варианте, и с несколькими интересными нововведениями (типа скобочных операторов). Еще одна причина, почему IL остался в стандарте, я забыл о ней упомянуть ранее. Причина прозаическая и чисто "технологическая". Традиционно FBD и LD транслируются именно в IL, вернее, в байт-код IL. То есть, многие (но не все) PLC интерпретируют именно IL. Поэтому выкидывать IL из стандарта не имело ровно никакого смысла, это нормальная "рабочая лошадка", зачастую необходимая при отладке. |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 29 Июль 2003 Категория: Russian Federation Online Status: Offline Публикации: 140 |
|
Доктор Q Могу привести пример ИНТЕРПРИТАТОРа, если кто помнит с ДОСом поставлялся Basic, и так же он был на различных платформах. Исполняемый код транслировался налету это ИНТЕРПРИТАТОР, а КОМПИЛЯТОРЫ пошли на PC позже. (жутко неудобно было отлаживать проги на первых Компиляторах сначало откомпили, потом запускай, а онон повисло). Ладно увлекся. Доктор Q Пример: интерпретаторы FVM (Forth Virtual Machine), как правило являются, быстродействующими, а исполняемый ими код компактным. Выбирая тот или иной вариант шитого кода удается настраивать соотношение (размер кода)/(скорость исполнения) в довольно широких пределах. Типично Форт-программа займет места в 2-3 раза меньше чем аналогичная, написанная на С. Ну это уж вообще ни куда ни годится такого я еще не видел,фортран изначально был разработан для матиматических расчетов. Допускаю что какойто один из кодов может и меньше чем на С++(ну очень сомнительно), ну я после форта сел на С++ небо и земля, С++ быстрей и меньше код.(правда давно это было может что сейчас и изменилось).
|
|
www.sinat.ru
|
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 29 Сентябрь 2003 Категория: Isle Of Man Online Status: Offline Публикации: 119 |
|
Владимир Е. Зюбин Ну или сюда загляните: Заглядываю, вижу: A program which executes other programs. This is in contrast to a compiler which does not execute its input program (the "source code") but translates it into executable "machine code" (also called "object code") which is output to a file for later execution. Вам перевести? Дальнейшие объяснения цитировать нет смысла. Как я уже указывал, в этом популярном источнике они расчитаны на "чайников", и в жертву наглядности приносят строгость. Обратите внимание, здесь тоже не делается различий между компиляцией и трансляцией. Если Вы где-то обнаружите авторитетный источник, который такое различие делает, не перемените дать ссылочку, плз. Проверяемую... |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 29 Сентябрь 2003 Категория: Isle Of Man Online Status: Offline Публикации: 119 |
|
Mike_K Ну это уж вообще ни куда ни годится такого я еще не видел,фортран изначально был разработан для матиматических расчетов Уважаемый, Вам сюда надо сходить: Дело в том, что Форт к Фортрану не имеет ни малейшего отношения. Как говорится, даже не однофамильцы, но только без шуток и в буквальном смысле этого слова. |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 29 Сентябрь 2003 Категория: Isle Of Man Online Status: Offline Публикации: 119 |
|
Владимир Е. Зюбин http://www.iae.nsk.su/~zyubin/iec1131.htm Где гарантия, что новая выбранная Вами платформа имеет транслятор Си аналогичный предыдущему? Да, адаптацию ISaGRAF будет производить CJ International,[...] Адаптацию ISaGRAF на новое железо (т.е. установку run-time) в большинстве случаев будет производить не CJ International (ныне ICS Triplex), а сам производитель железа, который купит ОЕМ лицензию у ICS Triplex. Возможно, ICS Triplex предоставляет и такой сервис как постановку run-time на железо заказчика, но это за отдельные деньги. |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 29 Сентябрь 2003 Категория: Isle Of Man Online Status: Offline Публикации: 119 |
|
Владимир Е. Зюбин http://www.iae.nsk.su/~zyubin/iec1131.htm Графические языки. Да, графические языки - это проблема несовместимости IEC 1131-3 продуктов. Однако, ее решение означает: а) войну между производителями за выбор "правильной" базы для внутреннего формата; б) признание неприемлемости стандарта IEC 1131-3 для целей PLCOpen К сожалению, не улавливаю ровно никакого смысла в этом высказывании. Я уже упоминал, что графические МЭК языки обычно транслируются в формат байт-кода IL. Если ратовать за унификацию, то имело бы смысл рассуждать о несовместимости этого байт-кода и о том, что его надо бы стандартизовать. Поскольку вместо этого имеются не относящиеся к делу рассуждения типа Эта проблема хорошо известна как Проблема Распознавания Образов, уходящая корнями в проблему Искусственного Интеллекта. Вы спросите, как же мы тогда работаем с графикой на компьютере? - Очень просто: в любой из систем, позволяющих манипулировать графическими объектами (CorelDraw, AutoCad, PCAD и т.д.), каждый графический элемент, отображаемый на экране компьютера, обязательно имеет некоторое внутреннее числовое представление - единственное представление "понятное" вычислительной машине. Что означает отсутствие единого соглашения о внутреннем представлении для простейшего случая, - случая текстовой информации - очень хорошо известно русскоязычным пользователям: КОИ-7, КОИ-8, "базовая" кодировка, я вынужден заключить, что Ваши представления о том как устроены PLC, какова для них взаимосвязь между различными языками, трансляторами, внутренними форматами, и пр, - не имеет отношения к действительности. Даже призывы стандартизовать какой-то определенный шрифт для того, чтобы писать программы на С (скажем, "только Cоurier New 10pt"), буде такие раздались бы, имели бы больший смысл и основание. |
|
Ответить | Страница <1 1415161718 53> |
Переход на форум | Права доступа на форуме Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |