Технология реконфигурируемого ввода/вывода в приложениях измерений, автоматизации, управления и сбора данных Назначение курса Курс направлен на изучение основных принципов разработки аппаратнодетерминированных систем управления и мониторинга на базе Programmable Automation Controller (PAC) , FPGA ( Xilinx Spartan 3) реконфигурируемых аналоговых и цифровых блоков ввода/вывода CompactRIO и программного модуля LabVIEW FPGA. Хорошо разработанное приложение, ориентированное на CompactRIO аппаратуру состоит из трех фундаментальных компонент: • ведущая (host) программа (на ПК) для взаимодействия с пользователем • программа реального времени, устанавливаемая на PAC для реализации процесса обработки и связи под управлением RT OS VxWorks Характеристики PAC (программируемого контроллера автоматизации) NI cRIO 9012: • Small, rugged, high-reliability embedded real-time processor for intelligent standalone operation • Executes powerful floating-point algorithms with deterministic real-time performance • 400 MHz Freescale MPC5200 real-time processor • 64 MB DRAM memory, 128 MB of nonvolatile storage • 10/100BaseT Ethernet port with built-in FTP/HTTP servers and LabVIEW remote panel Web server • Full-speed USB host port for USB-based storage media • RS 232 serial port for peripheral devices • Fault-tolerant file system • Low power consumption with dual 9-35 VDC power supply inputs • -40 to 70 ºC temperature range • Filed Programmable Gate Array (FPGA)Xilinx Spartan 3 -ПЛИС для реализации управляющего (вычислительного) алгоритма и обеспечения интерфейса с блоками вводавывода. Обычно программирование ПЛИС микросхем требует от пользователя знания достаточно сложных языков описания аппаратуры, таких как VHDL, Verilog. Именно сложность программирования ПЛИС привела к тому, что многие инженеры отказываются от использования данной технологии в приложениях измерений, автоматизации, управления и сбора данных. Новая технология реконфигурируемого ввода/вывода (Reconfigurable Input/Output - RIO) National Instruments позволяет существенно сократить время, затрачиваемое на обучение инженеров программированию ПЛИС. Кроме этого технология RIO предоставляет пользователям LabVIEW возможность графического программирования и конфигурирования ПЛИС, используемых в приложениях измерений и автоматизации. Этот курс научит Вас установить и конфигурировать аппаратные средства и использовать программное обеспечение для создания системы. Раскроет особенности фундаментальных приемов программирования для каждой из трех компонентов системы. На протяжении курса, Вы выполните практические упражнения и создадите реальное приложение для управления физическим процессом. Каждый слушатель курса имеет доступ к его/ее собственной CompactRIO системе для самостоятельного выполнения упражнений. После завершения курса, сможет разработать и поддерживать высоконадежные, аппаратно-детерминированные приложения на основе CompactRIO оборудования. Продолжительность - Двенадцать (12) дней (72 часа) 1 Аудитория – специалисты промышленности, аспиранты, студенты, сторонние слушатели Предварительная подготовка - Знание основ графического программирования в LabVIEW Содержание курса: Тема 1 - Введение 1.1. Реконфигурируемый ввод - вывод 1.2. Приложения 1.3. Архитектура приложения 1.4. Состав интегрированного блока CompactRIO 1.5. Шасси 1.6. Контроллер реального времени 1.7. Блоки ввода - вывода 1.8. Особенности системы R- серии 1.9. Быстродействующая система с интерфейсом PCI 1.10. Вспомогательное оборудование Тема 2 - Конфигурирование CompactRIO 2.1. Обнаружение CompactRIO оборудования 2.2. Конфигурирование и настройка сетевых параметров 2.3. Статический адрес IP 2.4. Автоматический адрес IP от DHCP сервера 2.5. Расширенные параметры настройки сети Ethernet 2.6. Устройства и интерфейсы 2.7. Программное обеспечение Тема 3 - Прикладная архитектура 3.1. Добавление блоков ввода - вывода к проекту 3.2. Добавление специфичных каналов ввода- вывода FPGA Тема 4 – Модуль LabVIEW FPGA 4.1. Введение 4.2. CompactRIO FPGA 4.3. Логика взаимодействия FPGA с LabVIEW 4.4. Процесс разработки FPGA программы 4.5. Создание FPGA VI 4.6. Палитры функций FPGA 4.7. Узлы ввода- вывода FPGA 4.7. Синхронизация ввода - вывода с помощью функции Loop Timer 4.8. Модульный код 4.9. Создание лицевой панели FPGA VI 4.10. Выполнение FPGA VI в режиме эмулятора Тема 5 - Контроллер реального времени 5.1. Разработка приложений LabVIEW Real-Time 5.2. Детерминированные операционные системы 5.3. Методы синхронизации 5.6. Wait VI 5.7. Wait Until Next Multiple VI 5.8. Timed Structures 5.9. Разработка RT Host VI 5.10. Палитры функций RT Host с функциями интерфейса FPGA Тема 6 - Windows PC host 6.1. Переменные общего доступа (Shared Variable) для сетевого взаимодействия 2 Тема 7 - Передача данных и синхронизация 7.1. Передача данных между FPGA и контроллером реального времени 7.2. Гонки состояний 7.3. Буферизация и синхронизация 7.4. Прерывания связи 7.5. FPGA FIFO 7.6. Процедура установления связи 7.7. Синхронная поблочная пересылка 7.8. Прямой доступ к памяти Тема 8 -Оптимизация FPGA приложений по размеру и скорости выполнения 8.1. Оценка времени выполнения цикла VI(Tick) 8.2. Оценка времени выполнения цикла While Loop. Функция Tick Count 8.3. Оценка времени выполнения в структуре Sequence 8.4. Оценка используемых ресурсов ПЛИС(VIs Size) 8.5. Преобразование кода LabVIEW в аппаратную структуру ПЛИС 8.6. Распространение потока данных в ПЛИС 8.7. Триггеры ПЛИС на блок-диаграмме LabVIEW 8.8. Оптимизация программного кода по скорости выполнения 8.9. Параллельное исполнение фрагментов программного кода в ПЛИС 8.10. Конвейерная обработка(Pipelinig) 8.11. Цикл, выполняемый за один такт(Single-Cycle Timed Loop-SCTL) 8.11. Путь распространения данных 8.12. Уменьшение пути распространения потока данных 8.13. Конвейеризация блок-диаграммы 8.14. Оптимизация ресурсов ПЛИС 8.15. Уменьшение количества объектов на лицевой панели 8.16. Экономичный обмен данными(FIFO) 8.17. Упаковка данных 8.18. Оптимизация ресурсов ПЛИС с помощью таблиц 8.19. Замена операции деления Тема 9 Заключение. 9.1 Модельное проектирование с использованием парадигмы виртуализации 9.2.Перспективы развития и внедрения сред виртуальных инструментов для производственных исследований и инжиниринга бизнес процессов 9.3 Технологические платформы концептуального и модельного проектирования 9.4 Перспективные технологии виртуальных инструментов компании National Instrument Руководитель цикла доцент Жуков К.Г. 3