Ejemplo n.º 1
0
 /// <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)));
 }
Ejemplo n.º 2
0
 /// <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));
 }
Ejemplo n.º 3
0
 /// <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));
 }
Ejemplo n.º 4
0
 /// <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)));
 }
Ejemplo n.º 5
0
 /// <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)));
 }
Ejemplo n.º 6
0
 /// <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));
 }