IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

QModbusDeviceIdentification Class

The QModbusDeviceIdentification is a container class representing the physical and functional description of a Modbus server.

This class was introduced in Qt 5.8.

Article lu   fois.

L'auteur

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

QModbusDeviceIdentification Class

  • Header: QModbusDeviceIdentification

  • Since: Qt 5.8

  • CMake:

    find_package(Qt6 REQUIRED COMPONENTS SerialBus)

    target_link_libraries(mytarget PRIVATE Qt6::SerialBus)

  • qmake: QT += serialbus

Detailed Description

The Device Identification interface is modeled as an address space composed of a set of addressable data elements. The data elements are called objects and an ObjectId identifies them.

Member Type Documentation

 

enum QModbusDeviceIdentification::ConformityLevel

Defines the identification conformity level of the device and type of supported access.

Constant

Value

Description

QModbusDeviceIdentification::BasicConformityLevel

0x01

Basic identification (stream access).

QModbusDeviceIdentification::RegularConformityLevel

0x02

Regular identification (stream access).

QModbusDeviceIdentification::ExtendedConformityLevel

0x03

Extended identification (stream access).

QModbusDeviceIdentification::BasicIndividualConformityLevel

0x81

Basic identification (stream access and individual access).

QModbusDeviceIdentification::RegularIndividualConformityLevel

0x82

Regular identification (stream access and individual access).

QModbusDeviceIdentification::ExtendedIndividualConformityLevel

0x83

Extended identification (stream access and individual access).

See Also

See also ReadDeviceIdCode

enum QModbusDeviceIdentification::ObjectId

This enum describes the possible server objects. The interface consists of three categories of objects:

Basic Device Identification. All objects of this category are mandatory.

Constant

Value

Description

QModbusDeviceIdentification::VendorNameObjectId

0x00

The vendor name of the device.

QModbusDeviceIdentification::ProductCodeObjectId

0x01

The product code of the device.

QModbusDeviceIdentification::MajorMinorRevisionObjectId

0x02

The product version numbering.

Regular Device Identification. All objects of this category are standard defined and optional.

Constant

Value

Description

QModbusDeviceIdentification::VendorUrlObjectId

0x03

The vendor URL of the device.

QModbusDeviceIdentification::ProductNameObjectId

0x04

The product name of the device.

QModbusDeviceIdentification::ModelNameObjectId

0x05

The model name of the device.

QModbusDeviceIdentification::UserApplicationNameObjectId

0x06

The user application name of the device.

Reserved range (i.e., ReservedObjectId >= ObjectId < ProductDependentObjectId). Do not use.

Constant

Value

Description

QModbusDeviceIdentification::ReservedObjectId

0x07

First value of reserved object Ids.

Extended Device Identification. All of these data are device dependent and optional.

Constant

Value

Description

QModbusDeviceIdentification::ProductDependentObjectId

0x80

First possible value of product dependent identifiers.

QModbusDeviceIdentification::UndefinedObjectId

0x100

Do not use.

enum QModbusDeviceIdentification::ReadDeviceIdCode

Defines the access type of the read identification request.

Stream access:

Constant

Value

Description

QModbusDeviceIdentification::BasicReadDeviceIdCode

0x01

Request to get the basic device identification.

QModbusDeviceIdentification::RegularReadDeviceIdCode

0x02

Request to get the regular device identification.

QModbusDeviceIdentification::ExtendedReadDeviceIdCode

0x03

Request to get the extended device identification.

Individual access:

Constant

Value

Description

QModbusDeviceIdentification::IndividualReadDeviceIdCode

0x04

Request to get one specific identification object.

Member Function Documentation

 

QModbusDeviceIdentification::QModbusDeviceIdentification()

Constructs an invalid QModbusDeviceIdentification object.

QModbusDeviceIdentification::ConformityLevel QModbusDeviceIdentification::conformityLevel() const

Returns the identification conformity level of the device and type of supported access.

See Also

See also setConformityLevel()

bool QModbusDeviceIdentification::contains(uint objectId) const

Returns true if there is an item for the given objectId; otherwise false.

See Also

See also ObjectId

[static] QModbusDeviceIdentification QModbusDeviceIdentification::fromByteArray(const QByteArray &ba)

Converts the byte array ba to a QModbusDeviceIdentification object.

: The returned object might be empty or even invalid if some error occurs while processing the byte array.

See Also

See also isValid()

bool QModbusDeviceIdentification::insert(uint objectId, const QByteArray &value)

Inserts a new item with the objectId and a value of value. If there is already an item with the objectId, that item's value is replaced with value.

Returns true if the size of value is less than 245 bytes and the objectId is less then QModbusDeviceIdentification::UndefinedObjectId.

See Also

See also ObjectId

bool QModbusDeviceIdentification::isValid() const

Returns true if the device identification object is valid; otherwise false.

A device identification object is considered valid if ProductNameObjectId, ProductCodeObjectId and MajorMinorRevisionObjectId are set to a non-empty value. Still the object can contain valid object id's and associated data.

A default constructed device identification object is invalid.

QList<int> QModbusDeviceIdentification::objectIds() const

Returns a list containing all the object id's in the QModbusDeviceIdentification object in ascending order.

See Also

See also ObjectId

void QModbusDeviceIdentification::remove(uint objectId)

Removes the item for the given objectId.

See Also

See also ObjectId

void QModbusDeviceIdentification::setConformityLevel(QModbusDeviceIdentification::ConformityLevel level)

Sets the identification conformity level of the device and type of supported access to level.

See Also

See also conformityLevel()

QByteArray QModbusDeviceIdentification::value(uint objectId) const

Returns the value associated with the objectId. If there is no item with the objectId, the function returns a default-constructed value.

See Also

See also ObjectId

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+