![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Сообщение
#1
|
|
Читатель ![]() Группа: Пользователи Сообщений: 2 Регистрация: 25.11.2014 Пользователь №: 10376 ![]() |
Добрый день!
Есть контроллер А2N на упаковочной машине. Необходимо реализовать подсчет выпускаемой продукции. Физически на панели есть счетчик. На него заходит три провода - питание (+/-) и управляющий сигнал, который соответствует дискретному выходу контроллера. На самой машине есть два ручья упаковки. При срабатывании 1-го дозатора должен пройти управляющий сигнал на счетчик, также и при срабатывании 2-го дозатора должен сработать счетчик. Но когда сработают оба дозатора необходимо подать два испульса на счетчик. Как программно это можно организовать? Я пробовал и парралельное включение управляющих сигналов на вход счетчика. По отдельности работают, вместе - добавляет всего один счет. Пробовал через бинарные операции. При срабатывании одного дозватора записывал к примеру 7-й бит в 16-битное число, при втором - 8-й бит. Вывод - тоже самое. По отдельности все ок, вместе - всего один счет. Спасибо! |
|
|
![]()
Сообщение
#2
|
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1001 Регистрация: 19.08.2009 Пользователь №: 9149 ![]() |
Добрый день! Есть контроллер А2N на упаковочной машине. Необходимо реализовать подсчет выпускаемой продукции. Физически на панели есть счетчик. На него заходит три провода - питание (+/-) и управляющий сигнал, который соответствует дискретному выходу контроллера. На самой машине есть два ручья упаковки. При срабатывании 1-го дозатора должен пройти управляющий сигнал на счетчик, также и при срабатывании 2-го дозатора должен сработать счетчик. Но когда сработают оба дозатора необходимо подать два испульса на счетчик. Как программно это можно организовать? Я пробовал и парралельное включение управляющих сигналов на вход счетчика. По отдельности работают, вместе - добавляет всего один счет. Пробовал через бинарные операции. При срабатывании одного дозватора записывал к примеру 7-й бит в 16-битное число, при втором - 8-й бит. Вывод - тоже самое. По отдельности все ок, вместе - всего один счет. Спасибо! Параллельным включением сигналов. Только объединять надо не сами сигналы, а импульсы по фронту их изменения (от 0 к 1). -------------------- Мозг любого человека работает круглосуточно. Но мозг инженера отличается тем, что способен при этом проанализировать задачу, синтезировать несколько техничных ее решений, а затем выбрать из этих решений наилучшее.
|
|
|
![]()
Сообщение
#3
|
|
Гигант мысли ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 252 Регистрация: 15.11.2007 Пользователь №: 6407 ![]() |
... два параллельных импульса, при возможном одновременном срабатывании, всё равно дадут одно приращение. ))
|
|
|
![]()
Сообщение
#4
|
|
Гигант мысли ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 252 Регистрация: 15.11.2007 Пользователь №: 6407 ![]() |
например ...
Сформируйте свой собственный счетчик в контроллере, который будет считать каждый импульсный сигал отдельно. Ниже по коду сформируйте выход сигнала, при каждом уменьшении счетчика на 1, до достижения 0. |импульс по входу 1|-(inc c1) |импульс по входу 2|-(inc c1) если (выход =0), и если с1>0 выдать импульс (выход = 1) необходимой продолжительностью и с1 = с1 - 1 |
|
|
![]()
Сообщение
#5
|
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1001 Регистрация: 19.08.2009 Пользователь №: 9149 ![]() |
например ... Сформируйте свой собственный счетчик в контроллере, который будет считать каждый импульсный сигал отдельно. Ниже по коду сформируйте выход сигнала, при каждом уменьшении счетчика на 1, до достижения 0. |импульс по входу 1|-(inc c1) |импульс по входу 2|-(inc c1) если (выход =0), и если с1>0 выдать импульс (выход = 1) необходимой продолжительностью и с1 = с1 - 1 Полностью поддерживаю. Цитата ... два параллельных импульса, при возможном одновременном срабатывании, всё равно дадут одно приращение. )) Вероятность такого совпадения, конечно, ничтожно мала, тем не менее, имеет место быть ![]() Сообщение отредактировал inntele - 26.11.2014 - 12:54 -------------------- Мозг любого человека работает круглосуточно. Но мозг инженера отличается тем, что способен при этом проанализировать задачу, синтезировать несколько техничных ее решений, а затем выбрать из этих решений наилучшее.
|
|
|
![]()
Сообщение
#6
|
|
Читатель ![]() Группа: Пользователи Сообщений: 2 Регистрация: 25.11.2014 Пользователь №: 10376 ![]() |
Спасибо за ответы! про одновременное срабатывание вероятность 100%. У меня так дозаторы так и работают!
Я сегодня напишу программу и протестирую. И сразу отпишусь. |
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 13.06.2024 - 21:06 |