Страница 1 из 2

Блок сравнения (Comparator)

Добавлено: 10 мар 2018, 21:41
Serg_Grn
Есть блок сравнения (Comparator). В параметрах блока можно выбрать одно из предложенных шести условий сравнения. Первые пять условий просты и понятны, кроме того по этим пяти условиям есть пояснение в разделе "информация".
Но в блоке есть шестое условие, обозначено: "!=".
Пояснений по нему нет, хотелось бы понимать что означает восклицательный знак.

Блок сравнения (Comparator)

Добавлено: 10 мар 2018, 21:42
nalnik
не равно

Блок сравнения (Comparator)

Добавлено: 10 мар 2018, 21:45
pan
Serg_Grn писал(а): 10 мар 2018, 21:41Пояснений по нему нет
http://arduino.ru/Reference/If

Блок сравнения (Comparator)

Добавлено: 10 мар 2018, 21:45
Dev1
Serg_Grn писал(а): 10 мар 2018, 21:41!=
Поискал за вас в яндексе

Блок сравнения (Comparator)

Добавлено: 10 мар 2018, 21:47
Serg_Grn
Спасибо.

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 09:40
brig62
Столкнулся с проблемой, что блок не сравнивает с нулем. Не первый раз уже. Пришлось приделать костыль в виде добавления единицы. В данном проекте это еще как то может прокатить. Но хотелось бы по феншую сделать. Что посоветуете?
[spoiler]
2019-02-25_09-37-13.png
[/spoiler]

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 09:51
Sancho
[ref]brig62[/ref], Можно проблемный проект? Где не прокатывает или глючит?
P.S. Скажите, в какой момент/чего не работает/ не компилит/не отрабатывает. Опишите.

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 10:02
brig62
Sancho писал(а): 25 фев 2019, 09:51Можно проблемный проект?
Конечно же.
Пиво новый на есп.flp

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 12:14
Sancho
Скажите, в какой момент/чего не работает/ не компилит/не отрабатывает. Опишите подробнее.

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 13:17
krom23
brig62 писал(а): 25 фев 2019, 09:40Столкнулся с проблемой, что блок не сравнивает с нулем.
Операции с "0" для атмелок, что серпом по ..., дело не в проекте, прибавьте единицу, а потом вычтите. Либо умножайте на 10....100, потом делите, но что бы в математике не было "0".

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 13:47
brig62
krom23 писал(а): 25 фев 2019, 13:17Операции с "0" для атмелок, что серпом по ..., дело не в проекте, прибавьте единицу, а потом вычтите. Либо умножайте на 10....100, потом делите, но что бы в математике не было "0".
Вот именно к этому и пришел. Вчера целый день убил. Пока в переменной значение больше нуля, все работает как задумано. Когда ноль, то сравнение не срабатывает. Сигнала на переключение нет.
Sancho писал(а): 25 фев 2019, 12:14Скажите, в какой момент/чего не работает/ не компилит/не отрабатывает. Опишите подробнее.
Так все описал вроде бы. Если убрать блок добавления единицы, и в переменной приходит ноль, то блок сравнения не выдает сигнал на своем выходе. Счетчик продолжает считать до бесконечности.
[spoiler]
2019-02-25_09-37-13 (2).png
[/spoiler]

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 14:27
Sancho
[ref]brig62[/ref], По вашей программе - если придёт по МБ ноль, произойдёт сравнение с нулём от счётчика - получим сброс счётчика опять в ноль.
Чего не работает, определитесь.
[ref]krom23[/ref], По моему, Вы заблуждаетесь. Это всего-лишь набор бит. Ни разу подобных проблем не возникало.
Вопрос лишь в типах переменных. Ни разу с однотипными не было проблем!

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 14:49
krom23
Александр, факт остаётся фактом, с Игорем мы пришли к общему мнению. Ведь когда он поправил проект избавившись от "0", всё заработало, ведь так? И это ещё он легко отделался, что просто проект не заработал, зачастую при операциях с "0" камень уходит в глубокий накаут, ищи потом в чём проблема.

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 14:55
pan
атмелки не при чем. дело в типе. например флоат и в компьютерных программах даже между собой нельзя сравнивать. мало вероятно
что числа будут чудесным образом одинаковы. не смотря на огромные числа после запятой, флоат как ни странно не очень точные числа.

Отправлено спустя 1 минуту 40 секунд:
krom23 писал(а): 25 фев 2019, 14:49при операциях с "0" камень уходит в глубокий накаут
камень ни при чем. флпрог не может "уследить" за правильностью всех выражений

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 15:23
Sancho
[ref]krom23[/ref], Нет, не факт - проанализируйте, чего творится в этом кусочке проекта!!!
brig62 писал(а): 25 фев 2019, 13:47Если убрать блок добавления единицы, и в переменной приходит ноль, то блок сравнения не выдает сигнал на своем выходе. Счетчик продолжает считать до бесконечности.
Когда сбросится счётчик, если Вы прислали 0 в регистре? - когда пройдёт пол-круга счёт а, от 0 до -32768, триггер сбросится, потом, при проходе 0 произойдёт сброс...
Ещё раз, на пальцах, проверьте и объясните проблемную ситуацию.
Увы, вам не получится меня запутать. :)
В счётчике есть, можно установить, верхнюю границу счёта и действие по её достижении...

Отправлено спустя 4 минуты 2 секунды:
Уберите триггер, получите щасте. :)

Отправлено спустя 24 секунды:
Кстати, зачем он вообще у Вас?
Правильно, что-бы парить мозг, и ругать мк за сравнение, и вообще работу, с нулём :)

Отправлено спустя 17 минут 4 секунды:
Варианты:
[spoiler]
screenshot_19-02-25_15-18-32.png
[/spoiler]
Пиво новый на есп_v02.flp

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 15:41
krom23
Sancho писал(а): 25 фев 2019, 15:23Увы, вам не получится меня запутать.
Но попробовать всё же стоило :D .
Sancho писал(а): 25 фев 2019, 15:23krom23, Нет, не факт - проанализируйте, чего творится в этом кусочке проекта!!!
Я не говорю за конкретно этот пример, я говорю за всем известную хворь математического блока атмелок.

ЗЫ. Сейчас похимичил с нулевой математикой, чтоб не быть голословным, и оказалось что я был голословным. Все действия с "0" прошли нормально, странно, значит причина сбоев не в "0". :(

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 15:46
nalnik
krom23 писал(а): 25 фев 2019, 15:41Я не говорю за конкретно этот пример, я говорю за всем известную хворь математического блока атмелок.
Попробуйте другие, ПЛК ОВЕН попробуйте. И может поймете что математика права, а Вы просто ее не всю знаете.

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 16:02
krom23
nalnik писал(а): 25 фев 2019, 15:46ПЛК ОВЕН
Он тоже на атмелках. Но вроде с "0" разобрался, дело не в нём, а может не стрельнуло.

Отправлено спустя 5 минут 16 секунд:
nalnik писал(а): 25 фев 2019, 15:46И может поймете что математика права,
В чём она права? Разговор о особенностях ядра контроллера.

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 16:11
Sancho
krom23 писал(а): 25 фев 2019, 16:02Разговор о особенностях ядра контроллера.
Увы, не знаю я такой особенности. Не встречал, не читал...

Блок сравнения (Comparator)

Добавлено: 25 фев 2019, 17:12
brig62
Sancho писал(а): 25 фев 2019, 15:23Уберите триггер, получите щасте.
Думаете я не пробовал его убирать? Попробую еще раз. В целях научного эксперимента. Отпишусь.