Построение платформы системы сбора информации - Блог им. Catethysis

Построение платформы системы сбора информации

Want create site? Find Free WordPress Themes and plugins.

Изучение платформы для построения простой системы сбора данных STM32VLDISCOVERY.

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

Предлагается решение этой проблемы с меньшими затратами времени и материальных средств. Стоит оговориться, что это справедливо для систем с небольшим количеством контролируемых величин (до 12), и с медленным из­менением полезного сигнала (до 1 кГц).

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

Описание системы

Предлагаемая система состоит на аппаратном уровне из следующих ос­новных частей:

• Отладочной платы STM32VLDISCOVERY на базе микроконтроллера STM32F100RBT6B фирмы STMicroelectronics с ядром ARM Cortex М3;

• Преобразователя интерфейсов PL2303 USB <-► TTL на базе микросхемы PL2303HX фирмы Prolific;

• Переменного резистора имитирующего работу датчика.На программном уровне система состоит из двух программ:
• На стороне персонального компьютера — одна из стандартных программ терминалов последовательно порта RS232;
• На стороне микроконтроллера — управляющей программы по пересылке данных из регистров АЦП в модуль УАПП для отправки в персональный ком­пьютер.

Про отладочную плату STM32VLDISCOVERY и микроконтроллер STM32F100RBT6B написано в различных источниках уже достаточно [1], [2]. На применяемой для решения поставленной задачи периферии микроконтрол­ лера остановимся более подробно.

Основные возможности периферии микроконтроллера STM32F100RBT6B

Набор периферии микроконтроллера (МК) достаточно типичен для данного класса устройств [3]. Но есть среди этого многообразия и специфические для микроконтроллеров вещи, такие, например, как контроллер прямого доступа к памяти КПДП (Direct Memory Access DMA).

Применительно к нашей задаче, интерес представляют модуль универсаль­ного синхронного асинхронного приёмника передатчика УСАПП (Universal Synchronous Asynchronous Receiver Transmitter — USART) и модуль аналого- цифрового преобразователя АЦП (Analog-to-Digital converter, ADC). Оба этих модуля можно подсоединить к КПДП и сократить объём написанного кода про­ граммы для микроконтроллера. В дополнение к этим двум модулям может по­ требоваться применение, для запуска АЦП, таймера. Таймеры также, в доста­точном количестве, имеются в составе микроконтроллера.

Используемое АЦП является двенадцатиразрядным последовательного при­ближения, которое может работать на максимальной частоте в 12 МГц (что при минимальном времени выборки даёт время преобразования в 1,17 мкс). К нему можно подключить до 16 внешних каналов. Кроме этого, есть дополнительно два внутренних канала для оцифровки температуры кристалла микроконтроллера (сигнал датчика температуры и уровень опорного напряжения питания датчика).

Предусмотрена возможность запуска процесса преобразования на аппарат­ ном уровне от внешнего (подключаемого к выводу отладочной платы) источ­ника. Разнообразные режимы работы допускают задавать различные последо­вательности оцифровки каналов, что перекрывает большую часть задач по оцифровке данных. В наличии имеется аналоговое устройство контроля пре­вышения установленных порогов (в документации называемого Analog Watchdog), которое позволяет на аппаратном уровне отслеживать значения измеряемой величины на предмет выхода за установленные рамки, что очень по­ лезно для задач диагностики неисправностей внешнего датчика. Время выборки сигнала для каждого канала задается индивидуально и лежит в диапазоне от 1,5 до 239,5 тактовых импульсов работы АЦП. Кроме возможности подключения к КПДП каждое событие, возникающее внутри АЦП, может генерировать преры­вание. Для получения качественных результатов измерений перед включением АЦП необходимо однократно провести его калибровку. Более полную инфор­мацию по настройке АЦП можно получить, обратившись к документации [4], а узнать о характеристиках АЦП можно в [3].

Возможности УАПП также несколько шире стандартных и допускают рабо­ту по протоколу Smartcard, а также в сетях LIN и IrDA. Имеется возможность аппаратного управления потоком данных при помощи линий RTS и CTS. Среди необычного можно выделить применение числа с фиксированной запятой для задания скорости передачи данных. Это даёт меньшую ошибку при работе уст­ройства. Так же как и АЦП УАПП имеет возможность генерировать запросы к КПДП и контроллеру прерываний.

Для связи с преобразователем PL2303 USB <-> TTL нет необходимости прибе­гать ко всей этой функциональности, достаточно простого асинхронного ин­терфейса.

Преобразователь PL2303 USB <->TTL

На рынке существует достаточное количество подобных преобразователей, и этот вариант ничем не уступает им. Этот модуль приводится как пример по­ добных устройств и не выделяется чем-то особенно.

Как можно заметить этот модуль имеет два разъема: USB – для подключе­ния к персональному компьютеру и 4-х контактную штыревую линейку для связи с STM32DISCOVERY. Контакты штыревой линейки подписаны: «Усс» – питание +5 Вольт от шины USB персонального компьютера, «RXD» – вход при­емника преобразователя, «TXD» – выход передатчика преобразователя и «GND» – нулевой провод источника питания.

Изображение-преобразователь

Внешний вид преобразователя PL2303 USB TTL

На плате имеется лишь одна микросхема преобразователя PL2303HX фир­мы Prolific Technology, на которую имеется документация [6]. Все подобные преобразователи обычно строятся на таких микросхемах, которые значительно упрощают использование USB-порта. При подключении модуля к компьютеру и при отсутствии замыканий, на плате включается красный светодиод, сигнали­ зирующий о наличии питания по шине USB.

Для нормальной работы устройства в системе необходимо установить драйвер PL2303HX, дистрибутив которого можно найти на официальном сайте Prolific Technology [7]. Установка драйвера обычно не вызывает трудностей. После установки, в системе должен появиться новый виртуальный СОМ-порт,

наличие которого, для операционных систем Windows можно проверить в дис­ петчере устройств.

Подключение преобразователя к отладочной плате можно осуществить при помощи соединительных проводов, доступных по небольшой цене [8]. Внешний вид таких проводов представлен на этом изображении:

Изображение-гибкая-шина

Гибкая шина для соединения плат

Для соединения с модулем понадобится только три провода. На плате мо­ дуля они должны быть подключены к выводам «TXD», «RXD» и «GND», а на отладочной плате к выводам обозначенным как «РАЮ» «РА9» и «GND», соот­ ветственно.

Сборка системы

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

Изображение-резистор

Переменный резистор (потенциометр)

Для данного типа резисторов характерна удачная конструкция выводов, ко­ торая обеспечивает хорошее соединение с указанными соединительными про­водниками.
Резистор следует подключить следующим образом: один из крайних выво­дов подключается, при помощи проводника, к выводу, обозначенному на отла­дочной плате «3V3», а другой, к выводу «GND». Средний контакт подключает­ ся к любому из выводов (в зависимости от используемого АЦП канала) РАО – РА7, РВО, РВ1, РСО – РС5 (соответствуют каналам с 0 по 15). Программой мик­роконтроллера используется вывод РА1. При подключении следует быть акку­ ратным, чтобы не использовать уже занятый вывод. Дело в том, что на плате STM32VLDISCOVERY уже произведены некоторые внутренние подключения выводов микроконтроллера, так, например, РАО используется для управления встроенной кнопкой, поэтому перед подключением следует ознакомиться с до­кументацией на плату STM32VLDISCOVERY.

Изображение-собранная-система

Собранная система сбора данных на базе платы STM32VLDISCOVERY

 

ТаблицаОписание подключения проводов к плате

Описание подключения проводов к плате STM32VLDISCOVERY

 

После подключения переменного резистора и преобразователя сборка аппаратной части системы заканчивается и можно приступать к программной части. Основная трудность заключается в написании программы для микрокон­ троллера и её отладке. По этот теме можно найти много литературы, в том чис­ле в интернете. Чтобы не писать про­грамму с самого начала, можно использовать уже имеющуюся заготовку про­граммы, которую можно получить от преподавателя.

Эта программа позволяет измерять напряжение с переменного резистора, подключённого к внешнему выводу РА1 микроконтроллера, и выводить дан­ные в компьютер через УАПП, при этом мигает светодиод на отладочной плате.

Для сбора данных со стороны персонального компьютера можно исполь­зовать любую программу терминал. В стандартной поставке операционной сис­ темы Windows в версиях до Windows 7 использовался для этих целей Hyper- Terminal, но в новых версиях его исключили из стандартной поставки. К счастью эта программа свободно распространяется в сети, откуда её можно легко загрузить на компьютер.

В сети интернет можно также найти другие программные продукты ана­логичные HyperTerminal. Среди них особо следует выделить бесплатную про­ грамму Terminal vl.9 от автора Вг@у++ [11]. Эта программа включает в себя удобный интерфейс по настройке параметров работы СОМ порта, а также рас­ ширенные возможности по управлению поступающим потоком данных из ком­муникационного порта. Внешний вид программы представлен на этом изображении:

изображение-терминад

Внешний вид программы Terminal v. 1.9 от автора Br@y++

Запуск системы, получение и обработка данных

Подключите преобразователь PL2303 USB <-> TTL к компьютеру. Если подключили преобразователь первый раз, то выполняется автоматическая уста­ новка драйверов из интернета, как показано на Рис. 18. Данное действие спра­ ведливо, если установлена Windows 7. Если, система Windows ХР, то необхо­димо скачать и установить драйвера вручную.

 

 

Изображение-Установка драйверов Установка драйверов преобразователя

Найдите, какой COM-порт появился в системе: Панель управления —► Диспетчер устройств —■>Порты (СОМ и LPT). На Рис. 19 это СОМЗЗ. Посколь­ку не все программы могут работать с большими номерами COM-портов, то лучше изменить номер на любой свободный от COM2 до СОМ6. Для этого дважды щёлкните на порте, номер которого хотите изменить. После этого пе­рейдите на вкладку «Параметры порта», нажмите «Дополнительно». В выпа­дающем меню измените номер. Например, на COM2. Если будет выдано ин­формационное сообщение, то нажмите «Да».

Изображение-номера-СОМ-порта

Определение номера СОМ порта

Убедитесь, что на STM32VLDISCOVERY перемычки CN3:1-CN3:2, CN3:3- CN3:4 установлены, а где CN2 SWD перемычек нет (Рис. 20).

Подключите устройство к USB. Появившееся при автостарте окно можно просто закрыть.

При необходимости скомпилируйте и загрузите программу в STM32VLDISCOVERY. Запустите программу Terminal. Выберите нужный СОМ порт. Нажмите «Connect». Вы должны увидеть столбец с цифрами. По­скольку АЦП в МК 12-разрядный, то диапазон чисел будет от 0 до 4095. Выде­лите числа мышкой, нажмите правую кнопку мышки и выберите «Копировать».

Изображение-Положение перемычек

Положение перемычек

Изображение-Данные-с-АЦП-MK

Данные с АЦП MK

Вставьте данные из буфера обмена в Excel. Постройте график по полу­ченным данным. Пример подобного графика показан на изображении:

Изображение-Данные-АЦП-МК

Данные с АЦП МК и график изменения сигнала

После окончания работы обязательно отключите от USB STM32VLDISCOVERY и преобразователь.

Did you find apk for android? You can find new Free Android Games and apps.

Читайте также:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Подставки из нержавеющей стали https://aisi24.com.ua