Вход

Просмотр полной версии : СПК110 тактовые импульсные биты



Unreality
03.12.2024, 07:22
Добрый день,
При работе в Siemens часто приходилось использовать тактовые меркеры/биты (отдельная аппаратная настройка в ПЛК)
Я попробовал сделать аналогичную задачу в СПК110
Так как задача циклична - установил цикл на 25мс
Написал простой код
***
// 100ms
IF iCount_100ms = 4 THEN
bTakt_100ms:= TRUE;
iCount_100ms := 0;
ELSE
iCount_100ms := iCount_100ms +1;
bTakt_100ms:= FALSE;
END_IF
// 500ms
IF iCount_500ms = 20 THEN
bTakt_500ms:= TRUE;
iCount_500ms := 0;
ELSE
iCount_500ms := iCount_500ms +1;
bTakt_500ms:= FALSE;
END_IF
// 1000ms
IF iCount_1000ms = 40 THEN
bTakt_1sec:= TRUE;
iCount_1000ms := 0;
ELSE
iCount_1000ms := iCount_1000ms +1;
bTakt_1sec:= FALSE;
END_IF
***
По логике работы такта, он существует ровно 1 цикл в заданный период
каждые 100мс появляется 1 такт, который существует 1 цикл.
***
Проверил на симуляторе - похоже на правду.
Залил в ПЛК, и увидел, что так в 1 секунду превратился в 10 секунд, такт в 500мс, превратился в 2-3 секунды.
Попытки понять, что не так не увенчались успехом.

Использование встроенной функции Blink, мои задачи не решает, поэтому решил написать что то свое.
Но почему - на симуляторе, это работает, а в реальном ПЛК нет?
Возможно это "говнокод" - и работать не будет тут, готов выслушать замечания.

Либо в настройках ПЛК какой то косяк.

Евгений Кислов
03.12.2024, 07:38
Добрый день.


Залил в ПЛК, и увидел, что так в 1 секунду превратился в 10 секунд, такт в 500мс, превратился в 2-3 секунды.

Я запустил ваш код на своем ПЛК и этого не увидел.


Но почему - на симуляторе, это работает, а в реальном ПЛК нет?

Напишите в телеграм (см. в подписи) - разберемся.


При работе в Siemens часто приходилось использовать тактовые меркеры/биты (отдельная аппаратная настройка в ПЛК)

У нас они тоже есть (OwenPulseBits):
https://owen.ru/forum/showthread.php?t=38944

Unreality
03.12.2024, 07:56
Добрый день.



Я запустил ваш код на своем ПЛК и этого не увидел.



Напишите в телеграм (см. в подписи) - разберемся.



У нас они тоже есть (OwenPulseBits):
https://owen.ru/forum/showthread.php?t=38944

Я ранее пакет скачал. Но не ставил, предполагая, что это уже есть в СПК (стандартно...)
Спасибо за наводку - буду пробовать стандартные инструменты
***
По поводу того, что не работает или работает.
Я тестирование проводил совместно с ModBus TCP - отдельная ветка которую тоже написал.
Проверка выполнения отражалась на выходах - включал светофор на шкафу, и по времени включения понимал, что тут что то не так
Может быть проблема действительно в обмене.

Тему тогда пока закрывать не нужно, по обмену пройдемся.