Функции работы с устройствами

<< Click to Display Table of Contents >>

Navigation:  Modbus Universal MasterOPC Server > Руководство по языку Lua 5.1 > Библиотеки функций > Библиотека SERVER >

Функции работы с устройствами

Функции работы с устройствами

mbul_mail server.CheckUpdateCurrentDevice

mbul_mail server.CheckUpdateDeviceByName

mbul_mail server.GetCurrentDeviceAddress

mbul_mail server.GetCurrentDeviceCycle

mbul_mail server.GetCurrentDeviceError

mbul_mail server.GetDeviceLinkQ

mbul_mail server.GetCurrentDeviceRetry

mbul_mail server.PollCurrentDevice

mbul_mail server.PollDeviceByName

mbul_mail server.ReadDeviceExtProperty

mbul_mail server.SetCurrentDeviceAddress

mbul_mail server.SetCurrentDeviceCycle

mbul_mail server.SetCurrentDeviceRetry

mbul_mail server.SetDeviceToOnOff

server.CheckUpdateCurrentDevice

Функция возвращает false после выполнения опроса устройства. Результат функции можно использовать, когда необходимо сбросить значение тега принудительного опроса – после использования функции server.PollCurrentDevice .

Пример

––Код в скрипте после записи:

function OnWrite()

tag = server.ReadCurrentTag();   --считываем значение тега

if tag then

server.PollCurrentDevice(); --если тег – true, опрашивем устройство

end

end

––Код в скрипте после чтения:

function OnRead()

local b = server.CheckUpdateCurrentDevice() –-контролируем выполнение опроса

server.WriteCurrentTag(b,192);             --сбрасываем значение тега

end

server.CheckUpdateDeviceByName

Функция возвращает false после выполнения опроса устройства, заданного в строке аргумента. Результат функции можно использовать, когда необходимо сбросить значение тега принудительного опроса – после использования функции server.PollDeviceByName .

Пример

––Код в скрипте после записи:

function OnWrite()

tag = server.ReadTag("Node1.Device1.Tag1"); --считываем значение тега

if tag then

--если тег – true, опрашивем устройство:

server.PollDeviceByName("Node1.Device1");

end

end

––Код в скрипте после чтения:

function OnRead()

–-контролируем выполнение опроса:

local b = server.CheckUpdateCurrentDevice("Node1.Device1")

––сбрасываем значение тега:

server.WriteTag("Node1.Device1.Tag1",b,192);

end

server.GetCurrentDeviceAddress

Возвращает значение параметра Адрес текущего устройства (см. Диалог параметров устройства ).

Пример

local Address = server.GetCurrentDeviceAddress( )

server.GetCurrentDeviceCycle

Возвращает период опроса текущего устройства в миллисекундах.

server.GetCurrentDeviceError

Возвращает true при ошибке текущего устройства и false – в противном случае.

Пример

local err = server.GetCurrentDeviceError( )

server.GetDeviceLinkQ

Функция определяет и выдает качество связи с устройством в процентах - количество успешно выполненные запросов из последних 100 запросов.

Пример

local Quality = server.GetDeviceLinkQ( )

--Quality - communication quality as a percentage

server.GetCurrentDeviceRetry

Функция возвращает установленное у устройства количество повторов запроса при ошибке. Скрипт должен находиться на уровне устройства, подустройства или тега.

Пример

n=server.GetCurrentDeviceRetry();

server.PollCurrentDevice

Принудительный (внеочередной) опрос текущего устройства.

Пример

server.PollCurrentDevice();

server.PollDeviceByName

Принудительный (внеочередной) опрос устройства по его имени.

Пример

server.PollDeviceByName("Node1.Device1");

server.ReadDeviceExtProperty

Возвращает значение, заданное для дополнительного свойства текущего устройства (см. Задание дополнительных свойств ).

Параметром этой функции является имя дополнительного свойства.

Пример

local IsCRC = server.ReadDeviceExtProperty("IsCRC");

server.SetCurrentDeviceAddress

Устанавливает адрес текущего устройства. Функция доступна только в безлимитных версиях.

server.SetCurrentDeviceCycle

Задает период опроса текущего устройства в миллисекундах.

server.SetCurrentDeviceRetry

Задает количество повторов запроса при ошибке. Скрипт должен находиться на уровне устройства, подустройства или тега.

server.SetDeviceToOnOff

Функция позволяет останавливать и запускать опрос устройства. Данная функция может быть полезна, например, если необходимо исключить то или иное устройство из опроса.

Скрипт должен находиться на уровне тега.

Пример

val,q=server.ReadCurrentTag();       --получаем значение тега

if val==true then                     --если значение "true"

server.SetDeviceToOnOff (true); --запускаем опрос устройства

else

server.SetDeviceToOnOff (false); --иначе останавливаем

end;