0% acharam este documento útil (0 voto)
64 visualizações13 páginas

Manual ghdl32

O documento descreve três modelos de gaveteiros MGI para uso em pontos de venda: MGI-20AC com abertura vertical, MGI-40AC e MGI-2000AC com abertura horizontal. Detalha suas características mecânicas, elétricas e o software necessário para operá-los via porta serial de um computador.

Enviado por

Samuel
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
64 visualizações13 páginas

Manual ghdl32

O documento descreve três modelos de gaveteiros MGI para uso em pontos de venda: MGI-20AC com abertura vertical, MGI-40AC e MGI-2000AC com abertura horizontal. Detalha suas características mecânicas, elétricas e o software necessário para operá-los via porta serial de um computador.

Enviado por

Samuel
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 13

MÓDULOS

GAVETEIROS

MGI-20/MGI-40 AC
MGI 2000 AC

Manual de
Instruções

Leia com Atenção

Cód. Menno: 833020001 Rev.: 7


1. Apresentação

A linha tradicional de módulos gaveteiros da MENNO sempre foi direcionada para o uso
de PDV’s de grandes empresas que desenvolviam o software e o hardware necessários para
colocá-la em funcionamento.
As software houses de automação comercial usam, em sua grande maioria, micro-
computadores como PDV’s e desenvolvem somente o software, assim, não podiam utilizar as
gavetas da MENNO.
Para atender este mercado foi criada as gavetas MGI que ligam diretamente na porta
serial do computador não dependendo de nenhum hardware adicional.
A MENNO desenvolveu dois driver’s em linguagem “C” para o uso das gavetas que
devem ser utilizados como uma rotina que o programa irá chamar.
A MGI –2000 AC possui abertura horizonal e é apropriada para uso sob o teclado e o
monitor de video. Suas principais caracteristicas são:
• Base em aço pintado na cor bege.
• Compartimento de cheques não visíveis, sob niqueleira de moedas.
• Abertura horizontal manual ou elétrica.
• Fechadura de segurança.
• Sensor de posição da gaveta (aberta ou fechada).
• Módulo interno (niqueleira) em poliestireno de alto impacto com cinco divisões para
dinheiro e oito para moedas.
• Pés de borracha.

A MGI-40AC possui abertura horizontal e é apropriada para o uso sob o teclado e o


monitor de vídeo. Suas principais características são:
• Base em aço pintado na cor bege.
• Fenda para introdução de cheques, tíquetes ou outros documentos sem a necessidade de
abrir a gaveta.
• Compartimento de cheques não visíveis quando a gaveta está aberta.
• Abertura horizontal manual ou elétrica.
• Fechadura de segurança.
• Sensor de posição da gaveta (aberta ou fechada).
• Módulo interno (niqueleira) em poliestireno de alto impacto com cinco divisões para
dinheiro e oito para moedas.
• Pés de borracha.

A MGI-20AC é ideal para checkout e sua abertura é vertical. Suas principais


características são:
• Base em aço pintado na cor bege.
• Tampa em aço inox escovado.
• Fenda para introdução de cheques, tíquetes ou outros documentos sem a necessidade de
abrir a gaveta.
• Compartimento de cheques não visíveis quando a gaveta está aberta.
• Abertura vertical manual ou elétrica.
• Fechadura de segurança.
• Sensor de posição da tampa (aberta ou fechada).
• Pistão a ar na abertura da tampa.
• Proteção interna para entrada de líquidos.
1
• Módulo interno (niqueleira) em poliestireno de alto impacto com quatro divisões para
dinheiro e seis para moedas.
• Pés de borracha.
• Tampa para a niqueleira em aço pintado de preto com fechadura para transporte
(opcional).

2. Características Mecânicas

2.1 Peso

• Gaveta MGI-20AC: 4,47 Kg (sem a tampa da niqueleira).


• Gaveta MGI-40AC: 6,2 Kg
• Gaveta MGI-2000 AC: 4,9 Kg
• Embalagem: 0,6 Kg

2.2 Dimensões

Dimensões MGI-20AC MGI-40AC MGI-2000 AC


Largura 47.4 cm 40.6 cm 40.6 cm
Profundidade 23.7 cm 42.4 cm 42.4 cm
Altura 9.10 cm 11.5 cm 11.5 cm

3. Características Elétricas

3.1 Conexão Elétrica

As gavetas MGI possuem um conector fêmea DB9 padrão RS232. O cabo a ser utilizado
não deve ter os sinais DTR, DSR e RTS em curto.

Pinagem dos Conectores DB9 (Macho e


fêmea) Vista Frontal do Conector DB9 Macho
Pinagem dos Conectores DB25 (fêmea)
Pinagem Sinal
1 Terra Pinagem Sinal
4 DTR 1 Terra
5 GND 4 RTS
6 DSR 6 DSR
7 RTS 7 GND
2,3,8 e 9 Não Conectado 20 DTR
2,3,5,8 a 19,20 a 25 Não Conectado
54321
9876

Vista Frontal do Conector DB9 13 12 11 10 9 8 7 6 5 4 3 2 1


Fêmea 25 24 23 22 21 20 19 18 17 16 15 14

12345 Vista Frontal do Conector DB25 fêmea


6789

2
Observações:

1. Os sinais TX e RX não são utilizados e podem ou não estarem conectados.


2. O cabo deve possuir conector DB9 macho para conectar na gaveta e DB9 ou DB25
fêmea para conectar na porta serial.

3.2 Solenóides

Características MGI-20AC MGI-40AC MGI-2000 AC


Tensão Nominal 12V 12V 12V
Corrente Máxima 0.75A 0.75A 0.75 A
Resistência 16 Ω ± 10 % 16Ω ± 10 %. 16Ω ± 10 %.

Observação: A gaveta MGI-20AC possui dois solenóides com as características acima


ligados em paralelo.

3.3 Sensor de Posição

• Tipo: Micro-switch
• Tensão máxima: 250V
• Corrente máxima: 3A
• Lógica de Funcionamento:

Tampa da Gaveta DSR


Fechada 1
Aberta 0

Obs.: Para a MGI-20AC é necessário um ângulo de abertura maior que 3° o sensor de


posição indica que a gaveta está aberta (conforme desenho abaixo).

ângulo de abertura: 3°

4.0 Drive da Gaveta

O produto possui o disquete contendo os drive’s das gavetas MGI, para ambiente MSDOS,
MS Windows 95/98/ME/NT/2000/XP.

4.1 Ambiente DOS


3
No diretório MSDOS deste disquete contém:

• AGVMEN.EXE - drive executável desenvolvido em “C” para abertura da gaveta deve ser
usado como uma rotina externa a ser chamado pelo programa.
Caso a software house preferir é possível fazer seu próprio drive utilizando a tabela de
acionamento do anexo A e a tabela de posição da gaveta do capítulo 3.3.

4.1.1 AGVMEN

O programa executável agvmen.exe, permite inicializar, ler o status e disparar a abertura da


gaveta com ou sem leitura de status. Os parâmetros para chamada através de linha de comando
estão mostrados abaixo:

agvmen par1 par2 par3

par1: (BYTE)
1: canal serial COM1 (Endereço: 3F8).
2: canal serial COM2 (Endereço: 2F8).
3: canal serial COM3 (Endereço: 3E8).
4: canal serial COM4 (Endereço: 2F8).

par2: (BYTE)
A: abre gaveta leitura de status.
B: abre gaveta e lê status da gaveta.
I: inicializa e lê status da gaveta.
L: lê status da gaveta.

par3: (BOOLEAN)
S: sem temporização (por contada rotina que chama o agvmen.exe)
T: com temporização (tempo controlado pelo agvmen.exe)

exemplo: agvmen 1 I T <enter>


(inicializa a gaveta ligada a COM1)

Como o agvmen.exe é um programa que recebe dados da linha de comando, ele pode
receber estes mesmos dados de programas que o chamem como programa filho. Na chamada do
agvmen.exe podem retornar os seguintes valores:

-1: Não pode executar o agvmen.exe


0: Gaveta aberta.
1: Gaveta fechada.
2: Comando inválido.
3: Canal serial inválido.

A informação de gaveta aberta ou fechada é resultante da leitura do status da gaveta, com


exceção da chamada do agvmen com par2=A, que faz que o valor retornado seja sempre "0"
(gaveta aberta), independente do status da gaveta.
4
4.2 Ambiente Windows 32 bits

No diretório Windows deste disquete contem:

Ghdl32.dll
Ghdl32.lib
Libserial.dll
Libserial.lib

O ghdl32.dll possui uma função principal chamada DriverGavetaDll, a qual permite


inicializar (carga do capacitor que armazena energia para abertura da gaveta), ler status e
disparar a abertura da gaveta com ou sem leitura de status. Conforme parâmetros de chamada
abaixo.

4.2.1 Ghdl32.dll

DriverGavetaDll (p,f)
p: (integer).
1: canal serial COM1 (Endereço: 3F8).
2: canal serial COM1 (Endereço: 3F8).
3: canal serial COM1 (Endereço: 3F8).
4: canal serial COM1 (Endereço: 3F8).

f: (integer)
Gaveta_Inicializa: inicializa gaveta.abre.
Gaveta_Abre : abre gaveta.
Gaveta_Estado: lê status da gaveta.

exemplo: DriverGaveta (1,Gaveta_Inicializa) <enter>


( inicializa a gaveta ligada a COM1 ).

Na primeira vez que se usa uma determinada gaveta é obrigatório que se passe o comando
de inicialização.
Isto faz com que o capacitor esteja carregado para o disparo do solenóide na primeira
solicitação de abertura da gaveta.

A função da DLL pode retornar em um inteiro os seguintes valores:


GAVETA_OK = 0;
GAVETA_FECHADA = 1;
GAVETA_ABERTA = 2;
GAVETA_NAO_INICIALIZADA = -1;
GAVETA_PORTA_INVALIDA = -2;
GAVETA_FUNCAO_INVALIDA = -3.

A informação de gaveta aberta ou fechada é resultante da leitura do status da gaveta.


Segue também no diretório um programa exemplo com os fontes.

5
4.2.2 utilização da GHDL32.DLL com Borland Delphi
/////////////////////////////////////////////////////////
// MENNO EQUIPAMENTOS PARA ESCRITORIO LTDA //
/////////////////////////////////////////////////////////
// Código-fonte em Linguagem Delphi Object Pascal //
// Objetivo: Demonstração de utilização das funções //
// da DLL ghdl32.dll que é responsável pelo //
// acionamento da GAVETA MENNO //
// //
// Ultima revisão: 05/12/02 //
// Observações: A DLL ghdl32.dll e libserial.dll devem //
// estar no mesmo diretório do executável //
// ou nos seguintes diretórios //
// \Windows ou \Windows\system //
// \WinNT ou \WinNT\system //
/////////////////////////////////////////////////////////
// Este codigo-fonte pode ser copiado livremente //
// e incorporado a softwares que utilizem as //
// GAVETAS MENNO MGI //
/////////////////////////////////////////////////////////

unit Mgopen1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls,Ghdl32, Gauges;

type
TForm1 = class(TForm)
RadioGroup1: TRadioGroup;
Button3: TButton;
Label3: TLabel;
Label4: TLabel;
Timer1: TTimer;
Label8: TLabel;
GroupBox_Funcao: TGroupBox;
Button1: TButton;
Button2: TButton;
Button4: TButton;
GroupBox1: TGroupBox;
Label5: TLabel;
Label6: TLabel;
Gauge2: TGauge;
Gauge1: TGauge;
Label2: TLabel;
Label7: TLabel;
Image_Logo: TImage;
procedure RadioGroup1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);

private
{ Private declarations }
6
public
{ Public declarations }
end;

var
Form1: TForm1;
serial: integer;
funcao : integer;
implementation
Function GavetaConfigura (pulso,min : integer): integer; stdcall; external
'Ghdl32.dll';
Function DriverGaveta (p,f : integer) :integer; stdcall; external
'Ghdl32.dll';

{$R *.DFM}

procedure TForm1.RadioGroup1Click(Sender: TObject);


var
p1,m1: integer;

begin
serial := radiogroup1.itemindex + 1;
DriverGaveta (serial, Gaveta_inicializa);
p1:=150;
m1:=3500;
GavetaConfigura (p1,m1 );
timer1.enabled := true;
end;

procedure TForm1.Button3Click(Sender: TObject);


begin
Application.Terminate;
end;

procedure TForm1.Button1Click(Sender: TObject);


var
x: integer;
begin
Button1.Enabled := False;
DriverGaveta (serial,Gaveta_abre);
Button1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);


var
funcao : Integer;
begin
funcao := DriverGaveta(serial, GAVETA_ESTADO);
if funcao = GAVETA_FECHADA then
Label4.Caption := ' FECHADA '
else
Label4.Caption := ' ABERTA ';
end;

procedure TForm1.Button2Click(Sender: TObject);


var
quantidade : integer;
x : integer;
aberturas : integer;
begin
gauge1.progress := 0;
gauge2.progress := 0;
quantidade := 0;
7
aberturas := 0;

Timer1.Enabled := False;
Button1.Enabled := False;
Button2.Enabled := False;
Button3.Enabled := False;
Button4.Enabled := False;

while quantidade < 100 do


begin
Inc(quantidade);

funcao := DriverGaveta (serial,Gaveta_abre);


if funcao < 0 then
begin
gauge2.progress := gauge2.progress +1;
end;

x := 0;
while x < 20000000 do
begin
Inc(x);
end;
FUNCAO := DriverGaveta (serial, Gaveta_Estado);
if FUNCAO = 1 then
begin
Inc(aberturas);
gauge1.progress := gauge1.progress +1;
end;
end;

Timer1.Enabled := True;
Button1.Enabled := True;
Button2.Enabled := True;
Button3.Enabled := True;
Button4.Enabled := True;
end;

procedure TForm1.FormCreate(Sender: TObject);


begin
DriverGaveta (serial, Gaveta_inicializa);
end;

procedure TForm1.Button4Click(Sender: TObject);


begin
FUNCAO := DriverGaveta (serial, Gaveta_Estado);
if FUNCAO = 2 then
label4.caption := ' ABERTA '
else
label4.caption := ' FECHADA ';
end;

end.

8
4.2.3 Utilização da GHDL32.DLL com Microsoft Visual Basic

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'' MENNO EQUIPAMENTOS PARA ESCRITORIO LTDA ''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'' Código-fonte em Linguagem Microsoft Visual Basic ''
'' Objetivo: Demonstração de utilização das funções ''
'' da DLL ghdl32.dll que é responsável pelo ''
'' acionamento da GAVETA MENNO ''
'' Ultima revisão: 05/12/02 ''
'' Observações: A DLL ghdl32.dll e libserial.dll devem ''
'' estar no mesmo diretório do executável ''
'' ou nos seguintes diretórios ''
'' \Windows ou \Windows\system ''
'' \WinNT ou \WinNT\system ''
'' O projeto deve ser compilado em ''
'' "P-code" ''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'' Este codigo-fonte pode ser copiado livremente ''
'' e incorporado a softwares que utilizem as ''
'' GAVETAS MENNO MGI ''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Option Explicit

'DECLARACAO DAS FUNÇÕES DA GHDL32.DLL


'PARA INTERFACE COM A GAVETA MENNO MGI
Private Declare Function GavetaConfigura Lib "Ghdl32" (ByVal pulso As
Integer, ByVal min As Integer) As Long
Private Declare Function DriverGaveta Lib "Ghdl32" (ByVal p As Integer, ByVal
f As Integer) As Long

'Declaracao da variavel que indica a porta serial


Public serial As Integer

'Declaracao das variáveis para configuracao da GAVETA MENNO


Public m1, p1 As Integer

'Constantes de parametros da funcao DriverGaveta


Const GAVETA_INICIALIZA = 1
Const GAVETA_ABRE = 2
Const GAVETA_ESTADO = 3

Private Sub btn_aciona_Click()


Dim i, resp As Integer
DriverGaveta serial, GAVETA_ABRE
End Sub

Private Sub btn_sair_Click()


Unload Form_Principal
End
End Sub

Private Sub btn_status_Click()


Dim funcao As Integer
funcao = DriverGaveta(serial, GAVETA_ESTADO)

9
If funcao = 2 Then
Lbl_status.Caption = "Status da gaveta: ABERTA"
ElseIf funcao = 1 Then
Lbl_status.Caption = "Status da gaveta: FECHADA"
End If
End Sub

Private Sub Option1_Click()


serial = 1
DriverGaveta serial, GAVETA_INICIALIZA
p1 = 150
m1 = 3500
GavetaConfigura p1, m1
Timer_Status.Enabled = True
End Sub

Private Sub Option2_Click()


serial = 2
DriverGaveta serial, GAVETA_INICIALIZA
p1 = 150
m1 = 3500
GavetaConfigura p1, m1
Timer_Status.Enabled = True
End Sub

Private Sub Option3_Click()


serial = 3
DriverGaveta serial, GAVETA_INICIALIZA
p1 = 150
m1 = 3500
GavetaConfigura p1, m1
Timer_Status.Enabled = True
End Sub

Private Sub Option4_Click()


serial = 4
DriverGaveta serial, GAVETA_INICIALIZA
p1 = 150
m1 = 3500
GavetaConfigura p1, m1
Timer_Status.Enabled = True
End Sub

Private Sub Timer_Status_Timer()


Dim funcao As Integer

funcao = DriverGaveta(serial, GAVETA_ESTADO)

If funcao = 2 Then
Lbl_status.Caption = "Status da gaveta: ABERTA"
ElseIf funcao = 1 Then
Lbl_status.Caption = "Status da gaveta: FECHADA"
End If
End Sub

10
ANEXO A - Esquema Elétrico da Gaveta MGI

• Esquema Elétrico da Placa PGI rev. 1

CN1(Conector Externo DB9 fêmea) CN3 (Conector do sensor de


posição)
DTR NF
4 1
DSR COMUM
6 3
RTS NA
7 4
GND
5 Obs.: Pino 2 é o
polarizador.
Obs.: Os pinos 1, 2, 3, 8 e 9 D1 D2 D3
do CN1 não são utilizados.

R2 R1
120KΩ 3.9KΩ

T1 TIP 125
1
+ C1 2 CN2
4700uF D4 Conector dos
16V 3 Solenóides
4

OBS.: Todos os diodos (D1,D2,D3,D4) são 1N4007.

• Diagrama em Bloco

Gaveta MGI
Sensor de
Posição

Solenóide Esquerdo
Conector
Externo Solenóide Direito
11
Placa MGI rev. 1

Obs.: Na MGI-40AC utiliza somente um solenóide.

• Tabela para o acionamento das gavetas

DTR RTS Função


0 0 ---
0 1 Retorna o status
1 0 Aciona Gaveta
1 1 Carrega o capacitor

Observação: O sinal DSR retorna o status da gaveta conforme tabela do capítulo 3.3.

12

Você também pode gostar