Compartilhamento de tecnologia

Ubuntu compila firmware PX4

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Prefácio

Se você quiser compilar o firmware PX4 sozinho, precisará de um compilador cruzado. O compilador cruzado pode. arquitetura x86 Os programas escritos na plataforma são compilados e compilados, e os arquivos executáveis ​​compilados podem ser usadosarquitetura de braço na plataforma.

Esta compilação é baseada em px4 v1.13.2 Por exemplo.
Minha configuração é a seguinte:
Máquina virtual Ubuntu 18.04 (memória de execução 4G, memória de disco rígido 80G), compilador cruzado arm-none-eabi-gcc

Preparar

  • Baixe o código fonte:
sudo apt-get install git  # 安装git
git clone https://github.com/PX4/PX4-Autopilot.git
mv PX4-Autopilot PX4_Firmware  # 更改目录名
cd PX4_Firmware
git checkout -b dev v1.13.2  # 切换版本
git submodule update --init --recursive   # 更新下载子模块
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

Se o download for lento, você pode baixá-lo do disco de rede ou baixá-lo do grupo QQ (961297255)
Link: https://pan.baidu.com/s/1eNB9dWlKoVmRMAYsSPI0vw
Código de extração: s8uh

  • Instale dependências e compilador cruzado arm-none-eabi-gcc
sudo apt-get install libjpeg8-dev
cd ~/PX4_Firmware/Tools/setup
./ubuntu.sh --no-sim-tools # 大概要几分钟,跟个人网络情况而定
# 这是官方提供的脚本 有两个可选参数
# --no-sim-tools   不安装仿真环境
# --no-nuttx   不安装交叉编译环境
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

Insira a descrição da imagem aqui

O motivo do erro na imagem acima é que o script shell não possui permissões executáveis ​​​​(esse erro pode ocorrer se você usar o arquivo que forneci). Execute o seguinte comando, conceda permissões executáveis ​​​​e execute:

chmod +x ubuntu.sh
./ubuntu.sh --no-sim-tools
  • 1
  • 2

O resultado da execução do script é mostrado na figura abaixo:
Insira a descrição da imagem aqui

  • Reinicie o Ubuntu e teste o compilador cruzado
arm-none-eabi-gcc --version
  • 1

Insira a descrição da imagem aqui

compilar

Nota: O sufixo _default é opcional. Por exemplo, usar px4_fmu-v5 e px4_fmu-v5_default é o mesmo.

A imagem abaixo mostra as versões de firmware suportadas pela placa de controle de vôo:
Insira a descrição da imagem aqui

Use o seguinte comando para visualizar o firmware que suporta compilação:

cd ~/PX4_Firmware/
make list_config_targets
  • 1
  • 2

Insira a descrição da imagem aqui

Aqui tomamos Pixhwak4 como exemplo

make px4_fmu-v5_default
  • 1

O resultado é mostrado na figura abaixo,A caixa vermelha é a pasta onde o firmware compilado está localizado
Insira a descrição da imagem aqui

Para gravar, você pode usar QGC ou usar o seguinte comando

make px4_fmu-v4_default upload
  • 1

referir-se

Ambiente de desenvolvimento para Ubuntu LTS/Debian Linux Guia (principal)
Compilar software PX4 | Guia PX4 (principal)

Se você tiver alguma outra dúvida ou encontrar erros no artigo, deixe uma mensagem na área de comentários
Continue aprendendo!