/// <summary> /// 向PLC中字软元件写入short数组,返回值说明 /// </summary> /// <param name="address">要写入的数据地址</param> /// <param name="values">要写入的实际数据</param> /// <returns>返回写入结果</returns> public OperateResult Write(string address, short[] values) { return(Write(address, ByteTransform.TransByte(values))); }
/// <summary> /// 向设备中写入指定长度的字符串,超出截断,不够补0,编码格式为Unicode /// </summary> /// <param name="address">数据地址</param> /// <param name="value">字符串数据</param> /// <param name="length">指定的字符串长度,必须大于0</param> /// <returns>是否写入成功的结果对象 -> Whether to write a successful result object</returns> public virtual OperateResult WriteUnicodeString(string address, string value, int length) { byte[] temp = ByteTransform.TransByte(value, Encoding.Unicode); temp = SoftBasic.ArrayExpandToLength(temp, length * 2); return(Write(address, temp)); }
/// <summary> /// 向设备中写入字符串,编码格式为Unicode /// </summary> /// <param name="address">数据地址</param> /// <param name="value">字符串数据</param> /// <returns>是否写入成功的结果对象</returns> public virtual OperateResult WriteUnicodeString(string address, string value) { byte[] temp = ByteTransform.TransByte(value, Encoding.Unicode); return(Write(address, temp)); }
/// <summary> /// 向设备中写入double数组,返回是否写入成功 /// </summary> /// <param name="address">数据地址</param> /// <param name="values">实际数据</param> /// <returns>是否写入成功的结果对象</returns> /// <example> /// 以下为三菱的连接对象示例,其他的设备读写情况参照下面的代码: /// <code lang="cs" source="HslCommunication_Net45.Test\Documentation\Samples\Core\NetworkDeviceBase.cs" region="WriteDoubleArray" title="Double类型示例" /> /// </example> public virtual OperateResult Write(string address, double[] values) { return(Write(address, ByteTransform.TransByte(values))); }
/// <summary> /// 向PLC中写入string数据,返回是否写入成功,该string类型是针对PLC的DINT类型,长度自动扩充到8 /// </summary> /// <param name="address">节点的名称 -> Name of the node </param> /// <param name="value">实际数据 -> Actual data </param> /// <returns>是否写入成功 -> Whether to write successfully</returns> public override OperateResult Write(string address, string value) { return(WriteTag(address, AllenBradleyHelper.CIP_Type_DWord, BasicFramework.SoftBasic.ArrayExpandToLength(ByteTransform.TransByte(value, Encoding.ASCII), 8))); }
/// <summary> /// Writes an array of float to the PLC to return whether the write was successful /// </summary> /// <param name="address">节点的名称 -> Name of the node </param> /// <param name="values">实际数据 -> Actual data </param> /// <returns>是否写入成功 -> Whether to write successfully</returns> /// <example> /// 以下为三菱的连接对象示例,其他的设备读写情况参照下面的代码: /// <code lang="cs" source="HslCommunication_Net45.Test\Documentation\Samples\Core\NetworkDeviceBase.cs" region="WriteFloatArray" title="Float类型示例" /> /// </example> public override OperateResult Write(string address, float[] values) { return(WriteTag(address, AllenBradleyHelper.CIP_Type_Real, ByteTransform.TransByte(values), values.Length)); }