Projeto de Hardware, como escolher qual plataforma utilizar

Projeto de Hardware

Recentemente um aluno de um curso de graduação me procurou com uma ideia para seu projeto final de curso, um projeto de hardware de um sistema de detecção de fadiga para uso em automóveis. A ideia é basicamente utilizar uma câmera acoplada ao para-brisa que rastrearia os olhos do motorista e caso os olhos estejam fechados por mais de 1 segundo, um alarme sonoro seria acionado. Ele estava empolgado com a ideia e realizaria este projeto com o Arduino, pois já possuía um kit e já era familiarizado. Ele até imaginava que obtendo sucesso, este poderia ser um protótipo de um projeto comercial de baixo custo.

Bem, comecei a levantar alguns pontos que ele não havia pensado:

  1. Uma câmera apenas seria suficiente? Se o motorista estiver em uma curva e sua cabeça não estaria necessariamente direcionada para a câmera frontal, talvez fossem necessárias 3 câmeras;
  2. A câmera (ou as câmeras) deveria ser capaz de trabalhar com baixa luminosidade, para poder ser utilizada à noite;
  3. Se o motorista utilizar óculos, a solução deveria ser capaz de identificar os olhos mesmo sobre óculos;
  4. Será que apenas olhos fechados indicariam uma fadiga de fato? Já dirigi com sono e muitas vezes seus olhos estão abertos, mas sua visão periférica esta muito alterada pelo esforço que você realiza para manter os olhos abertos;
  5. E provavelmente o mais importante, a plataforma Arduino, seria capaz de lidar com estas situações e teria a performance necessária? Imagine que você teria que identificar o rosto do motorista, os olhos e, no caso de identificar o olho fechado, você teria que acionar o alarme em um tempo muito curto (no segundo seguinte). Outro ponto importante é o suporte a SDK como OpenCV que sinceramente não sei se suporta ou é suportado pelo Arduino.

Após a leitura acima, você deve imaginar o que pretendo escrever a seguir. Muitas vezes na ansiedade de concretizar um sonho/ideia, buscamos ir direto para a implementação na plataforma de hardware que temos domínio ou que temos a mão e nem sempre esse seria o fluxo correto, principalmente para projetos com aspiração comercial.

Em um projeto comercial, temos diversos fatores que devem ser considerados, como o custo final da solução, quantidade estimada de vendas, entre outros fatores comerciais que impactam na definição da arquitetura do hardware e os compromissos que serão assumidos nesta etapa.

No meu ponto de vista todo projeto de um sistema de hardware, deve começar pela avaliação: para atender o objetivo posso utilizar uma solução de software em um processador genérico ou necessito de uma solução de hardware customizada (Microcontrolador, CPLD, PIC, FPGA, ASSP, ASIC, SOC, PSOC, etc.), plataformas como o Arduino e Raspberry são excelentes e têm o mérito de popularizarem a cultura Maker de faça você mesmo de forma relativamente fácil e gastando pouco, mas nem sempre se adequam a todas às necessidades.

Se observamos o mercado, por exemplo, o FPGA não matou o desenvolvimento de ASIC’s customizados, embora o custo de desenvolvimento utilizando um FPGA (custo NRE – Non Recurring Engineering) seja relativamente baixo, temos alguns desafios, como a performance (time closure), consumo (power) e o custo recorrente (cada unidade FPGA tende a ser mais cara que um ASIC).

Retornando ao mundo de sistemas embarcados, o primeiro e mais sensato ponto a considerar é avaliar se o objetivo pode ser atingindo utilizando software em conjunto com hardware genérico (PC, PC industrial, Mini PC como Raspberry ou Microcontrolador/PIC como Arduino). Se necessitar de aceleração de hardware, primeiro realizar uma pesquisa e buscar por ASSP’s (Application Specific Standard Product), SOC’s, etc. Finalmente se você não tem o que precisa no mercado, avaliar a customização de um hardware, com o foco inicial no FPGA e por último uma solução MPGA/SOG (praticamente mortas) ou ASIC (sendo esta última justificável apenas quando se estima que o produto final tenha um volume de unidades produzidas na casa dos milhares).

Projeto de Hardware: MPGA/SOG - Nesta tecnologia, os transistores já são pré-fabricados no silício (substrato), apenas a interconexão nas camadas superiores (metalização) é realizada pelo projetista.
Figura 1 –  MPGA/SOG – Nesta tecnologia, os transistores já são pré-fabricados no silício (substrato), apenas a interconexão nas camadas superiores (metalização) é realizada pelo projetista.

Finalizando este artigo e a história da detecção de fadiga, provavelmente seria possível implementar utilizando OpenCV com Raspberry e talvez alguma aceleração via Hardware (FPGA, Braincard) especificamente para o reconhecimento de padrões, neste caso os olhos do motorista na casa centésimos de segundo

Projeto de Hardware: Braincard com o processador CM1K dedicado para reconhecimento de padrões.
Figura 2 – Braincard com o processador CM1K dedicado para reconhecimento de padrões.

E você leitor, conhece alguma metodologia ou ferramenta que auxilie na definição de qual plataforma utilizar? Compartilhe sua experiência conosco.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Comentários:
Notificações
Notificar
guest
8 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Weider Oliveira duarte
Weider Duarte
20/03/2016 23:54

Olá Arles, Excelente artigo, lembra em parte uma resposta que dei a um questionamento sobre CLP vs Arduino no forum do Lab de garagem, onde segundo meu ponto de vista, são produtos com objetivos, mundos e focos diferentes, cada um muito bom se utilizado dentro daquilo ao qual é proposto, tendo em comum apenas o fato de seus núcleos serem baseados em microcontroladores. Sim, tenho um pensamento muito parecido com o seu, desenvolver um produto passa inicialmente em verificar se já não existe algo no mercado, e se existe, se tem questões de direitos autorais, custos etc. ou seja, mesmo… Leia mais »

Arles Sant Ana
Arles Santana
Reply to  Weider Duarte
25/03/2016 19:40

Weider,

Legal essa ideia do balanço da cabeça, nunca tinha pensando por este ponto. Bem concordo com você, a grande sacada do Arduino é a facilidade de programação, conjunto extenso de ferramenta e apoiadores (comunidade apaixonada).

Euclides Franco de Rezende
Euclides Rezende
22/02/2016 21:35

Onde obter mais informações sobre MPAG/SOG? Ou esta tecnologia que acessa componentes difundidos na pastilha através de conexões físicas entre eles.

Arles Sant Ana
Arles Santana
Reply to  Euclides Rezende
23/02/2016 11:02

Euclides,

Este tipo de tecnologia baseia-se em um modelo pré fabricado, ou seja está intimamente ligado a uma foundry, como mencionei no artigo está praticamente morta, para avaliar a viabilidade, você teria que contatar a Foundry que você deseja trabalhar. Uma saída intermediária em termos de custo e performance entre MPGA e FPGA seria o uso de FPGA anti-fusível.
Ainda existem outras alternativas, como desenvolver seu projeto no FPGA e depois fazer a conversão para Standard Cell, existem companhias especializadas neste processo, e no final você terá um chip sobre medida para sua necessidade.

Felipe Souza Amaral
Felipe Amaral
21/02/2016 13:19

Recentemente eu abordei o mesmo tema em uma palestra e realmente temos que avaliar oque queremos desenvolver para depois resolver qual hardware usar.

Rodrigo Araújo Cavalcante
Rodrigo Araújo Cavalcante
19/02/2016 12:52

haha, já pensei neste mesmo projeto meses atrás, mas utilizando a sua linha de raciocínio, com Raspberry PI e uma aceleração via Hardware! Muito bom o artigo, temos que avaliar o objetivo final para então poder definir o HW certo a ser utilizado.

Marcos Almeida
Lcnorm
13/05/2017 13:31

Certa vez projetei uma placa para liberação das catracas de um clube, as placas originais, que queimaram por causa de um surto na rede elétrica, utilizavam um microcontrolador.
Como o funcionamento era muito simples, utilizei dois CI’s de portas lógicas e dimensionei todo o circuito para suportar os vários tipos transientes que poderiam ocorrer naquele ambiente.
As duas placas estão funcionando há 19 anos.

Edson
Edson
Reply to  Lcnorm
21/08/2018 17:10

Ola Marcos Almeida, estou em busca de uma solução para catraca eletromecânica. Poderia me informar seus contatos ? Gostaria de conversar com você.

Meus contatos são:
E-Mail: [email protected]
Whatsapp (21) 98600-8439

Talvez você goste:

Séries

Menu