Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Mitsubishi Electric. Контроллеры, преобразователи частоты, HMI _ Программирование _ Реализация счетчика пакетов

Автор: Кириленко Вадим 25.11.2014 - 13:58

Добрый день!
Есть контроллер А2N на упаковочной машине. Необходимо реализовать подсчет выпускаемой продукции.
Физически на панели есть счетчик. На него заходит три провода - питание (+/-) и управляющий сигнал, который соответствует дискретному выходу контроллера.
На самой машине есть два ручья упаковки. При срабатывании 1-го дозатора должен пройти управляющий сигнал на счетчик, также и при срабатывании 2-го дозатора должен сработать счетчик.
Но когда сработают оба дозатора необходимо подать два испульса на счетчик. Как программно это можно организовать?
Я пробовал и парралельное включение управляющих сигналов на вход счетчика. По отдельности работают, вместе - добавляет всего один счет.
Пробовал через бинарные операции. При срабатывании одного дозватора записывал к примеру 7-й бит в 16-битное число, при втором - 8-й бит. Вывод - тоже самое. По отдельности все ок, вместе - всего один счет.
Спасибо!


Автор: inntele 25.11.2014 - 16:13

Цитата(Кириленко Вадим @ 25.11.2014 - 15:58) *
Добрый день!
Есть контроллер А2N на упаковочной машине. Необходимо реализовать подсчет выпускаемой продукции.
Физически на панели есть счетчик. На него заходит три провода - питание (+/-) и управляющий сигнал, который соответствует дискретному выходу контроллера.
На самой машине есть два ручья упаковки. При срабатывании 1-го дозатора должен пройти управляющий сигнал на счетчик, также и при срабатывании 2-го дозатора должен сработать счетчик.
Но когда сработают оба дозатора необходимо подать два испульса на счетчик. Как программно это можно организовать?
Я пробовал и парралельное включение управляющих сигналов на вход счетчика. По отдельности работают, вместе - добавляет всего один счет.
Пробовал через бинарные операции. При срабатывании одного дозватора записывал к примеру 7-й бит в 16-битное число, при втором - 8-й бит. Вывод - тоже самое. По отдельности все ок, вместе - всего один счет.
Спасибо!


Параллельным включением сигналов. Только объединять надо не сами сигналы, а импульсы по фронту их изменения (от 0 к 1).

Автор: m_by 26.11.2014 - 10:19

... два параллельных импульса, при возможном одновременном срабатывании, всё равно дадут одно приращение. ))


Автор: m_by 26.11.2014 - 10:27

например ...
Сформируйте свой собственный счетчик в контроллере, который будет считать каждый импульсный сигал отдельно.
Ниже по коду сформируйте выход сигнала, при каждом уменьшении счетчика на 1, до достижения 0.

|импульс по входу 1|-(inc c1)
|импульс по входу 2|-(inc c1)

если (выход =0), и если с1>0 выдать импульс (выход = 1) необходимой продолжительностью
и с1 = с1 - 1

Автор: inntele 26.11.2014 - 12:47

Цитата(m_by @ 26.11.2014 - 12:27) *
например ...
Сформируйте свой собственный счетчик в контроллере, который будет считать каждый импульсный сигал отдельно.
Ниже по коду сформируйте выход сигнала, при каждом уменьшении счетчика на 1, до достижения 0.

|импульс по входу 1|-(inc c1)
|импульс по входу 2|-(inc c1)

если (выход =0), и если с1>0 выдать импульс (выход = 1) необходимой продолжительностью
и с1 = с1 - 1


Полностью поддерживаю.

Цитата
... два параллельных импульса, при возможном одновременном срабатывании, всё равно дадут одно приращение. ))


Вероятность такого совпадения, конечно, ничтожно мала, тем не менее, имеет место быть smile.gif

Автор: Кириленко Вадим 26.11.2014 - 14:40

Спасибо за ответы! про одновременное срабатывание вероятность 100%. У меня так дозаторы так и работают!
Я сегодня напишу программу и протестирую. И сразу отпишусь.

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)