当前位置:主页 > 查看内容

Atlas 200 DK开发者套件环境部署(1.0.9.alpha)极简版

发布时间:2021-08-09 00:00| 位朋友查看

简介:Atlas 200 DK开发者套件环境部署1.0.9.alpha极简版 前言 Atlas 200 DK开发者套件介绍 环境部署介绍 资源要求 开发环境部署 安装Docker 获取镜像两种方法任选其一 方式一Docker Hub拉取镜像 方式二下载Docker镜像压缩包 创建容器 运行环境部署 SD卡系统烧录 S……

前言

最近在使用Atlas 200 DK开发一些应用,使用时感觉环境部署有些麻烦,这里把自己做好的镜像提供给大家,帮助大家快速搭建实验环境。

Atlas 200 DK开发者套件介绍

以下介绍来自官方文档:

Atlas 200 DK是以昇腾310处理器为核心的开发者板形态的终端类产品。主要功能是将昇腾AI处理器的核心功能通过板上的外围接口开放出来,方便用户快速简捷的接入并使用昇腾AI处理器强大的处理能力。Atlas 200 DK 可以运用于平安城市、无人机、机器人、视频服务器等众多领域的预研开发。

环境部署介绍

开发Atlas 200 DK应用分为两部分内容,开发和运行,由于Atlas 200 DK无法外接键盘、显示器,因此通过PC机开发应用,Atlas 200 DK运行应用。
Atlas 200 DK主要包含Hi3559 Camera模块以及Atlas 200 AI加速模块,开发工具MindStudio所在PC通过USB接口或者网线与Atlas 200 DK开发者板连接。


如图所示,环境部署分为两部分,在PC机上安装开发套件包部署开发环境,在Atlas 200 DK上部署运行环境,Atlas 200 DK跟树莓派一样,是用SD卡做系统的,因此这一步是比较简单的。

本博客提供的方式更简单,开发环境使用Docker镜像,运行环境用img镜像,镜像中除了包含官方文档中要求安装的开发套件包,也安装了OpenCV等通用的软件包,软件包安装参考以下链接:
官方文档:https://support.huaweicloud.com/environment-deployment-Atlas200DK202/atlased_04_0001.html
Gitee文档:
https://gitee.com/ascend/samples/tree/master/cplusplus/environment
https://gitee.com/ascend/samples/tree/master/python/environment

说明:
1.0.9.alpha是Atlas 200 DK的固件和驱动版本号,而应用开发时使用的开发套件包属于CANN,镜像中安装的是社区版CANN3.3.0.alpha001。

资源要求

  1. Atlas 200 DK开发者套件(USB-Type-C数据线和网线二选一、16G以上SD卡、读卡器或母对母杜邦线)
  2. Ubuntu系统PC机(博客基于Ubuntu系统,其他Linux系统也可以,物理机和虚拟机都可以)
  3. Windows系统PC机(临时使用)

开发环境部署

首先需要有一台运行Linux系统的PC机,物理机和虚拟机都可以,Windows和MacOS不行,后面会说明原因,资源要求中的Windows系统PC机用于运行环境制作,只需一次。以下以Ubuntu系统为例,其他发行版替换下命令即可。

安装Docker

如果已经安装Docker可跳过该步骤

Docker可以获取别人制作好的镜像,无需自己安装软件包即可使用。

注: Ubuntu桌面版系统默认不启用root账户,而是有一个管理员账户,以下操作均在管理员账户下操作,其他系统可切换到普通用户,配置相应权限。

  1. 输入以下命令更新软件源,然后安装curl,最后获取安装Docker的脚本。
sudo apt-get update
sudo apt-get install curl
curl -fsSL get.docker.com -o get-docker.sh
  1. 执行以下命令进行Docker的安装。
sh get-docker.sh

执行成功如下所示:
在这里插入图片描述

说明:
如果安装失败,请参考https://www.cnblogs.com/dream4567/p/9690850.html进行换源操作。

  1. 安装成功后在命令行中顺序执行如下指令将当前使用的普通用户添加到docker用户组内。
sudo groupadd docker
sudo gpasswd -a USER docker
sudo service docker restart
newgrp docker

USER为当前使用的用户名,比如zmstest,需根据实际情况替换。

说明:
以上命令只需要执行一次,但是在打开新的终端使用普通用户执行docker指令时还是会报权限不足的错误,此时只要在新打开的终端下执行newgrp docker命令就可以了。

获取镜像(两种方法任选其一)

方式一(Docker Hub拉取镜像)

直接从Docker Hub中拉取镜像,适用于访问Docker Hub网速较快的。

  1. 输入以下命令拉取镜像,这里耗时跟网速有关,也有可能出现无法访问的情况,这种情况下可以选择方式二。
docker pull taotaoba/develop-env:cann3.3.a1

在这里插入图片描述

  1. 镜像拉取成功后可输入以下命令查看:
docker images

在这里插入图片描述

方式二(下载Docker镜像压缩包)

推荐使用方式一,当方式一无法拉取镜像的时候再采用这种方式,

  1. 通过以下链接下载Docker镜像压缩包(阿里云盘有分享功能后会替换):
    镜像.,密码:5riy
  2. 下载完成后把压缩包放到Linux系统中,输入以下命令解压:
tar -zxvf cann3.3.a1.tar.gz

说明:
解压时间较长,解压过程中请勿进行操作,耐心等待即可。

  1. 解压完成后,在解压文件目录输入以下命令加载镜像:
docker load < cann3.3.a1.tar

说明:
时间同样较长,请耐心等待。

  1. 镜像加载成功后可输入以下命令查看:
docker images

在这里插入图片描述

创建容器

获取镜像之后需要用镜像创建容器,在容器内进行操作。
输入以下命令创建容器,以普通用户Ascend登录,IMAGE ID需要根据实际情况替换:

docker run -it --privileged -v /dev:/dev -v /tmp:/tmp --net=host -e DISPLAY=$DISPLAY  IMAGE ID

说明:
镜像中包含root用户和普通用户Ascend,密码均为Huawei@123 ,默认进入为root用户。

输入以下命令切换到Ascend用户。

su Ascend
bash

在这里插入图片描述

运行环境部署

运行环境部署是把制作好的IMG镜像写到SD卡当中,由于Linux中DD命令恢复镜像对新手不友好,因此使用Windows下软件写入,推荐用Etcher工具快速恢复镜像至SD卡。

Etcher工具下载地址:https://www.balena.io/etcher/

SD卡镜像下载地址(阿里云盘有分享功能后会替换):
镜像,密码:hlij

SD卡系统烧录

解压镜像后,打开Etcher工具,选择img文件和SD卡设备,点击Flash,一直等到Flash成功,软件会有进度提示。
在这里插入图片描述
在这里插入图片描述

说明:
原始镜像基于16G内存卡制作,因此这里需要使用16G以上的SD卡。
SD卡烧录完成后,Windows系统可能会弹出是否格式化的窗口,点取消。

SD卡扩区

由于SD卡原始镜像采用16G的SD卡制作,因此烧录之后只用了16G的空间,对于更大容量的SD卡来说,需要进行扩区操作。

  1. 将SD卡连接到Linux系统当中。
  2. 输入以下命令在Linux系统中安装并启动gparted工具,注意:不是在Docker中安装。
sudo apt-get update
sudo apt-get install gparted
#安装完成后输入以下命令启动
gparted
  1. 右上角选择自己的SD卡设备。
    在这里插入图片描述
    在这里插入图片描述
  2. 右侧灰色的为未分配磁盘空间,右击与其相邻的空间,点击Resize,然后按照下图依次操作。。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  3. 操作完成后拔出SD卡。

启动Atlas 200 DK

  1. 取下Atlas 200 DK外壳,方便查看LED指示灯状态,参考https://support.huaweicloud.com/environment-deployment-Atlas200DK202/atlased_04_0004.html
  2. 把SD卡插入到Atlas 200 DK中,上电启动,开发板会自动进行升级固件、重启灯动作,LED灯闪烁时代表固件升级。
    升级时一定不能断电!!!!!!!!!!!!!!!!!!!!!!!!!!!
    LED灯含义可参考https://support.huaweicloud.com/productdesc-Atlas200DK202/atlas200_DK_pdes_19_0025.html

连接Atlas 200 DK到开发环境

请参考官网给出的方法,连接开发板和开发环境。
https://support.huaweicloud.com/environment-deployment-Atlas200DK202/atlased_04_0014.html

注意:
由于Docker容器网络是与宿主机环境共享网络的,所以,以上过程是在宿主机操作系统操作的,也就是说,开发板与宿主机操作系统连接后,Docker容器也与开发板连接了。

运行首个应用

通过以上步骤,一个基本的环境就搭建完了。接下来,通过一个Mindstudio自带的Classification(resnet50)样例,来验证环境是否部署成功。

进入容器

之前已经通过镜像创建了容器,后续进入容器的命令如下:

#可以查看所有容器,包含运行中和已停止。
docker ps -a
#根据ID启动容器
docker start CONTAINER ID
#进入一个已经启动的容器,可以输入命令进行交互
docker exec -it CONTAINER ID /bin/bash
#根据ID关闭容器
docker stop CONTAINER ID

启动MindStudio

MindStudio已经在Docker中安装完成,在/home/Ascend/program目录下,需要切换到Ascend用户,然后输入以下命令启动:
这一步MindStudio会启动图形化界面,Linux系统下Docker可以启动图形化界面,但是Windows和MacOS则比较复杂,感兴趣的可以自己查阅解决办法。

cd /home/Ascend/program/MindStudio/bin/
./MindStudio.sh

MindStudio已经配置了ADK路径,并打开了一个样例工程,可参考以下链接运行首个应用(Sample-ResNet50)。
https://support.huaweicloud.com/usermanual-MindStudioC76/atlasms_02_0083.html

Docker常用操作

#通过ID在容器和宿主机之间拷贝文件,拷贝宿主机文件到Docker,拷贝文件夹也无需加-r参数
docker cp path1 CONTAINER ID:path2
#拷贝Docker文件到宿主机
docker cp CONTAINER ID:path1 path2
#通过ID删除一个已停止的容器
docker rm CONTAINER ID
#通过ID删除一个未使用的镜像
docker rmi IMAGE ID

结束语

自此,极简安装的Atlas 200 DK环境就已经搭建完成。
如果有兴趣,可以就以下资源去了解AI和产品相关的知识。
1. 华为昇腾开发者论坛:https://bbs.huaweicloud.com/forum/forum-726-1.html
2. 华为昇腾开发者社区:https://ascend.huawei.com

;原文链接:https://blog.csdn.net/weixin_44580987/article/details/115704590
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文


随机推荐