AP0017 - Счетные входы, измерение оборотов/импульсов

advertisement
AP0017
КОММЕНТАРИЙ ПО ПРИМЕНЕНИЮ
Счетные входы, измерение
оборотов/импульсов
Абстрактно
Каждый цифровой вход можно использовать для счета импульсов. Каким способом
их можно использовать описано в этом комментарии по применению.
Автор: Йиржи Палат
Документ: ap0017_ru_01.pdf
Приложение
Содержание файла: ap0017_cz_01.zip
citacovevstupy_p1_cz_01.dso Пример № 1 – программный счетчик
citacovevstupy_p2_cz_01.dso Пример № 2 – программный счетчик INT, измерение оборотов
citacovevstupy_p3_cz_01.dso Пример № 3 – аппаратный счетчик
citacovevstupy_p4_cz_01.dso Пример № 4 – счет импульсов на DM-DI24
citacovevstupy_p5_cz_01.dso Пример № 5 – счет импульсов на DMM-DI24
®
Copyright (c) 2009, AMiT , spol. s r.o.
www.amit.cz
1/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Содержание
Абстрактно ..........................................................................................................................1
Приложение ........................................................................................................................1
История ревизий.................................................................................................................4
Соответствующая документация ......................................................................................4
1.
Термины и определения.................................................................................................5
2.
Счетные входы, измерение оборотов/импульсов .........................................................6
3.
Программный счетчик.....................................................................................................7
3.1.
3.1.1
3.1.2
3.2.
Программное обслуживание .............................................................................................7
Модуль ImpIn ......................................................................................................................7
Модуль DImp.......................................................................................................................7
Пример № 1 – программный счетчик................................................................................7
Процесс Quick, период 50 мс. ...........................................................................................8
Обычный процесс, период 5 с...........................................................................................8
4.
Программный счетчик INT ..............................................................................................9
4.1.
4.2.
4.2.1
4.3.
Interrupt процессы...............................................................................................................9
Программное обслуживание .............................................................................................9
Измерение скорости вращения.......................................................................................10
Пример № 2 – программный счетчик INT, скорости вращения .........................................10
Процесс Interrupt_0 ..........................................................................................................10
Процесс Interrupt_1 ..........................................................................................................10
Правильный процесс, период 1 сек. ...............................................................................11
5.
Аппаратный счетчик......................................................................................................12
5.1.
5.1.1
5.3.
5.3.1
5.3.2
5.3.3
5.3.4
5.3.5
5.3.6
Программное обслуживание ...........................................................................................12
Модуль IRCMode ..............................................................................................................12
Режимы входов.................................................................................................................13
Начальные условия..........................................................................................................14
Обслуживание позиционных меток.................................................................................14
Перевод в физические величины ...................................................................................15
Параметры модуля и их изменение во время работы ..................................................15
Модуль IRCPreset.............................................................................................................15
Модуль IRCSet..................................................................................................................15
Модуль IRCIn ....................................................................................................................16
Примеры применения счетных входов...........................................................................16
Пример № 3 - аппаратный счетчик .................................................................................16
Процесс INIT .....................................................................................................................16
Процесс обработки результата, период 10 сек. ............................................................17
Свойства счетных входов................................................................................................17
Контроллер ADiS ..............................................................................................................17
Контроллер AMiRiS99 ......................................................................................................18
Контроллер ART267Ax.....................................................................................................19
Контроллер ART4000x .....................................................................................................20
Контроллеры AMiNix, AMiNi2x.........................................................................................21
Контроллеры ADOREG/36x, StartKit ...............................................................................23
6.
Счет импульсов при помощи расширяющих модулей ...........................................24
6.1.
Расширяющий модуль DM-DI24......................................................................................24
5.1.2
5.1.3
5.1.4
5.2.
5.2.1
ap0017_ru_01
2/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
6.1.1
6.2.
6.2.1
Пример № 4 – считывание импульсов на DM-DI24 .......................................................24
Считывание значений счетчиков из всех входов ..........................................................25
Настройка значения всех счетчиков...............................................................................25
Расширяющий модуль DMM-DI24...................................................................................25
Пример № 5 – считывание импульсов на DMM-DI24 ....................................................25
Считывание значений счетчиков на всех входах. .........................................................25
Настройка значения счетчика одного входа ..................................................................26
Настройка значения счетчиков всех входов ..................................................................26
7.
Техническая поддержка ................................................................................................27
8.
Предупреждение ............................................................................................................28
3/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
История ревизий
Версия
001
Дата
Изменения
28. 11. 2008 Новый документ
Соответствующая документация
1) Справочная система к среде разработки DetStudio
файл: DetStudioHelp.chm
2) Руководство по обслуживанию контроллеров AMiT
файл: xxx_g_ru_xxx.pdf
3) AP0006 – Коммуникация в сети MODBUS
файл: ap0008_ru_xx.pdf
4) AP0016 – Правила применения RS485
файл: ap0016_ru_xx.pdf
5) AP0025 – Коммуникация в сети ARION – задание параметров в таблице
файл: ap0025_ru_xx.pdf
ap0017_ru_01
4/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
1.
Термины и определения
DetStudio
Среда разработки прикладных программ для контроллеров фирмы AMiT, которая служит
также для параметризации контроллеров. Эту среду можно свободно скачать
с www.amitomation.ru .
Счетные входы
Это дискретные входы, которые оборудованы быстродействующими счетчиками и их можно
использовать для подсчета приходящих импульсов, используя для этого программные
модули IRCxxx.
Канал
Группа из максимально шестнадцати входов/выходов одного типа (дискретные/аналоговые).
RS485
Это полудуплексная последовательная шина позволяющая осуществлять коммуникацию
между несколькими элементами на одной сигнальной паре. Больше информации найдете
в документе AP0016 – Правила применения RS485.
ARION
Это последовательный полудуплексный коммуникационный протокол для коммуникации
контроллеров формы AMiT с модулями удаленных вх./вых.. При помощи этих модулей
можно увеличить количество входов/выходов контроллеров. К одной сети ARION можно
подключить до 63 модулей.
MODBUS
Это открытый протокол для взаимной коммуникации разного оборудования, который
позволяет переносить данные в разных сетях и полевых шинах. Коммуникация работает на
принципе передачи сообщений с данными между клиентом и сервером (master и slave).
Удаленная точка
Речь идет о определении регистров/бинаров, в некоторых случаях групп регистров/бинаров,
которые ассоциированы с входами/выходами на оборудовании (slave) выполняющем
коммуникацию посредством протокола MODBUS.
Модули DM-xxx
Модули, которые посредством коммуникационной сети ARION позволяют расширить
количество входов и выходов контроллера.
Модули DMМ-xxx
Модули, которые посредством коммуникационной сети MODBUS RTU позволяют расширить
количество входов и выходов у оборудования, которое выполняет коммуникацию
посредством протокола MODBUS RTU и является «master» в этой сети. К одной сети
MODBUS можно подключить до 63 модулей.
5/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
2. Счетные входы, измерение оборотов/импульсов
Все контроллеры фирмы AMiT, которые оборудованы дискретными входами можно
использовать для счета импульсов или измерения количества оборотов.
Счет импульсов или измерение количества оборотов может быть реализован (согласно типа
конкретного контроллера) следующим способом:
♦ Программным счетчиком
♦ Программным счетчиком INT
♦ Аппаратным счетчиком
Если контроллер не имеет дискретных входов, но имеет коммуникационной интерфейс
RS485 или RS232 (для RS232 необходимо применить преобразователь RS232/RS485),
можно для счета импульсов (до частоты 25 Гц) использовать расширяющие модули DM-DI24
(коммуникация по протоколу ARION) или DMM-DI24 (коммуникация по протоколу MODBUS).
Эта возможность описана в главе 6.
Программный счетчик
Каждый дискретный вход можно программно обслуживать в Hi_x процессах. Применив
в этих процессах определенные программные модули можно использовать эти входы как
счетные, в частности для измерения количества оборотов. Максимальная частота входного
сигнала при этом зависит от программной реализации. Как правило такой способ можно
использовать до частоты 250 Гц. Эта возможность описана в главе 3.
Программный счетчик INT
Некоторые дискретные входы могут генерировать аппаратное прерывание (interrupt).
Программным обслуживанием таких прерываний в Interrupt_x процессах возможно при
помощи определенных программных модулей использовать эти входы как счетные,
в частности для измерения количества оборотов. Максимальная частоты входного сигнала
при этом зависит от программной реализации. Как правило такой способ можно
использовать до частоты 10 кГц. Эта возможность описана в главе 4.
Аппаратный счетчик
Некоторые контроллеры оборудованы аппаратными счетчиками, подключенными к дискретным входам, в частности счетчиками, рассчитанными на работу с инкрементными датчиками
перемещения. Программное обслуживание в этом случае обеспечивается при помощи
программных модулей IRCxxx. Максимальная частота входного сигнала при этом зависит от
типа контроллера. Эта возможность описана в главе 5.
ap0017_ru_01
6/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
3.
Программный счетчик
Если контроллер оборудован дискретными входами, то сигналы на этих входах можно
программно обрабатывать в быстрых процессах и каким способом использовать их для
счета импульсов. Программирование выполняется в среде разработки DetStudio и для этого
используются модули ImpIn и DImp.
Максимальная частота входного сигнала при этом зависит от программной реализации. Как
правило такой способ можно использовать до частоты 250 Гц.
Модуль DImp можно использовать в любом обычном процессе. Модуль ImpIn располагается
в быстром процессе (процесс типа Quick или Hi_x), период которого выбирается в зависимости от длины импульса. Период процесса с модулем ImpIn должен быть более чем в два
раз меньше чем чем длительность обрабатываемых импульсов. Например если
длительность импульса = 10 мкс, то период быстрого процесса должен быть 5 мкс или
меньше.
3.1.
3.1.1
Программное обслуживание
Модуль ImpIn
Модуль ImpIn обслуживает до шестнадцати импульсных входов, считываемых из выбранного логического канала DI. Обрабатываемые значения не укладывает в базу данных,
а сохраняет их в своих внутренних переменных. Эти значения далее обрабатываются при
помощи модуля DImp. Модуль ImpIn должен быть расположен в быстром процессе (процесс
типа Quick или Hi_x).
Каждый из шестнадцати импульсных сигналов может иметь активным фронт или срез
импульса или обе две грани одновременно. У сигналов не правильной формы как правило
активным выбирается фронт.
3.1.2
Модуль DImp
Модуль DImp считывает параметр из импульсного входа и пересчитывает его в размерность
конкретной физической величины. Модуль используется совместно с модулем ImpIn,
который предназначен для обслуживания импульсных входов. Модуль DImp располагается
в любом простом процессе (Proc00 .. Proc15). При счете импульсов на нескольких входах,
модуль DImp используется в прикладной программе многократно.
Модуль DImp способен обрабатывать данные, получаемые от датчиков с импульсным
выходом, по принципу „1 импульс = N физических величин“. На основании значения N (константы датчика) определяется состояние счетчика непрерывных величин (напр. счетчика
потребления воды, счетчика газа, электросчетчика и т.д.) и определяется актуальное
значение физической величины.
3.2.
Пример № 1 – программный счетчик
На вход DI0.0 контроллера StartKit будет подключено оборудование, которое генерирует
импульсы длительностью 100 мс. Минимальная пауза между импульсами составляет
100 мс. Физическое значение одного импульса соответствует энергии 0,25 МДж. Значения
счетчика будут считываться каждых 5 с. При достижении значения 1 ГДж, счетчик обнулится.
Модуль ImpIn необходимо расположить в такой быстрый процесс, период которого был бы
на половину меньше длительности импульса. Для данной задачи это мог бы быть процесс
с периодом 50 мс.
Поставленную задачу решает приведенный ниже код.
7/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Процесс Quick, период 50 мс.
// обслуживание 16-ти импульсных входов канала 0
:10000
ImpIn #0, 100, 30, 0xFFFF, 0x0000
Обычный процесс, период 5 с.
// считывание и перерасчет импульсного входа DI0.0
DImp :10000, 0, Delta, Suma, Okamzita, Konstanta, SyncIn.0, NONE.0
//при достижении значения 1 миллион, счетчик обнулить
Let SyncIn = if(Suma >= 1000000, 1, 0)
Переменная Suma является счетчиком физических единиц, переменная Delta является
приращением физической величины с момента последнего считывания, переменная
Okamzita содержит вычисленное актуальное значение количества физических единиц за
единицу времени, в переменной Konstanta находится константа счетчика (0,25 МДж /
импульс).
Этот пример является составной частью проекта, находящегося в файле приложения
Содержание файла: ap0017_cz_01.zip под названием citacovevstupy_p1_cz_01.dso. Этот
проект создан в среде DetStudio для контроллера StartKit. Однако его можно адаптировать
для любого иного контроллера, имеющего дискретные входы, при помощи меню DetStudiо
Tools/Change Station... .
ap0017_ru_01
8/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
4.
Программный счетчик INT
Некоторые дискретные входы могут генерировать аппаратное прерывание (interrupt).
Программным обслуживанием таких прерываний в Interrupt_x процессах можно эти входы
применить для счета импульсов.
Ограничение частоты входного сигнала обусловлено спецификой программного обеспечения. Как правило данный способ можно использовать до частоты 10 кГц.
4.1.
Interrupt процессы
В прикладной программе можно создать до 16 interrupt процессов (в среде разработки
DetStudio обозначены как Interrupt_0 .. Interrupt_15), которые запускаются при возникновении
определенных событий. Под этими событиями понимается достижение сигналом,
подаваемым на дискретный вход контроллера, определенного уровня. Запуск процесса
может производится по фронту или по срезу сигнала, или же от обоих граней сигнала.
Количество имеющихся interrupt процессов и их соответствие дискретным входам зависит от
примененного типа контроллера, и приведено в нижеследующей таблице.
Процесс
Interrupt_0
Interrupt_1
Interrupt_2
Interrupt_3
Interrupt_4
Interrupt_5
Interrupt_6
Interrupt_7
Interrupt_8
Interrupt_9
Interrupt_10
Interrupt_11
Interrupt_12
Interrupt_13
Interrupt_14
Interrupt_15
ADiS +
2 × AD-FDI8
ADOREG/3
6x
StartKit
AMAP99
AMiNix
AMiNi2x
ART4000x
ART267Ax
AMiRiS99
FDI0.0
FDI0.1
FDI0.2
FDI0.3
FDI0.4
FDI0.5
FDI0.6
FDI0.7
FDI1.0
FDI1.1
FDI1.2
FDI1.3
FDI1.4
FDI1.5
FDI1.6
FDI1.7
DI0.0
DI0.1
DI0.2
DI0.3
-
DI0.0
DI0.1
DI0.2
DI0.3
DI0.4
DI0.5
DI0.6
DI0.7
DI1.0
DI1.1
DI1.2
DI1.3
DI1.4
DI1.5
DI1.6
DI1.7
DI0.0
DI0.1
DI0.2
DI0.3
DI0.4
DI0.5
DI0.6
DI0.7
-
DI0.0
DI0.1
DI0.2
DI0.3
DI0.4
DI0.5
DI0.6
DI0.7
DI1.0
DI1.1
DI1.2
DI1.3
-
ADiR
ADOSxxx
APT3xxx
APT3xxxS
MEST1xx
-
Примечание
У контроллера ADiS процессы Interrupt_0 .. Interrupt_7 связанны с дискретными входами
первого модуля AD-FDI8 (AD-FDI8 который расположен ближе всего к CPU модулю).
Процессы от Interrupt_8 до Interrupt_15 связанны с дискретными входами второго модуля
AD-FDI8. При этом отсутствует какая-либо зависимость от распределения логических
каналов на этих модулях.
4.2.
Программное обслуживание
Interrupt_x процесс возможно использовать для счета импульсов используя следующий
сценарий. Импульсы будут подаваться на дискретный вход контроллера, который будет
генерировать прерывание в следствии которого будет запускаться соответствующий
Interrupt_x процесс (в соответствии с таблицей выше). В этом процессе потом будет
выполняться счет приходящих импульсов.
9/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
4.2.1
Измерение скорости вращения
При измерении скорости вращения (количества оборотов за минуту) при помощи
импульсного датчика, можно использовать модуль RPM1. Этот модуль позволяет
определить скорости вращения, измеряя параметры импульсов на одном дискретном входе
(который вызывает прерывание). Для измерении скорости вращения на нескольких входах, в
прикладной программе используется несколько модулей RPM1. Модуль располагается в
Interrupt_x процессе соответствующем входу, на котором хотим измерять скорость
вращения. Язык процесса должен быть типа LA или RS.
В параметрах соответствующего процесса Interrupt_x необходимо задать, должен ли
процесс (а в месте с ним и модуль RPM1) включаться по фронту или по срезу входного
импульса. Кроме исключительных случаев, настойчиво не рекомендуется настраивать
запуск Interrupt_x процесса на обе грани импульса – это могло бы отрицательно повлиять
на точность измерения. В Interrupt_x процессе с модулем RPM1 не рекомендуется
использовать какие-либо другие функциональные модули.
Не зависимо от частоты входных импульсов, значение переменной, содержащей скорость
вращения, актуализируется каждых 10 мс, и эта переменная может использоваться в любом
процессе.
Общее количество импульсов за единицу времени для всех модулей RPM1, примененных в
прикладной программе, не должна в сумме превысить 80000 импульсов за одну минуту.
Однако необходимо далее учесть что превышение границы 40000 импульсов за одну минуту
может стать причиной возникновения сбоев в последовательной коммуникации, в следствии
увеличения потребления процессорного времени на обслуживание счетных входов.
Указанные выше границы могут отличаться в зависимости от типа контроллера.
4.3. Пример № 2 – программный счетчик INT, скорости вращения
На вход DI0.0 контроллера StartKit будет подключен счетчик расхода (напр. обьема какогото вещества), который генерирует импульсы. Физически одн импульс соответствует 1 м3.
При достижении значения 1·106 м3 счетчик будет обнуляться.
Далее будет на вход DI0.1 подаваться сигнал с импульсного датчика для измерения
скорости вращения. Датчик в течении каждого оборота генерирует 8 импульсов.
Поставленную задачу решает приведенный ниже код.
Процесс Interrupt_0
// счет импульсов поступающих на вход DI0.0, активным является фронт импульса
IncDec cit_hodnota, 1, 1.000
Суммарное количество поступивших на вход импульсов (или значений физической
величины в м3) укладывается в переменную cit_hodnota.
Процесс Interrupt_1
// Измерение скорости вращения. Импульсы с датчика оборотов поступают на вход DI0.1,
// активным является фронт импульса
RPM1 0x0808, 10.000, Otacky
Для уменьшения влияния вибрации и неточности в размещении меток на измерительном
диске, для расчетов используется среднее арифметическое значение периодов восьми
последних импульсов. Скорость вращения измеряется начиная со значения 10 об/мин,
и укладывается в переменную Otacky.
ap0017_ru_01
10/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Правильный процесс, период 1 сек.
// Обработка значения счетчика, с целью его обнуления при достижении максимальной
//величины
Let cit_hodnota = if (cit_hodnota > 1000000, 0, cit_hodnota)
Этот пример является составной частью проекта, находящегося в файле приложения
Содержание файла: ap0017_cz_01.zip под названием citacovevstupy_p2_cz_01.dso. Этот
проект создан в среде DetStudio для контроллера StartKit. Однако его можно адаптировать
для любого иного контроллера, имеющего дискретные входы, вызывающие interrupt
процессы, при помощи меню DetStudiо Tools/Change Station... .
11/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
5.
Аппаратный счетчик
Некоторые контроллеры фирмы AMiT оборудованы быстрыми (аппаратными) счетными
входами, или входами для инкрементных датчиков перемещения. Разные типы контроллеров оборудованы разным количеством этих входов, некоторые типы контроллеров
этими входами не оборудованы вовсе.
Эти входы можно параметризовать в среде разработки DetStudio при помощи модулей
IRCIn, IRCMode, IRCSet и IRCPreset.
Для каждого счетного входа можно выбрать, для какой конкретной цели он должен быть
применен, или какой тип датчика к нему подключен. Некоторые счетные входы не
поддерживают все режимы или некоторые режимы поддерживаются с определенными
ограничениями, см. главу 5.3.
Аппаратными счетными входами оборудованы приведенные ниже контроллеры.
Контроллер
ADiS
AMiRiS99
ART267Ax
ART4000x
AMiNix, AMiNi2x
ADOREG/36x, StartKit
Количество считывающих входов
2-а счетных входа при применении модуля AD-IRC2 (можно
подключить до 8 модулей, следовательно до 16-ти счетных входов)
2 счетных входа
2 счетных входа
2 счетных входа
3 счетных входа
2 счетных входа
Параметры счетных входов
Контроллер
AdiS + AD-IRC2
AMiRiS99
ART267Ax
ART4000x
AMiNix, AMiNi2x
ADOREG/36x, StartKit
Амплитуда входных сигналов
TTL / 24 В
24 В
24 В
24 В
24 В
24 В
Макс. частота
1 МГц
5 кГц
5 кГц
5 кГц
160 кГц
5 кГц
Примечание
Приведенные в таблицах выше данные являлись актуальными в момент написания этого
комментария по применению. Актуальный перечень контроллеров, оборудованных
аппаратными счетными входами можно найти на www.amitomation.ru.
5.1.
Программное обслуживание
Для обслуживания счетных входов, или входов для инкрементных датчиков перемещения
служат модули IRCxxx.
Как правило, с инкрементных датчиков на счетные входы контроллера поступают два
сигнала F1 и F2, иногда три сигнала в тех случаях когда используется сигнал, определяющий направление счета (инкремент или декремент), см. главу 5.3.
5.1.1
Модуль IRCMode
Модуль обеспечивает настройку режимов аппаратных счетных входов, или входов для
инкрементных датчиков. В месте с тем возможен выбор активной грани входных импульсов.
Далее имеется возможность задания константы для перерасчета количества импульсов
(единиц) в значение физической величины.
ap0017_ru_01
12/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Модуль IRCMode как правило располагается в процесс INIT, но его также возможно
расположить и в периодический процесс. Это целесообразно сделать в тех случаях когда
необходимо изменять режим или иные параметры счетного входа во время работы
программы (например из терминала). При расположении в периодическом процессе
необходимо, чтобы модуль вызывался только тогда, когда необходимо сделать изменение
параметров, и чтобы в момент его вызова на вход не поступали импульсы, так как в процессе
работы модуля IRCMode может произойти потеря или не корректная обработка импульсов.
Режимы входов
Счетный вход в разных режимах реагирует по разному на различные комбинации входных
сигналов (F1 и F2) и их граней.
Рис. 1 - Определение событий
В указанной ниже таблице „+“ значит повышение значения счетчика, „-“ значит понижение
значения счетчика, пустое поле значит, что счетчик на событие не реагирует.
Реакция на событие
Режим
входов
IRC F1-F2
IRC F2-F1
Направление
+/Направление
-/+
Вверх
Вниз
F1+ F2F1- F2+
Выбор
активной
грани
Не имеет
значения
Не имеет
значения
Фронт
Срез
Обе грани
Фронт
Срез
Обе грани
Фронт
Срез
Обе грани
Фронт
Срез
Обе грани
Фронт
Срез
Обе грани
Фронт
Срез
Обе грани
Реакция на событие:
4
5
6
1
2
3
+
+
+
+
+
-
-
-
-
-
7
8
9
-
-
-
-
+
+
+
+
-
+
+
+
+
-
+
+
+
+
-
+
+
+
+
+
-
-
+
+
+
+
+
-
-
-
+
+
+
+
+
+
-
-
+
-
+
-
+
+
-
-
-
+
+
+
-
+
-
+
+
Дальнейшую информацию о режимах найдете в главе 5.3.
13/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Начальные условия
После включения контроллера внутренние счетчики, обеспечивающие работу счетных
входов / входов для инкрементных датчиков перемещения, обнулены. Перед первым
вызовом модуля IRCMode случайные импульсы на входах игнорируются.
После включения контроллера и вызова модуля IRCMode должна быть проведена
синхронизация данных счетчика с действительным положением того механизма с которым
данный счетчик работает. Это можно сделать, например выполнив перемещение механизма
к концевику (к позиционной метке), определяющему начальное положение. До выполнения
этой синхронизации прикладная программа не должна использовать значения полученные
при помощи модуля IRCIn.
Альтернативой является периодическая запись значения счетчика, получаемое при помощи
вызова программного модуля IRCIn, в датабазовую переменную. У такой переменной не
должна происходить инициализация после выключения и включения питания контроллера
(так называемый "теплый старт"). Данное свойство задается программистом при
инициализации переменной. В случае пропадания и последующего появления питания
значение этой переменной можно использовать для инициализации счетчика. Однако
следует учесть, что такой метод может отрицательно сказаться на точности определения
положения механизма, поскольку часть импульсов, поступивших на счетный вход в период
между последним вызовом модуля IRCIn и пропаданием питания, может быть потеряна.
Таким образом и в этом случае было бы полезно калибровку производить хотя бы время от
времени, чтобы возникающая ошибка, в следствии ее накопления, не превысила
критическое, для данной системы, значение.
Обслуживание позиционных меток
Инкрементные датчики перемещения бывают, как правило, оборудованы одной или
несколькими позиционными (индексными) метками. Эти метки служат для установки
механизма в начальное положение, или же установки в определенное, требуемое в данном
механизме, положение. Для подключения датчиков, связанных с данными метками, должны
быть в контроллере выделены отдельные входы. При достижении механизмом положения,
определяемого метками (срабатывании соответствующих датчиков), необходимо обеспечить
запись соответствующих значений в аппаратный счетчик (например нулевого значения или
какого-то определенного). Если не брать в расчет возможность мануальной синхронизации
положения (когда обслуживающий персонал, например, нажатием кнопки запустит процесс,
содержащий модуль IRCSet), возможны два режима обслуживания позиционных меток:
Автоматический режим – требуется наличие у контроллера специального дискретного
входа, связанного с аппаратным счетчиком, который бы в случае прихода на этот вход
сигнала от датчика позиционной метки, обеспечил бы запись (без участия программы)
в аппаратный счетчик определенного значения, предварительно заданного модулем
IRCPreset.
Полуавтоматический режим – позволяет использовать для обработки сигналов от
позиционных меток практически любой дискретный вход, который способен, при помощи
прерываний, запустить один из процессов Interrupt_0 .. Interrupt_15. Синхронизацию в этом
случае выполняет прикладная программа контроллера, вызывая модуль IRCSet. В этом
режиме, как правило, бывает необходимо ограничить скорость хода механизма в момент
синхронизации, чтобы в период между приходом сигнала от позиционной метки и вызовом
модуля IRCSet не произошла потеря импульса пришедшего на счетные входы.
Информацию о том, какие контроллеры поддерживают автоматический режим и какое
количество специализированных дискретных входов для обработки позиционных меток
в автоматическом режиме они имеют, найдете в главе 5.3.
ap0017_ru_01
14/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Перевод в физические величины
Модулем IRCMode также задаются константы для перевода значения внутренних счетчиков
на физические величины (напр. для длины в соответствующий величинах длины).
Перерасчет согласно заданных констант проходит в модулях IRCIn и IRCSet согласно
формулы:
Значение = Количество × Шаг + Ноль
где:
Количество является состоянием внутреннего счетчика
Шаг (Step), Ноль (Zero) являются одноименными параметрами модуля IRCMode
Значение является значением счетчика в требуемых физических величинах
Из этой формулы следует, что поскольку Количество является просто числом, не имеющим
выражения в конкретных физических величинах, то Значение будет в тех же физических
величинах, в которых задан Шаг и Ноль. Модуль IRCSet выполняет пересчет значения
Количества из заданного Значения согласно инверсной формулы.
При определении констант в режиме входа IRC F1-F2 и IRC F2-F1 необходимо учитывать то,
что одному периоду входного импульсного сигнала (что соответствует расстоянию между
соседними измеряющими полосками) соответствует, как правило, большее количество
единиц приращения внутреннего счетчика. Количество единиц приращения на один период
для конкретного входа конкретного типа контроллера найдете в главе 5.3.
Параметры модуля и их изменение во время работы
В следствии вызова модуля IRCMode значения внутренних счетчиков не изменяется. В ходе
выполнения прикладной программы этот модуль можно применить для изменения значений
параметров Ноль и Шаг. В этом случае, при вызове модуля IRCIn произойдет
скачкообразное изменение выходного значения (даже без подачи на вход каких-либо
импульсов), поскольку старое значение внутренних счетчиков будет пересчитано с использованием новых значений параметров Ноль и Шаг. В случаях, когда такая ситуация является
нежелательной, необходимо после изменения параметров Ноль и Шаг обеспечить
правильную настройку значения счетчика, используя модуль IRCSet.
5.1.2
Модуль IRCPreset
Модуль задает значение, которое запишется в аппаратный счетчик в момент прихода на
специализированный вход сигнала от датчика позиционной метки, при работе контроллера
в режиме автоматического обслуживания позиционных меток. В режиме полуавтоматического обслуживания позиционных меток для записи значения в счетчик воспользуйтесь
модулем RCSet.
Модуль так же обеспечивает пересчет значения физической величины на соответствующее
количество импульсов. Для пересчета физических значений в значения аппаратного
счетчика используются константы, которые были для данного счетного входа заданы
предыдущим вызовом функционального модуля IRCMode. Модуль располагается в процесс
INIT осле модуля IRCMode, или в соответствующий периодический процесс, в случае если
значение счетчика, соответствующее определенной позиционной метке, во время работы
прикладной программы необходимо изменить.
5.1.3
Модуль IRCSet
Модуль обеспечивает запись значения в аппаратный счетчик обслуживающий счетный вход,
или вход для инкрементного датчика положения. Модуль так же обеспечивает пересчет
значения физической величины в соответствующее количество импульсов.
15/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Модуль применяется преимущественно при обработке сигнала позиционной метки в режиме
полуавтоматического обслуживания позиционных меток, см. главу 5.1.1.
Для пересчета физических значений в значения аппаратного счетчика используются
константы, которые были для данного счетного входа заданы предыдущим вызовом
функционального модуля IRCMode.
Модуль располагается в процесс, в котором задается значение счетчика, соответствующее
какому-то определенному положению механизма. Чаще всего это процесс Interrupt_x,
ассоциированный с дискретным входом, на который приходит сигнал с концевика (или иного
датчика) позиционной метки.
5.1.4
Модуль IRCIn
Модуль обеспечивает считывание значения из аппаратного счетчика, обслуживающего
счетный вход, или вход для инкрементвого датчика положения. Модуль так же обеспечивает
пересчет значения физической величины в соответствующее количество импульсов.
Для пересчета значений аппаратного счетчика в физические значения используются
константы, которые были для данного счетного входа заданы предыдущим вызовом
функционального модуля IRCMode.
Модуль располагается в процесс, в котором осуществляется обработка значения положения
или иной параметр, измеряемый при помощи счетного входа.
5.2.
Примеры применения счетных входов
Составной частью приложения к данной инструкции ap0017_cz_01.zip является
программный код, приведенный ниже, написанный для контроллера StartKit в среде
разработки DetStudio. Однако его можно адаптировать для любого иного контроллера,
имеющего счетные входы (поддерживающие примененный режим), при помощи меню
DetStudiо Tools/Change Station... . Информация о том, поддерживает ли данный контроллер
требуемый режим и к какому входу подключен сигнал F2, приведена в главе 5.3.
5.2.1
Пример № 3 - аппаратный счетчик
К контроллеру StartKit будет подключено оборудование, которое генерирует импульсы
(только 1 сигнал). Значения из счетчика будут считываться каждые 10 сек. Вместе с тем
будет необходимо определить разницу в количестве импульсов между актуальным
и предшествующим считыванием. При достижении значения счетчика 5 миллионов, или
после рестарта контроллера, счетчик будет обнулен.
Параметры счетчика
Выбранный контроллер StartKit имеет два, поддерживаемых на аппаратном уровне,
счетных входа (см. главу 5.3.6). Для счета импульсов от одного подключенного источника
будет для наших целей самым приемлемым режим „вверх“, когда, с приходом каждой
активной грани (фронт/срез/обе грани) на вход F2, будет происходить увеличение значения
счетчика на единицу. Входной сигнал F1 в этом режиме не будет оказывать влияние на
работу счетчика. Указанный режим можно применить на обоих счетных входах. Будем
использовать счетчик „0“, сигнал от генератора импульсов будет подаваться на вход F2, т.е.
клемму DI0.0 контроллера.
Код программы приведен ниже.
Процесс INIT
В процессе INIT настроен счетчик „0“ в режим „вверх“. Счетный вход будет реагировать на
фронт импульса. С каждым приходящим импульсом увеличится на 1. Если настройка
режима счетчика будет успешной, то нулевой бит переменной nastaveno будет установлен
ap0017_ru_01
16/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
в значение лог. 1. Далее в этом процессе осуществляется задание начального значения
счетчика на 0.
// Инициализация режима счетного входа
IRCMode 0, 4, 1, 0.000, 1.000, nastaveno.0
//сброс счетчика
IRCSet 0, 0.000
Let cit_old = 0
Процесс обработки результата, период 10 сек.
В этом процессе считывается значение из счетчика. Из этого значения потом вычисляется
отклонение от предшествующего значения счетчика. В случае превышения абсолютного
значения счетчика установленного порогового значения счетчик обнуляется.
// считывание значения счетчика
IRCIn 0, cit_hodnota
// анализ считанного значения
Let ok = if ((cit_old < cit_hodnota) AND (cit_hodnota < 5000000), 1, 0)
If ok.0, :NONE
// вычисление отклонения
Let cit_delta = cit_hodnota - cit_old
Let cit_old = cit_hodnota
Else
//сброс счетчика
IRCSet 0, 0.000
Let cit_old = 0
EndIf
Этот пример является составной частью проекта, находящегося в файле приложения
Содержание файла: ap0017_cz_01.zip под названием citacovevstupy_p3_cz_01.dso.
5.3.
Свойства счетных входов
В этой главе описаны параметры и режимы счетных входов всех контроллеров фирмы AMiT,
которые этими входами оборудованы. Перечень актуален к дате создания этого комментария по применению.
5.3.1
Контроллер ADiS
Этот тип контроллера оборудован счетными входами, способными также работать с инкрементными датчиками перемещения, исполязуя для этого модуль AD-IRC2. Каждый такой
модуль предоставляет два счетных входа, или входа для инкрементных датчиков. В общем
контроллер можно расширить и восемью модулями AD-IRC2, следовательно и шестнадцатью счетными входами, или входами для инкрементных датчиков положения. Их номера
в пределах 0 .. 15 определяет пользователь в окне IO Configuration (IO Конфигурация)
в DetStudiо.
Канал „0“ модуля AD-IRC2 (верхний разъем CANON)
Номер входа
n – определено в "IO Конфигурации“ в DetStudiо
Сигнал F1
сигнал Б, или пара сигналов Б-Б’
Сигнал F2
сигнал А, или пара сигналов А-А’
Диапазон внутреннего счетчика
32 бита (-2.147.483.648 .. 2.147.483.647)
Входы для импульсов от
Один ( номер метки – 0): сигнал I, или пара сигналов I-I’
позиционных (индексных) меток
в автоматическом режиме
17/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Поддерживаемые комбинации режима и выбор активных граней:
Режим
Грани
Примечание
IRC F1-F2
Не имеет
Одному полному периоду входных импулсов
значения
соответствуют 4 единицы изменения внутреннего
счетчика. (Счетчик изменяется с каждой гранью каждого
IRC F1-F2
Не имеет
входного сигнала)
значения
Направление
Фронт
+/Срез
Направление
Фронт
-/+
Срез
Вверх
Эти режимы данным типом контроллера не поддерживаются. Возможно
использовать режимы "Направление +/-", или "Направление -/+", закоротив
Вниз
между собой сигналы Б-Б.
F1+ F2Эти режимы данным типом контроллера не поддерживаются.
F1- F2+
Канал „1“ модуля AD-IRC2 (нижний разъем CANON)
Номер входа
n+1 – „n“ определено в "IO konfiguraci“ в DetStudiо
Сигнал F1
сигнал Б, или пара сигналов Б-Б’
Сигнал F2
сигнал А, или пара сигналов А-А’
Диапазон внутреннего счетчика
32 бита (-2.147.483.648 .. 2.147.483.647)
Входы для импульсов от
Один ( номер метки – 0): сигнал I, или пара сигналов I-I’
позиционных (индексных) меток
в автоматическом режиме
Поддерживаемые комбинации режима и выбор активных граней:
Режим
Грани
Примечание
Аналогично как для канала „0“
Примечание
В зависимости от выбранного режима и граней импульсов, может на каждом канале
гореть LED Bx, или Ax инверсно, т.е. гореть при отсутствии сигнала, гаснуть при
наличии сигнала.
5.3.2
Контроллер AMiRiS99
Этот тип контроллера оборудован двумя счетными входами, или входами для инкрементных
датчиков перемещения, пронумерованными 0 и 1.
Вход „0“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток
в автоматическом режиме
ap0017_ru_01
0
DI0.0
DI0.1
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
18/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Поддерживаемые комбинации режима и выбор активных граней:
Режим
Грани
Примечание
IRC F1-F2
Не имеет
Одному полному периоду входных импульсов
значения
соответствуют 4 единицы изменения внутреннего
счетчика. (Счетчик изменяется с каждой гранью каждого
IRC F2-F1
Не имеет
входного сигнала)
значения
Направление
Фронт
+/Срез
Обе грани
Направление
Фронт
-/+
Срез
Обе грани
Вверх
Фронт
Входной сигнал F1 не влияет на работу счетчика,
Срез
соответствующий вход может быть использован как
Обе грани
обычный дискретный вход.
Вниз
Фронт
Срез
Обе грани
В момент прихода активной грани одного входного сигнала,
F1+ F2Фронт
другой сигнал должен быть в уровне логического „0“. Иначе
Срез
вход будет реагировать на противоположную грань, чем
F1- F2+
Фронт
требуется. Это может привести к потере импульса в случае,
Срез
если импульсы приходят на оба входа одновременно.
Вход „1“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток
в автоматическом режиме
1
DI0.2
DI0.3
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
Поддерживаемые комбинации режима и выбор активных граней:
Режим
Грани
Примечание
Аналогично как для входа „0“
Примечание
Не смотря на то, что в случае использования счетных входов и использования в программе функциональных модулей, работающих с этими входами, входы DI0.0 .. DI0.3 могут
быть одновременно доступны как обычные дискретные входы на соответствующих
логических каналах DI0 и DI0AC (номера 0 и 1). Следовательно, ничто не препятствует
в использовании этих сигналов привычным способом, в качестве обычных дискретных
сигналов, поступающих на обычные дискретные входы.
5.3.3
Контроллер ART267Ax
Эти типы контроллеров оборудованы двумя счетными входами, пронумерованными 0 и 1.
Вход „0“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток в
автоматическом режиме
0
DI0.1
DI0.0
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
19/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Поддерживаемые комбинации режима и выбор активных граней:
Режим
Грани
Примечание
IRC F1-F2
Эти режимы данным типом контроллера не поддерживаются
IRC F2-F1
Направление
Фронт
+/Срез
Обе грани
Направление
Фронт
-/+
Срез
Обе грани
Вверх
Фронт
Входной сигнал F1 не влияет на работу счетчика,
Срез
соответствующий вход может быть использован как
Обе грани
обычный дискретный вход.
Вниз
Фронт
Срез
Обе грани
F1+ F2Эти режимы данным типом контроллера не поддерживаются
F1- F2+
Вход „1“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток
в автоматическом режиме
1
DI0.3
DI0.2
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
Поддерживаемые комбинации режима и выбор активных граней:
Режим
Грани
Примечание
Аналогично как для входа „0“
Примечание
Не смотря на то, что в случае использования счетных входов и использования в программе функциональных модулей, работающих с этими входами, входы DI0.0 .. DI0.3 могут
быть одновременно доступны как обычные дискретные входы на соответствующих
логических каналах DI0 и DI0AC (номера 0 и 1). Следовательно, ничто не препятствует
в использовании этих сигналов привычным способом, в качестве обычных дискретных
сигналов, поступающих на обычные дискретные входы.
5.3.4
Контроллер ART4000x
Эти типы контроллеров оборудованы двумя счетными входами, входами для инкрементных
датчиков перемещения, пронумерованными 0 и 1.
Вход „0“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток
в автоматическом режиме
ap0017_ru_01
0
DI0.0
DI0.1
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
20/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Поддерживаемые комбинации режима и выбор активных граней:
Грани
Примечание
Одному полному периоду входных импульсов
Не имеет
соответствуют 4 единицы изменения внутреннего
значения
счетчика. (Счетчик изменяется с каждой гранью каждого
IRC F2-F1
Не имеет
входного
сигнала)
значения
Фронт
Направление
Срез
+/Обе грани
Фронт
Направление
Срез
-/+
Обе грани
Фронт
Вверх
Входной сигнал F1 не влияет на работу счетчика,
Срез
соответствующий вход может быть использован как
Обе грани
обычный дискретный вход.
Фронт
Вниз
Срез
Обе грани
В момент прихода активной грани одного входного сигнала,
F1+ F2Фронт
другой сигнал должен быть в уровне логического „0“. Иначе
Срез
вход будет реагировать на противоположную грань, чем
F1- F2+
Фронт
требуется. Это может привести к потере импульса в случае,
Срез
если импульсы приходят на оба входа одновременно.
Режим
IRC F1-F2
Вход „1“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток
в автоматическом режиме
1
DI0.2
DI0.3
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
Поддерживаемые комбинации режима и выбор активных граней:
Режим
Грани
Примечание
Аналогично как для входа „0“
Примечание
Не смотря на то, что в случае использования счетных входов и использования в программе функциональных модулей, работающих с этими входами, входы DI0.0 .. DI0.3 могут
быть одновременно доступны как обычные дискретные входы на соответствующих
логических каналах DI0 и DI0AC (номера 0 и 1). Следовательно, ничто не препятствует
в использовании этих сигналов привычным способом, в качестве обычных дискретных
сигналов, поступающих на обычные дискретные входы.
5.3.5
Контроллеры AMiNix, AMiNi2x
Эти типы контроллеров оборудованы тремя счетными входами, или входами для инкрементных датчиков перемещения, пронумерованными 0, 1 и 2.
Вход „0“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток
в автоматическом режиме
0
AMiNi, AMiNi-E, AMiNi-ES, AMiNi2x – DI0.1
AMiNi-T, AMiNi-TE – DI0.6
AMiNi, AMiNi-E, AMiNi-ES, AMiNi2x – DI0.0
AMiNi-T, AMiNi-TE – DI0.7
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
21/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Поддерживаемые комбинации режима и выбор активных граней:
Грани
Примечание
Не имеет
Одному полному периоду входных импульсов
значения
соответствуют 4 единицы изменения внутреннего
счетчика.
(Счетчик изменяется с каждой гранью каждого
IRC F2-F1
Не имеет
входного
сигнала)
значения
Направление
Фронт
+/Срез
Обе грани
Направление
Фронт
-/+
Срез
Обе грани
Вверх
Фронт
Входной сигнал F1 не влияет на работу счетчика,
Срез
соответствующий вход может быть использован как
Обе грани
обычный дискретный вход.
Вниз
Фронт
Срез
Обе грани
F1+ F2Эти режимы данными типами контроллеров не поддерживаются
F1- F2+
Режим
IRC F1-F2
Вход „1“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток
в автоматическом режиме
1
AMiNi, AMiNi-E, AMiNi-ES, AMiNi2x – DI0.3
AMiNi-T, AMiNi-TE – DI0.4
AMiNi, AMiNi-E, AMiNi-ES, AMiNi2x – DI0.2
AMiNi-T, AMiNi-TE – DI0.5
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
Поддерживаемые комбинации режима и выбор активных граней:
Режим
Грани
Примечание
Аналогично как для входа „0“
Вход „2“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток
в автоматическом режиме
2
AMiNi, AMiNi-E, AMiNi-ES, AMiNi2x – DI0.5
AMiNi-T, AMiNi-TE – DI0.2
AMiNi, AMiNi-E, AMiNi-ES, AMiNi2x – DI0.4
AMiNi-T, AMiNi-TE – DI0.3
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
Поддерживаемые комбинации режима и выбор активных граней:
Режим
Грани
Примечание
Аналогично как для входа „0“
Примечание
Не смотря на то, что в случае использования счетных входов и использования в программе функциональных модулей, работающих с этими входами, входы DI0.0 .. DI0.5 могут
быть одновременно доступны как обычные дискретные входы на соответствующих
логических каналах DI0 и DI0AC. Следовательно, ничто не препятствует в использо-
ap0017_ru_01
22/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
вании этих сигналов привычным способом, в качестве обычных дискретных сигналов,
поступающих на обычные дискретные входы.
5.3.6
Контроллеры ADOREG/36x, StartKit
Эти типы контроллеров оборудованы двумя счетными входами, или входами для
инкрементных датчиков перемещения, пронумерованными 0 и 1.
Вход „0“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток
в автоматическом режиме
0
DI0.1
DI0.0
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
Поддерживаемые комбинации режима и выбор активных граней:
Грани
Примечание
Не имеет
Одному полному периоду входных импульсов
значения
соответствуют 4 единицы изменения внутреннего
счетчика. (Счетчик изменяется с каждой гранью каждого
IRC F2-F1
Не имеет
входного сигнала)
значения
Направление
Фронт
+/Срез
Обе грани
Направление
Фронт
-/+
Срез
Обе грани
Вверх
Фронт
Входной сигнал F1 не влияет на работу счетчика,
Срез
соответствующий вход может быть использован как
Обе грани
обычный дискретный вход.
Вниз
Фронт
Срез
Обе грани
F1+ F2Эти режимы данными типами контроллеров не поддерживаются
F1- F2+
Режим
IRC F1-F2
Вход „1“
Номер входа
Сигнал F1
Сигнал F2
Диапазон внутреннего счетчика
Входы для импульсов от
позиционных (индексных) меток
в автоматическом режиме
1
DI0.3
DI0.2
32 бита (-2.147.483.648 .. 2.147.483.647)
Отсутствуют. Возможно применить любой свободный
дискретный вход для полуавтоматического режима
обслуживания позиционных меток.
Поддерживаемые комбинации режима и выбор активных граней:
Режим
Грани
Примечание
Аналогично как для входа „0“
Примечание
Не смотря на то, что в случае использования счетных входов и использования в программе функциональных модулей, работающих с этими входами, входы DI0.0 .. DI0.3 могут
быть одновременно доступны как обычные дискретные входы на соответствующих
логических каналах DI0 и DI0AC (номера 0 и 1). Следовательно, ничто не препятствует
в использовании этих сигналов привычным способом, в качестве обычных дискретных
сигналов, поступающих на обычные дискретные входы.
23/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
6.
Счет импульсов при помощи расширяющих
модулей
Если контроллер оборудован коммуникационным интерфейсом RS485 или RS232, можно
для счета импульсов использовать расширяющие модули. Расширяющие модули DM-DI24
или DMM-DI24 позволяют использовать функцию счета приходящих импульсов на любом из
их входов. Это, по крайней мере частично, решает проблемы с улавливанием коротких
импульсов. Однако, при применении этой функции необходимо учитывать нижеуказанные
свойства:
♦ Максимально возможное считываемое значение равно 32767 (число 15 бит.) После
прибавления дальнейших импульсов, счет начинается снова от нуля.
♦ Максимально возможная частота приходящих импульсов может быть 25 Гц. При высшей
частоте не возможно гарантировать, что все приходящие импульсы будут зафиксированы.
♦ Внутренний счетчик модуля обнуляется при отключении питающего напряжения, или же
его можно обнулить программно.
♦ Необходимо программно обрабатывать переполнение внутреннего счетчика.
6.1.
Расширяющий модуль DM-DI24
Коммуникация с расширяющим модулем DM-DI24 происходит при помощи протокола
ARION. Больше информации найдете в комментарии по применению AP0025 – Коммуникация в сети ARION – задание параметров в таблице.
Примечание
Функция счета приходящих импульсов на любом из входов расширяющего модуля DM-DI24
поддерживается при наличии фирмваре версии 1.65 и выше.
6.1.1
Пример № 4 – считывание импульсов на DM-DI24
Пример реализации коммуникации по протоколу ARION (38400 Бод, порт 1) с DM-DI24
(адрес 1).
Сеть ARION с расширяющим модулем DM-DI24 конфигурируется согласно приведенных
ниже рисунков и описания.
Рис. 2 - Задание параметров сети ARION с расширяющим модулем DM-DI24
Для применения модуля DM-DI24 в режиме счета импульсов, необходимо в таблицу Arion0
добавить модуль с именем DM-DI24_impuls. Значение параметра PeriodDI задать как 0,
а в параметр PeriodAI задать требуемое значение. Модуль одновременно можно применить
для считывания состояний цифровых входов. В этом случае параметры PeriodDI и PeriodAI
настраиваются на требуемое значение. После этого можно программным модулем
ARI_DigIn считывать актуальное состояние входов DI расширяющего модуля DM-DI24,
а модулем ARI_AnIn считывать состояние счетчиков из входов DI.
ap0017_ru_01
24/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
Считывание значений счетчиков из всех входов
ARI_AnIn 1, 0, 24, DataCit_all[0,0], NONE[0,0], 16384.0, 0.0, 16383.0, 0.0, 16383.0
Настройка значения всех счетчиков
ARI_AnOut 1, 0, 24, NastavCit[0,0], NONE[0,0], 16384.0, 0.0, 16383.0, 0.0, 16383.0
//настройка значений счетчиков
If Nastav.0
// запуск процесса переноса в DM-DI24
ARI_Trig 1, 1
// обнуление признаков настройки
Let Nastav = 0
EndIf
После записи значений в выравнивающую память при помощи модуля ARI_AnOut
необходимо запустить процесс переноса модулем ARI_Trig, так как значения в узел типа AO
у DM-DI24 переносятся периодически.
Внимание
У счетчиков необходимо позаботиться о их переполнении! Диапазон счетчика равен
0 .. 32767. Следовательно счетчик считает следующим образом: 0, 1, 2, ..., 32766, 32767,
0, 1, 2, ... Это значит, что будет необходимо считывать и количество переполнений „p“
счетчика, а итоговая сумма импульсов потом будет равна: сумма = p × 32768 + счетчик.
Этот пример является составной частью проекта, находящегося в файле приложения
Содержание файла: ap0017_cz_01.zip под названием citacovevstupy_p4_cz_01.dso. Этот
проект создан для контроллера StartKit. Однако его можно адаптировать для любого иного
контроллера, имеющего серийный коммуникационный интерфейс, при помощи меню
DetStudiо Tools/Change Station... .
6.2.
Расширяющий модуль DMM-DI24
Коммуникация с расширяющим модулем DMМ-DI24 происходит при помощи протокола
MODBUS. Больше информации найдете в коментарии по применению AP0008 – Коммуникация в сети MODBUS.
6.2.1
Пример № 5 – считывание импульсов на DMM-DI24
Позиция удаленных точек (регистров/бинаров) в каждом модуле всегда определяется
номером данного входа/выхода модуля DMM-DI24.
Для считывания/записи значений счетчика из/в модуль DMM-DI24, можно применить
указанную ниже функцию MODBUS.
Функция
3
4
6
16
Применение в DMM-DI24
Считывание значений счетчиков.
Считывание значений счетчиков (аналогично с функцией 3).
Запись значения в один счетчик.
Запись значений во все счетчики.
Считывание значений счетчиков на всех входах.
Для одновременного считывания значений всех счетчиков используем для определения
удаленной точки программный модуль RmtDef с указанными ниже параметрами.
25/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
RmtDef DIc[0,0],"4,0-23", 1, NONE, 5, 17, NONE.0, Prn_DIc, Poz_DIc
│
│
│ └ Канал сопряженный с модулем MODBS_R
│
│
└ Адрес модуля
│
└ Период ввода запросов
└ Функция 4 – считывания значений нескольких счетчиков.
Переменная DIc[] является матрицей типа MI размером [1,24], эта конструкция обеспечит
считывание значений всех счетчиков расширяющего модуля с периодом однократного
вызова модуля RmtAct.
Настройка значения счетчика одного входа
Значение счетчиков модуля DMM-DI24 можно посредством протокола MODBUS также
настроить на требуемое значение (наприм. обнулить). Для записи значения в один счетчик
используем для определения удаленной точки модуль RmtDef с указанными ниже
параметрами.
RmtDef DIcx1,"6,10", 0, NONE,
│
│
│
└ Функция
5, 17, NONE.0, Prn_DIcx1, Poz_DIcx1
│
│ └ Канал сопряженный с модулем MODBS_R
│
└ Адрес модуля
└ Период ввода запросов для записи равен 0
6 – запись значения одного счетчика
Всегда при изменении значения переменной DIcx1, ее значение записывается в счетчик,
связанный со входом DI10.
Внимание
У счетчиков необходимо позаботиться о их переполнении! Диапазон счетчика равен
0 .. 32767. Следовательно счетчик считает следующим образом: 0, 1, 2, ..., 32766, 32767,
0, 1, 2, ... Это значит, что будет необходимо считывать и количество переполнений „p“
счетчика, а итоговая сумма импульсов потом будет равна: сумма = p × 32768 + счетчик.
Настройка значения счетчиков всех входов
Для одновременной записи значений во все счетчики, используем для определения
удаленной точки модуль RmtDef с указанными ниже параметрами.
RmtDef DIcx[0,0],“16,0-23", 0, NONE, 5, 17, NONE.0, Prn_DIcx, Poz_Dicx
│
│
│ └ Канал сопряженный с модулем MODBS_R
│
│
└ Адрес модуля
│
└ Период ввода zaprosov для записи равен 0
└ Функция 16 – запись всех 24 счетчиков
Переменная DIcx[] является матрицей типа MI размером [1,24]. При изменении любого
значения в этой матрице произойдет инициализация записи значений во все счетчики
модуля.
Этот пример является составной частью проекта, находящегося в файле приложения
Содержание файла: ap0017_cz_01.zip под названием citacovevstupy_p5_cz_01.dso. Этот
проект создан для контроллера StartKit. Однако его можно адаптировать для любого иного
контроллера, имеющего серийный коммуникационный интерфейс, при помощи меню
DetStudiо Tools/Change Station... .
ap0017_ru_01
26/28
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
7.
Техническая поддержка
Любую информацию, касающуюся счетных входов, Вам предоставит отдел технической
поддержки фирмы AMiT. Отдел технической поддержки лучше всего контактировать
посредством электронной почты на адрес support@amit.cz. Вопрос желательно задавать на
русском или английском языке.
27/28
ap0017_ru_01
СЧЕТНЫЕ ВХОДЫ, ИЗМЕРЕНИЕ ОБОРОТОВ/ИМПУЛЬСОВ
8.
Предупреждение
"AMiT, spol. s r.o." предоставляет информацию в этом документе в таком виде, в каком она
есть, не берет на себя никаких гарантий касающихся содержания этого документа
и оставляет за собой право изменять содержание документа без обязательства сообщить
об этих изменениях какому-либо лицу или организации.
Этот документ может копироваться и распространяться при нижеследующих условиях:
1.
Весь текст должен копироваться без изменений и включать все страницы.
2.
Все копии должны содержать обозначение авторского права компании "AMiT, spol. s r.o."
и все дальнейшие предупреждения указанные в документе.
3.
Этот документ запрещено распространять с целью получения прибыли.
Примененные в публикации названия продуктов, фирм и т.п., могут быть торговыми
марками или зарегистрированными торговыми марками соответствующих владельцев.
ap0017_ru_01
28/28
Download