[RDK X5][001]初见地瓜机器人RDK X5:配置与简单测试

张开发
2026/4/14 17:42:31 15 分钟阅读

分享文章

[RDK X5][001]初见地瓜机器人RDK X5:配置与简单测试
目录一、SD卡烧录二、远程连接2.1 串口连接2.2 WiFi连接2.3 SSH连接三、环境配置3.1 VNC Server配置3.1.1 VNC密码配置3.1.2 VNC自启动3.1.3 VNC远程连接3.1.4 卡顿问题3.2 ROS2安装四、程序测试4.1 小海龟仿真4.2 相机启动和图像获取五、常用命令六、相关文章、软件下载链接叠甲本文纯个人使用体验非官方品质一、SD卡烧录地瓜开发者社区首页 (d-robotics.cc)https://developer.d-robotics.cc/在地瓜开发者社区内选择rdk_x5的桌面版镜像下载到电脑解压。Index of /downloads/os_images/3.0.0/rdk_x5/release/ (d-robotics.cc)https://archive.d-robotics.cc/downloads/os_images/rdk_x5/rdk_os_3.0.0-2024-09-29/release/解压完成后以管理员身份打开PC端启动盘制作工具balenaEtcher点击跳转到下载链接选择“从文件中烧录”选择刚下载好的img文件接着选择磁盘目标为SD卡对应盘符完成后点击“现在烧录!”等待烧录完成。管理员身份运行是为了防止出现烧录过程中出现“镜像文件损坏”这类问题。烧录完成后在x5不插电的情况下将烧录好的SD卡插值板卡底部的卡槽再上电。上电后指示灯状态绿色指示灯常亮硬件上电正常地瓜黄指示灯常亮上面的接口中靠近边缘的为PWR电源接口中间接口为USB 3.0 TYPE-CUSB Device模式用于连接主机实现ADB、Fastboot、系统烧录等功能这应该就是RDKx5板子首创的“闪连一下”功能的接口需要配合RDK Studio使用右侧Micro USB接口为调试用串口后面的远程连接操作需要用到它。链接RDK X5产品说明RDK_X5_Product_Brief (d-robotics.cc)https://archive.d-robotics.cc/downloads/hardware/rdk_x5/1.1.2 RDK X5 | RDK DOC (d-robotics.cc)https://developer.d-robotics.cc/rdk_doc/Quick_start/hardware_introduction/rdk_x5二、远程连接2.1 串口连接由于手边没有显示屏能直接连接到板子的HDMI接口因此选择远程连接操作。在没有/不使用网线的情况下通过USB-Micro USB线连接PC和RDK在PC端设备管理器中查看是否连接成功。根据设备连接的串口号这里为COM6打开MobaXterm 点此跳转下载点击左上角“Session”选择“Serial”配置串口号为COM6根据实际情况选择波特率选择115200其他设置如下图。配置完成后“OK”即可此时出现串口连接的窗口输入账号“sunrise”密码“sunrise”窗口中不可见回车则成功进入系统2.2 WiFi连接进入系统后通过命令ifconfig查询当前板卡的IP地址可以知道该镜像的静态IP地址为192.168.127.10后续可通过该IP进行有线连接。通过如下命令连接WiFi。sudo wifi_connect wifi账号 wifi密码这一代的板卡网络连接速度明显快了不少成功连接后查看wlan0端的IP地址[host_IP]这里为192.168.137.38。2.3 SSH连接根据前面得到的动态IP地址host_IP进行无线SSH连接静态IP地址为通过网线的有线连接。在MobaXterm的“Session”窗口中选择“SSH”输入对应host_IP即可。点击“OK”后正常会弹出首次登录提醒“Accept”即可。接着同样在窗口中输入账号(sunrise)、密码(sunrise)即可成功进入系统。三、环境配置通过命令lsb_release -a查看当前Linux版本本文所烧录的官方镜像中Linux版本信息如下。同时镜像中已存在lightdm版本为1.30.0-0ubuntu5也存在x11vnc版本为0.9.16-8python版本为3.10.12。3.1 VNC Server配置3.1.1 VNC密码配置虽然镜像安装了VNC服务但此时VNC服务默认并未开启需要开启VNC服务才能通过VNC远程连接到RDK桌面。通过命令find / -name x11vnc.service查找到vnc服务文件路径。官方镜像中文件所在位置为/usr/lib/systemd/system/x11vnc.service接着通过cat获取x11vnc.service的内容。sudo cat /usr/lib/systemd/system/x11vnc.serviceGNU nano 6.2 /usr/lib/systemd/system/x11vnc.service [Unit] DescriptionStart x11vnc at startup. Aftermulti-user.target [Service] Typesimple ExecStart/usr/bin/x11vnc -auth guess -forever -loop -capslock -nomodtweak -noxdamage -repeat -rfbauth /etc/.vnc/passwd -rfbport 5900 -shared [Install] WantedBymulti-user.target在得到的结果中[Service]部分ExecStart中-rfbport为5900即端口为5900而-rfbauth为/etc/.vnc/passwd即vnc服务的登录密码存储在该文件中而这个已存在的文件是通过root用户创建的因此通过命令sudo -i进入root用户才有权限修改该文件通过如下命令修改vnc登录密码输入确认这里设置为sunrise完成后会自动生成加密文件/etc/.vnc/passwd。vncpasswd /etc/.vnc/passwd3.1.2 VNC自启动●参考链接【AI达人创造营三期】在地平线X3上部署车牌识别系统-CSDN博客1重载需输入一次用户密码systemctl daemon-reload2使能需输入两次用户密码systemctl enable x11vnc.service3开启需输入一次用户密码systemctl start x11vnc.service启动完成之后使用命令status可以查看当前vnc状态 可以看到第一行图标为●如果是x则说明启动未成功需根据状态信息确定问题。systemctl status x11vnc.service● x11vnc.service - Start x11vnc at startup. Loaded: loaded (/lib/systemd/system/x11vnc.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2024-09-23 00:32:27 CST; 3s ago Main PID: 11830 (x11vnc) Tasks: 2 (limit: 3175) Memory: 3.3M CPU: 648ms CGroup: /system.slice/x11vnc.service ├─11830 /usr/bin/x11vnc -auth guess -forever -loop -capslock -nomodtweak -noxdamage -repeat -rfbauth /root/.vnc/passwd -rfbport 5900 -shared └─11837 /usr/bin/x11vnc -auth guess -forever -loop -capslock -nomodtweak -noxdamage -repeat -rfbauth /root/.vnc/passwd -rfbport 5900 -shared这里vnc自启动后会开启两个vnc服务不确定是什么问题。3.1.3 VNC远程连接最后即可在PC端通过VNC软件连接输入IP地址根据提示输入密码即可进入系统桌面。3.1.4 卡顿问题但是上手发现此时的桌面端操作非常卡顿这可能和板卡没有连接到实际的显示屏有关因为有可能RDK X5在没有接显示屏时板载显卡会降频软件上的解决办法就是安装虚拟显示屏。Xorg是Linux和Unix系统中图形用户界面(GUI)的基础Xorg提供了底层的图形功能如窗口管理、图形设备驱动程序和网络协议等。AI检索结果●参考链接解决远程桌面VNC卡顿问题_vnc很卡-CSDN博客1首先安装xorg最底层核心core-hwe和驱动程序dummy。sudo apt-get install xserver-xorg-core-hwe-18.04 sudo apt-get install xserver-xorg-video-dummy-hwe-18.042接着需要找到Xorg的配置文件。X5镜像中配置文件位于/etc/X11/xorg.conf.d/文件夹下。由于镜像中一共有5个配置文件因此这里直接暴力一点将原有的.conf配置文件失能即sudo mv /etc/X11/xorg.conf.d/xorg_dsi_ignore.conf /etc/X11/xorg.conf.d/xorg_dsi_ignore.conf.disable sudo mv /etc/X11/xorg.conf.d/10-disable-screensaver.conf /etc/X11/xorg.conf.d/10-disable-screensaver.conf.disable sudo mv /etc/X11/xorg.conf.d/1-resolution.conf /etc/X11/xorg.conf.d/1-resolution.conf.disable这样三个文件的后缀都被修改为.conf.disableX服务器就无法读取这些配置。接着参考上面的参考文章设置开机生成虚拟屏幕。sudo nano /etc/X11/xorg.conf.d/xorg.conf #新建配置文件xorg.conf在文件中填入如下内容接着CtrlO保存并回车确认路径CtrlX退出。Section Device Identifier dummy_videocard Option NoDDC true Option IgnoreEDID true Driver dummy VideoRam 524288 EndSection Section Monitor Identifier dummy_monitor Modeline 1920x1440 69.47 1920 1960 2152 2384 1440 1441 1444 1457 Modeline 1920x1200 26.28 1920 1952 2048 2080 1200 1229 1231 1261 Modeline 1920x1080 23.53 1920 1952 2040 2072 1080 1106 1108 1135 Modeline 1024x600_60.00 49.00 1024 1072 1168 1312 600 603 613 624 HorizSync 5.0 - 1000.0 VertRefresh 5.0 - 1000.0 EndSection Section Screen Identifier dummy_screen Device dummy_videocard Monitor dummy_monitor DefaultDepth 24 SubSection Display Depth 24 Modes 1920x1440 1920x1200 1920x1080 1024x600_60.00 # Not sure why, but 3440x1440 wont work when the Virtual is set to 3840 2160 # However it will complain in the Xorg.log when you didnt comment out the 3840x2160 resolution at the top Virtual 1920 1440 EndSubSection EndSection修改完成后可以通过cat命令查看此时配置文件的内容。sudo cat /etc/X11/xorg.conf.d/xorg.conf确认修改成功后更新X服务器同时可以查看vnc服务是否正常。sudo systemctl restart lightdm systemctl status x11vnc.service重新启动板卡在PC端通过RealVNC Viewer远程连接X5进入桌面之后可以看到屏幕比例变化同时操作不再卡顿查看设置中的显示设置可以发现屏幕分辨率确实改为了我们在板卡中设置的1920*1440同时也可以在此处自行设置其他分辨率。3.2 ROS2安装RDK X5镜像自带humble版本ROS2和humble版本的TogetherROS可跳过此步骤。ROS2安装方法 - ROS2入门教程 (guyuehome.com)https://book.guyuehome.com/ROS2/1.%E7%B3%BB%E7%BB%9F%E6%9E%B6%E6%9E%84/1.3_ROS2%E5%AE%89%E8%A3%85%E6%96%B9%E6%B3%95/1设置编码sudo apt update sudo apt install locales sudo locale-gen en_US en_US.UTF-8 sudo update-locale LC_ALLen_US.UTF-8 LANGen_US.UTF-8 export LANGen_US.UTF-82添加源sudo apt update sudo apt install curl gnupg lsb-release sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg echo deb [arch$(dpkg --print-architecture) signed-by/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release echo $UBUNTU_CODENAME) main | sudo tee /etc/apt/sources.list.d/ros2.list /dev/null3安装ROS2sudo apt update sudo apt upgrade sudo apt install ros-humble-desktop4设置环境变量source /opt/ros/humble/setup.bash echo source /opt/ros/humble/setup.bash ~/.bashrc四、程序测试4.1 小海龟仿真●参考链接ROS2安装方法 - ROS2入门教程 (guyuehome.com)打开两个终端分别运行如下指令运行成功效果如下。#终端1启动海龟仿真器 ros2 run turtlesim turtlesim_node #终端2启动键盘控制 ros2 run turtlesim turtle_teleop_key4.2 相机启动和图像获取●参考链接3.1.2 USB摄像头使用 | RDK DOC (d-robotics.cc)开发板镜像已在/app/pydev_demo/中安装了一些示例程序这里测试USB摄像头程序将USB摄像头接入4个USB 3.0 TYPE-A的其中一个通过lsusb命令确认摄像头是否接入成功这里成功接入。这里同VNC服务类似只接入了一个摄像头但显示了两个设备被接入。由于所提供的例程usb_camera_fcos.py会将图像通过HDMI传输到显示屏上因此对于VNC远程连接我们无法在窗口上看到传回来的图像为了方便直接在例程中添加如下两句代码。318 cv2.imshow(frame,frame) 319 cv2.waitKey(1)保存修改后的程序通过以下命令执行程序最后的展示效果如下命令窗口输出模型推理结果右侧frame窗口展示摄像头图像图像传输帧率在15FPS左右个人猜测帧率低的原因有两个一是直接使用opencv传输图像这和原本例程的传输图像方式不同二是魔改的VNC配置导致性能受限。cd /app/pydev_demo/02_usb_camera_sample/ sudo python3 ./usb_camera_fcos.py五、常用命令查看当前Linux版本lsb_release -a查看IPifconfig查找文件位置find / -name example.txtWiFi连接sudo wifi_connect wifi_name wifi_passwordroot用户和普通用户切换#进入root用户登录shell sudo -i #退出root exit文件编辑#创建/编辑文件 sudo nano /path/to/file #抓取文件内容 sudo cat /path/to/file #修改文件名称 sudo mv /path/to/old_filename /path/to/new_filename #删除文件 sudo rm /path/to/fileubuntu终端快捷键#打开终端 Ctrl Alt T #字体放大 Ctrl shift #字体缩小 Ctrl -六、相关文章、软件下载链接参考文章链接1.快速开始 | RDK DOC (d-robotics.cc)https://developer.d-robotics.cc/rdk_doc/Quick_start友情提示RDK X5烧录系统后的登录账户和密码 (d-robotics.cc)https://developer.d-robotics.cc/forumDetail/251934743552436262软件安装链接启动盘制作工具balenaEtcher、远程连接工具MobaXterm常用软件 - OriginBot智能机器人开源套件https://originbot.org/material/common_software.html

更多文章