TCC_caipirinhafinal1
description
Transcript of TCC_caipirinhafinal1
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
Curso de Engenharia Mecânica com ênfase em Mecatrônica
Bernardo Peterson Sarmento e Silva
Rodolfo Pires de Oliveira
MÁQUINA AUTOMÁTICA DE PREPARAÇÃO DE CAIPIRINHA
Belo Horizonte
2014
Bernardo Peterson Sarmento e Silva
Rodolfo Pires de Oliveira
MÁQUINA AUTOMÁTICA DE PREPARAÇÃO DE CAIPIRINHA
Trabalho apresentado ao curso de Engenharia
Mecânica (Ênfase em Mecatrônica) da
Pontifícia Universidade Católica de Minas
Gerais à banca avaliadora da disciplina
Trabalho de Conclusão de Curso ll, como
requisito parcial para a obtenção do título de
bacharel em Engenharia Mecânica.
Orientador: Prof. Nilson de Figueiredo Filho
Belo Horizonte
2014
Bernardo Peterson Sarmento e Silva
Rodolfo Pires de Oliveira
MÁQUINA AUTOMÁTICA DE PREPARAÇÃO DE CAIPIRINHA
Trabalho apresentado ao curso de Engenharia
Mecânica (Ênfase em Mecatrônica) da
Pontifícia Universidade Católica de Minas
Gerais à banca avaliadora da disciplina
Trabalho de Conclusão de Curso ll, como
requisito parcial para a obtenção do título de
bacharel em Engenharia Mecânica.
______________________________________________________________
Nilson de Figueiredo Filho (Orientador) – PUC Minas
________________________________________________________________
Athos Obvioslo de Carvalho – PUC Minas
_________________________________________________________________
Sady Antônio dos Santos Filho – PUC Minas
Belo Horizonte, 03 de dezembro de 2014.
RESUMO
Considerando a crescente exigência dos clientes por produtos de melhor qualidade
e menor custo, este trabalho propõe um equipamento de produção automatizada de
caipirinha que possibilitará atender às necessidades de mercado deste segmento. O
sistema automatizado consegue manter um padrão, independente do operador,
eliminando o risco de fornecer um produto diferente do comumente oferecido. O
equipamento tem como proposta a construção, desenvolvimento e automatização do
processo de dosagem, corte do limão e mistura dos ingredientes com o objetivo de
padronizar o produto final. A automatização reduz o tempo e os erros existentes em
um processo de dosagem, além de garantir uma melhor qualidade e produtividade.
Através de um controlador lógico serão obtidos comandos elétricos para o
acionamento dos mecanismos de uma forma preestabelecida. Com o estudos dos
mecanismos e dispositivos foi possível analisar qual a melhor maneira de
implementar este projeto, visando atender à expectativa inicial de oferecer um
produto que atenda ao público de forma rentável e rápida. Os conhecimentos
teóricos adquiridos permitem seguir as regulamentações e normas vigentes, ao
construir a máquina, garantindo assim produtos com qualidade e menos suscetíveis
a contaminação.
Palavras–chave: Automatização, máquina de caipirinha, dosador.
ABSTRACT
Considering the growing demand of customers for products of better quality and
lower cost, this work proposes an automated production equipment which will enable
caipirinha meet the needs of this market segment. The automated system should be
able to maintain a standard, independent of the operator, eliminating the risk of
providing a different product commonly offered. The equipment has a proposal to
automate the process of dispensing, cutting lemon and mix the ingredients with the
goal of standardizing the final product. Automation reduces the time and existing in a
process of dispensing errors, and ensure a better quality and productivity. Through a
logic controller electrical controls will be obtained for the activation mechanisms of a
predetermined shape. Besides the advantages already mentioned is eliminated the
need for an official monitor the entire process, and it only need to give the command
to start the procedure. With the study of the mechanisms and devices can analyze
the best way to implement this project in order to meet the initial expectation to
provide a product that meets the public quickly and profitably. The theoretical
knowledge allow to follow the regulations and rules, ensuring product quality and less
susceptible to contamination.
Key Words: Automation, caipirinha machine , feeder.
LISTA DE FIGURAS
Figura 1 - Aplicações para microcontroladores.........................................................15
Figura 2 – Placa e microprocessador Arduino...........................................................16
Figura 3 - Servomotor................................................................................................18
Figura 4 - Entradas e saídas do servomotor..............................................................20
Figura 5 - Sinal PWM enviado ao servomotor...........................................................20
Figura 6 - Sinal PWM com pulso de 1 milisegundo...................................................20
Figura 7 - Sinal PWM com pulso de 1,5 milisegundo................................................21
Figura 8 - Sinal PWM com pulso de 2 milisegundos..................................................21
Figura 9 - Torque do eixo de saída do servomotor....................................................22
Figura 10 - Tipos de servomotores............................................................................23
Figura 11 - Esboço de um motor de corrente contínua..............................................25
Figura 12 - Esboço de um mecnismo biela manivela................................................27
Figura 13 - Tipos de cames e seguidores..................................................................28
Figura 14 - Aplicação de parafuso de potência em macaco de elevação..................29
Figura 15 - Aplicação de parafuso em um cilindro elétrico, com motor acoplado......29
Figura 16 - Vista cortada de um pistão pneumático...................................................30
Figura 17 - Variação de uma grandeza física em um sensor analógico....................31
Figura 18 - Leitura da posição de um objeto por um encoder incremental................32
Figura 19 - Esquema elétrico dos terminais do sensor de contato mecânico............33
Figura 20 - Esquema elétrico dos terminais do sensor de acionamento magnético..33
Figura 21 - Sensor óptico por retrorreflexão..............................................................34
Figura 22 - Sensor óptico por transmissão................................................................34
Figura 23 - Circuito para inversão de polaridade.......................................................35
Figura 24 - Dosador gravimétrico..............................................................................37
Figura 25 - Dosador volumétrico................................................................................38
Figura 26 - Croqui de funcionamento........................................................................42
Figura 27 - Fluxograma de funcionamento da máquina............................................43
Figura 28 - Mecanismos de acionamentos................................................................44
Figura 29 - Dosador de açúcar adquirido..................................................................45
Figura 30 - Came seguidor........................................................................................47
Figura 31 - Dosador de bebida..................................................................................48
Figura 32 - Esquemático agitador..............................................................................50
Figura 33 - Cortador de limão....................................................................................52
Figura 34 - Desenho mecanismo do dosador............................................................53
Figura 35 - Esquemático de comunicação.................................................................54
Figura 36 - Esquemático placa servomotor...............................................................56
Figura 37 - Placa servomotor fenolite........................................................................56
Figura 38 - Placa servomotor implementada.............................................................57
Figura 39 - Placa acionamento motores...................................................................58
Figura 40 - Placa de fenolite acionamento de motores..............................................58
Figura 41 - Placa acionamento de motores implementada........................................59
Figura 42 - Placa ponte H de relés............................................................................60
Figura 43 - Placa fenolite ponte H de relés................................................................60
Figura 44 - Placa implementada ponte H de relés.....................................................61
Figura 45 - Placa de sensores...................................................................................62
Figura 46 - Placa de fenolite de sensores.................................................................62
Figura 47 - Placa implementada de sensores...........................................................63
Figura 48 - Placa de testes........................................................................................64
Figura 49 - Placa de acionamento de motor..............................................................65
Figura 50 - Esquemático placa de fenolite.................................................................65
Figura 51 - Placa de acionamento implementada.....................................................66
LISTA DE ABREVIATURAS
Abr – Abril
Ed – Edição
kg – Quilograma
kgf – Quilograma-força
kg/cm – Quilogramas por centímetro
kHz – KiloHertz
mHz – MegaHertz
ms – Milissegundos
num – Número
oz/in – Onças por polegada
Pag – Página
V – Volts
A – Ampere
mm – Milímetros
cm – Centímetros
Ω – ohm
μF – Micro farad
KΩ – Kilo ohms
LISTA DE SIGLAS
ABAL – Associação Brasileira do Alumínio
ABHP – Associação Brasileira de Hidráulica e Pneumática
A/D – Analógico/digital
ANVISA – Agência Nacional de Vigilância Sanitária
CA – Corrente Alternada
CAD – Computer-aided design
CC – Corrente Contínua
CPU – Central Processor Unit
EEPROM – Electrically-Erasable Programmable Read-Only Memory
GPL (General Public License)
I/O – Input/Output (entrada e saída)
ICSP – In-Circuit Serial Programming
ISO – International Organization for Standardization
LED – Light Emitting Diode
LGPL – Library General Public License
MIPS – Million Instructions Per Second
NA – Normalmente aberta
NF – Normalmente fechada
OTP – One Time Programmable
PIC – Controlador de Interface Programável
PID – Proporcional Integral e Derivativo
PWM – Pulse Width Modulation
USB – Universal Serial Bus
RPM – Rotações por minuto
SUMÁRIO
1 INTRODUÇÃO..................................................................................12
2 REVISÃO BIBLIOGRÁFICA............................................................13
2.1 Microcontroladores.................................................................................13
2.2 Arduino.....................................................................................................14
2.3 PIC............................................................................................................15
2.4 A linguagem C.........................................................................................16
2.5 Servomotores..........................................................................................17
2.5.1 Características do servomotor...........................................................18
2.5.2 Funcionamento do servomotor..........................................................18
2.6 Tipos de servomotores...........................................................................21
2.7 Motores de corrente contínua................................................................22
2.7.1 Princípio de funcionamento................................................................23
2.8 Mecanismos.............................................................................................24
2.9 Mecanismos para movimentação linear................................................25
2.9.1 Biela manivela......................................................................................25
2.9.2 Came seguidor.....................................................................................26
2.9.3 Parafuso de potência...........................................................................27
2.9.4 Atuador hidráulico ou pneumático.....................................................28
2.10 Sensores..................................................................................................29
2.10.1 Sensores analógicos........................................................................30
2.10.2 Sensores digitais..............................................................................31
2.10.3 Sensor de contato por acionamento mecânico.............................31
2.10.4 Sensor de contato com acionamento magnético..........................32
2.10.5 Sensor óptico por retrorreflexão.....................................................32
2.10.6 Sensor óptico por transmissão.......................................................33
2.11 Dosadores................................................................................................34
2.11.1 Dosadores gravimétricos.................................................................35
2.11.2 Dosadores Volumétricos..................................................................36
2.12 Normas alimentícias...............................................................................37
2.12.1 Aço inoxidável..................................................................................37
2.12.2 Alumínio............................................................................................38
2.12.3 Poliacetal...........................................................................................38
3 METODOLOGIA...............................................................................39
3.1 Projeto mecânico....................................................................................42
3.1.1 Dosador de açucar...............................................................................43
3.1.2 Dosador de líquido...............................................................................45
3.1.3 Agitador de bebidas.............................................................................47
3.1.4 Cortador de limão................................................................................49
3.1.5 Dosador de gelo...................................................................................51
3.1.6 Dosador de limão.................................................................................51
3.2 Projeto elétrico e eletrônico...................................................................52
4 TESTES REALIZADOS....................................................................64
5 RESULTADOS PRELIMINARES.....................................................66
6 CONCLUSÃO...................................................................................67
7 REFERÊNCIAS................................................................................68
8 ANEXOS...........................................................................................72
12
1 INTRODUÇÃO
O atual cenário do mercado demonstra que as empresas tem a necessidade
de manter um alto padrão de qualidade para que sejam atendidas as exigências dos
clientes, tais como custo, rapidez e uniformização dos produtos. Contudo, diversos
estabelecimentos têm dificuldade em manter um padrão, posto que, realizando seus
procedimentos de forma manual, muitas vezes um só funcionário precisa exercer
várias funções simultaneamente e em um espaço de tempo reduzido, o que pode
diminuir a sua atenção e prejudicar seu desempenho. Além disso, há limitação
humana para realizar um processo de forma padronizada, não se conseguindo
uniformidade dos procedimentos.
No segmento de restaurantes e bares observa-se dificuldade em fornecer
alguns tipos de serviços, como, por exemplo, os drinques, haja vista que para isso
seria necessário haver um funcionário exclusivo para a tarefa, devendo este
acompanhar cada etapa da produção da bebida.
Ademais, para que seja ofertado um produto de qualidade ainda é preciso que
o funcionário receba qualificação e avaliar que uma simples mudança do empregado
responsável pelo processo pode alterar a qualidade do drinque fornecido, pois,
mesmo seguindo um padrão, a forma como cada pessoa prepara uma bebida é
diferente.
Além dos problemas citados, alguns drinques têm outros empecilhos: em
bebidas que tem o limão como base, por exemplo, devido a características da fruta
que oxida rapidamente, a bebida passa a ter um gosto amargo, sendo aconselhável
o seu consumo logo após o preparo. Esta peculiaridade impossibilita o
armazenamento do produto, necessitando existir um funcionário do local à
disposição para realizar o procedimento sempre que um drinque deste tipo for
solicitado.
Diante disso, com o intuito de obter a padronização do sabor do drinque,
atender de forma mais rápida os clientes de bares e restaurantes, a proposta vem
para minimizar as demais dificuldades. Este trabalho propõe o projeto,
desenvolvimento e a automação do processo de preparação de caipirinha através de
uma máquina que possa realizar todos os procedimentos para a preparação da
bebida.
13
2 REVISÃO BIBLIOGRÁFICA
Neste capítulo serão expostos os estudos sobre os dispositivos e os conceitos
necessários acerca do sistema do projeto mecânico, elétrico e eletrônico da máquina
automática de preparação de caipirinha, que é o objetivo principal deste trabalho.
Para isso, delimitam-se todas as áreas teóricas que cercam o desenvolvimento do
protótipo, bem como as informações indispensáveis para a alcançar o objetivo
esperado.
2.1 Microcontroladores
Um microcontrolador é um sistema computacional completo (figura 01), no
qual estão incluídos uma CPU (Central Processor Unit), memória, um sistema de
clock, sinais de I/O (Input/Output), além de diversos outros possíveis periféricos, tais
como, módulos de temporização e conversores A/D entre outros, integrados em um
mesmo componente (chip).
As partes integrantes de qualquer computador e que também estão
presentes, em menor escala, nos microcontroladores são: unidade central de
processamento (CPU); sistema de clock para dar sequência às atividades da CPU;
memória para armazenamento de instruções e para manipulação de dados;
entradas para interiorizar na CPU informações do mundo externo; saídas para
exteriorizar informações processadas pela CPU para o mundo externo; programa
(software) para que o sistema faça alguma coisa útil.
Os microcontroladores são amplamente utilizados em sistemas de automação
e são ideais em aplicações que necessitam de controle ou envio de sinais
eletrônicos e que possuam um tamanho bem reduzido. Apesar de seu desempenho
ser menor do que de um microprocessador têm todos os periféricos necessários em
um tamanho diminuto (ANDRADE, 2006).
14
Figura 1 - Aplicações para microcontroladores
Fonte: MESSIAS, 2007
2.2 Arduino
O Arduino é uma plataforma de computação física microcontrolada, na qual
existe um software implementado em uma simples placa que possui uma interface
amigável com o computador que utiliza a linguagem Processing, baseada na
linguagem C/C++ e que, por ser de fácil utilização, vem ganhando espaço entre os
profissionais que utilizam microcontroladores (MCROBERTS, 2011).
Conforme descrito em ARDUINO (2014), o dispositivo tem seu código aberto
e as placas podem ser montadas ou compradas a um baixíssimo custo. Aliás, o
código do ambiente de desenvolvimento é regido sob licença GPL (General Public
License), as bibliotecas microcontroladas C/C++ sob LGPL (Library General Public
License), e os arquivos em CAD (Computer-aided design) sob Creative Commons
Attribution Share-Alike.
15
Figura 2 – Placa e microprocessador Arduino
Legenda: 01 – Conector USB; 02 – Transistor; 03 – Regulador de tensão; 04 – Conector de
energia elétrica; 05 – Pinos de força; 06 – Pinos analógicos; 07 – Microcontrolador Atmel
ATmega328; 08 – Cristal oscilador de 16MHz; 09 – Botão de Reset; 10 – ICSP; 11 – Pinos
digitais; 12 – LED (Light Emitting Diode) do pino 13; 13 – LED’s do dispositivo serial; 14 –
Controlador FTDI USB.
Fonte: ARDUINO, 2014
2.3 PIC
De acordo com MICROCHIP (2014), o PIC é uma família de
microcontroladores fabricados pela Microchip Technology, que processa dados de 8,
de 16 e, mais recentemente, de 32 bits. Seu nome é oriundo de "Programmable
Interface Controller" (Controlador de Interface Programável).
A componente conta com uma extensa variedade de modelos e periféricos
internos, além de possuir alta velocidade de processamento devido a sua arquitetura
Harvard e conjunto de instruções com recursos de programação por Memória flash,
EEPROM e OTP.
16
Ademais, o PIC trabalha em velocidades de 0 kHz (ou CA) a 48 MHz e
velocidades de 16 MIPS em alguns modelos e há o reconhecimento de interrupções
tanto externas como de periféricos internos e funciona com tensões de alimentação
de 1.8 a 6V e os modelos possuem encapsulamento de 6 a 100 pinos em diversos
formatos (MICROCHIP, 2014).
2.4 A linguagem C
Conforme descrito por KERNIGHAN (1988), C é uma linguagem de
programação compilada de propósito geral, estruturada, imperativa, procedural,
padronizada pela ISO, que foi criada em 1972, por Dennis Ritchie, no AT&T Bell
Labs, para desenvolver o sistema operacional Unix, originalmente escrito em
Assembly.
A linguagem C é uma das mais populares e existem poucas arquiteturas para
as quais não existem compiladores para a mesma, sendo esta útil para muitas
aplicações que foram codificadas originalmente em Assembly. Saliente-se que essa
propriedade não foi acidental, pois a linguagem C foi criada com o objetivo principal
de facilitar a criação de programas extensos com menos erros, recorrendo ao
paradigma da programação procedural, mas sobrecarregando menos o autor do
compilador, cujo trabalho complica-se ao ter de realizar as características complexas
da linguagem.
Assim, uma das consequências da aceitação geral da linguagem C é que,
frequentemente, os compiladores, bibliotecas e até intérpretes de outras linguagens
de nível maior sejam eles próprios implementados em C.
C tem como ponto forte a sua eficiência e é a linguagem de programação
preferida para o desenvolvimento de sistemas e softwares de base, apesar de
também ser usada para desenvolver programas de computador. Além disso,
também muito usada no ensino de ciência da computação, mesmo não tendo sido
projetada para estudantes e apresentando algumas dificuldades no seu uso.
Outra característica importante de C é sua proximidade do código de
máquina, que permite que um projetista seja capaz de fazer algumas previsões de
como o software irá se comportar ao ser executado (KERNIGHAN, 1988.
17
2.5 Servomotores
O servomotor, segundo SANTOS (2007), é uma máquina mecânica ou
eletromecânica que apresenta movimento proporcional a um comando, em vez de
girar ou se mover livremente sem um controle mais efetivo de posição como a
maioria dos motores, conforme mostrado na figura abaixo.
FIGURA 03 – Servomotor
Fonte: SANTOS, 2007
Ainda segundo SANTOS (2007), os servomotores possuem uma elevada
potência e trabalham em malha fechada. Logo, ao existir um sinal aplicado na
entrada o servomotor manterá a posição angular do eixo, ocorrendo uma mudança
de sinal, a posição angular do eixo varia, tendo assim grande precisão no seu
ângulo de giro. Sua estrutura é composta de duas partes: o estator que é a parte
fixa, e outra móvel, o rotor.
Os servomotores são recursos utilizados em máquinas e equipamentos, tendo
grande utilização na robótica e são classificados por CA Síncrono e Assíncrono e o
Servomotor CC. Cada qual tem peculiaridades que devem ser bem analisadas para
uma aplicação funcional (SANTOS, 2007).
Figura 3 - Servomotor
18
2.5.1 Características do servomotor
A característica mais marcante de um servomotor, de acordo com SANTOS
(2007), é a sua capacidade de movimentar o seu braço até uma posição e manter,
mesmo que este seja forçado em outra direção.
Sendo assim, as exigências básicas de um servomotor são: dinâmica,
controle de rotação, torque constante e precisão de posicionamento. Possui como
vantagem a possibilidade de se controlar o torque no eixo de forma constante e em
larga faixa de rotação.
No que se refere ao servo, é necessário analisá-lo por dentro e observar
todos componentes que o constituem para conseguir obter a compreensão do
dispositivo.
O servo possui circuito de controle que é responsável por receber os sinais e
energia do receptor, monitorar a posição do potenciômetro e controlar o motor de
acordo com o sinal do receptor e a posição do potenciômetro. Esse circuito formado
por componentes eletrônicos discretos ou circuitos integrados e geralmente é
composto por um oscilador e um controlador PID (controle proporcional integral e
derivativo).
O potenciômetro do servo trata-se de componente ligado ao eixo de saída
que monitora sua posição. O valor de sua resistência elétrica indica a posição
angular em que se encontra o eixo. A qualidade desse potenciômetro vai interferir na
precisão, estabilidade e vida útil do servomotor.
O servo ainda possui o motor que movimenta as engrenagens e o eixo
principal e as engrenagens que formam uma caixa de redução com uma relação
bem longa, o que ajuda a amplificar o torque, reduz a rotação do motor, transferem
mais força ao eixo de saída e movimentam o potenciômetro junto com o eixo.
Por fim, há o eixo de saída que transfere o torque de saída em algum
movimento específico e a caixa do servo que protege todos os demais
componentes.
2.5.2 Funcionamento do servomotor
Em artigo publicado, SANTOS (2007) mostra que servomotores possuem três
entradas: duas para alimentação e uma para o sinal de controle, conforme a figura
04.
19
Figura 4 - Entradas e saídas do servomotor
Fonte: SANTOS, 2007, modificado pelo autor
Utilizando um exemplo para um melhor entendimento um circuito de controle
do servo que fica monitorando este sinal em intervalos de 20 ms (milissegundos),
como mostrado na figura 05.
Figura 5 - Sinal PWM enviado ao servomotor
Fonte: SANTOS, 2007
No caso hipotético de que dentro deste intervalo, o controle percebe uma
alteração do sinal de 0 Volt para 5 Volts durante 1 ms até 2 ms ele altera a posição
do seu eixo para coincidir com o sinal que recebeu.
Um sinal de 1 ms corresponde a uma posição do braço do servo todo a
esquerda ou 0º. Já um sinal de 1,5 ms é o que chamamos de posição central do
servo ou 90º. Por outro lado, um sinal de 2 ms corresponde a uma posição do braço
do servo todo a direita ou 180º, como pode ser visualizado nas figuras 06, 07 e 08,
respectivamente.
Figura 6 - Sinal PWM com pulso de 1 milisegundo
Fonte: SANTOS, 2007
20
Figura 7 - Sinal PWM com pulso de 1,5 milisegundo
Fonte: SANTOS, 2007
Figura 8 - Sinal PWM com pulso de 2 milisegundos
Fonte: SANTOS, 2007
Uma vez que o servomotor recebe um sinal de 1,5 ms, por exemplo, ele
verifica se o potenciômetro encontra-se na posição correspondente, se estiver, nada
é feito, se, no entanto, o potenciômetro não estiver na posição correspondente ao
sinal recebido, o circuito de controle aciona o motor até que o potenciômetro esteja
na posição certa.
Ainda de acordo com SANTOS (2007), se a posição do braço do servo for
alterada à força, percebe-se que ele faz uma resistência e tenta manter a posição
que lhe foi designada pelo sinal que recebeu. Isto ocorre porque o potenciômetro
está conectado diretamente ao eixo de saída e detecta qualquer alteração na
posição do mesmo.
Diante dessa característica, se deduz que faz o servo é muito importante para
o trabalho proposto, visto que quando recebe um comando para ir para uma
determinada posição, ele se coloca no ponto especificado, permanecendo neste
local até receber um novo comando.
Esta resistência que o servomotor faz a uma mudança à força da posição do
seu braço, denomina-se Torque. O torque tem como unidade de medida em kg/cm
( Quilogramas por centímetro ) ou oz/in ( Onças por polegadas ).
21
Figura 9 - Torque do eixo de saída do servomotor
Fonte: SANTOS, 2007
Considerando que o braço deste servo tem um centímetro até o ponto em que
é conectado ao peso que tem 1 kg, o servo consegue manter a posição do seu
braço mesmo com o peso puxando para baixo sem ceder ou quebrar. Logo, pode-se
dizer que este servo tem um torque de 1 kg/cm ou 14 oz/in, mas se estes limites
forem excedidos provavelmente o servo terá suas engrenagens danificadas.
2.6 Tipos de servomotores
De acordo com SANTOS (2007), os servomotores, em geral, são
classificados em categorias, aumentar sobre as categorias segundo demonstrado
na figura a seguir.
22
Figura 10 - Tipos de servomotores
Fonte: SANTOS, 2007
2.7 Motores de corrente contínua
Segundo SIEMENS (2014), as máquinas de corrente contínua surgiram como
uma forma de solucionar muitos problemas, pois sua velocidade pode ser
continuamente alterada mediante a variação da tensão de alimentação. Devido a
este fator, conseguiu-se suprir a necessidade de controle, variação de velocidade e
de torque em máquinas elétricas. Além disso, em toda faixa de velocidade os
motores CC apresentam torque constante menos na região de enfraquecimento de
campo.
23
Com o desenvolvimento do estudo de técnicas para acionamentos de
corrente alternada (CA) associado ao controle de motores de indução acionados por
inversores de frequência, obteve-se uma melhor viabilidade econômica que têm
favorecido a substituição dos motores de corrente contínua (CC) pelos de indução.
Ainda assim, os motores de corrente continua mesmo assim é muito utilizado devido
as suas características (WEG, 2014).
2.7.1 Princípio de funcionamento
Um motor de corrente contínua tem seu funcionamento descrito por forças
que são produzidas da interação entre a corrente de armadura no rotor e o campo
magnético. O funcionamento baseia-se no princípio do eletromagnetismo clássico
pelo qual um condutor é carregado por uma corrente e mergulhado em um fluxo
magnético fica submetido a uma força eletromagnética.
Devido à força que atua na espira, essa irá se movimentar com um giro até o
momento que a força resultante é nula, momento em que o movimento não tem
continuidade. A seguir o comutador de corrente realiza a inversão da corrente na
espira para que se torne um movimento contínuo, ocorrendo assim a circulação de
corrente alternada no rotor através de uma fonte de corrente contínua.
Várias espiras montadas sobre um tambor e conectadas ao comutador são
defasadas no espaço para se obter um conjugado constante durante todo um giro da
armadura do motor (SIEMENS, 2014).
24
Figura 11 - Esboço de um motor de corrente contínua
FONTE: SIEMENS, 2014
2.8 Mecanismos
Um mecanismo é um dispositivo utilizado para transformar um movimento
qualquer em um movimento padrão desejado. Neste projeto serão utilizados alguns
tipos de mecanismos que serão detalhados nos próximos tópicos.
A respeito disso, Robert Norton aduz:
Hunt define o mecanismo como ‘um meio de transmitir, controlar ou limitar um movimento relativo’. Uma outra definição de mecanismos é um sistema de elementos unidos e organizados para transmitir movimento de uma maneira predeterminada (NORTON, 2009, p. 24).
Os mecanismos são classificados de acordo com vários parâmetros: um deles
é o grau de liberdade, que pode ser definido como “[...] o número de parâmetros
independentes necessários para definir uma única posição no espaço em qualquer
instante de tempo” (NORTON, 2009, p. 48).
25
Nos mecanismos os elementos responsáveis por transmitir movimento ou
força são chamados de ligações ou barras. Estes dispositivos necessitam de demais
elementos que façam a transmissão para outras barras para que o movimento possa
ser transmitido, sendo estes denominados como junta cinemática.
2.9 Mecanismos para movimentação linear
Existem diversos tipos de mecanismos de movimento linear, tais como barra,
came, seguidor, parafuso de potência, atuador pneumático ou hidráulico e solenóide.
Assim, a escolha do tipo de mecanismo a ser utilizado pode ter um efeito significante
na qualidade do projeto, pois cada um deles possui características próprias. Um
exemplo disso é o mecanismo de barras que possui altos níveis de vibrações ou o
mecanismo came seguidor que possui um elevado custo, porem é muito preciso e
com repetibilidade (NORTON, 2009, pag. 114).
2.9.1 Biela manivela
A biela manivela é utilizada para transformar um movimento de translação em
um movimento de rotação ou vice-versa, mas o mecanismo admite somente
movimentos planos.
De acordo com Norton (2009), o grande uso da biela manivela deve-se a sua
simplicidade e versatilidade. Assim, utiliza-se uma corrediça ou pistão para que o
movimento plano de rotação da manivela seja transformado em um movimento
retilíneo de translação na corrediça, enquanto a biela que liga os dois elementos faz
um movimento misto (rotação e translação), conforme esquema ilustrado na figura
12 abaixo.
26
Figura 12 - Esboço de um mecanismo biela manivela
Legenda: 1 – partes fixas; 2 – manivela; 3 – biela; 4 – corrediça ou pistão.
FONTE: Hamilton, 1980
2.9.2 Came seguidor
O came, segundo J. C. Pimenta Claro, pode ser descrito como “um órgão
mecânico cuja função é, por contato direto, conduzir ou impor um determinado
movimento a um outro elemento, designado como seguidor” (CLARO, 2004, p. XX).
O sistema came seguidor pode ser classificado de muitas maneiras, tais como
o tipo de movimento do seguidor, a espécie de came, o tipo de fechamento da junta,
a espécie de seguidor, o tipo de movimento critico e pela movimentação programada
(NORTON, 2009).
A figura 13 demonstra alguns destes tipos de classificação do came seguidor.
27
Figura 13 - Tipos de cames e seguidores
FONTE: CLARO, 2004
2.9.3 Parafuso de potência
O parafuso de potência, segundo SHIGLEY (2005), é um dispositivo utilizado
em máquinas para transformar o movimento angular do parafuso em movimento
linear da porca e também para transmitir potência. As aplicações mais comuns do
componente são em cilindros elétricos, tornos mecânicos, parafusos para morsa,
prensas e macacos.
Ressalte-se que nos cilindros elétricos a aplicação do parafuso de potência
vem ganhando mais espaço no meio industrial, devido à eficiência energética,
segurança, limpeza e a possibilidade de integrar com sistemas de controles com
simplicidade. Em comparação com os sistemas hidráulicos e pneumáticos, este
sistema é mais fácil de instalar, pois ocupa menos espaço, uma vez que não há
mangueiras e bombas.
A figura 14 demonstra a aplicação de parafusos de potência em um macaco
movido a um motor elétrico.
28
Figura 14 - Aplicação de parafuso de potência em macaco de elevação
FONTE: SHIGLEY, 2005
Na figura 15 pode-se observar um cilindro elétrico que possui um motor
elétrico acoplado ao mecanismo de parafuso de potência.
Figura 15 - Aplicação de parafuso em um cilindro elétrico, com motor acoplado
FONTE: MANUTENÇÃO, 2014
2.9.4 Atuador hidráulico ou pneumático
29
Os atuadores hidráulico ou pneumático, na visão de NORTON (2009), podem
ser definidos como atuadores que oferecem um deslocamento a partir de fluxo de
fluido pressurizado na entrada que pode ser tanto ar comprimido ou fluido hidráulico,
geralmente óleo.
Estes sistemas possuem a vantagem de serem robustos, o que os tornam
relativamente insensíveis a vibrações e golpes. Além disso, são sistemas de simples
aplicação, não exigindo mão de obra de alta qualificação para manutenção.
NORTON (2009) afirma que suas aplicações são limitadas para uso em
pequena escala, pois necessitam da disponibilidade de ar comprimido ou uma fonte
hidráulica.
Figura 16 - Vista cortada de um pistão pneumático
FONTE: MECÂNICA, 2014
2.10 Sensores
Sensores são componentes capazes de captar informações sobre um
determinado sistema e repassá-las a um circuito elétrico de controle. Eles têm a
função de informar um circuito eletrônico sobre um evento externo, como uma
indicação de posição, temperatura e pressão, indicando ao atuador qual é a
determinada ação que o mesmo deve tomar (THOMAZINI, 2011).
30
Entretanto, nem sempre o sensor possui características necessárias para que
o seu sinal seja utilizado diretamente em um sistema de controle. Para que isto seja
possível, normalmente o sinal do sensor é manipulado através de um circuito de
interface, para que o sinal possa ser compreendido pelo atuador (THOMAZINI,
2011).
Um sensor muda o seu comportamento sob a ação de uma grandeza física,
podendo fornecer direta ou indiretamente um sinal que indica essa grandeza e
convertendo uma quantidade física em um sinal elétrico (DALLY et al, 1993).
Num processo automatizado são necessários componentes responsáveis por
manter o sistema informado sobre o andamento do mesmo, sendo então utilizados
os sensores para captar as informações necessárias no decorrer do processo e
repassá-las ao circuito elétrico de controle (BONACORSO, 2004).
2.10.1 Sensores analógicos
O sensor analógico pode assumir valores distintos dentro de uma faixa de
operação e o seu sinal de saída indica medições correspondentes aos indicados em
um determinado intervalo.
Saliente-se que determinadas grandezas físicas podem assumir valores
distintos ao longo do tempo. Temperatura, pressão, velocidade e muitas outras
grandezas são mensuradas por elementos sensíveis com circuitos eletrônicos não
digitais como apresentado na figura 17.
Figura 17 - Variação de uma grandeza física em um sensor analógico
Fonte: THOMAZINI, 2011
31
2.10.2 Sensores digitais
Os sensores digitais assumem como saída apenas dois valores ao longo do
tempo, que podem ser interpretados como nível alto ou baixo, indicado por uma
mudança física no interior do sensor semelhante a um botão de acionamento.
Normalmente não existem grandezas físicas com este determinado
comportamento, então a utilização deste tipo de sensor é mais recorrente em
dispositivos de fim de curso e na detecção de passagem de objetos, por exemplo
(THOMAZINI, 2011).
O sensor digital pode ser associado com um encoder incremental, fazendo
com que ele possa ser utilizado para determinar a posição ou velocidade de um
objeto, como mostrado na figura abaixo.
Figura 18 - Leitura da posição de um objeto por um encoder incremental
Fonte: THOMAZINI, 2011
2.10.3 Sensor de contato por acionamento mecânico
O sensor de contato por acionamento mecânico é uma chave elétrica
acionada mecanicamente pelo movimento dos elementos que compõem o sistema,
através de um dispositivo atuador localizado no sensor. A vantagem deste tipo de
dispositivo é a facilidade de encontra-lo a um baixo custo.
O elemento atuador pode ser curto, convencional, longo, com rolete, com
falso rolete e com rolete escamoteável. Este último permite o acionamento do sensor
apenas em um sentido do movimento, enquanto nos outros tipos é possível o
acionamento nos dois sentidos de movimento (ida e volta).
32
O sensor de contato mecânico possui três terminais acessíveis: o comum (C),
o normalmente aberto (NA) e o normalmente fechado (NF); conforme demonstrado
na figura 19 (BONACORSO, 2004).
Figura 19 - Esquema elétrico dos terminais do sensor de contato mecânico
Fonte: BONACORSO, 2004
Este tipo de sensor não é indicado em casos em que o número de
comutações do dispositivo é muito elevado, pois isto pode acarretar um desgaste
mecânico prematuro dos contatos elétricos do dispositivo.
2.10.4 Sensor de contato com acionamento magnético
O sensor de contato com acionamento magnético é uma chave elétrica
acionada por um imã, sendo utilizado onde o ambiente é hostil, com presença de
poeira ou umidade, bem como quando não há espaço suficiente para a montagem
do sensor de contato por acionamento mecânico. Este tipo de sensor também é
apropriado para situações em que o número de comutações é muito elevado.
O sensor desta espécie apresenta dois terminais acessíveis, podendo ser
normalmente aberto ou normalmente fechado, de acordo com a necessidade de
projeto (BONACORSO, 2004).
Figura 20 - Esquema elétrico dos terminais do sensor de acionamento magnético
Fonte: BONACORSO, 2004
2.10.5 Sensor óptico por retrorreflexão
33
O sensor óptico por retrorreflexão possui conjunto formado pelo emissor e
pelo receptor localizado no mesmo corpo. Um feixe de luz é estabelecido entre eles
através de um refletor, localizado do lado oposto ao conjunto. Assim, quando um
objeto passa entre o conjunto e o refletor, interrompe o feixe de luz, indicando assim
a presença deste.
Entretanto, objetos muito transparentes ou muito brilhantes podem não ser
detectados por este tipo de sensor. Para o seu perfeito funcionamento ele depende
do refletor, condição de limpeza, instalação e características construtivas adequadas
(THOMAZINI, 2011).
Figura 21 - Sensor óptico por retrorreflexão
Fonte: THOMAZINI, 2011
2.10.6 Sensor óptico por transmissão
O sensor transmissivo tem seu funcionamento baseado na detecção por
barreira de luz. O emissor e o receptor são localizados em diferentes corpos e ao
serem alinhados formam entre si uma barreira de luz que, quando interrompida pelo
objeto, faz com que o sensor seja ativado (THOMAZINI, 2011).
Figura 22 - Sensor óptico por transmissão
Fonte: THOMAZINI, 2011
34
2.11 Dosadores
Dedicado à máquina ou instalado em centrais, os dosadores ocupam papéis
de destaque na automação industrial. Assim, a evolução tecnológica e a informação
têm sido as principais aliadas para impulsionar sua venda, pois "mostramos na
prática as vantagens do equipamento, cuja amortização se dá em poucos meses de
uso” (PRADO et al, 2004, p. 04).
Dosadores de pós e particulados, como por exemplo, farinha de trigo, milho,
sais minerais, cereais e aditivos químicos são aplicados nas indústrias de sorvetes,
sucos, misturas e moinhos de trigo. Este equipamento, no entanto, é um exemplo
claro de um arranjo que merece mais atenção no que diz respeito a aumento de
eficiência (PRADO et al, 2004).
Os dois tipos de dosadores mais comuns encontrados nas instalações de
indústrias que os utilizam na medição de produtos particulados são os dosadores
mássicos e volumétricos. Um mecanismo dosador é responsável pelo fluxo da
substância do recipiente de depósito para o distribuidor, podendo seu mecanismo
ser gravitacional ou volumétrico (PRADO et al, 2004).
35
2.11.1 Dosadores gravimétricos
Dosadores gravimétricos, também chamados de mássicos, são utilizados
para dosar certa quantidade de produto tendo como base sua massa e
proporcionam maior precisão e homogeneidade na dosagem de materiais, corantes
e aditivos. Já o material granulado é pesado independentemente por uma célula de
carga monitorada por um controlador microprocessado, o qual libera a mistura assim
que atinge o peso programado.
Esse tipo de dosador é aplicado em indústrias que utilizam produtos
particulados mais sólidos, como por exemplo, grãos que possuem tamanhos e
formas variadas.
Como o próprio nome diz, o seu funcionamento é através da força da
gravidade, deixando com que o produto escoe do reservatório para o distribuidor
devido à ação da gravidade. Em alguns casos pode haver a presença de um
agitador mecânico para reduzir os riscos de travamento do sistema de distribuição
(PRADO, 2004).
Figura 23 - Dosador gravimétrico
Fonte: BRABENDER, 2014
36
2.11.2 Dosadores Volumétricos
Os dosadores volumétricos utilizam como medida de dosagem o volume do
produto a ser dosado e comportam três componentes simultaneamente em que,
através de um comando microprocessado, controla-se o motorredutor e o inversor
de frequência, o que permite a dosagem contínua da mesma porcentagem,
garantindo uma precisão da mistura dentro do processo.
Assim, é utilizado para dosar com intervalos de tempo pré-determinado,
aplicado em indústrias que trabalham com produto líquido, em pó ou
microparticulados.
O dosador volumétrico tem o seu funcionamento baseado no controle do fluxo
através de um volume específico do produto, o qual é controlado de maneira
contínua, sendo retirado do depósito e encaminhado ao distribuidor. Dosadores
volumétricos tem acionamento através de elementos mecânicos que permitem a
manutenção e regularidade da vazão. Os elementos mecânicos comumente
utilizados no acionamento do dosador são mecanismos hidráulicos e em alguns
casos são utilizados mecanismos acionados por um motor elétrico (MIALHE, 1986).
Figura 24 - Dosador volumétrico
Fonte: PRODUTOS Spartak, 2014
37
2.12 Normas alimentícias
O objetivo da Vigilância Sanitária com relação aos alimentos é fiscalizar
estabelecimentos que produzem, comercializam, distribuem e/ou armazenam os
alimentos, o que ocorre por meio do licenciamento e cadastramento destes locais.
Logo, as equipes de fiscalização tem a finalidade primordial de avaliar as
condições higiênico-sanitárias dos estabelecimentos e dos produtos alimentícios por
eles comercializados. (GERMANO, 2008).
De acordo com a Instrução Normativa n. 5, de 31 de março de 2000, os
equipamentos e recipientes utilizados nos diversos processos produtivos não
deverão constituir um risco para a saúde para isso tem se que os recipientes que
são reutilizados devem ser feitos de material que permitam a limpeza e a
desinfecção completa.
Ademais, todo processo que envolva a manipulação de alimentos deve ter um
cuidado referente à proteção contra a contaminação das matérias-primas para que
não haja danos à saúde.
Desta forma, com o intuito de evitar contaminações químicas, físicas ou
microbiológicas devem ser utilizados controles adequados, bem como medidas de
controle devem ser tomadas com relação à prevenção de possíveis danos, inclusive
o armazenamento no local de produção.
Sendo assim, as matérias-primas devem ser armazenadas em condições que
garantam a proteção contra a contaminação e reduzam ao mínimo os danos e
deteriorações. Logo, o material utilizado para a produção deve ser escolhido de
forma a satisfazer todos os critérios descritos acima (ANVISA, 2014).
2.12.1 Aço inoxidável
Aços com teores de cromo livre na matriz superiores a 11% e que tem a
capacidade de formar película superficial aderente, não porosa e auto regenerativa,
chamada de película passiva. Tal película, protegendo o aço da ação de agentes
corrosivos, tais como atmosfera, meios aquosos ou orgânicos, confere grande
resistência à corrosão.
38
Deste modo, estes aços recebem a denominação inoxidáveis. Além disso, a
adição de outros elementos de liga, como molibdênio, níquel e nitrogênio, aumenta
ainda mais sua resistência à corrosão (SEDRIKS, 1996).
Alguns elementos como cromo, silício e molibdênio tem a capacidade de
atuar como estabilizadores da fase ferrita, de estrutura cristalina cúbica de corpo
centrado; outros, como níquel, manganês, cobre, carbono e nitrogênio são
estabilizadores da austenita (cúbica de faces centradas).
Assim, a introdução de elementos com o intuito de aumentar a resistência à
corrosão leva a estabilização de uma ou outra fase, resultando em diferentes
comportamentos mecânicos (SOLOMON; DEVINE, 1982).
2.12.2 Alumínio
O alumínio é um metal branco acinzentado dúctil e maleável, geralmente
encontrado na natureza em forma de alumina (óxido de alumínio). É um dos
elementos metálicos mais abundantes da crosta terrestre, sendo que o minério que
o possui em maior concentração é a bauxita. Quando utilizado em forma de ligas
metálicas tem excelentes propriedades físico-químicas, dentre as quais se destacam
o seu baixo peso específico, a resistência à corrosão e propriedades antimagnéticas,
o que o torna um dos metais mais utilizados na indústria (ABAL, 2014).
2.12.3 Poliacetal
O poliacetal é um polímero utilizado amplamente na engenharia por possuir
excepcional estabilidade dimensional, baixo coeficiente de atrito e excelente
resistência ao escoamento e à fadiga por vibrações mecânicas.
Aliás, trata-se de um termoplástico obtido a partir do aldeído fórmico, cujas
resinas possuem estrutura com alto índice de cristalização, o que confere a este
polímero resistência mecânica, térmica e elevada resistência à abrasão de agentes
químicos. É um material de fácil usinagem, além de possuir peso específico muito
inferior aos metais comumente utilizados na indústria e a um preço inferior
(DATASHEET VICK, 2014).
39
3 METODOLOGIA
Para o desenvolvimento da máquina foi proposto um pocesso sequencial de
funcionamento para a produção da caipirinha, sendo esse processo ordenado pelo
acionamento de mecanismos de acordo com necessidade de dosagem dos
ingredientes.
Para o ínicio é necessário o abastecimento da máquina com os ingredientes
de preparo, esses são limão, açúcar, cachaça e gelo. A máquina possui um funil que
tem como função direcionar os ingredientes provenientes dos dosares para o copo
de mistura. Os elementos dosadores são localizados acima deste funil e o copo de
mistura situa-se abaixo do mesmo.
Em seguida o operador coloca o copo e executa o comando de partida,
iniciando o procedimento de dosagem e mistura de todos os ingredientes. O sistema
é iniciado retirando um limão do recipiente onde o mesmo é armazenado e
transportando-o para um cortador.
O corte do limão é realizado através de um acionamento mecânico que, ao
ser concluído, já dispensa os pedaços cortados dentro do funil. Em seguida, o
dosador de açúcar é acionado pelo sistema, conferindo a quantidade
preestabelecida do ingrediente também no funil.
Após este procedimento, o sistema aciona mecanicamente o dosador de
bebida, liberando a quantidade especificada para o drinque e, em seguida, ocorre a
adição do gelo de forma previamente definida.
Ao final da etapa de dosagem de ingredientes no copo, é realizado o
fechamento do copo para a continuidade do processo, então é dado início o
processo de agitação. Após a máquina finalizar o processo de agitação a tampa é
retirada do copo e assim ser servida ao cliente.
Para isso, foi levado em consideração o comportamento de cada ingrediente
no processo e, de acordo com estas características, o melhor posicionamento e
ordem de liberação de cada elemento do drinque, conforme a figura 26 demonstra.
40
Figura 25 - Croqui de funcionamento
Fonte: Autor, 2014
O mecanismo que realiza o corte do limão é composto por um sistema
atuador que realiza uma força sobre a fruta para efetuar o seu corte, além da lâmina
do cortador.
Assim, para que se decidisse qual atuador e qual tipo de lâmina seriam mais
bem aproveitados no projeto foram realizados alguns testes empíricos para calcular
um valor aproximado exigido para que o sistema pudesse realizar o que foi proposto
inicialmente.
41
Outro ponto de fundamental importância é o armazenamento e distribuição
correta do gelo, pois, em alguns casos, o gelo apresenta uma característica de
aglomeração entre suas unidades, dificultando a sua dosagem correta. Isso ocorre
geralmente quando o armazenamento é feito em refrigerador, visto que a baixa
temperatura faz com que o gelo fundido solidifique-se novamente criando esse efeito
de aglomeração.
Desta forma, em um recipiente de acondicionamento sem refrigeração e
submetido a algum tipo de agitação, esse problema é minimizado, fazendo com que
a sua dosagem correta seja facilitada.
Na figura 27 pode ser observado um fluxograma contendo todas as etapas do
processo, ilustrando melhor o modo de operação do equipamento e os respectivos
procedimentos.
Figura 26 - Fluxograma de funcionamento da máquina redesenhar
Fonte: Autor, 2014
42
A máquina de caipirinha consiste na elaboração do projeto e desenvolvimento
do equipamento. A etapa de projeto e construção está dividida em três partes:
projetos mecânico, eletrônico e elétrico.
3.1 Projeto mecânico
Como se pode observar, para que a máquina trabalhe de forma correta, é
necessário o cálculo de cada um dos mecanismos e motores da máquina para que
cada função seja realizada com sucesso. Para obter tais cálculos, foram necessários
conhecimentos de analises dimensionais e mecânica geral.
Figura 27 - Mecanismos de acionamentos
Fonte: Autor, 2014
O conceito fundamental para o funcionamento de cada função da máquina
está no torque necessário em cada motor, em cada movimento linear seu
deslocamento e a velocidade para realizar a tarefa.
As tarefas estão divididas em:
1- Especificação do motor em termos de deslocamento e velocidade do
dosador de açucar.
2- Calculo motor, deslocamento e velocidade do dosador de liquido.
43
3- Cálculo motor, deslocamento e velocidade do agitador de bebidas.
4- Cálculo motor, deslocamento e velocidade do cortador de limão.
5- Cálculo servomotor, deslocamento e velocidade do dosador de limão.
6- Cálculo servomotor, deslocamento e velocidade do dosador de gelo.
3.1.1 Dosador de açúcar
O dosador de açúcar é um dispositivo que sua função é disponibilizar de
forma sistemática uma quantidade determinada de açúcar para o sistema.
Inicialmente foi adquirido no mercado um dosador pronto que a partir dele será
desenvolvido um sistema mecânico e automático para realizar a dosagem no
momento desejado.
Figura 28 - Dosador de açúcar adquirido
Fonte: Autor, 2014.
Inicialmente foi experimentalmente realizada a aquisição de dados do
dosador. De posse do dosador foi realizado a aferição de qual o deslocamento
linear, a força necessário para esse deslocamento total e também qual velocidade
seria a ideal para a realização correta da dosagem.
44
Os dados obtidos foram:
1- Força => 4,5 kgf
2- Velocidade => De 4,6 segundos
3- Deslocamento => 27 mm
A partir destes dados e os estudos de mecanismos, foi definido que o
mecanismo a ser utilizado seria um came seguidor, devido ao mecanismo oferecer
um deslocamento linear que satisfaz as condições do sistema utilizado. Com isso
foram feitos os cálculos:
1- Para obter o torque do motor utiliza-se a força e também o deslocamento
do centro do eixo do motor para a confecção da came. Utilizando-se um
deslocamento de 27 milímetros, o desvio do eixo do motor será de 13,5
milímetros, pois ao girar o came seguidor tem-se a transformação de
rotação em movimento linear nessa proporção dada acima. Então:
Torque = Força x Distância do eixo
Torque = 4,5 Kgf x 1,3 cm
Torque = 5,85 Kgf.cm
2- Para obter a velocidade de um motor em rotação por minuto a partir da
velocidade em segundos calcula-se:
60 segundos = 1 minuto
60 / 4,6 = 13,04 rpm
Considerando os cálculos acima estão desprezando o atrito entre as guias
lineares então foi escolhido um motor com uma margem de segurança e as opções
de mercado de motor que foram pesquesidas optou-se com o motor com
especificações:
Motor com Redução
Tensão nominal: 12Vcc
45
Velocidade sem carga: 13 Rpm
Corrente máx. rendimento: 0,3A
Potência: 3,69W
Toque: 8,5 Kgf.cm
caixa de redução: 1:640
Figura 29 - Came seguidor Melhorar desenho
Fonte: Autor, 2014.
3.1.2 Dosador de líquido
O dosador de liquido tem a função de oferecer quantidades desejadas ao
sistema, e no mercado foi encontrado um dosador de bebidas alcoólicas que atende
as características exigidas pelo projeto. Para acionar esse dosador foi utilizado o
mesmo sistema no dosador de açúcar, pois esse oferece o mecanismo desejado.
46
Figura 30 - Dosador de bebida Desenho com garrafa
Fonte: Autor, 2014
A aquisição de dados do dosador foi realizada experimentalmente, para
dimensionamento do motor a ser utilizado. Nesse dosador foi utilizado as mesmas
aferições de dados do dosador de açúcar, pois estes utilizam os mesmos
mecanismos de acionamento. Os dados foram:
1- Deslocamento => 8 mm
2- Força => 1,5 Quilograma-força
3- Velocidade => 4,5 segundos
Considerando a aquisição de dados foram realizados os seguintes cálculos:
1- Para obter o torque do motor utiliza-se a força e também o deslocamento
do centro do eixo do motor para a confecção da came. Com isso utilizando
um deslocamento de 8 milímetros o desvio do eixo do motor será de 4
milímetros pois ao girar o came seguidor tem-se a transformação de
rotação em movimento linear nessa proporção dada acima. Então:
Torque = Força x Distância do eixo
Torque = 1,5 Kgf x 0,8 cm
Torque = 1,2 Kgf.cm
47
2- Para obter a velocidade de um motor em rotação por minuto a partir da
velocidade em segundos calcula-se:
60 segundos = 1 minuto
60 / 4,6 = 13,04 rpm
Considerando os cálculos acima estão desprezando o atrito entre as guias
lineares então foi escolhido um motor com uma margem de segurança e as opções
de mercado de motor que foram oferecidas levou ao motor com especificações:
Motor com Redução
Tensão nominal: 12Vcc
Velocidade sem carga: 13 Rpm
Corrente máx. rendimento: 0,3A
Potência: 3,69W
Toque: 8,5 Kgf.cm
caixa de redução: 1:640
3.1.3 Agitador de bebidas
Este mecanismo é o mais complexo do trabalho devido ao fato de trabalhar
com vibração do sistema e de ter muitas variáveis que podem causar danos a
estrutura. Pelo fato da complexidade e exigência do sistema por troque e velocidade
optou-se pelo motor de ventoinha de carro.
48
Figura 31 - Esquemático agitador
Fonte: Autor, 2014.
Com os estudos realizados foi decidido que o mecanismo utilizado seria o de
um came seguidor novamente devido ao fato de que necessita-se de um movimento
linear para agitar o copo com a caipirinha. Foram feitos testes para o estudo de qual
o deslocamento, a velocidade e a força necessária para realizar o movimento
desejado.
O primeiro teste realizado foi o preparo de um copo com todos os ingredientes
dosados, a partir do preparo desse copo foi realizado a pesagem desse copo que foi
verificado o peso de 0,8 quilograma-força. Outro teste realizado foi agitar esse copo
fechado para verificar com qual velocidade seria necessária para que o preparo seja
realizado, onde ao final seria obtido um produto de padrão de qualidade bom, nesse
teste foi verificada uma frequência de 4 Hertz.
Para o estudo do motor inicialmente foi feito a obtenção de dados no
laboratório com uma fonte regulável com até 12 Volts e corrente máxima de 10
Amperes e um estroboscópio. Isso foi utilizado para medir a rotação com diferentes
tensões e os dados obtidos foram:
1- Para Tensão = 5 Volts
49
Rotação = 282 rpm
Corrente = 2 A
2- Para Tensão = 6 Volts
Rotação = 475 rpm
Corrente =2,3 A
3- Para Tensão = 12 Volts
Rotação = 680 rpm
Corrente =5 A
Foto do agitador
3.1.4 Cortador de limão
Na máquina de caipirinha existe também o mecanismo para o corte do limão
para este foi decidido utilizar o parafuso de potência, pois nos testes experimentais
foi notado que o limão exige um torque para o seu corte. O teste realizado foi com o
cortador de limão posicionado com o limão em ponto de corte no qual é possível
medir a força necessária para que esse corte aconteça. Foi verificado que a força
necessária para o corte do limão é de 20 Kgf e para o posicionamento do limão um
deslocamento de 160 mm.
50
Figura 32 - Cortador de limão
Fonte: Autor, 2014
Com esse deslocamento foi notado a necessidade de um motor que
fornecesse um torque e velocidade suficiente. Para a utilização nesse processo foi
usado um parafuso com rosca trapezoidal que tem o passo de rosca com 5mm.
Utilizando esse parafuso obteve-se uma relação de 32 rotações no parafuso para
que o corte do limão seja realizado totalmente.
Em busca de um motor com essas características foi utilizado um motor de de
acionamento de limpador de para brisa com as seguintes especificações:
Foto
Motor 12 Volts
Rotação = 52 rpm
Corrente máxima = 5,5 A
Torque = 30 kgf.cm
3.1.5 Dosador de gelo
51
Para a dosagem do gelo foi confeccionada uma estrutura que é acionada por
um servomotor que seleciona uma pedra de gelo e direciona para o funil. Para esta
estrutura o cálculo realizado foi em relação a força necessária para o servomotor
realizar o movimento desejado, desconsiderando o atrito pois será colocada uma
margem de segurança. O bloco de gelo com massa de no máximo 100 gramas e
toda a estrutura com uma massa de 450 gramas suportada pelos mancais no eixo.
Foi utilizado um servomotor com torque de 0,7kgf.cm considerando uma margem de
segurança que atende os aspectos desejados para realizar o movimento.
Figura 33 - Desenho mecanismo do dosador
Fonte: Autor, 2014
Foto pronto
3.1.6 Dosador de limão
Para o funcionamento da máquina existe um dosador de limão que direciona
o limão para o cortador, fazendo com que seja selecionado um de cada vez. Para
acionar o sistema foi construído uma estrutura semelhante a estrutura do dosador de
gelo, apenas o local onde o limão fica encaixado é maior pois o raio do limão é
diferente. O limão tem um peso de 200 gramas em média e a estrutura tem uma
massa de 450 gramas.
Fot e legend
52
3.2 Projeto elétrico e eletrônico
Utilizando como ferramenta de controle o Arduino em comunicação com o
Matlab foi iniciada a programação da máquina. Para uma melhor construção e
realização de testes na máquina foi elaborado um supervisório que é uma
ferramenta de comunicação entre as entradas e saídas do Arduino com um painel
de controle elaborado no Matlab.
Figura 34 - Esquemático de comunicação
Fonte: Autor, 2014
Conforme esquemático eletrônico da máquina temos as seguintes operações com o
controle:
53
1- Verificação de estado dos sensores de contato do copo, porta fechada e
botão de inicio apertado.
2- Após verificacação das condições de inicio tem-se o acionamento do
servomotor para dosagem de limão para o cortador, esse servomotor desloca
de 0° até atingir 90° onde volta para a posição inicial.
3- O corte será realizado havendo limão na posição e um sensor de contato no
final do deslocamento irá desligar o motor e depois inverté-lo para que o
cortador volte para a posição inicial, sendo este desligado por um outro
sensor no final deste deslocamento.
4- O passo seguinte é a dosagem de açúcar, do gelo e do liquido. Logo depois é
realizado o acionamento do motor para dosar o açúcar, selecionador de gelo
que é um servomotor e o motor do dosador de liquido. O motor dosador de
sólido é acionado pelo sistema e ao completar uma volta é desligado ao ter
contato com sensor. O selecionador de gelo faz o servomotor deslocar de 0°
até 90° onde volta para a posição inicial de 0°.
5- O fechamento do copo é realizado para a continuidade do processo e logo o
agitador é acionado por um tempo até que é desligado por um controle de
velocidade. Tem também um sensor que ao final do deslocamento do motor
desliga em uma posição desejada.
Para o acionamento e controle dos motores e para leitura do sinal dos
sensores foi desenvolvido um sistema microcontrolado. Então para a confecção de
placas foi utilizado o programa Protheus, onde nele é possível fazer simulações do
circuito.
1- Placa acionamento de dois servomotores.
Primeiramente foi confeccionada uma placa eletrônica para o acionamento
dos servomotores. Nessa placa tem-se a conexão para os servomotores, um
Led para sinalizar o funcionamento e conexão do arduino para comandar o
servomotor
- 1 Conector duas saídas
- 1 Resistor para LED
- 3 unidades de barra para conexão Arduino e servomotor
- Led 5mm
54
Figura 35 - Esquemático placa servomotor
FONTE: Autor, 2014.
Figura 36 - Placa servomotor fenolite
FONTE: Autor, 2014
55
Figura 37 - Placa servomotor implementada
FONTE: Autor, 2014
2- Placa acionamento de três motores.
Para o acionamento dos motores do dosador de açúcar e do dosador de
liquido. Essa placa tem a função de acionar o motor através do sinal dado
pelo Arduino para um transistor que deixa passar a tensão para o motor e
também tem-se o diodo de roda livre.
Lista de materiais utilizados:
- 4 Conector duas saídas
- 1 Resistor para LED
- 4 unidades de barra para conexão Arduino
- 2 transistores TIP 122
- 1 transistor 530n Mosfet
- 5 resistores 4k7 Ohms
- 3 diodos IN5822
- LED 5mm
56
Figura 38 - Placa acionamento motores
FONTE: Autor, 2014
Figura 39 - Placa de fenolite acionamento de motores
FONTE: Autor, 2014
57
Figura 40 - Placa acionamento de motores implementada
FONTE: Autor, 2014
3- Placa eletrônica da ponte H com Relés
Para o acionamento do motor de corte de limão foi necessária a confecção
de uma placa para a reversão do motor, pois após o corte do limão é
necessário que o sistema volte a posição inicial. Então um sistema eletrônico
que realiza esta operação é a ponte H que muda o sentido de circulação de
corrente no sistema provocando o giro do motor em dois sentidos. Nesse
caso foi utilizado relés como ponte de acionamento.
Lista de materiais utilizados:
- 2 Conectores duas saídas
- 1 Resistor para LED
- 3 unidades de barra para conexão Arduino
- 2 Relés 12V
- 4 resistores 4k7 Ohms
- 2 diodos 1n4001
58
- Led 5mm
Figura 41 - Placa ponte H de relés
FONTE: Autor, 2014
Figura 42 - Placa fenolite ponte H de relés
59
FONTE: Autor, 2014
Figura 43 - Placa implementada ponte H de relés
FONTE: Autor, 2014
4- Placa eletrônica de sensores
Os sensores necessitam de alimentação e para isso foi elaborada uma
placa que alimenta o conjunto de sensores existentes na máquina.
Lista de materiais utilizados:
- 16 conexões arduino
- 2 conexões de duas saídas
- 18 resistores 4K7 Ω
- Led 5mm
- 1 resistor de led 330 Ω
- Conectores para os sensores
60
Figura 44 - Placa de sensores
FONTE: Autor, 2014
Figura 45 - Placa de fenolite de sensores
FONTE: Autor, 2014
61
Figura 46 - Placa implementada de sensores
FONTE: Autor, 2014
5- Placa eletrônica de testes
Para visualização do funcionamento da máquina foi elaborada uma placa
de testes para identificar o funcionamento e também possíveis erros de
programação ou de esquema elétrico.
Lista de materiais utilizados:
- 16 LED’s 5mm
- 16 resistores de LED Ω
- Conectores sensores e motores
62
Figura 47 - Placa de testes
FONTE: Autor, 2014
6- Placa para acionamento do motor do processo de agitar.
A elaboração dessa placa foi realizada pela necessidade de acionar um
motor que será implementado um controle de velocidade, sendo esse motor
de ventoinha de carro, foi constatado por testes que este no seu
funcionamento necessita de uma corrente muito alta para o processo de
agitação.
Lista de materiais utilizados:
- 1 capacitor de 10 μF
- 1 resistor de 10 KΩ
- 1 resistor de 330 Ω
- Placa de fenolite 10 cm x 10 cm
- 1 Transistor Mosfet
- 1 diodo IN5822
63
Figura 48 - Placa de acionamento de motor
FONTE: Autor, 2014
Figura 49 - Esquemático placa de fenolite
FONTE: Autor, 2014
64
Figura 50 - Placa de acionamento implementada
FONTE: Autor, 2014
4 TESTES REALIZADOS
Ao longo do desenvolvimento deste projeto e com vistas a analisar a eficácia
de alguns dispositivos passíveis de serem utilizados no projeto final foram realizados
testes.
Para dimensionar um atuador destinado ao conjunto de corte do limão é
preciso que seja conhecida a pressão necessária para a realização do corte. Sabe-
se que a pressão varia de acordo com a área de contato da lâmina com o limão.
Assim, foi realizado um experimento em que foi aproximada uma força
suficiente para conseguir realizar o corte completo: primeiramente com a lâmina
disposta em toda a superfície da fruta e depois com a lâmina posicionada apenas
com a sua ponta em contato com o limão, diminuindo assim a área de contato para
realizar o mesmo procedimento.
65
Além do conjunto de corte, também foi testada a forma de acondicionamento
do gelo mais adequada. Neste caso, o gelo foi colocado dentro de um recipiente
contendo uma pá que, a cada cinco minutos, se movimentava em 360° em torno do
seu eixo. Este tipo de agitação impediu que as unidades do gelo se aglomerassem
com tanta facilidade, tornando este dispositivo passível de uso no projeto.
Para o mecanismo de fechamento do copo foi realizados estudos, mas na
implementação do projeto houve a necessidade de priorizar os outros componentes.
Então optou-se por realizar o fechamento de forma manual.
No teste de dosagem de açúcar com o dosador já acoplado estrutura final
constatou-se que o açúcar ao ser direcionado para o copo pelo funil se espalha
caindo uma fração fora do copo.
No processo de corte do limão ocorreu que após o corte algumas fatias
ficaram pressas nas laminas do cortador. Assim provocando que o sistema não
tenha repetidibilidade e precisão de dosagem.
A montagem da maquina de preparação automatica de caipirinha chegou ao
final da construção conforme a figura xx.
66
RESULTADOS
Para a confecção da máquina foi necessária a realização de testes
preliminares, visando entender o real funcionamento de cada elemento que compõe
o conjunto, se os mesmos serão úteis e se poderão ser utilizados na elaboração do
projeto.
Os testes realizados para dimensionar o conjunto cortador de limão foram
satisfatórios, confirmando o comportamento teórico apresentado nestes casos. No
entanto, haja vista que esta é apenas uma parte de estudos de viabilidade do
projeto, os exames efetuados foram meramente para que os valores de potência
fossem estimados para a execução do projeto.
Desta forma, ainda que tenham se tratado de testes, foi possível entender
melhor o funcionamento de alguns componentes, tornando mais coesa a escolha de
cada tipo de elemento que foi utilizado na execução do projeto.
A montagem foi realizada e conforme testado funcionou, comprovando sua
viabilidade e capacidade de realizar os procedimentos desejados. O sistema da
máquina é supervisionado pelo computador com comunicação com o
microcontrolador, e apartir de um comando no computador pelo Matlab tem-se os
acionamentos cada etapa individualmente. Essa supervisão foi de grande valia e
aprendizado, pois auxiliou nos testes de funcionamento da máquina.
Apesar de não implementado o mecanismo de fechamento do copo
automático, o trabalho atende todos as outras especicicações iniciais do projeto.
67
5 CONCLUSÃO
Diante das dificuldades em manter um padrão de qualidade na produção de
drinques, especialmente a caipirinha, foi proposta a construção de um sistema
automático para a realização deste procedimento, com vistas a eliminar ou amenizar
os problemas decorrentes de tal processo.
O microcontrolador possibilitou a construção de um projeto automatizado que
promove vários benefícios para o processo de preparação da caipirinha, entre eles,
um padrão de qualidade da bebida, rapidez, praticidade e facilidade de operação,
sem necessitar de um profissional com qualificação específica para este tipo de
atividade.
Através do embasamento teórico, dos estudos e montagem realizados sobre
os sistemas que constituem a máquina, pode-se afirmar que a construção da
máquina foi realizada e constitui um aperfeiçoamento do processo de produção da
caipirinha atendendo as necessidades e de forma eficaz.
Este projeto consegue atender algumas necessidades básicas de mercado,
ainda que seja muito limitado pelo fechamento automático do copo e também quanto
à diversificação do drinque oferecido. Como uma ideia para trabalhos futuros podem
ser inseridas no processo algumas melhorias, tais como outras opções de fruta e de
bebida, opção de adoçante dietético.
Desta forma, pode-se até ser desenvolvida, em futuros projetos, uma máquina
automática do tipo Vending Machine, em que o próprio cliente escolhe o produto,
efetua o pagamento e dá a ordem para que o drinque seja preparado sem a
necessidade de um atendente para intermediar o pedido.
68
6 REFERÊNCIAS
ABAL. Características químicas e físicas. Associação Brasileira do Alumínio,
2014. Disponível em: <http://abal.org.br/aluminio/caracteristicas-quimicas-e-fisicas/>.
Acesso em 28 abr. 2014.
ABAL. Cadeira primária. Associação Brasileira do Alumínio, 2014. Disponível em:
<http://abal.org.br/aluminio/cadeia-primaria/>. Acesso em 28 abr. 2014.
ABHP. Coletânea de Artigos Técnicos: Hidráulica e Pneumática. Rio de Janeiro:
Associação Brasileira de Hidráulica e Pneumática, 1995. Vol. 1 e 2.
ANDRADE, Fernanda Souza de; OLIVEIRA, A. S. de. Sistemas Embarcados
Hardware e fimware na Prática. São Paulo: Editora Érica, 2006.
ANVISA. Alimentos. Agência Nacional de Vigilância Sanitária, 2014. Disponível
em: <http://portal.anvisa.gov.br/wps/portal/anvisa/anvisa/home/alimentos>. Acesso
em 27 abr. 2014.
ARDUINO. Language Reference, 2014. Disponível em:
<http://arduino.cc/en/Reference/HomePage>. Acesso em 27 abr. 2014.
BOLLMANN, A. Fundamentos da automação industrial pneutrônica. São Paulo:
ABHP,1997.
BONACORSO, N. G.; NOLL, V. Automação eletropneumática. São Paulo: Érica,
1997.
BONACORSO, N. G.; NOLL, V. Automação eletropneumática. 11. ed. São Paulo:
Erica, 2004.
69
BRABENDER TECHNOLOGIE. The Brabender FlexWall® PlusFeeder, 2014.
Disponível em:
<http://www.brabender-technologie.com/mainpage/english/products/feeders/flexwall-
plus-feeders.htm>. Acesso em 14 abr. 2014.
CLARO, J. C. Pimenta. Apostila de Mecânica Aplicada. Braga: Departamento de
Engenharia Mecânica Escola de Engenharia, 2004.
DALLY, J. W., RILEY, F., MCCONNEL, K. G. Instrumantation for engineering
measurements. 2. ed. Nova York: John Willey & Sons, 1993.
DATASHEET. Acetal/Poliacetal. VICK, 2014. Disponível em:
<http://www.vick.com.br/vick/novo/datasheets/datasheet-poliacetal.pdf>. Acesso em
28 abr. 2014.
GERMANO, P.M.L.; GERMANO, M.I.S. Higiene e Vigilância Sanitária de
Alimentos. São Paulo: Varela, 2008.
GERK, Andréia de Oliveira. Instrução normativa n. 5, de 31 de março de 2000.
Inspeção Vegetal. Disponível em: <www.ivegetal.com.br/p4.htm>. Acesso em 27
abr. 2014.
KERNIGHAN, B. W.; RITCHIE, D. M. The C Programming Language. 2. Ed.
Englewood Cliffs: Prentice-Hall, 1988.
MABIE, Hamilton H. Mecanismos. Tradução Edival Poncian de Carvalho. Rio de
Janeiro: Livros técnicos e científicos, 1980.
L. Norton, Robert. Cinemática e dinâmica dos mecanismos. Tradução Alessandro
P. de Medeiros. Porto Alegre: AMGH, 2009.
MANUTENÇÃO e suprimentos, 2014. Disponível em:
<www.manutencaoesuprimentos.com.br>. Acesso em 27 abr. 2014.
70
MCROBERTS, M. Arduino básico. São Paulo: Novatec, 2011.
MECÂNICA industrial, 2014. Disponível em: <www.mecanicaindustrial.com.br>.
Acesso em 27 abr. 2014.
MIALHE, L. G. Características das máquinas distribuidoras de calcário de fabricação
nacional. In: Simpósio sobre aplicação de calcário na agricultura. Campinas:
Fundação Cargill, 1986. p. 41-56.
MICROCHIP, 2014. Disponível em:
<http://www.microchip.com/pagehandler/en-us/family/8bit/>. Acesso em 2 abr. 2014.
PRODUTOS para bar. Disponível em:
<https://www.produtosparabar.com.br/images/copo%20dosador%201.jpg >. Acesso
em 16 abr. 2014.
SANTOS, André. Como funciona um servo motor. Rio Grande do Sul, 2007.
Disponível em: <http://www.pictronics.com.br/artigos-tecnicos/43-eletronica-e-
automacao/89-como-funciona-um-servo-motor.html>. Acesso em 15 abr. 2014.
SEDRIKS, A. J. Corrosion of stainless steels. 2. ed. New York: John Wiley, 1996.
p. 1-4.
SHIGLEY, J. Projetos de engenharia mecânica. São Paulo: LTC, 2005. v. 1.
SIEMENS. Disponível em:
<www.siemens.com.br/motores/unidadeautomaçãoecontroleacionamentosemotores
elétricos>. Acesso em 22 abr. 2014.
SOLOMON, H. D. Devine Jr. Duplex stainless steels – a tale of two phases. In:
Duplex stainless steels – conference proceedings. Ohio: ASM Metals Park, 1982.
p. 693-756
71
THOMAZINI, D.; ALBUQUERQUE, P. U. B. Sensores industriais: fundamentos e
aplicações. São Paulo: Érica, 2005.
WEG. Disponível em: <http://www.weg.net/.../Motores/Motores-Eletricos-de-
Corrente-Continua>. Acesso em 22 abr. 2014.
WINTER, Mark. The University of Sheffield and WebElements Ltd, UK, 1993-2011.
72
7 ANEXOSTeste motor de ventoinha de carro
73
Visualização sem a estrutura externa
74
Soldagem da estrutura externa
75
Montagem no laboratório de usinagem
76
Máquina em estado de finalização após pintura
77
Linguagem Arduino
#include <Servo.h>Servo servo1;Servo servo2;Servo servo3;
const int SENSOR1 = 2; const int SENSOR2 = 3; const int SENSOR3 = 4;const int SENSOR4 = 5;const int SENSOR5 = 6;const int SENSOR6 = 7;const int SENSOR7 = 8;const int SENSOR8 = 9;const int SENSOR9 = 10;const int BOTAO1 = 11; int SENSOROP1 = A5;int Encoder = A0;
const int MOTORCORT= 14; //A0 const int MOTORCORTI= 15; //A1const int MOTORDOSADORL= 16; //A2const int MOTORDOSADORS= 17; //A3const int MOTORAGITADOR= 18; //A4 //const int MOTORTAMPA= 19; //A5 //const int MOTORTAMPAS= 20; //A1//const int TESTE = 13;const int serv1= 13;const int serv2 = 12;//const int serv3 = 12;
int pos1;int pos2;int pos3;int Sligdes1=0;int Sligdes2=0;int Sligdes3=0;
void setup() pinMode(SENSOR1, INPUT); pinMode(BOTAO1, INPUT); pinMode(SENSOR2, INPUT); pinMode(SENSOR3, INPUT); pinMode(SENSOR4, INPUT); pinMode(SENSOR5, INPUT); pinMode(SENSOR6, INPUT); pinMode(SENSOR7, INPUT);
78
pinMode(SENSOR8, INPUT); pinMode(SENSOR9, INPUT);
pinMode(MOTORCORT, OUTPUT); pinMode(MOTORCORTI, OUTPUT); pinMode(MOTORDOSADORL, OUTPUT); pinMode(MOTORDOSADORS, OUTPUT); pinMode(MOTORAGITADOR, OUTPUT);// pinMode(MOTORTAMPA, OUTPUT);// pinMode(MOTORTAMPAS, OUTPUT);
servo1.attach(serv1); servo2.attach(serv2);// servo3.attach(serv3); // start serial port at 9600 bps: Serial.begin(9600); while (!Serial) ; // wait for serial port to connect. Needed for Leonardo only
void loop() char inByte, mt, ligdes; if (Serial.available() > 0) switch(Serial.read()) case '0': leitura_sen(); break; case '1': while(Serial.available() < 2) mt=Serial.read(); ligdes=Serial.read(); motor(mt,ligdes); break; case '2': leitura_mot(); break; case '3': Serial.write(analogRead(Encoder)); break; case 1: digitalWrite(MOTORCORTI, LOW); digitalWrite(MOTORDOSADORL, LOW); digitalWrite(MOTORDOSADORS, LOW); digitalWrite(MOTORAGITADOR, LOW); digitalWrite(MOTORCORT, HIGH);
79
while(digitalRead(SENSOR4)) digitalWrite(MOTORCORT, LOW); break; case 2: digitalWrite(MOTORCORT, LOW); digitalWrite(MOTORDOSADORL, LOW); digitalWrite(MOTORDOSADORS, LOW); digitalWrite(MOTORAGITADOR, LOW); digitalWrite(MOTORCORTI, HIGH); while(digitalRead(SENSOR2)!=HIGH) digitalWrite(MOTORCORTI, LOW); break; case 3: digitalWrite(MOTORCORT, LOW); digitalWrite(MOTORCORTI, LOW); digitalWrite(MOTORDOSADORS, LOW); digitalWrite(MOTORAGITADOR, LOW); digitalWrite(MOTORDOSADORL, HIGH); while(digitalRead(SENSOR3)!=HIGH) digitalWrite(MOTORDOSADORL, LOW); break; case 4: digitalWrite(MOTORCORT, LOW); digitalWrite(MOTORCORTI, LOW); digitalWrite(MOTORDOSADORL, LOW); digitalWrite(MOTORAGITADOR, LOW); digitalWrite(MOTORDOSADORS, HIGH); while(digitalRead(SENSOR1)!=HIGH) digitalWrite(MOTORDOSADORS, LOW); break;
void motor(char mt,char ligdes) switch(mt) case '0': if(ligdes=='1') digitalWrite(MOTORCORT, HIGH); else digitalWrite(MOTORCORT, LOW); break; case '1':
80
if(ligdes=='1') digitalWrite(MOTORCORTI, HIGH); else digitalWrite(MOTORCORTI, LOW); break; case '2': if(ligdes=='1') digitalWrite(MOTORDOSADORL, HIGH); else digitalWrite(MOTORDOSADORL, LOW); break; case '3': if(ligdes=='1') digitalWrite(MOTORDOSADORS, HIGH); else digitalWrite(MOTORDOSADORS, LOW); break; case '4': if(ligdes=='1') digitalWrite(MOTORAGITADOR, HIGH); else digitalWrite(MOTORAGITADOR, LOW); break; /* case '5': if(ligdes=='1') digitalWrite(MOTORTAMPA, HIGH); else digitalWrite(MOTORTAMPA, LOW); break; case '6': if(ligdes=='1') digitalWrite(MOTORTAMPAS, HIGH); else digitalWrite(MOTORTAMPAS, LOW); break; */ case '7': Sligdes1=ligdes; servo1.write(ligdes); break; case '8': servo2.write(ligdes); Sligdes2=ligdes; break; case '9': // servo3.write(ligdes); // Sligdes3=ligdes; break;
case 'A': servo1.write(0); servo2.write(0); Sligdes1=0; Sligdes2=0; break;
81
case 'B': digitalWrite(MOTORAGITADOR, LOW); digitalWrite(MOTORDOSADORS, LOW); digitalWrite(MOTORDOSADORL, LOW); digitalWrite(MOTORCORTI, LOW); digitalWrite(MOTORCORT, LOW); break;
void leitura_sen() Serial.write(digitalRead(SENSOR1)); Serial.write(digitalRead(SENSOR2)); Serial.write(digitalRead(SENSOR3)); Serial.write(digitalRead(SENSOR4)); Serial.write(digitalRead(SENSOR5)); Serial.write(digitalRead(SENSOR6)); Serial.write(digitalRead(SENSOR7)); Serial.write(digitalRead(SENSOR8)); Serial.write(digitalRead(SENSOR9)); Serial.write(digitalRead(BOTAO1)); Serial.write(analogRead(SENSOROP1));
void leitura_mot() Serial.write((Sligdes1)); Serial.write((Sligdes2)); Serial.write(digitalRead(MOTORCORT)); Serial.write(digitalRead(MOTORCORTI)); Serial.write(digitalRead(MOTORDOSADORL)); Serial.write(digitalRead(MOTORDOSADORS)); Serial.write(digitalRead(MOTORAGITADOR));
82
Linguagem Supervisório
function varargout = Supervisorio(varargin)gui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Supervisorio_OpeningFcn, ... 'gui_OutputFcn', @Supervisorio_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []);if nargin && ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);end if nargout [varargout1:nargout] = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);end % --- Executes just before Supervisorio is made visible.function Supervisorio_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to Supervisorio (see VARARGIN) % Choose default command line output for Supervisoriohandles.output = hObject; % Update handles structureguidata(hObject, handles); % UIWAIT makes Supervisorio wait for user response (see UIRESUME)% uiwait(handles.figure1);global s temp cont cont=0;s = serial('COM5' ,'BaudRate', 9600); temp = timer(... 'ExecutionMode', 'fixedSpacing', ... 'Period', 0.2, ... 'TimerFcn', @(obj, event)tempo(hObject,handles));
83
% --- Outputs from this function are returned to the command line.function varargout = Supervisorio_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structurevarargout1 = handles.output; % --- Executes on button press in M1.function M1_Callback(hObject, eventdata, handles)% hObject handle to M1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hint: get(hObject,'Value') returns toggle state of M1 function S1_Callback(hObject, eventdata, handles)% hObject handle to S1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of S1 as text% str2double(get(hObject,'String')) returns contents of S1 as a double % --- Executes during object creation, after setting all properties.function S1_CreateFcn(hObject, eventdata, handles)% hObject handle to S1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function S2_Callback(hObject, eventdata, handles)% hObject handle to S2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)
84
% Hints: get(hObject,'String') returns contents of S2 as text% str2double(get(hObject,'String')) returns contents of S2 as a double % --- Executes during object creation, after setting all properties.function S2_CreateFcn(hObject, eventdata, handles)% hObject handle to S2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function S3_Callback(hObject, eventdata, handles)% hObject handle to S3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of S3 as text% str2double(get(hObject,'String')) returns contents of S3 as a double % --- Executes during object creation, after setting all properties.function S3_CreateFcn(hObject, eventdata, handles)% hObject handle to S3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function S4_Callback(hObject, eventdata, handles)% hObject handle to S4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of S4 as text
85
% str2double(get(hObject,'String')) returns contents of S4 as a double % --- Executes during object creation, after setting all properties.function S4_CreateFcn(hObject, eventdata, handles)% hObject handle to S4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function S5_Callback(hObject, eventdata, handles)% hObject handle to S5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of S5 as text% str2double(get(hObject,'String')) returns contents of S5 as a double % --- Executes during object creation, after setting all properties.function S5_CreateFcn(hObject, eventdata, handles)% hObject handle to S5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function S6_Callback(hObject, eventdata, handles)% hObject handle to S6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of S6 as text% str2double(get(hObject,'String')) returns contents of S6 as a double
86
% --- Executes during object creation, after setting all properties.function S6_CreateFcn(hObject, eventdata, handles)% hObject handle to S6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function S7_Callback(hObject, eventdata, handles)% hObject handle to S7 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of S7 as text% str2double(get(hObject,'String')) returns contents of S7 as a double % --- Executes during object creation, after setting all properties.function S7_CreateFcn(hObject, eventdata, handles)% hObject handle to S7 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function S8_Callback(hObject, eventdata, handles)% hObject handle to S8 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of S8 as text% str2double(get(hObject,'String')) returns contents of S8 as a double % --- Executes during object creation, after setting all properties.
87
function S8_CreateFcn(hObject, eventdata, handles)% hObject handle to S8 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function S9_Callback(hObject, eventdata, handles)% hObject handle to S9 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of S9 as text% str2double(get(hObject,'String')) returns contents of S9 as a double % --- Executes during object creation, after setting all properties.function S9_CreateFcn(hObject, eventdata, handles)% hObject handle to S9 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function S10_Callback(hObject, eventdata, handles)% hObject handle to S10 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of S10 as text% str2double(get(hObject,'String')) returns contents of S10 as a double % --- Executes during object creation, after setting all properties.function S10_CreateFcn(hObject, eventdata, handles)% hObject handle to S10 (see GCBO)
88
% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function edit16_Callback(hObject, eventdata, handles)% hObject handle to edit16 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit16 as text% str2double(get(hObject,'String')) returns contents of edit16 as a double % --- Executes during object creation, after setting all properties.function edit16_CreateFcn(hObject, eventdata, handles)% hObject handle to edit16 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end % --- Executes on button press in M2.function M2_Callback(hObject, eventdata, handles)% hObject handle to M2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hint: get(hObject,'Value') returns toggle state of M2 % --- Executes on button press in M3.function M3_Callback(hObject, eventdata, handles)% hObject handle to M3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)
89
% Hint: get(hObject,'Value') returns toggle state of M3 % --- Executes on button press in M4.function M4_Callback(hObject, eventdata, handles)% hObject handle to M4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hint: get(hObject,'Value') returns toggle state of M4 % --- Executes on button press in M5.function M5_Callback(hObject, eventdata, handles)% hObject handle to M5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hint: get(hObject,'Value') returns toggle state of M5 % --- Executes on button press in M6.function M6_Callback(hObject, eventdata, handles)% hObject handle to M6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hint: get(hObject,'Value') returns toggle state of M6 % --- Executes on button press in M7.function M7_Callback(hObject, eventdata, handles)% hObject handle to M7 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hint: get(hObject,'Value') returns toggle state of M7 % --- Executes on button press in M3D.function M3D_Callback(hObject, eventdata, handles)% hObject handle to M3D (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hint: get(hObject,'Value') returns toggle state of M3Dif(get(handles.M3D,'value')) set(handles.M3D,'string','Inverso') else set(handles.M3D,'string','Direto')
90
end % --- Executes on button press in M7D.function M7D_Callback(hObject, eventdata, handles)% hObject handle to M7D (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hint: get(hObject,'Value') returns toggle state of M7Dif(get(handles.M7D,'value')) set(handles.M7D,'string','Inverso') else set(handles.M7D,'string','Direto') end % --- Executes on button press in pushbutton1.function pushbutton1_Callback(hObject, eventdata, handles)% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)set(handles.pushbutton1,'Visible','off')global temp s; fopen(s);pause(2);start(temp) function tempo (hObject,handles) global s cont Sensores Motores;% double Sensor_S = [ handles.S1 handles.S2 handles.S3 handles.S4 handles.S5 handles.S6 handles.S7 handles.S8 handles.S9 handles.S10]; % cont=cont+1; Sensores=zeros(11,1); Motores=zeros(7,1); % pause(0.3); fwrite(s,'0'); while(s.BytesAvailable<11) end Sensores=(fread(s,11)); fwrite(s,'2'); while(s.BytesAvailable<7) end Motores=(fread(s,7));
91
Entradas(hObject,handles,Sensores); EntradasM(hObject,handles,Motores);% motores(str2num(get(handles.M1,'value')*get(handles.eSV1,'string')),5);% motores(str2num(get(handles.M2,'value')*get(handles.eSV2,'string')),6);% motores(str2num(get(handles.M8,'value')*get(handles.eSV3,'string')),7); % =========== LIGA O MOTOR DC COM INVERCAO =========== if(get(handles.M3,'value')) if(get(handles.M3D,'value')) motores(0,1); pause(0.3); motores(1,0); else motores(0,0); pause(0.3); motores(1,1); end else motores(0,0); pause(0.1); motores(0,1); end% =========== LIGA O MOTOR DC SIMPLES =========== if(get(handles.M4,'value')) motores(1,2); else motores(0,2); end if(get(handles.M5,'value')) motores(1,3); else motores(0,3); end if(get(handles.M6,'value')) motores(1,4); else motores(0,4); end % =========== LIGA O SERVO MOTOR =========== if(get(handles.M1,'value')) motores(str2num(get(handles.eSV1,'string')),7); else motores(0,7); end if(get(handles.M2,'value')) motores(str2num(get(handles.eSV2,'string')),8); else motores(0,8);
92
end % if(get(handles.M8,'value'))% motores(str2num(get(handles.eSV3,'string')),9);% else% motores(0,9);% end function motores(valor,motor)% FUNCAO PARA O ENVIO DO COMANDO PARA O ARDUINO% REFERENTE AO VALOR DO MOTOR% '1' SELECIONA O COMANDO DE global s fwrite(s,'1'); fwrite(s,char(motor+48)); if(motor<5) if(valor) fwrite(s,'1'); else fwrite(s,'0'); end else fwrite(s,valor); end function Entradas(hObject,handles,Sensores) flag=0; if(Sensores(1)==flag) set(handles.S1,'BackgroundColor','red'); else set(handles.S1,'BackgroundColor','green'); end if(Sensores(2)==flag) set(handles.S2,'BackgroundColor','red'); else set(handles.S2,'BackgroundColor','green'); end if(Sensores(3)==flag) set(handles.S3,'BackgroundColor','red'); else set(handles.S3,'BackgroundColor','green'); end if(Sensores(4)==flag)
93
set(handles.S4,'BackgroundColor','red'); else set(handles.S4,'BackgroundColor','green'); end if(Sensores(5)==flag) set(handles.S5,'BackgroundColor','red'); else set(handles.S5,'BackgroundColor','green'); end if(Sensores(6)==flag) set(handles.S6,'BackgroundColor','red'); else set(handles.S6,'BackgroundColor','green'); end if(Sensores(7)==flag) set(handles.S7,'BackgroundColor','red'); else set(handles.S7,'BackgroundColor','green'); end if(Sensores(8)==flag) set(handles.S8,'BackgroundColor','red'); else set(handles.S8,'BackgroundColor','green'); end if(Sensores(9)==flag) set(handles.S9,'BackgroundColor','red'); else set(handles.S9,'BackgroundColor','green'); end if(Sensores(10)==flag) set(handles.S10,'BackgroundColor','red'); else set(handles.S10,'BackgroundColor','green'); end set(handles.edit16,'string',Sensores(11)); function EntradasM(hObject,handles,Motores) flag=0; if(Motores(1)==flag) set(handles.EM1,'BackgroundColor','red'); else
94
set(handles.EM1,'BackgroundColor','green'); end if(Motores(2)==flag) set(handles.EM2,'BackgroundColor','red'); else set(handles.EM2,'BackgroundColor','green'); end if(Motores(3)==flag) set(handles.EM3d,'BackgroundColor','red'); else set(handles.EM3d,'BackgroundColor','green'); end if(Motores(4)==flag) set(handles.EM3e,'BackgroundColor','red'); else set(handles.EM3e,'BackgroundColor','green'); end if(Motores(5)==flag) set(handles.EM4,'BackgroundColor','red'); else set(handles.EM4,'BackgroundColor','green'); end if(Motores(6)==flag) set(handles.EM5,'BackgroundColor','red'); else set(handles.EM5,'BackgroundColor','green'); end if(Motores(7)==flag) set(handles.EM6,'BackgroundColor','red'); else set(handles.EM6,'BackgroundColor','green'); end % --- Executes when user attempts to close figure1.function figure1_CloseRequestFcn(hObject, eventdata, handles)global temp s; try stop(temp); delete(temp)end
95
try stop(s); delete(s); end% Hint: delete(hObject) closes the figuredelete(hObject); % --- Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles)% hObject handle to pushbutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)set(handles.M1,'value',0);set(handles.M2,'value',0);set(handles.M3,'value',0);set(handles.M4,'value',0);set(handles.M5,'value',0);set(handles.M6,'value',0);% set(handles.M7,'value',0);% set(handles.M8,'value',0); % --- Executes on button press in M8.function M8_Callback(hObject, eventdata, handles)% hObject handle to M8 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hint: get(hObject,'Value') returns toggle state of M8 function eSV1_Callback(hObject, eventdata, handles)% hObject handle to eSV1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of eSV1 as text% str2double(get(hObject,'String')) returns contents of eSV1 as a double % --- Executes during object creation, after setting all properties.function eSV1_CreateFcn(hObject, eventdata, handles)% hObject handle to eSV1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.
96
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function eSV2_Callback(hObject, eventdata, handles)% hObject handle to eSV2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of eSV2 as text% str2double(get(hObject,'String')) returns contents of eSV2 as a double % --- Executes during object creation, after setting all properties.function eSV2_CreateFcn(hObject, eventdata, handles)% hObject handle to eSV2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function eSV3_Callback(hObject, eventdata, handles)% hObject handle to eSV3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of eSV3 as text% str2double(get(hObject,'String')) returns contents of eSV3 as a double % --- Executes during object creation, after setting all properties.function eSV3_CreateFcn(hObject, eventdata, handles)% hObject handle to eSV3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
97
set(hObject,'BackgroundColor','white');end function EM1_Callback(hObject, eventdata, handles)% hObject handle to EM1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of EM1 as text% str2double(get(hObject,'String')) returns contents of EM1 as a double % --- Executes during object creation, after setting all properties.function EM1_CreateFcn(hObject, eventdata, handles)% hObject handle to EM1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function EM2_Callback(hObject, eventdata, handles)% hObject handle to EM2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of EM2 as text% str2double(get(hObject,'String')) returns contents of EM2 as a double % --- Executes during object creation, after setting all properties.function EM2_CreateFcn(hObject, eventdata, handles)% hObject handle to EM2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end
98
function EM8_Callback(hObject, eventdata, handles)% hObject handle to EM8 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of EM8 as text% str2double(get(hObject,'String')) returns contents of EM8 as a double % --- Executes during object creation, after setting all properties.function EM8_CreateFcn(hObject, eventdata, handles)% hObject handle to EM8 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function EM3d_Callback(hObject, eventdata, handles)% hObject handle to EM3d (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of EM3d as text% str2double(get(hObject,'String')) returns contents of EM3d as a double % --- Executes during object creation, after setting all properties.function EM3d_CreateFcn(hObject, eventdata, handles)% hObject handle to EM3d (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end
99
function EM4_Callback(hObject, eventdata, handles)% hObject handle to EM4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of EM4 as text% str2double(get(hObject,'String')) returns contents of EM4 as a double % --- Executes during object creation, after setting all properties.function EM4_CreateFcn(hObject, eventdata, handles)% hObject handle to EM4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function EM5_Callback(hObject, eventdata, handles)% hObject handle to EM5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of EM5 as text% str2double(get(hObject,'String')) returns contents of EM5 as a double % --- Executes during object creation, after setting all properties.function EM5_CreateFcn(hObject, eventdata, handles)% hObject handle to EM5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function EM6_Callback(hObject, eventdata, handles)
100
% hObject handle to EM6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of EM6 as text% str2double(get(hObject,'String')) returns contents of EM6 as a double % --- Executes during object creation, after setting all properties.function EM6_CreateFcn(hObject, eventdata, handles)% hObject handle to EM6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end function EM3e_Callback(hObject, eventdata, handles)% hObject handle to EM3e (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of EM3e as text% str2double(get(hObject,'String')) returns contents of EM3e as a double % --- Executes during object creation, after setting all properties.function EM3e_CreateFcn(hObject, eventdata, handles)% hObject handle to EM3e (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows.% See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');end % --- Executes on button press in Caip.function Caip_Callback(hObject, eventdata, handles)% hObject handle to Caip (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB
101
% handles structure with handles and user data (see GUIDATA)if(get(handles.Caip,'value')==0)% set(handles.Caip,'value',0) set(handles.M1,'value',0); set(handles.M2,'value',0); set(handles.M3,'value',0); set(handles.M4,'value',0); set(handles.M5,'value',0); set(handles.M6,'value',0);% set(handles.M7,'value',0); % motores(0,1);% motores(0,2);% motores(0,3);% motores(0,4);% motores(0,5);% motores(0,7);% motores(0,8); set(handles.M1,'enable','off'); set(handles.M2,'enable','off'); set(handles.M3,'enable','off'); set(handles.M3D,'enable','off'); set(handles.M4,'enable','off'); set(handles.M5,'enable','off'); set(handles.M6,'enable','off');else set(handles.M1,'enable','on'); set(handles.M2,'enable','on'); set(handles.M3,'enable','on'); set(handles.M3D,'enable','on'); set(handles.M4,'enable','on'); set(handles.M5,'enable','on'); set(handles.M6,'enable','on');end