QBalança - Qbitsistemas.qbit.com.br/portaria/QBalanca.pdf · passos de 1 a 7 são iguais, a única...
Transcript of QBalança - Qbitsistemas.qbit.com.br/portaria/QBalanca.pdf · passos de 1 a 7 são iguais, a única...
QBalança Biblioteca de comunicação com balanças
Este documento apresenta detalhadamente como utilizar recursos oferecidos pela biblioteca de comunicação com balanças, produzida especialmente pela Qbit Informática para facilitar o dia-a-dia de nossos clientes.
Versão 1.5.6.0
1
Sumário
1. Diagrama de Classe ....................................................................................................... 2
2. Parâmetros ..................................................................................................................... 2
4. Requisitos mínimos ........................................................................................................ 4
5. Exemplos ........................................................................................................................ 4
6. Passo a passo em .NET ................................................................................................. 5
7. Passo a passo em Delphi ............................................................................................... 9
8. Implementando em C#.NET.......................................................................................... 15
8.1 Configurando ......................................................................................................... 15
8.1.1 IP – Internet Protocol ...................................................................................... 15
8.1.2 Conexão Serial ............................................................................................... 15
8.2 Pesar ..................................................................................................................... 15
8.3 Monitorar ............................................................................................................... 15
8.4 Descobrir o nome do protocolo .............................................................................. 16
9. Implementando em VB.NET ......................................................................................... 16
9.1 Configurando ......................................................................................................... 16
9.1.1 IP – Internet Protocol ...................................................................................... 16
9.1.2 Conexão Serial ............................................................................................... 16
9.2 Pesar ..................................................................................................................... 16
9.3 Monitorar ............................................................................................................... 17
9.4 Descobrir o nome do protocolo .............................................................................. 17
10. Implementando em Delphi 2006 ................................................................................ 17
10.1 Configurando ......................................................................................................... 17
10.1.1 IP – Internet Protocol ...................................................................................... 17
10.1.2 Conexão Serial ............................................................................................... 18
10.2 Pesar ..................................................................................................................... 18
10.3 Monitorar ............................................................................................................... 18
10.4 Descobrir o nome do protocolo .............................................................................. 19
11. Exceções .................................................................................................................. 19
12. Contato ..................................................................................................................... 20
Site ................................................................................................................................... 20
E-mails ............................................................................................................................. 20
Telefones ......................................................................................................................... 20
Endereço .......................................................................................................................... 20
2
1. Diagrama de Classe
2. Parâmetros
Parâmetro Tipo de dado Descrição
_BalancaIP String Número do IP (Internet Protocol) da balança.
_Porta Integer Número da porta do serviço de comunicação referente ao IP informado no parâmetro anterior.
_NomePorta Integer Nome da porta COM em qual a balança está conectada em seu computador.
_BitsSegundos Integer
Velocidade na qual a balança consegue transmitir dados. A taxa de transmissão de dados é o número de eventos, ou mudanças de sinal, que ocorrem em um segundo – e não o número de bits transmitidos por segundo (bps).
_BitsDados Integer Bits de dados pode ser 5, 6, 7 ou 8. O valor padrão é 8.
Paridade (OPCIONAL) Integer
0 – None 1 – Odd 2 – Even 3 – Mark
3
4 – Space Valor padrão: 0
ModoVerificacaoSoquete Integer
Modo para verificar se o soquete está conectado quando configuração for por IP: 0 – Poll 1 – Envio de zero byte Valor Padrão: 0
_Protocolo String Os protocolos de comunicação suportados pela QBalanca.dll, sendo eles: BJ750, T21, TCA, 02C, SP6000 e E24.
_CNPJ String CNPJ ou CPF do usuário
3. Métodos
• Conectar
Método opcional, indicado quando se está trabalhando com laços de repetições. Inicia a
comunicação com a balança e aguarda o recebimento dos dados da pesagem.
• Configurar por IP
Recebe os parâmetros _BalancaIP, _Porta e _ModoVerificacaoSoquete (Opcional) para
configurar a comunicação TCP/IP com a balança.
• Configurar por Serial
Recebe os parâmetros _NomePorta, _BitsSegundos, _BitsDados e _Paridade (Opcional)
para configurar a comunicação serial com a balança.
• Desconectar
Método opcional, indicado quando se está trabalhando com laços de repetições. Encerra a
comunicação com a balança.
• Monitorar
Verifica se o peso retornado da balança é maior do que zero.
Recebe o parâmetro _Protocolo para configuração da comunicação.
Retorna TRUE caso seja verdadeira a condição, caso contrário FALSE.
• Pesar
4
Retorna o valor do peso aferido, após a estabilização do peso.
Recebe o parâmetro _Protocolo para configuração da comunicação.
Retorna um Double referente ao valor da pesagem.
• Retornar Protocolo
A partir dos dados recebidos da balança, tenta identificar o protocolo de comunicação
utilizado. Sendo os possíveis protocolos: BJ750, T21, TCA, 02C, SP6000 e E24. Caso não
seja possível identificar o protocolo o retorno será uma String vazia.
4. Requisitos mínimos
• Microsoft .NET Framework 4
5. Exemplos
Antes de começarmos com os exemplos, primeiro siga os seguintes passos:
Extraia o arquivo “QBalanca.zip”, e clique duas vezes em cima do arquivo
“registraDLL_QBalanca.bat” como demonstrado a seguir.
E então a seguinte mensagem será apresentada.
5
Pronto! Agora você pode prosseguir com o exemplo da sua respectiva linguagem.
Os exemplos a seguir foram desenvolvidos em um projeto do tipo Console Application
utilizando a IDE Microsoft Visual Studio 2013, usando Framework 4.5.
6. Passo a passo em .NET
Os passos a seguir demonstram com adicionar a QBalanca.dll, ao seu projeto seja
ele escrito em C#.NET ou VB.NET.
• Passo 1
Abra o Visual Studio e clique “New Project”. Caso essa página não apareça, vá
no menu superior File > New Project.
6
• Passo 2
No menu esquerdo clique em Installed > Templates > Visual C# > Windows
Desktop. Então, selecione “Console Application” no menu central.
Nomeie o projeto e a solução como preferir.
• Passo 3
Após criado o projeto, coloque o arquivo QBalanca.dll na pasta
Documents\Visual Studio 2013\Projects\NomeDaSolucao\NomeDoProjeto\bin\Debug\
O caminho especificado acima pode ser diferente caso esteja utilizando uma edição
do Visual Studio diferente da 2013.
• Passo 4
Vá em “Solution Explorer”, por padrão essa aba fica do lado direito, mas caso ela
não esteja visível, a mesma pode ser encontrada no menu superior View > Solution
Explorer.
Na aba Solution Explorer, clique com botão direito do mouse em cima de
References, então em seguida clique em “Add Reference...”
Caso não esteja conseguindo visualizar References, clique em cima da setinha que
fica ao lado esquerdo do nome do projeto que você acabou de criar. Isso fará que
sejam mostrados os arquivos daquele projeto.
7
• Passo 5
Na tela que acabou de abrir, clique no botão “Browse”.
• Passo 6
Na janela que abriu, localize o arquivo QBalanca.dll no diretório onde tínhamos
colocado.
Por padrão o caminho seria este: C:\Users\NomeDoUsuario\Documents\Visual
Studio 2013\Projects\NomeDaSolucao\NomeDoProjeto\bin\Debug
8
Sendo que em NomeDoUsuario, NomeDaSolucao e NomeDoProjeto devem ser
trocados pelo seus respectivos nomes, utilizados em seu computador.
Depois de localizado o arquivo QBalanca.dll, clique em “Add” e em seguida você
retornará a tela anterior, então clique em “OK”.
• Passo 7
Caso você tenha seguido corretamente os passos anteriores, você visualizará que a
referência QBalanca foi adicionada ao projeto.
Como apresentado na imagem abaixo.
9
• Passo 8
Clique no arquivo “Program.cs”, na janela Code, após aos usings que vieram por
padrão. Escreva a seguinte linha que se encontra em destaque na imagem abaixo.
Pronto!
Agora você pode utilizar QBalanca.dll, para desenvolver suas aplicações com
balanças. Para adicionar QBalanca.dll ao projeto cuja linguagem seja VB.NET, os
passos de 1 a 7 são iguais, a única diferença fica a respeito ao último passo que ao
invés de escrever “using QBalanca;” você escreveria “imports QBalanca”.
7. Passo a passo em Delphi
Os passos a seguir demonstram com adicionar a QBalanca.dll ao seu projeto Delphi,
neste exemplo foi utilizado a IDE da Borland para o Windows.
• Passo 1
Com seu projeto aberto, vá ao menu superior Component > Import Component.
10
• Passo 2
Selecione a primeira opção “Import a Type Library” e clique no botão Next, na
janela que acaba de aparecer “Import Component”.
• Passo 3
Clique no botão Add.
11
• Passo 4
Selecione o arquivo QBalanca.tlb no local que você tenha o salvo anteriormente,
então clique no botão Abrir.
12
• Passo 5
Caso você tenha seguido corretamente os passos anteriores, QBalanca estará
visível na listagem mostrada na tela abaixo. Caso contrário, realize novamente os
passos anteriores.
Selecione QBalanca e clique no botão Next.
13
• Passo 6
Em “Unit Dir Name” selecione o diretório aonde foi criado sua aplicação. Em seguida
clique no botão Next.
14
• Passo 7
Selecione a primeira opção “Create Unit” e clique no botão Finish.
15
Pronto!
Agora você pode utilizar QBalanca.dll, para desenvolver suas aplicações com balanças.
8. Implementando em C#.NET
8.1 Configurando
As duas seções a seguir exemplificam como configurar o tipo de comunicação.
8.1.1 IP – Internet Protocol
QBalanca.IQBalanca _MinhaBalanca = New QBalanca.QBalanca(); _MinhaBalanca.ConfigurarPorIP("192.168.1.50", 4000);
8.1.2 Conexão Serial
QBalanca.IQBalanca _MinhaBalanca = New QBalanca.QBalanca(); _MinhaBalanca.ConfigurarPorSerial("COM1", 9600, 8);
8.2 Pesar private void Pesar() { IQBalanca _MinhaBalanca = new QBalanca.QBalanca(); _MinhaBalanca.ConfigurarPorIP("192.168.1.50", 4000); double _Peso = 0.0; _Peso = _MinhaBalanca.Pesar("E24", INFORME O SEU CNPJ OU CPF AQUI); if (_MinhaBalanca.MensagemErro != "") { Console.WriteLine(_MinhaBalanca.MensagemErro); } else { Console.WriteLine(_Peso); } }
8.3 Monitorar private void Monitorar() { IQBalanca _MinhaBalanca = new QBalanca.QBalanca(); _MinhaBalanca.ConfigurarPorIP("192.168.1.50", 4000); bool _EmPesagem = false; _EmPesagem = _MinhaBalanca.Monitorar("E24");
16
if (_MinhaBalanca.MensagemErro != "") { Console.WriteLine(_MinhaBalanca.MensagemErro); } else { if (_EmPesagem) { Console.WriteLine("Tem alguma coisa sendo pesada!"); } else { Console.WriteLine("Não há nada sendo pesado agora!"); } }
}
8.4 Descobrir o nome do protocolo ATENÇÃO: Esse método pode demorar algum tempo para retornar o protocolo, portanto não é aconselhado a utilização nos métodos Monitorar e Pesar. private void RetornarProtocolo() { IQBalanca _MinhaBalanca = new QBalanca.QBalanca(); _MinhaBalanca.ConfigurarPorIP("192.168.1.50", 4000); Console.WriteLine("Meu protocolo é : {0}", _MinhaBalanca.RetornarProtocolo()); }
9. Implementando em VB.NET
9.1 Configurando
As duas seções a seguir exemplificam como configurar o tipo de comunicação.
9.1.1 IP – Internet Protocol
Dim _MinhaBalanca As IQBalanca = New QBalanca.QBalanca _MinhaBalanca.ConfigurarPorIP("192.168.1.50", 4000)
9.1.2 Conexão Serial Dim _MinhaBalanca As IQBalanca = New QBalanca.QBalanca _MinhaBalanca.ConfigurarPorSerial("COM1", 9600, 8)
9.2 Pesar Private Sub Pesar() Dim _MinhaBalanca As IQBalanca = New QBalanca.QBalanca _MinhaBalanca.ConfigurarPorIP("192.168.1.50", 4000) Dim _Peso As Double = 0.0
17
_Peso = _MinhaBalanca.Pesar("E24, INFORME O SEU CNPJ AQUI) If _MinhaBalanca.MensagemErro <> "" Then Console.WriteLine(_MinhaBalanca.MensagemErro) Else Console.WriteLine(_Peso) End If End Sub
9.3 Monitorar
Private Sub Monitorar() Dim _MinhaBalanca As IQBalanca = New QBalanca.QBalanca _MinhaBalanca.ConfigurarPorIP("192.168.1.50", 4000) Dim _EmPesagem As Boolean = False _EmPesagem = _MinhaBalanca.Monitorar("E24") If _MinhaBalanca.MensagemErro <> "" Then Console.WriteLine(_MinhaBalanca.MensagemErro) Else If _EmPesagem Then Console.WriteLine("Tem alguma coisa sendo pesada!") Else Console.WriteLine("Não há nada sendo pesado agora!") End If End If End Sub
9.4 Descobrir o nome do protocolo Private Sub RetornarProcotolo() ATENÇÃO: Esse método pode demorar algum tempo para retornar o protocolo, portanto não é aconselhado a utilização nos métodos Monitorar e Pesar. Dim _MinhaBalanca As IQBalanca = New QBalanca.QBalanca _MinhaBalanca.ConfigurarPorIP("192.168.1.50", 4000) Console.WriteLine("Meu protocolo é : {0}", _MinhaBalanca.RetornarProtocolo) End Sub
10. Implementando em Delphi 2006
10.1 Configurando
As duas seções a seguir exemplificam como configurar o tipo de comunicação.
10.1.1 IP – Internet Protocol
18
_MinhaBalanca := CoQBalanca.Create;
_MinhaBalanca.ConfigurarPorIP('192.168.1.50', 4000);
10.1.2 Conexão Serial
_MinhaBalanca := CoQBalanca.Create;
_MinhaBalanca.ConfigurarPorSerial('COM1',9600,8);
10.2 Pesar
procedure TForm1.btnPesarClick(Sender: TObject);
var
_MinhaBalanca: QBalanca;
begin
_MinhaBalanca := CoQBalanca.Create;
_MinhaBalanca.ConfigurarPorIP('192.168.1.50', 4000);
txtResultado.Text := FloatToStr(_MinhaBalanca.Pesar('E24', INFORME
O SEU CNPJ AQUI));
if _MinhaBalanca.MensagemErro <> '' then
ShowMessage(Copy(_MinhaBalanca.MensagemErro, Pos('|',
_MinhaBalanca.MensagemErro) + 1,
Length(_MinhaBalanca.MensagemErro)));
end;
10.3 Monitorar
procedure TForm1.btnMonitorarClick(Sender: TObject);
var
_MinhaBalanca: QBalanca;
begin
_MinhaBalanca := CoQBalanca.Create;
_MinhaBalanca.ConfigurarPorIP('192.168.1.50', 4000);
while _MinhaBalanca.Monitorar('E24') do
begin
txtResultado.Text := 'Com veículo na balança';
Application.ProcessMessages;
end;
txtResultado.Text := 'Sem veículo na balança';
19
if _MinhaBalanca.MensagemErro <> '' then
ShowMessage(Copy(_MinhaBalanca.MensagemErro, Pos('|',
_MinhaBalanca.MensagemErro) + 1,
Length(_MinhaBalanca.MensagemErro)));
end;
10.4 Descobrir o nome do protocolo
ATENÇÃO: Esse método pode demorar algum tempo para retornar o protocolo,
portanto não é aconselhado a utilização nos métodos Monitorar e Pesar.
procedure TForm1.btnRetornarProtocoloClick(Sender: TObject);
var
_MinhaBalanca: QBalanca;
begin
_MinhaBalanca := CoQBalanca.Create;
_MinhaBalanca.ConfigurarPorIP('192.168.1.50', 4000);
txtResultado.Text := _MinhaBalanca.RetornarProtocolo;
if _MinhaBalanca.MensagemErro <> '' then
ShowMessage(Copy(_MinhaBalanca.MensagemErro, Pos('|',
_MinhaBalanca.MensagemErro) + 1,
Length(_MinhaBalanca.MensagemErro)));
end;
11. Exceções
Tabela de Exceções
Código Descrição
1 Protocolo informado não é válido!
2 Nome da porta COM não informado!
3 Quantidade de bits por segundo não informado!
4 Quantidade de bits de dados não informado!
5 Endereço IP da balança não informado!
6 Número da porta inválido! O número da porta deve ser um inteiro entre 1 e 65535.
7 Erro na tentativa de comunicação TCP/IP com a balança!
8 Erro na tentativa de comunicação serial com a balança!
9 Erro na tentativa de fechar a conexão com a balança!
10 Tempo limite atingido!
999 Erro desconhecido!
20
Todas as exceções são escritas na propriedade MensagemErro da seguinte forma:
Código + “|”+Descrição
Exemplo:
7|Erro na tentativa de comunicação TCP/IP com a balança!
12. Contato
Site
www.qbit.com.br
E-mails
Serviço de atendimento a novos clientes e parceiros: [email protected]
Departamento de cobranças: [email protected]
Suporte técnico: [email protected]
Diretor: [email protected]
Telefones
(11) 4815-7132
(11) 3964-7187
Endereço
Rua Professor Emilio Mazzola, 674
Jundiaí - São Paulo
CEP: 13211-689