Altinkaya: турецкие корпуса для РЭА

osPID - ПИД-контроллер с открытым исходным кодом. Часть 2 - платы ввода/вывода, ПО

Журнал РАДИОЛОЦМАН, май 2012

Часть 1

В первой части статьи мы рассмотрели характеристики и принципиальную схему основной платы ПИД-контроллера, в которой микроконтроллер выполняет все функции управления и контроля на основе поступающих данных от внешних датчиков.

Для взаимодействия микроконтроллера с внешним миром, как упоминалось в первой части, используются специальные платы ввода/вывода, подключаемые к разъемам основной платы ПИД-контроллера.

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Платы ввода

Разработано несколько вариантов плат ввода, каждый из которых ориентирован на сбор данных определенного типа (или нескольких типов). Мы остановимся на самой первой разработке – плате ввода данных от термистора и термопары K-типа (Рисунок 6).

 osPID - ПИД-контроллер с открытым исходным кодом
Рисунок 6. Базовая плата ввода для измерения температуры с помощью термистора или термопары K-типа.

Плата ввода соединяется с основной платой через разъем, схема расположения выводов которого показана на Рисунке 7.

osPID - ПИД-контроллер с открытым исходным кодом 
Рисунок 7. Схема расположения выводов и сигналы разъема на основной плате ПИД-контроллера для подключения плат ввода.

Принципиальная схема базовой платы ввода для измерения температуры изображена на Рисунке 8.

Основные характеристики платы ввода/вывода:

  • Входной порт для подключения термистора:
    • К порту дополнительно подключается эталонный резистор с таким же номиналом сопротивления, как у используемого термистора. Допустимое отклонение сопротивления этого резистора должно быть, по крайней мере, не хуже, чем у термистора. Такое решение придает ПИД-контроллеру бóльшую гибкость.
    • Возможно использование этого же порта для подключения датчиков, выходной сигналы которых представлены напряжением (фоторезисторы, потенциометры и пр.);
  • Входной порт для подключения термопары К-типа:
    • используется преобразователь сигнала термопары в цифровой сигнал MAX6675ISA:
      • автоматическое определение подключения термопары,
      • диапазон измерения температуры от 0 до +1024 °С.
 osPID - ПИД-контроллер с открытым исходным кодом
Рисунок 8. Принципиальная схема базовой платы ввода для измерения температуры с помощью термистора
и/или термопары.

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

Подключение термистора к входному порту платы ввода

Термистор, как неполярный прибор, подключается к двум верхним контактам платы ввода, обозначенным «Sensor». Эталонный резистор, с параметрами указанными выше, подключается к двум следующим контактам (обозначены как «Reference Resistor»). Выводы эталонного резистора должны быть короткими, насколько это возможно (Рисунок 9).

 osPID - ПИД-контроллер с открытым исходным кодом
Рисунок 9. Подключение термистора и эталонного резистора к базовой плате ввода для измерения температуры.

Подключение термопары к входному порту платы ввода

При подключении термопары к ПИД-контроллеру следует учитывать полярность ее выводов. Кроме того, термопара должны быть именно K-типа. Для термопары используются контакты 5 («TC–») и 6 («TC+») платы ввода (Рисунок 10).

 osPID - ПИД-контроллер с открытым исходным кодом
Рисунок 10. Подключение термопары K-типа к плате ввода ПИД-контроллера.

Платы вывода

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

 osPID - ПИД-контроллер с открытым исходным кодом
Рисунок 11. Внешний вид паты вывода с установленным реле.

Платы вывода подключается во второй разъем основной платы (Рисунок 12).

 osPID - ПИД-контроллер с открытым исходным кодом
Рисунок 12. Схема расположения выводов и сигналы разъема на основной плате ПИД-контроллера для подключения плат вывода.

Принципиальная схема платы вывода изображена на Рисунке 13.

Основные характеристики платы вывода:

  • два однополюсных нормально разомкнутых реле с коммутируемым током до 10 А (на плату установлено одно);
  • печатная плата с толщиной фольги 70 мкм;
  • 1 выход для управления внешним твердотельным реле;
  • 3 светодиода индикации состояния (два для реле и один для цифрового выхода).
 osPID - ПИД-контроллер с открытым исходным кодом
Рисунок 13. Принципиальная схема базовой платы вывода для управления внешними устройствами.

Дополнительные платы

Дополнительные платы могут оказаться полезными при доработке ПИД-контроллера или при его модификации под конкретные нужды приложения. К таким платам относятся плата для макетирования и интерфейсная плата (Рисунок 14). Обе они выполнены в таком же форм-факторе, как и платы ввода/вывода.

 osPID - ПИД-контроллер с открытым исходным кодом
Рисунок 14. Плата для макетирования и интерфейсная плата могут использоваться для расширения возможностей ПИД-контроллера.

 
Программное обеспечение

Программа микроконтроллера написана и скомпилирована в среде Arduino, что позволит пользователям вносить коррективы и модифицировать ее в соответствии с конкретными нуждами приложения или системы.

Процесс прошивки микроконтроллера:

  1. Скачайте и установите интегрированную среду разработки Arduino.
  2.  Скачайте пакет ПО (исходные коды) микроконтроллера.
  3.  Подключите ПИД-контроллер к ПК по USB интерфейсу (виртуальный COM-порт на ПК).
  4.  Запустите оболочку Arduino, в меню «Tools» выберите корректный COM-порт и установите целевую плату «Arduino Duemilanove w/ATmega328».
  5. Откройте файл «osPID_Firmware.ino» и выберете «Upload».
  6. Процесс загрузки кода имеет две фазы: компиляция и программирование микроконтроллера. Если процесс остановится на этапе загрузки кода в микроконтроллер, то причина в неустановленной перемычке «Авто-сброс». Просто нажмите кнопку сброса и процесс продолжиться.
  7. Если все этапы пройдены без ошибок и прошивка будет загружена в микроконтроллер, появится сообщение «Done Uploading».

Примечание:

Как и платы Arduino, ПИД-контроллер автоматически сбрасывается при обнаружении нового последовательного соединения. Это упрощает прошивку микроконтроллера или обновление ПО. К сожалению, автосброс может создавать проблемы во время нормальной работы ПИД-контроллера, так как, например, при подключении его к ПК сброс контроллера вам не нужен. По этой причине на основной плате контроллера была установлена перемычка J6 (см. схему основной платы, интерфейс USB).

Программное приложение для ПК

Программное обеспечение для ПК написано на языке Processing. Это позволяет производить гибкую настройку ПИД-контроллера или выполнять обработку и анализ полученных данных (Рисунок 15). Для пользователя доступен как исполняемый файл, так и исходные коды приложения. Перед запуском программы необходимо, чтобы ПИД-контроллер был подключен к компьютеру, так как сканирование доступных портов производится при запуске приложения.

 osPID - ПИД-контроллер с открытым исходным кодом
Рисунок 15. Вид окна программы для настройки ПИД контроллера.

Дополнительные материалы, документация, информация по конструктивным особенностям, а также основные этапы ручного конфигурирования ПИД-контроллера с его панели управления доступны в разделе документации на сайте ospid.com

Загрузки

Принципиальная схема ПИД-контроллера (основанная плата, платы ввода/вывода) – скачать
Приложение для ПК (исполняемый файл и исходный код) – скачать
ПО для микроконтроллера (основная программа и дополнительные библиотеки) – скачать
Среда программирования Processing – скачать

ospid.com

Перевод: Vadim по заказу РадиоЛоцман

На английском языке: osPID - open source PID-controller. Part 2 - Input/Output Cards, Software

Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя
Фрагменты обсуждения:Полный вариант обсуждения »
  • В ПО фронт-енда ни строчка комментариев ! Плохо, так нельзя ! Иначе - проект подкупает простотой. И наличие ПО для настройки.