Anais da
III
Semana Nacional
de
Ciência e Tecnologia
20 a 25 de Outubro de 2014
Capacitação Técnica para o Stop Motion
Gabriel M. Costa1, Valdinéia Gomes Maciel2
Instituto Federal de São Paulo – Campus Boituva (IFSP)
Av. Zélia de Lima Rosa Nº 100, Portal dos Pássaros, CEP 18.550-00 – Boituva – SP –
Brasil
{Gabriel,Valdinéia}[email protected], [email protected]
Abstract. This article aims demonstrate the structure involved by behind the
Project qualification technical for the Stop Motion, of the begin of the Project
until the state current. In this Project the aim is develop an institucional vídeo,
in which will be counted the history of the IFSP campus Boituva. The vídeo
will be built using an technique called Stop Motion, where are made several
photographs, and between each photo there one small change of positioning of
the object photographed, so when the pictures are reproduced in sequence, the
our eyes have the impression that the object is moving, so in these cases no is
there movement and yes an illusion of the retina, derived of the phenomenon
movement beta.
KeyWords: Stop Motion, Movement Beta, Edition of images
Resumo. Este artigo visa demonstrar qual a estrutura utilizada no projeto
Capacitação Técnica para o Stop Motion, do começo do projeto até o estado
atual. Neste projeto o objetivo é desenvolver um vídeo institucional, no qual
será contada a história do IFSP campus Boituva. O vídeo será construído
utilizando uma técnica chamada Stop Motion, onde são feitas várias
fotografias, e entre cada foto há uma leve mudança de posicionamento do
objeto fotografado, assim quando as fotos forem reproduzidas em sequência,
os nossos olhos terão a impressão de que o objeto está se movimentando, pois
nesses casos não existe movimento e sim uma ilusão da retina, derivada do
fenômeno movimento beta.
Palavras-chave: Stop Motion, Movimento Beta, Edição de imagens
Introdução
O Stop Motion é uma técnica de animação quadro a quadro, onde usamos equipamentos
como máquinas fotográficas, computadores, e claro a imaginação do autor. Diversos
materias podem ser utilizados para a modelagem dos objetos que serão usados nas
fotografias e que farão a composição do cenário, tais como: massa de modelar, bonecos,
brinquedos entre outros.
O Stop Motion é uma técnica antiga, com mais de 100 anos de existência, por isso
possui uma influência muito grande na área do cinema. Apesar de ser muito relevante na
área de animações, fui um mágico ilusionista chamado George Mélies que enxergou
nesta técnica, a “capacidade de movimentação de objetos utilizando apenas imagens”.
Com o Stop Motion, Mélies conseguiu desenvolver ilusões com alto grau de
complexidade, que acabaram o levando para o cinema. Com o filme chamado “Viagem
a Lua” ele foi o primeiro homem a utilizar efeitos e ilusões incríveis derivadas do Stop
Motion em seus filmes. Com o passar do tempo outros artistas se interessaram e
consequentemente usaram esta técnica para a suas produções artistícas, o que
confirmaram a consolidação da técnica.
Caracterização do Problema
O conceito do Stop Motion vem de longa data, e demanda tempo e paciência para que o
aluno entenda todo o processo.
Neste tipo de projeto, o aluno leva um certo tempo para entender a história, o conceito,
as metodologias e as técnicas, o que faz com que ele demore muito mais tempo em
aprender o conceito, do que aplicar o que foi aprendido.
Todo este processo de aprendizado, ao demandar um período de tempo, também acaba
reduzindo o tempo da etapa de aplicabilidade do que foi aprendido, e o aluno precisa
conciliar todos estes fatos , para que ele não ultrapasse o tempo que foi determinado
para a execução daquele projeto, e consequentemente entregue o projeto com atraso.
Fundamentação Teórica
Stop Motion é uma técnica quadro a quadro, ou seja, o autor trabalha com imagens
sempre em sequência, uma após a outra. Nesta técnica o autor trabalha fotografando
objetos sucessivamente, e a cada fotograma tirado o autor altera relativamente a posição
do objeto, para que quando o autor sequencie e compile essas imagens a fim de obter
um vídeo, dará á impressão de que o objeto está se movimentando.
Segundo Max Wertheimer “Essa impressão na realidade é uma ilusão, denominada
movimento beta”. Quando a nossa retina recebe sinais de luz (estímulos), ela envia
impulsos para o cérebro, que por sua vez acabam sendo interpretados como uma
imagem pelo córtex cerebral.
Porém, as células da nossa retina continuam a enviar sinais de luz para o cérebro por
uma fração de segundos, mesmo depois dos sinais de luz terem sidos removidos.
Enquanto isso, o nosso cérebro continua a receber estímulos vindos da retina, mesmo
depois desses sinais de luz não serem mais repassados. Se nesse intervalo forem
enviados novos estímulos em sequência uns aos outros para o cérebro, esses estímulos
que no caso são as imagens acabam se associando entre si, o que faz o nosso cérebro
interpretar todas aquelas imagens, como sendo somente uma em movimento.
Metodologia
A ideia é a captura de diversas imagens em sequência, referentes a um ou vários
cenários, que estarão pré-estabelecidos de acordo com um roteiro desenvolvido pelo
aluno.
Para a composição dos itens do cenário, o material utilizado para as fotografias é a
plastilina, devido a fácil modelagem e não endurecimento ao longo do seu uso. Um dos
motivos de sua escolha é a resistência ao longo do tempo e a sua maleabilidade
Na sequência inicia-se a etapa das fotografias, fotografa-se uma imagem e logo em
seguida altera-se a posição do mesmo objeto fotografado anteriormente, repetindo esse
passos constantemente.
O procedimento acima será repetido até que todas as ações que estão descritas no roteiro
sejam cumpridas, desta forma será obtido um número suficiente de fotos para a
composição da cena.
Segue-se então, para a edição das imagens, nesta fase deverá ser utilizado softwares de
edição de imagens, onde serão adequados alguns pontos exigidos no roteiro, que não são
possíveis de serem realizados somente com o ato de fotografar ou montar o cenário. Os
critérios para a escolha do software foram baseadas nas ferramentas que o autor
necessitava, as ferramentas que o software oferecia, e a preferência por softwares
gratuitos ou open-source.
Após a finalização da etapa anterior, inicia-se a etapa de compilação e renderização das
imagens para a geração de uma cena. Nesta fase, será utilizado um outro software, este
tem a finalidade de agrupar, sequenciar e renderizar as imagens, de modo que no final
do processo, o resultado obtido seja uma cena. Com todas as etapas acima concluídas,
volta-se a repetir este processo, a fim de obter mais uma cena, e assim sucessivamente
até chegar ao resultado esperado que é o vídeo completo.
Estado Atual do Trabalho ou resultados
O projeto segue em desenvolvimento pleno, mas já foram obtidos resultados parciais
que demonstram a eficácia da técnica, que vão desde a aquisição de conceitos, até a
utilização de todas as formas de conhecimento aprendidas para a realização das
atividades e consequentemente a produção do vídeo institucional, e esta parte também
está em desenvolvimento.
Conclusão
Após o início de pesquisas para a obtenção de um conhecimento mais aprofundado
nesta área, são utilizados métodos que demonstraram a conclusão parcial do projeto. A
conclusão parcial do projeto era a assimilação dos conceitos e técnicas para a produções
de curtas-metragens utilizado o stop motion. Porém a conclusão efetiva do projeto
ocorrerá quando o aluno, utilizar os conhecimentos adquiridos para a produção de um
curta-metragem para o campus; e esta fase segue em desenvolvimento pleno. Até esta
etapa, o projeto segue normalmente e sem problemas que possam vir a atrapalhar o
desenvolvimento do mesmo atualmente ou futuramente, e devido ao desenvolvimento
do aluno com o passar do projeto, o mesmo já obteve uma solução para o problema,
bastando apenas seguir a metodologia corretamente para a finalização do projeto.
Referências
[1] Max , W. (2005) “On Perceived Motion and Figural Organization”,
http://books.google.com.br/books?hl=pt-BR&lr=&id=N74PxWGomcC&oi=fnd&pg=PA1&dq=(Experimental+Studies+on+the+Seeing+of+Moti
on&ots=OJ55HZPCeI&sig=PpWXEymctUTlegURC3DIoUCpcMc#v=onepage&q=
(Experimental%20Studies%20on%20the%20Seeing%20of%20Motion&f=false,
Outubro
[2] ESCOLA DE BELAS ARTES. (2004) “Stop Motion: A História do Stop Motion”,
http://www.eba.ufmg.br/midiaarte/quadroaquadro/stop/princip1.htm, Outubro.
[3] Douglas ,C. (2009) “O que é stop motion”
http://www.tecmundo.com.br/player-de-video/2247-o-que-e-stop-motion-.htm,
Outubro.
[4] Sérgio , V. (2012) “A História do Stop Motion”
http://pt.slideshare.net/danielatpinto/a-historia-do-stop-motion, Outubro.
Comparação de Descritores de Características para a
Construção de Mosaicos de Imagens Digitais
Davi da Silva Fernandes¹, André de Souza Tarallo1
1
Instituto Federal de São Paulo (IFSP) - Campus Boituva
[email protected], [email protected]
Abstract. The popularity of Unmanned Aerial Vehicles propelled the area of
automatic construction of mosaic images aimed at creating a territorial
inspection tool aid. The use of a descriptor appropriate characteristics
influence the success of mosaicing. The most common descriptors are: SIFT
(Scale Invariant Feature Transform) and SURF (speeded Up Robust Feature).
This article aims to compare the SIFT and SURF descriptors, analyzing the
amount of extracted features in the images and the processing time. With the
analysis of these results will be possible to evaluate the quality of the images
and amendments indicate the advantages and disadvantages of using each of
the descriptors.
Resumo. A popularidade dos Veículos Aéreos Não Tripulados impulsionou a
área de construção automática de mosaico de imagens visando a inspeção
territorial criando uma ferramenta de auxílio. A utilização de um descritor de
características adequado influência no sucesso da construção do mosaico. Os
descritores mais comuns são: SIFT (Scale Invariant Feature Transform) e
SURF (Speeded Up Robust Feature). Este artigo tem por objetivo comparar
os descritores SIFT e SURF, analisando a quantidade de características
extraídas nas imagens e o tempo de processamento. Com a análise destes
resultados será possível avaliar a qualidade de emendas das imagens e
indicar as vantagens e desvantagens de utilização de cada um dos descritores.
Palavras Chaves: Drones; mosaicos de imagens; SIFT; SURF
1. Introdução
Neste projeto será abordada a comparação de dois descritores de características, que são
essenciais para a área de construção de mosaicos de imagens. Os dois descritores de
características são: SIFT e SURF; estes descritores são muito utilizados na área de
processamento digital de imagens e facilmente encontrados na literatura, motivo pelo
qual se escolheu estes
es dois descritores.
descritores O objetivo principal é fazer testes com oos dois
descritores em um conjunto de imagens selecionado
selecionado, comparando o tempo de
processamento de cada algoritmo e a quantidade de características extraídas de cada
uma das imagens selecionada.. As características mais comuns das imagens são
são: forma,
cor e textura. Estas característ
características são normalmente agrupadas em um vetor escalares
escalares,
denominado descritor de imagem.
Os testes estão sendo feitos em um notebook com processador I5 2.50GHz, 6 gigabyte
de RAM,, com sistema operacional Windows 8.1 de 64 bit.
2. Caracterização do Problema
Um dos maiores problemas encontrados nas diversas área da computação
com utação é referente ao
desempenho, tanto em
m velocidade para obtenção dos resultados sem comprometer o
resultado, quanto na qualidade dos resultados obtidos. Testar os dois descritores dará
embasamento
mento para escolher um dos descritores de acordo a aplicação indicada.
3. Fundamentação Teórica
Um mosaico
osaico de imagens consiste em unir duas ou mais imagens em uma só
só. Este
processo geralmente é feito por pares de imagens e muitas vezes de maneira sequencial
para minimizar o custo computacional.
computacional Inicialmente o algoritmo deve fazer as
marcações dos pontoss de interesse nas duas imagens – pontos chave (Figura 1) –
principalmente em suas regiões de sobreposição, para haver emenda das imagens.
Depois o algoritmo compara os pontos das duas imagens,, calculando a correspondência
dos pontos em comum nas duas imagens e ainda eliminar possíveis falsas
correspondências (Figura 2).
2) Por fim, um cálculo que envolve uma matriz de
transformação entre elas é feito e eentão o par é unido.
Figura1 - Exemplo da detecção dos pontos de interesse nas imagens
(características).
Fonte: Tarallo, 2013
Figura2 – Exemplo da correspondências
c
das características
em imagens sequenciais.
Fonte: Tarallo, 2013
4. Metodologia
Este projeto está sendo desenvolvido nna plataforma Visual Studio 2012 com a biblioteca
de processamento de imagens de acesso livre OpenCV 2.4.9, em linguagem C.
5. Estado atual
Atualmente os dois algoritmos (SIFT e SURF) já estão calculando
ando a quantidade de
pontos chaves (Figura 3 e 4) e também o tempo de processamento gasto por cada
algoritmo (Tabela 1) .
(a)
(b)
Figura 3 -Exemplo
utilizado com a Transformada SIFT.
(a) - Imagem original (b) - Imagem após a aplicação da Transformada SIFT.
Fonte: Tarallo, 2013
(a)
(b)
Figura 4 - Exemplo utilizado com o descritor SURF.
(a) - Imagem original (b) - Imagem após a aplicação do SURF.
Fonte: Tarallo, 2013
6. Resultados
O trabalho está em desenvolvimento e o que foi observado nos resultados
ltados obtidos até
então é que o descritor SIFT apresenta um tempo superior de processamento comparado
com SURF para a detecção de pontos chaves, mas detecta uma quantidade maior de
características
sticas do que o SURF (Tabela 1).
1) A próxima etapa é testar o desempenho dos
descritores para uma quantidade maior de imagens. Na sequência será desenvolvida
uma metodologia para construção de mosaicos e uma metodologia para analisar e
avaliar a qualidade dass emendas das imagens utilizando os dois descritores.
Tabela 1: Resultados
Quantidade de características
Tempo gasto (segundos)
SIFT
3196
33.9
SURF
1109
9.7
Tabela 1 - Resultados obtidos com a Figura3 e Figura 4.
7. Referências
BAY, H.; TUYTELAARS, T.; GOOL, L. V. SURF: Speeded Up Robust Features
Features,
volume 3951 of Lecture Notes in Computer Science, chapter Computer Vision ECCV 2006. Springer Berlin/ Heidelberg , pp. 404–417,
404
2006a.
LOWE D. G. Object Recognition from Local Scale-Invariant
Scale
Features.. Proceeding
of Ninth International Conference on Computer Vision (ICCV'99), 1999.SHUM,
H-Y.
SZELISKI, R. Construction of Panoramic Image Mosaic.
Mosaic. In. BENOSMAN, R.,
KANG, S. Panoramic Vision. New York: Springer-Verlag, p.227-268,
268, 2001.
TARALLO, A.S. Construção Automática de Mosaicos de Imagens Digitais Aéreas
Agrícolas Utilizando Transformada SIFT e Processamento Paralelo
Paralelo. Tese de
Doutorado. Universidade de São Paulo – EESC – USP, 2013.
Desenvolvimento de um Sistema Inteligente para Controle de
uma Cadeira de Rodas para Usuários Tetraplégicos
Matheus Sousa Bezerra¹, Prof. Dr. Fernando Vernal Salina²
Instituto Federal de Educação, Ciência e Tecnologia de São Paulo (IFSP)
1
Boituva – SP – Brasil
Instituto Federal de Educação, Ciência e Tecnologia de São Paulo (IFSP)
2
Boituva – SP – Brasil
[email protected], [email protected]
Abstract. This article describes the development process of an intelligent
system for controlling a wheelchair for tetraplegic users. By using Artificial
Neural Networks, it will be possible, at the end of this project, simulate the
process of human cerebral learning, allowing the system to learn how to
identify different users' ocular patterns and adapt itself to each one of them,
sending commands to a motorized wheelchair, both in an autonomous manner.
Resumo. Este artigo descreve o processo de desenvolvimento do sistema
inteligente para controle de uma cadeira de rodas para usuários
tetraplégicos. Utilizando-se de Redes Neurais Artificiais, será possível, ao
final deste projeto, simular o processo da aprendizagem cerebral humana a
fim de que o sistema aprenda a identificar diferentes padrões oculares nos
usuários e adaptar-se a cada um, enviando comandos a uma cadeira de rodas
motorizada, ambos de maneira autônoma.
1. Introdução
Este projeto visa a implementação de um módulo para o desenvolvimento de um
controle biométrico de uma cadeira de rodas para usuários tetraplégicos. Para tal fim,
será implementado um sistema de reconhecimento biométrico em uma cadeira de rodas
motorizada, permitindo que o usuário controle-a somente pela visão. Dessa forma,
usuários tetraplégicos poderão locomover-se com maior facilidade e autonomia,
aumentando a acessibilidade desse grupo de pessoas. O trabalho em questão apresenta
um algoritmo que define a direção para a qual dirige o olhar do usuário, visto que o
algoritmo de localização e rastreamento do olhar pertence a outro projeto. Para realizar
tal atividade propõe-se o uso de RNAs (Redes Neurais Artificiais), tendo em vista que
trata-se de um sistema não-determinístico, dado à natureza do problema.
2. Fundamentação Teórica
Lewis [1], explica que as Redes Neurais Biológicas funcionam da seguinte maneira:
nossos cérebros contêm cerca de 10 11 de neurônios. Cada um consiste de um corpo
celular, um conjunto de dendritos (levam informações eletroquímicas para a célula) e um
axônio (transmite informações eletroquímicas para fora da célula). Um neurônio produz
uma saída (output) ao longo de seu axônio, sendo acionado quando o efeito coletivo de
suas entradas (inputs) alcança um determinado limiar. O axônio pode influenciar
dendritos de outro neurônio por meio de ligações denominadas sinapses.
Algumas sinapses gerarão um efeito positivo no dendrito, incentivando o neurônio a
disparar, enquanto outras irão produzir um efeito negativo, desestimulando-o a disparar.
Um único neurônio recebe entradas a partir de aproximadamente 10 5 sinapses e a
quantidade de sinapses no nosso cérebro pode ser da ordem de 10 16. Embora não se
saiba exatamente como os processos de aprendizagem e memória aconteçam no cérebro
humano, acredita-se que estão associados às sinapses - as interconexões entre os
neurônios.
As Redes Neurais Artificiais (RNAs) foram projetadas para que o funcionamento das
Redes Neurais Biológicas seja recriado por meios tecnológicos. Embora não seja
possível recriar tecnologicamente o processo de aprendizagem do cérebro humano em
sua totalidade com o aparato tecnológico disponível atualmente, é possível simular, de
forma mais simples, seu processo de raciocínio, permitindo que um software possa
aprender a realizar uma tarefa e desempenhá-la de forma autônoma.
Segundo Silva [2], Redes Neurais Artificiais podem ser implementadas para os mais
variados fins, aproveitando-se de sua capacidade de aprendizagem a partir da
apresentação de amostras. Com a implementação correta de uma Rede Neural Artificial,
é possível ensinar ao software como capturar os olhos e segui-los, enviando comandos à
cadeira de acordo com sua posição, como piscar duas vezes para parar ou virar à direita
ao olhar para esse lado.
3. Metodologia
A proposta deste projeto é a utilização de Redes Neurais Artificiais para reconhecimento
da posição dos olhos do usuário da cadeira e, com isso, enviar comandos para a
movimentação da mesma. Para que a implementação ocorra, é necessária a presença de
parâmetros de entrada, possibilitando o aprendizado e então o processamento, e os de
saída, sendo esses os resultados do processamento. De forma sucinta, as variáveis de
entrada são os dados já pré-processados da imagem capturada por uma webcam
direcionada para os olhos e de saída o resultado desse processamento, ou seja, a posição
dos olhos. A Rede Neural receberá os dados de entrada, podendo conter ruídos, e
utilizará um algoritmo para treinamento que, após a aprendizagem, permita a análise dos
dados e determine a posição dos olhos; com isso, comandos então podem ser utilizados
para ditar a direção a ser seguida pela cadeira.
Para um maior aproveitamento do conteúdo, bem como ter a possibilidade de testar
conceitos ligados ao desenvolvimento do projeto, optou-se por utilizar duas plataformas
como apoio: Neuroph e OpenCV. Neuroph é um framework (um tipo de software que
serve de base para o desenvolvimento de aplicativos) de código aberto em Java para a
modelagem de arquiteturas comuns de Redes Neurais, disponível para Windows e Linux.
Desenvolvedores, estudantes e pesquisadores ao redor do mundo estão utilizando-o para
as mais variadas finalidades dentro do campo de Redes Neurais, mostrando-se uma
ferramenta eficaz para implementações mais práticas e eficientes.
O OpenCV é uma biblioteca de código aberto para a área de visão computacional e
aprendizado de máquina, livre tanto para uso pessoal quanto para comercial. Possui mais
de 2500 algoritmos otimizados, podendo ser utilizados para reconhecimento de faces e
objetos, por exemplo. Possui suporte para o Linux, Windows e MacOS, além de
interfaces para MATLAB, Java, C++, C e Python. Conta com uma comunidade de mais
de 47 milhões de usuários, além de ser utilizado por empresas de grande porte como
Google, Intel e Microsoft.
4. Resultados
O projeto encontra-se, até o presente momento, em fase de desenvolvimento. No
entanto, já obteve-se um conjunto de promissores resultados, considerando-se o estado
inicial do projeto, como a assimilação dos conteúdos de Redes Neurais e Artificiais pelo
orientando, bem como o embasamento matemático. Também utilizou-se plataformas para
reconhecimento de imagens (Neuroph e OpenCV), tanto para PC quanto para Android,
visando a implementação temporária dos conceitos para a realização de testes, os quais
confirmaram ainda mais o potencial da pesquisa.
5. Referências
Lewis, P. (2006) “Analogy between human and
http://users.ecs.soton.ac.uk/phl/ctit/nn/node2.html, Abril.
artificial
neural
nets”,
Silva, I. N.; Spatti, D. H.; Flauzino, R. A. (2010) Introdução. In Redes neurais
artificiais: para engenharia e ciências. pages 21-35. ArtLiber.
Neuroph: Java Neural Network Framework (2014), http://neuroph.sourceforge.net/,
Abril.
OpenCV: Open Source Computer Vision (2014), http://opencv.org/, Abril.
Controlador de Variação de Intensidade Elétrica por meio
da Comunicação Bluetooth
Francisco A. Pereira Júnior, André de Souza Tarallo
Instituto Federal de Ciência e Tecnologia de São Paulo (IFSP) – Campus Boituva
[email protected], [email protected]
Abstract. This article describes the behavior of a controller device of variation
of electrical intensity, including a description from main components and how
is performed the automatization through Bluetooth communication. At this
article, the controller is used to automating the control of luminous intensity of
a lamp. The user via mobile device with Bluetooth (e.g., cellphone) is able to
control the lamp intensity easily. Partial results demonstrate the viability and
functioning of the device properly.
Keywords: controller, electrical intensity, Bluetooth;
Resumo. Este artigo descreve o funcionamento de um dispositivo controlador
de variação de intensidade elétrica, incluindo a descrição dos principais
componentes e de como é feita a automatização por meio da comunicação
bluetooth. Neste artigo, o controlador é utilizado para automatizar o controle
da intensidade luminosa de uma lâmpada. O usuário por meio de um
dispositivo móvel com bluetooth (ex: celular) consegue controlar a
intensidade de uma lâmpada facilmente. Os resultados parciais obtidos
evidenciam a viabilidade e funcionamento do dispositivo de maneira
adequada.
Palavras-chave: controlador, intensidade elétrica, Bluetooth.
1. Introdução
O termo “sustentabilidade” vem sendo cada vez mais popularizado e discutido. Este
termo expressa um modo de como balancear em conformidade a ‘política de
desenvolvimento’ com ‘economia’, e ainda, garantir que os recursos naturais não sejam
mais utilizados excessivamente, de modo a fazer com que a produção e o consumo se
auto sustentem [AFONSO, 2006 ].
O consumo irresponsável de energia elétrica gera cerca de 8,1 bilhões de reais ao ano
em prejuízos para o governo brasileiro atualmente, segundo a ANEEL (Agência
Nacional da Energia Elétrica), o que pode ocasionar racionamento de energia ou repasse
de tarifa para os consumidores, além do desperdício dos recursos naturais.
2. Caracterização do Problema
Associar ‘inovação’ com ‘sustentabilidade’ no ramo dos negócios é dificil. No ramo dos
negócios, empresas de variados segmentos tem interesses divergentes, até mesmo por
apelar diretamente na economia, já que a prática sustentável fica muito dependente dos
recursos naturais e tecnologias envolvidos [KRUGLIANSKAS e PINSKY, 2014]. O
termo sustentabilidade vem sendo cada vez mais compreendido e as empresas líderes
têm grande capacidade de compreender as novas dinâmicas de mercado e suas
necessidades, e que serão consequentemente necessidades de seus clientes, então tais
empresas vem se moldando entre as ondas de inovações para atender tais necessidades,
de acordo com os requisitos da sustentabilidade.
3. Metodologia
A proposta do projeto é inibir o consumo desnecessário de energia elétrica no que diz
respeito a iluminação, através do ajuste da intensidade luminosa com tecnologia sem
fio, para que as lâmpadas fiquem com a quantidade correta de luminosidade, deixando o
ambiente em questão com a luminosidade adequada, mas ainda assim de forma
facilitada com apenas alguns toques em dispositivos móveis com tecnologia bluetooth
(ex: celular).
A norma técnica que abrange os assuntos referentes a iluminação em ambientes de
trabalho e interiores é a ABNT NBR ISO/CIE 8995-1:2013. A partir do momento em
que se percebe a situação a qual se encontra a luminosidade no ambiente, o elemento
controlador que receberá os comandos manuais e/ou sem fio poderá controlar a variação
da tensão elétrica na lâmpada do ambiente através de um aplicativo de dispositivo
móvel, por manuseio do usuário.
3.1. Controlador
O controlador tem em sua arquitetura nanotecnologia de computação integrada, que lhe
permite processar e armazenar programas de rotinas em sua memória, gerenciando tais
funções e também suas entradas/saídas [FERREIRA, 1998]. A sua rotina de
programação foi toda descrita em linguagem de baixo nível assembly.
O controlador vem da familia 16F da Microchip®, que tem canal de instruções de 8 bits
e funções de CCP (Capture/Compare/Power Width Modulation), as quais foram
necessárias para modular a intesidade do sinal que controla, basicamente, a intensidade
da lâmpada. O controlador conta com 12 modos de intensidade, que podem ser
configurados através do aplicativo de celular ou de modo manual com botões para
aumentar ou diminuir a intensidade da lâmpada.
3.2. Módulo de Comunicação Bluetooth
O bluetooth é um tecnologia aberta que permite comunicação entre diversos
dispositivos através de conexão por ondas de radio de curto alcance. Tem como suas
vantagens o baixo consumo de energia e a capacidade de comunicação rápida com
transmissão de todo tipo de dado para qualquer outro dispositivo bluetooth. Em
questões de segurança, a transmissão de dados e/ou voz, que é muito comum, é feita
através de autenticação, e encriptação para evitar que os dados sejam copiados ou
roubados quando estiverem sendo transferidos de um dispositivo ao outro [PRABHU e
REDDI, 2004].
No projeto, o Bluetooth é passível de configuração. A partir do momento em que se
estabelece uma conexão com o módulo, é possível a configuração de taxa de
transferência de dados além de comandos como reiniciar e renomear o módulo.
3.3. Aplicativo no Smartphone
Este aplicativo foi desenvolvido em linguagem Java na plataforma AndroidStudio IDE.
O aplicativo conta com uma função para enviar comandos escritos pelo próprio usuário
em caso de querer configurar o módulo Bluetooth. Também conta com botões de função
para aumentar ou diminuir a intensidade da lâmpada.
3.4. Iluminação
Conservar energia é preservar o meio ambiente, segundo Costa (2006). Para que seja
atingido tal objetivo é necessário conscientizar os individuos de suas ações. Segundo
Rodrigues, engenheiro responsável pelo PROCEL (Programa Nacional de Conservação
de Energia Elétrica) da ELETROBRÁS, existem interferências que justificam um gasto
incontrolavel de energia elétrica, e que a partir do momento que isto for compreendido e
fizer algo a respeito de adequações de ambiente, no que diz respeito a luminosidade, é
possível diminuir os gastos. Na tabela 1 é demonstrado os níveis de refletância de
acordo com a tonalidade da superfície refletida. Os dados da tabela 1 servem para
mostrar que a escolha da tonalidade de um ambiente ajuda a diminuir gastos e
economizar energia elétrica.
Superfície
Refletância
Muito Clara
70%
Clara
50%
Media
30%
Escura
10%
Preta
0%
Tabela 1. Níveis de refletância¹ de acordo com a tonalidade da superficie
refletida.
Há também determinadas situações que o consumo em excesso pode ser evitado, como
na tabela 2.
Atividade
E(minima) E(média) E(máxima)
Atividade não contínua como circulação,
sanitário, depósito, salão, sala de espera, etc.
100 lux
150 lux
200 lux
Atividade simplificada com requisitos visuais
limitados como: sala de controle, sala de aula, etc.
200 lux
300 lux
500 lux
Atividade simplificada com requisitos visuais
normais, tais como escritórios, bancos, lojas, etc.
300 lux
500 lux
750 lux
Situação onde se exige visualização de detalhes
com exposição em vitrine, desenho, etc.
750 lux
1.000
lux
1.500 lux
Tabela 2. Quantidades recomendadas de lux² em determinados tipos de
situações.
¹Refletância: A refletância luminosa de uma superfície é a propriedade que permite que
a mesma reflita a luz. A medida de refletância luminosa é a fração de luz incidente
específica que uma superfície reflete (Definição na ASTM E 14T7).
²Lux: Unidade de medida de iluminação luminosa (símbolo: lx) equivalente à
iluminação de uma superfície que recebe, de uma forma uniformemente distribuída, um
fluxo luminoso de 1 lúmen por metro quadrado.
4. Estado Atual do Trabalho ou Resultados
Atualmente os resultados iniciais vem se mostrando adequados e viáveis para a
continuação do desenvolvimento do projeto de acordo com a metodologia adotada. O
desenvolvimento das funções no dispositivo móvel vem sendo integradas, permitindo
enviar comandos por vias de palavras ou cliques em botões. O funcionamento de tal
conjunto vem sendo testado e comprovado em observações, onde o controlador fica
mais eficiente quanto mais próximo, sem outros componentes eletrônicos de proteção,
da lâmpada.
5. Conclusão
É possível salvar a natureza sem ter que fazer grandes ações. Com um simples toque no
celular é possível controlar a luminosidade ambiente e deixa-lo mais confortável, e ao
mesmo tempo diminuindo o gasto com energia elétrica e contribuindo com a natureza.
Referências
Afonso, C. M. (2006), “O que é Sustentabilidade”. Sustentabilidade: Caminho ou
Utopia? São Paulo: Annablume. (pgs 11-14).
Costa, G. J. C., (2006), “Engenharia de Iluminação”, Iluminação econômica: cálculo e
avaliação, Porto Alegre: EDIPUCRS.
Ferreira, J. M. M. (1998), Introdução ao Projeto com Sistemas Digitais
Microcontroladores, Portugal: FEUP Edições, Coleção Manual n.º 1. (pgs. 257-259)
Kruglianskas, I., Pinsky, V. (2014), Gestão Estratégica da Sustentabilidade, Brasil:
Elsevier Brasil.
Prabhu, C. R. S., Reddi, P. A. (2004), “Introduction to Wireless Technologies”,
Bluetooth Technologies: And its Applications with JAVA and J2ME, PHI Learning
Pvt. Ltd., (pgs. 2-17).
Detecção de olhos utilizando o Método Viola-Jones
João Lucas Gonçalves Lucchetta, Fernando Vernal Salina
1
Instituto Federal de Educação, Ciência e Tecnologia de São Paulo
Boituva - SP - Brazil
{joao.lucas.lucchetta,fsalina}@gmail.com
Abstract. The eye detection has been the subject of many researches during
the past years, for business and academic purposes. In reason of this problem
being a having many solutions, different techniques are able to be applied in
order to achive satisfactory results. This paper aims presenting the theoretical
basis of the Viola-Jones method, one of the best seen object-detection methods
on a robust and reliable way. Also some partial results of an implementation
and tests of an Eye Detection system based on the Viola-Jones Method.
Keywords: Eye Detection; Object Detection; Image Processing;
Resumo. O processo de detecção dos olhos tem sido alvo de diversas pesquisas nos anos passados, nos ambientes acadêmicos e de negócios. Por ser um
problema que permite variadas soluções, diversas técnicas podem ser usadas
para tal fim. Este artigo tem por objetivo apresentar a base teórica do Método
Viola-Jones, um dos mais bem recebidos métodos de detecção de objetos de
forma robusta e confiável. Também são apresentados resultados parciais da
implementação e dos testes de um sistema de detecção de olhos baseado no
Método Viola-Jones.
Palavras-chave: Detecção de Olhos; Detecção de Objetos; Processamento de
Imagens;
1. Introdução
A detecção de olhos se tornou um importante processo dentro de diversos sistemas computacionais, visto que os olhos e sua posição podem ser considerados uma das caracterı́sticas mais signficativas e importante no rosto humano. Por exemplo, pode ser aplicada no processo de identificação pessoal pela ı́ris, para aplicações de facial e inclusive
para facilitar a detecção de outros pontos da face.
Esse artigo apresenta um referencial teórico sobre a detecção de olhos além de um sistema
de detecção de olhos utilizando cascatas de classificadores, uma abordagem que se utiliza
de aprendizado de máquina [Viola and Jones 2001].
2. Método Viola-Jones
O método proposto em [Viola and Jones 2001] consiste em três seções principais:
• Representação de imagem baseada em Imagem Integral;
• Um modelo de classificador criado utilizando Adaboost;
• Um método que combina sucessivos classificadores simples em estrutura de cascata.
2.1. Atributos
O método utiliza atributos retangulares simples para indicação da existência de uma face.
Apesar de ser considerado pelos autores como sendo de certa maneira primitivo quando
comparado a outras técnicas, o conjunto de atributos retangulares utilizado com Imagens
Integrais compensa amplamente a sua falta de flexibilidade, visto que atributos retangulares somente podem se orientar verticalmente, horizontalmente ou em uma diagonal.
Figura 1. Atributos selecionados pelo algoritmo, com caracterı́sticas comuns a
maioria das faces [Viola and Jones 2001]
Como exemplificado pela Figura 1, o primeiro atributo retangular indica que a
região dos nossos olhos é geralmente mais escura que a parte superior das bochecha, do
mesmo modo que no segundo atributo indica que a mesma área é geralmente mais escura
que a região do nariz.
2.2. Imagem Integral
A fim de melhorar o desempenho computacional é utilizada uma representação intermediária para a imagem chamada Imagem Integral. Foi apresentado em [Crow 1984],
com o nome de tabela de área somada.
Em [Viola and Jones 2001], porém, esse método foi denominado Imagem Integral, de modo a destacar o uso para análise de imagens e não para mapeamento de texturas. A Imagem Integral no ponto x,y contém a soma dos pixels acima e á esquerda
de x,y, incluindo x,y:, conforme mostrado na equação (1).
ii(x, y) =
X
i(x0 , y 0 )
(1)
x0 ≤x,y 0 ≤y
A Figura 2 apresenta 4 subjanelas retangulares, assim como os atributos utilizados
no método.
Figura 2. O valor no ponto 1 é a soma dos pixels de A. No ponto 2, é A+B, no
ponto 3 é A+C e no ponto 4 é A+B+C+D.
A soma Integral, por exemplo, do Retângulo D pode ser calculada pela equação
(2).
D = ii(d) + ii(a) − [ii(b) + ii(c)]
(2)
2.3. Adaboost
O Adaboost (Adaptive Boosting, apresentado em [Freund and Schapire 1997], foi o primeiro algoritmo prático de aprimoramento e continua a ser largamente utilizado, ainda é
objeto de estudo em vários campos [Schapire 2013]. Esse algoritmo consiste no treinamento de diversos classificadores e a combinação dos mesmos de modo a criar um classificador forte. Com um conjunto de imagens positivas do objeto a ser treinado e outro
conjunto de imagens negativas, o sistema de [Viola and Jones 2001] utiliza o Adaboost
para selecionar um pequeno conjunto de atributos e para treinar o classificador.
2.4. Classificadores em Cascata
Consiste em uma cascata de decisões na qual cada subjanela é testada pelos atributos
treinados pelo Adaboost. Em caso de classificação possitiva do primeiro atributo, há um
gatilho para o segundo, e assim sucessivamente até a imagem receber uma classificação
negativa ou ser aceita como uma face.
3. Resultados Parciais
Utilizando a biblioteca OPENCV e a linguagem C++ foi implementado um sistema de
detecção de olhos utilizando o Método Viola-Jones. O classificador de atributos dos olhos
utilizado se encontra disponı́vel juntamente com a biblioteca OpenCV, e um subconjunto
do banco de faces ’FEI Face Database’ [Oliveira Jr. and Thomaz 2006].
Esse subconjunto contém 2 imagens frontais de cada um dos 200 indivı́duos, totalizando assim 400 imagens. Desse total, obtivemos uma taxa de detecção correta de
aproximadamente 72%.
4. Conclusão
Conclui-se que o processo de detecção de olhos é um campo importante e que deve
ser explorado buscando aprimoramento das técnicas atuais. Nesse estágio inicial da
implementação obtivemos resultados importantes e fizemos observações relevantes, os
quais podem nos auxiliar a aprimorar e maximizar a precisão desse sistema, sendo esperada uma taxa de detecção correta de aproximadamente 80% com a adição de melhoramentos ao sistema.
Referências
Crow, F. C. (1984). Summed-area tables for texture mapping. ACM SIGGRAPH computer
graphics, 18(3):207–212.
Freund, Y. and Schapire, R. E. (1997). A decision-theoretic generalization of on-line
learning and an application to boosting. J. Comput. Syst. Sci., 55(1):119–139.
Oliveira Jr., L. and Thomaz, C. (2006). Captura e alinhamento de imagens: Um banco
de faces brasileiro. Relatório de iniciação cientı́fico, Departamento de Engenharia
Elétrica da FEI, São Bernardo do Campo, SP, 10.
Schapire, R. E. (2013). Explaining adaboost. In Empirical Inference, pages 37–52. Springer.
Viola, P. and Jones, M. (2001). Rapid object detection using a boosted cascade of simple
features. In Computer Vision and Pattern Recognition, 2001. CVPR 2001. Proceedings
of the 2001 IEEE Computer Society Conference on, volume 1, pages I–511. IEEE.
DETECÇÃO E RECONHECIMENTO DE CARACTERES
EM PLACA DE AUTOMÓVEIS UTILIZANDO TÉCNICAS
DE PROCESSAMENTO DIGITAL DE IMAGENS
Natanieli Caroline Dias Medeiros, André de Souza Tarallo
1
Instituto Federal de São Paulo – Campus Boituva – Boituva – SP – Brasil
Análise e Desenvolvimento de Sistemas.
[email protected],[email protected]
Abstract. This research project aims to develop a system able to identify
license plates and recognize the characters (letters and numbers) of these
plates obtained from digital images.
This system can be used in places where large movement of cars in order to
monitor the entry and exit exists, ensuring better security and access control.
The system obtains the image of the automobile by means of a digital camera.
From this image, the edges of the plate are identified, and the plate is
extracted from the image, facilitating processing. Having only the plate, the
identification of letters and numbers occurs. With this, a database with the
schedule in automobiles, can be consulted later.
Key Words: car license plate, access control, identification, digital images.
Resumo. Esse projeto de pesquisa visa o desenvolvimento de um sistema
capaz de identificar placas de automóveis e de reconhecer os caracteres
(letras e números) dessas placas obtidas a partir de imagens digitais.
Este sistema poderá ser utilizado em lugares onde exista grande circulação de
automóveis com objetivo de monitorar a entrada e saída, garantindo uma
melhor segurança e controle de acesso. O sistema obtém a imagem do
automóvel por meio de uma câmera digital.
A partir dessa imagem, as bordas da placa são identificadas, e a placa é
extraída da imagem, facilitando o processamento. Tendo somente a placa,
ocorre a identificação das letras e dos números. Com isso, um banco de dados
com o horário de passagem dos automóveis, poderá ser consultado
posteriormente.
Palavras-Chaves: Placa de automóvel, controle de acesso, identificação,
imagens digitais.
1. Introdução
O projeto, por meio de técnicas de processamento de imagens, faz com que o sistema
detecte a presença do automóvel e capture a imagem do mesmo, através de uma câmera,
de modo que esta esteja posicionada para a região da placa do automóvel.
O passo seguinte é a detecção da placa do automóvel, que consiste em um algoritmo que
encontra todas as bordas da imagem, inclusive o quadrado do contorno da placa do
automóvel por completo.
Depois de encontrar a placa na imagem é necessário fazer a leitura da placa detectada,
ou seja, segmenta-la, comparando cada caractere com um banco já pronto até identificar
todas as letras e números. (GONZALEZ; WOODS, 2010).
Assim é possível identificar os automóveis que passaram por essa câmera, pois assim
que a placa passa, o sistema gera um arquivo no banco de dados com o horário da
passagem do automóvel, que poderá ser consultado a qualquer momento.
2. Caracterização do Problema
Um dos problemas encontrados nesse projeto é a resolução da imagem, pois o detector
de bordas não consegue identificar uma borda por completo em imagens de baixa
resolução.
Em cada teste feito com imagens de resolução diferente, foi preciso alterar comandos e
parâmetros no código para poder obter o resultado esperado. Isso gera um problema,
pois o sistema fica dependente da resolução da imagem de entrada para ter sucesso de
execução. Estão sendo feitos testes para se adotar uma resolução media para se obter
uma grande porcentagem de sucesso.
3. Fundamentação Teórica e Metodologia
O sistema é fundamentado no uso dos seguintes métodos: filtro canny, que suaviza o
ruído e localiza bordas (exige que a imagem seja transformada para o sistema de cor
preto e branco), sendo a cor branca as bordas localizadas (Figura 1). (VALE; DAL POZ
2002).
E está sendo utilizado a biblioteca open source de processamento de imagem OpenCV
versão 2.4.9 e a programação feita em linguagem C na plataforma Visual Studio 2012..
A partir do Canny, o OpenCV fornece um comando para auxiliar na detecção dos
contornos da imagem; este comando é o cvFindContours. Ao usá-lo é preciso usar o
comando cvDrawContours, que desenha todas linhas detectadas, em cor vermelha,
encontradas no comando anterior (Figura 2).
Figura 1. Imagem após aplicação do filtro Canny.
Figura 1. Imagem após aplicação do cvFindContours e cvDrawContours.
5. Estado Atual do Trabalho
O estado atual do trabalho, de acordo com o projeto de Nascimento (2012), está
completo o processo de detecção da placa do automóvel. A primeira etapa já foi
alcançada com sucesso, após muitas pesquisas e leituras de artigos e de outros projetos
com o mesmo objetivo além do citado acima.
6. Conclusão
A metodologia proposta nesse projeto é criar um sistema que possa localizar e
identificar placas de automóveis.
A partir da primeira etapa que já foi concluida e com os testes já realizados com
algumas imagens, os resultados se mostram promissores para o desenvolvimento das
próximas etapas com sucesso.
A conclusão dessa primeira parte trouxe bastante conhecimentos sobre a área de
processamento digital de imagens e trouxe também o gosto pela pesquisa, além de
proporcionar conhecimentos para as próximas etapas do projeto.
7. Referências
NASCIMENTO, J. D. Detecção e reconhecimento de placa automotiva com baixo
custo. 2012. 110 f. Monografia (Bacharelado em Engenharia da Computação) Centro Universitário de Brasília, 2012.
GONZALEZ, Rafael C.; WOODS, Richard E. Processamento digital de imagens. 3º
ed. São Paulo: Pearson Prentice Hall, 2010.
VALE, G. M.; DAL POZ, A. P. Processo de detecção de bordas de Canny. Boletim
de Ciências Geodésicas, Curitiba, v.8, n.2, p. 67-78, 2002.
Telescópio Automatizado Para Fins Didáticos
Manoel O. Santana Neto, Pedro B. Frate, Vinícius M. Camargo, Lucas E. S.
Mascarenhas, Adilson da S. Júnior
Automação Industrial – Instituto Federal de Educação, Ciência e Tecnologia São Paulo
IFSP – Campus Boituva
Avenida Zélia de Lima Rosa, 100 - Portal dos Pássaros, Boituva, SP, Brasil -18550-000
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
Resumo. Automatizar um telescópio controlado por arduíno e dois servo
motores controlados pelo Driver DLB 2126B – Delta. O telescópio deve
ajustar o posicionamento automaticamente e acompanhar os astros (Planetas,
Estrelas, Satélites, etc.) em tempo real, corrigindo a variação de
movimentação dos astros e tirar fotos deles com finalidade didática.
Palavras chave. Telescópio, Automação, Astronomia.
[Digite texto]
1. Introdução
O telescópio está sendo desenvolvido em prol das escolas de Boituva e região. O
objetivo dele é ajudar os alunos dessas escolas a aprender, com auxílio prático, a
conhecer mais sobre astronomia. Queremos incentivar os alunos dessas escolas a
conhecer e se interessar nessa matéria, formando futuros profissionais.
2. Caracterização do Problema
Por quê automatizar um telescópio? Por vários motivos, além de facilitar o estudo da
astronomia para os interessados, ajuda também quem está estudando este tema na
escola, ou em uma graduação. A Astronomia é uma das matérias mais interessantes da
escola, e também é uma área que sofre com escasses de profissionais qualificados no
mercado. O trabalho tem planos para favorecer os estudantes que gostam do espaço e de
seus mistérios e incentivar isso desde cedo, podendo atrair para a profissão muitos
alunos novos.
3. Fundamentação Teórica
O telescópio em desenvolvimento tem algumas diferenças dos telescópios comuns, ao
invés de usar uma associação de lentes, foi utilizada uma associação entre dois espelhos
e uma lente. Cada espelho tem uma função, o maior fica perto da base, é côncavo e tem
a função de refletir tudo para um centro, o segundo tem uma leve inclinação e se
posiciona no foco do espelho côncavo, essa leve inclinação envia a imagem para uma
lente, o que torrna a visão mais nitida.
4. Metodologia
O telescópio será movimentado por dois Servo motores. Um em sua base, e outro em
sua lateral, podendo assim, visualizar qualquer direção no espaço, encontrando todos os
astros que estão ao alcance.
Será utilizado um arduíno para comunicar o Driver DLB 2126B – Delta que controlará
os dois Servo motores, posicionando os mesmos na direção desejada.
5. Estado Atual do Trabalho
O projeto se encontra em andamento. A parte da associação Servo motor / Arduino já
esta concluída e já foi testada obtendo sucesso.
[Digite texto]
A parte da monografia está em processo, e está sendo a maior dificuldade do projeto.
A montagem do telescópio foi também um grande desafio por ser um processo muito
extenso em realção ao tempo hábil. Contudo, será utilizado um telescópio já montado,
para substituí-lo.
6. Imagens
Figura 1: Arduino Uno.
Figura 2: Servo Motor.
Figura 3: Telescópio
Figura 4: Driver e Servomotor
As imagens mostram dois dos materiais usados. A figura 1 ilustra um Arduino Uno, a
figura 2 um Servo Motor, a 3 mostra o telescópio, e a 4 mostra o driver e o servomotor.
7. Conclusão
O projeto ainda não está concluído, porém os Servo motores estão programados e
testados e o Arduino já está comunicando com o Driver e comandando eles.
É muito gratificante fazer um projeto como esse, pois vai ajudar muitos alunos e formar
muitos profissionais futuramente.
[Digite texto]
Com esse trabalho, pode se concluir que existem muitas dificuldades e muitos
problemas na hora de fazer um projeto de alto nível, que comandar um arduino pode ser
o método mais fácil e barato para controlar um motor ou outros equipamentos e que é
possível fazer coisas muito grandes com pouco tempo.
8. References
MCROBERTS, Michael. Arduíno Básico. São Paulo: Novatec, 2011. 456 p.
SOARES, Karla. O que é um Arduino e o que pode ser feito com ele?. Disponível em:
<http://www.techtudo.com.br/noticias/noticia/2013/10/o-que-e-um-arduino-e-o-quepode-ser-feito-com-ele.html>. Acesso em: 14 out. 2014.
WHAT is Arduino?. Disponível em: <http://www.arduino.cc/en/Guide/Introduction>.
Acesso em: 14 out. 2014.
FREQUENTLY Asked Questions. Disponível em: <http://arduino.cc/en/Main/FAQ>.
Acesso em: 14 out. 2014.
COMO funciona um Servo motor. Disponível em:
<http://www.pictronics.com.br/artigos-tecnicos/43-eletronica-e-automacao/89-comofunciona-um-servo-motor.html>. Acesso em: 14 out. 2014.
SERVO motor. Disponível em:
<http://www.feis.unesp.br/Home/departamentos/engenhariaeletrica/aula-4---servomotor-13-03-2013-final.pdf>.Acesso em: 14 out. 2014.
[Digite texto]
Captação Reuso de Água e Eficiência Energia Residencial
Almir Corrêa ,Fernando Mattos ,Matheus Rocha ,Guilherme Barbosa
,Juliano Fonseca
[email protected]
Instituto Federal São Paulo Campos Boituva
Av. Zélia de Lima Rosa, 100- Portal dos Pássaros
CEP 18550-000 – Boituva – SP - Brasil
Automação Industrial
Resumo. A utilização consciente e reutilização dos recursos naturais são temas de debate
extrema importância mundial. Estudos demostram que um das maiores fontes de desperdícios
é os domicílios residenciais. O objetivo deste trabalho foi desenvolver soluções de baixo custo
e alto impacto para a economia e o reaproveitamento dos recursos hídricos e energéticos de
um modelo de residência padrão. Utilizando uma plataforma de prototipagem eletrônica
alocado com diversos sensores, monitoramos as variareis físicas do ambiente como
luminosidade e temperatura, foram desenvolvidos sistemas de resposta para melhorar sua
eficiência. Os resultados preliminares mostraram uma redução de mais de 20% de consumo
de energia elétrica e água potável com um retorno de investimento de curto prazo. Ficou
evidente que o modelo é aplicável em qualquer residência causando um alto impacto na
economia de recurso.
Introdução
Neste projeto vamos desenvolver um modelo para nossas residências par a utilização de modo
racional de nossos recursos naturais e de energia para nosso futuro através de tecnologia. Com
o uso da tecnologia da automação vamos economizar nossos recursos naturais e também
podemos usar de uma forma sustentável com reuso e captação de águas pluviais e com uso de
geradores eólicos ,placas fotovoltaicas para geração de energia limpa e renovável com
coletores solares ira aquecer nossa água para o banho e com isso não será necessário o uso do
chuveiro elétrico e um controle dos ambientes internos através dos sensores de luz será
capaz gerar uma eficiência energética na nossa iluminação em outras palavras se tiver luz não
será necessário acender uma lâmpada para gastar energia
Caracterização do Problema
Hoje já vivemos a falta de água em nosso Planeta que se não fizermos algo de concreto para
uma melhor utilização tanto de água como energia nossas futuras gerações serão obrigadas a
viver num racionamento diário então vamos começar hoje a economizar para continuarmos
tendo estas coisas essenciais para nossa vida.
Fundamentação Teórica
Através de um controle de automação através com um controlador iremos controlar os
ambientes internas e externas para que seja possíveis controlar a energia e a água para não
haver desperdícios com processo simples e eficiente com isso as pessoas vão economizar de
forma bem simples e natural.
Metodologia
Através de um Arduino iremos monitorar e controlar os ambientes internos e externos os
sensores ldr serão responsáveis para verificar o grau de luminosidade internas e externa e com
uma placa de controle com reles para poder acender e apagar a iluminação, nosso gerador
hibrido será capaz de gerar nossa iluminação que é feita com leds, o sol também ira aquecer
nossa água e também ajudar a gerar energia e iluminar nossos ambientes, o vento será
aproveitado para ventilar nossos ambientes e gerar energia
Estado Atual do Trabalho ou Resultado
Captação de água
Feito a calha de chuva e tubos
Finalizado
Reaproveitamento de água Faltando bomba de drenagem
Desenvolvimento
Maquete
Faltando pintura final
Desenvolvimento
Sistema de iluminação
Ligação dos leds
Finalizado
Sistema de automação
Programação do arduino e reles
Desenvolvimento
Gerador hibrida
Desenvolvendo placa de conversão
Desenvolvimento
Aquecedor solar
Instalado e testado
Finalizado
Esperamos com o termino deste projeto mostra a nossa sociedade como e fácil e pratico e
ecológico manter nossos recursos naturais com tecnologia e conscientização que devemos
economizar hoje para não faltar amanhã.
Conclusão.
Através dos controles e métodos aplicados neste projeto podemos provar nossa contribuição
com o meio ambiente de forma ecológica e também econômica que é viável a qualquer
residência de ser implantado de forma fácil e pratico e também na importância de nossos
recursos naturais. Com isso ecomizamos água ,energia ,dinheiro e nossos recursos naturais.
IFSP- Instituto Federal de São Paulo
Medidor de Umidade do Solo
Iago Leal, Karoline Marisau, Jeniffer Moura.
Trabalho de pesquisa sobre Umidade do Solo
Apresentado à disciplina de Instrumentação Industrial
Ao professor Davi Fernando
Automação Industrial III Semestre
São Paulo
13/10/2014
13 de outubro de 2014
1
Introdução
A água é um dos recursos naturais inerentes á existência humana, e que
deveria ser usufruída de maneira consciente. Seu consumo é de suma
importância, tornando-se alvo de discussão nos dias atuais. E é na agricultura
que seu gasto atinge números exorbitantes, sendo a primeira causa de
desperdício de toda a água potável disponível ao ser humano. A partir desses
fatos, utilizando conhecimentos adquiridos nas disciplinas de Programação,
Instrumentação
Industrial,
Sensores
Industriais
e
Eletrônica
Industrial
desenvolvemos um medidor de umidade da terra de baixo custo e fácil
manuseio, com o objetivo de controlar a irrigação do solo, deixando explícito ao
usuário se o solo medido precisará ser irrigado. O Foco desse projeto e o
maior aproveitamento e economia da cultura a ser desenvolvida pelo pequeno
agricultor família visando uma maior produtividade.
Caracterização do problema
Quando falamos em desperdício de água, logo pensamos nos maus
hábitos da população e a falta de utilização racional em suas necessidades.
Sim, gastamos muito, mas esse consumo é muito pequeno comparado à
produção dos nossos alimentos.
Na agricultura, somente quarenta por cento da água desviada é
efetivamente utilizada na irrigação, pois a água é aplicada em excesso, fora do
período de necessidade da planta, em horários onde há maior evaporação e
por muitas vezes, a falta de manutenção é uma das causadoras desse
desperdício.
Para auxiliar nessa tarefa, desenvolvemos um medidor de umidade do
solo, capaz de classificar se o solo medido está com a umidade dentro de seus
parâmetros normais, ascendendo um led verde; quando a medição estiver na
média aceitável, um led amarelo e quando a terra estiver seca, o led vermelho
será acionado.
13 de outubro de 2014
2
Metodologia
Para desenvolvermos o projeto, foi necessário usar uma placa Arduino
Uno, a diferença mais significativa entre esse Arduino e os outros, é que ele
usa um chip USB diferente. A sua fonte de alimentação é de 3,3V podendo
fornecer uma corrente maior, vindo sempre acompanhado com o ATmega328.
Para o projeto de medição da umidade do solo, desenvolvemos um
Sketch (programa) que ascenda led’s diante das condições estabelecidas. A
linguagem de programação usada para programar Arduinos é a linguagem C.
Através de um cabo USB é possível transferir o Sketch do computador para a
placa, sendo possível alimentá-la também.
O sensor de umidade do solo pode ser usado em terra, areia ou
diretamente na água. Trata-se de um sensor que possui três fios, sendo um
VCC (ligado em 5v), outro GND e o último pino é o sinal analógico. Quando
suas duas ponteiras metálicas entram em contato com o solo seco, a
resistência é muito grande, emitindo um sinal próximo a 0V. A partir do
momento em que o fica mais úmido, a resistência diminui, fazendo com que o
sinal emitido se aproxime de 5V.
Resultados obtidos
.
13 de outubro de 2014
3
Conclusão
Sabemos que plantas e flores têm necessidades diferentes, tanto na
parte de adubagem quanto na de iluminação, porém, um dos fatores mais
importantes para que elas cresçam saudáveis seria a questão de umidade do
solo e quantas vezes deve-se regar uma determinada espécie, pois se for em
excesso pode ser extremamente prejudicial para alguns tipos de plantas.
Pensando nisso e também visando o problema de estiagem dos últimos anos,
desenvolvemos um projeto em que conseguimos saber o quão úmido está o
solo em que se deseja fazer o plantio, diminuindo significativamente o consumo
de água e aumentando as chances de fazer com que a planta escolhida cresça
saudável.
O nosso projeto consiste em um sensor de umidade de solo, um
Arduino, resistores e led's coloridos. Inserindo o sensor de umidade em um
determinado solo um led irá acender, conforme foi pré-programado, fazendo
com que saibamos em qual a porcentagem de umidade se encontra o solo.
13 de outubro de 2014
4
O uso da informática como ferramenta auxiliar na
educação de deficientes visuais através do EaD
Andreza Silva Areão, Robson Muniz Stefanelli Scavazzini
Instituto Federal de São Paulo – Campus Boituva
[email protected], [email protected];
Abstract. This article reports the use of screen readers in virtual learning
environments by testing the best practices of distance education for visually
impaired students.
It aims to propose a set of rules to correctly standardize the resources on
virtual platforms such as Moodle. In addition, we analyze the use of screen
readers in applications that access the virtual learning environment.
Resumo. Este artigo relata o uso dos leitores de tela em ambientes virtuais de
aprendizagem, fazendo testes para adequar de melhor forma a educação à
distância para deficientes visuais.
Tem como objetivo propor uma convenção de regras para padronizar de
maneira correta os recursos dispostos nas plataformas virtuais, como por
exemplo o moodle, além de fazer análises do uso dos leitores de tela em
aplicativos que acessam o ambiente virtual de aprendizagem.
Palavras-chave: AVA´S, leitores de tela, deficientes visuais, NVDA, moodle e
educação a distância.
1. Introdução
Cada vez mais a qualificação profissional é desejada pelas pessoas, embora muitas delas
não tenham oportunidade de estudar por falta de tempo. A educação à distância pode ser
considerada uma alternativa mais acessível por conseguir conciliar outros afazeres e
estudar paralelamente, já que as aulas dos cursos são visualizadas por um dispositivo
eletrônico com acesso à internet como: computadores, celulares e tablets. Tais
dispositivos permitem acesso ao Ambiente Virtual de Aprendizagem (AVA), nome
dado à plataforma de acesso aos cursos à distância.
Nos cursos de educação à distância existem alunos que apresentam dificuldades para
cumprir as atividades didáticas propostas pelo curso como, por exemplo, os portadores
de deficiência visual que tem o desafio de obter um diploma de qualificação profissional
nas diversas áreas do conhecimento.
O maior problema atualmente é a falta de aplicabilidade das regras de padronização de
acessibilidade para os AVA´S, propostas pela World Wide Consortium, (W3C) com
grande ênfase para deixar o conteúdo das aulas acessível e bem disposto visualmente
para o aluno conseguir acessar as aulas ou o curso completo.
A constituição brasileira de 1988 estabelece o decreto de “promover o bem a todos, sem
preconceitos, origem, raça, sexo, cor, idade e quaisquer outras formas de discriminação,
ou outras formas de descriminação”.
No artigo 205 descreve a educação como um direito a todos, “garantindo o pleno
desenvolvimento da pessoa, o exercício da cidadania e a qualificação para o trabalho”,
no artigo seguinte, o 206, no inciso I, reforça o que todas as pessoas precisam de”
Igualdade de condições de acesso e permanência na escola”, Mosqueira (2010), cita que
a importância de ter a melhoria para qualidade do ensino não depende só de política mas
também de outros fatores.
Portanto as ações devem ser feitas também pelos profissionais da área da educação,
usando as leis ao nosso favor para garantir e aprimorar a experiência de aprendizado dos
alunos.
2. Caracterização do Problema
A grande dificuldade encontrada atualmente é conciliar o fácil acesso das informações
no AVA com as regras de acessibilidade. Para tanto, é necessário um estudo adequado
da plataforma virtual regularmente usada no EaD, fazendo verificações se possuem um
suporte para utilizar os recursos essenciais utilizados pelos deficientes visuais, além de
verificar como os usuários irão utilizar essas ferramentas ao logo do tempo.
Mosqueira (2010) apresentou outro fato que acaba se tornado um problema frequente,
como preparar o atendimento educacional especializado para organizar os recursos
pedagógicos, sendo disponibilizados especialmente em foco da acessibilidade, tornando
possível a eliminação das barreiras para a participação dos alunos. Essas condutas
citadas anteriormente não tem sido praticadas com atenção atualmente pelos
profissionais de EaD.
Logo depois de analisar todas as dificuldades listadas acima, devemos citar o tipo de
ferramenta usada pelo deficiente, um software chamado leitor de tela. Tal ferramenta
possui difícil manipulação, pois os sintetizadores de voz são imprecisos e confusos,
necessitando ao usuário um cuidado a mais para escutá-los no momento da narração da
ação executada no computador.
3. Fundamentação Teórica
Os problemas como a falta de qualidade e eficiência, para incluir os deficientes visuais
no acesso à educação, já são muito antigos desde o surgimento do Brasil, como colônia,
império e república. Pensando em melhorar a situação dessas pessoas ao longo dos anos,
o governo brasileiro criou muitas instituições, leis, e outras formas de ajuda, tentando
amenizar os desafios enfrentados pelos deficientes visuais.
O deficiente visual necessita de determinados recursos para conseguir estudar e
conseguir obter informações. Com esta motivação, os deficientes visuais Michael
Curran e James Teh criaram um software chamado NVDA no ano de 2006, capaz de
“ler a tela” e falar ao usuário em qual aplicativo está posicionado o cursor do mouse.
Assim, com auxílio dos botões do teclado, ajuda o usuário saber qual função pode
utilizar no computador.
Atualmente, o NVDA é muito usado, sendo uma alternativa útil pela disponibilidade em
120 países, traduzido para 43 idiomas.
Outra vantagem do NVDA é a disponibilização do código fonte do projeto, podendo ser
alterado e modificado por qualquer desenvolvedor ou entusiasta, tendo a possibilidade
de melhorar o software e compartilhar o progresso com os usuários, ajudando cada vez
mais esta iniciativa.
4. Metodologia
Ultimamente, foram feitos vários testes com o leitor de tela NVDA, eles foram usados
regularmente em um AVA, tendo como base metodológica a busca por erros contidos
neles e através disso apresentar a melhor forma possível para utilizar as ferramentas.
Após estes testes, um tutorial foi feito em arquivo ppt para explicar o uso do NVDA no
Windows 7, usando tópicos listados para mostrar a parte histórica e todos os comandos
utilizados no software, ensinando a usa-los em situações comuns como: acesso ao
moodle e navegação na internet, descrevendo essas ações passo-a-passo.
Uma sequência de botões do teclado foi utilizada para manipular o software, a principal
foi o chamado modo de “navegação por objeto”, usando os botões tab
e
insert
combinados com a narração de um sintetizador de voz.
O conjunto de comandos crtl + tab e crtl + shift + insert + f10, foram utilizados para
navegar entre os diretórios do Windows e insert + f7 para listar os links quando acessar
a internet no site desejado pelo usuário.
5. Resultados
O desenvolvimento deste trabalho permitiu encontrar erros na disposição dos ambientes
virtuais dos cursos de EaD, sendo que estes foram descobertos ao longo de vários testes.
Além disso, desenvolvemos o tutorial para explicar detalhadamente o uso do NVDA no
Windows 7 e como navegar na internet e acessar o moodle.
6. Conclusão
Como conclusão, pode-se apontar que o cumprimento das regras de acessibilidade e o
uso de recursos do NVDA permitem o acesso de qualidade dos deficientes visuais aos
AVA´S. Para tanto, deve-se ter o cuidado de ensinar corretamente todas as métricas de
uso de cada recurso disponível nos ambientes de aprendizagem da Ead.
Assim, os cursos de Ead devem exigir a correta disposição dos conteúdos na internet,
para que se possa utilizar o NVDA da melhor forma possível, montando um jeito mais
simples para utilizar o computador em um curso à distância.
Referências
W3C. Web Accessibility Initiative (WAI). Disponível em: <http://www.w3.org/WAI/>.
Acesso em: 24 mai. 2012.
Sonza, A.P.; Santarosa, L.M.C. Em busca de ambientes de aprendizagem mediados por
computador acessíveis a invisuais. (Artigo) 2005. Disponível em: <http://wwwusr.inf.ufsm.br/~rose/curso3/cafe/CIEE2005.pdf>. Acesso em: 24 mai. 2012.
Mosqueira, Carlos Fernando França: Deficiência Visual na Escola Inclusiva:XIBPEX,
2010.
DESCONHECIDO. Nossa História. 2014. Texto retirado da fundação NV Access.
Disponível em: <http://www.nvaccess.org/about/our-story/>. Acesso em: 14 out.
2014.
Corrida Maluca
Fernando de Paula, Guilherme M. da Silva, Igor B. F. dos Santos, João Pedro K.
G., Lucas Piovani C.
Automação Industrial – Instituto Federal de Educação, Ciência e Tecnologia São Paulo
IFSP – Campus Boituva
Avenida Zélia de Lima Rosa, 100 - Portal dos Pássaros, Boituva, SP, Brasil -18550-000
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
Resumo. Proporcionar ao público um momento de descontração na Feira,
possibilitando estes uma corrida de carrinhos (pequenos robôs) controlados
via Bluetooth e Arduino, através de um aplicativo para Android. Nosso foco é
mostrar, de forma agradável e atraente, como funciona uma comunicação
serial envolvendo um microcontrolador simples como o da plataforma
Arduino.
Palavras chave. Automação, Robótica, Eletrônica, Arduino, Bluetooth.
[Digite texto]
1. Introdução
Primeiramente foi proposto à nós pelo orientador Davi que fizéssemos algo
eletrônico, que tivesse a ver com a matéria de Eletronica Industrial, para ser apresentado
no dia da III SEMANA NACIONAL DE CIÊNCIA DE TECNOLOGIA DO IFSP
CAMPUS BOITUVA.
Decidimos então trabalhar com a plataforma Arduino, a qual já temos pouco de
experiência, motivo pelo qual optamos em utilizá-la. Houve também a ideia de propor a
interação do público com nosso projeto, que não fosse somente algo explicativo, teórico.
Então propusemos a Corrida Maluca, onde haverão competidores, cada qual com
seu nome numa lista de classificação, onde o melhor tempo para completar o circuito
levará um prêmio.
Porém, durante a competição, perguntas sobre tecnologia serão feitas, o que
também contabilizará pontos no final.
2. Caracterização do Problema
Não há ao certo um problema, mas pelo fato de se tratar de uma feira,
principalmente, de Tecnologia, buscamos aprimorar ao máximo nosso projeto para que
ficasse algo de fácil acesso à todos, podendo assim fazer com que as pessoas se
interessem pelo assunto e talvez futuramente busquem algo sobre.
3. Fundamentação Teórica
Com base em conceitos de Eletrônica aprendidos até então no curso de
Automação Industrial, utilizamos alguns componentes necessários para que fosse
possível confeccionar uma Shield – placa “protetora” do Arudino, pois motores puxam
muita corrente, e isto danificaria a placa caso ligado diretamente nela.
4. Metodologia
Desta forma, com uso de um Circuito Integrado L293D, podemos exercer as
funções citadas anteriormente para controle de dois motores posicionados em chassis
Robóticos de pequeno porte.
Quanto à montagem da Shield, utilizamo-nos do sistema de Circuito Impresso
para melhor organização e confecção da placa, onde podemos ter um projeto visual,
[Digite texto]
funcional e livre de problemas elétricos como poderíamos ter em um circuito com a
utilização de fios.
Sendo assim, para a fabricação do circuito impresso, utilizamo-nos do Software
Proteus seguindo o circuito esquemático do L293D abaixo:
5. Estado Atual do Trabalho
Já realizamos grande parte do projeto até aqui. Foi desenvolvida uma
biblioteca pelo aluno Lucas Piovani Carneiro, para atuar na programação que
roda em cima do Arduino, facilitando assim a comunicação entre Shield/Arduino
Os circuitos impressos já estão sendo confeccionados.
6. Imagens
Figura 1: Arduino Uno.
Figura 2: Chassi Mecânico.
7. Conclusão
Podemos concluir então que com este evento, pudemos adiquirir enorme
experiência na área não somente de Eletrônica Industrial, mas também em outras áreas,
como por exemplo Programação, Elétrica, entre outras.
Aprendemos muita coisa em cima de tudo, e continuamos, pois são coisas que,
além de mexermos com isso frequentemente, gostamos do que fazemos!
8. References
SOARES, Karla. O que é um Arduino e o que pode ser feito com ele?. Disponível em:
<http://www.techtudo.com.br/noticias/noticia/2013/10/o-que-e-um-arduino-e-o-quepode-ser-feito-com-ele.html>. Acesso em: 14 out. 2014.
[Digite texto]
WHAT is Arduino?. Disponível em: <http://www.arduino.cc/en/Guide/Introduction>.
Acesso em: 14 out. 2014.
O que é Arduino?. Disponível em: < http://engenheirando.com/arduino/o-que-e/>.
WALMIR. Como funciona uma Ponte H?. Disponível em: < http://wwwmirieraeletronicasmd.blogspot.com.br/2011/08/saiba-como-funciona-ponte-h.html>.
[Digite texto]
Proposta de Uma Linha de Produtos de Software para Jogos de
Damas Focados em Acessibilidade
Larissa de Souza Pereira 1 , Felipe Nunes Gaia1
1 Campus
Boituva – Instituto Federal de São Paulo (IFSP)
[email protected], [email protected]
Abstract. Many software today used have not an architecture that attends all kinds of
users. In the context of digital games, the same premise is valid and few games promote s
accessibility for people with special needs. This paper proposes a Software Produ ct Line
(SPL), able to create different checkers with features that meet special needs. This paper
presents the conception of the SPL, the game and accessibility requirements, and the
methodology used for the evaluation of the proposal.
Resumo. Vários softwares utilizados atualmente não possuem uma arquitetura que
atenda a todos os tipos de usuários. No contexto de jogos digitais, a mesma premissa é
válida e existem poucos jogos que promovem acessibilidade para aqueles que tem
necessidades especiais. Esse trabalho propõe criar uma Linha de Produtos de Software
(LPS), capaz de criar diferentes jogos de damas com recursos que supram necessidades
especiais. O artigo apresenta a concepção da LPS, os requisitos do jogo e de
acessibilidade e a metodologia utilizada para a avaliação da proposta.
1. Introdução
Linhas de Produto de Software (LPS) podem ser citadas como um paradigma
emergente que procura estabelecer a reutilização sistemática de software através do
compartilhamento de um núcleo comum aos produtos da linha [Clements e Northrop,
2001]. Uma LPS contém produtos de software que compartilham o mesmo domínio, mas
possuem pontos que variam. Desenvolver uma LPS de jogos eletrônicos segue o mesmo
conceito.
Jogos Eletrônicos ajudam na educação por explorarem diferentes sentidos e a
capacidade cognitiva dos que os usam. Com a popularização dos jogos eletrônicos, alguns
pesquisadores e empresas especializadas começaram a investir na acessibilidade desses
jogos a pessoas com necessidades especiais (em particular, jogadores com deficiências)
[Blind Games Brasil, 2014; Yuan et al., 2011; Alves e Hostins, 2014].
2. Caracterização do problema
A simbiose entre os conceitos de LPS e jogos eletrônicos se mostra eficiente para a
proposta de um gerador de jogos eletrônicos focados em acessibilidade. A proposta é criar uma
LPS que produza jogos com recursos que supram diferentes necessidades especiais. Para que
isso fosse possível, foi feita uma análise detalhada do estado da arte sobre diretrizes de
acessibilidade em jogos eletrônicos. A maior dificuldade foi projetar uma interface simples e
adaptável, que possua todas as diretrizes de acessibilidade. Pensando nisso, as necessidades
foram categorizadas de acordo com a Figura 1.
Figura 1. Projeto da LPS para jogo de damas acessíveis
Os principais requisitos de acessibilidade contemplam deficiências cognitiva, sensorial
e motora. Para cumprir tais requisitos algumas premissas foram consideradas, como adaptação
dos elementos gráficos, garantia de autonomia e acesso a todos e permissão de ajuste das
configurações visuais e sonoras de acordo com a necessidade. Além disso foram propostos
requisitos para o funcionamento básico do jogo (gerenciamento do jogo e do jogador) e para o
aprendizado do jogo (como se joga e jogadas consideradas eficientes). Essa proposta visa
recursos para qualquer tipo de necessidade, afim de não excluir os jogadores com outras
limitações, como é comum em jogos acessíveis.
3. Fundamentação Teórica
Diretrizes para acessibilidade em jogos eletrônicos foram estudas por [Cheiran e
Pimenta, 2011] e [Patikowski, 2013] e podemos identificar diferente métodos usados por eles
para fundamentar seus projetos. No trabalho [Cheiran e Pimenta, 2011] foi utilizada uma técnica
de análise de conteúdo para identificar e categorizar temas comuns e, consequentemente, criar
um conjunto abrangente de diretrizes para acessibilidade de jogos eletrônicos. Já o trabalho de
[Patikowski, 2013] destaca a dispersão e a falta de padronização das propostas de
recomendações para acessibilidade, e propôs uma compilação e unificação das diretrizes de
acessibilidade existentes. O processo fundamentou-se em uma técnica de análise de conteúdo
que classificou e reorganizou as recomendações sob uma estrutura que é referência para a
comunidade de acessibilidade: o documento WCAG 2.0.
Os autores [Alves e Hostins, 2014] propuseram e desenvolveram um jogo chamado
Dinobase, focado em crianças de 8 a 10 anos. A proposta deles foi explorar acessibilidade em
jogos eletrônicos utilizando o paradigma do desenho universal. O trabalho [Yuan et al., 2011]
revisitou os principais jogos e artigos científicos focados na acessibilidade de jogos, destacando
os principais pontos positivos e negativos de cada.
4. Metodologia e Estado Atual
Para que a proposta atingisse seus objetivos, ela foi cuidadosamente planejada e divid ida
em etapas. Essa divisão visa o desenvolvimento de um protótipo completo, ou seja, seu objetivo
é garantir a completude e corretude dos requisitos. A divisão foi feita em 4 etapas.
4.1. Revisão da Literatura
Durante essa etapa vários trabalhos foram analisados, afim de atingir um entendime nto
melhor do escopo da pesquisa, do estado da arte relacionado a acessibilidade em jogos digita is
e dos requisitos necessários.
4.2. Engenharia de Requisitos
Durante essa etapa os requisitos foram documentados e organizados de acordo com a
Figura 1. Além disso, foram agrupados em requisitos funcionais (RF) e requisitos não
funcionais (RNF):
RF1 - O jogo deve gerenciar informações do tabuleiro.
RF2 - O jogo deve gerenciar informações e ações dos jogadores (1 ou 2 jogadores).
RF3 - O jogo possuirá uma série de comandos que realmente possibilite total
acessibilidade para todos os tipos de usuários, divididos entre os perfis: limitações
físico-motoras, limitações cognitivas e limitações sensoriais.
RF4 - Tutoriais devem ser disponibilizados, pois a compreensão de todo o jogo será
feita a partir deles. Serão claramente descritos os princípios, regras e objetivos de jogo.
RNF1 - O jogo deve ter uma interface interessante, agradável e simples, que possibilite
a fácil compreensão de menu e comandos, e não deixe de lado a atratividade e fluidez.
RNF2 - O jogo deve possibilitar ajustes nas configurações de jogo, como ajustes de
volume, definição da imagem, zoom na interface, uso do microfone.
4.3. Desenvolvimento do Jogo
Atualmente o jogo encontra-se na etapa de desenvolvimento, onde já foram definidas as
diretrizes e seus componentes através do projeto arquitetural. Ao final do desenvolvime nto
serão executados uma série de testes. A Figura 2 exibe a janela principal do jogo que já foi
desenvolvida. O objetivo dessa janela é apresentar o estado do tabuleiro e as principa is
informações necessárias ao jogador. No caso de um usuário cego essas informações serão
reproduzidas via áudio sintetizado ao acionar uma tecla projetada para isso.
Figura 2. Interface do Jogo de Damas
4.4. Avaliação com Usuários
A última etapa será a avaliação com usuários que possuem necessidades especiais,
através de testes controlados onde serão executadas tarefas comuns ao jogo. Os testes serão
monitorados e cronometrados afim de entender os problemas de usabilidade e melhorar o jogo.
5. Conclusão
O trabalho permitiu a elaboração dos requisitos necessários e suficientes para propor um
jogo na forma de LPS utilizável por qualquer usuário, seja ele portador de necessidades
especiais ou não. O projeto se diferencia pela possibilidade de aplicação efetiva ou potencial
para qualquer pessoa interessada, em busca da acessibilidade ou que necessite de recursos
acessíveis. A proposta também se destaca por sua contribuição direta ou indireta, à formulação
de políticas públicas, pois investir nesse setor acaba abrindo novas portas para pesquisas e
recursos relacionados à essa área, e assim as diretrizes e opções já existentes podem sempre ser
aprimoradas; ao avanço do conhecimento; e à melhoria da qualidade de vida e independênc ia
intelectiva de usuários com necessidades especiais.
Referências
Alves, A.G.; Hostins, R.C. "Jogos Digitais Inclusivos". Universidade do Vale do Itajaí –
UNIVALI, Balneário Camboriú/SC, Brasil, 2014.
Clements, P. C. e Northrop, L. Software Product Lines: Practices and Patterns. SEI Series in
Software Engineering. Addison-Wesley, 2001.
Cheiran, J. F. P., Pimenta, M. S. "Eu também quero jogar!" - reavaliando as práticas e diretrizes
de acessibilidade em jogos. Simpósio Brasileiro sobre Fatores Humanos em Sistemas
Computacionais, Porto de Galinhas, Brasil, 2011.
Patikowski, J.P. "Jogos Inclusivos: diretrizes de acessibilidade
Universidade Federal do Rio Grande do Sul, 2013.
para jogos digitais ".
Yuan, B.; Folmer, E.; Harris Jr, F.C. “Game Accessibility: a Survey”. Disponível em: Universa l
Access in the Information Society. Vol 10 Issue 1, March 2011, Springer-Verlag Berlin,
Heidelberg, 2011.
Detecção de Clones de Código em Repositórios de Software
Vinicyus Anchieta Alves de Oliveira1, Felipe Nunes Gaia1
1
Campus Boituva – Instituto Federal de São Paulo (IFSP)
[email protected], [email protected]
Abstract. This article discusses code clones describing them and presents them
in a simple way. The goal of the study is to achieve the extraction of metrics
that can connect clones and bugs within the evolution of a software. These
metrics could be useful in areas such as software engineering where clones
are seen in a slightly positive way.
Resumo. Este artigo discorre sobre clones de código procurando descrevê-los
e apresentá-los de forma simples. O objetivo principal do estudo é conseguir a
extração de métricas que possam ligar clones e bugs dentro da evolução de
um software. Essas métricas poderiam ser úteis em áreas como engenharia de
software, onde clones são vistos de forma pouco positiva.
1. Introdução
Clones de código são conhecidos como má prática de programação e degeneram
a arquitetura de um software [Saake et al., 2013; et al, 2010]. Vários trabalhos já
estudaram o comportamento de clones em sistemas de software [Baker et al., 1995;
Bakota et al., 2007; Saake et al., 2013]. Geralmente, eles são criados com o intuito de
reutilizar parte do software onde são copiados trechos de código e copiados em outra
parte do sistema. Existem outros tipos de clones de código, onde o código não é
propriamente igual mas seu funcionamento é semelhante ao de outro trecho de código.
Repositórios de código-fonte aberto, como o GitHub. SourceForge e Google
Code, possuem informações relativas a vários projetos de software [Ahmed, 2005].
Portanto, eles são um bom alvo para estudo de técnicas de detecção de clones de código.
Assim, é possível fazer uma análise comparativa da presença de clones de código em
diferentes softwares. A principal dificuldade para isso é lidar com a heterogeneidade de
artefatos de software existentes nesses repositórios, o que dificulta a coleta das métricas.
2. Caracterização do Problema
Os repositórios de código-fonte armazenam informações relativas a evolução do
software, como a linha base de um release. Assim, é possível estudar o comportamento
dos clones de código durante a evolução de um software. A maioria dos projetos de
software com código-fonte aberto também possuem sistemas de rastreio de bugs, como
o Bugzilla e o Trac. Isso possibilita estudar a correlação entre clones de código e bugs
de software. Com o objetivo de entender melhores essas características, 3 perguntas de
pesquisa foram elaboradas:
P1. A quantidade de clones de código diminui com a evolução do software?
P2. Qual a porcentagem de bugs que estão relacionados com clones de código?
P3. A correção de um bug presente em um clone de código afeta também o código
replicado onde o bug não foi identificado?
3. Fundamentação Teórica
Segundo [Saake et al., 2013] os clones de código podem ser classificados em 4 tipos:
Tipo 1: um trecho de código idêntico ao de outro, podendo existir algumas
variações do outro como linhas em branco e espaços.
Tipo 2: um trecho de código copiado de outro, com exceção aos nomes de
variáveis e classes.
Tipo 3: um trecho de código igual a outro, podendo ser acrescentadas ou
removidas algumas novas instruções dentro do fragmento.
Tipo 4: esse tipo de clone pode ser desenvolvido por programadores diferentes
que visavam implementar o mesmo tipo de lógica, tendo então um fragmento de
mesma funcionalidade.
Alguns autores [Schulze et al., 2013; Chanchal et al., James et al., Rainer et al.,
2009] analisaram várias ferramentas para detecção de clones em códigos-fontes como
Cp-Miner que analisa os dados por sequencia simbólicas, Clone Detective que é
integrado com o Visual Studio, entre outras. Entre essas ferramentas, duas foram
analisadas (CCFinder e ConQAT) nesse estudo e a segunda foi escolhida por ser mais
eficiente e apresentar documentação.
4. Metodologia
Foi utilizada nesse trabalho a metodologia de estudo de caso, que é importante
para o entendimento de um problema pouco explorado de forma controlada. Os
resultados de um estudo de caso não podem ser generalizados, porém é possível inferir
se estes resultados são escaláveis ou não. Para que isso seja possível o estudo deve ser
planejado cuidadosamente e com esse objetivo o mesmo foi dividido em 4 etapas:
1. Análise de ferramentas: devido à grande quantidade de dados se faz necessário
o uso de uma ferramenta que automatize a coleta. A análise das ferramentas se
tratou basicamente de pesquisas de artigos e comparações entre as mesmas
[Chanchal et al., James et al., Rainer et al., 2009].
2. Coleta das métricas: execução da ferramenta escolhida que gera um formulário
HTML com os dados.
3. Tabulação dos resultados: a ferramenta também automatiza esse processo
organizando os dados por componentes e métodos afetados por clones.
4. Interpretação dos resultados: inicialmente feito através estatística básica
(média, mediana, desvio padrão).
5. Estado Atual
Em primeira análise, foi minerado o código-fonte do core do JDT Eclipse plugin para desenvolvimento de Java na plataforma Eclipse. Os resultados encontrados são
apresentados na Tabela 1.
Tabela 1. Presença de Clones no Código
É possível observar que as linhas clonadas representam mais de 30% das linhas
do código, sendo um valor relativamente alto. A Figura 1 permite visualizar a
concentração de clones entre os módulos do código, onde quanto mais vermelho maior a
concentração de clones. Assim, é possível concluir que existem pontos da arquitetura
com uma concentração maior de clones que o restante.
Figura 1. Visualização dos Clones no Código
No presente projeto ainda resta estudar as diferentes versões do Eclipse IDE e relacionar
suas versões com clones, se eles aumentam com a evolução do software, se diminuem e
sua proporção em relação ao código. Também será feito uma correlação de bugs com os
clones estudados em todas as versões do software analisadas.
6. Conclusões
Como a grande maioria das ferramentas feitas para detecção de clones não
possui documentação ou não são atualizadas frequentemente, a dificuldade para
encontrar a ferramenta adequada foi elevada. O ConQAT fornece as informações
necessárias para seu uso, além de ter uma boa interface. Essa ferramenta é um plug-in
do Eclipse e dispõe de modelos para detecção de clones (conhecidos como blocks) para
diferentes linguagens. Conforme observado, a quantidade de código clonado é
significativa quando analisado a quantidade de linhas e unidades. Sendo possível
concluir que o core no Eclipse está exposto a muitos clones, considerado esta parte
crucial do código.
Referências
Ahmed E. H. Mining software repositories to assist developers and support managers.
Tese de PhD, Universidade de Waterloo, 2005.
Baker B.. On Finding Duplication and Near-Duplication in Large Software Systems. In
Proceedings of the Working Conference on Reverse Engineering (WCRE), pages 86–
95. IEEE Computer Society, 1995.
Bakota T., Ferenc R., and Gyimothy T.. Clone Smells in Software Evolution. In
Proceedings of the International Conference on Software Maintenance (ICSM), pages
24–33. IEEE Computer Society, 2007.
Saake, Gunter, Ina Schaefer, and Michael W. Godfrey. "Analysis and Removal of Code
Clones in Software Product Lines." 2013.
Kamiya, Toshihiro, Shinji Kusumoto, and Katsuro Inoue. "CCFinder: a multilinguistic
token-based code clone detection system for large scale source code." Software
Engineering, IEEE Transactions on 28.7 (2002): 654-670.
Roy, Chanchal K., James R. Cordy, and Rainer Koschke. "Comparison and evaluation
of code clone detection techniques and tools: A qualitative approach." Science of
Computer Programming 74.7 (2009): 470-495.
Juergens, Elmar, Florian Deissenboeck, and Benjamin Hummel. "CloneDetective-A
workbench for clone detection research." Proceedings of the 31st International
Conference on Software Engineering. IEEE Computer Society, 2009.
Juvenal F. S. J. Ferramenta para coleta de métricas em projetos open source. Dissertação
para graduação em Ciência da Computação. Universidade Federal de Pernambuco,
2012.
Schulze S. Analysis and Removal of Code Clones in Software Product Lines.
Dissertação para graduação em Ciência da Computação. Universidade de
Magdeburg, 2012.