作者:简心语、彭正皓
实现三体船单独避障, 实现彭正皓和简心语工作的合并, 若有时间再测试跟踪和避障合并.
标准:
- 单独避障, 采用GPS
- 彭正皓, 简心语接口测试
- 单独跟踪, 采用Lidar
- 单独避障, 采用Lidar
- 跟踪和避障, 采用GPS
- 跟踪和避障, 采用Lidar
试验名(顺序) | 避障数据源 | 追踪数据源 | 备注 |
---|---|---|---|
001 | 假 | 假 | |
不做 | |||
004 | 假 | lidar | |
002 | GPS | 假 | |
003 | GPS | GPS | |
不做 | |||
005 | lidar | 假 | |
不做 | |||
006 | lidar | lidar |
首先在包图完成实验室测试,包含内容:
- 成功从lidar接收数据到彭正皓的电脑
- 成功从彭正皓的电脑发送target数据到台式机
- 台式机能够顺利解码彭正皓发送的target
- 保证简心语对target丢失、target瞬移、接收断裂三种情况有足够的应急预案。
- 登陆一号船、删除以往老数据
一个核心内容:
- GPS位置和lidar检测目标位置标定,需要双船皆下水的时候才能进行。
结束指标:
- GPS, AHRS, WiFi稳定
- 电机正常工作
- 遥控正常工作
TODO @简心语 如如何初始化障碍物位置,如何确定目标的gps假位置
下面两句话是抄过来的,你有N个实验其实本质上是一个实验。
采用另一艘三体船作为移动障碍物, 使用GPS反馈障碍物坐标, 实现避障. 确定dynamic window config()各种参数
采用帆船作为跟踪目标, 另一艘三体船作为移动障碍物, 使用GPS反馈坐标, 实现跟踪和避碰的切换
- 跟踪和避碰的切换
- 避碰时不丢失目标
-
稳定识别目标
-
crossing from left
-
crossing from right
-
overtake
-
head-on
TODO @简心语
(放后面去,这个没啥子意义,只是演示罢了)
本试验需安排真障碍物进行骚扰!
- 稳定识别目标
- 稳定跟踪
TODO
TODO
- 船载平台开机:
- 接好两船的电源.
- 将箱子外部开关朝向自己, 打开箱子内部右边三个开关, 再打开外部开关即可上电.
- 当听到悦耳的声音时表明主板开机成功.
- 布置WIFI天线:
- 天线采用POE供电,一个网口接岸基台式机,一个网口接天线,
- 如接多个电脑,则加一个交换机。接好后ping
192.168.1.19
- 检查是否连上船载电脑WiFi:
岸基台式机上ping
192.168.1.150
,若不通,则ping192.168.1.21
,说明路由器能接通,路由器和主板的通讯有问题 - 布置GPS基站:
- 在WiFi架子上放置好GPS天线, 连接至接收机
- 给接收机供电, 并将其COM2接到岸基电脑,运行TLG001/Landed Program/GPS_BS_Configuration 读约一分钟的位置,取均值,认为是精确值,运行完自动停掉
- 打开GPS_Tools, 选串口,打开。 input基站读到的位置数据,output是把差分信号往船上发
- 运行船载平台程序:
- putty连船上主板,第一艘名称是usv150, 对应GPS名称是gps100, 同理第二艘usv152&gps102,账号密码均为sjtu。
sudo python3 文件名 &
, 运行AHRS.py, GNSS.py, motor_tlg.py, voltage.py. 注: &是放到后台运行, 多开几个putty终端则无需在后台运行- 如何修改船载程序?
- 岸基电脑的桌面TLG001/002文件夹,直接在sublime修改相应文件, 保存,右键SFTP/Upload file,密码sjtu。
- 如何杀死后台程序?
- "ps aux|grep py"展示所有后台程序
- "sudo kill -9 "编号""
- 运行岸基电脑端程序:
- 连上遥控杆
- 打开landed_porgram/joystick_pub.py: 右键-打开方式-python运行
- 检查船载GPS情况:
- putty登陆gps100 or gps102
- 终端输入
log bestposa ontime 2
, 表示每两秒显示一次GPS数据. 其中single表示没有差分, narrowfolat/narrowint表示有差分
- 关机sudo poweroff
- 第二艘船USB口损坏了一个. 若插hub, 则需要改端口名字 cd dev cd serial/by-id ls 并在相应船载文件修改URL