Sur cette page

QModbusDeviceIdentification Class

La classe `QModbusDeviceIdentification` est une classe conteneur qui représente la description physique et fonctionnelle d'un serveur Modbus. En savoir plus...

En-tête : #include <QModbusDeviceIdentification>
CMake : find_package(Qt6 REQUIRED COMPONENTS SerialBus)
target_link_libraries(mytarget PRIVATE Qt6::SerialBus)
qmake : QT += serialbus

Types publics

enum ConformityLevel { BasicConformityLevel, RegularConformityLevel, ExtendedConformityLevel, BasicIndividualConformityLevel, RegularIndividualConformityLevel, ExtendedIndividualConformityLevel }
enum ObjectId { VendorNameObjectId, ProductCodeObjectId, MajorMinorRevisionObjectId, VendorUrlObjectId, ProductNameObjectId, …, UndefinedObjectId }
enum ReadDeviceIdCode { BasicReadDeviceIdCode, RegularReadDeviceIdCode, ExtendedReadDeviceIdCode, IndividualReadDeviceIdCode }

Fonctions publiques

QModbusDeviceIdentification()
QModbusDeviceIdentification::ConformityLevel conformityLevel() const
bool contains(uint objectId) const
bool insert(uint objectId, const QByteArray &value)
bool isValid() const
QList<int> objectIds() const
void remove(uint objectId)
void setConformityLevel(QModbusDeviceIdentification::ConformityLevel level)
QByteArray value(uint objectId) const

Membres publics statiques

QModbusDeviceIdentification fromByteArray(const QByteArray &ba)

Description détaillée

L'interface d'ObjectId des périphériques est modélisée comme un espace d'adressage composé d'un ensemble d'éléments de données adressables. Ces éléments de données sont appelés « objets » et sont identifiés par une .

Documentation sur les types de membres

enum QModbusDeviceIdentification::ConformityLevel

Définit le niveau de conformité en matière d'identification de l'appareil et le type d'accès pris en charge.

ConstanteValeurDescription
QModbusDeviceIdentification::BasicConformityLevel0x01Identification de base (accès en flux).
QModbusDeviceIdentification::RegularConformityLevel0x02Identification standard (accès en continu).
QModbusDeviceIdentification::ExtendedConformityLevel0x03Identification étendue (accès au flux).
QModbusDeviceIdentification::BasicIndividualConformityLevel0x81Identification de base (accès au flux et accès individuel).
QModbusDeviceIdentification::RegularIndividualConformityLevel0x82Identification standard (accès au flux et accès individuel).
QModbusDeviceIdentification::ExtendedIndividualConformityLevel0x83Identification étendue (accès au flux et accès individuel).

Voir également ReadDeviceIdCode.

enum QModbusDeviceIdentification::ObjectId

Cette énumération décrit les objets serveur possibles. L'interface comprend trois catégories d'objets :

Identification de base de l'appareil. Tous les objets de cette catégorie sont obligatoires.

ConstanteValeurDescription
QModbusDeviceIdentification::VendorNameObjectId0x00Nom du fabricant de l'appareil.
QModbusDeviceIdentification::ProductCodeObjectId0x01Le code produit du périphérique.
QModbusDeviceIdentification::MajorMinorRevisionObjectId0x02La numérotation de la version du produit.

Identification standard de l’appareil. Tous les objets de cette catégorie sont définis de manière standard et facultative.

ConstanteValeurDescription
QModbusDeviceIdentification::VendorUrlObjectId0x03L'URL du fournisseur de l'appareil.
QModbusDeviceIdentification::ProductNameObjectId0x04Le nom du produit correspondant à l’appareil.
QModbusDeviceIdentification::ModelNameObjectId0x05Le nom du modèle de l'appareil.
QModbusDeviceIdentification::UserApplicationNameObjectId0x06Nom de l'application utilisateur de l'appareil.

Plage réservée (c'est-à-dire ReservedObjectId >= ObjectId < ProductDependentObjectId). Ne pas utiliser.

ConstanteValeurDescription
QModbusDeviceIdentification::ReservedObjectId0x07Première valeur des identifiants d'objet réservés.

Identification étendue de l’appareil. Toutes ces données dépendent de l’appareil et sont facultatives.

ConstanteValeurDescription
QModbusDeviceIdentification::ProductDependentObjectId0x80Première valeur possible des identifiants propres au produit.
QModbusDeviceIdentification::UndefinedObjectId0x100Ne pas utiliser.

enum QModbusDeviceIdentification::ReadDeviceIdCode

Définit le type d'accès de la demande d'identification en lecture.

Accès en flux :

ConstanteValeurDescription
QModbusDeviceIdentification::BasicReadDeviceIdCode0x01Demande visant à obtenir l'identification de base du périphérique.
QModbusDeviceIdentification::RegularReadDeviceIdCode0x02Requête visant à obtenir l’identification standard de l’appareil.
QModbusDeviceIdentification::ExtendedReadDeviceIdCode0x03Requête permettant d'obtenir l'identification étendue de l'appareil.

Accès individuel :

ConstanteValeurDescription
QModbusDeviceIdentification::IndividualReadDeviceIdCode0x04Demande visant à obtenir un objet d’identification spécifique.

Documentation des fonctions membres

[constexpr noexcept default] QModbusDeviceIdentification::QModbusDeviceIdentification()

Crée un objet `QModbusDeviceIdentification` non valide.

QModbusDeviceIdentification::ConformityLevel QModbusDeviceIdentification::conformityLevel() const

Renvoie le niveau de conformité d'identification de l'appareil et le type d'accès pris en charge.

Voir également setConformityLevel().

bool QModbusDeviceIdentification::contains(uint objectId) const

Renvoie « true » s'il existe un élément pour l'objectId donné ; sinon, « false ».

Voir également ObjectId.

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

Convertit le tableau d'octets ba en un objet de type QModbusDeviceIdentification.

Remarque : L'objet renvoyé peut être vide, voire invalide, si une erreur survient lors du traitement du tableau d'octets.

Voir aussi isValid().

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

Insère un nouvel élément avec l'objectId et la valeur value. S'il existe déjà un élément avec l'objectId, la valeur de cet élément est remplacée par value.

Renvoie true si la taille de value est inférieure à 245 octets et si objectId est inférieure à QModbusDeviceIdentification::UndefinedObjectId.

Voir également ObjectId.

bool QModbusDeviceIdentification::isValid() const

Renvoie « true » si l'objet d'identification de l'appareil est valide ; sinon, « false ».

Un objet d’identification de périphérique est considéré comme valide si les propriétés ProductNameObjectId, ProductCodeObjectId et MajorMinorRevisionObjectId sont définies sur une valeur non vide. L’objet peut toutefois contenir des identifiants d’objet valides et des données associées.

Remarque : un objet d’identification de périphérique construit par défaut n’est pas valide.

QList<int> QModbusDeviceIdentification::objectIds() const

Renvoie une liste contenant tous les identifiants d'objets de l'objet ` QModbusDeviceIdentification `, classés par ordre croissant.

Voir également « ObjectId ».

void QModbusDeviceIdentification::remove(uint objectId)

Supprime l'élément correspondant à l'objectId.

Voir également ObjectId.

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

Définit le niveau de conformité d'identification de l'appareil et le type d'accès pris en charge sur level.

Voir également conformityLevel().

QByteArray QModbusDeviceIdentification::value(uint objectId) const

Renvoie la valeur associée à l'objectId. S'il n'existe aucun élément portant l'objectId, la fonction renvoie une valeur construite par défaut.

Voir également ObjectId.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.