边缘计算的AI小板——OrangePi AI Pro
简介
OrangePi AI Pro是一款基于Allwinner H6处理器的嵌入式AI计算设备,适用于物联网和边缘计算。它具有强大的性能、低功耗、多接口和小尺寸。
本文分为三个部分:
一、对该板进行简单的开箱介绍。
二、 将SD卡中的系统迁移到由于该板支持SD卡、SSD(m2接口固态硬盘)、EMMC三种启动方式。而官方附赠的SD卡启动显然是最慢的一种。最后附上SSD启动的教程。
三、 将OrangePi官方设置的xface系统桌面切换回Unity桌面
一、开箱介绍
1、 外观

刚拿到手就是这些东西,质感杠杠的。随板附赠的供电插头,不知道Origin官方找哪家工厂代工的,摸起来沉甸甸的。一看就是专业生产手机插头的OEM。看了下输出功率,最高能达到20V/3.25A的输出。驱动这块板绰绰有余了(功耗评测放下下方)。
2、 系统
系统是OriginPI官方定制的Ubuntu20.04。但是没有使用Ubuntu桌面版自带的gnome桌面,而是采用了Xfce 桌面。我不是很喜欢这个桌面的UI。不过Ubuntu还是Ubuntu,之后重装一个就好了。像我一样之前没怎么玩过硬件的也不用有心理压力,就当成Ubuntu就好了。

3、 特性

参数列举在这了,我就不一一介绍了。
4、 功耗
先说结论,基本维持在10w左右。由于我用的是官方的插头,电压一直稳定在20v。但是群里有人说10v的插头也能驱动。
以下是实测图:
1、 开机功耗(我测试过程中的最高)-15w

2、待机功耗 - 9.5w

3、 推理过程 - 12w

所以确实是低功耗小板。
5、AI推理
Jupiter启动过程:
ssh连接
这部分内容跟评测没什么关系,但是又是评测过程中需要用的的技巧,因此算是插播的内容:
插入网线后,OrangeAI pi pro 就获取到了 IPv4地址。
要通过自己的工作机器ssh这台目标机(OrangeAI pi pro),首先要知道目标机的内网IP地址。
这里有两种方式获取IP地址
1、 命令行方式arp -a查看局域网所有的主机。
从这里也看不出来哪个ip是由OrangeAIPro获取的,只能一个个试ssh HwHiAiUser@xxx.xxx.xxx.xxx2、 可视化查看
登录路由器后台,在路由器上查看该板的DHCP,为192.168.0.186。
你的路由器可能不一样,但是原理都是差不多的,也会有这方面的功能。
根据官方的账户就可以ssh连接了。
ssh HwHiAiUser@192.168.0.186
1、 开启Jupyter局域网访问
根据手册提示,进入Jupyter之后,启动jupyter。
./start_notebook.sh
这样就可以远程访问了。
但是远程页面打开,会提示输入token或密码
2、修改密码
pip install notebook # 否则会提示没有 jupyter-notebook 命令
jupyter notebook password
就可以设定密码了。
3、运行模型
官方提供的算例都是推理的。显然不希望在这块小板子上进行训练。但是已有的模型推理速度都很快,说明8TOPS算力是有含金量的。

好了,板子介绍完毕了。接下来说一下,怎么把sd中的系统烧录到ssd中。
二、 将SD卡内的系统转到ssd中
这就涉及到Linux系统数据迁移
1、先看成果
GPart软件看到sd卡中系统的大小为29.41G

迁移后ssd中的的系统状态与SD卡中完全一致,因此可以通过ssd引导登录。

2、操作步骤
先用lsblk 查看当前的磁盘状态

接下来使用dd命令进行ubuntu 硬盘转移:
sudo dd if=/dev/sdb of=/dev/sda bs=128K conv=noerror,sync status=progress
dd 的意思是DiskToDisk,if 是输入文件系统,of是输出文件系统。
bs是每次传递的数据大小。
注意:接收文件的容量要大于发送文件的容量。
3、切换启动磁盘,开机点亮!
根据文档,将板子下方的拨片开关,BOOT1拨到右,BOOT2 拨到左,就可以开机了


三、桌面更换为Unity
orangepi aipro默认安装了ubuntu20.04,配备xfce桌面。这个桌面虽然非常轻量级,但是操作起来却非常不方便。而Ubuntu20.04的默认桌面环境为Unity,这个桌面环境经过多个版本的迭代,已经足以与Windows、MacOS媲美。
因此我们接下来将xfce桌面卸载,使用unity桌面。
1、 卸载xfce桌面
# 卸载桌面及相关软件
sudo apt-get purge xfce*
# 自动卸载不必要的软件
sudo apt-get autoremove
# 系统清理
sudo apt-get clean
这时打开,还是会有Orange官方的欢迎页面。但是登录的话,就会报错,进不去界面。
2、安装unity桌面
所以接下来我们安装该桌面。
sudo apt update
sudo apt upgrade
sudo apt install ubuntu-unity-desktop
sudo reboot
在安装的过程中,会有提示,这是让你选择使用哪一个桌面管理工具。大家就选第一个gdm3就行。

还会有一些错误警告
Failed to retrieve available kernel versions.
Failed to check for processor microcode upgrades.
这两句的意思是:
内核版本检索失败——"Failed to retrieve available kernel versions." 表示系统无法检索到可用的内核版本。这可能是因为网络问题、Ubuntu软件源配置错误,或者是因为系统已经安装了最新的内核版本,而软件源中没有更新的版本可供检索。
处理器微码升级检查失败:——"Failed to check for processor microcode upgrades." 指的是系统无法检查处理器微码的升级。这涉及到CPU安全更新和性能改进。失败的原因可能与内核版本检索失败相同,也可能是因为系统不需要微码更新。
官网的参数配置中,并没有说采用了哪家的CPU和GPU。
但是跟群友吹水的时候发现这款板的配置跟华为atlas200i dk A2的配置一模一样,所以莫非是遥遥领先同款cpu厂家?但是比华为的板子价格便宜了一半。香橙派不愧是价格屠夫。这波遥遥领先。

3、Unity桌面开机启用

输入原始开机密码 Mind@123,进入桌面。
相关文章:
边缘计算的AI小板——OrangePi AI Pro
简介 OrangePi AI Pro是一款基于Allwinner H6处理器的嵌入式AI计算设备,适用于物联网和边缘计算。它具有强大的性能、低功耗、多接口和小尺寸。 本文分为三个部分: 一、对该板进行简单的开箱介绍。 二、 将SD卡中的系统迁移到由于该板支持SD卡、SSD…...
RDMA (2)
iWARP(RDMA)怎么工作的 招式1:bypass内核 非iWARP时,当应用向网络适配器发出读或者写命令时,命令穿过用户空间以及内核空间,因此需要在用户空间和内核空间间进行切换。 iWARP使用RDMA,让应用直接将命令送达到网络适配器。这规避了对内核的调用,减少了开销和延迟。 招式2…...
vue.config.js中,devServer对象用于配置开发服务器的行为
devServer: {hot: true, // 启用模块热替换(Hot Module Replacement,HMR)。liveReload: true, // 启用页面自动刷新。当热更新失败时,将回退到页面自动刷新。open: true, // 启动服务器后自动打开浏览器。port: 8080, // 设置开发…...
JVM 运行流程
JVM 是 Java 运行的基础,也是实现一次编译到处执行的关键,那么 JVM 是如何执行的呢? JVM 执行流程 程序在执行之前先要把java代码转换成字节码(class 文件), JVM 首先需要把字节码通过一定的 方式 类加…...
android-JNI
1.2【静态库】的特点: (.a) ①静态库对函数库的链接是在编译期完成的。执行期间代码装载速度快。 ②使可执行文件变大,浪费空间和资源(占空间)。 ③对程序的更新、部署与发布不方便,需要全量更新…...
Go_unsafe包
是什么?为什么? 如何利用unsafe包修改私有成员? 结构体会被分配到一块连续的内存,结构体的地址也代表第一个成员的地址。 如何利用unsafe包获取slice和map的长度? // 利用unsafe包修改私有成员 type S struct {name …...
【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(十三)
课程地址: 黑马程序员HarmonyOS4NEXT星河版入门到企业级实战教程,一套精通鸿蒙应用开发 (本篇笔记对应课程第 20 - 21节) P20《19.ArkUI-属性动画和显式动画》 本节先来学习属性动画和显式动画: 在代码中定义动画&am…...
企业建站响应式网站建设平台版源码系统 海量模版可选择 带完整的安装代码以及搭建教程
系统概述 企业建站响应式网站建设平台版源码系统是一款集创新性、实用性和便捷性于一体的建站解决方案。它旨在为用户提供一站式的网站建设服务,无论你是新手还是经验丰富的开发者,都能通过该系统轻松实现网站的构建与部署。 该系统采用先进的技术架构…...
在 VSCode 中搭建 Flutter 开发环境并运行项目
要在 Visual Studio Code (VSCode) 中运行 Flutter 项目并启动虚拟机(例如 Android Emulator),可以按照以下步骤进行设置和操作: 一、安装 Flutter 和 Dart 插件 安装 Flutter SDK: 前往 Flutter 官网 下载并安装 Flu…...
如何执行VMware P2V迁移|VMware Converter和替代方案
VMware中的P2V是什么? 我们常说的VMware P2V其实指的就是“物理到虚拟”,将工作负载从物理机器转换或迁移到虚拟机(VM)的过程,能够使您无需从头开始费力地创建和配置新虚拟机。 就像您可以使用Disk2vhd执行Hyper-V物理…...
03-3.2.3 队列的链式存储的实现
👋 Hi, I’m Beast Cheng👀 I’m interested in photography, hiking, landscape…🌱 I’m currently learning python, javascript, kotlin…📫 How to reach me --> 458290771qq.com 喜欢《数据结构》部分笔记的小伙伴可以订…...
Spring AI 第二讲 之 Chat Model API 第八节Anthropic 3 Chat
Anthropic Claude 是一系列基础人工智能模型,可用于各种应用。对于开发人员和企业来说,您可以利用 API 访问,直接在 Anthropic 的人工智能基础架构之上进行构建。 Spring AI 支持用于同步和流式文本生成的 Anthropic 消息 API。 Anthropic …...
【ARM 常见汇编指令学习 6.2 -- ARMv8 汇编指令 SDIV 详细介绍】
文章目录 SDIV指令格式使用示例注意事项总结 SDIV ARMv8 架构中的 SDIV 指令用于执行带符号整数除法操作。这意味着它可以处理负数除法,与 UDIV(执行无符号整数除法)形成对比。SDIV 将两个寄存器中的带符号整数相除,将除法结果存…...
【ArcGIS微课1000例】0113:大地测量要素概述与构建
文章目录 一、大地测量要素描述1. 大地要素的概念2. 大地要素的类型二、创建大地测量要素1. 创建要素类2. 创建大地要素一、大地测量要素描述 1. 大地要素的概念 大地测量要素的测量值考虑了投影空间的固有变形。如果要创建一个空间跨度较大的要素(例如一条横跨大洋的飞行路…...
【记录】LangChain+本地模型的文档问答(webUI)
已在notebook测试无误。 包安装 pip install langchain langchain_community transformers InstructorEmbedding sentence_transformers2.2.2 faiss-gpu PyPDF2 streamlit pyngrok gradio fitz frontend 环境变量设置 huggingface连不上无法下载模型,需要设置镜像。…...
Winddow系统下关于Golang使用Cgo的配置
1.配置CGO_ENABLED为1 go env -w CGO_ENABLED1 2.安装gcc环境,否则出现cgo: C compiler "gcc" not found: exec: "gcc": executable file not found in %PATH%错误 安装包:链接:https://pan.baidu.com/s/1sgF9lijqGeP…...
python面向过程与初始面向对象编程
让我们穿越到《龙珠》世界,一起揭开 面向对象编程 的神秘面纱吧。 面向过程编程与面向对象编程 天下第一武道会 选手登记 第 22 届天下第一武道会即将召开,各路武术高手齐聚一堂,其中最受瞩目的,当属卡卡罗特(孙悟…...
vue3 实现自定义指令封装 --- 通俗易懂
1、局部自定义指令 1.1 在<script setup>定义组件内的指令,任何以v开头的驼峰式命名的变量都可以被用作一个自定义指令 <template><div><h3>使用自定义指令</h3><div>########################## start 局部自定义指令</d…...
5.31.15 使用图像到图像转换和 YOLO 技术对先前的乳房 X 光检查结果中的异常进行早期检测和分类
在本研究中,我们研究了基于 You-Only-Look-Once (YOLO) 架构的端到端融合模型的有效性,该模型可同时检测和分类数字乳房 X 光检查中的可疑乳腺病变。包括四类病例:肿块、钙化、结构扭曲和正常,这些病例来自包含 413 个病例的私人数…...
题解web
1.[LitCTF 2023]Follow me and hack me 1)进入题目环境,提示get传参,post传参 2)看看源码,也没啥 3)直接用hackbar,传入对应参数即可得到FLAG 3)但是扫描出来它后端还有东西&#x…...
解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...
C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
uniapp中使用aixos 报错
问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...
iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈
在日常iOS开发过程中,性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期,开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发,但背后往往隐藏着系统资源调度不当…...
LLMs 系列实操科普(1)
写在前面: 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容,原视频时长 ~130 分钟,以实操演示主流的一些 LLMs 的使用,由于涉及到实操,实际上并不适合以文字整理,但还是决定尽量整理一份笔…...
站群服务器的应用场景都有哪些?
站群服务器主要是为了多个网站的托管和管理所设计的,可以通过集中管理和高效资源的分配,来支持多个独立的网站同时运行,让每一个网站都可以分配到独立的IP地址,避免出现IP关联的风险,用户还可以通过控制面板进行管理功…...
MySQL 8.0 事务全面讲解
以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...
如何应对敏捷转型中的团队阻力
应对敏捷转型中的团队阻力需要明确沟通敏捷转型目的、提升团队参与感、提供充分的培训与支持、逐步推进敏捷实践、建立清晰的奖励和反馈机制。其中,明确沟通敏捷转型目的尤为关键,团队成员只有清晰理解转型背后的原因和利益,才能降低对变化的…...
libfmt: 现代C++的格式化工具库介绍与酷炫功能
libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库,提供了高效、安全的文本格式化功能,是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全:…...
MySQL 主从同步异常处理
阅读原文:https://www.xiaozaoshu.top/articles/mysql-m-s-update-pk MySQL 做双主,遇到的这个错误: Could not execute Update_rows event on table ... Error_code: 1032是 MySQL 主从复制时的经典错误之一,通常表示ÿ…...



