1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 【持续更新】Jetson Nano 人工智能机器人开发实战案例——RosmasterX3A1

【持续更新】Jetson Nano 人工智能机器人开发实战案例——RosmasterX3A1

时间:2019-04-21 03:04:19

相关推荐

【持续更新】Jetson Nano 人工智能机器人开发实战案例——RosmasterX3A1

1、Jetson简介

Jetson Nano是Nvidia在Jetson XAVIER NX/TX2 NX获得成功后于3月上市的低配版GPU运算平台。

图 1-1

1.1参数

官方公布参数

GPU: NVIDIA Maxwell architecture with 128 NVIDIA CUDA® cores

CPU: Quad-core ARM Cortex-A57 MPCore processor

Memory: 4 GB 64-bit LPDDR4, 1600MHz 25.6 GB/s

Storage: 16 GB eMMC 5.1

Video Encode: 250MP/sec

1x 4K @ 30 (HEVC)

2x 1080p @ 60 (HEVC)

4x 1080p @ 30 (HEVC)

4x 720p @ 60 (HEVC)

9x 720p @ 30 (HEVC)

Video Decode: 500MP/sec

1x 4K @ 60 (HEVC)

2x 4K @ 30 (HEVC)

4x 1080p @ 60 (HEVC)

8x 1080p @ 30 (HEVC)

9x 720p @ 60 (HEVC)

Camera: 12 lanes (3x4 or 4x2) MIPI CSI-2 D-PHY 1.1 (1.5 Gb/s per pair)

Connectivity: Gigabit Ethernet, M.2 Key E

Display: HDMI 2.0 and eDP 1.4

USB: 4x USB 3.0, USB 2.0 Micro-B

Others: GPIO, I2C, I2S, SPI, UART

Mechanical: 69.6 mm x 45 mm 260-pin edge connector

图 1-2

1.2 jetson nano优缺点

Nano最大的特色是包含一块128核Maxwell架构的GPU,虽然是老架构,但用于嵌入式设备,从功耗、体积、价格上也算一个平衡。

Nano的计算能力不高,勉强可以使用一些小规模、并且优化过的网络进行推理,训练的话还是不够用的。

A53的CPU中规中矩,树莓派4已经升级为A72。

4GB的内存并不能完全使用,因为其中有一部分(1GB左右)是和显存共享的。

Nano的最大优势还是在体积上,它采用核心板可拆的设计,核心板大小只有69.6 x 45 mm,可以很方便的集成在各种嵌入式应用中。同时它的功耗也非常低,有两种模式:

5W(低功耗模式;可以使用USB口供电)

10W(必须使用Power Jack外接5V电源供电)

这两种模式可以在系统菜单中进行修改。

当使用Power Jack供电时,外接电源要求5V=2A, 推荐使用5V=4A以应对峰值。

如果没有安装风扇,只使用自带的散热片被动散热的话,建议强制5W模式,否则一定死机。

1.3实用注意事项

1.Rosmaster机器人支持四款主控,分别是Jetson Nano开发板、Jetson Xavier NX开发板、Jetson TX2

NX开发板和树莓派4B开发板。

Jetson Nano、Jetson Xavier NX和Jetson TX2 NX开发板出厂系统用户名:jetson,密码:khxx8888

树莓派4B主控出厂系统用户名:pi,密码:khxx8888

不管哪款主控,Jupyter Lab的登录密码都是:khxx8888

2.由于Rosmaster机器人在开机时,会初始化板载的九轴姿态传感器,所以开机或者按下RESET键复位

时,应水平放置在地上,约几秒后听到‘滴’一声则可以正常使用。

3.正常状态下,Rosmaster机器人的MCU指示灯是每三秒快闪2次,如果发现MCU指示灯常亮或者常

灭,则表示扩展板上的单片机运行状态异常。请按一下RESET键复位单片机。

4.在运行单例程序前,请先将大程序关闭,否则可能会造成影响。

5.开机后,激光雷达自动转动,请不要堵转激光雷达转动,避免损坏产品。

锂电池组和电池充电器安全使用规范

1.严禁接入超过产品使用负载的设备。

2.严禁使用非亚博官方提供的电池或充电器。

3.电池充电时请关闭扩展板上的总电源开关,请勿对电池边充电边使用,防止出现充电器或电池爆炸。

4.电池充电时,充电器指示灯亮红灯,充满亮绿灯,充电完成后应及时拔掉充电器,避免过充损坏电

池。充电时需要有人在场。

5.电池9.6V以下时,扩展板蜂鸣器发出‘滴滴滴滴’报警声,并且MCU指示灯快闪,此时需要关闭电源,然

后给电池充电。

6.使用完毕后应关闭扩展板上的电源总开关,长时间不使用时,请保持锂电池组电压11.1V~11.7V,取出

锂电池组并放到电池安全区域,不要与金属物体混放,包在外边的绝缘膜不可以撕掉。

7.远离热源、火源、任何液体,切勿在潮湿或雨中使用。潮湿环境可能导致产品短路损坏。

8.当锂电池组或电池充电器起火、冒烟,请使用沙或者干粉灭火器灭火,然后迅速撤离至安全区域。

9.若锂电池组或电池充电器出现破损、严重发热、变形、变色、有异味或者其他任何异常现象时不得使

用,并及时联系亚博或其他代理商处理。

10.请在温度0℃到35℃环境下使用,其他温度下锂电池组或电池充电器稳定性可能会出现下降。

11.严禁故意刺破、短路、反接、私自焊接、撞击、碾压、抛掷锂电池组或电池充电器。

12.禁止在强静电和强磁场环境中使用产品,否则会导致产品损坏。

13.严禁私自改装或修改硬件电路板。

14.无成人监护时,请不要让儿童使用锂电池组或电池充电器,存放电池时应放在儿童不能拿到的地方。

15.锂电池组或电池充电器冒烟、发烫(严重时外壳会裂开),应迅速断开电源总开关、排插电源或者断

开总闸,并将电池或充电器放至空旷地带。

1.4扩展板介绍

正面元器件分布图 1-3

①T型DC 12V电源输入接口:作为扩展板的主电源输入,连接到DC 12V电源或者12V电池。

②⑨DC 12V电源输出:向外提供DC 12V电源。

③电源指示灯:指示电源供电是否正常。

④micro USB数据接口:连接主机通讯和烧录程序。

⑤type-C接口:向外提供DC 5V,仅供电不能通讯。

⑥DC 5V输出接口:可给Jetson Nano供电。

⑦I2C接口:可连接外部I2C设备,例如OLED屏幕。

⑧指示灯:数据指示灯和6.8V电压指示灯。

⑩DC 12V电源开关:电源总开关。

⑪按键:按键KEY1:用户功能按键,可通过编程实现自定义功能。按键RESET:板载单片机复位按键。

按键BOOT0:板载单片机BOOT0键,用于单片机进入烧录模式。

⑫九轴姿态传感器:提供扩展板当前姿态。

⑬CAN接口:连接CAN设备。

⑭RGB炫彩灯条接口:连接RGB炫彩灯条。

⑮SBUS接口:连接航模遥控器接收器。

⑯PWM舵机电压切换:改变跳线帽的位置可选择6.8V或者5V电压为PWM舵机供电。

⑰PWM舵机接口:可连接6.8V或者5V电压PWM舵机,需根据舵机电压在⑯选择对应的电压。

⑱串口舵机接口:连接到串口舵机机械臂。

⑲蜂鸣器:用于鸣笛报警。

⑳四路电机连接口:连接四个电机,根据不同车型连接方式请参考对应课程文档。

背面元器件分布图 1-4

①板载单片机:主要负责控制扩展板上的外设,例如蜂鸣器、电机驱动等。

②调试接口:连接到ST-Link或者J-Link上SW接口,用于调试单片机或者下载单片机固件。注意:焊接后

不保修

扩展板常见问题

A : Jetson Nano怎么控制扩展板?如何与扩展板通讯?

答:Jetson Nano发送串口数据,通过USB口传输到扩展板,扩展板上集成了单片机,接收并解析串口数

据,再处理具体要执行的命令。

B : 机器人如何供电?Jetson Nano需要另外供电吗?

答:小车出厂配有电池组,将电池组插入扩展板的DC 12V电源T型接口上,打开总电源开关,扩展板集

成电压转化芯片,提供DC 5V电源,通过DC 5V电源线传输给Jetson Nano供电。

C : 扩展板上哪些功能是由单片机管理??

答:扩展板上的单片机管理的部分包括:机械臂、有源蜂鸣器、姿态传感器、PWM舵机云台、电机、

RGB炫彩灯条、按键KEY1、RESET键、SBUS接口、CAN接口等。

D : 扩展板如何更新单片机固件?为什么要更新单片机固件?

答:扩展板集成的单片机出厂时已经烧录好固件,非必要情况下请无需更新固件。如果需要更新固件,

请参考更新固件的教程来操作更新单片机的固件。

1.5 STM32开发环境搭建

STM32CubeIDE介绍

STM32CubeIDE是一个多功能的集成开发工具,集成了TrueSTUDIO和STM32CubeMX,它是STM32Cube软件生态系统的一部分。

STM32CubeIDE是一个先进的C/C++开发平台,具有STM32微控制器的IP配置,代码生成,代码编译和调试功能。

它基于ECLIPSE™/ CDT框架和用于开发的GCC工具链以及用于调试的GDB。

它允许集成数百个现有插件,完成ECLIPSE™IDE的功能。

主要特点

集成STM32CubeMX:STM32微控制器选择,引脚分配,时钟,IP和中间件配置

,项目创建和初始化代码的生成。基于Eclipse™/CDT,支持ECLIPSE的™插件,GNU C / C ++中ARM®工具链和GDB调试器。

其他高级调试功能:CPU内核,IP寄存器和内存视图,实时变量观看视图,系统分析和实时跟踪(SWV),CPU故障分析工具,支持ST-LINK和J-Link调试探针,从TrueSTUDIO®和AC6导入项目

支持操作系统:Windows®,Linux®和MacOS®

下载安装包

/zh/development-tools/stm32cubeide.html

图 1-5

根据电脑系统下载,这里以Win10系统安装1.10.1版本为例,选择最新版本下载。有账户可以登录直接下载,不想登录可以通过邮件下载。解压下载到的文件,解压路径不要有中文。

开始安装

图 1-6

图 1-7

图 1-8

安装路径可以自行修改,同样不要有中文。

图 1-9

图 1-10

图 1-11

图 1-12

图 1-13

图 1-14

安装完成过后,点击桌面的快捷方式,如图可以自己选择工作空间,不要带中文。

图 1-15

图 1-16

图 1-17

图 1-18

图 1-19

图 1-20

图 1-21

图 1-22

图 1-23

图 1-24

图 1-25

1.7 STM32环境布置代码部分

由于上一步图形化配置已经生成系统的初始化代码,所以我们只需要添加要实现的功能就可以了,找到main.c文件里的main函数,在while(1)下添加控制LED灯的内容,功能是LED灯每隔两百毫秒闪一次,按Ctrl+s保存代码

位置如图

图 1-26

HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, SET);HAL_Delay(200);HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin, RESET);HAL_Delay(200);

1.8编译程序

添加生成的HEX文件的功能

图 1-27

如图操作

图 1-28

点击工具栏中的锤子开始编译工程。

图 1-29

控制台会弹出如图所示文字

图 1-30

1.9烧录镜像

安装CH340驱动(去其他教程找找怎么装)

图 1-31

由于rosmaster扩展板的usb通讯使用了CH340芯片,所以需要安装CH340芯片驱动,如果电脑已经安装过CH340驱动则不需要重复

操作如图

图 1-32

图 1-33

下载烧录软件

烧录rosmaster扩展板需要用到mcuisp 网站网站下载,建议直接用资料中提供的mcuisp软件,无需安装。

图 1-34

在电脑连接rosmaster之前,请将扩展板连接jetson nano的Micro USB数据线和电源线拔掉。usb接电脑,数据线另一端接Micro USB接口。如图操作:

图 1-35

图 1-36

图 1-37

图 1-38

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。