Escolar Documentos
Profissional Documentos
Cultura Documentos
RESUMO
As filas são estruturas organizacionais utilizadas no dia-a-dia para tornar mais eficientes
operações constantes, no contexto organizacional o tempo de espera em uma fila de
atendimento, pode definir a qualidade do estabelecimento, dessa forma, automatizar e otimizá-
la é importante para qualquer organização que lide com esta problemática. Através da
plataforma Arduino podemos simular a lógica das filas e desenvolver uma solução prática para
os problemas de organização que uma fila pode apresentar. Este trabalho buscou desenvolver
um modelo protótipo funcional de um gerenciador de filas utilizando a plataforma Arduino
UNO. O início do projeto se deu com o estudo da linguagem de programação C que seria
responsável pelo controle, após o desenvolvimento do código realizou-se a simulação e
posteriormente a montagem do protótipo, como resultados obtivemos um protótipo funcional
que pode ser implementado em qualquer estabelecimento que necessite de uma solução eficaz
e de baixo custo para o controle de filas.
ABSTRACT
Queues are organizational structures used in daily life to make constant operations more
efficient. In the organizational context, the waiting time in a service queue can define the quality
of the establishment; therefore, automating and optimizing it is important for any organization
dealing with this issue. Through the Arduino platform, we can simulate queue logic and develop
a practical solution for the organizational challenges that a queue may present. This project
aimed to create a functional prototype model of a queue manager using the Arduino UNO
platform. The project began with the study of the C programming language, which would be
responsible for control. After developing the code, a simulation was conducted, followed by the
assembly of the prototype. As a result, we achieved a functional prototype that can be
implemented in any establishment requiring an effective and cost-effective solution for queue
management.
INTRODUÇÃO
O conceito de Internet das Coisas, ou IoT, apesar de não muito recente ainda é muito aplicado
na atualidade, a interligação de equipamentos que utilizamos no dia a dia com a internet, e a
automação de tarefas por meio da tecnologia são coisas cada vez mais presentes no nosso
cotidiano, com isso em mente, podemos pensar em situações usuais que podem ser facilmente
automatizadas, uma delas é a fila.
A estrutura de dados Fila é muito utilizada na vida cotidiana, em diversos locais que lidam com
atendimento ao público como por exemplo, bancos, agências lotéricas, postos de saúde e
unidades de atendimento ao cidadão. Estes são organizados por meio de uma fila onde o
primeiro a chegar é o primeiro a ser atendido. Além dos locais do dia-a-dia, as filas também
estão presentes nos ambientes de produção, por exemplo em uma linha de montagem de
automóveis em que cada etapa do processo é feita de forma sequencial e o primeiro veículo que
começou a ser produzido será o primeiro a ficar pronto.
O tempo de espera em uma fila de atendimento, pode definir sua qualidade, dessa forma,
automatizar e otimizá-la é importante para qualquer organização que lide com esta
problemática, desta forma o cliente terá uma melhor visão sobre o estabelecimento, também
fazendo que haja cada vez um maior fluxo de pessoas neste local devido a eficiência no
atendimento.
Neste projeto, optamos por utilizar a placa Arduino como ferramenta de aplicação do IoT, pois
além de possuir baixo custo de implementação, tem sua programação na linguagem C, o que o
torna mais acessível para o manuseio e execução.
OBJETIVOS
Geral
Específicos
METODOLOGIA
REFERENCIAL TEÓRICO
Filas
Hiller e Lieberman (2013) descrevem filas como como uma sequência de elementos em ordem
que desejam atendimento ou algum processo e precisam esperar até que este atendimento
ocorra, apesar de ser um conceito de fácil compreensão ele está presente no dia a dia de milhares
de pessoas, empresas e processos pelo mundo. De acordo com Prado (2002) existem cinco
pontos básicos que caracterizam uma fila, o tamanho da população, o processo de chegada, o
processo de atendimento, o número de servidores e a disciplina da fila, que serão definidos a
seguir:
Linguagem C
Tendo como base as linguagens BCPL e B, o C foi desenvolvido por Dennis Ritchie em meados
de 1972 inicialmente como uma linguagem de base para o desenvolvimento do sistema
operacional UNIX, porém, o tempo mostrou que o C poderia ser usado de maneira muito
versátil em qualquer tipo de sistema operacional existente, sua rápida difusão em variados
hardwares levaram a criação de uma versão padrão do C, para fornecer a linguagem uma
definição inequívoca e independente do equipamento em 1989 foi aprovado o padrão
ANSI/ISSO 9899:1990 criado pelo comitê técnico X3J11, assim definindo padrões para o C
poder ser usado com menos problemas em qualquer tipo de plataforma (DEITEL; DEITEL,
2010).
Kernighan e Ritchie (1988) destacam que o C é uma linguagem de programação de uso geral
muito útil para escrever compiladores, sistemas operacionais e programas importantes em
diversos domínios diferentes, é uma linguagem que não é considerada de nível muito alto e não
é especializada em nenhuma área especifica de aplicação, porém, o fato desta linguagem ser
independente de qualquer arquitetura de máquina, faz com que ela possa ser usada para criar
programas para uma grande variedade de hardwares, com isso o C provou ser uma linguagem
muito eficaz e útil para uma infinidade de aplicações na programação
Arduino
Banzi e Shiloh (2014) apresentam o Arduino como uma união de duas partes: a placa Arduino
que é a peça com que se trabalha e se constroem os projetos, e o Arduino IDE (Integrated
Development Environment) que se trata do software onde é realizada toda a programação que
será carregada na placa e dirá o que ela deve fazer. A principal vantagem de se utilizar o Arduino
é a facilidade de se ter em uma pequena placa um microcontrolador integrado em um pequeno
circuito que é equivalente a um microcomputador composto por 14 entradas/saídas digitais, 6
entradas analógicas, 6 saídas analógicas, podendo ser alimentada através do conector USB do
computador ou através de uma fonte de 9V.
RESULTADOS
E em seguida adicionamos ao laço “Void Setup” uma função que testa a tela LCD 16x2 e junto
a ela definimos o tipo de operação que as saídas digitais atribuídas aos botões iram realizar,
neste caso INPUT.
Antes de iniciarmos o laço “Void Loop” que realizará as operações de criação e atendimento
das senhas, inserimos uma função que irá imprimir as senhas na tela LCD.
Sendo os botões:
CONCLUSÃO
Com a realização do protótipo podemos compreender mais a lógica que rege as filas e como
um conceito que aparenta ser tão intuitivo pode resolver problemas de logística complexos,
como: filas de atendimento e filas de espera, nos mais variados ambientes por exemplo: as
linhas de produção anteriormente citadas, filas de agencia lotérica e listas de compras de
mercado. E a análise dos resultados obtidos valida a competência do modelo de filas para o uso
em atendimentos, deixando essa prática com um fluxo mais rápido e de simples compreensão.
REFERÊNCIAS
PRADO, Darci. Teoria das filas e da simulação. 2. Ed. Belo Horizonte: Editora de
Gerenciamento Gerencial, 2004. 126p. (Série pesquisa operacional, v. 2). ISBN 85-86948-12-
8.
BANZI, Massimo; SHILOH, Michael. Make: Getting started with Arduino. 3. Ed.
California: Maker Media, 2014. ISBN 978-1-449-363338.
MCROBERTS, Michael. Arduino Básico. Tradução: Rafael Zanolli. São Paulo: Novatec
Editora, 2011. ISBN 978- 85-7522-274-4.
DEITEL, Harvey M.; DEITEL, Paul J. C: How to program. 6. Ed. Nova Jersey: Pearson
Education, 2010. ISBN 0-13-612356-2/978-0-13-612356-9.