diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1036bd2 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.obsidian/ \ No newline at end of file diff --git a/000000d7945cc8a8.moon b/000000d7945cc8a8.moon deleted file mode 100644 index 98165c2..0000000 Binary files a/000000d7945cc8a8.moon and /dev/null differ diff --git a/1号杆左侧.jpg b/1号杆左侧.jpg new file mode 100644 index 0000000..17a021e Binary files /dev/null and b/1号杆左侧.jpg differ diff --git a/20240929 博尔芯激光雷达厂家沟通.md b/20240929 博尔芯激光雷达厂家沟通.md new file mode 100644 index 0000000..f674c39 --- /dev/null +++ b/20240929 博尔芯激光雷达厂家沟通.md @@ -0,0 +1,61 @@ + +## 雷达信息 + +#### 技术背景 +* 根据激光雷达的工作原理,不管是单线激光雷达,多线激光雷达还是半固态激光雷达。最高测量精度只能到1厘米。 +* 雷达出厂前会对雷达进行标定。标定会在不同物体,不同距离的场景下,都将测量精度保持在出厂水平。所以雷达和目标物体的距离远近不会影响点云的测量精度,只会影响点云密度。 +#### 单线脉冲式激光雷达 +重量 300g +普通正常出厂版本测量精度2cm +出厂特挑测量精度1cm +普通版本价格2000~3000 特挑价格翻倍. +#### 相位测距 +重量 300g左右 +数据频率 20hz,一次只测量一个点。 +测量精度1.5mm +价格3000左右 +#### 真实场景测量要求 +* 测量横担长度,测量精度要求小于5cm +* 测量绝缘子尺寸,测量精度要求小于1cm +一场竣工验收,如果设备只能测量横担长度,基本没有意义。所以还是得全都测,那就要求测量精度1cm +### 技术方案 +#### 通用要求 +* 整个场景是一个大的系统,测量精度受以下因素影响。 +* 飞机的定位精度,如果定位精度小于要求的测量精度,那就需要通过算法补偿把定位精度提高到大于要求的测量精度 +* 如果需要做算法补偿,需要飞机IMU/外置IMU 数据精度满足要求 +* 云台的角度精度 +* 雷达的测量精度 +* 点云重建算法的精度 + +如果是按5cm 的标准,飞机和云台精度应该是满足的,雷达和重建算法精度应该不够。 +如果按1cm 及以下的标准,上述应该都不满足。 +### 方案一(现有方案) +使用单线雷达搭配云台结构,通过云台俯仰控制,扫描物体采集点云数据 +当前方案测量精度在10cm左右。 +#### 可优化的点 +* 替换不同的单线激光雷达做测试,比如这次的博尔芯的。 +* 点云重建算法优化,现在的算法比较简陋 +* 测量软件点云分割算法优化 +* 云台转动速度再慢一点,不过现在是1°/s 已经是非常慢的了 +#### 总结 +工作量相对比较小,不过优化后,也不一定能达到绝缘子的标准。 +### 方案二 +激光雷达数据和相机的可见光数据做融合 +### 优点 +* 对雷达的精度要求没那么高 +* 有了可见光数据融合测量会更直观 +#### 难点 +* 算法难度较大。基本只有学术界有相关成果。还得是顶级实验室的,而且他们场景和我们场景不一样,需要对算法做转化。 +* 需要相机配准,并且雷达和相机要做同步标定。最好是相机和雷达物理上固定在一起。 +#### 总结 +工作量大,算法要求高,而且也是不一定可以实现绝缘子测量。不过应该概率比上面的大。 +### 方案三 +使用相位测距,由于相位测距一次测量只有一个点,所以需要云台装载相位测距之后,使用云台对杆塔进行重复扫描 +#### 难点 +* 由于相位测距精度只有1.5mm 的误差,需要一个超高精度(大概0.01°)的云台结构配合才能实现。这个云台很难搞。 +* 对位置补偿算法要求也超高。 +* 使用这个方案,测量一根杆塔估计要5分钟起步。现有方案是1分钟 +#### 总结 +如果能完整发挥相位测距的精度,做到系统的其他部分不拖累。测量绝缘子没问题。 +### 备注 +只有方案一 使用富锐的雷达,富锐在软件上能分担一下工作量,其他方案基本都要我们自己做,或者找其他厂家/学校合作。 \ No newline at end of file diff --git a/2d17e914ea61b6c53a28add924db4c5.png b/2d17e914ea61b6c53a28add924db4c5.png new file mode 100644 index 0000000..c550bac Binary files /dev/null and b/2d17e914ea61b6c53a28add924db4c5.png differ diff --git a/Pasted image 20240518083857.png b/Pasted image 20240518083857.png new file mode 100644 index 0000000..9993ce3 Binary files /dev/null and b/Pasted image 20240518083857.png differ diff --git a/Pasted image 20240518083904.png b/Pasted image 20240518083904.png new file mode 100644 index 0000000..9993ce3 Binary files /dev/null and b/Pasted image 20240518083904.png differ diff --git a/Pasted image 20240518084818.png b/Pasted image 20240518084818.png new file mode 100644 index 0000000..f57599b Binary files /dev/null and b/Pasted image 20240518084818.png differ diff --git a/Pasted image 20240518085054.png b/Pasted image 20240518085054.png new file mode 100644 index 0000000..519fbf5 Binary files /dev/null and b/Pasted image 20240518085054.png differ diff --git a/Pasted image 20240518090635.png b/Pasted image 20240518090635.png new file mode 100644 index 0000000..a4ffb28 Binary files /dev/null and b/Pasted image 20240518090635.png differ diff --git a/Pasted image 20240920184848.png b/Pasted image 20240920184848.png new file mode 100644 index 0000000..61e31cf Binary files /dev/null and b/Pasted image 20240920184848.png differ diff --git a/Pasted image 20240920185245.png b/Pasted image 20240920185245.png new file mode 100644 index 0000000..853bae3 Binary files /dev/null and b/Pasted image 20240920185245.png differ diff --git a/Pasted image 20240920191057.png b/Pasted image 20240920191057.png new file mode 100644 index 0000000..3501f76 Binary files /dev/null and b/Pasted image 20240920191057.png differ diff --git a/Pasted image 20240920191357.png b/Pasted image 20240920191357.png new file mode 100644 index 0000000..2902066 Binary files /dev/null and b/Pasted image 20240920191357.png differ diff --git a/Pasted image 20240920191648.png b/Pasted image 20240920191648.png new file mode 100644 index 0000000..8d4819d Binary files /dev/null and b/Pasted image 20240920191648.png differ diff --git a/Pasted image 20240921092928.png b/Pasted image 20240921092928.png new file mode 100644 index 0000000..6572e30 Binary files /dev/null and b/Pasted image 20240921092928.png differ diff --git a/Pasted image 20240921093031.png b/Pasted image 20240921093031.png new file mode 100644 index 0000000..6572e30 Binary files /dev/null and b/Pasted image 20240921093031.png differ diff --git a/Pasted image 20240921093817.png b/Pasted image 20240921093817.png new file mode 100644 index 0000000..f97980e Binary files /dev/null and b/Pasted image 20240921093817.png differ diff --git a/Pasted image 20240921094049.png b/Pasted image 20240921094049.png new file mode 100644 index 0000000..3689e26 Binary files /dev/null and b/Pasted image 20240921094049.png differ diff --git a/Pasted image 20240921094402.png b/Pasted image 20240921094402.png new file mode 100644 index 0000000..8e14e7e Binary files /dev/null and b/Pasted image 20240921094402.png differ diff --git a/Pasted image 20240921114346.png b/Pasted image 20240921114346.png new file mode 100644 index 0000000..72bb569 Binary files /dev/null and b/Pasted image 20240921114346.png differ diff --git a/Pasted image 20240921114906.png b/Pasted image 20240921114906.png new file mode 100644 index 0000000..0444582 Binary files /dev/null and b/Pasted image 20240921114906.png differ diff --git a/内网服务.md b/内网服务.md new file mode 100644 index 0000000..fd4333d --- /dev/null +++ b/内网服务.md @@ -0,0 +1,18 @@ +## truenas + +| 服务名称 | 地址 | 账号 | 密码 | +| :---------------- | -------------------: | :----: | ---------------------- | +| Portainer | 192.168.31.195:9000 | admin | wujinhui@0206 | +| jellyin | 192.168.31.195:30013 | yewuya | wujinhui | +| TinyMideaManageer | 192.168.31.195:30057 | | wujinhui | +| qbittorrent | 192.168.31.195:18081 | admin | wujinhui | +| Transmission | 192.168.31.195:30096 | | | +| moviePilot | 192.168.31.195:3000 | admin | 2GggqFaJKOVulIDuAJxOzw | +## desktop computer hyper V ubuntu24 + +| 服务名称 | 地址 | 账号 | 密码 | +| :-------------- | -------------------: | :------------------: | --------------- | +| immich | 192.168.31.233:2283 | yewuya0206@gmail.com | wujinhui | +| beancount-trans | 192.168.31.233:38001 | admin | 123456 | +| Portainer | 192.168.31.233:9443 | admin | wujinhui@0206 | +| gitea | 192.168.31.233:3000 | yewuya | vYpDz85edb4FJZy | diff --git a/周报.md b/周报.md new file mode 100644 index 0000000..cb8d1ed --- /dev/null +++ b/周报.md @@ -0,0 +1,10 @@ +激光雷达板卡软硬件联调 + +联调发现许多预料不到的问题,核心板硬件也疑似损坏,下周继续 + +星基板卡测试和衢州演示汇报 +在衢州山区无信号地区测试效果还可以。 + + +星基板卡优化和测试 +激光雷达板卡软硬件联调 \ No newline at end of file diff --git a/大疆机库远程操作指令.md b/大疆机库远程操作指令.md new file mode 100644 index 0000000..d6741b5 --- /dev/null +++ b/大疆机库远程操作指令.md @@ -0,0 +1,143 @@ +夜无涯 +## 连接mqtt 服务器 +### 下载mqtt客户端软件 +https://github.com/thomasnordquist/MQTT-Explorer/releases/download/v0.4.0-beta.6/MQTT-Explorer-Setup-0.4.0-beta.6.exe +使用上面链接下载并安装,如果发现速度过慢,可以找我发你下载好的安装包 +### 配置参数连接服务器 +按图示顺序操作,参数保持一致 + +![[Pasted image 20240518090635.png]] +## 控制指令发送 +### 机库指令topic 确认 +**高塘机库** +```sh +thing/product/7CTDM1L00B1N1P/services +``` +其中7CTDM1L00B1N1P是高塘机库的序列号,如果需要控制其他机库,需要修改机库序列号为其他机库的序列号。 +### 消息发送 +![[Pasted image 20240518084818.png]] +按照图示操作,填入topic 和消息内容之后点击发送即可。 +推流画质调整,直接发送相应指令即可,不需要进入远程调试模式 +无人机开关机 消息发送顺序。 +具体消息内容看最后部分 +1 打开远程调试模式 +2 等待两秒 +3 无人机开机 +4 等机库状态变成在线 +5 无人机关机 +6 关闭远程模式 +### 消息内容 + +**打开远程调试模式** +```json +{ + "bid": "21c0f053-53f0-4e12-bcfc-eab208f04b48", + "tid": "c3b76b2a-49d6-48b2-82db-bcf69e24d1d8", + "timestamp": 1714372584862, + "method": "debug_mode_open", + "data": null +} +``` +**无人机开机** +```json +{ + "bid": "21c0f053-53f0-4e12-bcfc-eab208f04b48", + "tid": "c3b76b2a-49d6-48b2-82db-bcf69e24d1d8", + "timestamp": 1714372584862, + "method": "drone_open", + "data": null +} +``` +**无人机关机** +```json +{ + "bid": "21c0f053-53f0-4e12-bcfc-eab208f04b48", + "tid": "c3b76b2a-49d6-48b2-82db-bcf69e24d1d8", + "timestamp": 1714372584862, + "method": "drone_close", + "data": null +} +``` +**关闭远程模式** +```json +{ + "bid": "21c0f053-53f0-4e12-bcfc-eab208f04b48", + "tid": "c3b76b2a-49d6-48b2-82db-bcf69e24d1d8", + "timestamp": 1714372584862, + "method": "debug_mode_close", + "data": null +} +``` +**打开增强图传** +```json +{ + "bid": "21c0f053-53f0-4e12-bcfc-eab208f04b48", + "tid": "c3b76b2a-49d6-48b2-82db-bcf69e24d1d8", + "timestamp": 1714372584862, + "method": "sdr_workmode_switch", + "data": { + "link_workmode": 1 + } +} +``` +**机库重启** +```json +{ + "bid": "21c0f053-53f0-4e12-bcfc-eab208f04b48", + "tid": "c3b76b2a-49d6-48b2-82db-bcf69e24d1d8", + "timestamp": 1714372584862, + "method": "device_reboot", + "data": null +} +``` +### 升级固件 + + +```json +{ + "bid": "21c0f053-53f0-4e12-bcfc-eab208f04b48", + "tid": "c3b76b2a-49d6-48b2-82db-bcf69e24d1d8", + "timestamp": 1714372584862, + "method": "ota_create", + "data": { + "devices": [ + { + "file_name": "M3TD_10.01.16.07_pro.zip", + "file_size": 407771084, + "file_url": "https://test.minio.aihang.cn/aihang/firmware/M3TD_10.01.16.07_pro.zip", + "firmware_upgrade_type": 2, + "md5": "568dafc36d5403b578f9241c5e118a45", + "product_version": "10.01.1607", + "sn": "1581F6Q8D242U00CQ97P" + }, + { + "file_name": "DOCK2_10.01.16.07_pro.zip", + "file_size": 485806750, + "file_url": "https://test.minio.aihang.cn/aihang/firmware/DOCK2_10.01.16.07_pro.zip", + "firmware_upgrade_type": 2, + "md5": "ad116e1251f565b61c7553efb0e61cae", + "product_version": "10.01.1607", + "sn": "7CTDM1L00B1N1P" + } + ] + } +} +``` + +### 推流画质更改 +推流画质更改不需要打开远程调试模式。 +**内容** +*其中7CTDM6F00BPE12 是机库序列号需要根据机库替换* +1 是最低画质 4是最高画质 +```json +{ + "data": { + "video_quality": 1, + "video_id": "7CTDM6F00BPE12/165-0-7/normal-0" + }, + "method": "live_set_quality", + "tid": "43c16d7d-de77-445b-9f0f-000b1d0e9d53", + "bid": "7b0e2914-040b-4bb7-a9a7-9d6c36448ecc", + "timestamp": 1724113520310 +} +``` \ No newline at end of file diff --git a/无人机喊话器mqtt对接.md b/无人机喊话器mqtt对接.md new file mode 100644 index 0000000..b055d95 --- /dev/null +++ b/无人机喊话器mqtt对接.md @@ -0,0 +1,116 @@ +### mqtt 基础配置 + +| 配置项 | 内容 | 备注 | +| ---------- | ------------------------------------ | ---------------- | +| mqtt 服务器地址 | mqtt.aihang.cn:1883 | | +| username | ahmqtt | | +| 指令发送topic | /ah/uav/${deviceId}/command/ | deviceId 为无人机序列号 | +| 指令响应topic | /ah/uav/${deviceId}/commandResponse/ | deviceId 为无人机序列号 | +## 指令发送内容 + +| 字段名 | 字段值介绍 | 字段类型 | 是否必填 | +| ---------- | -------------------- | ------- | ------ | +| deviceId | 无人机序列号 | String | 是 | +| code | 指令code(参考指令集) | String | 是 | +| data | 数据体(参考指令集) | JSONObj | 否 | +| deviceType | 设备类型(无人机:uav) | String | 是 | +| sdkType | sdk类型 msdk | osdk) | String | +| time | 请求时间(ISO dateformat) | String | 否 | +### 请求示例: + +```json +{ +    "code": "actionMount", +    "data": { +        "type": "MP", +        "code": "shout", +        "param": { +            "conten": "无人机汉化内容", +            "repeat": false, +            "volume": 80, +            "speed": 50, +            "sex": 1 +        } +    }, +    "sdkType": "msdk", +    "deviceId": "1ZNDH8500B72MM", +    "requestId": "04c1fbde-2123-48b5-a159-d469b978147d", +    "time": 1667467817551 +} +``` + +### 响应体: + +| 字段名 | 字段值介绍 | 字段类型 | 是否都有值 | +| --------- | ------------------------------------ | ------- | ----------------------- | +| requestId | 请求ID(由服务端生成) | String | 否(是->code==0) | +| code | 请求结果(0成功,非0失败) | int | 是 | +| data | 响应数据 | JSONObj | 否(是->code==0&&是获取数据的请求) | +| msg | 备注信息(code==0,msg无用;code==1,msg为错误原因) | String | 是 | +| | | | | + +### 响应示例: + +```json +例1(请求成功无数据) +{ + "requestId": "04c1fbde-2123-48b5-a159-d469b978147d", + "code": 0, + "msg": "", + "data": "" +} +例2(请求失败) +{ + "requestId": "04c1fbde-2123-48b5-a159-d469b978147d", + "code": -1, + "msg": "", + "data": "" +} +``` + +# 指令集 + +\###操作挂载设备 + +code: actionMount + +data: ↓ + +| 字段名 | 字段值介绍 | 字段类型 | 是否必填 | +| ------ | -------- | -------------- | ---- | +| type | 挂载设备类型 | String(喊话器:MP) | 是 | +| code | 挂载设备操作指令 | String | 是 | +| params | 挂载设备操作参数 | Obejct | 否 | + +挂载设备类型: + +```json +type(String):MP 喊话器 +``` + +挂载设备类型对应操作指令: + +``` +type = MP: +code1:shout 喊话 +code2:stop 停止 +``` + +``` +code = shout +param: ↓ +``` + +| 字段名 | 字段值介绍 | 字段类型 | 是否必填 | +| ------ | ----------------- | ------- | ---- | +| conten | 文字内容 | String | 是 | +| repeat | 是否重复喊话 | Boolean | 是 | +| volume | 声音大小,0-100(默认为50) | Integer | 是 | +| speed | 喊话语速,0-100(默认为50) | Integer | 是 | +| sex | 声音男女,0女1男(默认男) | Integer | 是 | + +``` +code = stop +param:null +``` + diff --git a/激光雷达当前进度总结.md b/激光雷达当前进度总结.md new file mode 100644 index 0000000..98becfb --- /dev/null +++ b/激光雷达当前进度总结.md @@ -0,0 +1,34 @@ +## 温岭实测数据分析总结 +*详细信息参考excel* +### 横担长度 +* 框选后自动测量误差平均值10cm +* 手动选点测量误差平均值2cm +### 绝缘子高度 +*点云中绝缘子特征很不明显,只能大概测量,测量误差不太具备参考价值 * +* 框选后自动测量误差平均值10cm +* 手动选点测量误差平均值2cm +### 当前无法测量参数 +* 绝缘子直径 +* 横担的边长 +![[Pasted image 20240921114346.png]] + +# 当前存在问题 + +## 软件问题 +* 无法实现全自动测量,只能手动框选后自动测量长度 +* 测量精度依赖框选操作的好坏,框选多了少了都会导致误差增大 +* 横担相对比较好框选,绝缘子很难框选 +#### 解决办法 +* 采集大量数据后进行机器学习训练,实现自动识别。 +* 根据杆塔结构特点设计点云分割算法 +### 雷达相关问题 +* 点云精度不足导致绝缘子特征很不明显 +#### 解决办法 +* 采集数据时凑的更近一点,之前采集点云都是8~10米左右距离。下图是无人机距离杆塔5米时的点云效果。 + +![[Pasted image 20240921114906.png]] + +* 提高雷达的角分辨率,减小光斑大小,实现雷达自身精度提升。 + + + diff --git a/激光雷达测试报告.md b/激光雷达测试报告.md new file mode 100644 index 0000000..8d12639 --- /dev/null +++ b/激光雷达测试报告.md @@ -0,0 +1,20 @@ +### 测量精度要求 +横担的长度规格有0.8m、1.1m、1.2m、1.5m、1.7m、1.8m、1.9m、2.3m、3m、5.1m、6m +根据以上条件,为了确保判断准确,需要将横担长度测量误差控制在±5cm以内。 +### 对比测试的雷达 +* 富锐 R2 https://free-optics.com/product/info/4 +* 大疆L2 https://enterprise.dji.com/cn/zenmuse-l2?site=enterprise&from=nav +* 大疆L1 https://www.dji.com/cn/support/product/zenmuse-l1 +* 数字绿土X3 https://www.lidar360.com/archives/portfolio/liair-x3 +## 测试场景 +## 测试杆塔横担真实长度1.5m + +![[1号杆左侧.jpg]] +### 场景一 +无人机距离横担水平距离10m 垂直方向10m,直线距离14m + +![[综合对比14m.png]] +### 场景二 +无人机距离横担水平距离5m 垂直方向5m,直线距离7m + +![[2d17e914ea61b6c53a28add924db4c5.png]] \ No newline at end of file diff --git a/综合对比14m.png b/综合对比14m.png new file mode 100644 index 0000000..4225c48 Binary files /dev/null and b/综合对比14m.png differ diff --git a/购票.md b/购票.md new file mode 100644 index 0000000..adc77af --- /dev/null +++ b/购票.md @@ -0,0 +1,14 @@ +尊敬的票务公司工作人员: + +您好! + +我是无法注册eplus会员的海外用户,我在购票时遇到一个问题,需要您的帮助。我购买了Fujii Kaze Stadium Live "Feelin' Good"演唱会的两张票,时间是2024年8月24日(星期六)17:45,但在填写信息时不慎只填了一位乘客的名字。我非常抱歉因为我的疏忽给您带来了不便。订单号是346528。 +请问是否可以在第二张票上补上乘客的名字?第二位观众的姓名是WU JIN HUI。 + +非常感谢您的理解和帮助! + +此致 + +敬礼 + +WU JIN HUI \ No newline at end of file diff --git a/音乐厅.md b/音乐厅.md new file mode 100644 index 0000000..7423e2f --- /dev/null +++ b/音乐厅.md @@ -0,0 +1,8 @@ + +杭州大剧院 +运河大剧院 +宁波大剧院 +上海大剧院 +东方艺术中心 +九棵树未来艺术中心 +捷豹上海交响音乐厅