Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
неважно что я употребляю в диалогах, в документации нет ни слова про INT owen.png, поэтому не существует утверждения что INT - беззнаковый тип данных
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
Там даже представитель Овен это подтверждает!
Конечно им пришлось пойти на попятную под справедливым негодованием масс трудового народа!
Только какой смысл был в таких выкрутасах?!
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
во первых третий раз говорю, давайте дискутировать в рамках документации, а не человека который сделал заявление не понятно на чем основанное, написал три поста в этой теме и все.
во вторых а что такого Максим подтвердил?тут где то есть подтверждения что речь идет об INT? Или все же только о префиксе если понадобиться, но не упоминается про тип данных или где то есть аксиома что целые это обязательно инт-ыА а OWEN Logic беззнаковая арифметика. Если бы было поддержано "беззнаковые целые" и "целые со знаком", то имел бы смысл иметь префикс
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
Это уже ваши выкрутасы, там изначально это было указано в первом посте темы!
Раньше это по другому разруливалось:
https://www.youtube.com/watch?v=EDmPQiQODm8
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
Добрый день. Я конечно дико извиняюсь.
Сегодня посмотрел с утра, оказывается моё последнее сообщение просто не прошло. Наверное не туда куда то нажал.
Там я всех поблагодарил за внимание. И сейчас благодарю.
Вспомнил что инт имеет знак и принимает значение от −32768 до +32767 при 16 битах. И в облаке этот формат воспринимается.
Просто данный формат не поддерживает плавающую запятую. И мне теперь конкретно к моей задаче надо разобраться. Сохраняет ли данный прибор "Термодат" температуру округляя до целого числа или как то умудряется хранить и десятичные значения.
На экране вроде как точность до десятых.
Буду пытать производителя .
Ещё раз всем спасибо за участие и отклик. Постараюсь быть внимательнее при отправке сообщений.
С уважением.
Лучшее - враг хорошего "Le mieux est I\'ennemi du bien" (вроде как Вольтеровское)
Не подумайте что в приведённой цитате про три поста я высказывался о Вас, это имелось ввиду про andrew29, он как раз и пытался донести что общепринято, беззнаковые называть с префиксом U
Последний раз редактировалось capzap; 28.11.2020 в 07:56.
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
Добрый день.
Такой вопрос, связанный с облаком: лампочку (для примера) можно включать из 2 мест: с панели и с облака. В ПЛК реализован блок, который принимает данные от панели (если с нее включали) и передает команду/состояние в облако ЛампаПанель ===> ЛампаОблако, а также обратно ЛампаОблако ====> ЛампаПанель. С этим проблем нет. Но есть другая проблема. Если с облака записать скажем 1 (если была выключена), то команда проходит, но в ПЛК ничего не появляется, как был 0, нулем и остался, хотя команда выполняется. ПЛК мастер по отношению к панели. Если убрать блок ЛампаПанель ===> ЛампаОблако, то все начинает отлично работать. Как победить?
Обычно панель должна являться мастером. Это более корректная идеология тогда получается.
Нужно строить арбитр команд. Слать команды импульсно, сбрасывая команды.
Тогда схема управления становится событийной
Вот пример:
FUNCTION_BLOCK Arbiter_CMD
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
CMD_PLC_old:WORD;
CMD_CLOUD_old:WORD;
CMD_PRG_old:WORD;
TON:TON;(*Приведение клоуда к прг*)
TON1:TON;(*Обнуление конфирма*)
TP:TP;(*Попытка взлома, ждем 3 мин*)
Count:INT;
Count1:INT;
R_TRIG:R_TRIG;
F_TRIG:F_TRIG;
END_VAR
VAR_IN_OUT
CMD_PLC:WORD;
CMD_CLOUD:WORD;
CMD_PRG:WORD;
Password:WORD;
Pass_const:WORD;
Confirm:WORD;
END_VAR
(* @END_DECLARATION := '0' *)
TON(IN:=CMD_CLOUD<>CMD_PRG, PT:=T#10s);
IF CMD_PLC_old<>CMD_PLC THEN
CMD_CLOUD:=0;
CMD_PRG:=CMD_PLC;
END_IF;
R_TRIG(CLK:=CMD_CLOUD<>CMD_PRG AND Password<>Pass_const);
IF R_TRIG.Q THEN
Confirm:=2; Count:=Count+1;
END_IF;
(*Попытка взлома, ждем 3 мин*)
IF Count>=3 THEN TP(IN:=TRUE, PT:=T#3m); END_IF;
F_TRIG(CLK:=TP.Q);
IF F_TRIG.Q THEN Count:=0; Count1:=Count1+1; TP(IN:=FALSE); END_IF;
IF CMD_CLOUD<>CMD_PRG AND
Password=Pass_const AND
NOT TP.Q THEN
CMD_PLC:=CMD_CLOUD;
CMD_PRG:=CMD_CLOUD;
Confirm:=1;
END_IF;
TON1(IN:=Confirm<>0, PT:=T#10s);
IF TON1.Q THEN Confirm:=0; Password:=0; END_IF;
IF CMD_PRG_old<>CMD_PRG THEN
CMD_PLC:=CMD_PRG;
CMD_CLOUD:=CMD_PRG;
END_IF;
IF TON.Q THEN CMD_CLOUD:=CMD_PRG; END_IF;
CMD_PLC_old:=CMD_PLC;
CMD_CLOUD_old:=CMD_CLOUD;
CMD_PRG_old:=CMD_PRG;
END_FUNCTION_BLOCK
Последний раз редактировалось krollcbas; 30.11.2020 в 09:25.
+79104444236
С уважением,
Лапшин Вячеслав