Применение современных средств при проектировании систем сбора данных с датчиковой аппаратуры позволяет проводить предварительный анализ их работы с использованием имитационных средств моделирования и быстро вносить в них необходимые изменения. Наиболее полно это реализуется при модельно-ориентированном подходе [5] при проектировании систем.
Реализация на практике модельно-ориентированного подхода при проектировании элементов автоматической системы (АС) сбора и обработки информации c кориолисова расходомера [1] производилась с использованием аппаратно-вычислительной платформы Arduino Diecimila, при этом к платформе подключался тензометрический датчик Honeywell FSS1500ST. Для этого в среде Matlab/Simulink были синтезированы две модели: первая модель позволяет собирать данные с датчика и передавать их на компьютера вторая – принимать данные и визуализировать их во временной и частотной области.
Модель сбора данных имеет в своём составе блок Analog Input, позволяющий аппаратно-вычислительной платформе Arduino Diecimila принимать аналоговые сигналы с датчика. Далее данные проходят блок Gain, где происходит усиление сигнала, и попадают в блок Data Type Conversion, который преобразует тип входного сигнала для последующего приема сигнала средой Matlab. Для передачи сигнала с платы на персональный компьютер служит блок Serial Write. Для полноценного функционирования этой модели служит блок Serial Config, позволяющий конфигурировать uart-интерфейс для передачи данных в среду Matlab/Simulink.
По окончании синтеза этой модели в среде Simulink необходимо записать её на аппаратно-вычислительную платформу Arduino Diecimila, которая подключена к заранее объявленному в модели порту. В нашем случае это USB порт. Процесс компиляции и заливки скомпилированной прошивки в аппаратно-вычислительную платформу Arduino Diecimila происходит в автоматическом режиме.
Модель, позволяет принимать данные с датчика через аппаратно-вычислительную платформу Arduino Diecimila. Для этого используется блок Serial Config, конфигурирующий uart-интерфейс. Блок Serial Receive служит для приема данных и передачи их в блоки отображения сигнала Scope и блок спектрального представления сигнала Spectrum Scope. Это необходимо для анализа поступающего сигнала.
Чтобы убедится в работоспособности спроектированной модели, получим сигнал с датчика при отсутствии колебаний расходомерной трубки [2].
Убедившись в работоспособности нашей системы, получим сигнал с расходомера, работающего на частоте в 40 Гц, и построим спектр сигнала с использованием блока Spectrum Scope. Как видно из рисунка 1, сигнал содержит большое количество шумов, поэтому необходимо использовать полосовой фильтр. Наиболее целесообразно включить его в состав аппаратно-вычислительной платформы Arduino Diecimila.
Рис. 1. Спектр сигнала с КР
Для выделения информативной составляющей сигнала, спроектируем полосовой фильтр средствами среды Matlab, учитывая, что рабочая частота расходомера составляет 40 Гц.
Экспортируем спроектированный фильтр в Simulink - модель, из которой ранее был сгенерирован код для аппаратно-вычислительной платформы Arduino Diecimila. Применение Simulink модели для разработки кода позволяет быстро вносить изменения в алгоритм работы аппаратно-вычислительной платформы, а также моделировать её работу с использованием специализированных блоков без выгрузки кода. Это позволяет отладить работу любых сложных алгоритмов с минимальными временными затратами. Следует также отметить невозможность использования в Simulink модели блоков Function по причине отсутствия поддержки конвертации содержащегося в них Matlab кода в код аппаратно-вычислительной платформы Arduino Diecimila. Отдельно стоит выделить сложности, связанные с реализацией обратных связей в Simulink-модели. Их реализация привычным образом недопустима при реализации некоторых адаптивных фильтров. Но проблема решается использованием вместо обратных связей дополнительных блоков Analog input и блоков задержки. Учитывая, что разработанная нами модель состоит из малого числа блоков и имеет простую линейную структуру, наиболее оптимально сразу провести генерацию кода без предварительного моделирования работы аппаратно-вычислительной платформы в среде Matlab/Simulink.
Рис. 2. Модель сбора данных, с включенным в состав полосовым фильтром
На рисунке 2 представлена модель, в составе которой включен полосовой фильтр, на основании которой будет скомпилирована прошивка для аппаратно-вычислительной платформы Arduino Diecimila.
После обновления прошивки получим сигнал с КР, представленный в виде спектра на рисунке 3.
Рис. 3. Спектр сигнала прошедшего процедуру фильтрации
Не достаточное качество сигнала с тензометрического датчика КР после фильтрации может быть вызвано ограничениями аппаратной части вычислительной платформы Arduino Diecimila. Применение более сложных и дорогостоящих аппаратно-вычислительных платформ или программируемых логических интегральных схем(ПЛИС) позволит использовать более сложную систему фильтрации и избавится от помех, вызванных аппаратной частью модуля сбора данных.
Сравнительный анализ данных, полученных с КР, с результатами полученными с Matlab модели [3] показал, что данные с модели сопоставимы с реальными данными и числовые значения находятся в пределах одного порядка. При этом данные с моделируемого датчика проходят те же этапы цифровой обработки [4], что и данные с датчика КР, получаемые через аппаратно-вычислительную платформу. Это позволяет сделать вывод о адекватности модели и о необходимости проведения дальнейших исследований с учетом динамики изменения параметров работы КР и Simulink-модели. Это позволит синтезировать новые прошивки в аппаратно-вычислительную платформу Arduino Diecimila с учетом изменяемых условий работы.
Рецензенты:
Юрков Н.К., д.т.н., профессор, заведующий кафедрой «Конструирование и производство радиоаппаратуры» ФГБОУ ВПО Пензенский государственный университет, г. Пенза;
Чувыкин Б.В., д.т.н., профессор кафедры «Информационно-вычислительные системы» ФГБОУ ВПО Пензенский государственный университет, г. Пенза.
Библиографическая ссылка
Михеев М.Ю., Гудков К.В., Гудкова Е.А. РЕАЛИЗАЦИЯ МОДЕЛЬНО-ОРИЕНТИРОВАННОГО ПОДХОДА ПРИ ПРОЕКТИРОВАНИИ СИСТЕМЫ СБОРА ДАННЫХ // Современные проблемы науки и образования. – 2014. – № 6. ;URL: https://science-education.ru/ru/article/view?id=16833 (дата обращения: 19.02.2025).