PDA

Просмотр полной версии : ПЛК110-60 + МУ110-6У



kosmas
18.01.2015, 20:21
Итак, есть сабжевая связка плюс диммер.
Пишем крутую программу:
16244

Контроллер с модулем связаны так:
16245

Что задумано: нажали на кнопку - лампочка медленно загорается.
Что получается: пока AO10 не перестанет меняться, лампочка не загорится.
Куда смотреть? Или я что-то недопонимаю?

kosmas
20.01.2015, 11:07
Лююююдиии!!! Гдееее выыы????

capzap
20.01.2015, 11:27
Лююююдиии!!! Гдееее выыы????
так мало же инфы, где к примеру значения минц-а? Вы наивно полагаете что по последовательному интерфейсу успеют пройти все запросы по изменению каждый цикл? Как минимум сделайте регулируемым по времени подачу на АО10 значения из Вашего ПОУ через промежуточную переменную

kosmas
20.01.2015, 11:35
Минц здесь равен 0... Но я пробовал и 50 мсек. В этом случае лампочка включается в 3-4 приема...

А как сделать

регулируемым по времени подачу на АО10 значения из Вашего ПОУ через промежуточную переменную
Что-то не соображу...


З.Ы. И еще одна вероятная причина - скорость обмена между ПЛК и МУ100 - 9600.. Может, попробовать 115200? У меня там на этом интерфейсе еще одна железка была, которой надо 9600, но ее можно на второй 485 перевести...

capzap
20.01.2015, 12:01
tik:TON;
variable:TIME;

IF tik.Q THEN
AO10:=MIN((AO10+1),1000);
END_IF;
tik(IN:=BTN_UP.Q AND NOT tik.Q,PT:=variable);
как то так

kosmas
20.01.2015, 13:30
как то так, единственное не пойму еще как у Вас значение после запятой при приведении к целочисленному не теряется, там видимо надо умножать/делить на что то еще надо

То, что после запятой меня не сильно интересует... :) Мне надо медленно единицы прибавлять... А как это сделать с минимальными потерями кода - не знаю... Но это мы скатываемся из PLC в Codesys...

capzap
20.01.2015, 13:35
а чем мой код (дополнительно подправленный) то не устраивает, меняеет значение переменной на большее время и будут медленее единицы прибавлятся

kosmas
20.01.2015, 14:47
PROGRAM PLC_PRG
VAR
tik:TON;
variable:TIME := t#5s;
END_VAR

IF DI32 THEN
IF tik.Q THEN
AO10:=MIN(REAL_TO_WORD(WORD_TO_REAL(AO10) +0.1),1000);
END_IF;

tik(IN:=DI32 AND NOT tik.Q, PT:=variable);
END_IF

Так не работает.. :(

capzap
20.01.2015, 15:00
Так не работает.. :(

так я там подправил же

kosmas
20.01.2015, 15:17
Ой... Не углядел... СПАСИБО!

Доберусь до железки - попробую...

kosmas
20.01.2015, 22:43
Добрался - докладываю:
Есть у меня прибор МЭ110-224.1М - он не работает ни с какими сетевыми настройками, кроме заводских. Я его отключил. Изменил скорость на всех 485 интерфейсах на шине и все заработало как надо.. :)

Продолжаю наблюдение...

З.Ы. После включения МЭ110-224.1М перестал подавать признаки жизни... Совсем. Даже индикации нет... Их в Питере чинют?

melky
21.01.2015, 10:15
МЭ110-224.1М данному модулю необходимо обновить прошивку, у меня тоже в паре с 8АС не работал, после обновления стал работать.
Прошивка естьна странице прибора на сайте.

lego23
23.02.2015, 21:39
kosmas, добрый вечер. Я смотрю, вы все с диммерами экспериментируете). А я только до них добрался, подскажите пожалуйста стоит ли использовать oscat модули как вы тут делали http://www.owen.ru/forum/showthread.php?t=13422&p=104005&viewfull=1#post104005 или может уже за 2 года есть новые наработки у вас? Там что-то много всего наворочено, двойные/тройные нажатия. Вы не делали у себя долгое нажатие, не могу сообразить сходу как его реализовать?

kosmas
24.02.2015, 14:28
kosmas, добрый вечер. Я смотрю, вы все с диммерами экспериментируете). А я только до них добрался, подскажите пожалуйста стоит ли использовать oscat модули как вы тут делали http://www.owen.ru/forum/showthread.php?t=13422&p=104005&viewfull=1#post104005 или может уже за 2 года есть новые наработки у вас?

За 2 года я понял, что программист я так себе.. :)
Итак, по порядку. Диммеры работают. Но не очень плавно. У друга диммеры работают более плавно. Но там и железо более другое... :) Подозреваю, что дело не только в коде. Разбираюсь. Oscat'овские библиотеки увеличивают объем выполняемого кода раз в 10. Это не фигура речи. Сейчас работает программа, написанная другом под twincat. Это такой codesys только от Bekhoff... Так там даже STANDART.LIB не нужен. :) Сейчас думаю, как сделать двойной или тройной клик - типа выключить весь свет в доме кроме как у меня, и прикрутить все это к openhab.