Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
68
Добавлен:
24.02.2016
Размер:
27.74 Mб
Скачать

4.4. Лабораторная работа №4. «Изучение методов программирования счетчиков»

4.4.1. Цель работы

Изучение работы счетчиков: CNT, SGCNT, UDC и методов их программирования при помощи программного пакета DirectSOFT.

4.4.2. Теоретическое введение

Счетчики.

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

Счетчики – это устройства, работающие по сигналу разрешения X(t), позволяющие измерять количество однотипных перепадов уровня (фронтов) переменной X(t) и переводить переменную Y(t) в состояние “1” при достижении заранее заданного числа(уставки).

Классический счетчик обычно имеет сигнал сброса. В счетчиках с накоплением этот сигнал отличается от сигнала разрешения Xи, как и в таймерах, обеспечивает различные варианты работы, в том числе: счет по фронту или спаду импульсов, счет тех же переходов, но с вычитанием, перевод выходной переменной счетчика Y(t) в состояние “1” или “0”, когда число переходов достигло значенияили нуля при счете с вычитанием.

В рассматриваемом микропроцессоре DL240, при помощи программного пакета DirectSOFT, можно программировать счетчики трех типов: с одним “считающим” входом (SGCNT), с двумя входами: “считающим” и “сбрасывающим” – (CNT), реверсивный счетчик с тремя входами: “прибавляющий”, “вычитающий” и “сбрасывающий” – (UDC). Представление этих счетчиков в программе приведено в табл. 4.15.

В счетчике CNT увеличение на единицу числа счетов осуществляется при каждом переключении первого входа (Count) из “0” в “1”, а сброс в “0” при включении второго входа (Reset).

В счетчике SGCNT увеличение на единицу числа счетов осуществляется при каждом переключении единственного входа из “0” в “1”, а для сброса в “0” его текущего значения необходимо использовать команду RST.

В счетчике UDC увеличение на единицу числа счетов осуществляется при каждом переключении первого входа (Up) из “0” в “1”, уменьшение на единицу числа счетов осуществляется при каждом переключении второго входа (Down) из “0” в “1”. Счетчик сбрасывается, когда включается вход Reset.

Более подробно данные счетчики описаны в разделе 3.

Табл. 4.15. Обозначение счетчиков

Программный пакет DirectSOFT позволяет использовать два способа программированиясчетчиков:

  1. Можно использовать счетчик для выполнения функций после достижения им указанного предварительно установленного значения (B bbb). В этом случае используют дискретный бит статуса счетчика.

  2. Можно использовать счетчик, чтобы, с помощью сравнительных контактов, выполнять функции в различные моменты, меньшие указанного предварительно установленного значения (B bbb).

Счетчики находят самое широкое применение в производстве. Их используют для учета готовой продукции, счета количества различного рода событий, при взвешивании и т.д. Возможность применения счетчиков особенно расширяется, когда для их организации используются как внутренние переменные, так и переменные входа – выхода. X(t) может быть переменной входа – выхода или внутренней переменной.

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

Команды управления циклом.

Чтобы в полной мере управлять системой, необходимо иметь возможность воздействовать на цикл ее работы. В лабораторной работе №2 была рассмотрена команда безусловного перехода Goto/Label. В данной лабораторной работе мы рассмотрим команду условного перехода For/Next, которая позволяет выполнять определенное количество раз секции лестничной логики, заключенные между командами For и Next (тело цикла). Циклы используются для повторения определенных операций (например, вычислений) до тех пор, пока не будет удовлетворено определенное условие. Для команды For / Next таким условием является количество повторений. Как только команда For будет активизирована, начнется выполнение тела цикла. В противном случае, команды, определяющие тело цикла, не выполнятся.