当前位置: 首页 > news >正文

大疆无人机连接Jetson主板

更新软件库

sudo apt-get update 
sudo apt-get upgrade 
sudo apt-get install automake 
sudo apt-get install libaio-dev

Opus安装

Opus 是一种开源的、免版税的音频编解码器,设计用于实时语音和音乐传输
首先下载opus的安装包,可以直接采用apt安装(推荐):

sudo apt-get install libopus-dev 

当然,也可以考虑使用源码文件安装,不用太纠结于版本,使用最新版即可:

https://github.com/xiph/opus/releases/tag/v1.5.2

在这里插入图片描述

tar -xzvf opus-1.5.1.tar.gz 
cd opus-1.3.1/ 
autoreconf -f -i 
./configure 
make -j16 
sudo make install 

检查是否安装成功,这里采用的是apt安装,其默认版本是1.3.1

 pkg-config --modversion opus

在这里插入图片描述

FFmpeg安装

sudo apt-get install ffmpeg 

或者采用源码安装

tar -zxvf ffmpeg-4.3.2.tar.gz 
./configure --enable-shared 
make && make install 

使用如下命令检验是否安装成功

# 安装完成后检查 ffmpeg 是否安装 
ffmpeg -version 

在这里插入图片描述

OpenCV、CUDA、cudNN配置

这里需要注意的是OpenCV的版本一定要在4.9以上

详情参照博主这篇博文:https://blog.csdn.net/pengxiang1998/article/details/149073838

Jetson边缘计算主板:Ubuntu 环境配置 CUDA 与 cudNN 推理环境 + OpenCV 与 C++ 进行目标分类

在这里插入图片描述

这里Jetpack的版本找不到了,但其实并不影响,只会报一个warning而已

在这里插入图片描述

安装USB配置文件

libusb-1.0-0-dev 提供了在 Linux 上直接与 USB 设备进行通信所需的开发文件,通过这个包可以实现与 USB 设备通信

sudo apt-get install libusb-1.0-0-dev 

检查内核模块

使用如下命令即可:

# 确保usb gadget和usb转串⼝的驱动都装了
# 检查 USB Gadget 相关模块 
lsmod | grep usb

在这里插入图片描述

  1. USB Gadget 相关:通常会显⽰ libcomposite 等模块(这是 USB Gadget 功能的核⼼依赖)。
  2. USB 转串⼝相关:常⻅的模块包括: usbserial:通⽤ USB 转串⼝驱动框架
    ftdi_sio:FTDI 芯片的驱动
    pl2303:Prolific PL2303 芯片的驱动
    cp210x:Silicon Labs CP210x 芯片的驱动
    ch341:沁恒
    CH340/CH341 芯片的驱动
  3. usb 转串⼝对应的设备是/dev/ttyUSB0

源码下载

将源码下载到如下地址,并将其解压,得到文件如下:

在这里插入图片描述

设置开机自启服务

设置开机自启服务:这是为了让无人机启动后既可以自动执行我们的导线追踪算法

切换到/home/laiease/Payload-SDK-master/目录下,使用root 权限将service文件安装到/etc/systemd/system⽬录下 :

sudo mv djixunxian.service /etc/systemd/system/ 

在这里插入图片描述

随后切换到/home/laiease/Payload-SDK-master/jetson-usb/,然后将如下服务文件也移动到对应位置

在这里插入图片描述

sudo mv jetsongadget.service /etc/systemd/system/

将对应的服务文件放置到系统路径下后,需要让 systemd “知道”有新的或更改的服务存在:

新建了一个服务(如 djixunxian.service)
修改了某个服务的配置文件(比如路径、启动命令、环境变量等)

# 重新加载systemd     其会让systemd 重新加载所有的服务单元配置文件(比如 .service 文件)
sudo systemctl daemon-reload   

随后执行以下几个步骤进行设置自启:

# 允许两个服务开机⾃启 
sudo systemctl enable djixunxian.service

djixunxian.service 已成功启用开机自启

在这里插入图片描述

sudo systemctl enable jetsongadget.service

jetsongadget.service 已成功启用开机自启

在这里插入图片描述

# 启动两个服务 
sudo systemctl start djixunxian.service 
sudo systemctl start jetsongadget.service 

启动完成效果如下:

在这里插入图片描述

编译startup_bulk

切换到 jetson-usb 路径

cd /home/laiease/Payload-SDK-master/jetson-usb 
make

效果如下:

在这里插入图片描述

项目编译

cd ./Payload-SDK-master 
mkdir build 
cd build 
make -j4 

重启服务,要先启动jetsongadget,然后再启动djixunxian

systemctl restart jetsongadget
systemctl restart djixunxian

检查服务状态

systemctl status djixunxian

当然,也可以使用 journalctl | grep -i dji 查看状态:

在这里插入图片描述

推理效果如下:

在这里插入图片描述

报错处理

在启动服务时报错:

Process: 11087 ExecStart=/home/laiease/Payload-SDK-master/build/bin/dji_sdk_demo_linux_cxx (code=dumped, signal=ABRT)
Main PID: 11087 (code=dumped, signal=ABRT)

在这里插入图片描述

这是由于USB_bulnk找不到导致的,当出现找不到USB0时,这是由于没有CH34驱动的,可以下载一个驱动:

git clone https://github.com/juliagoda/CH341SER.git

随后切换到CH41SER目录

然后执行make命令

在这里插入图片描述

ls /dev/ttyUSB*

在这里插入图片描述

完整的执行过程:

在这里插入图片描述

此时USBbulk便可以了

http://www.dtcms.com/a/317099.html

相关文章:

  • hive专题面试总结2
  • 疯狂星期四文案网第31天运营日记
  • GitHub Spark公共预览版上线
  • Sourcetree GIT 可视化工具安装全攻略
  • Maven补充
  • 【Linux内核系列】:信号(上)
  • HTML应用指南:利用GET请求获取全国OPPO官方授权体验店门店位置信息
  • nflsoi 8.6 题解
  • 【JavaEE】(8) 网络原理 HTTP/HTTPS
  • 使用MatterJs物理2D引擎实现重力和鼠标交互等功能,有点击事件(盒子堆叠效果)
  • GaussDB 数据库架构师修炼(六)-3 集群工具管理-主备倒换
  • CentOS7中Docker的安装与卸载
  • 8.6 CSS3rem布局
  • 聊一聊RPC接口测试工具及方法
  • 基于串口实现可扩展的硬件函数 RPC 框架(附完整 Verilog 源码)
  • 【第5话:相机模型1】针孔相机、鱼眼相机模型的介绍及其在自动驾驶中的作用及使用方法
  • 【计算机网络】王道考研笔记整理(3)数据链路层
  • 自己本地搭建的服务器怎么接公网?公网IP直连服务器方法,和只有内网IP直接映射到互联网
  • STM32 外设驱动模块二:蜂鸣器模块
  • 工控机 vs 服务器:核心区别与应用场景深度解析
  • 支持多网络协议的测试工具(postman被无视版)
  • Cortex-M MCU分散加载文件与链接文件关系
  • WebSocket 通信与 WebSocketpp 库使用指南
  • 哈尔滨云前沿-关于物理服务器
  • 计算机网络:一个 IP 地址可以同时属于 A 类、B 类或 C 类吗?
  • Anthropic MCP架构深度解析:下一代AI工具集成协议的设计哲学
  • 乱码原因、解决
  • SSL/TLS协议深度解析
  • Agent安全机制:权限控制与风险防范
  • React 表单处理:移动端输入场景下的卡顿问题与防抖优化方案