понедельник, 30 апреля 2012 г.

Руководство пользователя HAL


Глава 1
Вступление

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

1.1 Что такое HAL?
HAL базируется на простых принципах, которые используются для проектирования электронных схем и механизмов машин, так что будет полезным сначала вспомнить эти принципы.
Любая система (включая ЧПУ станок) состоит из объединенных компонентов. Для ЧПУ станка это могут быть: основной контроллер, серво-усилители или шаговые драйвера, моторы, энкодеры, концевые выключатели, различные кнопки, ЧРП для шпинделя, блок управления сменой инструмента и т. д. Проектировщик должен выбрать, смонтировать и скоммутировать все части вместе для создания законченной системы.

1.1.1.1 Выбор блоков
Проектировщику не надо беспокоиться о том как работает каждая отдельная часть. Он рассматривает их как черные ящики. На стадии проектирования он решает — использовать шаговые двигатели или сервоприводы, какую марку сервоусилителей использовать, какие концевые выключатели, сколько и т. д. Решение интегратора об использовании конкретных компонентов основывается на том, что делает блок и спецификациях, предоставляемых производителем оборудования. Размер двигателя и нагрузка, которую он должен нести влияет на выбор усилителя, необходимого для его работы. Выбор усилителя может повлиять на тип обратной связи, необходимый ему и скорость или сигналы позиционирования, которые должны быть посланы усилителю от контроллера.
В мире HAL, интегратор должен решить — какие компоненты HAL необходимы. Обычно, каждая интерфейсная карта потребует драйвер. Дополнительные компоненты могут потребоваться для программного генерирования шаговых импульсов, функциональности управления инструментом и другим широким спектром различных задач.

1.1.1.2 Проектирование соединений
Проектировщик электронных систем не только выбирает запчасти, но также и решает как эти блоки между собой взаимодействуют — соединяются. Каждый блок имеет выводы, может просто два для обычного выключателя или множество для подключения сервопривода или другого блока. Они должны быть соединены цепями вместе. Моторы подключаются к сервоусилителям, концевики к контроллеру и так далее. Проектировщик машины создает огромную схему подключений, которая показывает как все блоки должны быть соединены.
Когда мы используем HAL, компоненты объединяются с помощью сигналов. Проектировщик должен решить какие требуется сигналы и что они должны объединить.

1.1.1.3 Реализация
Когда схема соединений готова, настает время для постройки машины. Необходимо приобрести и смонтировать все блоки, а затем их надо соединить соответственно диаграмме подключений. В физических системах каждое соединение это кусок провода, который необходимо обрезать и подключить к нужному выводу.
HAL предоставляет набор инструментов для помощи «постройки» HAL системы. Некоторые инструменты позволяют «соединить» (или «разьединить») отдельный «провод». Другие инструменты дают возможность сохранить полный список всех частей, проводов и другую информацию о системе, так что ее всегда можно «перестроить» с помощью всего одной команды.

1.1.1.4 Тестирование
Очень немного машин начинают сразу работать правильно. При тестировании мастер может использовать линейки, чтобы увидеть работают ли выключатели, а может понадобиться измерять напряжение, поступающее на сервомотор. Он может снять осциллограммы для проверки настройки привода или отследить шумы в схеме. Он может найти проблему, которая потребует изменения схемы  подключений, может быть блок необходимо подключить по-другому или заменить чем то совершенно другим.
HAL представляет программный эквивалент вольтметра, осциллографа, сигнального генератора и другие инструменты, необходимые для тестирования и настройки системы. Команды, используемые для постройки системы могут использоваться для внесения необходимых изменений.

1.1.2  Обобщение
Этот документ направлен на тех, кто уже знает как создавать системы «в железе», но не знает как подключать оборудование к EMC.

Традиционный проект оборудования как описано выше заканчивается на границе основного контроллера. Вокруг основного блока находятся относительно простые модули, объединенные вместе для выполнения необходимых функций. Что внутри основного контроллера — большая загадка — один большой черный ящик, который, как мы надеемся, будет работать правильно.

HAL продвигает этот традиционный метод проектирования оборудования прямо внутрь большого черного ящика. Он превращает драйвера оборудования и даже некоторые внутренние блоки контроллера в маленькие черные ящики, которые можно соединять или даже заменять, совсем как в реальных машинах. Это позволяет отображать системную диаграмму соединений части внутри контроллера вместо простого черного ящика.  И что самое важное это дает возможность интегратору тестировать и изменять контроллер, используя теже методы, как и при работы с обычным оборудованием.

Такие термины как мотор, усилители и энкодеры знакомы большинству интеграторов. Когда мы говорим об использовании экстра-гибкого восьмижильного провода для подключения энкодера к плате сервопривода в компьютере — читатель сразу понимает о чем идет речь и попытается спросить «какой тип разьемов надо использовать». Такой же тип мышления присущ  HAL, конечно же со своими особенностями. Использование терминов HAL может сначала показаться странным, но концепция работы от одного подключения к следующему такая же.

Идея распространения диаграммы соединений внутрь контроллера — вот что такое HAL на самом деле. Если вам нравится идея соединения  черных ящиков машин, возможно у вас будут совсем небольшие проблемы при использовании HAL для объединения программных черных ящиков.

продолжение следует... надеюсь :)