Разработка компьютерной модели МР3-плеера на основе switch-технологии
Баженов Руслан Иванович,
кандидат педагогических наук, доцент, заведующий кафедрой информатики и вычислительной техники,
Балашова Светлана Владимировна,
Моисеев Валерий Владимирович,
студенты.
Приамурский государственный университет имени Шолом-Алейхема.
Разработка и проектирование управления цифровой аппаратуры базируется на основе теории автоматов. Такой метод позволяет минимизировать количество ошибок. В программировании применение теории автоматов трансформировалась в switch-технологию.
Положения прикладной теории автоматов в программировании обобщил и развивает А.А.Шалыто [6, 9, 10]. В.А.Татарчевский показал применение switch-технологиb в задачах логического управления [11]. Применение switch-технологии для разработки логической модели управления процессом сушки шпона исследовал Б.М.Шифрин [12]. Р.И.Баженов, М.А.Афанасьева, Л.С.Гринкруг представили использование автоматного программирования в разработке мастеров заполнения данных, компьютерного моделирования, методов интеллектуального анализа, дидактики [1-5]. Применение теории конечных автоматов при моделировании сложных систем с использованием программы stateflow показал М.Д.Казаненко [8]. Н.А.Зубков, В.М.Иськив, В.В.Чугунов описали switch-технологию при разработке прикладного программного обеспечения для микроконтроллеров avr [7].
В представленной работе описывается решение задачи компьютерного моделирования поведения цифрового автомата на примере управления МР3-плеера.
Опишем модель управления работой МР3- плеера с помощью автомата, его графом состояний (рис. 1.). На рис. 1 использована система кодирования состояний и сигналов (табл. 1).
Рис. 1. Граф состояний автомата.
Таблица 1.
Состояния и входные (выходные) сигналы.
Состояние |
Входные сигналы |
Выходные сигналы |
|||
A1 |
Выключено |
Z1 |
Включить/выключить |
W1 |
Включить |
A2 |
Ожидание проигрывания трека |
Z2 |
Кнопка ˂ |
W2 |
Выключить |
А3 |
Включено |
Z3 |
Кнопка> |
W3 |
Переключить трек |
|
|
Z4 |
Громкость + |
W4 |
Изменить громкость |
|
|
Z5 |
Громкость - |
W5 |
Проигрывать |
|
|
Z6 |
Кнопка проигрывать |
|
|
|
|
Z7 |
Кнопка пауза |
|
|
Для реализации компьютерной модели цифрового автомата среде Delphi применялась swicth-технология на основе оператора case. Представим фрагмент исходного кода для иллюстрации применения switch-технологии:
procedure TForm1.automat;
begin
case state of
1: case signal of
1: begin state:=2; outcommand:=1;
…; obrab(outcommand);
end;
end;
2: case signal of
1: begin state:=2; outcommand:=2;
… ; obrab(outcommand);
end;
2: begin state:=2; outcommand:=3;
… ; obrab(outcommand);
end;
…
end;
…
end;
procedure TForm1.BitBtn3Click(Sender: TObject);
begin
signal:=3;
end;
Переключений состояний state цифрового автомата осуществляется в процедуре automat. Здесь же вызывается моделирующая действие подпрограмма obrab для соответствующего выходного сигнала outcommand. Переменные состояния state и входной команды signal прописаны как глобальные. В каждой процедуре BitBtnClick определена генерация соответствующей входной команды или сигнала.
Реализованная модель работы автомата по управлению МP3-плеера представлена на рис. 2.
Рис. 2. Интерфейс программы.
Таким образом, было разработана программа, моделирующая поведение цифрового автомата. Применение switch-технологии позволило быстро и без ошибок запрограммировать управление устройством – МР3-плеером.
Литература
1. Баженов Р. И. Интеллектуальные информационные технологии. Биробиджан: ПГУ им. Шолом-Алейхема, 2011. 176 с.
2. Баженов Р. И. Методические рекомендации для выполнения курсовой работы по дисциплине «Теория автоматов». Биробиджан: Изд-во ДВГСГА, 2008. 20 с.
3. Баженов Р. И., Афанасьева М. А. Разработка программной модели контроля дверей холодильника на основе теории автоматов // Журнал научных публикаций аспирантов и докторантов. 2014. №4(94). С. 306-308.
4. Баженов Р. И., Гринкруг Л. С. Информационная система Абитуриент-Деканат ФГБОУ ВПО «Приамурский государственный университет им. Шолом-Алейхема» // Информатизация и связь. 2013. № 2. С. 97-99.
5. Баженов Р. И., Гринкруг Л. С. Информационная система по расчету и распределению нагрузки профессорско-преподавательского состава ФГБОУ ВПО «Приамурский государственный университет им. Шолом-Алейхема» // Информатизация и связь. 2012. №5. С. 75-78.
6. Вавилов К. В., Шалыто А. А. Что плохого в неавтоматном подходе к программированию контроллеров? // Промышленные АСУ и контроллеры. 2007. № 1. С. 49-51.
7. Зубков Н. А., Иськив В. М., Чугунов В. В. Применение switch-технологии при разработке прикладного програмного обеспечения для микроконтроллеров avr // Сборник научных трудов Sworld. 2010. Т. 7. № 4. С. 39-40.
8. Казаненко М. Д. Применение теории конечных автоматов при моделировании сложных систем с использованием программы stateflow // Научный вестник Московского государственного горного университета. 2012. № 12. С. 37-42.
9. Поликарпова Н. И., Шалыто А. А. Автоматное программирование. СПб.: Питер, 2009. 176 с.
10. Степанов О. Г., Шалыто А. А., Шопырин Д. Г. Предметно-ориентированный язык автоматного программирования на базе динамического языка ruby // Информационно-управляющие системы. 2007. № 4. С. 22-27.
11. Татарчевский В. А. Switch-технология в задачах логического управления // Программные продукты и системы. 2006. № 4. С. 13.
12. Шифрин Б. М. Применение switch-технологии для разработки логической модели управления процессом сушки шпона // Известия Санкт-Петербургской лесотехнической академии. 2008. № 185. С. 186-194.
Поступила в редакцию 23.05.2014 г.