roboforum.ru

Технический форум по робототехнике.

Язык программирования ДРАКОН

Язык программирования ДРАКОН

setar » 16 апр 2014, 01:11

Совсем недавно в результате поисков толкового языка визуального программирования я наткнулся на на язык ДРАКОН (drakon.su)

Практически случайно я первой посетил страницу википедии посвещенную этому языку (с сайта я бы прошел мимо),
и ... был в шоке от мощнейшей теоретической базы которая лежит в основе, от возможностей и от примеров реального применения.

Оказывается наши ракеты протон управляются кодом который написан на этом языке!
Его совсем недавно "рассекретили" и отдали в публичное применение.

В общем делюсь с вами, считаю что для большинства наших целей и задач он весьма подходит.
Позволяет генерировать управляющий код по нарисованному алгоритму в огромном количестве языков программирования, от ASM , C# до java python и даже 1С.
Причем управляющий код по сути своей реалтайм.

P.S. по возможности буду выкладывать свой опыт освоения.

Re: Язык программирования ДРАКОН

AndreiSk » 16 апр 2014, 01:32


Re: Язык программирования ДРАКОН

Myp » 16 апр 2014, 09:35

выглядит достаточно жутко, да.

надо бы какойнибуть мануальчик чтоли найти
потмоу что ничертаж не понятно

Re: Язык программирования ДРАКОН

setar » 16 апр 2014, 10:52

мануалов много, что приятно в том числе на русском
Вот для понимания сути полезно:

Язык ДРАКОН: вводный курс
Автор: Степан Митькин
Часть 1. Как рисовать ДРАКОН-схемы
Часть 2. Взаимодействие с внешним миром, параллельные алгоритмы и реальное время
Часть 3. Простые рецепты красоты

Re: Язык программирования ДРАКОН

noonv » 16 апр 2014, 11:14

setar писал(а):Совсем недавно в результате поисков толкового языка визуального программирования я наткнулся на на язык ДРАКОН (drakon.su)

Практически случайно я первой посетил страницу википедии посвещенную этому языку (с сайта я бы прошел мимо),
и ... был в шоке от мощнейшей теоретической базы которая лежит в основе, от возможностей и от примеров реального применения.

как говорится - "всё новое...". Странно, что только сейчас на него наткнулся - ДРАКОН с завидной периодичностью всплывает на разных тематических ресурсах :) Мне казалось, что и на робофоруме он "пробегал" :)

Re: Язык программирования ДРАКОН

Myp » 16 апр 2014, 11:25

скачал экзешник
прочитал вводный курс
а как собственно говоря теперь помигать светодиодиком?

не вижу магии появления хекса.

Добавлено спустя 3 минуты 41 секунду:
вооо
http://drakon.su/programma_is_drakon
http://drakon.su/_media/programma_genna ... rakona.rar

теперь понятно :)

Re: Язык программирования ДРАКОН

noonv » 16 апр 2014, 11:26

Myp писал(а):не вижу магии появления хекса.

по идее, он должен генерить код логики на C, который нужно будет дополнить платформо-зависимым кодом и тогда уже можно будет компилировать ;)

Re: Язык программирования ДРАКОН

Myp » 16 апр 2014, 11:32

платформозависимый код так же пишется в драконе
на выходе дракона получаем полный набор файлов проекта необходимых для компиляции любимым компилятором

Re: Язык программирования ДРАКОН

avr123.nm.ru » 16 апр 2014, 12:10



Похоже на бесплатную среду программирования для AVR Algorithm Builder http://algrom.net/russian.html

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

Визуальность логической структуры уменьшает вероятность ошибок и сокращает сроки разработки.

+ в проге есть симулятор и отладчик в железе через программатор на ft232.

Algorithm Builder обеспечивает мониторную отладку на кристалле (On Chip debug) которая позволяет наблюдать содержимое реального кристалла в заданной точке останова. При этом, для связи микроконтроллера с компьютером используется только один вывод, причем по выбору пользователя. Мониторная отладка может быть применена к любому типу кристалла, имеющего SRAM.


Есть мастер настройки AVR
Изображение

Re: Язык программирования ДРАКОН

Myp » 16 апр 2014, 13:12

а как же скрепы?

Re: Язык программирования ДРАКОН

setar » 16 апр 2014, 13:32

avr123.nm.ru писал(а):Похоже на бесплатную среду программирования для AVR Algorithm Builder

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

Дракон по своей сути создан для того чтобы для спеца-инженера убрать прослойку в виде программиста-кодера для реализации алгоритма задачи в готовом программном коде.
Идея языка шире - используя принципы восприятия блок-схем мозгом обеспечить визуальный контроль над логикой.
Кроме прочего в основе языка используется принцип диаграммы состояний управляемого объекта (стейт машины).

Re: Язык программирования ДРАКОН

avr123.nm.ru » 16 апр 2014, 14:03

Как прерывания программировать в Драконе?

Re: Язык программирования ДРАКОН

Aseris » 16 апр 2014, 14:28

Чтото подобное есть в IDE для плис, на вскидку сейчас не вспомню.
Хотя чемто UML напоминает...

Re: Язык программирования ДРАКОН

setar » 16 апр 2014, 14:37

Автор: Сергей Ефанов
Использование языка ДРАКОН для программирования микроконтроллеров. Часть 1. Разработка программы управления автоматическим дверным замком.



Использование языка ДРАКОН для программирования микроконтроллеров. Часть 2. Программирование битовых операций: инициализация процессора, настройка таймера и т.д. Компиляция. Загрузка полученной программы в постоянную память процессора (прошивка).



Использование языка ДРАКОН для программирования микроконтроллеров. Часть 3. Проектирование сложного алгоритма реального времени. Проектирование разветвленного алгоритма. Проектирование циклов. Оператор ожидания. Оператор "пауза". (на примере управления дверным замком).



Использование языка ДРАКОН для программирования микроконтроллеров. Часть 4. Работа с несколькими таймерами. В какой момент нужно запустить каждый таймер? Управление шиной процессора (на примере управления дверным замком)

Re: Язык программирования ДРАКОН

hudbrog » 16 апр 2014, 15:53

Я сначала хотел положительно отнестись к этому, но увидев "if(a == b) goto :L20", видимо, не смогу


Rambler\'s Top100 Mail.ru counter