快捷导航
本帖最后由 zuoanyx 于 2021-12-27 16:34 编辑

我的设备是 Apex Xavier 4.4-1.1.0。然后上面有 8 个 Sensing GMSL 的相机,型号为 AR0147C,还有一个 Livox-mid70 和一个镭神 c16。目前 Apex 的时间同步已经做完了,用的是 ublox 的 gps 模块输出 NMEA+PPS 到 Apex 的 SYNC_IO 和 UART_TTL_232(B) 上。

1. Apex 的时间同步到 GPS 上之后,相机的同步是 Apex 自己触发曝光的吧?那么在相机的 ROS demo 中发布出来的图像话题打印其时间戳,这个时间戳是不是无法保障同步?

2. 在 ros 中打开全部 8 个相机 ,分辨率是 1280×720, 帧率为 25 fps,这个时候查看一个相机发布的图像话题的带宽(rostopic bw),一个就有 93MB/s,请问这个 8 个摄像头占用的带宽会对系统造成什么样的负面影响吗?

3. 我的 livox mid-70 可以支持 ptp 时间同步,我在系统中设置了 ptpd,livox 同步成功,通过 rostopic echo /livox/lidar | grep sec 和 watch -n 0.1 date +%s+%N 来对比时间,时间是基本上同步的。镭神 C16 支持 NTP 和系统同步,采用上面同样的方法看发布的时间戳,发现始终要差上大概 5s,请问这个是可能是原因造成的呢?

4. 我在 MIIVII Setting 中的同步模式选择的是 GPS,然后在终端中设置 timedatectl set-ntp true 打开 NTP,这样是不是就是 apex 的时间是和外部 GPS 输入同步的,然后 apex 自己上面运行了一个 ntp 服务,用来和上面 3 中的镭神雷达进行时间同步,我这样理解是对的吗?

5. 我在 MIIVII Setting 中的同步模式选择的是 GPS,4 中的 timedatectl set-ntp false,这个时候用 timedatectl status 查看的话,会输出如下信息,请问这个 system clock synchronized 和 systemd-timesyncd.service activate 如何理解呢?

  1. nvidia@miivii-tegra:~$ timedatectl status
  2.                       Local time: 一 2021-12-27 16:10:38 CST
  3.                   Universal time: 一 2021-12-27 08:10:38 UTC
  4.                         RTC time: 一 2021-12-27 08:10:39
  5.                        Time zone: Asia/Shanghai (CST, +0800)
  6.        System clock synchronized: no
  7. systemd-timesyncd.service active: no
  8.                  RTC in local TZ: no
复制代码

6. 我也尝试用 apex 的 PPS_B 线的输出。是不是 apex 通过 SYNC_IO 和 UART_TTL_232_B 和完成时间同步后,PPS_A 和 PPS_B 都会输出 NMEA+PPS 信号?(从而给支持 PPS+NMEA 同步的传感器进行时间同步,比如 PPS_B_TX 发布 NMEA 数据,来源是 UART_TTL_232_B 传进来的 GPRMC,PPS_B_SYNC 发布 PPS 信号)我这样理解是对的吗?
举报 使用道具
| 回复

共 4 个关于本帖的回复 最后回复于 2021-12-30 20:44

Hcheng 游客 发表于 2021-12-29 08:40 | 显示全部楼层
您好:
您的问题非常的清晰和详细,简直可以作为典型样板了,非常感谢!

1. Apex 的时间同步到 GPS 上之后,相机的同步是 Apex 自己触发曝光的吧?那么在相机的 ROS demo 中发布出来的图像话题打印其时间戳,这个时间戳是不是无法保障同步?

是Apex触发曝光。
ROS demo中有替换时间戳,所以demo中ros topic的时间戳是同步的。


2. 在 ros 中打开全部 8 个相机 ,分辨率是 1280×720, 帧率为 25 fps,这个时候查看一个相机发布的图像话题的带宽(rostopic bw),一个就有 93MB/s,请问这个 8 个摄像头占用的带宽会对系统造成什么样的负面影响吗?

会占用内存带宽,降低系统性能,而且ROS应该会丢帧,不建议这么做。
但负面影响无法量化。


3. 我的 livox mid-70 可以支持 ptp 时间同步,我在系统中设置了 ptpd,livox 同步成功,通过 rostopic echo /livox/lidar | grep sec 和 watch -n 0.1 date +%s+%N 来对比时间,时间是基本上同步的。镭神 C16 支持 NTP 和系统同步,采用上面同样的方法看发布的时间戳,发现始终要差上大概 5s,请问这个是可能是原因造成的呢?

NTP是不可靠的。基本是因为镭神固件造成的。可以试试用PPS同步镭神的雷达。

4. 我在 MIIVII Setting 中的同步模式选择的是 GPS,然后在终端中设置 timedatectl set-ntp true 打开 NTP,这样是不是就是 apex 的时间是和外部 GPS 输入同步的,然后 apex 自己上面运行了一个 ntp 服务,用来和上面 3 中的镭神雷达进行时间同步,我这样理解是对的吗?

这样NTP和GPS会错乱的。只要选择GPS模式即可。但不要打开NTP。
GPS授时和NTP是互斥的。
开NTP server可以,但不太建议,本身NTP就是不可靠的。


5. 我在 MIIVII Setting 中的同步模式选择的是 GPS,4 中的 timedatectl set-ntp false,这个时候用 timedatectl status 查看的话,会输出如下信息,请问这个 system clock synchronized 和 systemd-timesyncd.service activate 如何理解呢?

这个是linux的机制呢,是NTP的打印。
https://askubuntu.com/questions/ ... ock-synchronization


6. 我也尝试用 apex 的 PPS_B 线的输出。是不是 apex 通过 SYNC_IO 和 UART_TTL_232_B 和完成时间同步后,PPS_A 和 PPS_B 都会输出 NMEA+PPS 信号?(从而给支持 PPS+NMEA 同步的传感器进行时间同步,比如 PPS_B_TX 发布 NMEA 数据,来源是 UART_TTL_232_B 传进来的 GPRMC,PPS_B_SYNC 发布 PPS 信号)我这样理解是对的吗?
是的,都会输出NMEA+PPS 信号。
> 来源是 UART_TTL_232_B 传进来的 GPRMC,PPS_B_SYNC 发布 PPS 信号)我这样理解是对的吗?
不是的,即使没有GPS授时,也会有输出。
所以这个功能并不依赖于收到的GPRMC信号。
GPSRMC只是对Apex进行时间授时。而Apex输出的是其本身时钟的PPS信号。只是两者基本同步罢了。
zuoanyx 游客 发表于 2021-12-29 16:16 | 显示全部楼层
Hcheng 发表于 2021-12-29 08:40
您好:
您的问题非常的清晰和详细,简直可以作为典型样板了,非常感谢!

非常感谢您的回答,我这里还有一些细节希望和您确认一下。

这样NTP和GPS会错乱的。只要选择GPS模式即可。但不要打开NTP。
GPS授时和NTP是互斥的。
开NTP server可以,但不太建议,本身NTP就是不可靠的。
这个 NTP server 的打开是不是要先 apt install ntp 再配置后运行?我在 MIIVII Setting 中的同步模式选择 GPS,然后在 apex 开启 ntp server,这样并不会影响 Apex 接收 GPS 的授时(尽管 NTP 不可靠),请问我这样理解对吗?
是的,都会输出NMEA+PPS 信号。
> 来源是 UART_TTL_232_B 传进来的 GPRMC,PPS_B_SYNC 发布 PPS 信号)我这样理解是对的吗?
不是的,即使没有GPS授时,也会有输出。
所以这个功能并不依赖于收到的GPRMC信号。
GPSRMC只是对Apex进行时间授时。而Apex输出的是其本身时钟的PPS信号。只是两者基本同步罢了。
我理解了即便没有 GPS 授时,Apex 的 PPS 信号输出是一定有的,但是此时输出的 NMEA 数据来源是哪里呢?

还有一个问题:
Apex Xavier 4.4-1.1.0 在 MIIVII Setting 中有一个 Sync Out 的设置,这里默认填写的是 25 Hz,请问修改这个参数,会影响到哪些设备呢?我目前的理解是,这个 Sync Out 是不是会影响到 SYNC_IO 线的 SYNC_OUT_A 针脚输出?是不是也会影响相机的触发频率?
Hcheng 游客 发表于 2021-12-30 20:42 | 显示全部楼层
zuoanyx 发表于 2021-12-29 16:16
非常感谢您的回答,我这里还有一些细节希望和您确认一下。

这个 NTP server 的打开是不是要先 apt insta ...

这个 NTP server 的打开是不是要先 apt install ntp 再配置后运行?我在 MIIVII Setting 中的同步模式选择 GPS,然后在 apex 开启 ntp server,这样并不会影响 Apex 接收 GPS 的授时(尽管 NTP 不可靠),请问我这样理解对吗?
是的,NTP Server不影响授时。但是如果同时打开了NTP授时和GPS授时,那就没谱了。

我理解了即便没有 GPS 授时,Apex 的 PPS 信号输出是一定有的,但是此时输出的 NMEA 数据来源是哪里呢?
不论有没有GPS授时,输出的PPS中NMEA数据都是系统时间。
只是授时的时候系统时间和GPS时间保持一致。


Apex Xavier 4.4-1.1.0 在 MIIVII Setting 中有一个 Sync Out 的设置,这里默认填写的是 25 Hz,请问修改这个参数,会影响到哪些设备呢?我目前的理解是,这个 Sync Out 是不是会影响到 SYNC_IO 线的 SYNC_OUT_A 针脚输出?是不是也会影响相机的触发频率?
Sync out频率只影响SYNC_IO 线的 SYNC_OUT_A 针脚输出,不影响其他东西。
zuoanyx 游客 发表于 2021-12-30 20:44 | 显示全部楼层
Hcheng 发表于 2021-12-30 20:42
这个 NTP server 的打开是不是要先 apt install ntp 再配置后运行?我在 MIIVII Setting 中的同步模式选 ...

清楚了,非常感谢!
您需要登录后才可以回帖 登录 | 点我注册

精彩推荐

  • MIIVII EVO ORIN的最新镜像中米文的源报404
  • 求助,储存空间不够,如何解决
  • APEX AD 10问题见图片
  • 相机启动launch
  • APEX AD-10 GPS授时修改串口波特率

明星用户