sexta-feira, 29 de maio de 2015

Drones: o desafio é voar!

O texto a seguir é uma reprodução do artigo que o colega Alexandre Brandão e eu escrevemos para a Revista Mundo Robótica. Trata-se de uma explicação geral sobre drones e suas características.
Acesse o site da Olimpíada Brasileira de Robótica para ler todas as edições da Revista Mundo Robótica!

---

Drones, cientificamente conhecidos como veículos aéreos não tripulados, estão cada vez mais presentes no nosso cotidiano. Em uma concepção inicial, estas aeronaves tinham como objetivo a realização de tarefas de inspeção de grandes áreas, que comumente eram realizadas por veículos tripulados. Mais além dessas aplicações, os Drones atualmente podem ser vistos como brinquedos de alta tecnologia.

Quadrotor Phantom.

Facilmente podemos encontrar um veículo do tipo helicóptero convencional, quadrotor (aeronave com quatro pás rotativas), avião ou dirigível, que pode ser guiado remotamente por pessoas sem muita experiência na área de controle de aeronaves. A facilidade na estabilização em voo e na realização de manobras se dá por causa dos dispositivos eletrônicos embarcados, como sensores microprocessadores. Esses dispositivos embarcados permitem que o ajuste na velocidade dos motores para estabilização da aeronave seja feito de forma automática. Tal característica só foi alcançada através de muito estudo, pesquisa e desenvolvimento nas áreas de eletrônica, computação e controle.


Parrot AR.Drone 2.0
Hoje em dia, mesmo as aeronaves radio-controladas mais simples já possuem diversos sensores em seu corpo. Por exemplo, a determinação da orientação da aeronave durante um voo é feita a partir dos chamados sensores inerciais (giroscópios e acelerômetros). Tais sensores são capazes de determinar a aceleração e a variação de orientação da aeronave nos 3 eixos cartesianos, o que é essencial para controlar sua estabilização. Para voos em ambientes externos, um receptor de GPS pode ser utilizado para determinar sua localização global, principalmente em voos de longa distância. Câmeras de vídeo podem ser utilizadas para auxiliar na navegação e para realizar registro da área navegada. Tais itens tornam estes veículos bastante atrativos para as mais diversas aplicações sejam em ambientes externos (por exemplo, campos abertos, cidades, regiões de montanhas, ambientes hostis) como em ambientes internos (por exemplo, escritórios, edifícios, galpões).

Alguns centros de pesquisa ao redor do mundo utilizam Drones para realização de manobras acrobáticas e experimentos de controle de formação (pelotão ou grupos de robôs). Eles contam com sistemas de rastreamento baseado em visão computacional, tais como, OptiTrack e Vicom System, para determinação com alta precisão da localização tridimensional das aeronaves (que comumente possuem marcadores reconhecíveis pelo sistema) e assim realizar missões de cooperação típicas de estratégias de guerra usando veículos tripulados.

Pequenos, mas precisos

A miniaturização dos Drones é algo que também está de moda. Cada vez mais vemos universidades e institutos apresentando aeronaves que cabem na palma da mão.

Mini-drone tipo quadrotor.

Apesar de não terem uma grande capacidade de carga, em virtude de suas dimensões físicas, elas desempenham tarefas importantes no que diz respeito ao controle cooperativo e de formação para a realização de tarefas de inspeção. Imagine utilizar drones observando uma área de floresta para busca de pessoas perdidas, por exemplo. A tarefa pode ser realizada de forma muito mais eficiente por um grupo de pequenos drones do que por um drone grande e poderoso. Além disso, há uma maior garantia de cumprimento da tarefa, pois a falha de um ou mais Drones não irá comprometer totalmente sua realização (execução). O filme Operação Big Hero (Big Hero 6) ilustra muito bem como um enxame de pequenos robôs pode aumentar a eficiência e a gama de aplicações de um sistema robótico.

Os drones podem ser divididos em veículos aéreos de hélices coaxiais ou multirrotores (como os quadrotores), de asas fixas (como aviões e planadores), de asas oscilantes (tipo pássaros) ou de asas rotativas (como helicóptero). Sim, são consideradas asas as pás que giram para sustentar o helicóptero! Certamente você já viu drones em forma de avião, helicóptero e quadrotor. Mas, se você ainda nunca viu um drone na forma de um pássaro, cuja propulsão vem do bater de suas asas, procure sobre o Smart Bird da empresa Festo.

Em termos de miniaturização, os Drones de asas rotativas ou multirrotores são mais fáceis de encontrar no mercado em dimensões reduzidas do que aviões, planadores, dirigíveis e aeronaves tipo pássaro. Por razões de aerodinâmica, os Drones de asas fixas ou oscilantes tendem a apresentar maiores dimensões físicas. Vale adicionar que os Drones de asas rotativas possuem uma maior manobrabilidade (capacidade de se deslocar nas várias direções do espaço tridimensional) e a capacidade de realizar voo pairado (ancorar sobre um ponto em terra a uma dada altitude). Em contrapartida, tais aeronaves são mais difíceis de controlar, quando comparadas às outras, exigindo certo grau de experiência dos usuários.

Desafios

Baterias de LiPo.
Um dos grandes desafios da atualidade está relacionado à autonomia de voo dos Drones. Baterias de diversas composições químicas têm sido utilizadas como fonte de alimentação dos sistemas de propulsão, sensoriamento e controle. Atualmente, as baterias utilizadas na ampla maioria dos drones são as de LiPo (Polímero de Lítio) por terem grande capacidade de carga e elevada potência. Porém, o tempo de voo das aeronaves comerciais utilizadas para fins de pesquisas ou aplicações de entretenimento ainda é pequeno, da ordem de quinze minutos de operação contínua. Apesar de parecer pouco tempo de voo, tal autonomia é suficiente para realizar inspeção em campos de pastagem, observação dos arredores de um edifício ou mesmo a realização de uma apresentação acrobática. Drones mais caros podem ter autonomia maior, como 30 a 45 minutos.

Finalmente, o que mais se espera hoje em dia é que os drones sejam capazes de voar de maneira completamente autônoma, sem nenhum tipo de interferência humana. Muitos grupos em todo o mundo estão trabalhando nesse problema, que não é de solução trivial. Alguns grupos têm se dedicado ao desenvolvimento de veículos e sistemas de controle que permitam voo em ambientes externos e outros em ambiente internos, inclusive detectando e desviando de obstáculos. Para isso, estão sendo desenvolvidos e aplicados novos sensores, novas técnicas de visão computacional, algoritmos inteligência artificial e teoria de controle. Esse é o passo final para a transformação dos drones em verdadeiros robôs autônomos. Vamos contribuir?

Fonte: Revista Mundo Robótica, ano 2, número 4, 2015.

---

Até a próxima!

terça-feira, 10 de junho de 2014

Arduino + Threads

Ou... como piscar dois LEDs com Arduino de maneira foda.

:-)

Falando sério, o +Ivan Seidel criou uma biblioteca muito legal de threads para Arduino e fez esses vídeos para explicá-la. É muuuuito útil para programar o seu robô!

O primeiro vídeo é uma excelente aula sobre programação de Arduino (e de microcontroladores em geral). O segundo ensina a usar a biblioteca. Vale muito à pena ver os dois!




Até a próxima!

quarta-feira, 28 de maio de 2014

Google self-driving car

Há várias empresas e universidades trabalhando em projetos de carros autônomos, inclusive no Brasil. Até hoje, todos os protótipos eram veículos comerciais adaptados para serem autônomos. Mas, mais uma vez a Google deu um passo adiante de todos: construiu um protótipo de veículo pensado, desde o início, para ser autônomo.

Qual é a diferença?

Bem... se o veículo é realmente autônomo, você não precisa de acelerador, freio ou volante!



Quando será que as cidades terão carros autônomos como esse como parte do sistema de transporte público? 

Até a próxima!

sexta-feira, 2 de maio de 2014

Mini-curso de Sistemas Embarcados com Arduino

Quem quer construir seu próprio robô precisa ter conhecimentos básicos de sistemas embarcados. A denominação "sistemas embarcados" é utilizada para caracterizar sistemas que contêm um computador (ou mais) dedicado e encapsulado no dispositivo ou sistema que controla. Ou seja, é um conceito muito amplo que envolve eletrônica, microcontroladores, sensores, atuadores, comunicação de dados etc.

Pela primeira vez a ISA-ES promoveu um Curso Estudantil de Introdução a Sistemas Embarcados com Arduino, que tive o prazer de lecionar. O curso teve carga-horária de 16h e foi realizado de 31 de março a 03 de abril de 2014 nas instalações da Faculdade MULTIVIX - Serra, ES. Teve a participação de 24 estudantes que, em sua maioria, atuam como profissionais nas indústrias capixabas.

Apesar de sua curta duração, durante o curso foi possível abordar vários dos tópicos mencionados acima, relacionando-os com uma atividade prática sempre que possível. O resultado da pesquisa ao final do curso me deixou muito feliz, pois demonstrou um ótimo índice de satisfação dos alunos: 63% atingiram suas expectativas e os demais tiveram suas expectativas superadas!

--- editado em 25/06/2014
A convite do professor Thiago Maduro, nos dias 19 e 20 de julho eu repeti esse curso no Campus São Mateus do IFES. A ideia principal era motivar o grupo de alunos que está trabalhando com robótica, mas a turma do curso acabou sendo mais ampla, com alunos e professores dos cursos Técnico em Eletrotécnica e Engenharia Mecânica. Todos contaram com kits contendo Arduino e componentes eletrônicos e puderam exercitar o conteúdo do curso através de mais de uma dezena de atividades práticas.

Os slides atualizados do curso estão aqui:



As atividades práticas realizadas durante o curso incluíram a leitura de sensores digitais e analógicos, comunicação serial, comunicação entre Arduinos, acionamento de LCD de caractere, acionamento PWM, entre outras. Os programas estão disponíveis em meu GitHub:

https://github.com/felipenmartins/curso_arduino

Espero que essas informações e exemplos ajudem no entendimento de conceitos importantes para a robótica.

Até a próxima!


Referências:
http://www.isa-es.org.br/portal/noticia/pela-primeira-vez-a-isa-es-promoveu-curso-estudantil-de-introducao-a-sistemas-embarcados-com-arduino/
http://isaesblog.wordpress.com/cursos/curso-microcontrolador-arduino/

terça-feira, 11 de março de 2014

Que tal jogar ping-pong contra um robô?

Você adora ping-pong e não tem com quem jogar?? Seus problema acabaram!!

Depois de dois anos de desenvolvimento, a empresa alemã ULF Hoffmann Robots apresentou seu robô jogador de ping-pong UHTTR-1. Construído com servomotores muito velozes e estrutura de alumínio, o robô é dotado de um sistema de controle proprietário que detecta a bola através de um sistema de duas câmeras fixas no ambiente. Veja!!




Mas, não ligue agora! Você ainda pode levar esse belíssimo robô industrial Kuka KR Agilus, que também joga direitinho. A Kuka, também uma empresa alemã, programou esse seu robô de 6 graus de liberdade para jogar ping-pong e promoveu uma partida com ninguém menos que Timo Boll, atual campeão mundial de tênis de mesa!

Não dá nem pra comentar. Assista!!




Será que já posso encomendar um pra minha casa??
Até a próxima!

Referências: 
http://ulfhoffmannroboter.wordpress.com

sábado, 15 de fevereiro de 2014

EUROPA - European Robotic Pedestrian Assistant

Imagine ter robôs andando entre nós, nas cidades, interagindo conosco para nos ajudar a encontrar prédios, monumentos, endereços ou até para servir como guia turístico! Esses robôs navegariam de forma autônoma em ambientes urbanos ao ar livre, em shoppings e em lojas, para fornecer vários serviços aos usuários, incluindo orientação, distribuição e transporte.

O objetivo do projeto EUROPA, cuja sigla significa Assistente Robótico Europeu para Pedestres, foi exatamente desenvolver as bases para construção desses robôs. O projeto foi realizado de 2009 a 2013 por um consórcio de diversas universidades e uma empresa europeias: Albert Ludwigs University of Freiburg - Autonomous Intelligent Systems Lab, Eidgenössische Technische Hochschule Zurich - Autonomous Systems Lab, KU Leuven - Center for the Processing of Speech and Images, University of Oxford - Mobile Robotics & Computational Linguistics Group, RWTH Aachen University - Mobile Multimedia Group e a empresa BlueBotics.

O vídeo abaixo demonstra alguns dos resultados alcançados pelo projeto. O robô é capaz de navegar com sucesso num ambiente externo, extremamente dinâmico, na presença de várias pessoas.


Outros vídeos estão disponíveis aqui: http://europa.informatik.uni-freiburg.de/videos.html

Recentemente tem havido grande progresso no desenvolvimento de robôs autônomos que oferecem vários serviços aos seus usuários. Os serviços típicos incluem o apoio de pessoas idosas, limpeza, transporte e tarefas de entrega, exploração de ambientes perigosos inacessíveis, ou de vigilância. A maioria dos sistemas desenvolvidos até o momento, no entanto, está restrito a cenários interiores, ambientes ao ar livre não-urbanos, ou ao uso de veículos autônomos em estradas. Ainda há muito espaço para desenvolvimento de  recursos que possibilitem a navegação de robôs móveis com segurança em ambientes ao ar livre altamente povoados.

Mais de 60 artigos científicos foram publicados pelos pesquisadores do projeto EUROPA entre os anos de 2009 e 2012. São trabalhos que tratam dos desenvolvimentos realizados no contexto do projeto nas áreas de calibração, localização, mapeamento, detecção e seguimento de pedestres, segmentação de cenas em ruas, identificação de vegetação com sensores LASER, aprendizado de comportamento de motoristas, entre outros. Veja os artigos aqui: http://europa.informatik.uni-freiburg.de/dm_show.php

Muito foi desenvolvido, mas ainda há muito por fazer. Quando será que teremos robôs como esse entre nós?

Até a próxima!

Referência:
http://europa.informatik.uni-freiburg.de/