Pular para o conteúdo principal

API

Superfície pública principal do SDBalanca.

BalancaFactory

public static IBalanca Create(BalancaOptions options)

Cria a implementação adequada ao Protocolo. Protocolos Auto, ToledoP03 e ToledoPrt1 usam ToledoDriver. Demais valores do enum lançam NotSupportedException. Valor inválido de enum lança ArgumentOutOfRangeException.

IBalanca

MembroDescrição
Fabricante / ModeloIdentificação do driver
ConectadaEspelha o estado de IComunicacao
ConectarAsync / DesconectarAsyncCiclo de conexão
LerPesoAsyncLê uma linha e retorna PesoCapturado
ZeroAsyncZera a balança (padrão: NotSupportedException)
PesoAlteradoDisparado a cada leitura processada
PesoEstavelDisparado quando PesoCapturado.Estavel é true
DisposeLibera a comunicação

BalancaOptions

PropriedadeTipoPadrãoUso
TipoConexaoTipoConexaoSerial (0)Serial, Tcp ou Bluetooth
PortaSerialstring?nullObrigatória na serial
BaudRateint9600Serial
ParidadeParityNoneSerial
DataBitsint8Serial
StopBitsStopBitsOneSerial
IPstring?nullObrigatório no TCP
PortaTcpint?nullObrigatória e > 0 no TCP
ProtocoloProtocoloBalancaAuto (0)Seleção do driver
TimeoutMsint3000Timeout de I/O
NewLinestring"\r\n"Delimitador de linha

Enums

TipoConexao

Serial · Tcp · Bluetooth (Bluetooth não implementado)

ProtocoloBalanca

ValorStatus
Auto, ToledoP03, ToledoPrt1Implementados (ToledoDriver)
Alfa, Digitron, Saturno, Weightech, Confiatec, ModbusDeclarados, ainda sem driver

PesoCapturado

PropriedadeDescrição
Peso / TaraValores decimais
EstavelPeso estabilizado
Sobrecarga / PesoNegativo / EmMovimento / ZeroFlags de estado
DataHoraMomento da captura
PesoTextoFormatação auxiliar ("{Peso:N0} kg")

IComunicacao (transporte)

Usada internamente pelos drivers:

MembroDescrição
ConectadaEstado do canal
ConectarAsync / DesconectarAsyncAbre/fecha o canal
ReadAsyncLê até o delimitador NewLine
WriteAsyncEnvia comando em ASCII

Exceções comuns

SituaçãoExceção
Protocolo sem driverNotSupportedException
BluetoothNotSupportedException
PortaSerial ausenteArgumentException
IP / PortaTcp inválidosArgumentException
Leitura sem conexãoInvalidOperationException
ZeroAsync sem suporteNotSupportedException
Timeout TCP na leituraTimeoutException