10.2 函数说明

JS 脚本编辑器内置的函数说明如下:

读写函数

  ReadBit函数 从指定Tag点读取Boolean,输入参数为Tag点名称的字符串,如果该点不存在或者质量戳不为Good,返回undefined。

示例:

var tagValueBit = ReadBit('Device1.tag0001');

  ReadStatus函数 从指定Tag点读取状态,,输入参数为Tag点名称的字符串,返回为Boolean,True为采集成功,False为采集失败,如果该点不存在或者质量戳不为Good,返回undefined。

示例:

var tagStatus = ReadStatus('Device1.tag0001');

  ReadInt函数 从指定Tag点读取整数,输入参数为Tag点名称的字符串,如果该点不存在或者质量戳不为Good,返回undefined。

示例:

var tagValueInt = ReadInt('Device1.tag0001');

  ReadFloat函数 从指定Tag点读取浮点数,如果该点不存在或者质量戳不为Good,返回undefined。

示例:

var tagValueFloat = ReadFloat('Device1.tag0001');

  WriteBit函数 向指定Tag点写入布尔型,参数依次为:Tag点名称(类型为字符串),需要写入Tag点的值(类型为布尔型),无返回值。

示例:

var value = true;

WriteBit('Device1.tag0001', value);

  WriteInt函数 向指定Tag点写入整型,参数依次为:Tag点名称(类型为字符串),需要写入Tag点的值(类型为整型),无返回值。

示例:

var value = 10;

WriteInt('Device1.tag0001', value);

  WriteFloat函数 向指定Tag点写入浮点型,参数依次为:Tag点名称(类型为字符串),需要写入Tag点的值(类型为浮点型),无返回值。

示例:

var value = 1.23;

WriteFloat('Device1.tag0001', value);

  WriteString函数 向指定Tag点写入字符串,参数依次为:Tag点名称(类型为字符串),需要写入Tag点的值(类型为字符串),无返回值。

示例:

var value = "String";

WriteString('Device1.tag0001', value);

通讯函数

  SendMsgToPort函数 向指定串口发送报文,并返回接收到的报文,参数依次为:串口号,波特率,数据位,停止位,奇偶校验( 0:N,1:O,2:E),超时时间(单位毫秒:1000毫秒=1秒),发送的报文,等待接收的字节数。返回值为字符串型。

示例:

while(true){                                                   //1个不会结束的循环
    var A = [0x17, 0x03, 0x00, 0x00, 0x00, 0x04, 0x46, 0xff];  //报文内容
    var rs = SendMsgToPort('com1',9600,8,1,0,2000,A,0);        //向串口发送报文
    //console.log(rs);                                         //打印出返回值
    if(rs){                                                    //判断返回值是否为空
        var str=rs.slice(7,8);                                 //按报文说明截取数据
        //console.log(str);                                    //打印出str的内容
        reint = parseInt(str,16);                              //把字符串转成int16
        WriteFloat('user.tag0001',reint);                      //把值写入指定的用户点
    }
    Sleep(1000);                                               //等待1秒后再次执行循环体
}

  SendMsgToTCP函数 向指定网口发送指定报文,并返回接收到的报文。参数依次为:IP地址,端口,超时时间(单位毫秒:1000毫秒=1秒),发送的报文。返回值为字符串型。

示例:

while(true){                                                   //1个不会结束的循环
    var A = [0x17, 0x03, 0x00, 0x00, 0x00, 0x04, 0x46, 0xff];  //报文内容
    var rs = SendMsgToTCP('192.168.1.88',81,2000,A);           //向网口发送报文
    //console.log(rs);                                         //打印出返回值
    if(rs){                                                    //判断返回值是否为空
        var str = rs.slice(7,8);                               //按报文说明截取数据
        //console.log(str);                                    //打印出str的内容
        reint = parseInt(str,16);                              //把字符串转成int16
        WriteFloat('user.tag0001',reint);                      //把值写入指定的用户点
    }
    Sleep(1000);                                               //等待1秒后再次执行循环体
}

系统函数

  Sleep函数 延迟执行,输入参数值为毫秒,无返回值。

示例:

Sleep(1000);//延迟等待1000mS

results matching ""

    No results matching ""