gabriel amaro da luz e juliana lisboa dos santos … · controle de estoque e relatórios. o...

83
UNIVERSIDADE POSITIVO NÚCLEO DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA DA COMPUTAÇÃO GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS Sistema de Automação de Estoque Trabalho de Conclusão de Curso. Prof. M. Sc. Marcelo Mikosz Gonçalves Orientador Curitiba, dezembro de 2011

Upload: buithuan

Post on 09-Dec-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

UNIVERSIDADE POSITIVO

NÚCLEO DE CIÊNCIAS EXATAS E TECNOLÓGICAS

CURSO DE ENGENHARIA DA COMPUTAÇÃO

GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS

Sistema de Automação de Estoque

Trabalho de Conclusão de Curso.

Prof. M. Sc. Marcelo Mikosz Gonçalves Orientador

Curitiba, dezembro de 2011

Page 2: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

UNIVERSIDADE POSITIVO

Reitor: José Pio Martins

Pró-Reitora Acadêmica: Prof. Marcia Sebastiani

Coordenador do Curso de Engenharia da Computação: Prof. Leandro

Henrique de Souza

Page 3: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

i

TERMO DE APROVAÇÃO

Gabriel Amaro da Luz e Juliana Lisboa dos Santos

Sistema de Automação de Estoque

Monografia aprovada como requisito parcial a conclusão do curso

Engenharia da Computação da Universidade Positivo, pela seguinte banca

examinadora:

Prof. Marcelo Mikosz Gonçalves (Orientador)

Prof. Alessandro Brawerman (Membro)

Prof. Mauricio Perretto (Membro)

Prof. Giancarlo de França Aguiar (Membro)

Curitiba, dezembro de 2011

Page 4: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

ii

AGRADECIMENTOS

Juliana Lisboa dos Santos

Primeiramente gostaria de agradecer a Deus, pois sem ele nada disso seria

possível. Agradeço e dedico este projeto a minha mãe que esteve ao meu lado

incondicionalmente em todos os momentos. Agradeço aos meus colegas de classe

que sempre me ajudaram e contribuíram de alguma forma para a realização desse

projeto. Agradeço a todos os professores, pois com seus ensinamentos foi possível

realizar esse projeto. Agradeço em especial o professor Marcelo Mikosz, por todo o

suporte prestado durante o desenvolvimento desse projeto, por ter sido

compreensivo e nos ajudar a concluir mais uma etapa importante em nossas vidas.

Gabriel Amaro da Luz

Gostaria de agradecer primeiramente a minha namorada, que me apoiou e

me aturou enquanto todo o projeto era desenvolvido e ela era deixada em segundo

plano. Aos meus pais que me apoiaram durante todo o curso e toda a trajetória da

minha vida. A todos os colegas e amigos que de alguma forma ajudaram no

desenvolvimento desse projeto. Agradeço ao professor Marcelo Mikosz, nosso

orientador, pela grande ideia que foi esse projeto e pelo apoio que tive dele durante

o projeto. Obrigado a todos que de alguma forma sujaram a mão com as nossas

roldanas e motores sujos.

Agradecimentos gerais:

Gostaríamos de agradecer o Sr. Ricardo Fontanari de Carvalho, por toda

ajuda prestada na confecção da parte mecânica do projeto, pois sem ele nada disso

seria possível, agradecemos também nosso amigo Henrique que por várias vezes

nos ajudou a corrigir erros do software, sua ajuda foi imprescindível. Agradecemos

também o Jagher que nos ajudou a confeccionar as primeiras placas do projeto.

Page 5: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

iii

SUMÁRIO

1. INTRODUÇÃO .................................................................................................................................. 1

2. FUNDAMENTAÇÃO TEÓRICA ........................................................................................................... 3

2.1 Motor ...................................................................................................................................... 3

2.1.1 Motor Corrente Contínua .................................................................................................... 3

2.2 Microntrolador ........................................................................................................................ 5

2.3 Microcontrolador PIC16F877A ................................................................................................ 8

2.4 Chaves de Fim de Curso ........................................................................................................ 10

2.5 Optoacoplador ...................................................................................................................... 11

2.6 Encoder .................................................................................................................................. 12

3. TRABALHOS RELACIONADOS ......................................................................................................... 14

3.1 Estoque Automatizado Via Comando De Voz ....................................................................... 14

3.2 Estacionamento Automatizado ............................................................................................. 14

4. ANÁLISE DE REQUISITOS ............................................................................................................... 15

4.1 Funcionalidade ...................................................................................................................... 15

4.2 Confiabilidade ....................................................................................................................... 15

4.3 Eficiência ............................................................................................................................... 16

4.4 Usabilidade ............................................................................................................................ 16

4.5 Mantenibilidade .................................................................................................................... 16

5. ESPECIFICAÇÃO E REALIZAÇÃO DOS CASOS DE USO ..................................................................... 18

5.1 UC01 – Fornecedor ................................................................................................................ 18

5.1.1 Cadastrar Fornecedor ........................................................................................................ 20

5.1.2 Procurar Fornecedor ......................................................................................................... 21

5.1.3 Excluir Fornecedor ............................................................................................................. 22

5.1.4 Alterar Fornecedor ............................................................................................................ 23

5.2 UC02 – Autenticar no Sistema .............................................................................................. 25

5.2.1 Autenticar no Sistema ....................................................................................................... 26

5.3 UC02 – Entrada / Saída Estoque ............................................................................................ 26

5.3.1 Retirar Item ....................................................................................................................... 27

5.3.2 Entrada Item ...................................................................................................................... 28

Page 6: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

iv

5.4 UC01 – Usuário ...................................................................................................................... 29

5.4.1 Cadastrar Usuário .............................................................................................................. 30

5.4.2 Excluir Usuário ................................................................................................................... 31

5.4.3 Alterar Usuário .................................................................................................................. 32

5.4.4 Pesquisar Usuário .............................................................................................................. 33

5.5 Diagrama de Casos de Uso Geral do Sistema ........................................................................ 35

6. ESPECIFICAÇÃO DO PROJETO ........................................................................................................ 36

6.1 Visão Geral do Projeto .......................................................................................................... 36

6.2 Propriedades do Hardware ................................................................................................... 37

6.2.1 Interface com o Computador ............................................................................................ 37

6.2.2 Optoacopladores ............................................................................................................... 38

6.2.3 Chaves de Fim de Curso .................................................................................................... 40

6.2.4 Conversor de Nível MAX232 ............................................................................................. 40

6.2.5 Encoder .............................................................................................................................. 42

6.2.6 Circuito Driver dos Motores .............................................................................................. 42

6.3 Propriedades do Software ..................................................................................................... 45

6.3.1 Software de Interface com o Usuário ............................................................................... 47

6.4 Propriedades do Firmware .................................................................................................... 48

7. VALIDAÇÃO E RESULTADOS ........................................................................................................... 50

7.1 Testes de Hardware .............................................................................................................. 50

7.2 Testes de Software ................................................................................................................ 53

CONCLUSÃO .......................................................................................................................................... 58

REFERÊNCIAS BIBLIOGRÁFICAS ............................................................................................................. 60

ANEXO A – CODIGO DO FIRMWARE...................................................................................................... 62

Page 7: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

v

LISTA DE ABREVIATURAS E SIGLAS

PC Personal Computer

USB Universal Serial Bus

UP Universidade Positivo

GND Ground

PIC Peripheral Integrated Controller

LED Light-emitting diode

MHz Megahertz

I/O Input/Output

DC Direct Current

CC Corrente Continua

A Ampere

V Volts

W Watts

A/D Analógico para Digital

RPM Rotações por minuto

CPU Central Process Unit

R/W Read/Write

CTC Counter Terrorist Unit

RS232 Recommended Standard 232

TTL Transistor-Transistor Logic

MAX232 Circuito integrado conversor de sinais

r11ok Comando enviado pelo software para o PIC(retirar posição x1y1

ok)

Page 8: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

vi

d11ok Comando enviado pelo software para o PIC(devolver posição

x1y1 ok)

CI Circuito Integrado

NA Normalmente Aberto

NF Normalmente Fechado

Page 9: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

vii

LISTA DE FIGURAS

Figura 1 - Funcionamento do motor CC .................................................................................................. 4

Figura 2 - Motor CC com caixa de redução ............................................................................................. 5

Figura 3 - Esquema de um microcontrolador com os seus elementos básicos e ligações internas ....... 7

Figura 4 - Pinagem do microcontrolador PIC16F877A ............................................................................ 9

Figura 5 – Chave de fim de curso .......................................................................................................... 10

Figura 6 - Estrutura interna de uma chave de fim de curso .................................................................. 11

Figura 7 - Diagrama interno do optoacoplador 4N25 ........................................................................... 12

Figura 8 - Estrutura do enconder .......................................................................................................... 13

Figura 9 – Caso de uso fornecedor ........................................................................................................ 18

Figura 10 – Autenticação do usuário no sistema .................................................................................. 25

Figura 11 – Entrada e saída do estoque ................................................................................................ 26

Figura 12 – Diagrama do usuário .......................................................................................................... 29

Figura 13 – Diagrama de casos de uso geral ......................................................................................... 35

Figura 14 - Representação gráfica do projeto ....................................................................................... 37

Figura 15 - Circuito completo do sistema ............................................................................................. 38

Figura 16 - Esquemático entre optoacopladores 4N25 e PIC16F877 ................................................... 39

Figura 17 - Conexão das chaves de fim de curso com o PIC ................................................................. 40

Figura 18 - Conversor de nível Max232 ................................................................................................. 41

Figura 19 - Esquemático encoder e PIC ................................................................................................. 42

Figura 20 - Circuito de acionamento dos motores ................................................................................ 44

Figura 21 - Diagrama em blocos dos softwares e firmwares contidos no projeto ............................... 46

Figura 22 - Modelo entidade relacionamento ...................................................................................... 47

Figura 23 – Fluxograma firmware ......................................................................................................... 49

Figura 24 – Placas de relés e prateleira MDF ........................................................................................ 52

Figura 25 – Montagem das placas, cabos e fonte ................................................................................. 52

Figura 26 – Produto final ....................................................................................................................... 53

Figura 27 – Tela de login ....................................................................................................................... 54

Figura 28 – Cadastro de usuários .......................................................................................................... 55

Figura 29 – Cadastro de fornecedores .................................................................................................. 55

Figura 30 – Cadastro de produtos ......................................................................................................... 56

Figura 31 – Gerador de relatórios ......................................................................................................... 56

Figura 32 – Entrada de produtos ........................................................................................................... 57

Figura 33 – Saída de produtos ............................................................................................................... 57

Page 10: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

viii

RESUMO

O objetivo deste trabalho consiste no desenvolvimento de um sistema de

controle de estoque automatizado. O objetivo foi desenvolver um hardware

necessário para realizar a busca e a entrega dos produtos e um software

responsável por gerenciar os cadastros de produtos, cadastro de fornecedores,

controle de estoque e relatórios. O sistema possui um elevador controlado por um

microcontrolador PIC para a retirada e entrega de ferramentas. O usuário faz a

solicitação através de um microcomputador que envia o pedido ao elevador, o

mesmo se movimenta para buscar a ferramenta desejada. A retirada e a entrega são

realizadas com a ajuda de dois motores CC que fazem a movimentação do elevador

nas coordenadas x e y. Após retirar a ferramenta da prateleira, a mesma é

depositada em uma esteira. Depois da entrega do objeto na esteira, essa inicia seu

movimento para levar a ferramenta em direção ao usuário. A esteira é composta por

chaves de fim de curso em suas extremidades que controlam seu inicio e parada.

Palavras-Chave: PIC, microcontrolador, string.

Page 11: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

ix

ABSTRACT

The objective of this work is to develop a system of automated inventory

control. The ultimate goal is to develop the hardware necessary to perform the

search and delivery of products and software responsible for managing the product

registrations, registration of suppliers, inventory control and reporting. The system

has an elevator controlled by a PIC microcontroller for pickup and delivery tools. The

user will make the request through a personal computer that sends the request to lift

the same moves to get the desired tool. The pickup and delivery are carried out with

the help of two DC motors that make the movement of the elevator in the coordinates

x and y. After removing the tool from the shelf it is placed on a treadmill. After

delivery of the object on the mat, it starts its movement to the tool toward the user.

The mat is composed of key limit on their ends that control the start and stop the

treadmill.

Page 12: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

1

1. INTRODUÇÃO

Com a crescente necessidade de se produzir mais, aumentar a eficiência e

melhorar as condições de trabalho das indústrias, os processos automatizados têm

crescido no mercado para facilitar o processo industrial. Dentro deste conceito, foi

desenvolvido este sistema para automatização de estoques, com a proposta de

minimizar o custo de recurso humano com funcionários e também diminuir erros

nesta atividade.

O sistema consiste em um elevador automatizado para a retirada e entrega

de produtos. O usuário faz a solicitação através de um microcomputador que envia o

pedido ao elevador que se movimenta para buscar o produto desejado. A retirada e

entrega são realizadas com a ajuda de motores de corrente continua que fazem a

movimentação do elevador nas coordenadas X e Y. O produto é então entregue a

uma esteira que leva a ferramenta até o usuário. A esteira é composta por um motor

de corrente continua que fará a sua movimentação, e duas chaves de fim de curso,

uma em cada extremidade, que fazem a parada da esteira.

Após a entrega do produto na esteira, essa inicia seu movimento para levar

o produto em direção ao usuário. A esteira então para com o produto ao lado do

usuário, quando atinge uma das chaves de fim de curso. Após a utilização do

produto, caso ele seja retornável, o usuário devolve o mesmo a esteira, que inicia o

movimento contrário, levando o produto até o elevador, para que o elevador

encaminhe o produto para a prateleira correspondente.

O desenvolvimento deste sistema tem como principais objetivos a redução

de perdas de produtos, a estocagem de produtos em locais errados e a segurança

que envolve todo o processo em que o usuário deve guardar ou buscar um produto

em um estoque.

Após um estudo de mercado em algumas empresas que fazem a estocagem

de produtos, varias ideias surgiram que aos poucos motivaram no desenvolvimento

de todo o sistema de automação de estoque. Dentre estas ideias, a otimização de

espaços para valorizar áreas de fabricação tem uma importância muito grande. Com

esta otimização de espaço a intenção é, ao se colocar vários produtos um ao lado

Page 13: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

2

do outro ou um em cima do outro, não sobrem espaços entre os produtos para que

ao final da estocagem mais produtos não caibam nas prateleiras.

O controle de vendas, fluxo de caixa e o planejamento financeiro também

estão entre estas ideias. Um sistema que controla todo o financeiro de uma empresa

é extremamente importante para ter o controle dos valores e as informações de

resultados da empresa.

Page 14: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

3

2. FUNDAMENTAÇÃO TEÓRICA

Nesse capítulo será apresentada a fundamentação teórica necessária para o

desenvolvimento do projeto. O objetivo deste capítulo é apresentar conceitos e

tecnologias importantes que irão facilitar o entendimento do projeto pelo leitor.

2.1 Motor

O motor elétrico é um equipamento que tem por objetivo transformar energia

elétrica em mecânica. Este tipo de motor é o mais utilizado devido a varias

vantagens, como, baixo custo, facilidade de configuração e simplicidade de

manuseio. Com essas vantagens, o motor elétrico é vastamente utilizado em

diversas áreas, dentre elas na Engenharia da Computação.

O motor elétrico funciona baseado nos princípios do eletromagnetismo, onde

condutores que estão em um campo magnético, quando estes condutores recebem

correntes elétricas, eles sofrem uma ação de uma força mecânica, chamada de

torque.

No desenvolvimento deste projeto foram utilizados três motores para o

controle e movimentação dos eixos. Com eles os produtos podem ser alcançados

em todas as posições da prateleira.

2.1.1 Motor Corrente Contínua

O motor de corrente contínua precisa de pelo menos de um eletroímã para

funcionar. Na grande maioria dos motores, este eletroímã está localizado no centro

do motor, que gira dentro dos ímãs permanentes. Para que o motor gire é

necessário um torque, que é produzido por forças desenvolvidas entre os polos

magnéticos do rotor e do estator.

Page 15: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

4

Estas forças geradas entre estator e rotor, fazem com que os polos móveis

do rotor sejam puxados e empurrados, gerando o movimento e produzindo o torque.

Isto faz com que o rotor gire mais e mais rapidamente, até que o torque seja

reduzido até parar o motor. Após esse inicio de movimentação, o rotor passa a girar

com velocidade angular constante. Como dito antes, para que o torque apareça e o

motor comece a girar, é necessário que tanto o rotor como o estator do motor sejam

“magnéticos”, pois são as forças entre seus polos que produzem o torque necessário

para fazer o rotor girar.

O rotor é um “eletroímã” que gira entre os polos de ímãs permanentes

estacionários do motor. O rotor possui um núcleo de ferro, que torna o eletroímã

mais eficiente e fortemente magnetizado. Para inverter o sentido do motor utiliza-se

o comutador.

O comutador é composto por duas placas de cobre encurvadas e fixadas

isoladamente no eixo do rotor, os terminais do enrolamento da bobina são soldados

nessas placas. A corrente elétrica chega por uma das escovas (+), entra pela placa

do comutador, passa pela bobina do rotor, sai pela outra placa do comutador e

retorna á fonte pela outra escova (-).

Nessa etapa o rotor realiza sua primeira meia-volta, como mostra a Figura 1.

Figura 1 - Funcionamento do motor CC

Fonte: http://www.feiradeciencias.com.br/sala22/motor_teoria1.asp

Page 16: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

5

Dessa forma, as placas do comutador trocam seus contatos com as escovas

e a corrente inverte seu sentido de percurso na bobina do rotor. E o motor CC

continua girando, sempre com o mesmo sentido de rotação.

Neste projeto foram utilizados motores de corrente contínua nos eixos x e y

e também no movimento da esteira, para aumentar o torque dos motores foram

utilizados caixas de redução. Caixas de redução são engrenagens utilizadas para

reduzir a velocidade do movimento de rotação dos motores transferindo assim para

os eixos de tração. As caixas de redução utilizadas possuem de 12 a 31 dentes,

para reduzir aproximadamente 2000 RPM. A Figura 2 mostra um motor com caixa

redução:

Figura 2 - Motor CC com caixa de redução

Fonte: http://www.pc-control.co.uk/motor_pack.htm

2.2 Microntrolador

Os microcontroladores são circuitos integrados, que são implementados em

um chip. Neste chip existe uma CPU, memória de dados, um sistema de clock,

portas de I/O e possui periférico, tais como, módulos de temporização e conversores

Page 17: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

6

A/D. Os microcontroladores podem ser controlados através da programação dos

mesmos, tendo como referencia as entradas ou simplesmente um programa interno.

Assim como um computador, porém em menor escala, os microcontroladores

possuem:

1. Unidade Central de Processamento (CPU);

2. Sistema de clock para dar sequencia as atividades da CPU;

3. Memória para armazenamento de instruções e para manipulação

dedados;

4. Entradas para interiorizar na CPU informações do mundo externo;

5. Saídas para exteriorizar informações processadas pela CPU;

6. Programa (firmware) para definir um objetivo ao sistema;

A Figura 3 apresenta os elementos básicos da composição de um

microcontrolador e suas ligações internas, facilitando a compreensão do seu

funcionamento.

Page 18: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

7

Figura 3 - Esquema de um microcontrolador com os seus elementos básicos e

ligações internas

Fonte: www2.mec.ua.pt

Existem diversos tipos de microcontroladores, o que os diferencia, são os

seguintes elementos:

1. Quantidade de memória interna.

2. Velocidade de processamento.

3. Quantidade de sinal de entrada e saída (I/O).

Page 19: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

8

4. Alimentação.

5. Periféricos.

6. Arquitetura.

7. Set de instruções.

Os microcontroladores são utilizados principalmente em automação e

controle, pois possuem tais características:

1. Consumo pequeno.

2. Modo de espera.

3. Tamanho reduzido.

4. Baixo custo.

2.3 Microcontrolador PIC16F877A

Os microcontroladores PIC são uma vertente dos microcontroladores, que

processam dados de 8, de 16 e mais recentemente de 32 bits. O PIC possui uma

grande variedade de modelos, o que diferencia um modelo do outro é o numero de

linhas de I/O e pelo conteúdo do dispositivo. É possível se ter modelos de 8 pinos e

chegar a modelos com até 40 pinos.

Neste projeto foi utilizado o microcontrolador PIC16F877A, pois o mesmo

possui uma quantidade de portas suficientes para todas as aplicações do projeto,

simplicidade de aplicação, memórias RAM e flash suficientemente dimensionadas

para armazenar o código do projeto, este microcontrolador pertence a família 16F de

microcontroladores PIC.

Page 20: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

9

Este modelo de microcontrolador possui memória flash de programa de 14

bits, memória RAM com 368 bytes e memória EEPROM com 256 bytes. Sua

frequência de operação (clock), vai até 20MHz. Funciona com alimentação de 2V a

5,5V.

A Figura 4 mostra toda a pinagem do PIC16F877A, utilizado no projeto.

Figura 4 - Pinagem do microcontrolador PIC16F877A

Fonte: www.microcontrollerboard.com

Page 21: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

10

2.4 Chaves de Fim de Curso

Chaves de fim de curso também conhecidas como microswitch, são

dispositivos eletromecânicos, que quando acionados abrem ou fecham um circuito

elétrico. O acionamento de uma chave de fim de curso ocorre através do contato

mecânico da haste da chave com um objeto, a haste aciona mecanicamente um

contato elétrico, utilizado num circuito de controle. A Figura 5 mostra uma chave de

fim de curso:

Figura 5 – Chave de fim de curso

Fonte: http://www.rosseletronica.com/chavediv.htm

As chaves de fim de curso podem trabalhar com os contatos normalmente

aberto (NA) ou normalmente fechado (NF).

Neste projeto foram utilizados chaves de fim de curso, para posicionamento

do garfo e do eixo x na posicao0, em cada extremidade da esteira também foram

utilizadas chaves de fim de curso para parar o motor. A Figura 6 mostra a estrutura

interna de uma chave de fim de curso:

Page 22: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

11

Figura 6 - Estrutura interna de uma chave de fim de curso

Fonte: http://automacao2010.blogspot.com/2010/03/sensores-digitais-limites-e-indutivos.html

2.5 Optoacoplador

Os optoacopladores são componentes eletrônicos, também conhecidos

como: OPTICO-ACOPLADORES, OPTICO-ISOLADORES ou FOTO-

ACOPLADORES, sua finalidade é o isolamento total dos sinais de entrada e saída,

quando o terra de entrada não é o mesmo que o terra da saída.

O optoacoplador é constituído por um LED e um fototransistor. Sem nenhum

contato elétrico entre dois circuitos, a informação é transferida através de luz,

funcionando da seguinte forma: ao aplicar uma tensão nos pinos do LED, o mesmo

acende, e a luz polariza a base do fototransistor interno, ou seja, a resistência entre

seus terminais diminui, assim o fototransistor conduz, fazendo a corrente circular

ativando ou controlando outro circuito.

Com o objetivo de isolar o circuito de controle dos motores e proteger o

microcontrolador PIC, fez-se uso de oito optoacopladores 4N25 neste projeto. Os

optoacopladores 4N25 foram ligados na saída do microcontrolador, separando assim

a saída do microcontrolador do circuito de acionamento dos motores. O sinal do

microcontrolador é enviado ao circuito de acionamento dos motores de forma

Page 23: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

12

segura, evitando eventuais queimas do microcontrolador. A Figura 7 abaixo mostra o

diagrama interno do optoacoplador 4N25.

Figura 7 - Diagrama interno do optoacoplador 4N25

Fonte: www.arnerobotics.com.br

2.6 Encoder

O encoder é um equipamento que conta ou reproduz pulsos

eletromagnéticos a partir do movimento rotacional de seu eixo. Eles são

equipamentos eletromecânicos, utilizados para conversão de movimentos rotativos

ou deslocamentos lineares, que geram uma quantidade exata de pulsos por volta em

uma distribuição dos pulsos ao longo dos 360 graus de giro do eixo. Os encoders

por fornecerem medidas e controles precisos em velocidades de rotação,

velocidades lineares, posicionamentos angulares entre outros, podem ser utilizados

em aplicações com contadores, tacômetros e controladores lógicos programáveis.

Os encoders possuem internamente um ou mais discos perfurado, que

permite, ou não, a passagem de um feixe de luz infravermelha, gerado por um

Page 24: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

13

emissor que se encontra de um dos lados do disco e captado por um receptor que

se encontra do outro lado do disco, este, com o apoio de um circuito eletrônico gera

um pulso. Dessa forma a velocidade ou posicionamento é registrado contando-se o

número de pulsos gerados. A Figura 8 mostra a estrutura de um encoder.

Figura 8 - Estrutura do enconder

Fonte: http://www.bogan.ca/astro/telescopes/digtcrcl.html

A quantidade de pulsos em uma volta, nos encoders rotativos, demonstra a

relação impulso/volta do mesmo. Quanto maior for esta relação maior a precisão

obtida. Por exemplo, um encoder que gera 50 pulsos por volta teria a seguinte

relação angular: 360°/50 pulsos = 1 pulso a cada 7,2°. Pode-se determinar o sentido

da rotação utilizando duas fileiras de furos uma defasada em 90° em relação à

outra, sendo assim em um sentido a fileira mais próxima do centro estará adiantada

em relação à outra e vice-versa.

Page 25: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

14

3. TRABALHOS RELACIONADOS

Este capítulo apresentara alguns trabalhos que se relacionam de alguma forma com o desenvolvimento deste projeto.

3.1 Estoque Automatizado Via Comando De Voz

O trabalho de graduação “Estoque Automatizado via Comando de Voz”

realizado no ano de 2009 na Universidade Paulista em Sorocaba teve como objetivo

a utilização da voz para o controle de retirada e armazenamento de matérias do

estoque. Uma prateleira de 9 posições foi simulada para o protótipo.

3.2 Estacionamento Automatizado

O Trabalho ”Estacionamento Automatizado” realizado no ano de 2010 na

Pontifícia Universidade Católica do Paraná (PUC) teve como objetivo resolver os

problemas que afetam a maioria das metrópoles mundiais, a falta de vagas para

carros. Sistema totalmente automatizado, o usuário não perde mais tempo buscando

uma vaga livre e a sua organização permitirá que em um curto espaço físico sejam

criadas várias vagas.

O software para o gerenciamento foi desenvolvido em C++, Uma vaga é

solicitada no estacionamento e uma senha deve ser digitada, os comandos são

enviados pela porta USB ao Arduino que é o responsável pela comunicação com os

motores. O motor do eixo y busca o automóvel na primeira vaga do estacionamento

e logo em seguida o motor do eixo x percorre o espaço solicitado até chegar à vaga.

Quando o usuário solicita a retirada do automóvel o software realiza o mesmo

processo descrito anteriormente e calcula o valor que deve ser pago na saída.

Page 26: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

15

4. ANÁLISE DE REQUISITOS

Nessa seção serão apresentadas algumas restrições do uso do projeto e

também toda a sua parte de funcionalidade, eficiência, usabilidade e

mantenibilidade.

4.1 Funcionalidade

Os componentes de hardware utilizados neste projeto, como sensores,

chaves de fim de curso, microcontrolador entre outros, tem por objetivo, aumentar a

confiabilidade na obtenção dos dados. Quanto à velocidade do sistema, para busca

e entrega dos materiais é relativamente lento, o motor leva 14 segundos para se

deslocar da posição 0 até a última posição da prateleira, porém não se teve como

foco no projeto a busca e entrega de matérias rápidos e sim a automatização de

uma atividade realizada por humanos. Houve uma preocupação quanto a

interferência eletromagnética do sistema, o circuito do PIC foi colocado em uma

caixa com alumínio, os motores foram aterrados, os cabos que ligavam sensores e

chaves de fim de curso ao PIC são cabos de microfone blindados, o sistema é todo

protegido quanto a interferências eletromagnéticas.

4.2 Confiabilidade

O protótipo desenvolvido possui algumas restrições, tais como: o sistema

gerencia apenas uma prateleira contendo 25 posições, claro que a prateleira pode

ser menor, mas neste caso, nunca poderá ser maior, para tal ajuste seria

necessário, customizar hardware, firmware e software. O sistema transporta no

palete a caixa com os produtos desejado, não há como saber quantos produtos o

usuário retirou, pois não foi implementado nenhum tipo de leitor de barras ou

sensores para tal verificação, isso fica na responsabilidade do usuário, o mesmo

deve retirar das caixas a quantidade de produtos declarado no software. O sistema

Page 27: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

16

não pode ser exposto a chuvas, não é aconselhável expor o sistema a campos

eletromagnéticos, pois isso pode afetar os dados recebidos pelos sensores e até

mesmo queimar o circuito. A parte de tolerância a falhas não é tratada nesse projeto,

portanto caso haja pane no sistema, todos os softwares e hardwares devem ser

desligados, após esse procedimento, deve – se ligar o sistema novamente e reiniciar

o PIC, apertando o botão de reset que ele possui.

4.3 Eficiência

O sistema se mostrou eficiente quanto a entrega e busca dos produtos, foi

verificado que algumas vezes os encoders da posição X e Y estavam alinhados, isso

faz com o que o sensor se perca nas contas de cada pulso, ou seja, o sistema

executa o acionamento dos motores, porém não consegue parar o garfo na posição

correta, movimentando o garfo ao longo do eixo X. Neste caso basta reiniciar o PIC

que o sistema voltará para posição inicial.

4.4 Usabilidade

O sistema foi projetado da forma mais simples possível para que qualquer

pessoa, com conhecimentos básicos de informática possa opera-lo.

4.5 Mantenibilidade

Várias melhorias podem ser realizadas neste projeto, tanto na parte de

hardware quanto na parte de software. O software pode ser preparado para

trabalhar com várias prateleiras, como tamanhos definidos pelo próprio usuário, o

hardware pode conter novos sensores, para controle individual das peças retiradas

pelo usuário, a velocidade do sistema pode ser aumentada, efetuando a troca do

Page 28: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

17

fuso do eixo x. O projeto está estável, tanto o hardware como o software funcionam

corretamente, desde que as especificações mínimas sejam cumpridas.

Page 29: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

18

5. ESPECIFICAÇÃO E REALIZAÇÃO DOS CASOS DE USO

Neste capítulo serão apresentadas as especificações e realizações dos casos de uso do sistema.

5.1 UC01 – Fornecedor

A Figura 9 mostra o caso de uso de fornecedor no sistema desenvolvido.

Figura 9 – Caso de uso fornecedor

ESCOPO

Esta funcionalidade permite o cadastro, exclusão, busca e alteração de fornecedores no sistema.

DESCRIÇÃO

Além das funcionalidades de exclusão, alteração, busca e cadastro o sistema permite associar um fornecedor a um produto.

ATORES

Usuário

PRÉ-CONDIÇÕES

É necessário que o usuário esteja autenticado no sistema.

PÓS – CONDIÇÕES

Após realizar o cadastro o fornecedor estará disponível no sistema.

Page 30: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

19

Page 31: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

20

5.1.1 Cadastrar Fornecedor

ESCOPO

Esta funcionalidade permite o cadastro de fornecedores no sistema.

DESCRIÇÃO

O usuário pode realizar o cadastro de fornecedores, após o cadastro o mesmo estará disponível para ser utilizado no sistema.

ATORES

Usuário

PRÉ-CONDIÇÕES

É necessário que o usuário esteja autenticado no sistema;

É obrigatória a existência de um fornecedor;

É necessária a existência de um produto em caso de associação ao fornecedor.

PÓS-CONDIÇÕES

Ao efetuar o cadastro o Fornecedor estará disponível no sistema.

Deve se selecionar a opção de CADASTRO DE FORNECEDOR;

O sistema retorna a tela de cadastro, para preenchimento dos dados do fornecedor (A01);

O Sistema retorna mensagem: “Fornecedor Cadastrado com Sucesso”;

O Fornecedor encontra-se disponível no sistema;

Fim do caso de uso.

FLUXOS ALTERNATIVOS

A01 - CADASTRO DE FORNECEDOR

O sistema verifica se os campos obrigatórios para cadastro do fornecedor foram preenchidos. (E01);

Para excluir ou alterar um fornecedor é necessário procura-lo primeiro. (E02).

Page 32: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

21

EXCEÇÕES

E01 – Caso os campos obrigatórios para cadastro do fornecedor não estejam preenchidos o sistema retorna o seguinte erro: “Campo (nome do campo) não foi preenchido”.

E02 – Caso os botões EXCLUIR e ALTERAR sejam clicados sem ter sido realizado a busca do fornecedor o sistema retorna o seguinte erro: “Deve - se selecionar um fornecedor”.

CENÁRIOS

Cenário 1: O usuário cadastra o fornecedor com sucesso;

Cenário 2: O usuário associa um fornecedor a um produto;

Cenário 3: O usuário não preenche todos os dados.

5.1.2 Procurar Fornecedor

ESCOPO

Esta funcionalidade permite a busca de fornecedores no sistema.

DESCRIÇÃO

A busca de fornecedores no sistema pode ser utilizada para uma simples consulta ou em casos de alteração e exclusão.

ATORES

Usuário

PRÉ-CONDIÇÕES

É necessário que o usuário esteja autenticado no sistema;

É obrigatória a existência de um fornecedor cadastrado no sistema.

PÓS – CONDIÇÕES

Ao efetuar a busca do Fornecedor o mesmo será exibido no sistema.

1) Deve-se selecionar a opção de BUSCA DE FORNECEDOR;

Page 33: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

22

2) O sistema retorna a tela de busca de fornecedor; 3) O usuário realiza a busca; 4) O sistema retorna a o fornecedor caso esteja cadastrado; 5) O sistema retorna mensagem de erro: “O Fornecedor não foi encontrado”

caso não esteja cadastrado; 6) Fim do caso de uso.

FLUXOS ALTERNATIVOS

A01 - PROCURAR FORNECEDOR

1. Para buscar um fornecedor pode-se digitar o nome ou não digitar nada. (E01).

EXCEÇÕES

E01 – Se o fornecedor não estiver cadastrado o sistema retorna a seguinte mensagem de erro: “Este fornecedor não foi encontrado”.

CENÁRIOS

Cenário 1: O usuário digita o nome do fornecedor;

Cenário 2: O usuário não digita nada;

Cenário 3: O sistema não encontra o fornecedor.

5.1.3 Excluir Fornecedor

ESCOPO

Esta funcionalidade permite a exclusão de fornecedores no sistema.

DESCRIÇÃO

Podem-se excluir os fornecedores do sistema quando desejado.

ATORES

Usuário

PRÉ-CONDIÇÕES

É necessário que o usuário esteja autenticado no sistema;

Page 34: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

23

É obrigatória a existência de um fornecedor no sistema.

PÓS – CONDIÇÕES

Ao efetuar a exclusão do Fornecedor o mesmo não estará disponível no sistema.

1)Deve selecionar a opção de EXCLUSÃO DE FORNECEDOR;

2)Sistema retorna a tela de busca de fornecedor;( A01)

3)O sistema retorna a o fornecedor;

4)O fornecedor selecionado é excluído;

5)O sistema retorna mensagem: “Fornecedor excluído com sucesso”;

6)Fim do caso de uso.

FLUXOS ALTERNATIVOS

A01 - EXCLUIR FORNECEDOR

1. Para excluir ou alterar um fornecedor é necessário procura-lo primeiro. (E01).

EXCEÇÕES

E01 – Caso o botão EXCLUIR seja clicado sem ter sido realizado a busca do fornecedor o sistema retorna o seguinte erro: “Deve - se selecionar um fornecedor”.

CENÁRIOS

Cenário 1: O usuário seleciona o fornecedor a ser excluído;

Cenário 2: O fornecedor é excluído com sucesso;

Cenário 3: O fornecedor não selecionado corretamente pelo usuário.

5.1.4 Alterar Fornecedor

ESCOPO

Esta funcionalidade permite a alteração de qualquer dado do fornecedor.

Page 35: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

24

DESCRIÇÃO

O usuário pode alterar dados do fornecedor caso necessário.

ATORES

Usuário

PRÉ-CONDIÇÕES

É necessário que o usuário esteja autenticado no sistema;

É obrigatória a existência de um fornecedor no sistema.

PÓS – CONDIÇÕES

Ao efetuar a exclusão do Fornecedor o mesmo não estará disponível no sistema.

1) Deve se selecionar a opção de ALTERAR FORNECEDOR; 2) O usuário busca o fornecedor a se alterado;( A01) 3) Os dados do fornecedor são alterados pelo usuário; 4) As alterações são salvas pelo usuário; 5) O sistema retorna mensagem: “Fornecedor alterado com sucesso”; 6) Fim do Caso de Uso.

FLUXOS ALTERNATIVOS

A01 - ALTERAR FORNECEDOR

1. Para alterar um fornecedor é necessário procura-lo primeiro. (E01).

EXCEÇÕES

E01 – Caso o botão ALTERAR seja clicado sem ter sido realizado a busca do fornecedor o sistema retorna o seguinte erro: “Deve - se selecionar um fornecedor”.

CENÁRIOS

Cenário 1: O usuário seleciona o fornecedor a ser alterado;

Cenário 2: O fornecedor é alterado com sucesso;

Cenário 3: O sistema não encontra o fornecedor a ser alterado.

Page 36: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

25

5.2 UC02 – Autenticar no Sistema

Nesta seção será mostrada como é realizada a autenticação do sistema. A Figura 10 mostra ama visão macro da autenticação do usuário no sistema.

Figura 10 – Autenticação do usuário no sistema

ESCOPO Nesta seção demonstra como o usuário deve realizar a autenticação no sistema. DESCRIÇÃO Essa autenticação será realizada toda vez que o usuário desejar utilizar o sistema. ATORES Usuário

PRÉ-CONDIÇÕES

O usuário deve estar cadastrado no sistema.

PÓS – CONDIÇÕES

Ao final da autenticação o usuário terá acesso a todas as funcionalidades do sistema. FLUXO PRINCIPAL Este caso de uso se inicia com o usuário acessando a tela de login.

Page 37: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

26

5.2.1 Autenticar no Sistema 1) O usuário acessa a página de login do sistema; 2) A tela de login é composta pelos campos:

Nome Senha

3) A tela de login possui as seguintes opções: Logar Sair

4) Usuário preenche os campos; 5) Usuário clica na opção Logar; (A01); 6) Usuário é direcionado a página inicial do sistema; 7) Fim do Caso de Uso.

FLUXOS ALTERNATIVOS

A01 – Ao logar no Sistema

1. Sistema valida usuário e senha na base de dados; (E01).

EXCEÇÕES

E01 – Ao inserir usuário ou senha inválidos o sistema retorna o seguinte erro: “Senha ou Usuário Incorretos!! Favor tente Novamente” e retorna para a tela

de login.

CENÁRIOS

Cenário 1: O usuário autentica no sistema com sucesso; Cenário 2: O usuário informa dados inválidos.

5.3 UC02 – Entrada / Saída Estoque

Nesta seção será mostrada a entrada e saída de estoque do sistema. A Figura 11 mostra esta entrada e saída do estoque.

Figura 11 – Entrada e saída do estoque

Page 38: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

27

ESCOPO

Esta funcionalidade descreve com o usuário deve realizar as entradas e saídas de matérias no estoque.

DESCRIÇÃO

O usuário executa essa funcionalidade toda vez que um material entra ou sai do estoque.

ATORES

Usuário

PRÉ-CONDIÇÕES

É necessário que o usuário esteja autenticado no sistema;

É obrigatória a existência do produto no sistema;

É obrigatório possuir quantidades no estoque para realizar a saída.

PÓS – CONDIÇÕES

Ao final desse caso de uso a quantidade em estoque deverá aumentar ou diminuir de acordo com a ação tomada pelo usuário.

FLUXO PRINCIPAL

O usuário inicia na tela de entrada ou saída de estoque.

5.3.1 Retirar Item

1) O usuário clica em Estoque -> Saída de Produto;

2) O usuário busca o produto a ser retirado do estoque;

3) O usuário seleciona a posição da prateleira e insere a quantidade a ser retirada;

4) O sistema apresenta as seguinte opções:

Gravar Cancelar

5) O usuário grava a solicitação de retirada no sistema (A01);

Page 39: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

28

1) O sistema retorna a seguinte mensagem: “Saída do estoque com sucesso”; 2) Fim do Caso de Uso.

FLUXOS ALTERNATIVOS

A01 – Saída do Estoque 1. O sistema verifica se o produto foi selecionado (E01) 2. O sistema valida se o produto tem quantidade em estoque (E02)

EXCEÇÕES

E01 - O sistema valida se o produto foi selecionado para retirada do estoque; E02 - O sistema valida se o produto selecionado tem quantidade em estoque.

CENÁRIOS

Cenário 1: O usuário realiza saída de estoque com sucesso;

Cenário 2: O produto não possui quantidade suficientes no estoque;

Cenário 3: O usuário não seleciona o produto.

5.3.2 Entrada Item

1) O usuário clica em Estoque -> Entrada de Produto;

2) O usuário busca o produto a ser inserido no estoque;

3) O usuário informa a quantidade a ser inserida no estoque.

4) O usuário cancela a ação;

5) O usuário grava a solicitação de entrada no sistema (A01);

6)O sistema retorna a seguinte mensagem: “Entrada do estoque com sucesso”;

7)Fim do Caso de Uso.

Page 40: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

29

FLUXOS ALTERNATIVOS

A01 – Entrada do Estoque 1. O sistema verifica se o produto foi selecionado (E01).

EXCEÇÕES

E01 - O sistema valida se o produto foi selecionado para entrada no estoque.

CENÁRIOS

Cenário 1: O usuário realiza entrada no estoque com sucesso;

Cenário 2: O usuário não seleciona o produto;

Cenário 3: O usuário cancela a ação.

5.4 UC01 – Usuário

Nesta secao serao demonstrados os casos de uso do usuario. A Figura 12 mostra o diagrama de usuarios.

Figura 12 – Diagrama do usuário

ESCOPO

Page 41: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

30

Esta funcionalidade permite ao OPERADOR cadastrar, excluir, procurar e alterar um usuário.

DESCRIÇÃO

Os usuários cadastrados no sistema serão os responsáveis pela movimentação de entrada / saída de estoque, cadastro de produtos e fornecedores.

ATORES

Usuário

PRÉ-CONDIÇÕES

É necessário que o USUÁRIO esteja cadastrado no sistema.

PÓS – CONDIÇÕES

Após cadastro o usuário acessa todas as funcionalidades do sistema

5.4.1 Cadastrar Usuário

ESCOPO

Esta funcionalidade permite o cadastro de usuários no sistema.

DESCRIÇÃO

Os usuários são responsáveis por todas as ações tomadas no sistema.

ATORES

Usuário

PRÉ-CONDIÇÕES

É necessário que o usuário esteja autenticado no sistema;

É obrigatória a existência de um usuário;

PÓS – CONDIÇÕES

Ao efetuar o cadastro, o usuário estará disponível no sistema.

1)O usuário seleciona a opção de CADASTRO DE USUÁRIO;

2)Sistema retorna a tela de cadastro para preenchimento dos dados do usuário;

Page 42: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

31

3)Sistema retorna mensagem: “Usuário Cadastrado com Sucesso”;

4)Usuário esta disponível no sistema;

5)Fim do caso de uso.

FLUXOS ALTERNATIVOS

A01 - CADASTRO DE FORNECEDOR

1. O sistema verifica se os campos obrigatórios para cadastro do usuário foram preenchidos. (E01); 2. O sistema não permite os usuários duplicados. (E02).

EXCEÇÕES

E01 - Caso os campos obrigatórios para cadastro do usuário não estejam preenchidos o sistema retorna o seguinte erro: “Campo (nome do campo) não foi preenchido”.

E02 - Caso o usuário já exista na base de dados o sistema não permite o cadastro e retorna a seguinte mensagem de erro: ”Usuário já cadastrado no sistema”.

CENÁRIOS

Cenário 1: Cadastro de Usuário;

Cenário 2: Cadastro de usuário como mesmo nome;

Cenário 3: Campos da tela de cadastro não preenchido.

5.4.2 Excluir Usuário

ESCOPO

Esta funcionalidade permite excluir usuários do sistema.

DESCRIÇÃO

É possível excluir um ou mais usuários do sistema.

ATORES

Usuário

Page 43: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

32

PRÉ-CONDIÇÕES

É necessário que o usuário esteja autenticado no sistema;

É obrigatória a existência de um usuário cadastrado no sistema.

PÓS – CONDIÇÕES

Ao efetuar a exclusão do usuário o mesmo não estará disponível no sistema.

7) O usuário seleciona a opção de EXCLUSÃO DE USUÁRIO; 8) Sistema retorna a tela de busca de usuário (E01). 9) O sistema retorna a o usuário; 10) O usuário é exclui do sistema; 11) O sistema retorna mensagem: “Usuário excluído com sucesso” 12) Fim do caso de uso.

FLUXOS ALTERNATIVOS

A01 - EXCLUIR USUÁRIO

1. Para excluir usuário é necessário procura-lo primeiro. (E01).

EXCEÇÕES

E01 – Caso o botão EXCLUIR seja clicado sem ter sido realizado a busca do usuário o sistema retorna o seguinte erro: “Deve - se selecionar um usuário”.

CENÁRIOS

Cenário 1: O usuário a ser excluído é selecionado;

Cenário 2: O usuário é com sucesso;

Cenário 3: O usuário a ser excluído não foi selecionado.

5.4.3 Alterar Usuário

ESCOPO

Esta funcionalidade permite alterar usuários cadastrados no sistema.

DESCRIÇÃO

Page 44: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

33

Quando necessário os usuários poderão ter seus dados alterados.

ATORES

Usuário

PRÉ-CONDIÇÕES

É necessário estar autenticado no sistema;

É obrigatória a existência de um usuário no sistema.

PÓS – CONDIÇÕES

Ao efetuar a alteração do usuário o mesmo estará disponível no sistema com os novos dados.

1) A opção de ALTERAR USUÁRIO deve ser selecionada; 2) Deve se buscar o usuário a ser alterado; 3) Realizar as alterações necessárias; 4) As alterações devem ser salvas; 5) O sistema retorna mensagem: “Usuário alterado com sucesso”; 6) Fim do Caso de Uso.

FLUXOS ALTERNATIVOS

A01 – ALTERAR USUÁRIO

2. Para alterar um usuário é necessário procura-lo primeiro. (E01).

EXCEÇÕES

E01 - Caso o botão ALTERAR seja clicado sem ter sido realizado a busca do usuário o sistema retorna o seguinte erro: “Deve - se selecionar um usuário”.

CENÁRIOS

Cenário 1: Busca do usuário a ser alterado;

Cenário 2: Alteração do usuário na base de dados;

Cenário 3: Busca incorreta do usuário a ser alterado.

5.4.4 Pesquisar Usuário

ESCOPO

Page 45: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

34

Esta funcionalidade permite a busca de usuários no sistema.

DESCRIÇÃO

A busca de usuários no sistema pode ser utilizada para uma simples consulta ou em casos de alteração e exclusão.

ATORES

Usuário

PRÉ-CONDIÇÕES

É necessário que o usuário esteja autenticado no sistema;

É obrigatória a existência de um usuário cadastrado no sistema.

PÓS – CONDIÇÕES

Ao efetuar a busca do usuário o mesmo será exibido no sistema.

1)Deve se selecionar a opção de PESQUISA DE USUÁRIO;

2)O sistema retorna a tela de busca de usuário;

3)O usuário realiza a busca;

4)O sistema retorna o usuário caso esteja cadastrado;

5)O sistema retorna mensagem de erro: “O usuário não foi encontrado” caso

não esteja cadastrado;

6)Fim do caso de uso.

FLUXOS ALTERNATIVOS

A01 - PESQUISAR USUÁRIO

1. Para buscar um usuário pode-se digitar o nome ou não digitar nada. (E01).

EXCEÇÕES

E01 - Caso o usuário não esteja cadastrado o sistema retorna a seguinte mensagem de erro: “Este fornecedor não foi encontrado”.

CENÁRIOS

Cenário 1: Pesquisa o usuário desejado;

Page 46: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

35

Cenário 3: O sistema não encontra o fornecedor.

5.5 Diagrama de Casos de Uso Geral do Sistema

A Figura 13 mostra o diagrama de casos de uso geral do sistema.

Figura 13 – Diagrama de casos de uso geral

Page 47: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

36

6. ESPECIFICAÇÃO DO PROJETO

Nessa seção será apresentada uma visão geral do projeto, assim como, as

especificações de hardware e software.

6.1 Visão Geral do Projeto

O projeto consiste no desenvolvimento de um “elevador" capaz de retirar e

guardar produtos em uma prateleira e uma esteira responsável pelo transporte do

produto até o requisitante, controlado por um microcomputador (PC) via

comunicação serial. Para que o “elevador" guarde ou retire produtos da prateleira, os

mesmos devem estar previamente cadastrados, ao cadastrar um produto, o software

verifica qual posição da prateleira está vazia e insere o produto na mesma, sempre

de forma sequencial. Ao retirar ou guardar um produto, o sistema sempre irá

verificar, se o “elevador", a esteira e o garfo, estão na posição zero.

O garfo faz parte do elevador, ele é responsável por retirar e entregar os

produtos na esteira ou na prateleira. Para o ajuste da posição zero, foram utilizadas

chaves de fim de curso, após a verificação, o sistema irá efetuar a ação desejada.

A esteira ao receber um produto, é responsável pela entrega do produto ao

solicitante ou a entrega do produto até o garfo, no caso do solicitante, ele tem 5

segundos para retirar ou colocar um produto na esteira, no caso do garfo, retira o

produto da esteira e o coloca novamente na prateleira.

Para saber a posição de cada produto foi utilizado um encoder incremental de

um bit, o cálculo de cada posição da prateleira é dado pela seguinte fórmula:

(distância da prateleira / pelo passo do fuso) * resolução do encoder. Na Figura 14

pode-se observar a representação gráfica do projeto.

Page 48: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

37

Figura 14 - Representação gráfica do projeto

6.2 Propriedades do Hardware

Nessa seção são apresentadas todas as características de hardware

presentes no projeto.

6.2.1 Interface com o Computador

Para a unidade de processamento do sistema, foi utilizado o PIC16F877,

que é um microcontrolador da família de 8 bits e núcleo de 14 bits fabricado pela

Microchip Technology. O circuito do PIC16F877 é alimentado com a tensão que é

Page 49: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

38

disponibilizada pela porta USB do computador, 5 volts, já o circuito de potência dos

motores foram alimentados com uma fonte externa de 12 volts. Foram conectados

ao circuito de processamento do sistema, optoacopladores, conversor de nível

MAX232, encoders e chaves de fim de curso. A Figura 15 mostra a conexão de

todos os componentes utilizados no sistema.

Figura 15 - Circuito completo do sistema

6.2.2 Optoacopladores

Neste projeto foi utilizado um optoacoplador 4N25. O Objetivo foi isolar o

PIC16F877 do driver de controle dos motores, mantendo apenas um contato lógico

entre eles. A Figura 16 mostra o esquemático entre os optoacopladores 4N25 e o

PIC16F877.

Page 50: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

39

Figura 16 - Esquemático entre optoacopladores 4N25 e PIC16F877

Para cada motor foram utilizados 2 relés e para cada relé foi utilizado 1

optoacoplador 4N25, totalizando 8 optoacopladores, sendo eles ligados no port A e

C do PIC16F877.

Page 51: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

40

6.2.3 Chaves de Fim de Curso

Neste projeto foram utilizadas chaves de fim de curso. O objetivo foi

posicionar com precisão as posições X e Y, ou seja, garantir que o “elevador" e

“garfo" retirem ou guardem um produto sem colidir com a prateleira. Foram utilizadas

duas chaves de fim curso na esteira, uma chave para cada extremidade da esteira, o

que indica que o produto já chegou ao seu destino, portanto o motor deve parar. A

Figura 17 mostra a conexão entre as chaves de fim de curso e o PIC, utilizados no

projeto.

Figura 17 - Conexão das chaves de fim de curso com o PIC

6.2.4 Conversor de Nível MAX232

Foi utilizado o conversor de nível MAX232, que é responsável pela

comunicação entre o microcontrolador PIC e computador. O CI MAX232 converte o

Page 52: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

41

sinal RS232 para TTL, o circuito inversor gerado pelos quatro capacitores converte

tensões altas de 12 volts para 5 ou até 3.3 volts, essa interface é necessária uma

vez que os níveis de tensões e corrente da porta serial do PIC não são compatíveis

com os níveis de tensão e corrente da porta do computador. Figura 18 mostra o

circuito com o MAX232 e o PIC.

Figura 18 - Conversor de nível Max232

Page 53: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

42

6.2.5 Encoder

Neste projeto foi utilizado um encoder incremental, a cada pulso do encoder

acontece uma interrupção, somando 1 no contador. Foram utilizados dois encoders,

um no eixo X e outro no eixo Y, sua função é posicionar os motores correspondentes

as suas coordenadas. A Figura 19 mostra a conexão dos encoders com o PIC.

6.2.6 Circuito Driver dos Motores

Neste projeto foram utilizados três motores de corrente contínua, dois

motores para a movimentação do elevador, eixos X e Y e um motor para movimentar

a esteira. O comando é enviado do microcomputador via comunicação serial para o

microcontrolador PIC16F877A. O firmware do PIC16F877A processa os dados

recebidos e em seguida aciona os motores AK555PL12-4500C com caixa de

redução.

Os motores utilizados no projeto possuem caixas de redução, pois, foi

necessário diminuir a velocidade desses motores para que os produtos

Figura 19 - Esquemático encoder e PIC

Page 54: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

43

transportados fossem entregues ao seu destino, sem correr o risco de cair do garfo,

por isso optou-se por utilizar motores com RPM baixa.

O motor CC (corrente continua) AK555PL12-4500C é distribuído pela

Akiyama Soluções Tecnológicas. Sua caixa de redução possui 20 dentes, reduzindo

assim, aproximadamente 2000 rotações por minuto. A tensão de operação varia de

6V a 15V, a tensão nominal é de 12V. Ele gira a 4.500 RPM, sua corrente

trabalhando em máximo rendimento atinge 0,95A, o torque produzido e de 198g/cm,

a potência dissipada e de 8.04W, para acionar a sua partida é necessária uma

corrente de 4,4A ocasionando um torque de partida de 917.14g/cm.

A lógica de acionamento dos motores foi realizada em hardware, utilizando

para isto relés. Foram utilizados no projeto relés miniatura distribuídos pela empresa

Metaltex. O modelo utilizado foi o AX1RC2 de 12VDC tendo como principais

características: corrente de comutação e de condução máxima de 15 A, vida

mecânica de operações 10^5 operações, tempo de operação 8ms, tempo de

desoperação 8ms, com resistência de contato inicial máxima de 50mΩ e corrente

nominal de 30mA. Este componente foi escolhido pela simplicidade de operação e

pelo baixo consumo de corrente.

O transistor do optoacoplador 4N25 está ligando a base do transistor do relé

e aos 12 volts de alimentação, quando o PIC envia um sinal alto, aciona o LED

interno do optoacoplador 4N25.

Page 55: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

44

Na base do transistor do relé está ligado o optoacoplador 4N25, o transistor

interno conduz, e assim satura o transistor do relé, que fica ligado até a porta

correspondente do PIC ir a um sinal 0. A figura 20 mostra a ligação entre relés e

optoacoplador 4N25.

O acionamento dos motores ocorre da seguinte forma: quando os relés

estão desligados, os dois polos do motor ficam ligados entre si e também estão

ligados ao polo positivo da alimentação, ao ligar um dos relés, o polo do motor ligado

fica negativo, isso faz com que o motor gire num sentido, ao desligar o motor

novamente os polos do motor voltam a entrar em curto, isso cria o freio

eletrodinâmico que faz com que o motor pare no ponto exato. Ao ligar o outro relé, o

outro polo do motor fica negativo, e isso faz com que o motor seja acionado no

sentido inverso.

Figura 20 - Circuito de acionamento dos motores

Page 56: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

45

6.3 Propriedades do Software

Neste projeto foi desenvolvido um software e um firmware. O software tem

por objetivo receber e armazenar as informações do usuário, e também enviar os

dados contendo os comandos para a movimentação do elevador e da esteira.

O firmware contido no microcontrolador PIC16F877A recebe uma string

enviada do software, com a seguinte característica: r11ok ou d11ok. A string enviada

ao firmware é minúscula, a primeira letra indica se o produto será devolvido à

prateleira (letra d) ou se o produto será retirado da prateleira (letra r).

Os números a seguir indicam quais são as coordenadas, assim o firmware

sabe qual posição ele deve ir para retirar ou devolver o produto, a string “ok” no final

apenas indica que os dados foram transmitidos com sucesso, portanto o firmware do

microcontrolador PIC16F877A, é responsável por receber os dados, interpreta-los e

em seguida acionar os motores.

Pode-se observar na Figura 19 que o software recebe os dados informados

pelo usuário. A comunicação com o firmware contido no microcontrolador

PIC16F877A, é serial, o qual tem a função de realizar o acionamento dos motores

da esteira e do elevador.

Page 57: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

46

A Figura 21 apresenta uma visão geral do funcionamento do software e

firmware contidos no projeto.

Figura 21 - Diagrama em blocos dos softwares e firmwares contidos no projeto

Page 58: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

47

6.3.1 Software de Interface com o Usuário

O software de interface com o usuário foi desenvolvido na IDE Visual Studio

2010, em linguagem de programação C#. O software é responsável pelo

gerenciamento de todos os produtos, estoque e fornecedores. Ao cadastrar um

produto, o software possui uma função que verifica qual posição da prateleira está

vazia, cadastrando assim o produto para esta posição de forma sequencial.

Todo envio de dados é realizado pela comunicação serial entre o

microcomputador e o microcontrolador PIC16F877A, o usuário deve acessar a tela

corresponde a ação desejada. Ao escolher o produto, basta clicar no botão

responsável pelo envio dos dados. Ao receber as informações o microcontrolador irá

realizar as ações solicitadas pelo usuário.

O Banco de Dados foi desenvolvido na IDE Microsoft SQL Server 2008 R2, o

software utilizado para modelar o Banco de Dados e estabelecer os seus

relacionamentos é o DBDESIGNER 4. A Figura 22 mostra o Modelo Entidade

Relacionamento do projeto.

Figura 22 - Modelo entidade relacionamento

Page 59: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

48

Na Figura 22 é possível visualizar os relacionamentos entre as tabelas, as

chaves primárias (PK), as chaves estrangeiras (FK) e a cardinalidade de cada

tabela.

6.4 Propriedades do Firmware

O firmware deste projeto contido no microcontrolador PIC16F877A, foi

desenvolvido na IDE Mikro Basic Pro for PIC, em linguagem de programação BASIC.

O firmware é composto por uma função principal e várias sub-rotinas que são

chamadas conforme comando enviado pelo software. Na função principal do

firmware são setadas algumas configurações, tais como:

1. Portas analógicas desabilitadas;

2. Inicialização dos ports A e C com zero;

3. Configuração da velocidade de comunicação para 9600bps;

4. Configuração do port B como entrada;

5. Configuração dos ports A e C como saída.

Para cada movimento do elevador, do garfo e da esteira o firmware possui

sub-rotinas. O firmware possui uma variável denominada ‘t’, essa variável é

incrementada a cada pulso do encoder ótico incremental. No firmware possui a

quantidade de pulsos necessários para atingir cada posição da prateleira, portanto,

para ir ao local desejado basta comparar a variável ‘t’ com o valor previamente

calculado de cada posição. A Figura 23 mostra um fluxograma do funcionamento do

firmware utilizado no projeto. O código pode ser visto no Anexo A.

Page 60: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

49

Figura 23 – Fluxograma firmware

Page 61: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

50

7. VALIDAÇÃO E RESULTADOS

Nesta seção serão abordados os testes e validações realizados no projeto.

7.1 Testes de Hardware

Todos os circuitos foram desenvolvidos no software EXPRESSPCB. O

funcionamento dos motores CC foram testados em protoboard, os testes foram

realizados em etapas:

1. Teste de acionamento dos motores;

2. Controlando a esteira por botões;

3. Enviando os dados do PC para o PIC;

4. Aumentando a velocidade do fuso;

5. Parando os motores com chaves de fim de curso.

Primeiramente, testou-se o circuito para acionar os motores em sentido

horário e sentindo anti-horário este teste foi apenas para verificar se o circuito

desenvolvido estava correto.

Com o circuito para acionamento dos motores funcionando corretamente,

foram adicionados botões a este mesmo circuito, e colocados na esteira. Neste

momento a esteira já possuía chaves de fim curso, responsáveis pela parada do

motor em cada extremidade da esteira, o objetivo foi testar as chaves de fim de

curso.

Foi detectada a necessidade de aumentar a velocidade do eixo x, portanto o

fuso que era de 1 mm foi substituído por um fuso de 1,5 mm, o sistema ficou 6

segundos mais rápido, porém, foi observado que com essa nova velocidade os

paletes caiam do garfo do elevador.

Page 62: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

51

As chaves de fim curso foram essências, toda vez que era necessário parar

os motores, na primeira versão do protótipo não havia essas chaves, então a

posição do elevador e do garfo eram ajustadas manualmente, isso não era próprio,

pois como não havia precisão do ajuste, o garfo sempre batia na prateleira, não

atingindo o seu objetivo final. Com a inserção das chaves de fim de curso, esse

problema foi solucionado. O elevador e a esteira partem das chaves de fim de curso

e voltam para elas, fazendo que o motor pare sempre na posição certa.

A prateleira possui um suporte para colocar o palete, durante os testes, foi

verificado que o garfo, não seria capaz de apanhar um palete da esteira, pois o

palete é menor que a esteira e o garfo acabavam por empurrar ao invés de pega-lo,

o mesmo ocorre na prateleira, por isso, atrás de cada palete foi colocado uma

espécie de barreira, caso o garfo empurrasse o palete para traz o mesmo iria bater

nessa barreira e o grafo iria avançar e pegar o palete sem problema algum.

No decorrer dos testes, o PIC16F877A queimou, pois o campo

eletromagnético que os motores geraram induzido pelos cabos até o PIC resultou na

queima dos componentes, foi neste momento que o sistema sofreu uma

modificação. A partir daí, o circuito do PIC não tinha mais ligação direta com o

circuito driver dos motores, para resolver esse problema optou-se por utilizar o

optoacoplador 4N25 mantendo apenas uma ligação lógica entre esses dois circuitos,

outra mudança foi com os cabos que faziam a ligação PIC e a placa driver, os cabos

foram trocados por cabos de microfones blindados, os motores foram enrolados em

alumínio e aterrados, a placa do PIC foi colocada em uma caixa de plástico com

alumínio, para proteger de interferências eletromagnéticas.

Page 63: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

52

A Figura 24 mostra a primeira montagem das placas com os relés e a

prateleira MDF.

Figura 24 – Placas de relés e prateleira MDF

A Figura 25 mostra a montagem de todas as placas com a fonte e o cabeamento devidamente instalado para o funcionamento do sistema.

Figura 25 – Montagem das placas, cabos e fonte

Page 64: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

53

A Figura 26 mostra o produto final completamente montado e pronto para o funcionamento.

Figura 26 – Produto final

7.2 Testes de Software

O software foi desenvolvido em linguagem C#. Várias vezes tivemos que

mudar o banco, conforme o software ia sendo implementado.

Testes de cadastros, exclusões e busca no software foram realizadas, as

telas do sistema também foram modificadas várias vezes no decorrer do

desenvolvimento do sistema. O objetivo era que o software fosse o mais intuitivo

possível, para que qualquer pessoa pudesse opera-lo.

Nesta parte do projeto não tivemos tantos problemas. Para o envio dos

dados ao microcontrolador PIC16F877A, após o termino da função responsável pela

montagem da string, foi realizado um teste para o envio da mesma, não tivemos

problemas, a string foi enviada corretamente e a prova disso era um OK que o PIC

retornava.

Page 65: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

54

Abaixo seguem algumas figuras do software tiradas na realização dos

testes. A Figura 27 mostra a primeira tela depois que o software foi iniciado, onde

devem ser inseridos o usuário e senha para fazer o login no sistema.

Figura 27 – Tela de login

Page 66: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

55

A Figura 28 mostra a tela de cadastro de usuários para acessar o sistema, que pode ser acessada pela aba “Cadastro” no canto superior esquerdo do software. Nesta tela devem ser informados o nome e senha para criação do usuário.

Figura 28 – Cadastro de usuários

Na Figura 29 pode-se ver a tela de cadastro de fornecedores. O cadastro dos fornecedores deve ser feito antes do cadastro dos produtos, pois é necessário informar um fornecedor quando se cadastra um produto.

Figura 29 – Cadastro de fornecedores

Page 67: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

56

A Figura 30 mostra onde deve ser realizado o cadastro dos produtos que serão colocados na prateleira.

Figura 30 – Cadastro de produtos

Clicando na aba “Relatórios” no canto superior esquerdo, conforme a Figura 31 pode ser observar a tela de relatórios. Nela é possível gerar relatórios de todos os produtos e de produtos individualmente.

Figura 31 – Gerador de relatórios

Page 68: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

57

A tela principal, onde é feita a entrada dos produtos para a prateleira é mostrada na Figura 32. Conforme o produto é selecionado ele aparece em verde na posição em que vai ser colocado. Deve-se também colocar a quantidade desejada do produto que será estocado.

Figura 32 – Entrada de produtos

Tão importante quanto a entrada de produtos, a Figura 33 mostra a saída de produtos. Nela se faz o processo inverso a entrada, ou seja, quando esta tela é utilizada, o usuário esta querendo pegar algo da prateleira.

Figura 33 – Saída de produtos

Page 69: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

58

CONCLUSÃO

Neste projeto foi desenvolvido um protótipo de uma prateleira com um

elevador, que se movimenta nos eixos x e y, um garfo responsável por pegar os

produtos, uma esteira responsável pelo transporte do material até o requisitante e

um software para gerenciamento dos produtos. O software é a interface com o

usuário e comunica-se com o hardware utilizando comunicação serial.

Pode-se dizer que o resultado final do projeto é satisfatório, uma vez que o

objetivo inicial pode ser cumprido.

Mesmo com as várias limitações de velocidade, limitações do software e dos

sensores utilizados no projeto, foi possível realizar a busca e a entrega dos materiais

ao requisitante.

Durante seu desenvolvimento ocorreram alguns imprevistos como queima

de circuito, devido ao campo eletromagnético que os motores geravam. Vários

testes foram realizados ao longo do desenvolvimento do projeto, pode – se verificar

que o PIC16F778A cumpriu com as expectativas esperadas, claro que possuem

muitas melhorias a serem feiras, porém ainda sim, o sistema se mostrou muito

satisfatório, obtendo ótimos resultados, cumprindo com todas as especificações

propostas.

Para o desenvolvimento de um novo sistema, baseado neste, existe uma

grande necessidade de diversas melhorias que foram percebidas durante o

desenvolvimento deste. Entre estas melhorias esta o controle de varias prateleiras,

que não limitariam o tamanho do estoque. Para isso seria necessário alterar o

software, pois ele funciona apenas para 25 posições. Assim o controle teria mais

flexibilidade.

Outra melhoria importante deve ser citada. A utilização de sensores para

localizar o posicionamento de cada posição da prateleira, já que diversos problemas

foram percebidos devido ao atrito nas barras de fuso que levavam o garfo ate a

posição desejada. Com os sensores a busca fica muito mais precisa e eficiente.

Page 70: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

59

Algumas recomendações para trabalhos futuros devem ser colocadas em

vista. Dentre elas esta o melhor controle e aumento de velocidade de todo o

sistema. Em um protótipo, isso pode não ser tão importante, porem levando para

uma escala real, a velocidade e controle, pode fazer muita diferença em questões

como uma maior produtividade em menor tempo.

Também é importante citar que caso haja a necessidade do aumento das

prateleiras e/ou do estoque, será necessário a criação de um novo software para o

tamanho desejado. Entra ai outra recomendação, que no caso seria a criação de um

software flexível ao tamanho das prateleiras, fazendo com que o usuário possa

alterar o tamanho da “matriz” de prateleiras.

Esse projeto tem grande aplicação no mercado, hoje muitas empresas estão

utilizando da automação para melhorar o seu trabalho, com isso há uma diminuição

da mão-de-obra e também contribui muito para a segurança no trabalho, uma vez

que, a pessoa não precisa mais se locomover, basta apenas apertar um botão.

Page 71: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

60

REFERÊNCIAS BIBLIOGRÁFICAS

ALMEIDA, J. E. Motores elétricos: manutenção e testes. 3. ed. São Paulo:

Hemus, 1995, 190p.

Blog de Automação Industrial disponível em

http://automacao2010.blogspot.com/2010/03/sensores-digitais-limites-e-

indutivos.html Acessado em Maio de 2011.

DALLAZEN, G. A.; et al – Mapeamento de Ambientes Escuros Usando

Modulo Robótico Terrestre com Ultras-som. Curitiba, 2009. Monografia (Graduação).

Universidade Positivo

Datasheet MAX220-MAX249 disponível em http://www.maxim-

ic.com/datasheet/index.mvp/id/1798 Acessado em Julho de 2011.

Datasheet do Max 232 disponível em

http://www.datasheetcatalog.org/datasheet/texasinstruments/max232.pdf Acessado

em Abril de 2011.

Datasheet do microcontrolador PIC 16F877A disponível em

http://ww1.microchip.com/downloads/en/devicedoc/39582b.pdf Acessado em

Abril de 2011.

Departamento de Engenharia Mecânica da Universidade de Aveiro

disponível em http://www2.mec.ua.pt/ Acessado em Maio de 2011.

Encoder (automação industrial) disponível em

http://pt.wikipedia.org/wiki/Encoder_(Automa%C3%A7%C3%A3o_industrial)

Acessado em Abril de 2011.

Estacionamento Automatizado disponível em

http://www.afonsomiguel.com/content/estacionamento-automatizado Acessado em

Março de 2011.

Page 72: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

61

Guia de motores de corrente continua disponível em

http://www.siemens.com.br/medias/FILES/2910_20060505141908.pdf Acessado em

Abril de 2011.

LEDERMAN, C. Introduçao a linguagem BASIC para micro-controladores. 2.

ed. Campinas, SP: Cartgraf, 1983, 297p.

MACHADO, F. N. R. Banco de dados: projeto e implementação. 2. ed. São

Paulo: Érica, 2008, 398p.

Microcontrolador PIC disponível em

http://amsfrancisco.planetaclix.pt/download/PICs/Micros_historia.pdf Acessado em

Abril de 2011.

Microcontroller Projects with PIC Microcontroller Board disponível em

http://www.microcontrollerboard.com/ Acessado em Junho de 2011.

Motores elétricos disponível em

http://www.feiradeciencias.com.br/sala22/motor_teoria1.asp Acessado em Abril de

2011.

NATALE, F. Automação industrial. São Paulo: Érica, 2000, 234p.

PEREIRA, F. Microcontroladores PIC: programação em C. 4. ed. São Paulo:

Érica, 2005, 358p.

Projetos desenvolvidos por Márcio José Soares disponível em

http://www.arnerobotics.com.br/ Acessado em Junho de 2011.

SHARP, J. Microsoft Visual C# 2008: passo a passo. Porto Alegre:

Bookman, 2008.

Starter pack for Motor Control direct from PC disponível em http://www.pc-

control.co.uk/motor_pack.htm Acessado em Abril de 2011.

Trabalho sobre Encoder disponível em

http://hermes.ucs.br/ccet/demc/vjbrusam/inst/enc1.pdf Acessado em Abril de 2011.

Page 73: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

62

ANEXO A – CODIGO DO FIRMWARE

program elevador

'definições de constantes e variáveis

dim Ix, Iy, Op as byte

dim t, x, y as integer

dimfg as bit

dim temp as string[5]

'início das sub procedures

sub procedure interrupt 'incrementa variavel t a cada pulso no

encoderoptico (dois pulsos por rotação)

if INTCON.INTF = 1 then 'eixo x avança 0,75mm por

pulso(fuso M10x1,5), eixo y avança 0,5mm por pulso (fuso M6x1)

t=t+1 'em caso de mudança de estado na porta B.0,

incrementa contador de voltas.

INTCON.INTF = 0

end if

end sub

SUB PROCEDURE elevador_dir() 'movimenta torre do elevador à direita ate

número de voltas do fuso horizontal igualar a indexação estabelecida para

coordenada x (encoderoptico)

PORTC.1=1 'liga motor

whilefg=0

Page 74: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

63

if t = x then 'compara número de voltas com índice da posição x (eixo

horizontal)

PORTC.1=0 'desliga motor

fg=1

end if

wend

t=0

fg=0

end sub

SUB PROCEDURE elevador_esq() 'retorna torre do elevador ate a posição

zero (chave fim de curso)

PORTC.0=1 'liga motor

whilefg=0

if Button(PORTD, 4, 1, 0) then 'fim de curso atuando como botão

PORTC.0 = 0 'desliga motor

fg=1

end if

wend

fg=0

end sub

SUB PROCEDURE elevador_up() 'movimenta elevador para cima ate

número de voltas do fuso vertical igualar a indexação estabelecida para coordenada

y (encoderoptico)

PORTC.3 = 1 'liga motor

Page 75: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

64

whilefg=0

if t = y then 'compara número de voltas com índice da posição y (eixo

vertical)

PORTC.3=0 'desliga motor

fg=1

end if

wend

t=0

fg=0

end sub

SUB PROCEDURE elevador_dn() 'movimenta elevador para baixo,

recolocando-o na altura de origem (chave fim de curso)

PORTC.2 = 1 'liga motor invertendo sentido

whilefg=0

if Button(PORTD, 5, 1, 0) then 'fim de curso atuando como botão

PORTC.2 = 0 'desliga motor

fg=1

end if

wend

fg=0

end sub

SUB PROCEDURE garfo_up() 'eleva o garfo do elevador por 10mm, para

erguer o palete (encoderoptico)

PORTC.3 = 1 'liga motor

Page 76: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

65

t=0

whilefg=0

if t=20 then

PORTC.3=0 'desliga motor

fg=1

end if

wend

t=0

fg=0

end sub

SUB PROCEDURE garfo_dn() 'desce o garfo do elevador por 10mm, para

pousar o palete (encoderoptico)

PORTC.2 = 1 'liga motor

whilefg=0

if t=20 then

PORTC.2=0 'desliga motor

fg=1

end if

wend

t=0

fg=0

end sub

sub procedure esteira_dir() 'posiciona esteira no extremo direito para receber

palete do garfo (chave fim de curso)

Page 77: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

66

PORTA.1 = 1 'liga motor

whilefg=0

if Button(PORTD, 2, 1, 0) then 'fim de curso atuando como botão

PORTA.1 = 0 'desliga motor

fg=1

end if

wend

fg=0

end sub

sub procedure esteira_esq() 'posiciona esteira no extremo esquerdo para

receber palete do usuário (chave fim de curso)

PORTA.0 = 1 'liga motor

whilefg=0

if Button(PORTD, 3, 1, 0) then 'fim de curso atuando como botão

PORTA.0 = 0 'desliga motor

fg=1

end if

wend

fg=0

end sub

sub procedure garfo_av() 'extende o garfo do elevador para apanhar ou

entregar palete (chave fim de curso)

PORTA.3 = 1 'liga motor

whilefg=0

Page 78: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

67

if Button(PORTD, 1, 1, 0) then 'fim de curso atuando como botão

PORTA.3 = 0 'desliga motor

fg=1

end if

wend

fg=0

end sub

sub procedure garfo_rc() 'recolhe o garfo do elevador para apanhar ou

entregar palete (chave fim de curso)

PORTA.2 = 1 'liga motor

whilefg=0

if Button(PORTD, 0, 1, 0) then 'fim de curso atuando como botão

PORTA.2 = 0 'desliga motor

fg=1

end if

wend

fg=0

end sub

'Fim das sub procedures

main:

ADCON0 = 0'desabilita

ADCON1 = 0'portas

CMCON = 7'analogicas

Page 79: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

68

OPTION_REG=%00111111 'habilita pull-ups no port b, e seta flanco de

leitura de interrupção

INTCON = %11010000'configura interrupções e seta PORTB.0 como

interrupção externa

PORTA = 0 'inicializa PORTA em zero

TRISA = %00000000'seta PORTA como saída

TRISB = %11111111'seta PORTB como entrada

PORTC = 0 'inicializa PORTC em zero

TRISC = %00000000'seta PORTC como saída

'PORTD = 0 'inicializa PORTD em zero

TRISD = %00111111'seta PORTD(0..5) como entradas e PORTD(6..7) como

saídas

UART1_Init(9600) 'inicializa comunicação serial a 9600 bps

x=0

y=0

Op=""

Ix=""

Iy=""

t=0

garfo_rc

elevador_dn

elevador_esq

WHILE (TRUE)

if (UART1_Data_Ready() = 1) then

Page 80: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

69

UART1_Read_Text(temp,"ok", 5)

Op=temp[0]

Ix=temp[1]

Iy=temp[2] - 1

delay_ms(100)

end if

select case Ix 'indexaçãocoordenadas x

case "1"

x=173

case "2"

x=327

case "3"

x=483

case "4"

x=636

case "5"

x=791

end select

select case Iy 'indexaçãocoordenadas y

case "1"

y=232

case "2"

y=466

case "3"

Page 81: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

70

y=696

case "4"

y=926

end select

if Op="r" then

elevador_dir

delay_ms(500)

elevador_up

delay_ms(500)

garfo_av

delay_ms(500)

garfo_up

delay_ms(500)

garfo_rc

delay_ms(500)

elevador_dn

delay_ms(500)

elevador_esq

esteira_dir

delay_ms(500)

garfo_up

delay_ms(500)

garfo_av

delay_ms(500)

garfo_dn

Page 82: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

71

delay_ms(500)

garfo_rc

delay_ms(500)

esteira_esq

delay_ms(500)

Op=""

Ix=""

Iy=""

t=0

x=0

y=0

UART1_WRITE_Text("ok")

else

if Op="d" then

esteira_esq

delay_ms(5000)

esteira_dir

delay_ms(500)

garfo_av

delay_ms(500)

garfo_up

delay_ms(500)

garfo_rc

delay_ms(500)

elevador_dir

Page 83: GABRIEL AMARO DA LUZ E JULIANA LISBOA DOS SANTOS … · controle de estoque e relatórios. O sistema possui um elevador controlado por um microcontrolador PIC para a retirada e entrega

72

delay_ms(500)

elevador_up

delay_ms(500)

garfo_av

delay_ms(500)

garfo_dn

delay_ms(500)

garfo_rc

delay_ms(500)

elevador_dn

delay_ms(500)

elevador_esq

Op=""

Ix=""

Iy=""

t=0

x=0

y=0

UART1_WRITE_Text("ok")

endif

endif

wend

end.