Nombre
Classe représentant un nombre.
import { Byte , DB_ANY , DInt , DWord , Int , LInt , LReal , LWord , Real , SInt , UDInt , UInt , ULInt , USInt , Word } from "@adclz/plcdatabuilder/types" const MyByte = new Byte ({})const MyWord = new Word ({})
class Byte extends PlcNumberType {
override readonly Type = PrimitivePlcTypes.Byte
override readonly Offset: Offset = 1.0
declare DefaultValue: number;
constructor(Params: PlcNumberTypeParameters) {
super(Params)
this.Representation = Params.Representation || 16
this.DefaultValue = Params.DefaultValue ?? 0
}
}🏗️ Constructeur
BaseTypeParameters et PrimitivePlcParams.. Référez vous à la section
Base Commune.Pour les exemples qui vont suivrent, nous allons utiliser la classe Byte qui représente un octet.
Byte.prototype.constructor = (Params: PlcNumberTypeParameters) => ByteParams
interface PlcNumberTypeParameters extends PrimitivePlcParams {
DefaultValue?: number
Representation?: NumberRepresentation
}Paramètres de construction d'un octet.
DefaultValue
PlcNumberTypeParameters.DefaultValue = number | undefinedValeur par défaut de l'octet.
Tous les nombres ont une valeur par défaut de 0.
Vous pouvez définir cette valeur directement en Javascript en base 2 ou 16.
const MyByte = new Byte({Name:"MyByte", DefaultValue: 255})
const MyByte = new Byte({Name:"MyByte", DefaultValue: 0xFF})
Ces deux exemples aboutissent à la même valeur.
Representation
PlcNumberTypeParameters.Representation = number | undefinedPermet de changer la base d'affichage de la variable dans Tia Portal.
Toutes les représentations sont valables.
type NumberRepresentation =
2 | // Binaire
8 | // Octal
10 | // Décimal
16 // HéxaExemple
import {Byte } from "@adclz/plcdatabuilder/types" const MyByte = new Byte ({})const MyByte2 = new Byte ({ DefaultValue : 0, Representation : 16, ExternalAccessible : false, ExternalVisible : false, ExternalWritable : false})
Classes
Byte
Représente un octet.
import {Byte} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | 0 | 255 |
| 16 | 0x0 | 0xFF |
DB_ANY
Représente une variable DB_ANY qui est un pointeur permettant d'indexer un DB dans la mémoire.
import {DB_ANY} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | 0 | 65535 |
| 16 | 0x0 | 0xFFFF |
DInt
Représente un double entier signé.
import {DInt} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | –2147483648 | 2147483648 |
| 16 | -0x8000000 | 0x80000000 |
DWord
Représente un double mot.
import {DWord} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | 0 | 4294967296 |
| 16 | 0x0 | 0x100000000 |
Int
Représente un entier signé.
import {Int} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | -32768 | 32767 |
| 16 | -0x8000 | 0x7fff |
LInt
Représente un entier long signé.
import {LInt} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | -9223372036854775808 | 9223372036854775807 |
| 16 | -0x8000000000000000 | 0x7fffffffffffffff |
LReal
Représente un nombre flottant sur 64 bits.
import {LReal} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | -1,7976931348623158e308 | 1.7976931348623158e308 |
| 16 | - | - |
LWord
Représente un mot long.
import {LWord} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | 0 | 18446744073709551615 |
| 16 | 0x0 | 0xFFFFFFFFFFFFFFFF |
Real
Représente un nombre flottant sur 32 bits.
import {Real} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | -3,402823e38 | 3,402823e38 |
| 16 | - | - |
SInt
Représente un petit entier signé.
import {Real} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | -128 | 127 |
| 16 | -0x50 | 0x7F |
UDInt
Représente un entier double non signé.
import {UDInt} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | 0 | 4294967295 |
| 16 | 0x0 | 0xFFFFFFFF |
UInt
Représente un entier non signé.
import {UInt} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | 0 | 65535 |
| 16 | 0x0 | 0xFFFF |
ULInt
Représente un entier long non signé.
import {UInt} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | 0 | 18446744073709551615 |
| 16 | 0x0 | 0x10000000000000000 |
USInt
Représente un petit entier non signé.
import {USInt} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | 0 | 255 |
| 16 | 0x0 | 0xFF |
Word
Représente un mot.
import {Word} from "@adlcz/plcdatabuilder/types"Valeurs autorisés pour DefaultValue:
| Base | Min | Max |
|---|---|---|
| 2 | 0 | 255 |
| 16 | 0x0 | 0xFF |