Pergunta

Estou apenas começando a projetar alguns dispositivos embarcados e estou procurando recursos.

O que eu quero fazer é conectar um receptor GPS a um computador leve SBC ou mini-ITX, baseado em x86, e rastrear a localização/progresso de um veículo controlado remotamente.

Idealmente, isso poderia se transformar na construção de alguns veículos semi-autônomos como hobby.

Mas preciso começar com uma placa de desenvolvimento para programação GPS.

Quais placas/pacotes você usou e onde posso encontrar desenvolvimento [de preferência de código aberto] para eles?

Foi útil?

Solução

OpenEmbedded é um bom lugar para começar.Muitos produtos embarcados usam ARM e outros processadores, portanto a compilação cruzada é um grande negócio. Raiz de construção é outro recurso para construir kernels Linux personalizados para sistemas pequenos.

Você também pode encontrar muitos fabricantes com computadores de placa única (SBCs) que possuem ferramentas para fazer o que você deseja - faça uma pesquisa no Google por "SBC Linux" e você deverá ter uma mina de ouro.

Dispositivos Linux acompanha a comunidade Linux embarcada e você deve encontrar vários artigos bons que levam você a produtos ou softwares para ajudá-lo.

O Debian tem uma versão incorporada, mas ainda não explorei isso.

Existem vários livros sobre Linux embarcado disponível se você quiser seguir esse caminho.

O receptor GPS simplesmente se conecta a uma porta serial ou USB e apresenta um fluxo de dados NMEA, que você pode analisar com o GPSD e vários programas podem acessá-lo através do GPSD.É um formato baseado em texto muito simples.

Usei placas-mãe normais de PC e processadores Atmel AT91 para sistemas embarcados (com GPS, celular, etc).Há muita informação por aí agora e não é caro obtê-la.Se eu fosse iniciar um novo projeto, daria uma olhada nos processadores AVR32 da Atmel - eles são muito amigáveis ​​para amadores e fornecem muito suporte da comunidade para Linux na arquitetura AVR32.Eles fornecem compiladores GCC gratuitos e estruturas e exemplos significativos se você quiser seguir o caminho sem sistema operacional e ter um único programa em execução no processador também.

Boa sorte!

-Adão

Outras dicas

“NMEA” é a palavra-chave a ser pesquisada ao procurar esse material.Embora eu não tenha feito nada com isso há muito, muito tempo, aqui está uma boa fonte para algumas placas e outros hardwares:

http://www.sparkfun.com/commerce/categories.php?c=4

Tivemos boa sorte com os receptores GPS Holux (projetados para Samsung q1).Uma conexão muito simples pela porta serial e você pode ler a string NMEA.

Qual sistema operacional você está almejando?Se for Linux, existem muitas bibliotecas GPS disponíveis (aqui está uma boa lista). GPSd e GPSDrive são dois dos mais populares que já vi.

Não vi nenhum dispositivo GPS específico para uso leve/embutido, mas muitos dos dispositivos GPS de consumo têm conexões USB disponíveis que provavelmente poderiam funcionar (cuidado com os de baixo custo, eles geralmente não possuem interface de computador).

Sugiro começar com um projeto C simples e antigo que lê e analisa NMEA de uma porta serial.Você pode fazer isso no Windows ou Linux.

Normalmente divido qualquer projeto como este em um conjunto de projetos menores, como:

  1. Leia e analise o NMEA da porta serial
  2. Estabeleça um link serial / de rede do dispositivo remoto para o servidor do sistema de rastreamento
  3. integrar os componentes

A Wikipedia tem um bom artigo sobre o NMEA protocolo.Como Adam aponta, na verdade é muito simples.

A revista Circuit Cellar também costuma apresentar projetos como esse.
Dependendo do que você deseja fazer, há vários tamanhos de alvo a serem considerados.Use o Atmel AVR para pequenos itens de baixo consumo de energia (bateria).Talvez eu use Linux em um laptop antigo se eu apenas quiser definir o conceito e precisar de WiFi (ou celular) para internet.

O protótipo Linux do laptop poderia então ser reduzido e portado para um sistema Cinux incorporado para menor uso da bateria e portabilidade posteriormente.(embora não tão baixo quanto Atmel).

Se você se sente confortável com programação em Linux, eu recomendaria a linha de computadores pequenos Gumstix - http://www.gumstix.com/

Você pode emparelhar a placa-mãe vedex com a placa de expansão GPSstix para criar um pequeno receptor GPS com um ambiente de programação bem suportado.

Eu sugiro GPSBabel para se comunicar com seu receptor GPS.

GPSBabel

  • Lida com waypoints, trilhas e rotas,
  • Conhece muitos formatos (isso explica o nome Babel),
  • Funciona em Windows, Linux, OSX,
  • Livre.

Algumas pessoas aqui sugeriram dispositivos como o gumstix – dispositivos incorporados que custam US$ 149 sem GPS.Eu não entendo essa parte.Um TomTom pronto para uso vem com Linux em ARM, GPS integrado, muito flash, bateria e tela.É difícil superar a vantagem de preço que acompanha a produção em massa.Para o seu projeto de hobby, o mapa incluído não é necessário, mas quem se importa?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top