Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о SMH2010

Вопросы о SMH2010 Работа и применение контроллеров SMH2010A, SMH2010B и SMH2010C.

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.02.2010, 11:35   #1
sij7
Новичок
 
Регистрация: Dec 2007
Сообщения: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Косяк со счётчиком

День добрый.
Есть задача: Через каждые n импульсов на входе, кратковременно устанавливать единицу на одном выходе. Программа прилагается.
Частота импульсов на входе: 0.2-50Гц (обычно до 20).
Проблема заключается в том, что счётчик врёт на 1-5 импульсов.
Подскажите пожалуйста, где я мог накосячить???
sij7 вне форума   Ответить с цитированием
Старый 01.02.2010, 11:40   #2
sij7
Новичок
 
Регистрация: Dec 2007
Сообщения: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Косяк со счётчиком

программа управления линией
Вложения
Тип файла: zip i.zip (938.1 Кбайт, 114 просмотров)

Последний раз редактировалось sij7, 01.02.2010 в 11:57
sij7 вне форума   Ответить с цитированием
Старый 01.02.2010, 17:29   #3
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Косяк со счётчиком

Цитата
Сообщение от sij7
программа управления линией

Ничего не понял.

Где вход, какой счётчик?


.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 02.02.2010, 09:02   #4
sij7
Новичок
 
Регистрация: Dec 2007
Сообщения: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Косяк со счётчиком

Цитата:
Сообщение от Arsie
Ничего не понял.

Где вход, какой счётчик?


.
Блок называется упр треугольником.
Вход - OUT2
В блоке называется датчик оборотов головки.
Есть ли какой нибудь пример программы с использованием счётчика, не увязанный с тиками???
В справке есть пример - счётчик числа нажатий на кнопку. Но как сделать адекватный счёт, при большей частоте???

Последний раз редактировалось sij7, 02.02.2010 в 09:18
sij7 вне форума   Ответить с цитированием
Старый 02.02.2010, 10:17   #5
ManMadeGod
Юнга
 
Аватара для ManMadeGod
 
Регистрация: Jul 2008
Сообщения: 9
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Косяк со счётчиком

Дело в том, что программа на контроллере работает циклами установленной вами длительности (в конкретном случае - 50 мс). Состояние входов проверяется один раз в начале цикла, и на протяжении всего цикла считается неизменным. Блок FALL не может срабатывать каждый цикл (блок срабатывает по переходу 0->1, то есть после перехода входного сигнала блока из лог.1 в лог.0 перед следующим срабатыванием должна снова появиться лог. единица на входе блока). Таким образом, максимальная измеренная частота будет 1/(2хВремя цикла), в вашем случае - 1/(2х0,05) = 10 Гц. Это раз.
Кроме того, по тем же причинам (обновление входных сигналов раз в цикл) если в момент начала цикла сигнал на дискретном входе равен, скажем, лог.1, в течение цикла этот сигнал совершает хоть тысячу переходов 1->0->1->0..., а в момент начала следующего цикла снова равен 1, контроллер это просто не зафиксирует. Поэтому для измерения частоты используются т.н. счетные дискретные входы, непрерывно следящие за изменениями сигнала на выходе. Таких входов на SMH2010 нет, для измерения частоты совместно с SMH2010 используется устройство FS (http://www.segnetics.com/main.aspx?Page=296). Кроме того, счетные входы есть на модуле расширения для контроллера Pixel MR120 (http://www.segnetics.com/main.aspx?Page=324) и модуле MC (http://www.segnetics.com/main.aspx?Page=364), применяемом совместно с SMH2g.
ManMadeGod вне форума   Ответить с цитированием
Старый 02.02.2010, 11:25   #6
sij7
Новичок
 
Регистрация: Dec 2007
Сообщения: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Косяк со счётчиком

Есть ли какой либо вариант улучшить работу счётчика в диапазоне 0.1-10Гц????
З.Ы.: Есть мдвв, можно ли его использовать, для работы в качестве счётчика
sij7 вне форума   Ответить с цитированием
Старый 02.02.2010, 11:59   #7
ManMadeGod
Юнга
 
Аватара для ManMadeGod
 
Регистрация: Jul 2008
Сообщения: 9
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Косяк со счётчиком

1) Для частоты 0,1 Гц и так все работает, для 10 гц - не факт (см. объяснение в предыдущем посте), у SMH нет счетных входов. В общем случае вы тем надежнее засечете импульс на входе, чем меньше тик (реальный, а не выставленный). Уменьшайте тик, смотрите, устраивают ли вас результаты. Стопроцентной гарантии, что все импульсы будут опознаны без счетных входов дать нельзя, только они позволят не привязываться к тику.
2) Не знаю, это вам у Овена лучше спрашивать. Судя по заявлению на сайте производителя
Цитата ВОЗМОЖНОСТЬ ИСПОЛЬЗОВАНИЯ ЛЮБОГО ДИСКРЕТНОГО ВХОДА В РЕЖИМЕ СЧЕТЧИКА (максимальная частота сигнала – 1 кГц)
можно, но это все в тамошнем руководстве. Читайте его (руководство).

Последний раз редактировалось ManMadeGod, 02.02.2010 в 12:10
ManMadeGod вне форума   Ответить с цитированием
Старый 03.02.2010, 07:13   #8
sij7
Новичок
 
Регистрация: Dec 2007
Сообщения: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Косяк со счётчиком

А е6сли вместо блока Fall поставить ^D, и сброс по увеличению числа на выходе счётчика?
Дело в том, что счётчик врёт не только в меньшую сторону, но и в большую. При разных оборотах вместо 50 импульсов на срабатывание выхода я могу получить от 47 до 54
sij7 вне форума   Ответить с цитированием
Старый 03.02.2010, 07:16   #9
LordN
Senior Member
 
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 125
Благодарил(а): 239 раз(а)
Поблагодарили: 161 раз(а) в 153 сообщениях
По умолчанию Ответ: Косяк со счётчиком

Цитата
Сообщение от sij7
А е6сли вместо блока Fall поставить ^D, и сброс по увеличению числа на выходе счётчика?
Дело в том, что счётчик врёт не только в меньшую сторону, но и в большую. При разных оборотах вместо 50 импульсов на срабатывание выхода я могу получить от 47 до 54
поразительная упёртость


__________________
C уважением, LordN
LordN сейчас на форуме   Ответить с цитированием
Старый 03.02.2010, 08:37   #10
sij7
Новичок
 
Регистрация: Dec 2007
Сообщения: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Косяк со счётчиком

Хорошо, как определить, какое минимальное время цикла я могу выставить?
Крайне необходимо заставить его нормально работать при частоте 13-14 Гц
sij7 вне форума   Ответить с цитированием
Старый 03.02.2010, 09:24   #11
sij7
Новичок
 
Регистрация: Dec 2007
Сообщения: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Косяк со счётчиком

упёртость - одно, просто счётчик врёт как в меньшую (ну это понятно - не успевает отсчитывать), так и в большую (а это как понять???) сторону.
sij7 вне форума   Ответить с цитированием
Старый 03.02.2010, 10:01   #12
ManMadeGod
Юнга
 
Аватара для ManMadeGod
 
Регистрация: Jul 2008
Сообщения: 9
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Косяк со счётчиком

Цитата Хорошо, как определить, какое минимальное время цикла я могу выставить? Крайне необходимо заставить его нормально работать при частоте 13-14 Гц
Выставьте на поляну блок DEVICE (Kernel) из раздела "диагностика". Там есть выход RealTick. Установите тик на пару-тройку миллисекунд больше.

Цитата упёртость - одно, просто счётчик врёт как в меньшую (ну это понятно - не успевает отсчитывать), так и в большую (а это как понять???) сторону.
Понимаете, счетчик не умеет врать. Я уже писал, как происходит отсчет в вашем случае. Это заложено в ядре контроллера и, поверьте, работает правильно. Смотрите физическую часть своего проекта. Я не знаю, от чего именно приходят импульсы, может быть, какой-то дребезг контактов или что-то еще, вам должно быть виднее. В FS, о котором я вам говорил, есть настройки фильтрации. Думаю, что они должны быть и в указанном вами МДВВ.
Для нормального измерения частоты нужны счетные входы - они для этого и созданы.

Цитата А е6сли вместо блока Fall поставить ^D, и сброс по увеличению числа на выходе счётчика? Дело в том, что счётчик врёт не только в меньшую сторону, но и в большую. При разных оборотах вместо 50 импульсов на срабатывание выхода я могу получить от 47 до 54
^D - это соединенные последовательно RAISE и D, так что ситуация та же самая. Для отслеживания фронта сигнала надо поймать его изменение, в пределах одного тика отследить изменение сигнала невозможно. Это аксиома для всех PLC, не только для Segnetics. Счетные входы работают асинхронно с программой, поэтому... см. выше, в общем-то.
ManMadeGod вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 12:27.


Версия vBulletin: 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2023