| Предыдущая тема :: Следующая тема |
| Автор |
Сообщение |
hasan Частый гость


Зарегистрирован: Mar 25, 2009 Сообщения: 10 Рейтинг: +0/-0
|
Добавлено: Ср 25 Мар, 2009 11:52:09 Заголовок сообщения: RSLogix 5000 выходной сигнал |
|
|
| Всем добрый день! Помогите с реализацией выходного дискретного импульсного т.е прерывистого сигнала. |
|
| Вернуться к началу |
|
 |
maxim Эксперт


Зарегистрирован: Feb 16, 2007 Сообщения: 123 Рейтинг: +7/-0 Откуда: Енакиево
|
Добавлено: Ср 25 Мар, 2009 12:40:23 Заголовок сообщения: Re: RSLogix 5000 выходной сигнал |
|
|
Доброго времени суток.
| hasan писал(а): | | Всем добрый день! Помогите с реализацией выходного дискретного импульсного т.е прерывистого сигнала. |
Набросал только что:
//создаем таймер который перезапускает себя
tTimerOn.PRE:= 10000;
TONR(tTimerOn);
IF tTimerOn.Dn THEN
tTimerOn.Reset:= 1;
END_IF;
IF NOT tTimerOn.DN THEN
tTimerOn.Reset:= 0;
END_IF;
// используем переменную tTimerOn.Acc для указания ширины импульса, в нашем случае длина импульса 5 сек.
// bOutImp - выходной дискретный сигнал
IF tTimerOn.ACC >5000 THEN bOutImp := 1; ELSE bOutImp := 0; END_IF;
Подойдет так? |
|
| Вернуться к началу |
|
 |
dv_ Эксперт


Зарегистрирован: Sep 14, 2006 Сообщения: 776 Рейтинг: +41/-1 Откуда: Донецк
|
Добавлено: Ср 25 Мар, 2009 12:53:03 Заголовок сообщения: Re: RSLogix 5000 выходной сигнал |
|
|
| hasan писал(а): | | Всем добрый день! Помогите с реализацией выходного дискретного импульсного т.е прерывистого сигнала. |
| Код: | Output Output
----]/[------------()-- | Вставь в задачу, например с временем вызова 0.5 сек, будет генератор с периодом 1 сек.
В SLC есть FreeRunningClock можно сделать его аналог и пользовать нужные биты, нужны таймер и счетчик.
Счетчик переключается по Timer.DN.
Биты счетчика дают импульсы, например: если Timer.PRE = 10, тогда на выходах счетчика будешь иметь период:Counter.0 - 20 ms.
Counter.1 - 40 ms.
Counter.2 - 80 ms.
и так далее
|
|
| Вернуться к началу |
|
 |
hasan Частый гость


Зарегистрирован: Mar 25, 2009 Сообщения: 10 Рейтинг: +0/-0
|
Добавлено: Ср 25 Мар, 2009 13:26:03 Заголовок сообщения: |
|
|
Максим ваша идея понятна. А вот как его на Ladder diagram сделать?  |
|
| Вернуться к началу |
|
 |
maxim Эксперт


Зарегистрирован: Feb 16, 2007 Сообщения: 123 Рейтинг: +7/-0 Откуда: Енакиево
|
Добавлено: Ср 25 Мар, 2009 14:01:28 Заголовок сообщения: |
|
|
| hasan писал(а): | Максим ваша идея понятна. А вот как его на Ladder diagram сделать?  |
ну можно так
 |
|
| Вернуться к началу |
|
 |
hasan Частый гость


Зарегистрирован: Mar 25, 2009 Сообщения: 10 Рейтинг: +0/-0
|
Добавлено: Ср 25 Мар, 2009 14:26:15 Заголовок сообщения: |
|
|
| Максим спасибо большое! То что надо!! |
|
| Вернуться к началу |
|
 |
DIMIOKS Эксперт


Зарегистрирован: May 14, 2005 Сообщения: 290 Рейтинг: +9/-0 Откуда: г.Самара
|
Добавлено: Ср 25 Мар, 2009 16:21:57 Заголовок сообщения: |
|
|
maxim, в строчке №6 интересное решение, я до этого не додумался
Всегда использовал:
TON(Timer_Vibro,1000,0) XIC(Timer_Vibro.DN) RES(Timer_Vibro);
Теперь буду на одну инструкция меньше писать  |
|
| Вернуться к началу |
|
 |
oldDad Site Admin


Зарегистрирован: May 05, 2005 Сообщения: 2773 Рейтинг: +89/-5
|
Добавлено: Чт 26 Мар, 2009 11:33:04 Заголовок сообщения: |
|
|
| hasan писал(а): | | Снять защиту контроллера каким либо образом возможно или нет? | Коллега, защита программы установлена именно для того, чтобы Вы не имели возможности её снять (не уничтожив при этом программу). |
|
| Вернуться к началу |
|
 |
|