rp-rv1126(烧录ubuntu系统+通信+使用python)
时间:2022-08-12 18:30:02
记录最近的小突破。
思路记录:
原因是我想偷鸡,我的pc上面有一个调用摄像头进行目标python然后我看这个程序整个文件夹的大小rp-rv1126的内存完全够用。
所以我想知道能不能直接在板上用这个python一开始,我的想法是使用程序pyinstaller,理论上是可以的,我看输出的可执行程序格式和官方给出的格式rknn的demo同样,但奇怪的是,它不能运行,总是报告/bin/sh: xxx not found的错误。后来我听一个人说他直接用python跑步程序说他安装了python。当时我一点意思都不明白,然后我找到了一个linux通过安装包安装python但还是因为/bin/sh无法安装编译器的错误和错误。
后来我明白了,这个板子原本是自带的。buildroot我听说过一句话:buildroot没有完整系统的概念,需要交叉编译(在PC上编译,在板上操作),也就是说,它没有编译器,更不用说安装了python了。
然后我又找到了一个信息:
Firefly Debian 使用手册 — Firefly Wiki (t-firefly.com)
我喜欢这个系统apt-get install,这意味着安装python的可能性。
但是我按照教程安装了debian后来发现板子用不了,后来才发现。
这一信息是:core-1126/1109-JD4而我用的是rp-rv1126.板子示意图看起来不一样,估计不能通用。发送!
但我又在想,在这里我学会了板烧录系统,也大概明白了,那我干脆烧录一个ubuntu系统算了。
然后再搞定python。
板子烧录
先安装烧写驱动,然后打开RKDevTool。
如果是板连线图,我上一篇讲的是数据交流,就是连OTG口和PC,然后上电。
然后按住recovery,同时再按一次RST,直到RKDevTool显示并识别一个LOADER设备。
然后按rp-rv1126-1109使用指导文档操作。
我烧录的是:
05-镜像文件\ubuntu\pro-rv1126-ubuntu\gc2093x2-ubuntu\update-pro-rv1126-ubuntu20.04-5.5inch_720x1280-20210712.img"
意思大概是双目摄像头。gc2093 5.5英寸显示屏。
Ubuntu系统与PC通信
我在前面烧录debian当系统发现问题时:adb不能用了。
ubuntu系统也是,adb不能用,带来了一系列的麻烦,但幸运的是我解决了。
强烈推荐MobaXterm这个软件。
只要点session就能选SSH和Serial,可同时使用,比用SDK里面的工具包一堆软件方便多了。
具体来说,我必须根据我上一篇文章中的数据交流得到这个silicon可串口通信。
然后session里选个serial,设置设备管理器显示的设备silicon然后将波特率改为官方给定的115200。
然后按在板上RST您可以等待输入用户和密码。
Ubuntu系统用户和密码:
用户: root,密码: rpdzkj
之前buildroot的是root和rockchip,深圳荣品电子科技售后集团可以找到这一点。
串口连接后,相当于有了rp-rv1126终端。此时,使用以下链接连接wifi:
(18条消息) Ubuntu 命令行连接wifi_希望原野博客-CSDN博客_ubuntu命令行连接wifi
这里注意一点,以后用SSH,电脑和板子应该连同在一起WiFi,然后我的笔记本插不上网线,所以我直接用手机打开两个热点。连接后终端输入ifconfig可以查到ip地址。然后我在上一篇文章中谈到了使用MobaXterm去进行SSH这里只提到连接教程的优点:文件夹可以在左边直观看到,而不是每天只能用终端费力。ls和cd。然后可以直接双击文件进行修改(此时可以更换板的下载源)
_____________________________________________________________________________
这里有一点需要注意:好像当你设置的时候wifi以后使用串口会自动连接,但会影响串口的使用,即无法输入账号和密码。但别担心,这个时候先打开原来的热点(电脑也要连接),RST它的串口终端显示连接信息,然后双击SSH的session就行。因为它自动连接,所以SSH所需的环境已经建成,可以直接使用。如果要恢复使用串口,可以使用SSH的终端关掉wifi。
安装python(目前还没有完全成功)
首先,这部分的最终目标是安装python和opencv-python。
建议直接使用自带python3.8
然后安装opencv直接:
sudo apt update sudo apt install libopencv-dev python3-opencv #接下来验证安装 python3 -c "import cv2;print(cv2.__version__)"
那么难点其实是opencv调用板式摄像头的问题还没有解决。
————————————————————————————————————————
之前安装了一个python3.6去安装opencv最后失败了,然后我发现ubuntu里多个python版本会产生很多麻烦(无论是python还是pip)。但是板子空间不够,不太好用anaconda管理环境,然后应该还有其他方法来管理环境,但对我来说不划算。
然后我想到板子是部署的ubuntu20.04,自带一个python3.8。
所以我有一个想法,最好把盘子当作一个想法ubuntu20.04的PC系统?
我直接搜索ubuntu20.04下安装opencv的教程:
(9条消息) ubuntu20.04安装opencv(系统默认Python3.8)_songjiangem的博客-CSDN博客_ubuntu20.04安装opencv
在这里,我将记录我在实践过程中因板而产生的错误和解决方案。
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main" sudo apt update sudo apt install libjasper1 libjasper-dev
首先,这三个步骤有一个大问题,你会发现一个关键的网站failed to fetch,然后我查了查网站,发现确实是404 not found。
我找了一顿,终于发现:
首先要输入:
dpkg --print-architecture
可以查看系统架构,发现rp-rv1126的ubuntu系统架构是armhf,简单来说就是32位amd,目前阿里源的国内来源大多只有arm64包,所以需要增加包含armhf的国内源。
(18条消息) Ubuntu支持armhf 的国内源_ywueoei的博客-CSDN博客
我之前发过添加源,也可以自己上网查,不难。
教程后sudo apt install一切都可以实现。
然后在用cmake还需要根据自己的路径修改配置命令部分:
#先把CMakeLists.txt从opencv将文件夹复制到新创建的文件夹中build然后将以下内容输入到终端。 sudo apt-get install doxygen pip install beautifulsoup4 cmake -DWITH_CUDA=OFF \ -DWITH_VTK=OFF \ -DWITH_MATLAB=OFF \ -DBUILD_DOCS=ON \ -DCMAKE_BUILD_TYPE=RELEASE \ -DCMAKE_INSTALL_PREFIX=/usr/local \ -DOPENCV_PYTHON3_VERSION=3.8 \ -DPYTHON3_INCLUDE_PATH=/usr/include/python3.8 \ -DPYTHON3_LIBRARIES=/usr/lib/python3.8/ config-3.8-arm-linux-gnueabihf/libpython3.8.so \ -DPYTHON3_EXECUTABLE=/usr/bin/python3.8 \ -DOPENCV_EXTRA_MODULES_PATH=/root/opencv_build/opencv_contrib/modules \ -DPYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include \ -DOPENCV_GENERATE_PKGCONFIG=ON -D CMAKE_INSTALL_PREFIX=/usr/local \ ..
前两个安装指令是运行后的大部分cmake然后安装报错中找到的信息。
后面cmake这一大段和原教程相比我改动了三点:
1、-D去掉后面的空间。2.我的是config-3.8-arm-linux-gnueabihf。3、我的是/root/opencv_build
中途退出,输入make它仍然可以追溯到上次的进展,但目前我已经编译到90%,这是可疑的RAM还不够,还没有解决办法,可能要尝试直接安装而不是源代码安装。