Добрый день!! Помогите сделать макрос на сравнение чисел с плавающей запятой на МЕНЬШЕЕ значение.
На ПР 200 приходит регулирующее напряжение 0-10. Нужно чтобы при понижении напряжения меньше заданного значения появлялась 1 или 0.
Вид для печати
Добрый день!! Помогите сделать макрос на сравнение чисел с плавающей запятой на МЕНЬШЕЕ значение.
На ПР 200 приходит регулирующее напряжение 0-10. Нужно чтобы при понижении напряжения меньше заданного значения появлялась 1 или 0.
на большее сравнивать не пробовали поменяв местами переменные ?
Конечно пробовал )) у меня логика не работает в этом случае....
у меня при росте напряжения от 0 до 10 В должно происходить следуюшее....0-1В отключено....1-2В Включено ожидание, 2В Старт роботы вентилятора и с 2 до 10 его регулировка туда и обратно....
Проблемма именно в остановке... я не как не могу осилить логику так чтобы при понижении ниже 2 вольт вент отключался...
Да конечно!! Только пожалуйста не судите строго ЭТО ЧЕРНОВИК!!
Если хотите в реальных физических величинах(вольтах) получать значение в программу, поставьте здесь "0"
Вложение 41402
Да все так и должно быть ))) На каждом этапе своя скорость вентилятора и поэтому так много пидов и таймеров (всего их будет штук 6)...... с этим все правильно...
Проблема не в этом...
Если, как Вы пишите, надо скорость вентилятору задавать пропорционально управляющему напряжению на входе, то здесь и макроса SCALE_L с избытком хватит:
http://www.owen.ru/forum/showthread.php?t=12691&page=49
Достаточно такого:
Вложение 41403
Коллеги вопрос не в скорости вентилятора!!!! И с пидами там все правильно!!! Соответственно Тех. заданию ))) Я ж даже красным обвел где и что у меня не получается решить))
Там поле большое!!! Обратите внимание пожалуйста у меня уже мозг вскипел...... уверен что проблема решается просто но вот как???!!
Так Вам уже верно ответили, поменяйте элементы сравнения местами, если значение будет менее уставки, на выходе "1":
Вложение 41404
Или что бы элементарное дошло, надо всем повторить этот ответ?
Решать ваши куски задания не интересно ,а главное бесполезно не видя картины (ТЗ) целиком .По вопросу вам ответили ,но вас не устроило , значит такой был вопрос. Может вам вообще гистерезис нужен ?
Вы такое большое поле создали для проекта ,будто автоматизировать космодром собираетесь, а вопросы простые задаете ...как то не вяжется ...:cool:
Если сделать так как вы все советуете то на элементе 1 всегда 1 и тогда элемент 2 всегда включен ........ может я что-то неправильно понимаю (((
ИМХО, я бы 0-10В превратил бы в шаги с нужной дискретностью, например 1В или 0,5В. А что выполнять при каждом шаге решать вам.
например Входное напряжение делим на 10 без остатка, вот вам и шаг 1В в целочисленном варианте, потом делайте все что вам нужно исходя из номера шага.
Алексей 1 если у вас шаг 1В, то просто сделайте float_to_int и вы получите только целые числа. А там уже от номера делайте свою программу как необходимо.
Если шаг нужен меньше, например 0,5В то делаете округление float до 1 знака и сравниваете опять же нужные значения.
Просто вы так описали задачу, что она неплохо может работать по номеру шага, а уже как вы это реализуете вариантов масса.
Например при целочисленном значении можно int подать на вход макроса ППЗУ и не прибегать ни к какому сравнению...
наверное для Вас это тайна, поэтому попробую приоткрыть завесу, в верху страницы есть красная линия с надписью форум, под ней зеленая, там есть много слов. Так вот нажав на фразу Сообщения за день Вы попадает на страницу, которую обычно смотрят продвинутые пользователи, это те которые в состоянии ответить на вопросы. Поэтому не надо писать во всех темах один и тот же по смыслу вопрос и конечно создавать в каждом разделе тему