SlideShare uma empresa Scribd logo
Energia Open Source




                                    Linux UAV: Urubu




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Dissecação do projecto
     Objectivos
           UAV com vôo autónomo
           Controlo remoto, re-planning de missão em vôo, manual, por canal
           Telemetria + glass cockpit


     Requisitos
           AHRS: Attitude and Heading Reference System
           State based actuation: E = D - C
           Quantificador de actuação nas superfícies móveis: PID
           Sensores para construção da estimativa do estado
           Filtros para correcção de leituras dos sensores
           Um simulador ajuda a evitar custos duplicados (FAIL)




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Componentes




                                    Linux




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Flightdirector @ linux: Simulação
     X-Plane (www.x-plane.com)
           Funciona em Linux, Mac, Win
           “Free”


     Not a game
           Usado para R&D pela indústria: Cirrus, Cessna, CarterCopter
           Simulação aerodinâmica com qualidade
           Certificado para treino pela FAA


     Telemetria/Controlo UDP
           Profiling de execução flightdirector
           Avaliação do resultado da actuação
           Estabelecer limites seguros




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Flightdirector @ linux: Método de Simulação


                                              acquisition_sim



                                                   filter_task



                      X-Plane          ahrs                       control



                                     navigation                  mission



                                    actuator_sim                 telemetry




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Groundstation link to Flightdirector




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Full simulation




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Hardware Setup




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Radio RX Hack
     Hardware não suporta geração de sinais de controlo
     Solução: Hack radio receiver




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Análise Sinal Receiver
     Software hack




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Custom Hardware Design




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Custom Hardware Design




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Dificuldades along the way
     PID: AAARRRRRRGGGHHGHH




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Dificuldades along the way
     Extended Kalman Filter v2.0: AAARRRRRRGGGHHGHH




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Linux FlightDirector
     Familiaridade: POSIX, glibc vs HW tied libs (avrlib)
     Dev Tools: arm-gcc
     Intervenção simplificada vs firmware

     Flexibilidade
           Packaging/upgrading trivial: OpenEmbedded / buildroot (uclibc)


     OpenEmbedded: Simple, yet complex (RTFM)
           Pacotes ipk
           Suporta override de configurações (make menuconfig)
           Gera kernel image+ fs tree ou fs image (ro)
           Suporta configs para boot em removable flash (req uboot)
           Suporta > 60 arquitecturas*



terça-feira, 6 de Outubro de 2009
Energia Open Source




     OpenEmbedded Sample Build

     Quick Recipe:
           Checkout source
           Append source path to PATH
           Build ($ bitbake gumstix-basic-image)




     Custom Recipe:
           Edit menuconfig
           Tweak config files (packages, hardware specs)
           build ($ bitbake my-custom-image)




terça-feira, 6 de Outubro de 2009
Energia Open Source




     OpenEmbedded Deployment

     Multiplos ambientes deploy:
           Kernel + fs image on flash
           Kernel on flash, fs on card/ata (w/ hw, fs drivers)
           Intermediate boot: stage 1 kernel on flash, kernel + fs on card, etc



     Colecção razoavelmente grande de software/drivers
           Wired/Wireless networking
           Audio
           GFX, 3D (OpenGL ES)




terça-feira, 6 de Outubro de 2009
Energia Open Source




     OpenEmbedded URUBU (v1)
     Build conf
           MACHINE_FEATURES:flash, mmc, usb, i2c, spi, lcd, wifi, ethernet
           Modules: FEATURE_MATCH, proc/gpio, fat, ext3
           Packages: busybox


     Script boot:
     uboot$ mmcinit
     uboot$ setenv bootargs console=ttyS0,115200n8 rootdelay=1 root=/dev/mmcblk0p2
     uboot$ fatload mmc 0 a2000000 uimage
     uboot$ bootm a2000000


     Install:
     $ bitbake -c gumstix-custom-basix
     $ cd /media/rootfs
     $ sudo tar -zxf $GUMSTIXOE/tmp/deploy/glibc/images/gumstix-custom-basix/Angstrom-gumstix-basic-image-
     glibc-ipk-2007.9-test-20090913-gumstix-custom-basix.rootfs.tar.gz
     $ cd $GUMSTIXOE/tmp/deploy/glibc/images
     $ cp uImage-2.6.21-r1-gumstix-custom-basix.bin /media/KERNEL/uImage




terça-feira, 6 de Outubro de 2009
Energia Open Source




     OpenEmbedded URUBU FS Tree




terça-feira, 6 de Outubro de 2009
Energia Open Source




     Check these out

     Electrónica
           Sparkfun, Analog Devices, ATMEL/Arduino, Gumstix


     DSP
           Kalman Filtering, Runge-Kutta Integration, PID, DCM, Quaternions


     Software
           OpenEmbedded, buildroot.uclibc.org, AVRlib, Arduino IDE




terça-feira, 6 de Outubro de 2009
Energia Open Source




                                    ?


terça-feira, 6 de Outubro de 2009

Mais conteúdo relacionado

Destaque

Tapajos ebook
Tapajos ebookTapajos ebook
Tapajos ebook
Lucris Morais da Silva
 
Cartilha "Complexo Tapajós"
Cartilha "Complexo Tapajós"Cartilha "Complexo Tapajós"
Cartilha "Complexo Tapajós"
Frente em defesa da amazonia
 
Belém do Pará: a cidade do ver-o-peso, do urubu e tacacá
Belém do Pará: a cidade do ver-o-peso, do urubu e tacacáBelém do Pará: a cidade do ver-o-peso, do urubu e tacacá
Belém do Pará: a cidade do ver-o-peso, do urubu e tacacá
Breados Online
 
Cerâmica tapajônica
Cerâmica tapajônicaCerâmica tapajônica
Cerâmica tapajônica
Portal do Vestibulando
 
Guerras e rebeliões indígenas do século xviii
Guerras e rebeliões indígenas do século xviiiGuerras e rebeliões indígenas do século xviii
Guerras e rebeliões indígenas do século xviii
Portal do Vestibulando
 
Amazônia indígena nos séculos xvi e xvii
Amazônia indígena nos séculos xvi e xviiAmazônia indígena nos séculos xvi e xvii
Amazônia indígena nos séculos xvi e xvii
Portal do Vestibulando
 
Amazônia indigena nos séc. xvi e xvii
Amazônia indigena nos séc. xvi e xviiAmazônia indigena nos séc. xvi e xvii
Amazônia indigena nos séc. xvi e xvii
Portal do Vestibulando
 
TRAÇOS MARAJOARAS E TAPAJONICOS
TRAÇOS MARAJOARAS E TAPAJONICOSTRAÇOS MARAJOARAS E TAPAJONICOS
TRAÇOS MARAJOARAS E TAPAJONICOS
arliscoimbra
 
Aula de artes indigena
Aula de artes indigenaAula de artes indigena
Aula de artes indigena
Janete Garcia de Freitas
 

Destaque (10)

Gnu linux3
Gnu linux3Gnu linux3
Gnu linux3
 
Tapajos ebook
Tapajos ebookTapajos ebook
Tapajos ebook
 
Cartilha "Complexo Tapajós"
Cartilha "Complexo Tapajós"Cartilha "Complexo Tapajós"
Cartilha "Complexo Tapajós"
 
Belém do Pará: a cidade do ver-o-peso, do urubu e tacacá
Belém do Pará: a cidade do ver-o-peso, do urubu e tacacáBelém do Pará: a cidade do ver-o-peso, do urubu e tacacá
Belém do Pará: a cidade do ver-o-peso, do urubu e tacacá
 
Cerâmica tapajônica
Cerâmica tapajônicaCerâmica tapajônica
Cerâmica tapajônica
 
Guerras e rebeliões indígenas do século xviii
Guerras e rebeliões indígenas do século xviiiGuerras e rebeliões indígenas do século xviii
Guerras e rebeliões indígenas do século xviii
 
Amazônia indígena nos séculos xvi e xvii
Amazônia indígena nos séculos xvi e xviiAmazônia indígena nos séculos xvi e xvii
Amazônia indígena nos séculos xvi e xvii
 
Amazônia indigena nos séc. xvi e xvii
Amazônia indigena nos séc. xvi e xviiAmazônia indigena nos séc. xvi e xvii
Amazônia indigena nos séc. xvi e xvii
 
TRAÇOS MARAJOARAS E TAPAJONICOS
TRAÇOS MARAJOARAS E TAPAJONICOSTRAÇOS MARAJOARAS E TAPAJONICOS
TRAÇOS MARAJOARAS E TAPAJONICOS
 
Aula de artes indigena
Aula de artes indigenaAula de artes indigena
Aula de artes indigena
 

Semelhante a Urubu: Linux UAV

Desenvolvendo aplicações Web escaláveis com PHP
Desenvolvendo aplicações Web escaláveis com PHPDesenvolvendo aplicações Web escaláveis com PHP
Desenvolvendo aplicações Web escaláveis com PHP
Elton Minetto
 
Impressoes apos 2 dias utilizando o ubuntu io t com raspberry pi
Impressoes apos 2 dias utilizando o ubuntu io t com raspberry piImpressoes apos 2 dias utilizando o ubuntu io t com raspberry pi
Impressoes apos 2 dias utilizando o ubuntu io t com raspberry pi
Marcos Aurelio Barranco
 
Funtoo Gnu/Linux: Customização ao extremo
Funtoo Gnu/Linux: Customização ao extremoFuntoo Gnu/Linux: Customização ao extremo
Funtoo Gnu/Linux: Customização ao extremo
Daniel
 
Funtoo escla
Funtoo esclaFuntoo escla
Funtoo escla
Daniel
 
Instalação e Configuração do Hipervisor xen pvm
Instalação e Configuração do Hipervisor xen pvmInstalação e Configuração do Hipervisor xen pvm
Instalação e Configuração do Hipervisor xen pvm
Fernando Pessoa
 
Linux4all#2
Linux4all#2Linux4all#2
Linux4all#2
Daniel
 
Tutorial: Instalação de Ubuntu em uma Gumstix Overo
Tutorial: Instalação de Ubuntu em uma Gumstix OveroTutorial: Instalação de Ubuntu em uma Gumstix Overo
Tutorial: Instalação de Ubuntu em uma Gumstix Overo
Lab. de Sistemas Embarcados Críticos - ICMC/USP
 
Minicurso GNU/Linux
Minicurso GNU/LinuxMinicurso GNU/Linux
Minicurso GNU/Linux
Khayla Elias dos Santos
 
Docker na vida real
Docker na vida realDocker na vida real
Docker na vida real
Fernando Ike
 
Criando sua própria nuvem com Raspberry Pi
Criando sua própria nuvem com Raspberry PiCriando sua própria nuvem com Raspberry Pi
Criando sua própria nuvem com Raspberry Pi
Daniel Rodrigues de Sousa
 
Bloco1 parte4 experiencia_da_ufal
Bloco1 parte4 experiencia_da_ufalBloco1 parte4 experiencia_da_ufal
Bloco1 parte4 experiencia_da_ufal
Dafmet Ufpel
 
Mini-curso CUDA
Mini-curso CUDAMini-curso CUDA
Mini-curso CUDA
Deivid Martins
 
GSoC tcptest - TCP/IP Regression Test
GSoC tcptest - TCP/IP Regression TestGSoC tcptest - TCP/IP Regression Test
GSoC tcptest - TCP/IP Regression Test
Victor Hugo Bilouro
 
Afinal, o que é Docker? (Meetup Laravel #12)
Afinal, o que é Docker? (Meetup Laravel #12)Afinal, o que é Docker? (Meetup Laravel #12)
Afinal, o que é Docker? (Meetup Laravel #12)
Wellington Silva
 
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Jeronimo Zucco
 
Amazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenhoAmazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenho
Amazon Web Services LATAM
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardo
Fabio Telles Rodriguez
 
Construindo um data warehouse com Pentaho e Docker
Construindo um data warehouse com Pentaho e DockerConstruindo um data warehouse com Pentaho e Docker
Construindo um data warehouse com Pentaho e Docker
Wellington Marinho
 
Gerência de redes utilizando o cacti
Gerência de redes utilizando o cactiGerência de redes utilizando o cacti
Gerência de redes utilizando o cacti
IsraelCunha
 
Programação de Kits Lego NXT usando Linguagem Gráfica Nativa (ou NXT-G)
Programação de Kits Lego NXT usando Linguagem Gráfica Nativa (ou NXT-G)Programação de Kits Lego NXT usando Linguagem Gráfica Nativa (ou NXT-G)
Programação de Kits Lego NXT usando Linguagem Gráfica Nativa (ou NXT-G)
Fernando Passold
 

Semelhante a Urubu: Linux UAV (20)

Desenvolvendo aplicações Web escaláveis com PHP
Desenvolvendo aplicações Web escaláveis com PHPDesenvolvendo aplicações Web escaláveis com PHP
Desenvolvendo aplicações Web escaláveis com PHP
 
Impressoes apos 2 dias utilizando o ubuntu io t com raspberry pi
Impressoes apos 2 dias utilizando o ubuntu io t com raspberry piImpressoes apos 2 dias utilizando o ubuntu io t com raspberry pi
Impressoes apos 2 dias utilizando o ubuntu io t com raspberry pi
 
Funtoo Gnu/Linux: Customização ao extremo
Funtoo Gnu/Linux: Customização ao extremoFuntoo Gnu/Linux: Customização ao extremo
Funtoo Gnu/Linux: Customização ao extremo
 
Funtoo escla
Funtoo esclaFuntoo escla
Funtoo escla
 
Instalação e Configuração do Hipervisor xen pvm
Instalação e Configuração do Hipervisor xen pvmInstalação e Configuração do Hipervisor xen pvm
Instalação e Configuração do Hipervisor xen pvm
 
Linux4all#2
Linux4all#2Linux4all#2
Linux4all#2
 
Tutorial: Instalação de Ubuntu em uma Gumstix Overo
Tutorial: Instalação de Ubuntu em uma Gumstix OveroTutorial: Instalação de Ubuntu em uma Gumstix Overo
Tutorial: Instalação de Ubuntu em uma Gumstix Overo
 
Minicurso GNU/Linux
Minicurso GNU/LinuxMinicurso GNU/Linux
Minicurso GNU/Linux
 
Docker na vida real
Docker na vida realDocker na vida real
Docker na vida real
 
Criando sua própria nuvem com Raspberry Pi
Criando sua própria nuvem com Raspberry PiCriando sua própria nuvem com Raspberry Pi
Criando sua própria nuvem com Raspberry Pi
 
Bloco1 parte4 experiencia_da_ufal
Bloco1 parte4 experiencia_da_ufalBloco1 parte4 experiencia_da_ufal
Bloco1 parte4 experiencia_da_ufal
 
Mini-curso CUDA
Mini-curso CUDAMini-curso CUDA
Mini-curso CUDA
 
GSoC tcptest - TCP/IP Regression Test
GSoC tcptest - TCP/IP Regression TestGSoC tcptest - TCP/IP Regression Test
GSoC tcptest - TCP/IP Regression Test
 
Afinal, o que é Docker? (Meetup Laravel #12)
Afinal, o que é Docker? (Meetup Laravel #12)Afinal, o que é Docker? (Meetup Laravel #12)
Afinal, o que é Docker? (Meetup Laravel #12)
 
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
 
Amazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenhoAmazon EC2 boas praticas e otimizações de desempenho
Amazon EC2 boas praticas e otimizações de desempenho
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardo
 
Construindo um data warehouse com Pentaho e Docker
Construindo um data warehouse com Pentaho e DockerConstruindo um data warehouse com Pentaho e Docker
Construindo um data warehouse com Pentaho e Docker
 
Gerência de redes utilizando o cacti
Gerência de redes utilizando o cactiGerência de redes utilizando o cacti
Gerência de redes utilizando o cacti
 
Programação de Kits Lego NXT usando Linguagem Gráfica Nativa (ou NXT-G)
Programação de Kits Lego NXT usando Linguagem Gráfica Nativa (ou NXT-G)Programação de Kits Lego NXT usando Linguagem Gráfica Nativa (ou NXT-G)
Programação de Kits Lego NXT usando Linguagem Gráfica Nativa (ou NXT-G)
 

Último

Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
WELITONNOGUEIRA3
 
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Gabriel de Mattos Faustino
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
joaovmp3
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
Momento da Informática
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
Faga1939
 
ATIVIDADE 1 - ADSIS - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ADSIS - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ADSIS - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ADSIS - ESTRUTURA DE DADOS II - 52_2024.docx
2m Assessoria
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
Danilo Pinotti
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 

Último (10)

Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
 
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
 
ATIVIDADE 1 - ADSIS - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ADSIS - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ADSIS - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ADSIS - ESTRUTURA DE DADOS II - 52_2024.docx
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 

Urubu: Linux UAV

  • 1. Energia Open Source Linux UAV: Urubu terça-feira, 6 de Outubro de 2009
  • 2. Energia Open Source Dissecação do projecto Objectivos UAV com vôo autónomo Controlo remoto, re-planning de missão em vôo, manual, por canal Telemetria + glass cockpit Requisitos AHRS: Attitude and Heading Reference System State based actuation: E = D - C Quantificador de actuação nas superfícies móveis: PID Sensores para construção da estimativa do estado Filtros para correcção de leituras dos sensores Um simulador ajuda a evitar custos duplicados (FAIL) terça-feira, 6 de Outubro de 2009
  • 3. Energia Open Source Componentes Linux terça-feira, 6 de Outubro de 2009
  • 4. Energia Open Source Flightdirector @ linux: Simulação X-Plane (www.x-plane.com) Funciona em Linux, Mac, Win “Free” Not a game Usado para R&D pela indústria: Cirrus, Cessna, CarterCopter Simulação aerodinâmica com qualidade Certificado para treino pela FAA Telemetria/Controlo UDP Profiling de execução flightdirector Avaliação do resultado da actuação Estabelecer limites seguros terça-feira, 6 de Outubro de 2009
  • 5. Energia Open Source Flightdirector @ linux: Método de Simulação acquisition_sim filter_task X-Plane ahrs control navigation mission actuator_sim telemetry terça-feira, 6 de Outubro de 2009
  • 6. Energia Open Source Groundstation link to Flightdirector terça-feira, 6 de Outubro de 2009
  • 7. Energia Open Source Full simulation terça-feira, 6 de Outubro de 2009
  • 8. Energia Open Source Hardware Setup terça-feira, 6 de Outubro de 2009
  • 9. Energia Open Source Radio RX Hack Hardware não suporta geração de sinais de controlo Solução: Hack radio receiver terça-feira, 6 de Outubro de 2009
  • 10. Energia Open Source Análise Sinal Receiver Software hack terça-feira, 6 de Outubro de 2009
  • 11. Energia Open Source Custom Hardware Design terça-feira, 6 de Outubro de 2009
  • 12. Energia Open Source Custom Hardware Design terça-feira, 6 de Outubro de 2009
  • 13. Energia Open Source Dificuldades along the way PID: AAARRRRRRGGGHHGHH terça-feira, 6 de Outubro de 2009
  • 14. Energia Open Source Dificuldades along the way Extended Kalman Filter v2.0: AAARRRRRRGGGHHGHH terça-feira, 6 de Outubro de 2009
  • 15. Energia Open Source Linux FlightDirector Familiaridade: POSIX, glibc vs HW tied libs (avrlib) Dev Tools: arm-gcc Intervenção simplificada vs firmware Flexibilidade Packaging/upgrading trivial: OpenEmbedded / buildroot (uclibc) OpenEmbedded: Simple, yet complex (RTFM) Pacotes ipk Suporta override de configurações (make menuconfig) Gera kernel image+ fs tree ou fs image (ro) Suporta configs para boot em removable flash (req uboot) Suporta > 60 arquitecturas* terça-feira, 6 de Outubro de 2009
  • 16. Energia Open Source OpenEmbedded Sample Build Quick Recipe: Checkout source Append source path to PATH Build ($ bitbake gumstix-basic-image) Custom Recipe: Edit menuconfig Tweak config files (packages, hardware specs) build ($ bitbake my-custom-image) terça-feira, 6 de Outubro de 2009
  • 17. Energia Open Source OpenEmbedded Deployment Multiplos ambientes deploy: Kernel + fs image on flash Kernel on flash, fs on card/ata (w/ hw, fs drivers) Intermediate boot: stage 1 kernel on flash, kernel + fs on card, etc Colecção razoavelmente grande de software/drivers Wired/Wireless networking Audio GFX, 3D (OpenGL ES) terça-feira, 6 de Outubro de 2009
  • 18. Energia Open Source OpenEmbedded URUBU (v1) Build conf MACHINE_FEATURES:flash, mmc, usb, i2c, spi, lcd, wifi, ethernet Modules: FEATURE_MATCH, proc/gpio, fat, ext3 Packages: busybox Script boot: uboot$ mmcinit uboot$ setenv bootargs console=ttyS0,115200n8 rootdelay=1 root=/dev/mmcblk0p2 uboot$ fatload mmc 0 a2000000 uimage uboot$ bootm a2000000 Install: $ bitbake -c gumstix-custom-basix $ cd /media/rootfs $ sudo tar -zxf $GUMSTIXOE/tmp/deploy/glibc/images/gumstix-custom-basix/Angstrom-gumstix-basic-image- glibc-ipk-2007.9-test-20090913-gumstix-custom-basix.rootfs.tar.gz $ cd $GUMSTIXOE/tmp/deploy/glibc/images $ cp uImage-2.6.21-r1-gumstix-custom-basix.bin /media/KERNEL/uImage terça-feira, 6 de Outubro de 2009
  • 19. Energia Open Source OpenEmbedded URUBU FS Tree terça-feira, 6 de Outubro de 2009
  • 20. Energia Open Source Check these out Electrónica Sparkfun, Analog Devices, ATMEL/Arduino, Gumstix DSP Kalman Filtering, Runge-Kutta Integration, PID, DCM, Quaternions Software OpenEmbedded, buildroot.uclibc.org, AVRlib, Arduino IDE terça-feira, 6 de Outubro de 2009
  • 21. Energia Open Source ? terça-feira, 6 de Outubro de 2009