Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

bayk
Сообщения: 887
Зарегистрирован: 30 май 2015, 21:20

Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

Сообщение bayk »

Начал писать программу для летучего реза.
Появилась необходимость в использовании скоростных счётчиков для работы с энкодером.
Мне нужно по прерыванию сохранять текущее значение счётчика в сторонний регистр и сбросить счётчик.
В описании для sa и прочих этого уровня все это хорошо прописано в инструкции. Но все регистры и высокоскоростные счётчики у sv контроллера резко отличаются. Нашел инструкцию где эти счётчики описаны. Я попробовал использовать прерывание i401 в котором 1 командой dmov копирую содержание с251 а следующей хотел сбросить счётчик, активируя специальный маркер командой out по контакту m1000, но несмотря на то что в прерываниях должен выполняться только один скан, но спецреле не сбрасывается. Я пробовал и set, но сброс сделать не могу, а без rst этого маркера счётчик не начинает снова считать.
После этого попробовал использовать прерывание штатного входа сброса, но в нем сначала сбрасывается счётчик а потом выполняется прерывание. Для sa контроллеров есть специальные регистры куда записывается значение счётчика перед сбросом, а для sv такого регистра не нашел. При выполнении сброса мне нужно минимально терять импульсы счета.

UPD: Решено
Как я писал ниже я решил представленную задачу через прерывание от стороннего импульса (не функцией штатного сброса)
в нем я сначала копирую значение счетчика

Код: Выделить всё

ld m1000  DMOV C251 D100 
а потом сбросил счетчик в следующем network просто командой

Код: Выделить всё

ld m1000 Rst c251
при этом надо не забыть активировать реле M1264 в первом скане программы, иначе счетчик будет все время ждать команды аппаратного сброса
Во вложенном файле я сделал простейшую программу, в которой я реализовал то, что я написал тут текстом.

Кроме этого хочу обратить внимание, что для контроллеров серий EH, SV, EC инструкция по эксплуатации (на английском наиболее свежая) отличается от той, что написана для всех остальных младших контроллеров DVP, хотя в основном и пересекается с ней, кроме, как раз, управления высокоскоростными командами, входами и выходами.
Вложения
DVP28SV_HSPD_Counter_reset.rar
решение задачи
(1.85 КБ) 170 скачиваний
Последний раз редактировалось bayk 07 апр 2018, 13:35, всего редактировалось 2 раза.

pkl
Сообщения: 1468
Зарегистрирован: 23 ноя 2010, 10:08

Re: Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

Сообщение pkl »

Программу приложите. будет понятно в чем проблема.
По ссылке мой пример. https://www.dropbox.com/s/hrodwpnjf1pez ... 2.isp?dl=0
Последний раз редактировалось pkl 06 апр 2018, 08:11, всего редактировалось 1 раз.

Павел51
Сообщения: 535
Зарегистрирован: 27 дек 2013, 18:01

Re: Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

Сообщение Павел51 »

Вы как то немного неправильно ставите задачу или я неправильно понимаю.
Что вы сбрасываете? значение в счетчике или сам счетчик? И как используете прерывание?
Значение для сохранения высокоскоростного счетчика можно записывать в любые два регистра и это во всех контроллерах.
Без вашей программы трудно разобраться в ваших замыслах.

bayk
Сообщения: 887
Зарегистрирован: 30 май 2015, 21:20

Re: Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

Сообщение bayk »

Прикладываю ПО. Задача стоит такая, что надо циклично отсчитывать количество импульсов по внешнему датчику, сохранить значение перед сбросом и сбрасывать количество импульсов по сигналу от него, после сброса отсчитать заданное смещение начала выполнения команды DRVI (для этого буду использовать высокоскоростное сравнение и тут вроде пока проблем нет. в приложенное ПО эта часть не скопирована, чтобы не перегружать.
В программе два прерывания. я их использую не одновременно.
1-е прерывание по X2 (штатный вход сброса C251) при этом я сбрасываю реле M1264, чтобы активировать внешний сброс. тут я надеялся использовать механизм, описанный в
последней русской инструкции на DVP на 50 странице (снизу). но таких регистров для SV2 я не нашел, хотя странно, ведь это контроллер с продвинутыми высокоскоростными функциями.
2-е прерывание я использую с другим входом, аппаратно не связанным с C251, например X4. в пределах этого прерывания хорошо копируется значение счетчика, но я не могу организовать его сброс. OUT команда зависает (остается включенным) а Set/reset не могу использовать в прерывании последовательно, а за пределами прерывания я получу потерю данных, связанную со временем скана.

Пример я посмотрел, но там сброс счетчика происходит в теле программы, что для меня неприемлемо, поскольку частота входных импульсов очень высока.
Вложения
hispdtest.rar
(2.04 КБ) 138 скачиваний
Последний раз редактировалось bayk 06 апр 2018, 13:31, всего редактировалось 1 раз.

pkl
Сообщения: 1468
Зарегистрирован: 23 ноя 2010, 10:08

Re: Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

Сообщение pkl »

Русские инструкции не рассматривайте в принципе. Они устаревают быстрее чем их публикуют. Уточните тип ПЛК. SV и SV2 могут существенно отличаться.
ССылка на инструкцию не работает.

bayk
Сообщения: 887
Зарегистрирован: 30 май 2015, 21:20

Re: Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

Сообщение bayk »

У меня DVP28SV, я смотрел русская инструкция в этом месте совпадает с английской версией

pkl
Сообщения: 1468
Зарегистрирован: 23 ноя 2010, 10:08

Re: Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

Сообщение pkl »

Прикрепите ее, что бы было понятно, что вы имеете в виду.

pkl
Сообщения: 1468
Зарегистрирован: 23 ноя 2010, 10:08

Re: Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

Сообщение pkl »

Из мурзилки
ii) If the external control signal inputs of R and S are not in use, you can set M1264/M1266/M1268/M1270
and M1265/M1267/M1269/M1271 as True and disable the input signals. The corresponding external
inputs can be used again as general input points (see the figure below).
.
Пробуйте установить М1264 в 1 при первом скане.

bayk
Сообщения: 887
Зарегистрирован: 30 май 2015, 21:20

Re: Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

Сообщение bayk »

так в заголовке модель контроллера прописана. АААА!! все понял. ссылку поправил.
Я тут поупражнялся с утра и смог через прерывание от стороннего импулься (не функцией штатного сброса)
сбросить счетчик просто командой Rst c251 в прерывании. а перед этим скопировать
М1264 у меня и так включено. посмотрите выше выложен файл с программой.

pkl
Сообщения: 1468
Зарегистрирован: 23 ноя 2010, 10:08

Re: Захват и сброс выс.скор.аппар. счётчика C251 DVP28SV

Сообщение pkl »

Снимок.PNG
Снимок.PNG (15.64 КБ) 1863 просмотра
В вашем примере М1264 явно сбрасывается в первом скане

Ответить