Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 55, средняя оценка - 4.82
raxp
10180 / 6563 / 491
Регистрация: 28.12.2010
Сообщений: 21,166
Записей в блоге: 1
#1

Графический язык ДРАКОН для программирования микроконтроллеров - Микроконтроллер

19.08.2014, 10:44. Просмотров 9482. Ответов 9
Метки нет (Все метки)

Язык ДРАКОН разработан совместными усилиями Российского космического агентства (НПЦ автоматики и приборостроения, г. Москва) и Российской академии наук (Институт прикладной математики им. М.В. Келдыша, г. Москва) как обобщение опыта работ по созданию космического корабля «Буран». На базе ДРАКОНА построена автоматизированная технология проектирования программных систем (CASE-технология) под названием «ГРАФИТ-ФЛОКС». Она успешно используется в ряде крупных космических проектов: «Морской старт», «Фрегат», «Протон-М» и др.
ДРАКОН — визуальный язык, в котором используются два типа элементов: графические фигуры (графоэлементы) и текстовые надписи, расположенные внутри или снаружи графических фигур (текстоэлементы). Следовательно, синтаксис ДРАКОНА распадается на две части. Визуальный синтаксис охватывает алфавит графоэлементов, правила их размещения в поле чертежа и правила связи графоэлементов с помощью соединительных линий. Текстовый синтаксис задает алфавит символов, правила их комбинирования и привязку к графоэлементам (привязка необходима потому, что внутри разных графических фигур используются разные типы выражений). Оператором языка ДРАКОН является графоэлемент или комбинация графоэлементов, взятые вместе с текстовыми надписями.

Первый ИС Дракон выпущен в 2008 году. Программа умеет превращать дракон-схемы в исходные тексты программ на языках семейств 1С, Delphi, C, Oberon, ASM. Отличительной особенностью программы является высокая степень автоматизации ввода графики.

Видеоуроки (на примере управления дверным замком):
Разработка программы управления автоматическим дверным замком
Программирование битовых операций: инициализация процессора, настройка таймера
Проектирование сложного алгоритма реального времени. Проектирование разветвленного алгоритма
Работа с несколькими таймерами


Разработчик: Тышов Геннадий Николаевич.
Офсайт: http://drakon.su/programma_is_drakon
Скачать: тут (последнее обновление в 2013-м)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.08.2014, 10:44
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Графический язык ДРАКОН для программирования микроконтроллеров (Микроконтроллер):

Языки программирования для контроллеров, микроконтроллеров и пр.
Извините за нубский вопрос: а собственно на каком языке можно программировать...

Какие книги, статьи и материалы необходимо изучить для программирования микроконтроллеров
Нужна подсказка, начал изучать Visual Studio 2013 C++(в текущий момент пишу...

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

существуют ли эмуляторы радиосхем с возможностью программирования (эмулируемых)микроконтроллеров ?
Собираюсь делать ВКР(выпускная квалификационная работа - или же облегченный...

С для микроконтроллеров
Добрый день, хотел бы занятся программированием микроконтроллеров. Учусь в...

Программатор для микроконтроллеров PIC
Подскажите, пожалуйста, хороший, на данный момент программатор для...

9
gazlan
3139 / 1915 / 311
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
19.08.2014, 16:41 #2
Рекламу этого "дракона" не первый год вижу. А вот сравнительного анализа, доказывающего, что он хотя бы не хуже "классических" вариантов разработки, что-то не попадалось.
0
raxp
10180 / 6563 / 491
Регистрация: 28.12.2010
Сообщений: 21,166
Записей в блоге: 1
19.08.2014, 17:01  [ТС] #3
...а в чем адекватность сравнивать визуальный (схемотехнический) способ проектирования с написанием кода? Разный подход, разные преимущества, разные недостатки. Мне как разработчику ПЛИС приходится сталкиваться и с тем и другим, но как схемотехнику очень не хватает подобного и в МК.

Потому и пользуются популярностью:
http://www.cyberforum.ru/avr/thread857969.html
http://www.cyberforum.ru/plc/thread856340.html
http://www.cyberforum.ru/blogs/140240/blog350.html
0
gazlan
3139 / 1915 / 311
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
19.08.2014, 17:29 #4
Цитата Сообщение от raxp Посмотреть сообщение
сравнивать визуальный (схемотехнический) способ проектирования с написанием кода
Например, скорость разработки, размер кода, возможно, удобство тестирования итд.

IMHO, визуальный алфавит заведомо ограничен. С одной стороны, есть профессиональные среды для графического вывода, которые используют символическое описание (ex: TeX), с другой, разработки в RAD-системах кажутся мне убогими. Потому и хотелось бы услышать, чем разработчики визуальных языков обосновывают их преимущества. (с МЭК-языками почти не сталкивался, но их использование, кажется, одними контроллерами и ограничивается).
0
raxp
10180 / 6563 / 491
Регистрация: 28.12.2010
Сообщений: 21,166
Записей в блоге: 1
19.08.2014, 18:18  [ТС] #5
Не вижу смысла сравнивать, это вещи не конкуренты, они просто разные и взаимодополняющие. Взять тот же Altium, ISE, ....

Если говорить о ПЛИС: "Визуальный алфавит" основывается на элементарной логике из которой можно построить все. Ограничение лишь в количестве макроблоков (ячеек), т.е. памяти. В МК тоже самое, ограничение памяти. Кода в схемотехнической реализации как такового нет, все транслируется в элементарные базисы и схему соединений и разработчику не показывается. В то же время, в тех же ПЛИС средами поддерживается параллельно с графическим и cи/паскале подобные AHDL/VHDL, которые в итоге все равно транслируются в элементарный базис. Удобство - да, симуляторы дают возможность отладки. Но чем он лучше или хуже симулятора в том же Протеус? Да ничем, и там и там виртуальная лаборатория, под свое железо.

Поэтому сравнивать среды с разным подходом, нонсенс. Вот пришел киповец, ему нужно что-то запрограммировать в AVR. Что ему делать? Либо изучать Си, либо за пару минут накидать релейную рабочую схему. И в то же время, пришел программист, который ничерта не смыслит в релейных схемах, но при реализации алгоритма задачи решит ту же задачу в ПЛК при наличии возможности написания FBD-блоков. Я не говорю об универсалах.

с МЭК-языками почти не сталкивался, но их использование, кажется, одними контроллерами и ограничивается
мы говорим о микроконтроллерах/контроллерах или о языках высокого уровня и операционных системах? Нет. Так к чему это упоминать? Есть промышленные задачи, есть повседневные бытовые.
1
NoobsEnslaver
135 / 47 / 2
Регистрация: 31.07.2014
Сообщений: 232
08.09.2014, 18:30 #6
Читал я про этот дракон и смотрел видеоуроки - не совсем точно будет говорить что это язык программирования. Скорее, это язык построения алгоритма. Конечно, среда генерирует часть кода, но только самую малость - в основном if, for. В остальном среда представляет из себя средство повышения наглядности в отношениях между функциями. И то, не сказать чтобы каждому от нее стало нагляднее.
0
raxp
10180 / 6563 / 491
Регистрация: 28.12.2010
Сообщений: 21,166
Записей в блоге: 1
08.09.2014, 19:51  [ТС] #7
не совсем точно будет говорить что это язык программирования
название темы читали и содержание первого поста? Перечитайте снова и не вырывайте из контекста.
0
Ethereal
3305 / 1445 / 189
Регистрация: 17.02.2013
Сообщений: 2,332
20.04.2015, 15:28 #8
>Вот пришел киповец, ему нужно что-то запрограммировать в AVR. Что ему делать? Либо изучать Си, либо за пару минут накидать релейную рабочую схему.

Зачем киповцу AVR ? Куча фирм производят промышленные контроллеры, которые вообще языков программирования не знают. Для них именно-что рисуются в среде разработки релейные и не очень схемы. Контроллеры Альфа от Мицубиси, например.
http://www.industrialauto.ru/modules...g.php?lid=2281

Добавлено через 26 минут
Либо изучать Си, либо за пару минут накидать релейную рабочую схему. И в то же время, пришел программист, который ничерта не смыслит в релейных схемах, но при реализации алгоритма задачи решит ту же задачу в ПЛК при наличии возможности написания FBD-блоков.
Т.е. Вы создаете очередной протез мозга. Некую очередную программу, чтобы не надо было думать.
Результатом будет дальнейшее отупление среднего программиста и только.
От этого отупления полезного программистами в итоге будет сделано не больше, а меньше.

Результаты появления компиляторов Си в сфере МК, симуляторов и сред разработки уже на лицо.
Перед глазами примеры пареньков, которые год вымучивали на симуляторах то, что я писал
за три дня, имея только ассемблер командной строки. А это только потому, что когда я
начинал, за время компиляции программы можно было пообедать. И это жутко поднимало
профессионализм, потому как любая ошибка и любой тупняк наказывались кусанием локтей
при лишней компиляции. Учило отлаживать мысленно - просто просматривая ассемблерный
листинг с карандашом. А так уже никто не может. Почему не может ?
А от интегрированных сред и симуляторов атрофировался мозг.
И в итоге протезы из симуляторов и сред мозга все равно не заменили.
В конце концов средства, призванные, якобы, ускорить разработку программ, ее замедлили.
Потому как тупить за симулятором это гораздо медленнее, чем думать с карандашом.
0
raxp
10180 / 6563 / 491
Регистрация: 28.12.2010
Сообщений: 21,166
Записей в блоге: 1
20.04.2015, 15:54  [ТС] #9
Оффтоп выделяется тегами OFF/
0
NoobsEnslaver
135 / 47 / 2
Регистрация: 31.07.2014
Сообщений: 232
24.04.2015, 15:25 #10
Цитата Сообщение от Ethereal Посмотреть сообщение
Потому как тупить за симулятором это гораздо медленнее, чем думать с карандашом.
Вы не поняли смысла ДРАКОНа, он и есть этот карандаш - вместо того, чтобы хвататься за задачу с наскоку, ты садишься и начинаешь клепать алгоритм. Сначала совсем абстрактный, типа "инициализация", "рабочий цикл", "состояние аварии" и тд, а потом всё уточняешь и уточняешь, а потом этот лист можно распечатать, или просто как картинку сохранить и передать коллегам, у которых сходная задача или они будут сопровождать проект. Непосредственная генерация кода - это лишь вкусная плюшка программы, но она не выдерживает критики, её основное назначение - написание алгоритма, который одновременно будет документацией, от которого можно однозначно перейти к коду, думая уже не обо всей программе, а, например, как реализовать вот эту функцию "Парсинг пакета" и тд.
0
24.04.2015, 15:25
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.04.2015, 15:25
Привет! Вот еще темы с решениями:

Программаторы для микроконтроллеров AVR
Всем привет. Решил заняться программированием микроконтроллеров AVR. И тут...

Создание СУБД для микроконтроллеров
Доброго времени суток. Мне необходимо хранить/обрабатывать данные на...

Форматный вывод на Си для микроконтроллеров
Читал данную статью: ссылка И решил, что она может решить одну мою проблему,...

Абстрактное ядро ОС для микроконтроллеров.
Сколько может весить ядро операционной системы для микроконтроллеров и что оно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru