Научная статья на тему 'АВТОМАТИЗИРОВАННАЯ ГЕНЕРАЦИЯ ПРОГРАММНОГО КОДА'

АВТОМАТИЗИРОВАННАЯ ГЕНЕРАЦИЯ ПРОГРАММНОГО КОДА Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
51
4
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АВТОМАТИЗИРОВАННАЯ ГЕНЕРАЦИЯ / ГЕНЕРАЦИЯ КОДА / MATLAB / LABVIEW / SIMULINK

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Казанин П.И., Луговской К.С.

На сегодняшний день компьютеризация является неотъемлемой частью деятельности организаций, поднимая проектную работу на высокий уровень, при этом повышая темпы и качество проектирования, решаются многие сложные инженерные задачи, до этого рассматривающиеся лишь упрощенно. Реализуется это использованием специализированных программ, которые могут быть как самостоятельными, так и в виде приложений к общетехническим программам. В данной статье будет рассматриваться один из подходов к упрощению проектной деятельности, с помощью специализированных программ и программных средств.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «АВТОМАТИЗИРОВАННАЯ ГЕНЕРАЦИЯ ПРОГРАММНОГО КОДА»

скоростных магистралей и пр.).

9. Утилизация и переработка отходов.

Занятость в сфере управления отходами и их утилизации будет расти в связи с ростом количества отходов, обусловленным ростом населения и доходов. Перспективная сфера применения «зелёных» инноваций является переработка и повторное использование бытовых и промышленных отходов. Отходы одного производства являются сырьем для другого. Развитие рециклинга а так же раздельного сбора отходов, не только сокращает загрязнения, но и демонстрирует уровень культуры общества.

10. Использование водных ресурсов.

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

Использованные источники:

1. Берденова К. А., Штанг В. В., Синцов С. В. «Зелёная» экономика как двигатель устойчивого развития // Сибирский торгово-экономический журнал. 2012. №15. С. 4-7.

2. Бушуев В.В., Голубев В.С., Селюков Ю.Г., Энергоинформационные основы устойчивого развития. (На примере российских регионов). - Москва: Энергия, 2005. - 59 с.

3. Макконнелл К. Р., Брю С. Л. Экономикс: принципы, проблемы и политика. Т. 1. - М.: Республика, 1992. - 36-47 с.

4. Миркин Б. М., Наумова Л. Г., Хазиахметов Р. М. Проблемы устойчивого развития: Мир, Россия, Башкортостан. - Уфа: АН РБ, Гилем, 2011. - 340 с.

Казанин П.И. бакалавр кафедра робототехники и автоматизации производственных систем

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

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

Ключевые слова: автоматизированная генерация, генерация кода, МЛТЬЛБ, ЬаЬШЖ, БтыИпк.

1. Введение

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

2. Кодогенерационный подход

Зачастую, системы управления моделируют с помощью специализированных программных пакетов и в последствие необходимо описать эту модель с помощью программного кода. Так как системы могут быть различной степени сложности, написание такого кода может занять большое количество времени. Также не исключается вариант недостаточных знаний программиста, для написания кода такой системы. Множество математических операций увеличивают вероятность допущения ошибок при ручном написании кода. Кодогенерационный подход помогает значительно упростить написание кода.

Кодогенерационный подход заключается в том, что программный пакет, в котором была смоделирована система, автоматически генерирует описывающий ее код на языке С, либо С++.

На данный момент существует множество программных пакетов, позволяющих моделировать системы различной степени сложности и на их основе получать сгенерированный С либо С++ код. Среди «гигантов» можно отметить такие пакеты программ как МЛТЬЛБ и ЬаЬУГЕ'^

Выбор программного пакета, в большей степени, зависит от поставленной задачи, которую необходимо решить, и методов ее решения. Программный пакет LabVIEW ориентирован на измерения, визуализацию и обработку данных одновременно. В основе LabVIEW лежит концепция графического программирования - последовательное соединение функциональных блоков на блок-диаграмме [1]. Программный пакет МЛТЬЛБ - платформонезависимый высокоуровневый язык программирования ориентированный на матричные вычисления и разработку алгоритмов. Язык МЛТЬЛБ обладает поддержкой векторных и матричных операций, которая необходима для решения инженерных и научных задач, и предназначена для быстрой разработки и запуска. Также пакет МЛТЬЛБ включает в себя среду 81ши11пк. Это графическая среда имитационного

моделирования, позволяющая при помощи блок-диаграмм в виде направленных графов, строить динамические модели, включая дискретные, непрерывные и гибридные, нелинейные и разрывные системы [2].

Для автоматизированной генерации кода в программных пакетах есть специальные утилиты. У пакета LabVIEW данная утилита называется LabVIEW C Generator. У программного пакета MATLAB она называется MATLAB Coder.

3. Реализация подхода

В качестве примера приведена одноконтурная система управления, структурная схема которой приведена на рисунке 1.

Рисунок 1 - Структурная схема системы управления Автоматизированная генерация программного кода производится с помощью программного пакета MATLAB. На рисунке 2 изображена схема исследуемой модели. Модель была реализована с помощью графической среды моделирования БппШтк программного пакета МАТЬАВ.

Рисунок 2.3 - Схема модели системы

Для того чтобы сгенерировать программный код на основе модели Simulink, требуется воспользоваться утилитой MATLAB Coder.. С помощью данной утилиты, на основе модели автоматически генерируется программный код. Код может генерироваться на языках C/C++. Затем в окне настройки параметров выбираем нужный нам язык программирования и нажимаем «Generate code».

Рисунок 2.5 - Окно параметров конфигурации

По окончании процесса генерации кода создается exe - файл, mat - файл и папки, содержащие файлы с кодом.

Файлы с расширением «.h» отвечают за подключение к программе типов данных, функций, структур и т.п. Файлы с расширением «.c» содержат исходный код программы или же являются отдельной частью проекта. 4. Заключение

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

Использованные источники:

1. Описание пакета LabVIEW // Официальный сайт "meandr.org". URL: http : //meandr. org/archives/27494

2. Описание пакета MATLAB // Официальный сайт "matlab.ru". URL: http : //matlab .ru/products/matlab

3. П.Н. Палухин, В.В. Поддубный Технология использования MATLAB-программ в средах визуального программирования C/C++. 2003.

i Надоели баннеры? Вы всегда можете отключить рекламу.