<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Bit a Bit &#187; Turmas</title>
	<atom:link href="http://www.bitabit.eng.br/categorias/turmas/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bitabit.eng.br</link>
	<description>O Blog da Engenharia de Computação da POLI-USP</description>
	<lastBuildDate>Wed, 11 Jan 2012 16:12:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>Fusion4D &#8211; Interface Natural e Imersiva para Manipulação de Objetos 3D</title>
		<link>http://www.bitabit.eng.br/2012/01/03/fusion4d/</link>
		<comments>http://www.bitabit.eng.br/2012/01/03/fusion4d/#comments</comments>
		<pubDate>Tue, 03 Jan 2012 12:07:19 +0000</pubDate>
		<dc:creator>Roberto Sonnino, Coop10</dc:creator>
				<category><![CDATA[Coop11]]></category>
		<category><![CDATA[Destaques]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[TCC]]></category>
		<category><![CDATA[Visão Computacional]]></category>
		<category><![CDATA[interface humano-computador]]></category>
		<category><![CDATA[interface multimodal]]></category>
		<category><![CDATA[interface natural]]></category>
		<category><![CDATA[kinect]]></category>
		<category><![CDATA[realidade aumentada]]></category>
		<category><![CDATA[realidade virtual]]></category>

		<guid isPermaLink="false">http://www.bitabit.eng.br/?p=2420</guid>
		<description><![CDATA[Fusion4D é uma interface inovadora que utiliza óculos 3D e o Kinect para permitir ao usuário interagir com objetos 3D como se estivessem realmente em suas mãos, podendo movê-los, girá-los, aumentá-los, explodi-los em detalhes e até mesmo vê-los como seriam no passado e no futuro. Assim, a interface transmite ao usuário a sensação de imersão total em uma realidade [...]]]></description>
			<content:encoded><![CDATA[<p>Fusion4D é uma interface inovadora que utiliza óculos 3D e o Kinect para permitir ao usuário interagir com objetos 3D como se estivessem realmente em suas mãos, podendo movê-los, girá-los, aumentá-los, explodi-los em detalhes e até mesmo vê-los como seriam no passado e no futuro. Assim, a interface transmite ao usuário a sensação de imersão total em uma realidade aumentada.</p>
<p>Para utilizá-la é simples: o usuário só precisa usar óculos 3D, comandos de voz e as mãos para manipular os objetos. Além disso, todo o sistema usa apenas dispositivos de baixo custo, como o Kinect, e não requer o uso de monitores especiais para a exibição da imagem 3D, ficando ao alcance de todos.</p>
<p><iframe width="560" height="315" src="http://www.youtube.com/embed/FjgHWp4PGew" frameborder="0" allowfullscreen></iframe></p>
<h2>Aplicações</h2>
<p>O Fusion4D foi desenvolvido como opção de manipulação direta para o atlas anatômico VIDA, do Laboratório de Tecnologias Interativas da Escola Politécnica (Interlab). Este atlas é destinado a aulas de anatomia que usam uma grande quantidade de modelos e órgãos reais, o que torna difícil e caro manter os laboratórios. O projeto representa uma alternativa para complementar o estudo através de peças anatômicas e livros dereferência. Existe ainda o potencial para seu uso fora do ambiente do laboratório, permitindo aos estudantes a visualização dos modelos 3D em casa ou em outras situações de ensino a distância.</p>
<p>Além da aplicação no projeto VIDA para ensino da medicina, o Fusion4D poderá ser usado para outras aplicações médicas e educacionais, bem como em jogos, publicidade, engenharia, navegação em ambientes virtuais ou telepresença, entre outras áreas.</p>
<h2>Como funciona?</h2>
<p><a href="http://www.interlab.pcs.poli.usp.br/fusion4d/index_pt.html"><img src="http://www.bitabit.eng.br/wp-content/uploads/2012/01/como_funciona.jpg" alt="Imagem ilustrativa do funcionamento do projeto Fusion4D" title="Como funciona o Fusion4D" width="500" height="300" class="alignnone size-full wp-image-2425" /></a></p>
<p>O Fusion4D utiliza imagens 3D anaglifas e um dispositivo Kinect para detecção do esqueleto e captura de voz do usuário.  O usuário interage com o sistema usando comandos de voz em inglês. Tais comandos permitem que se selecione o objeto a ser manipulado e a maneira de interagir com ele.</p>
<h3>Comandos</h3>
<p>O comando &#8220;<em>grab</em>&#8221; seleciona um objeto e permite movimentar, rotacionar ou ampliar o objeto com as mãos até que o objeto seja solto pelo comando &#8220;<em>release</em>&#8220;.</p>
<p>O comando &#8220;<em>explode</em>&#8221; permite observar o objeto 3D em detalhes; o comando &#8220;<em>show label</em>&#8220; mostra uma etiqueta descritiva do objeto manipulado, e o comando &#8220;<em>change model</em>&#8220; permite escolher outros modelos disponíveis no sistema.</p>
<p>Finalmente, o comando &#8220;<em>time</em>&#8221; permite ver como o objeto seria no passado e no futuro movimentando a linha do tempo com uma das mãos. Se o usuário precisar de ajuda sobre o sistema, o comando &#8220;<em>help</em>&#8221; mostra uma lista de comandos de voz.</p>
<p>Este projeto foi desenvolvido como trabalho de formatura pelos alunos Keila Keiko Matsumura e Roberto Sonnino, formandos da turma de 2011 do Curso Cooperativo de Engenharia de Computação, e orientado pelos professores Dr. Romero Tori (orientador) e Dr. Ricardo Nakamura (coorientador), membros do Laboratório de Tecnologias Interativas da Escola Politécnica (Interlab).</p>
<p>Para mais informações do projeto e dos resultados obtidos e trabalhos futuros, acesse o site do <a title="Fusion4D" href="http://www.interlab.pcs.poli.usp.br/fusion4d/index_pt.html" target="_blank">Fusion4D</a>.</p>
<img src="http://www.bitabit.eng.br/?ak_action=api_record_view&id=2420&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.bitabit.eng.br/2012/01/03/fusion4d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Integrando paradigmas: união da visão de negócios com a visão de TI &#8211; uma metodologia aliando BPM com SOA</title>
		<link>http://www.bitabit.eng.br/2011/11/21/integrando-paradigmas-uniao-da-visao-de-negocios-com-a-visao-de-ti-uma-metodologia-aliando-bpm-com-soa/</link>
		<comments>http://www.bitabit.eng.br/2011/11/21/integrando-paradigmas-uniao-da-visao-de-negocios-com-a-visao-de-ti-uma-metodologia-aliando-bpm-com-soa/#comments</comments>
		<pubDate>Mon, 21 Nov 2011 16:43:35 +0000</pubDate>
		<dc:creator>vicentim.fernando</dc:creator>
				<category><![CDATA[Arquitetura de Computadores]]></category>
		<category><![CDATA[Coop11]]></category>
		<category><![CDATA[Engenharia de Software]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[TCC]]></category>
		<category><![CDATA[Aris]]></category>
		<category><![CDATA[BPM]]></category>
		<category><![CDATA[BPMN]]></category>
		<category><![CDATA[EPC]]></category>
		<category><![CDATA[soa]]></category>
		<category><![CDATA[webMethods]]></category>

		<guid isPermaLink="false">http://www.bitabit.eng.br/?p=2374</guid>
		<description><![CDATA[Este post descreve o projeto de formatura desenvolvido pelos alunos Diego Francisco Billerbeck, Fernando Picelli Vicentim e Thiago Erik Petersen,  alunos da turma de 2011 do Curso Cooperativo de Engenharia de Computação, e orientado pelo Prof. Dr. Jorge Luis Risco Becerra. Tema: Metodologia de desenvolvimento de sistemas baseado nos conceitos do gerenciamento dos processos do [...]]]></description>
			<content:encoded><![CDATA[<div><em>Este post descreve o projeto de formatura desenvolvido pelos alunos Diego Francisco Billerbeck, Fernando Picelli Vicentim e Thiago Erik Petersen,  alunos da turma de 2011 do Curso Cooperativo de Engenharia de Computação, e orientado pelo Prof. Dr. Jorge Luis Risco Becerra.</em></div>
<div><em> </em></div>
<div><strong><em>Tema: Metodologia de desenvolvimento de sistemas baseado nos conceitos do gerenciamento dos processos do negócio e na arquitetura SOA</em></strong></div>
<h2></h2>
<h2>Introdução</h2>
<div>Hoje em dia, um dos maiores problemas enfrentados pelas empresas é a dificuldade de adequar os sistemas de TI às atividades do negócio (processos), de forma que os resultados obtidos com essa união muitas vezes não atendem as metas corporativas e, muito menos, o retorno sobre o investimento (ROI) esperado. Pensando nisso, o grupo desenvolveu uma metodologia baseada na integração entre Gerenciamento de processos de negócios – BPM (Business Process Management) – e Arquitetura Orientada aos Serviços – SOA (Service Oriented Architecture) – que busca atender as necessidades do negócio, altamente dinâmicas, com uma plataforma de TI altamente flexível e reutilizável e aplicou essa metodologia em um sistema para lançamentos de celulares – o <em>SmartReleasing</em>.</div>
<div id="attachment_2375" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/SmartReleasing.png"><img class="size-medium wp-image-2375" src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/SmartReleasing-300x155.png" alt="" width="300" height="155" /></a><p class="wp-caption-text">Logo do Sistema</p></div>
<h2>Conceitos:</h2>
<ul>
<li>
<h3>Business Process Management (BPM)</h3>
</li>
</ul>
<p>BPM é uma prática de desenvolvimento, execução, análise de desempenho e simulação de Processos de Negócios para trabalhar no na continua otimização e ciclos de vida desses processos.</p>
<ul>
<li>
<h3>Service-Oriented Architecture (SOA)</h3>
</li>
</ul>
<p>Uma prática de desenvolvimento de software que emprega disciplinas e linguagens de modelagem para fornecer soluções táticas e estratégicas aos problemas das empresas. Ela defende uma visão total da analise, desenho e arquitetura de todas as entidades organizacionais do software, concebendo-as como recursos de serviços-orientados, isto é, serviços.</p>
<h3 style="text-align: left;">
<div id="attachment_2384" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/BPM_SOA1.png"><img class="size-medium wp-image-2384" src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/BPM_SOA1-300x256.png" alt="" width="300" height="256" /></a><p class="wp-caption-text">Exemplo de Processos Aliados a Serviços</p></div></h3>
<ul>
<li>
<h3 style="text-align: left;">Processo de Lançamento de Celulares:</h3>
</li>
</ul>
<div style="text-align: left;">O processo de lançamento de celulares em operadoras é o representante ideal de um processo de negócio altamente dinâmico e complexo, pois envolve todos os departamentos, lida com dispositivos tecnológicos inovadores e tem curto ciclo de vida (aproximadamente 3 meses).<br />
Assim uma solução ágil, eficiente e flexível é fundamental devido ao alto risco do investimento uma vez que um mínimo atraso acarreta em grandes perdas de parcelas de mercado.</div>
<h2 style="text-align: left;">Metodologia</h2>
<div style="text-align: left;">A Metodologia desenvolvida pode ser dividida em 5 grandes etapas: Estudo do Processo; Concepção do Projeto de Software; Implementação do Projeto; Testes e Análises de Performance e Monitoramento e Manutenção do Processo.</div>
<ul>
<li>
<h3 style="text-align: left;">Estudo do Processo</h3>
</li>
</ul>
<div style="text-align: left;">O estudo do Processo inicia com a modelagem As-Is, ou seja, a modelagem do processo como ele é atualmente. A modelagem pode ser feite de diversas maneiras e utilizando-se diversas linguagens como EPC, BPEL, BPMN. No caso dessa metodologia foram utilizadas as linguagens EPC e BPMN. Depois de modelado, passa-se por uma fase de Análise e Simulação com o objetivo de otimizá-lo e finalmente defini-lo formalmente pela modelagem To-Be, ou seja, a modelagem do processo a ser implementado.</div>
<div style="text-align: left;">
<p><div id="attachment_2377" class="wp-caption aligncenter" style="width: 232px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/EPC.png"><img class="size-medium wp-image-2377" src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/EPC-222x300.png" alt="" width="222" height="300" /></a><p class="wp-caption-text">Exemplo de Processo Modelado em Linguagem EPC</p></div>
</div>
<ul>
<li>
<h3 style="text-align: left;">Concepção do Projeto de Software</h3>
</li>
</ul>
<div style="text-align: left;">A etapa de concepção do projeto de software parte do modelo do processo e busca identificar os Serviços a serem criados, conceber a Interface com o  usuário composta pelas telas (portlets), planejar o Gerenciamento de Dados que lida com os Bancos de Dados desse e de outros sistemas, tudo isso focando em uma Arquitetura flexível e reutilizável e na Integração dos Sistemas presentes na organização.</div>
<ul>
<li>
<h3 style="text-align: left;">Implementação do Projeto</h3>
</li>
</ul>
<div style="text-align: left;">A implementação do projeto foi realizada com o auxilio da ferramenta webMethods, fornecida pela empresa parceira ao projeto Software <sup>AG</sup>. Nela foram implementados os serviços, as telas e as relações destes com o processo em questão, o de lançamento de celulares.</div>
<div style="text-align: left;">
<div id="attachment_2385" class="wp-caption aligncenter" style="width: 981px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/webMethods1.png"><img class="size-full wp-image-2385" src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/webMethods1.png" alt="" width="971" height="530" /></a><p class="wp-caption-text">Implementação com a ferramenta webMethods</p></div>
</div>
<ul>
<li>
<h3 style="text-align: left;">Testes e Análise de Performance</h3>
</li>
</ul>
<div style="text-align: left;">Uma vez o sistema implementado, começa a etapa e testes e análises de desempenho para verificar não somente o bom funcionamento do mesmo como também se as vantagens buscadas na modelagem do processo To-Be foram atendidas com essa nova solução em comparação ao processo anterior As-Is.</div>
<ul>
<li>
<h3 style="text-align: left;">Monitoramento e Manutenção do Processo</h3>
</li>
</ul>
<div style="text-align: left;">A última etapa envolve o monitoramento do Processo através de indicadores de performance (KPIs) bem definidos e a manutenção do mesmo toda vez que novos requisitos de negócios forem surgindo e alterações no sistema e tornem necessárias.</div>
<div style="text-align: left;">
<div class="mceTemp mceIEcenter">
<div id="attachment_2386" class="wp-caption aligncenter" style="width: 957px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/Dashboard2.png"><img class="size-full wp-image-2386" src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/Dashboard2.png" alt="" width="947" height="446" /></a><p class="wp-caption-text">Dashboard de Monitoramento do Processo</p></div>
</div>
</div>
<h2 style="text-align: left;">Resultados Esperados</h2>
<div style="text-align: left;">A partir da analise do desempenho e metodologia de implementação  estimamos que o sistema <em>SmartReleasing</em> permita não somente uma execução  rápida e eficiente do processo, como também fornece visibilidade para  identificar gargalos e pontos críticos do processo. Em paralelo, a arquitetura  de TI flexível permite sua manutenção e adaptação a medida que novas  necessidades de negócios surgem.</div>
<h2 style="text-align: left;">Parcerias</h2>
<div style="text-align: left;">Foram utilizadas ferramentas de BPM e SOA do Software <sup>AG</sup>,  uma das empresas líderes do segmento segundo pesquisas dos grupos Garner e  Forres ter, que ofereceu apoio ao projeto com software e materiais de  treinamento gratuitos.</div>
<div style="text-align: left;">O projeto foi desenvolvido no Laboratório de Fábrica de Software do LTS –  PCS – POLI.</div>
<div style="text-align: left;">
<div id="attachment_2381" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/Parceiros.png"><img class="size-medium wp-image-2381" src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/Parceiros-300x61.png" alt="" width="300" height="61" /></a><p class="wp-caption-text">Parceiros</p></div>
</div>
<img src="http://www.bitabit.eng.br/?ak_action=api_record_view&id=2374&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.bitabit.eng.br/2011/11/21/integrando-paradigmas-uniao-da-visao-de-negocios-com-a-visao-de-ti-uma-metodologia-aliando-bpm-com-soa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SENSUS: Reconhecedor Automático de Expressões Faciais para Publicidade e Propaganda</title>
		<link>http://www.bitabit.eng.br/2011/11/18/sensus-reconhecedor-automatico-de-expressoes-faciais-para-publicidade-e-propaganda/</link>
		<comments>http://www.bitabit.eng.br/2011/11/18/sensus-reconhecedor-automatico-de-expressoes-faciais-para-publicidade-e-propaganda/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 18:48:43 +0000</pubDate>
		<dc:creator>Carla Guillen Gomes</dc:creator>
				<category><![CDATA[Coop11]]></category>
		<category><![CDATA[TCC]]></category>
		<category><![CDATA[Visão Computacional]]></category>
		<category><![CDATA[computer vision]]></category>
		<category><![CDATA[tcc]]></category>
		<category><![CDATA[visão computacional]]></category>

		<guid isPermaLink="false">http://www.bitabit.eng.br/?p=2342</guid>
		<description><![CDATA[O sistema Sensus utiliza técnicas e algoritmos de visão computacional com o objetivo de reconhecer automaticamente expressões faciais e classificá-las em emoções. O cenário vislumbrado para a aplicação publicitária é o de uma vitrine de shopping, na qual as reações expressas pelas características faciais dos passantes são registradas e avaliadas. A partir desta análise, é [...]]]></description>
			<content:encoded><![CDATA[<p>O sistema Sensus utiliza técnicas e algoritmos de visão computacional com o objetivo de reconhecer automaticamente expressões faciais e classificá-las em emoções.</p>
<p>O cenário vislumbrado para a aplicação publicitária é o de uma vitrine de shopping, na qual as reações expressas pelas características faciais dos passantes são registradas e avaliadas. A partir desta análise, é possível verificar como o design da vitrine e a maneira de exposição das mercadorias afetam as reações dos consumidores, tanto positivamente como negativamente. Constituindo assim uma maneira de se avaliar e comparar os impactos alcançados com diferentes estratégias.</p>
<p><img class="alignright size-medium wp-image-2347" style="border-style: initial; border-color: initial;" src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/sensus_nojo1-300x296.png" alt="" width="240" height="237" /></p>
<p style="text-align: left;">O sistema realiza a aq<span style="text-align: -webkit-auto;">uisição e processamento de uma sequência de imagens obtidas através de uma webcam e possibilita, através da produção de gráficos, a exibição de informações relevantes a um usuário da área de publicidade e propaganda que deseje medir a eficácia de uma campanha publicitária.</span></p>
<div>
<p>O reconhecimento consiste em 3 etapas principais. A primeira delas é a <strong>detecção de um rosto</strong> em uma imagem. Esta etapa é feita através do Algoritmo de Detecção Facial de Viola-Jones, que foi explicada <a href="http://www.bitabit.eng.br/2011/02/21/como-detectar-faces-em-videos/">neste</a> post do Filipe Campos.</p>
<p>A segunda etapa realiza a <strong>extração e codificação</strong> das características faciais. Nesta etapa é utilizado o método baseado em texturas, denominado LBP (local binary pattern) em regiões de interesse da face (região compreendida pelos olhos e sobrancelhas e a região da boca).</p>
<p>A terceira e última etapa consiste na <strong>classificação</strong> das expressões nas diferentes categorias existentes, no sistema é utilizada uma técnica de aprendizado de máquina, a SVM (support vector machine).</p>
<p>Para a geração de relatórios contendo gráficos foi desenvolvido um módulo utilizando a linguagem Python com o framework Django, junto com bibliotecas de JavaScript.</p>
<p><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/sensus_grafico.png"><img class="aligncenter size-full wp-image-2345" src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/sensus_grafico.png" alt="" width="640" height="327" /></a></p>
<p>As emoções reconhecidas pelo sistema são: Felicidade, Tristeza, Surpresa e Nojo, além da expressão neutra.</p>
<p>O projeto foi desenvolvido pelos alunos Bruno Pezzolo dos Santos, Carla Guillen Gomes e Guilherme Melo Prestes Campos, sob a orientação da <strong>Profa. Dra. Anna Helena Reali Costa</strong>.</p>
</div>
<img src="http://www.bitabit.eng.br/?ak_action=api_record_view&id=2342&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.bitabit.eng.br/2011/11/18/sensus-reconhecedor-automatico-de-expressoes-faciais-para-publicidade-e-propaganda/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Controle de Veículos Aéreos Não-Tripulados Utilizando Mensagens CPDLC</title>
		<link>http://www.bitabit.eng.br/2011/11/18/controle-de-veiculos-aereos-nao-tripulados-utilizando-mensagens-cpdlc/</link>
		<comments>http://www.bitabit.eng.br/2011/11/18/controle-de-veiculos-aereos-nao-tripulados-utilizando-mensagens-cpdlc/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 16:54:38 +0000</pubDate>
		<dc:creator>Débora Setton Fernandes, Coop11</dc:creator>
				<category><![CDATA[Coop11]]></category>
		<category><![CDATA[Outros]]></category>
		<category><![CDATA[TCC]]></category>

		<guid isPermaLink="false">http://www.bitabit.eng.br/?p=2323</guid>
		<description><![CDATA[Este post descreve o projeto de formatura desenvolvido pelos alunos Bruno Pereira Bueno, Débora Setton Fernandes e Fernando A. R. F. da Costa, alunos da turma de 2011 do Curso Cooperativo de Engenharia de Computação, e orientado pelo Prof. Dr. João Batista Camargo Júnior (orientador) e pelo Dr. Mário Aparecido Corrêa (co-orientador), ambos membros do [...]]]></description>
			<content:encoded><![CDATA[<p><em>Este post descreve o projeto de formatura desenvolvido pelos alunos Bruno Pereira Bueno, Débora Setton Fernandes e Fernando A. R. F. da Costa, alunos da turma de 2011 do Curso Cooperativo de Engenharia de Computação, e orientado pelo Prof. Dr. João Batista Camargo Júnior (orientador) e pelo Dr. Mário Aparecido Corrêa (co-orientador), ambos membros do <a href="http://www.pcs.usp.br/~gas/" target="_blank">Grupo de Análise de Segurança</a> da Poli.</em></p>
<p>Apesar de a ideia do nosso projeto ser bastante simples, o título do projeto ser um pouco obscuro para quem não está familiarizado com estes termos. Vamos começar explicando o título e as coisas ficarão mais claras.</p>
<p><img src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/gondola-150x150.jpg" alt="Gôndola que é presa ao balão, com sensores e motores visíveis" width="0" height="0" class="size-thumbnail wp-image-2327" /><br />
O que é&#8230;</p>
<h3><strong>&#8230; Veículo aéreo não-tripulado?</strong></h3>
<p>Um Veículo Aéreo Não-Tripulado, também conhecido pela abreviação VANT, é qualquer tipo de aeronave (como aviões, balões, helicópteros) que não precise de um piloto para ser guiada. No nosso projeto, utilizamos um dirigível cheio de gás hélio para representar o VANT.</p>
<h3><strong>&#8230; Mensagem CPDLC?</strong></h3>
<p>O CPDLC (<em>Controller Pilot Data Link Communications</em>) é uma aplicação utilizada para a comunicação entre os controladores de voo, localizados nas torres de comando, e os pilotos, localizados na aeronave tripulada. Uma mensagem CPDLC é uma mensagem de texto que segue o formato definido na especificação da Organização Internacional de Aviação Civil (ICAO – <em>International Civil Aviation Organization</em>). O piloto recebe e envia mensagens CPDLC utilizando um dispositivo denominado MCDU.</p>
<h3><strong>&#8230; Controle?</strong></h3>
<p>No contexto do nosso projeto, controle significa o envio de comandos, que poderão ser aceitos ou recusados pela aeronave.</p>
<h1>O projeto</h1>
<p>Agora sim: o nosso projeto trata de controlar um balão a partir do envio de comandos, como virar à direita, subir ou descer e alterar a velocidade, utilizando um protocolo de comunicação já existente e já utilizado na Aeronáutica hoje. Comportando-se como um VANT autônomo, o balão deve tomar decisões sobre estes comandos recebidos, decidindo se pode ou não executá-los, com base em variáveis medidas de um conjunto de sensores embarcados.</p>
<h1>Motivação</h1>
<p>A ideia do nosso projeto é que ele sirva como uma prova de conceito, ou seja, que ele mostre que é possível, controlar um VANT à distância, apenas através da troca de mensagens CPDLC e que, ainda assim, o voo realizado seja tão ou mais seguro quanto ele seria se existisse um piloto a bordo.</p>
<p>Um dos motivos para isso é que existem diversas situações em que a presença do piloto restringe a duração do voo. Um exemplo disso são voos de monitoramento de áreas de fronteira. Estes voos normalmente são utilizados para coleta de imagens, e não existe uma carga sendo transportada ou um destino específico. É interessante, portanto, não depender de um piloto, que pode ficar exaurido fisica e psicologicamente em um voo muito longo.</p>
<p>Outro motivo é que existem muitos acidentes aéreos causados por falha humana. Um piloto, por ser um ser humano, naturalmente está sujeito a cometer erros, mais ainda se não tiver um treinamento adequado. Se for possível substituí-lo por um sistema computacional devidamente projetado, implementado e testado, o número de acidentes será reduzido, tornando o espaço aéreo um lugar mais seguro.</p>
<h1>Implementação</h1>
<p>O sistema pode ser dividido em três módulos, mostrados na figura abaixo:</p>
<div id="attachment_2324" class="wp-caption aligncenter" style="width: 615px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/diagrama-de-blocos.png"><img class="size-full wp-image-2324" src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/diagrama-de-blocos.png" alt="Diagrama de blocos do sistema" width="605" height="292" /></a><p class="wp-caption-text">Diagrama de blocos do sistema de controle implementado</p></div>
<h2>ACARS</h2>
<p>O ACARS (<em>Aircraft Communications Addressing and Reporting System</em>) é um simulador de código aberto que foi utilizado no projeto, nós fizemos apenas pequenas alterações no código-fonte. O simulador completo que foi utilizado é composto por dois submódulos. O primeiro é o servidor ATC, cuja função é centralizar a comunicação entre o controlador e o piloto, registrando aeronaves e transmitindo para o destinatário (controlador ou piloto) as mensagens que são recebidas. O segundo submódulo possui, entre outras coisas, uma interface, mostrada abaixo, que permite o envio de mensagens CPDLC para as aeronaves – no nosso caso, o balão.</p>
<div id="attachment_2325" class="wp-caption aligncenter" style="width: 396px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/interface-acars-message-compiler.png"><img class="size-full wp-image-2325 " src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/interface-acars-message-compiler.png" alt="Interface do ACARS para criação de mensagens no padrão CPDLC" width="386" height="275" /></a><p class="wp-caption-text">Interface para criação de mensagens no padrão CPDLC</p></div>
<h2>Módulo Python</h2>
<p>Idealmente, as mensagens CPDLC seriam enviadas diretamente do servidor do ACARS para o balão. Contudo, o microcontrolador utilizado no projeto (Atmega128 usado no Arduino Uno) possui severas restrições de processamento, tendo apenas 32KB disponíveis para o código-fonte e 1KB para a área de dados. Assim, foi introduzido um módulo que representa parte do sistema que normalmente ficaria na aeronave, mas que roda em um computador em terra. Este subsistema é responsável por receber mensagens CPDLC, traduzi-las para mensagens MBCP (<em>My Blimp Control Protocol</em>) e então transmiti-las ao balão. O MBCP é um protocolo bastante simples desenvolvido especificamente para o projeto.</p>
<p>Abaixo é mostrada a interface que foi desenvolvida para este módulo: ela imita a aparência de um MCDU, mostrando mensagens recebidas pela aeronave (denominadas de <em>uplink</em>, em laranja) e enviadas (de <em>downlink</em>, em verde).</p>
<div id="attachment_2326" class="wp-caption aligncenter" style="width: 264px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/mcdu.png"><img class="size-full wp-image-2326 " src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/mcdu.png" alt="Interface do módulo Python, emulando um MCDU" width="254" height="402" /></a><p class="wp-caption-text">Interface do módulo Python, emulando um MCDU</p></div>
<h2>Módulo embarcado</h2>
<p>Finalmente, temos o módulo embarcado. Este é composto pelo programa que roda no Arduino assim como pelos circuitos eletrônicos auxiliares que permitem a leitura dos sensores, o controle dos motores e o envio/recebimento de mensagens MBCP via rádio. Utilizando as leituras dos sensores, o balão consegue inferir qual o seu estado com relação ao ambiente em que se encontra, tomando decisões sobre a possibilidade de execução de um comando, e rejeitando aqueles que puderem colocá-lo em uma situação de risco.</p>
<p>A figura abaixo mostra a gôndola que é presa ao balão, com os três motores à mostra, assim como os três sensores infravermelhos, utilizados para detectar a distância de obstáculos frontais e laterais.</p>
<p style="text-align: center">&nbsp;</p>
<div id="attachment_2327" class="wp-caption aligncenter" style="width: 501px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/gondola.jpg"><img class="size-large wp-image-2327  " src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/gondola-1024x608.jpg" alt="Gôndola que é presa ao balão, com sensores e motores visíveis" width="491" height="292" /></a><p class="wp-caption-text">Gôndola que é presa ao balão, com sensores e motores visíveis</p></div>
<p>Dentro desta gôndola ficam os circuitos descritos acima, e mostrados na figura abaixo. Da esquerda para a direita, temos:</p>
<ul>
<li><strong>Arduino</strong>: contém o microcontrolador que permite a execução da lógica de controle do balão.</li>
<li><strong>Placa de cirtuito impresso: </strong>projetada e desenvolvida especialmente para o projeto. As três placas menores (duas vermelhas e uma verde) são sensores inerciais – uma IMU (<em>Inertial Movement Unit</em>), um acelerômetro e uma bússola digital.</li>
<li><strong>Transceptor:</strong> permite envio e recebimento de mensagens de rádio.</li>
</ul>
<div id="attachment_2328" class="wp-caption aligncenter" style="width: 440px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/11/pcb.jpg"><img class="size-large wp-image-2328  " src="http://www.bitabit.eng.br/wp-content/uploads/2011/11/pcb-1024x608.jpg" alt="Circuitos eletrônicos embarcados no balão" width="430" height="256" /></a><p class="wp-caption-text">Circuitos eletrônicos embarcados no balão</p></div>
<p>Esta foi uma brevíssima descrição do projeto. Quem estiver interessado em conhecer os detalhes pode entrar em contato ou fazer o download da monografia, que em breve estará disponível.</p>
<p>E não percam a demonstração prática, que acontecerá no dia 14 de dezembro, no Galpão da Administração da Poli!</p>
<img src="http://www.bitabit.eng.br/?ak_action=api_record_view&id=2323&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.bitabit.eng.br/2011/11/18/controle-de-veiculos-aereos-nao-tripulados-utilizando-mensagens-cpdlc/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dennis Ritchie, 1941 &#8211; 2011</title>
		<link>http://www.bitabit.eng.br/2011/10/13/dennisritchie/</link>
		<comments>http://www.bitabit.eng.br/2011/10/13/dennisritchie/#comments</comments>
		<pubDate>Thu, 13 Oct 2011 11:44:46 +0000</pubDate>
		<dc:creator>Lucas &#34;Sugis&#34; Lago, Comp09</dc:creator>
				<category><![CDATA[Acadêmico]]></category>
		<category><![CDATA[Computação]]></category>
		<category><![CDATA[Sem9]]></category>
		<category><![CDATA[Sistemas Operacionais]]></category>

		<guid isPermaLink="false">http://www.bitabit.eng.br/?p=2303</guid>
		<description><![CDATA[Mês triste esse outubro de 2011 hein? Dennis Ritchie é um pouco (ha-ha) menos conhecido que o Steve Jobs, mas merece uma página de destaque tão grande quanto Steve. Ritchie é reconhecido por duas grandes criações, que vivem até hoje e revolucionaram a computação. A linguagem de programação C e o sistema operacional UNIX. Vencedor [...]]]></description>
			<content:encoded><![CDATA[<p>Mês triste esse outubro de 2011 hein?</p>
<p>Dennis Ritchie é um pouco (ha-ha) menos conhecido que o Steve Jobs, mas merece uma página de destaque tão grande quanto Steve.</p>
<p> Ritchie é reconhecido por duas grandes criações, que vivem até hoje e revolucionaram a computação. A linguagem de programação C e o sistema operacional UNIX.</p>
<p>Vencedor do prêmio Turing em 1983 pelo seu trabalho com o UNIX. Sistema esse que continua sendo base para uma parte dos sistemas operacionais utilizados nos dias de hoje ( incluindo o MacOS do outro homenageado do mês ).</p>
<p>Tudo que posso dizer é que ele mudou a computação e agradecer por deixar um legado tão importante!</p>
<p>Valeu Ritchie! Break;</p>
<p style="padding-left: 30px;">&nbsp;</p>
<img src="http://www.bitabit.eng.br/?ak_action=api_record_view&id=2303&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.bitabit.eng.br/2011/10/13/dennisritchie/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Mac restart troll</title>
		<link>http://www.bitabit.eng.br/2011/07/13/mac-restart-troll/</link>
		<comments>http://www.bitabit.eng.br/2011/07/13/mac-restart-troll/#comments</comments>
		<pubDate>Wed, 13 Jul 2011 12:00:32 +0000</pubDate>
		<dc:creator>Eduardo Russo, Coop10</dc:creator>
				<category><![CDATA[Coop10]]></category>
		<category><![CDATA[Outros]]></category>
		<category><![CDATA[fuck yeah]]></category>
		<category><![CDATA[fuuu]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[restart]]></category>
		<category><![CDATA[tirinha]]></category>
		<category><![CDATA[troll]]></category>

		<guid isPermaLink="false">http://www.bitabit.eng.br/?p=2255</guid>
		<description><![CDATA[Fugindo um pouco do dia a dia do Bit a Bit (muita repetição repetição?), resolvi fazer uma tirinha sobre o que o Mac faz comigo de vez em quando.]]></description>
			<content:encoded><![CDATA[<p>Fugindo um pouco do dia a dia do Bit a Bit (muita repetição repetição?), resolvi fazer uma tirinha sobre o que o Mac faz comigo de vez em quando.</p>
<p><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/07/restart-troll.png"><img class="aligncenter size-full wp-image-2256" title="restart-troll" src="http://www.bitabit.eng.br/wp-content/uploads/2011/07/restart-troll.png" alt="" width="800" height="1200" /></a></p>
<img src="http://www.bitabit.eng.br/?ak_action=api_record_view&id=2255&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.bitabit.eng.br/2011/07/13/mac-restart-troll/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Pesquisa salarial de politécnicos 2011</title>
		<link>http://www.bitabit.eng.br/2011/05/04/pesquisa-salarial-de-politecnicos-2011/</link>
		<comments>http://www.bitabit.eng.br/2011/05/04/pesquisa-salarial-de-politecnicos-2011/#comments</comments>
		<pubDate>Wed, 04 May 2011 11:39:05 +0000</pubDate>
		<dc:creator>Eduardo Russo, Coop10</dc:creator>
				<category><![CDATA[Coop10]]></category>
		<category><![CDATA[Cooperativo]]></category>
		<category><![CDATA[Empreendedorismo]]></category>
		<category><![CDATA[Notícias]]></category>
		<category><![CDATA[Outros]]></category>
		<category><![CDATA[ex alunos]]></category>
		<category><![CDATA[formados]]></category>
		<category><![CDATA[pesquisa]]></category>
		<category><![CDATA[salarial]]></category>
		<category><![CDATA[salário]]></category>

		<guid isPermaLink="false">http://www.bitabit.eng.br/?p=2128</guid>
		<description><![CDATA[Durante algumas semanas de Abril, vários ex alunos responderam a uma pesquisa salarial para que pudéssemos obter uma visão geral de quanto está ganhando um politécnico no mercado. Tivemos a participação de 86 colegas respondendo o cargo, o cargo registrado em carteira, tempo te formado, salário bruto e a quantidade de funcionários na empresa. Apesar [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/05/pesquisa-salarial.png" target="_blank"><img class="alignright size-full wp-image-2171" title="pesquisa salarial" src="http://www.bitabit.eng.br/wp-content/uploads/2011/05/pesquisa-salarial.png" alt="" width="188" height="134" /></a>Durante algumas semanas de Abril, vários ex alunos responderam a uma pesquisa salarial para que pudéssemos obter uma visão geral de quanto está ganhando um politécnico no mercado.</p>
<p>Tivemos a participação de <a href="https://spreadsheets.google.com/viewform?hl=pt_BR&amp;formkey=dFc3bnFWeU1zMzRfSTRWbTF1QndJaXc6MQ#gid=0" target="_blank">86 colegas respondendo o cargo, o cargo registrado em carteira, tempo te formado, salário bruto e a quantidade de funcionários na empresa</a>. Apesar do relativamente pequeno número de respostas, essa pesquisa nos possibilita ter uma visão razoável de quão aquecido anda o mercado de engenharia de computação no Brasil.Pretendemos fazer essa pesquisa anualmente, incrementando e evoluindo as perguntas conforme os <em>feedbacks</em> recebidos. Continuarei meu árduo trabalho de incentivo, com amor e carinho, para que mais pessoas respondam ao questionário.</p>
<p>A tabela da pesquisa pode ser vista nesse arquivo do <a href="https://spreadsheets.google.com/ccc?key=0AiQKER7O_mTMdFc3bnFWeU1zMzRfSTRWbTF1QndJaXc&amp;hl=pt_BR" target="_blank">Google Spreadsheet</a>, mas, a tabulação e geração dos dados foi feita <a href="http://cl.ly/6SAV" target="_blank">nesse arquivo de Excel</a>.</p>
<p>Como pode ser observado no formulário de preenchimento, foram definidos intervalos para os salários, portanto, os valores das médias não são exatos (uma pessoas que ganha R$11.000,00 aparecerá nos dados como se ganhasse R$25.000,00) e devem ter gerado certa discrepância. Lição aprendida… ano que vem, deixaremos que cada um coloque o salário exato para melhorar a precisão da pesquisa.</p>
<h1>Salário médio</h1>
<p>O salário médio dos 86 participantes é de <strong>R$6.854,65</strong>, um salário muito bom, quando se observa que a média da região metropolitana de São Paulo (a maior do país) é de menos de R$1.700,00, conforme <a href="http://www.ibge.gov.br/home/estatistica/indicadores/trabalhoerendimento/pme_nova/pme_201103sp_03.shtm" target="_blank">apuração do IBGE</a>.</p>
<h1>Cargo</h1>
<p>Como o campo de cargo podia ser preenchido livremente, obtivemos respostas bastante diversas (bombeiro?), dificultando um pouco a tabulação dos dados. Foram agrupados cargos que, ao meu ver, pareciam coerentes, mas, ainda assim, obtivemos um &#8220;outros&#8221; de 14% das respostas.</p>
<p style="text-align: center;">(clique nas imagens para ampliar)</p>
<p style="text-align: center;"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/05/cargo-x-participantes.png" target="_blank"><img class="aligncenter size-large wp-image-2169" title="cargo x participantes" src="http://www.bitabit.eng.br/wp-content/uploads/2011/05/cargo-x-participantes-1024x525.png" alt="" width="614" height="315" /></a></p>
<p>De todos os cargos preenchidos, as maiores médias salariais foram a de analistas financeiros e de negócios e a de engenheiros de software. As menores médias ficaram com desenvolvedores e analistas de sistema.</p>
<p style="text-align: center;"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/05/salário-x-cargo.png" target="_blank"><img class="aligncenter size-large wp-image-2172" title="salário x cargo" src="http://www.bitabit.eng.br/wp-content/uploads/2011/05/salário-x-cargo-1024x528.png" alt="" width="614" height="317" /></a></p>
<h1>Tempo formado</h1>
<p style="text-align: left;">Tivemos uma boa divisão de participantes para cada um dos tempos definidos, nos possibilitando ter uma boa visão.<a href="http://www.bitabit.eng.br/wp-content/uploads/2011/05/tempo-formado-x-participantes.png" target="_blank"><img class="aligncenter size-large wp-image-2175" title="tempo formado x participantes" src="http://www.bitabit.eng.br/wp-content/uploads/2011/05/tempo-formado-x-participantes-1024x525.png" alt="" width="614" height="315" /></a></p>
<p>Seguindo para os resultados, obtivemos o padrão esperado por um engenheiro. Quem se formou há mais tempo, ganha mais, com uma média de R$12.100,00 (observando a minha cagada na hora de criar os valores &#8211; 10.000 a 25.000). Quem se formou a menos de um ano ganha uma média de aproximadamente R$4.500,00.</p>
<p style="text-align: center;"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/05/salário-x-tempo-formado.png" target="_blank"><img class="aligncenter size-large wp-image-2174" title="salário x tempo formado" src="http://www.bitabit.eng.br/wp-content/uploads/2011/05/salário-x-tempo-formado-1024x525.png" alt="" width="614" height="315" /></a></p>
<h1>Quantidade de funcionários da empresa</h1>
<p>Aqui as respostas foram bem discrepantes com uma maioria esmagadora de politécnicos trabalhando em empresas com mais de 100 funcionários.</p>
<p style="text-align: center;"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/05/funcionários-x-participantes.png" target="_blank"><img class="aligncenter size-large wp-image-2170" title="funcionários x participantes" src="http://www.bitabit.eng.br/wp-content/uploads/2011/05/funcionários-x-participantes-1024x527.png" alt="" width="614" height="316" /></a></p>
<p>Essa discrepância acaba invalidando um pouco a pesquisa, já que pontos fora da curva acabam contando muito quando temos apenas meia dúzia de pessoas em um determinado tamanho de empresa.</p>
<p style="text-align: center;"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/05/salário-x-funcionários.png" target="_blank"><img class="aligncenter size-large wp-image-2173" title="salário x funcionários" src="http://www.bitabit.eng.br/wp-content/uploads/2011/05/salário-x-funcionários-1024x526.png" alt="" width="614" height="316" /></a></p>
<h1>Conclusões</h1>
<p>A conclusão geral dessa pesquisa é que precisamos fazer mais pesquisas! Os dados obtidos foram satisfatórios, mas, mais respostas, saltos salariais menores e outras perguntas teriam melhorado em muito seu valor.</p>
<p>Concluo que nossa área está quente, mas precisamos &#8220;valorizar nosso passe&#8221; ainda mais.</p>
<p>Até a próxima, com melhores e perguntas e, se meu &#8220;amor e carinho&#8221; der certo, mais respostas!</p>
<img src="http://www.bitabit.eng.br/?ak_action=api_record_view&id=2128&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.bitabit.eng.br/2011/05/04/pesquisa-salarial-de-politecnicos-2011/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Quick_bit[0]</title>
		<link>http://www.bitabit.eng.br/2011/04/06/quick_bit0/</link>
		<comments>http://www.bitabit.eng.br/2011/04/06/quick_bit0/#comments</comments>
		<pubDate>Wed, 06 Apr 2011 03:11:01 +0000</pubDate>
		<dc:creator>Lucas &#34;Sugis&#34; Lago, Comp09</dc:creator>
				<category><![CDATA[Curiosidades]]></category>
		<category><![CDATA[Notícias]]></category>
		<category><![CDATA[Outros]]></category>
		<category><![CDATA[Quick_bit]]></category>
		<category><![CDATA[Sem9]]></category>

		<guid isPermaLink="false">http://www.bitabit.eng.br/?p=2138</guid>
		<description><![CDATA[Como muitos de nós não temos tempo de colocar textos bem preparados, grandes, pequenos artigos parecem ser a solução. Por isso batizei os Quick_bit[n] (nome pode ser alterado se quiserem!) Os Quick_bit`s são pequenas informações como notícias de jornais, revistas, blogs + a opinião resumida. Estou me permitindo escapar um pouco do assunto &#8220;computação&#8221; nessa [...]]]></description>
			<content:encoded><![CDATA[<p>Como muitos de nós não temos tempo de colocar textos bem preparados, grandes, pequenos artigos parecem ser a solução.</p>
<p>Por isso batizei os Quick_bit[n] (nome pode ser alterado se quiserem!)</p>
<p>Os Quick_bit`s são pequenas informações como notícias de jornais, revistas, blogs + a opinião resumida. Estou me permitindo escapar um pouco do assunto &#8220;computação&#8221; nessa primeira vez pois o tema foi muito relevante, e muito comentado em todos os lugares.</p>
<p>&#8211;</p>
<p>Quick_bit[0] (PILOTO):</p>
<p><a href="http://comentarios.folha.com.br/comentarios?comment=163138&amp;site=folhaonline&amp;skin=folhaonline">http://comentarios.folha.com.br/comentarios?comment=163138&amp;site=folhaonline&amp;skin=folhaonline</a></p>
<p>Os comentários da folha mostram como as pessoas entendem de energia nuclear, e como reagem a tal situação. Atentem para as comparações do tipo: &#8220;Podem multiplicar Tchernobyl por 4&#8243;. Isso é o povo, essas pessoas não estudaram quase nada sobre energia para saber do que estão comentando, ou o que estão falando, estão apenas reagindo ao medo gerado pela situação.</p>
<p>Mas o que dizer dos cientistas que argumentam contra a energia nuclear, o que dizer sobre seus pontos, seus dados&#8230;</p>
<p><a href="http://www.guardian.co.uk/commentisfree/2011/apr/05/anti-nuclear-lobby-misled-world">http://www.guardian.co.uk/commentisfree/2011/apr/05/anti-nuclear-lobby-misled-world</a></p>
<p>Li hoje esse artigo no Guardian, que comenta sobre a desinformação, e a falta de veracidade nos dados que circundam as notícias sobre desastres nucleares.</p>
<p>O autor comenta que números de desastres antigos como os de Tchernobyl são alterados e manipulados para se adaptar ao discurso anti-nuclear, e que muito do que se é dito sobre os acidentes e principalmente sobre os efeitos na saúde não é baseado em fatos.</p>
<p>Acho que é responsabilidade de quem for comentar sobre esses acidentes, procurar se informar sobre cada uma das fontes de informações usadas, para garantir que a informação passada seja a mais correta possível. E cabe a nós pessoas que estudaram (apesar de não termos estudado especificamente o assunto) duvidar, e expor abertamente nossas dúvidas quanto a alegações extraordinárias, e demandar provas para todas essas alegações.</p>
<p>E citando Carl Sagan, lembrar sempre que: &#8220;Alegações extraordinárias, demandam provas extraordinárias&#8221;.</p>
<img src="http://www.bitabit.eng.br/?ak_action=api_record_view&id=2138&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.bitabit.eng.br/2011/04/06/quick_bit0/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Apresentando Ploobs Engine</title>
		<link>http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/</link>
		<comments>http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/#comments</comments>
		<pubDate>Wed, 23 Mar 2011 13:34:16 +0000</pubDate>
		<dc:creator>Thiago Dias Pastor, Coop 10</dc:creator>
				<category><![CDATA[Coop10]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[TCC]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Deferred Rendering]]></category>
		<category><![CDATA[Engine Para Jogos]]></category>
		<category><![CDATA[Game Engine]]></category>
		<category><![CDATA[Jogos]]></category>
		<category><![CDATA[Opensource]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://www.bitabit.eng.br/?p=2076</guid>
		<description><![CDATA[Olá Pessoal !! Neste artigo pretendo apresentar a Ploobs Engine, nossa engine de jogos. Inicialmente a ideia é mostrar as features principais e num futuro próximo postar alguns tutoriais. O que é a Ploobs Engine ? É uma Engine para criação de jogos e aplicativos gráficos desenvolvida em XNA 4.0, C# .Net 4.0 e HLSL. [...]]]></description>
			<content:encoded><![CDATA[<p>Olá Pessoal !! Neste artigo pretendo apresentar a Ploobs Engine, nossa engine de jogos. Inicialmente a ideia é mostrar as features principais e num futuro próximo postar alguns tutoriais.</p>
<p><em><strong><span style="font-style: normal; font-weight: normal;"> </span></strong></em></p>
<h2>O que é a Ploobs Engine ?</h2>
<dt></dt>
<p>É uma Engine para criação de jogos e aplicativos gráficos desenvolvida em XNA 4.0, C# .Net 4.0 e HLSL. Criada para ser simples de extender e fácil de usar, mesmo para aqueles que não conhecem com profundidade computação gráfica.</p>
<div id="attachment_2079" class="wp-caption alignright" style="width: 370px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-12122010-110541-AM.jpg"><img class="size-medium wp-image-2079 " title="Piscina" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-12122010-110541-AM-300x168.jpg" alt="" width="360" height="202" /></a><p class="wp-caption-text">Cena com Reflexão, Refração, Animação, Glow, iluminação e SkyBox</p></div>
<p>O framework construído é bastante extenso, sendo constituído de diversos módulos responsáveis pelas tarefas mais comuns utilizadas em jogos como: Controle de Entrada, Simulação Física, Renderização Gráfica, Inteligência Artificial e Controle de Recursos.</p>
<p>O foco principal da Engine esta na parte gráfica, que usa a técnica de renderização <a href="http://en.wikipedia.org/wiki/Deferred_shading" target="_blank">Deferred Shading</a>, a mesma encontrada em jogos como <a href="http://us.battle.net/sc2/pt/" target="_blank">Startcraft II,</a> <a href="http://www.ea.com/crysis-2" target="_blank">Crysis II</a> e <a href="http://www.killzone2.com/" target="_blank">KillZone II</a>.</p>
<p>O render construído fez parte do nosso projeto de formatura. Uma explicação bastante profunda do funcionamento da técnica e da nossa implementação pode ser encontrada na nossa <a href="http://www.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=ploobsengine&amp;DownloadId=217469">tese</a>.</p>
<h2 style="text-align: left;">Quais são as Funcionalidades Principais ?</h2>
<p>A PloobsEngine suporta praticamente todas as funcionalidades de uma Engine Directx 9c, sendo as principais:</p>
<ul>
<li>Deferred Render com suporte a <a href="http://en.wikipedia.org/wiki/Bump_mapping" target="_blank">Bump Map</a>, <a href="http://dimitribueno.dreamhosters.com/?p=224" target="_blank">Specular Map</a>, <a href="http://bighouse.bungie.org/killingtime/Help_Schtuff/Glow_Maps.html" target="_blank">Glow Map</a> e <a href="http://en.wikipedia.org/wiki/Parallax_mapping" target="_blank">Paralax Map</a> (técnicas usadas para simular materiais e aumentar o realismo dos jogos)</li>
<li>Sistemas de partículas</li>
<li>Simulação física</li>
<li>Som 3D e 2D</li>
<li>Luzes Dinâmicas com Sombra</li>
<li><a href="http://en.wikipedia.org/wiki/Skeletal_animation" target="_blank">Animação por ossos</a> (Bone Animation)</li>
<li>Terrenos</li>
<li>Reflexão e Refração em Tempo Real</li>
<li>Sistema de GUI (HUD)</li>
</ul>
<p>Foram utilizados diversos algoritmos e técnicas encontradas em jogos que estão atualmente no mercado, sempre que possível escolhíamos algoritmos que exploravam ao máximo a GPU.</p>
<p>O nosso grande diferencial esta no uso da técnica Deferred Shading ao extremo, nenhuma Engine XNA não comercial utiliza esta técnica desta forma.</p>
<p>Para uma lista bem mais completa das funcionalidades, de uma olhada <a href="http://ploobsengine.codeplex.com/">no site do projeto</a>.</p>
<div id="attachment_2080" class="wp-caption alignright" style="width: 310px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-12122010-15056-AM.jpg"><img class="size-medium wp-image-2080 " src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-12122010-15056-AM-300x168.jpg" alt="" width="300" height="168" /></a><p class="wp-caption-text"> Ambient Scattering, Vegetação e Partículas ao fundo</p></div>
<h2><em>O que você precisa para começar a usar a Ploobs Engine ?</em></h2>
<p>Para um uso mais simples, somente conhecimento básico de C# é necessário, não é preciso conhecer computação gráfica ou XNA.</p>
<p>Para o desenvolvedor, é necessário instalar a XNA 4.0 SDK, o .Net 4.0 Framework e o Visual Studio 2010 completo ou express. Em termos de hardware é necessário apenas ter uma placa de vídeo compatível com DirectX 10 (Shader Model 3.0).</p>
<h2>Por onde que eu começo ??!!</h2>
<p>Temos uma seção com tutoriais básicos no<a href="ploobsengine.codeplex.com" target="_blank"> site do projeto</a>, além de alguns pacotes com diversos demos de funcionalidades (cerca de 30 demos bastante comentados) .</p>
<p>Estamos trabalhando para criar outros tutoriais e alguns demos reais (pequenos Showcases). Junto com a DLL da Engine, temos um documento (.chm) explicando os conceitos básicos da Engine.</p>
<h2>Como que a Engine é distribuída ?</h2>
<p>Atualmente existem as seguintes formas de distribuição:</p>
<div id="attachment_2095" class="wp-caption alignright" style="width: 310px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/03/marcuz.jpg"><img class="size-medium wp-image-2095" title="marcuz" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/marcuz-300x250.jpg" alt="" width="300" height="250" /></a><p class="wp-caption-text">Iluminacao e Lod</p></div>
<ul>
<li>Código Fonte Completo através do nosso repositório Mercurial (este repositório contem apenas a ultima versão estável no branch principal).</li>
<li>DLL Única contendo todas as dependências e documentação.</li>
<li>Através dos pacotes de Demos.</li>
</ul>
<p>A idéia é lançar uma versão estável periodicamente e diversas outras versões betas intermediarias. Caso algum bug crítico seja encontrado, iremos corrigir a versão estável o mais rápido possível. Os Demos e o arquivo de documentação serão atualizados apenas no lançamento de versões estáveis, a documentação do site será atualizada assim que as versões intermediárias forem lançadas. Pretendemos manter compatibilidade com as versões antigas sempre que for possível.</p>
<h2><em>Nosso RoadMap</em></h2>
<p><em> </em></p>
<p>Num futuro próximo pretendemos melhorar a estabilidade, a  documentação e corrigir os bugs que vão “surgindo”, em um futuro um pouco mais distante pretendemos adicionar suporte a Rede.</p>
<h1>Junte-se a nós !!!</h1>
<div id="attachment_2083" class="wp-caption alignright" style="width: 310px"><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-10232010-64241-PM.jpg"><img class="size-medium wp-image-2083" title="Etapa1 10232010 64241 PM" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-10232010-64241-PM-300x233.jpg" alt="" width="300" height="233" /></a><p class="wp-caption-text">Iluminacao avancada</p></div>
<p>Antes de tudo, o projeto não tem fins financeiros.</p>
<p>Precisamos de pessoas que gostem de computação gráfica (não é necessário nenhum conhecimento prévio, temos diversos materiais para auxiliar no aprendizado do pessoal), principalmente programação de  shaders (código que roda na placa de vídeo).</p>
<p>Precisamos também de pessoas dispostas a fazer demos e Showcases (pessoas que não irão entrar em contato com o core da Engine).</p>
<p>Duvidas ? Quer saber mais ? Deixe um comentário aqui ou mande um email: <a href="contato@ploobs.com.br">contato@ploobs.com.br</a></p>
<h3>Time Atual</h3>
<p>Thiago Dias Pastor &#8211; COOP10</p>
<p>Bruno Duarte Correa &#8211; COOP10</p>
<h3>Links</h3>
<p>XNA 4.0 Alpha Release: <a href=" http://ploobs.com.br/?p=725">http://ploobs.com.br/?p=725</a></p>
<p>Site do projeto: <a href="http://ploobsengine.codeplex.com/">http://ploobsengine.codeplex.com/</a></p>
<p>DLL, Documentação e Tutoriais (Xna 3.1 Version): <a href="http://sourceforge.net/projects/ploobsengine/files/">http://sourceforge.net/projects/ploobsengine/files/</a></p>
<p>Nosso Fórum: <a href="http://www.ploobs.com.br/forum" target="_blank">ploobs.com.br/forum</a></p>
<p>Nosso Blog: <a href="http://www.ploobs.com.br" target="_blank">ploobs.com.br/</a></p>
<p>Nosso Twitter : <a href="http://www.twitter.com/ploobsengine/">@ploobsengine</a></p>
<h3>Agradecimentos</h3>
<ul>
<li>Toda a galera do COOP10 por ter nos aguentado nesses últimos anos, em especial o Filipão e o Kayatt.</li>
<li>Ao Professor Ricardo Nakamura, nosso orientador no TCC, e seus conselhos sagazes.</li>
<li>A nossa Equipe da ImaginCup 2010, a experiência adquirida mudou completamente o desenvolvimento da engine.</li>
</ul>
<h3>ScreenShots</h3>

<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/etapa1-12122010-110541-am/' title='Piscina'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-12122010-110541-AM-150x150.jpg" class="attachment-thumbnail" alt="Cena com Reflexão, Refração, Animação, Glow, iluminação e SkyBox" title="Piscina" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/etapa1-12122010-15056-am/' title='Scattering'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-12122010-15056-AM-150x150.jpg" class="attachment-thumbnail" alt="Ambient Scattering, Vegetação e Partículas ao fundo" title="Scattering" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/etapa1-10232010-45216-pm/' title='Etapa1 10232010 45216 PM'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-10232010-45216-PM-150x150.jpg" class="attachment-thumbnail" alt="Deferred Render: Da esquerda para direita, imagem final, mapa diffuse, mapa das normais e mapa de iluminacao" title="Etapa1 10232010 45216 PM" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/etapa1-10232010-64241-pm/' title='Etapa1 10232010 64241 PM'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-10232010-64241-PM-150x150.jpg" class="attachment-thumbnail" alt="Iluminacao avancada" title="Etapa1 10232010 64241 PM" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/untitled/' title='Untitled'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Untitled-150x150.jpg" class="attachment-thumbnail" alt="Ploobs Logo" title="Untitled" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/marcuz/' title='marcuz'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/marcuz-150x150.jpg" class="attachment-thumbnail" alt="Iluminacao e Lod" title="marcuz" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/etapa1-12112010-110342-pm/' title='Etapa1 12112010 110342 PM'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-12112010-110342-PM-150x150.jpg" class="attachment-thumbnail" alt="Piscina: Combinacao de diversas tecnicas" title="Etapa1 12112010 110342 PM" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/etapa1-10232010-55208-pm/' title='Etapa1 10232010 55208 PM'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-10232010-55208-PM-150x150.jpg" class="attachment-thumbnail" alt="Oceano" title="Etapa1 10232010 55208 PM" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/etapa1-12122010-123737-am/' title='Etapa1 12122010 123737 AM'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-12122010-123737-AM-150x150.jpg" class="attachment-thumbnail" alt="Homenagem a Hell Week" title="Etapa1 12122010 123737 AM" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/etapa1-10262010-31059-pm/' title='Etapa1 10262010 31059 PM'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-10262010-31059-PM-150x150.jpg" class="attachment-thumbnail" alt="Sol e Scattering" title="Etapa1 10262010 31059 PM" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/etapa1-10242010-83736-pm/' title='Etapa1 10242010 83736 PM'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/Etapa1-10242010-83736-PM-150x150.jpg" class="attachment-thumbnail" alt="Terreno MultiTexture e Vegetacao" title="Etapa1 10242010 83736 PM" /></a>
<a href='http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/sombra/' title='sombra'><img width="150" height="150" src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/sombra-150x150.jpg" class="attachment-thumbnail" alt="Sombra com CSM e Filtragem" title="sombra" /></a>

<p><em><br />
</em><em> </em><em> </em></p>
<img src="http://www.bitabit.eng.br/?ak_action=api_record_view&id=2076&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.bitabit.eng.br/2011/03/23/apresentando-ploobs-engine/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Apache Solr: how to search sorting accented fields</title>
		<link>http://www.bitabit.eng.br/2011/03/16/sunspot-solr-how-to-sort-accented-fields/</link>
		<comments>http://www.bitabit.eng.br/2011/03/16/sunspot-solr-how-to-sort-accented-fields/#comments</comments>
		<pubDate>Wed, 16 Mar 2011 20:28:18 +0000</pubDate>
		<dc:creator>Rafael Barbolo Lopes, Coop10</dc:creator>
				<category><![CDATA[Busca]]></category>
		<category><![CDATA[Coop10]]></category>
		<category><![CDATA[Cooperativo]]></category>
		<category><![CDATA[Dicas]]></category>
		<category><![CDATA[Programação]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[ascii]]></category>
		<category><![CDATA[ASCIIFoldingFilterFactory]]></category>
		<category><![CDATA[HTMLStripCharFilterFactory]]></category>
		<category><![CDATA[KeywordTokenizer]]></category>
		<category><![CDATA[KeywordTokenizerFactory]]></category>
		<category><![CDATA[latin]]></category>
		<category><![CDATA[LowerCaseFilterFactory]]></category>
		<category><![CDATA[Normalizing]]></category>
		<category><![CDATA[queries]]></category>
		<category><![CDATA[schema]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[solr]]></category>
		<category><![CDATA[StandardFilterFactory]]></category>
		<category><![CDATA[StandardTokenizerFactory]]></category>
		<category><![CDATA[string field]]></category>
		<category><![CDATA[sunspot]]></category>
		<category><![CDATA[TextField]]></category>
		<category><![CDATA[token]]></category>
		<category><![CDATA[tokenizer]]></category>

		<guid isPermaLink="false">http://www.bitabit.eng.br/?p=2054</guid>
		<description><![CDATA[We are using Apache Solr and Sunspot in a brazilian portuguese project and wanted it to work with accented chars. Normalizing latin chars (á, é, ç, &#8230;) to ASCII chars (a, e, c, &#8230;) in our search index and queries was pretty easy. We changed the text field definition to the following schema: 1 2 [...]]]></description>
			<content:encoded><![CDATA[<p>We are using <a href="http://lucene.apache.org/solr/">Apache Solr</a> and <a href="http://outoftime.github.com/sunspot/">Sunspot</a> in a brazilian portuguese project and wanted it to work with accented chars.</p>
<p><a href="http://www.bitabit.eng.br/wp-content/uploads/2011/03/apache_solr_logo.jpg"><img src="http://www.bitabit.eng.br/wp-content/uploads/2011/03/apache_solr_logo.jpg" alt="" title="Apache SOLR Logo" width="283" height="156" class="aligncenter size-full wp-image-2070" /></a></p>
<p>Normalizing latin chars (á, é, ç, &#8230;) to ASCII chars (a, e, c, &#8230;) in our search index and queries was pretty easy. We changed the text field definition to the following schema:</p>
<p><br/><br/></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;fieldType</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;text&quot;</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;solr.TextField&quot;</span> <span style="color: #000066;">omitNorms</span>=<span style="color: #ff0000;">&quot;false&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;analyzer<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;charFilter</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;solr.HTMLStripCharFilterFactory&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span> <span style="color: #808080; font-style: italic;">&lt;!-- strip HTML --&gt;</span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;tokenizer</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;solr.StandardTokenizerFactory&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;filter</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;solr.StandardFilterFactory&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;filter</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;solr.LowerCaseFilterFactory&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;filter</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;solr.ASCIIFoldingFilterFactory&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span> <span style="color: #808080; font-style: italic;">&lt;!-- convert accented chars to ASCII --&gt;</span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/analyzer<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/fieldType<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p><br/><br/></p>
<p>A more difficult problem was to sort accented string fields. By default, the class of the sunspot&#8217;s string field is <em>solr.StrField</em>. The string field is used for sorting, but was showing problems to sort accented inputs. For the inputs &#8220;árvore&#8221;, &#8220;bola&#8221;, &#8220;ano&#8221; it was showing the sorted result: &#8220;ano&#8221;, &#8220;bola&#8221;, &#8220;árvore&#8221; (the correct result would be &#8220;ano&#8221;, &#8220;árvore&#8221;, &#8220;bola&#8221;).</p>
<p>The problem with accented chars sorting is that non-ASCII chars are represented as HTML entites (for example, <em>&amp;aacute; </em>instead of<em> á</em>) and special chars as &#8220;&#038;&#8221; goes after alphanumeric chars in a sort.</p>
<p>To solve this, we changed the string field&#8217;s class to <em>solr.TextField</em> but making sure that its tokenizer would not create more than one token for each entry. The tokenizer we used was the <em>KeywordTokenizer</em>. The final schema for the string field was:</p>
<p><br/><br/></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;fieldType</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;solr.TextField&quot;</span> <span style="color: #000066;">omitNorms</span>=<span style="color: #ff0000;">&quot;true&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;analyzer<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;tokenizer</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;solr.KeywordTokenizerFactory&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;filter</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;solr.LowerCaseFilterFactory&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;filter</span> <span style="color: #000066;">class</span>=<span style="color: #ff0000;">&quot;solr.ASCIIFoldingFilterFactory&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/analyzer<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/fieldType<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p><br/><br/></p>
<img src="http://www.bitabit.eng.br/?ak_action=api_record_view&id=2054&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.bitabit.eng.br/2011/03/16/sunspot-solr-how-to-sort-accented-fields/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

