Skip to content

4.3 How to define AddressUnit

luosheng edited this page Jun 7, 2023 · 2 revisions

The definition of AddressUnit is:

/// <summary>
///     Address Unit.
/// </summary>
public class AddressUnit<TKey> where TKey : IEquatable<TKey>
{
    /// <summary>
    ///     ID of address unit
    /// </summary>
    public TKey Id { get; set; }

    /// <summary>
    ///     Area that data belongs
    /// </summary>
    public string Area { get; set; }

    /// <summary>
    ///     Address
    /// </summary>
    public int Address { get; set; }

    /// <summary>
    ///     Bit position of address
    /// </summary>
    public int SubAddress { get; set; } = 0;

    /// <summary>
    ///     Data type using c# definition
    /// </summary>
    public Type DataType { get; set; }

    /// <summary>
    ///     Scale rate of data
    /// </summary>
    public double Zoom { get; set; } = 1;

    /// <summary>
    ///     Decimal count of data
    /// </summary>
    public int DecimalPos { get; set; }

    /// <summary>
    ///     Communication tag
    /// </summary>
    public string CommunicationTag { get; set; }

    /// <summary>
    ///     Name of an address
    /// </summary>
    public string Name { get; set; }

    /// <summary>
    ///     Unit of an address
    /// </summary>
    public string Unit { get; set; }

    /// <summary>
    ///     Is Address Writable
    /// </summary>
    public bool CanWrite { get; set; } = true;
}

Id, Area, Address are required, others are optional but could be required depends on MachineGetDataType and MachineSetDataType.

Home

Clone this wiki locally