准备工作:安装有相关环境的电脑一台,组装好的无人驾驶小车一台,烧录好系统的SD卡一张,与烧录SD卡配置一致的路由器一台。

注:以下内容都以主机名为duckiebot1的小车为例说明。


目录

1、第一次启动小车

2、初始化设置

3、远程登陆

4、更新电池固件

5、更新驱动板固件


1、第一次启动小车

SD卡插入主控板卡槽,单按一下电池按钮,系统启动,正常现象为:

可以看到duckiebot1对应IP为192.168.1.104,则说明电脑与小车网络连接成功。

在虚拟中输入小车在线查询指令:

$ dts fleet discover

可以看到在线小车列表,即可进行下一步配置。


2、初始化设置

电脑连接到路由器上,小车启动后会自动连接路由器。打开浏览器,访问地址:http://duckiebot1或者http://duckiebot1.local

TImezone选择Asia/Shanghai,其他默认,点Next:

全部默认,点Next:

点finish完成设置,进入小车状态查看页面:

点左上角的LOGIN,登录软件:

选择 Sign in as Developer,

输入token:dt1-3nT8KSoxVh4MdKBWdBDdexqAPFFC5NX8YDcM5VgNMqDa5sr-43dzqWFnWd8KBa1yev1g3UKnzVxZkkTbfgkb4xRu1FHbvrYx1NU8TdwoenF36xqzWD

并确认,可以看到以下目录:

常用目录为以下3个:

FILE MANAGER:文件管理器,可以查看部分配置文件

PORTAINER:镜像管理系统,可以查看并控制系统docker实例

ROBOT:小车状态页面

设置部分主要用一下ROBOT界面:

在这里的Info页可以看到小车主控板系统运行参数,包括温度、磁盘空间、CPU使用率、内存使用率、主频使用率以及电池电量;

在Mission Control页面可以看到电机状态以及摄像头画面:

注:如果摄像头图像是花色雪花状,请移除摄像头的镜头盖

通过旋转摄像头镜头,调节焦距,直到图像比较清晰为止。


3、远程登陆

打开windows电脑终端,输入命令:

$ ssh duckie@duckiebot1

duckie:默认用户名

duckiebot1:烧录SD卡时设置的主机名(--hostname)

登录密码:quackquack

查看启动的docker实例

$ docker ps -a


4、更新电池固件

更新电池驱动,需要在安装有Duckietown Shell的linux系统下进行,登录虚拟机,输入电池信息查询命令:

$ dts duckiebot battery check_firmware duckiebot1

INFO:dts:Fetching data from robot 'duckiebot1'...

boot:

date: 09/30/21

pcb_version: '16'

version: '1'

serial_number: 29EDA9EF

version: 2.0.2

显示固件版本为2.0.2则不需要更新,如果不是2.0.2,需要更新电池固件

$ dts duckiebot battery upgrade duckiebot1

等待下载镜像文件,并启动更新程序,当提示双击电池按键进入boot模式时,快速连续按两次电池按钮,则可更新电池固件。


5、更新驱动板固件

通过SSH远程登陆duckiebot1

更新软件包

$ sudo apt-get update

安装需要的软件

$ sudo apt-get install bison autoconf flex gcc-avr binutils-avr gdb-avr avr-libc avrdude build-essential -y

下载固件安装包并配置、编译、安装

$ git clone https://github.com/duckietown/fw-device-hut.git

$ cd fw-device-hut

$ sudo cp _avrdudeconfig_jetson_nano/avrdude.conf /etc/avrdude.conf

$ make fuses

sudo avrdude -p attiny861 -c linuxgpio -P -q -U lfuse:w:0xe2:m -U hfuse:w:0xdf:m -U efuse:w:0xff:m

avrdude: AVR device initialized and ready to accept instructions

......

avrdude: verifying ...

avrdude: 1 bytes of efuse verified

avrdude: safemode: Fuses OK (E:FF, H:DF, L:E2)

avrdude done. Thank you.

$ make

-------- begin --------

avr-gcc (GCC) 5.4.0

Copyright (C) 2015 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

......

avrdude: verifying ...

avrdude: 2832 bytes of flash verified

avrdude: safemode: Fuses OK (E:FF, H:DF, L:E2)

avrdude done. Thank you.

删除安装包并重启

$ cd .. && rm -rf fw-device-hut

$ sudo reboot