-
библиотека owen_io.dll должна находиться в одной папке с программой, либо в одной из папок, указанных в переменной среды PATH.
для отладки в среде разработки VB проще всего поместить библиотеку в папку \Windows\System32.
ну и скачать библиотеку можно с нашего сайта - http://www.owen.ru/device/64305906
-
Большое спасибо, Дмитрий! С библиотекой всё заработало.
-
Дмитрий, ещё одна проблема. Значения с ТРМ202 считываются, уровни управляющих сигналов регуляторов - тоже. А вот с заданием уровня сигнала регулятора - прямо беда. В примере программы для вывода сигнала используется программный код:
' Чтение параметра CmP
res = ioLib.ReadUInt(32, ADRTYPE_8BIT, "CmP", 0, ValInt)
' Отключаем компаратор. Так как CmP - конфигурационный параметр, каналы адрессуются через индекс
res = ioLib.WriteUInt(32, ADRTYPE_8BIT, "CmP", 1, 0)
' Управляем выходом
res = ioLib.WriteFloat24(32, ADRTYPE_8BIT, "r.oUt", -1, 0.5)
В описании прибора указано что на источник управляющего сигнала от компьютера или от регулятора указывает параметр r-L. А что же тогда означает CmP ?
Если Вас не затруднит, хочу попросить объяснить на небольшом примере как выбирать управление от компьютера или от прибора, и задавать управляющий сигнал.
Большое спасибо.
-
Вроде бы как и не сезон отпусков...
-
Алена, я не программист дать пример кода не смогу, я смогу пояснить как работает режим дистанционного управления. По интерфейсу доступен параметр «r-L». При присвоении этому параметру значения "1", переключается источник определяющий уровень выходного сигнала для ВУ, а именно управление ВУ переводится на ручное с заданием уровня выходной мощности в параметре "r.out". Соответственно параметр "r.out" так же доступен для редактирования по интерфейсу RS-485. Если Вы можете изменять параметр «r-L», полагаю с "r.out" проблем возникнуть не должно.
-
CmP - режим работы компаратора. 0 - компаратор отключен. в этом состоянии можно записывать значения в r.out. какое значение при этом надо записать в r-L лучше уточнить у Максима.
список параметров прибора можно скачать с нашего сайта вот здесь - http://www.owen.ru/support/40691149
соответствие параметров и функций библиотеки можно посмотреть в файле tags.txt.
-
Всем добрый день!
По мере развития своего проекта столкнулся с необходимостью изменять задание для ТРМ202 (параметр Sp). Интересно, что для первого канала как считывание, так и замена этого параметра проходит без проблем.
Вот фрагмент программы:
' Чтение параметра SP для первого канала прибора с адресом 0
res = ioLib.ReadFloat24(0, ADRTYPE_8BIT, "Sp", 0, Val)
здесь всё читается без проблем
и изменение параметра SP для первого канала:
res = ioLib.WriteFloat24(0, ADRTYPE_8BIT, "Sp", 0, Val)
здесь тоже всё записывается без проблем.
Для чтения и записи во второй канал увеличиваю адрес прибора на 1:
чтение
res = ioLib.ReadFloat24(0 + 1, ADRTYPE_8BIT, "Sp", 0, Val)
запись
res = ioLib.WriteFloat24(0 + 1, ADRTYPE_8BIT, "Sp", 0, Val)
А вот здесь уже и не записывается и не читается. И как при записи, так и при чтении res принимает значение -100.
Возможно кто-то сталкивался с подобной проблемой? Буду благодарен за любую помощь. Заранее спасибо!
-
Мне кажется, что аргументом функции не может быть выражение. 0 + 1
надо передавать в функцию готовое значение то бишь 1.
-
Sp - конфигурационный параметр. поэтому каналы адресуются через индекс. вот так:
res = ioLib.ReadFloat24(0, ADRTYPE_8BIT, "Sp", 1, Val)
-
Спасибо всем за помощь! Попробовал адресовать через индекс всё прошло без проблем, как считывание параметра, так и запись. И ещё раз спасибо Дмитрию за оперативность и точность информации.