Система "Бенукс". Компьютерное управление и контроль.
http://benuks.flyboard.ru/

подключение ЦАП 0-10В на базе DS 2890
http://benuks.flyboard.ru/topic166.html
Страница 1 из 2

Автор:  Владимир_Брн [ 28-09, 21:01 ]
Заголовок сообщения:  подключение ЦАП 0-10В на базе DS 2890

добрый день.
пока успешно постигаю Бенукс и 1 wire.
но сегодня пытался настроить и подключить ЦАП 0-10 В на базе DS 2890.
он его видит как 3 устройства.
1. DS2890 1-Wire Digital Potentiometer ( управляемое сопротивление )
2. I Button
3. Ping TCP\ip

при создании логгера с тремя датчиками
можно добавить только i button/
больше ни один датчик из этого устройства не виден.

объясните пожалуйста, как обеспечить управление этим устройством.

Спасибо.

Автор:  Владимир_Брн [ 28-09, 22:43 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Вобщем, ситуация дальше такая.
1. взял из списка этого модуля iButton
2. включил Ручное управление и вручную устанасливаю проценты, соответственно, меняется напряжение на ЦАПе
3. Пытаюсь писать СЦЕНАРИЙ. и тут тупик. делаю метку 1. условие перехода на метку 2 это температура **С.
4. метка 2 включить устройство ( И ТУТ В СПИСКЕ ПОЯВЛЯЕТСЯ МОДУЛЬ ЦАП, которого нигде в Бенкусе нет, кроме списка устройств.
5. Делаю его включить на **%
6. перехожу к настройке сенсора, и делаю кол-во сценариев 1. и указываю этот сценарий с ЦАП.

ничего естественно не работает.

Вопрос. тот же.))
как управлять этим ЦАПом и где его увидеть?

Спасибо.

Автор:  Владимир_Брн [ 28-09, 23:10 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

печаль со сценариями.
1. все написал, разобрался.
если не найду ответ создам тему отдельно.
2. простое условие.
если т больше 27 то на ЦАП 70%
если т меньше 27 то на ЦАП 30%
безусловный переход на метку 1.
( то есть зацикливаю )
он начинает работать, но показания скачут, потому что он постоянно выполняет включение устройства на 70% так как т больше 27.
и в результате напряжение так и не доходит до 7 вольт потому что постоянно идет его сброс и заново.

и еще.
при остановке сканирования ситуация на ЦАПе не меняется а в окне сценарий продолжается его выполнение.

помогает только перезагрузка Бенкуса
а при выходе через Файл-выход пишет ошибку записи в 0000014. и несколько раз ругается .
это не нормально. для первого использования датчика на чистой программе.

Автор:  Владимир_Брн [ 28-09, 23:18 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

далее. при запуске этого сценария, температура не сканируется, а принимается равной на начало сканирования. даже принудительный нагрев не изменяет показания.
увеличил время сканирования до максимальных величин.
ничего не меняется.
видимо какая то проблема или со сценарием, но какая тут проблема? проверил показания, включил устройство ,перешел вверх.и тд.
может есть какая то команда не ВКЛЮЧАЯ устройство переключать проценты??

Автор:  Владимир_Брн [ 28-09, 23:23 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

подумал, что к каждому значению температуры привязать свои проценты. но если не зацикливать сценарий, то он проходит всего один раз.!
и все. даже если его делать через каждую минуту, то каждую минуту будет дергаться ЦАП. а это хреново.

все перепробовал.
не реально без разработчика))
1. не сбрасывает значение на ЦАП после выхода.
2. не останавливает циклический сценарий.
3. не меняет показания ЦАП. один раз его включает и все. по сценарию не меняется. Цикл отключил. переход на метку происходит, но переключения нет.
даже если Бенкус вырубить то показания не обнуляются пока датчик не отцепишь.

Автор:  Геннадий [ 29-09, 09:22 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Владимир_Брн писал(а):
сегодня пытался настроить и подключить ЦАП 0-10 В на базе DS 2890.
он его видит как 3 устройства.
1. DS2890 1-Wire Digital Potentiometer ( управляемое сопротивление )
2. I Button
3. Ping TCP\ip
Микросхема DS2890 является одноканальным устройством и оно показано в пункте №1.
Во втором пункте у Вас по всей вероятности метка линии, которая внутри адаптера и она по семейному номеру определяется как IButton.
В третьем пункте у Вас показан виртуальный(програмный) датчик "PING".

Владимир_Брн писал(а):
объясните пожалуйста, как обеспечить управление этим устройством.
В программе Бенкс всё оборудование делится на три категории:
1.Адаптеры 1-Wire
2. Датчики (для ввода информации)
3. Устройства управления (для выдачи сигналов управления)
Так вот, микросхема DS2890 относится к категории устройств управления, поэтому в логгеры она не добавляется, а доступна в панели "ручное управление" и в других местах программы, где всплывающие списки для выбора устройства управления. Причём, от обычного устройства управления (у которого два управляющих сигнала "включить" и "отключить") микросхема DS2890 отличается тем, что у неё управляющий сигнал задаётся в %.

Автор:  Геннадий [ 29-09, 09:50 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Владимир_Брн писал(а):
безусловный переход на метку 1. ( то есть зацикливаю )
при остановке сканирования ситуация на ЦАПе не меняется а в окне сценарий продолжается его выполнение.
помогает только перезагрузка Бенкуса
а при выходе через Файл-выход пишет ошибку записи в 0000014. и несколько раз ругается .
Если в сценариях используется команда "Цикл", обязательно внутри цикла должна быть хотя-бы одна команда "таймер", иначе все программные ресурсы расходуются на этот бесконечный цикл.

Автор:  Владимир_Брн [ 29-09, 09:54 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

да, все понял что в логгеры ее не записать, а только в сценарий.

делаю так.

ставлю условие по температуре, но
при запуске
показания скачут на ЦАПе. ничего не понятно.
он при каждом цикле отключает и включает его заново, а не стабильно держит напряжение.\
условие проверки описал выше,

вопрос
ПОЧЕМУ?

Автор:  Владимир_Брн [ 29-09, 09:56 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

а при выходе через Файл-выход пишет ошибку записи в 0000014. и несколько раз ругается .[/quote]Если в сценариях используется команда "Цикл", обязательно внутри цикла должна быть хотя-бы одна команда "таймер", иначе все программные ресурсы расходуются на этот бесконечный цикл.[/quote]

то есть, задержка в цикле при сканировании?
сколько поставить посоветуете?

Автор:  Владимир_Брн [ 29-09, 10:10 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Все. таймер поставил 1 сек. температура меряется.
но ЦАП скачет и не может достичь 100%

алгоритм еще раз.

1. Т > 26 переход на 2
2. ЦАП = 100%
3. Т < 26 переход на 4
4. ЦАП = 20%
5. таймер 1 сек
6. безусловный переход на метку 1.

при запуске напряжение начинает скакать от 2х вольт до 12!
но в основном в диапазоне от 2. 2 до 8...10В.

Автор:  Геннадий [ 29-09, 10:12 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Владимир_Брн писал(а):
то есть, задержка в цикле при сканировании?
сколько поставить посоветуете?
не в цикле сканирования, а в цикле сценария. Сканирование выполняется в логгерах, и в этих логгерах по значениям датчиков запускаются сценарии. Те кманды сценариев, в которых используются условия, значения берут не с самого датчика, а из логгера. Поэтому для нормальной работы сценариев обязательно логгеры должны быть в состоянии "сканирование".

P.S. Рекомендую изучение программы начать с чтения справки.
В программе есть встроенный хелп, но на Windows-7 он может не
открываться, поэтому можете хелп скачать в виде файла здесь: http://www.benuks.ru/doc/benuks.rtf

Автор:  Геннадий [ 29-09, 10:20 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Владимир_Брн писал(а):
1. Т > 26 переход на 2
2. ЦАП = 100%
3. Т < 26 переход на 4
4. ЦАП = 20%
5. таймер 1 сек
6. безусловный переход на метку 1.
Между второй и третьей строкой вставите команду безусловного перехода на строку 5. Кроме того, в окне настроек датчика на панели запуска сценария поставьте галку "запускать не чаще чем" и укажите время.

Автор:  Владимир_Брн [ 29-09, 10:38 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Все. нашел неисправность в программе. видимо отсюда все проблемы.

1.в режиме ручного управления, если выставить до 50% то ЦАП управляется корректно.
а если выше 56% то сразу значение на ЦАП идет 100% не важно какое значение на экране. причем после 54% уже идет увеличение до 8 вольт.
пробовал перезапускать программу и перезапускать ЦАП.

из программы MLex, с elin. все регулируется корректно.

2. Цикл поставил ВИДЕО ИНСТРУКЦИЮ все 4 части смотрел и пробовал.
но ЦАП регулируется только тогда, когда идет обработка алгоритма.
когда идет ТАЙМЕР, то он принимает меньшее значение по циклу.

это вторая проблема, которую нужно устранять.

Автор:  Denis [ 29-09, 11:29 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

benuks писал(а):
Владимир_Брн писал(а):
1. Т > 26 переход на 2
2. ЦАП = 100%
3. Т < 26 переход на 4
4. ЦАП = 20%
5. таймер 1 сек
6. безусловный переход на метку 1.
Между второй и третьей строкой вставите команду безусловного перехода на строку 5. Кроме того, в окне настроек датчика на панели запуска сценария поставьте галку "запускать не чаще чем" и укажите время.


Геннадий дело говорит! Без предложенной им доработки "кода" сценария показания ЦАП обязательно будут "скакать"! Просто Владимир_Брн видимо еще мало программировал, поэтому и допускает досадные ошибки, ведущие к неработоспособности сценариев.
И еще, в головы новичков необходимо вложить мысль, что 1-Wire технология не мгновенно реагирует на изменение параметров, а с периодичностью цикла опроса датчиков, а он может длиться долго (1000 мс и более).

Автор:  Владимир_Брн [ 29-09, 11:51 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

согласен, что мало. в основном это был Паскаль)
но основы никуда не деть.
помогите пожалуйста разобраться.

Ставлю между строками переход на таймер.
дальше таймер переходит на метку 6!
а не на метку 4. в результате условие 4 не проверяется.

Денис, скажите, а почему показания скачут?
этого быть не должно.
например, по моему алгоритму если Т= 30, то ЦАП должен 100% показать и оставаться пока не изменится условие.
но этого не происходит. а он скачет постоянно. так как ПЕРВОЕ показание у него осталось 20%. и только при сканировании он поднимает напряжение. а в режиме паузы опускает его до 20%, хотя температура выполняет условие метки 1.

это очевидная неисправность кода Бенкуса.
как и все что описал выше.
Видимо эта часть просто плохо описана.

остальные то работают нормально. и свет и температура и другие условия.

Автор:  Владимир_Брн [ 29-09, 12:06 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Еще один прикол.

напихал везде таймеров чтобы видеть все.

так вот, условие не выполняется по проверке температуры!!

он каждый раз меняет показания ЦАП не зависимо от проверки условия.

то есть, не важно какое условие перехода на метку со значением ЦАП, он на нее переходит по порядку перебирая весь цикл.
и все подряд выполняет.

что делать то???

Автор:  Denis [ 29-09, 12:12 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Я уже не пользуюсь Бенуксом, но насколько помню там вроде нет блока вроде :
if () then
....
else
...
end if

Ваш код примерно так выполняется:
1. Т > 26 переход на 2 - проверили условие (перешли на метку 2 при выполнении условия, иначе ... просто перешли на метку 2!, ведь это следующий шаг сценария!)
2. ЦАП = 100% - подняли до 100% независимо от условия в строке 1
3. Т < 26 переход на 4 - проверили условие (перешли на метку 4 при выполнении условия, иначе ... просто перешли на метку 4!!!)
4. ЦАП = 20% - опустили до 20%, опять же независимо от условия.
5. таймер 1 сек - подождали и снова в путь

по мне так код должен быть такой:
1. Т > 26 переход на 4
2. Т =< 26 переход на 6
3. переход на 7
4. ЦАП = 100%
5. переход на 7
6. ЦАП = 20%
7. таймер 1 сек
8. безусловный переход на метку 1.

вроде все поправил ))

В Паскале вы бы условие заключили в скобки (или что там используется) а здесь такого нет. Это просто последовательность команд, а не интерпретатор языка высокого уровня.

Автор:  Владимир_Брн [ 29-09, 12:43 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Денис, спасибо за понимание.
я уже ЗАДОБЛАБСЯ с этим простейшим условием.
скажите, а чем вы пользуетесь в 1 wire?.
уже понятно что независимо от проверки условия сценарий идет тупо вниз.
но ведь в сценарии есть пункт которым я пользуюсь это УСЛОВИЕ ПЕРЕХОДА НА МЕТКУ.
то есть, он не должен переходить на эту метку если не выполнено условие.
а все равно переходит.

Автор:  Denis [ 29-09, 13:02 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

Он проверят условие и .... просто переходит в этой же строке сценария, в этом вся тонкость. Нет блока if (...) end if

В 1-Wire сейчас пользуюсь только датчиками температуры, но подключал и ds2408 (в том числе и к бенукс). Я купил модуль 1-wire-to-Ethernet, что позволяет управлять 1-wire устройствами по сети (в том числе по Интернет) поэтому и надобность в бенуксе отпала. НО сразу предупреждаю, это гораздо сложнее, чем просто отработать сценарий в Бенуксе, и для начинающих я бы советовал Бенукс.

Автор:  Владимир_Брн [ 29-09, 19:15 ]
Заголовок сообщения:  Re: подключение ЦАП 0-10В на базе DS 2890

ОК,! Денис, СПАСИБО вам.
к вечеру все таки разобрался. и все работает. ( стирать посты не буду, вдруг кто то пойдет по той же дороге и посмотрит тему)
если бы не Ваш пример то так и не понял бы суть Бенкуса.
теперь понял.
в любом случае, проверка сначала всех условий, потом переход на первое и далее через безусловные переходы.
как принцип стабилитрона в электронике))

конечно, не понятно почему нельзя было реализовать классические циклы))
и нет кнопки "компиляция" )))

завтра еще разберусь почему после 54% он выдает 100% . может просто у меня прибор дохнет??

Страница 1 из 2 Часовой пояс: UTC + 4 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/