• [常见FAQ] 登录MDC 300F
    MDC 300F:以下简称MDC 。配置电脑(PC) IP通过电脑连接MDC时,请确保电脑的网卡配置中有与MDC登录IP同网段的网卡,但配置的IP不能和MDC的登录IP一致。例如:当通过MDC内的192.168.1.6 网卡登录到MDC。电脑上配置192.168.1 网段。将配置的192.168.1网段的IP配置成千兆网络。电脑上打开"命令提示符",执行ipconfig命令查看IP是否配置成功。登录MDC 300F网线连接电脑与MDC后,直接通过ssh命令登录MDC,登录命令示例:ssh sshuser@192.168.1.6。说明:MDC上有3个账号,权限从小到大分别为 sshuser、mdc、root。通过sshuser登录MDC后再通过su命令跳转。注意:ssh登录MDC前,在电脑上直接 ping MDC的IP,当能够ping通则表示电脑与MDC的网络连接状态正常,可以尝试ssh登录;当无法ping通可能原因如下:1)电脑上配置的IP有问题,没有配置成功或是配置的IP速率与MDC的IP速率不一致2)电脑与MDC连接的链路有问题,如果是通过 “GE”口连接的,大概率是网线有问题。如果是通过MTB 300转接盒转接的,可能是连接MTB转接盒的该网口速率与MDC和电脑不一致。MTB转接盒的八个网口限定了速率,1-6网口速率为100M,7-8网口速率为1000M,这个八个口的速率不可更改。3)MDC的环境有异常导致MDC无法登录,可以通过串口登录MDC。
  • [常见FAQ] 激光雷达(Lidar)接入及常见问题——MDC 300F
    1 激光雷达接入Lidar的接入需要根据接入的MDC IP口,修改Lidar自身的IP还有网关,修改成同一网段。以192.168.11.25 为例,Lidar的IP和网关均需改为 192.168.11.xx。接入的Lidar速率需要和接入的网络速率一致。同为百兆或者同为千兆。Lidar直接接入MDC直接接入MDC,需修改配置文件“usr_network_port.json(/opt/platform/mdc_platform/conf)”。修改对应端口的“MasterSlave”配置项的值改为“0”。根据实际需求,修改对应端口的“Speed”配置项的值为“100”或者“1000”。当激光雷达未使用转接盒,且Speed为“1000”时,需手动添加“UseMtb”配置项,配置项的值设置为“0”。Lidar通过MTB转接盒接入通过MTB转接盒接入,需修改配置文件“usr_network_port.json”。修改对应端口的“MasterSlave”配置项的值改为“1”。根据实际需求,修改对应端口的“Speed”配置项的值为“100”或者“1000”。激光雷达使用转接盒,“UseMtb”配置项改为“1”。2 激光雷达常见问题2.1 激光雷达接入后MDC上无法ping通激光的IP处理方式一确认激光接入的网口速率和激光本身是否一致。处理方式二确认是否通过MTB接入,接入排查请参见第一章“Lidar通过MTB转接盒接入”。处理方式三确认MDC的网口与外部网口的连接状态。若是激光直接通过车载以太口直连MDC,则查询的状态就是MDC与激光的连接状态。若是MDC与MTB相连,则查询的结果为MDC与MTB的连接状态。MDC 300F 有8个口可通过mdc_lswtools -r phyxx 3 0x901命令确定8个口的link状态:说明:phyxx指 phy0-phy7表1 phyxx与网口对应关系MDC 300F的车载以太口MTB转接盒的通用以太口对应的phyA11phy0A22phy3A33phy1A44phy2B15phy4B26phy7B3B478phy5phy6连续查两次,读出来的值是0x84或0x4,说明端口link up状态,否则是link down状态。link up状态:激光与MDC正常连接。link down状态:激光与MDC未连接。请排查如下内容:激光雷达到MDC这段的线束是否正常、激光雷达本身正常。激光雷达的速率和接入网口的速率是否一致。2.2 激光雷达时间同步要求在MDC 300F上使用支持列表以外的激光雷达,需满足MDC侧时间同步的要求。确保UDP 通路没有问题,在MDC侧可以ping通激光雷达IP,MDC上能收到激光原始UDP数据。MDC侧时间同步要求。1)查看协议配置和兼容性问题,MDC使用gPTP IEEE 802.1AS协议。说明:使用1588协议直接对接,可能会有兼容性问题。MDC侧是标准的gPtp协议。2)MDC侧已在时间同步报文中删除Annouce Message。说明:请确认时间同步报文缺少Annouce Message后是否能成功同步时间。3)直接看激光自己的错误,正向定位。判断MDC侧有无时间同步报文发送出去。1)300F的时间同步报文由MCU发送,网络上的LSW转发规则是,将MCU的gptp报文转发到Lidar、Lidar的gptp报文转发到MCU。2)所以无法在MDC侧通过抓包确认Lidar是否有发时间同步报文到MCU,但可判断MDC侧有没有发送时间同步报文给lidar,方法如下:① 在当前的数据链路上,将激光雷达拔下,使用PC接入该网口。② 在PC上通过Wireshark抓取数据包,抓包的IP为PC的IP。③ 打开数据包,查看是否有MCU发来的时间同步报文。
  • [常见FAQ] 毫米波雷达(Radar)接入及常见问题——MDC 300F
    毫米波雷达支持的型号为:ARS408请参照《产品文档》中“通路与硬件线缆配套关系”章节将CAN通路线缆接入MDC,下发MCU侧的can配置文件 “mcu_canfdbus_config.json”,下发默认配置就可以表示透传模式。下发配置命令mdc-tool devm set-dev-cfg 2说明:MDC 300F的毫米波雷达是通过CAN数据传入MCU,再由MCU传到MDC的SOC上。1 毫米波雷达的接入毫米波雷达有 Track模式和 Detect模式,接入MDC的要求如下:MDC上提供接入6路毫米波的接口上,对每个接入的毫米波模式都有要求且不能更改。表1 雷达ID和安装位置对应关系安装位置雷达ID标签雷达模式a正前方04_RADAR1Track左前方14_RADAR2Detect左后方24_RADAR3Detect正后方34_RADAR4Track右后方44_RADAR5Detect右前方54_RADAR6Detect说明a:ARS408毫米波雷达中Object模式对应Track,Cluster模式对应Detect。毫米波的模式配置在MDC侧不可修改,若需修改请咨询传感器厂家。2 毫米波雷达的常见问题2.1 怎么判断radar有没有接入成功支持型号的传感器:参照camera的方式,通过rtfevent hz命令查看radar的抽象event有没有数据。非支持型号的传感器:通过MCU的日志来判断数据是否传到MDC上。2.2 通过rtfevent 查不到毫米波的hz数据通过日志判断can数据是否传到MCU上,以及有没有被MCU成功转发到MCU上。该方式需要依赖MDC上的MCU日志,执行如下命令,修改环境上的MCU日志级别。mdc-tool mcu setloglevel infomdc-tool log-control appid MCU ctxid MCU level infomdc-tool log-convert continue /opt/log/host/platform_log/debug/日志名.log说明:--重启环境后恢复默认。--can00~can11:分别对应《产品文档》中"通路和硬件线缆配套关系"章节描述的“通路ID”0到11。--MCU日志字段说明请参照cid:link_0。
  • [常见FAQ] 组合定位(Ins)接入及常见问题——MDC 300F
    MDC 300F的组合定位是通过UART数据传入MCU,再由MCU传到MDC的SOC上。1 组合定位接入下文描述接入支持型号的传感器。请参照“表1 通路与硬件线缆配套关系”,根据对应的线缆标签接入组合定位。下发MCU侧的uart配置文件 “mcu_uartbus_config.json”。下发配置命令mdc-tool devm set-dev-cfg 0。表1 通路与硬件线缆配套关系透传通路通路ID设备接口管脚信号名配套ISO线缆标签MDC端是否有终端匹配电阻UART(遵循RS232接口标准)0RS232_MCU_GPS_TXGPS2_TX连接对端设备的RX-RS232_GPS_MCU_RXGPS2_RX连接对端设备的TX-GNDGPS2_GND连接对端设备的GND-PPS_GPS_CPLD_INGPS2_PPS--2 组合定位常见问题2.1 时间同步不成功问题现象组合定位接到MDC上,但时间同步不成功。处理方式查看传感器的型号,需要和支持型号一致才能保证时间同步正常。传感器型号不一致:需要根据产品文档实现时间同步功能,或是咨询厂家时间同步模块和我们支持的型号相比较有什么差异。传感器型号一致:参照如下步骤排查传感器接入MDC是否正常,数据是否传到MDC上:1)获取管理面时间只能通过Host侧获取时间接口获取,若认为过于繁琐,请执行2)。2)当前MDC内存在双时钟,Host侧使用date命令获取的为数据面时间,默认从2019年4月20日开始。执行命令mdc-tool devm sync-dp-time将数据面时间与管理面时间同步,等待3秒后再次执行date命令,观察时间是否与GPS同步。3)如仍然未同步,执行命令mdc-tool log-convert /opt/log/host/platform_log/debug/MCU_*.log,观察是否有如下报错:“No MngPPS Input”:PPS接线有误,部分传感器可能由于搜索不到卫星,不输出PPS。“No time message Input”:串口传输的GPRMC数据未正确识别,如波特率配置正确,确认是否下发配置并整板下电重启。也有可能是TX、RX接线错误,可以尝试对调。“GPS satellite search failure!”:GPS搜不到卫星,请于开阔处使用。2.2 时间同步不精确且偶现时间回退问题现象时间同步成功但不够精确,且偶现毫秒级的时间回退。原因分析PPS未正常接入:由于MDC 300F上时间同步依赖PPS,当接入的PPS信号丢失,MDC的时间同步只能做到秒级,不能毫秒级时间同步,当在发生时间同步时,会出现毫秒的回退。PPS接入正常:测量电压也正常,但是MCU日志显示PPS信号丢失,需排查MDC单板。MDC 300F有两种单板,分别是黑色的12V单板和白色的24V单板,它们对PPS电压的要求不一样。黑色单板:对PPS要求 5V-12V白色单板:对PPS要求5V-12V(或3.3V)处理方式确保PPS正常接入且电压满足要求。
  • [常见FAQ] 相机(camera)接入及常见问题——MDC 300F
    以下内容适用于MDC 300F。1 camera接入进入“/opt/platform/mdc_platform/manual_service/camera_tool/conf”目录,参考demo内容修改配置文件“userConf.json” 。进入“/opt/platform/mdc_platform/manual_service/camera_tool/bin”目录,执行./camera_tool解析加载配置参数。解析完成后,如果验证无误,则回显如下:Parse successCheck successMerge successSave success若解析过程中发现错误,会上报错误码。请参考配置加载工具错误码信息,根据错误码解析确定原因并进行修改。执行命令reboot重启MDC,使配置文件生效。2 camera常见问题2.1 接入后怎么判断camera是不是出流正常确保MDC内的环境正常。执行rtfevent list | grep -i camera查看camera抽象后的topic。rootmdchost:/home/sshuser#root@mdchost:/home/sshuser#root@mdchost:/home/sshuser# rtfevent list I grep -i camera/HuaweiMDC/PlatformServiceInterface/CameraServiceInterfacePkg/CameraDecodedServiceInterface/CameraPublishDecodedEvent[/HuaweiMDC/PlatformApplication/CameraCenterApplication/CameraCenterService/Mini0/CamerServiceProvider/camera decoded 11]/HuaweiMDC/PlatformServiceInterface/CameraServiceInterfacePkg/CameraEncodedServiceInterface/CameraPublishEncodedEvent[/HuaweiMDC/PlatformApplication/CameraCenterApplication/CameraCenterService/Host/CameraServiceProvider/camera encoded 72]root@mdchost:/home/sshuser#执行rtfevent hz --dds-network=192.168.1.6 +topic 。此topic为上一步查询到的topic,从/Huawei......encoded 72]整个粘贴 。每个接入的camera,MDC内的camera抽象进程都会将camera的数据发布成两种event,一种是H265数据的 "encoded" event,如下查询,一种是YUV数据的"decoded" event。root@mdchost:/home/sshuser# rtfevent hz --dds-network=192.168.1.6 /HuaweiMDC/PlatformServiceInterface/CameraServiceInterfacePkg/CameraEncodedServiceInterface/cameraPublishEncodedEvent[/HuaweiMDC/PlatformApplication/CameraCenterApplication/CameraCenterService/Host/CameraServiceProvider/camera_encoded_72]查看查询结果。当查询到hz数据时,表明camera接入正常。若查询到 “no new messages”,则表明MDC上没有收到camera传来的数据流。2.2 通过rtfevent hz 命令查看相机出流失败rtfevent list | grep -i camera 查询到camera的抽象event检查查询命令是否正确,常见错误为查询命令中没有添加 --dds-network=192.168.1.6。MDC 300的camera抽象数据查询命令需要添加IP。排查camera的硬件是否连接成功,需要根据3559日志分析,日志路径为“cd /disk4/ ”。1)若camera接入的是MDC的A口,看hi3559_1 里面的hi3559.log ,如果接入的是MDC的B、C 口,看hi3559_0 里面的hi3559.log。日志中的序号和实际接入的camera口对应关系如下图所示:​2)在日志文件中搜索"linkErr PipeId"字段。例如显示“linkErr PipeId[2]”,表示逻辑序号为“2”的Camera通道故障 。如上图日志则表示接入该口的相机寄存器初始化失败导致不出流,需排查硬件连接。当MDC运行过程中出现camera流的闪断,MDC上不会自动恢复出流,需要给MDC重新上下电一次,camera的数据流才能正常传到MDC上。rtfevent list | grep -i camera 未查询到camera的抽象event请采集camera的日志交给开发人员定位。日志路径为“/opt/log/host/platform_log/debug/came_xxxx.log”。通过升级版本修复环境。
  • [资料文档] amct_onnx编译并安装自定义算子时安装报错
    运行cd amct_onnx_op && python3 setup.py build时,报错:...creating build/lib.linux-x86_64-3.7g++ -pthread -shared build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/custom_op_library.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/ifmr_kernel.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/quant_kernel.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/dequant_kernel.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/ascend_quant_kernel.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/ascend_dequant_kernel.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/ascend_antiquant_kernel.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/dequant_quant.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/hfmg_kernel.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/search_n_kernel.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/search_n_v2_kernel.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/dmq_balance_kernel.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/amct_utils.o build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/dump_kernel.o -L/home/mdc510/.local/lib/python3.7/site-packages/amct_onnx/utils/../lib -L/usr/local/python3.7.5/lib -lpthread -lrt -lc -ldl -lstdc++ -lquant_onnx -lpython3.7m -o build/lib.linux-x86_64-3.7/amct_onnx_ops.cpython-37m-x86_64-linux-gnu.so -Wl,-z,relro,-z,now -Wl,-z,noexecstack -fopenmp -Wl,-rpath,/home/mdc510/.local/lib/python3.7/site-packages/amct_onnx/utils/../lib/usr/bin/ld: build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/custom_op_library.o: Relocations in generic ELF (EM: 183)/usr/bin/ld: build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/custom_op_library.o: Relocations in generic ELF (EM: 183).../usr/bin/ld: build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/custom_op_library.o: Relocations in generic ELF (EM: 183)/usr/bin/ld: build/temp.linux-x86_64-3.7/home/mdc510/share/mdc_workspace/MDC_AS31XM1X_ACC_LIB/amct/amct_onnx/amct_onnx_op/src/custom_op_library.o: error adding symbols: file in wrong formatcollect2: error: ld returned 1 exit statuserror: command 'g++' failed with exit status 1排查时发现,onnxruntime的头文件没有问题。g++, gcc版本也没有问题,为9.4.0
  • [工具链] MDC 510模型转化onnx2om报错
    使用MDC 510技术文档中的《AI开发-ATC模型转换-快速开始》的Resnet50转换失败输入:atc --model=/home/kjhu/桌面/resnet50_official.onnx --framework=5 --output=$HOME/module/out/onnx_resnet50 --soc_version=AS31XM1X输出:ATC run failed, Please check the detail log, Try 'atc --help' for more informationE40001: Value [/usr/local/python3.7.5] for environment variable [ld_library_path or ldconfig] is invalid when load python dynamic library.        Solution: Reset the environment variable by referring to the installation guide.        TraceBack (most recent call last):        [GraphOpt][InitializeInner][InitTbeFunc] Failed to init tbe.[FUNC:InitializeInner][FILE:tbe_op_store_adapter.cc][LINE:1623]        [SubGraphOpt][PreCompileOp][InitAdapter] InitializeAdapter adapter [tbe_op_adapter] failed! Ret [4294967295][FUNC:InitializeAdapter][FILE:op_store_adapter_manager.cc][LINE:84]        [SubGraphOpt][PreCompileOp][Init] Initialize op store adapter failed, OpsStoreName[tbe-custom].[FUNC:Initialize][FILE:op_store_adapter_manager.cc][LINE:125]        [FusionMngr][Init] Op store adapter manager init failed.[FUNC:Initialize][FILE:fusion_manager.cc][LINE:124]        PluginManager InvokeAll failed.[FUNC:Initialize][FILE:ops_kernel_manager.cc][LINE:96]        OpsManager initialize failed.[FUNC:InnerInitialize][FILE:gelib.cc][LINE:235]        GELib::InnerInitialize failed.[FUNC:Initialize][FILE:gelib.cc][LINE:163]
  • [传感器适配] 官方Demo里的CANFD收发不成功
    完全用官方教程,论坛里有人也有同样的问题,可是没有解决方法MDS的运行日志如下:
  • [硬件整机] 300f canfd的sample报错无法控制
    can指令是没有发送出去吗?没太搞懂。
  • [应用开发] venc将YUV420转换成H265格式在MViz中显示
    venc将YUN420转换成H265格式在MViz中显示结果不正确(图像是花的)
  • [软件平台] MDC 中 mini 0 ssh连接超时退出
    MDC 中 mini 0 ssh连接超时退出,有什么办法可以设置像MDC host那样永不退出?
  • [软件平台] mdc300f 使用canfd_sample无法进行canfd数据透传
    华为老师们好,硬件是mdc300f,软件版本为1.0.105-T。使用官方提供的canfd_sample进行canfd数据透传,发现运行程序后,mdc显示success send value,reply value is :0,但是我用周立功can盒接上radar5can线,周立功can盒确实收到了数据,但是显示接收的是错误帧。然后往mdc发送canfd数据,mdc无法接收。请问这种问题该如何排查?
  • [软件平台] 求一个华为自带的mdc300f,105版本的canfdbus_config.json配置文件
    您好,目前使用mdc300f,105版本,使用platform_sample中的canfd_sample例程调试radar5can通道,发现mdc有报文发送出来,但是使用周立功的can卡接收一直显示为错误帧,canfdbus_config.json文件是我自己生成的,华为自带的这个配置文件没有了,能否发一个mdc默认的配置文件呢?感谢!
  • [技术干货] 基于Prescan的无人驾驶技术分享
    Prescan模型概览如下:一、车道线预瞄思路及代码解析初始化雷达探测器 检测雷达探测器工作状态。在扫描点序号680-800范围内寻找最近的障碍物,并标记其位置,msg.ranges[ ]储存了距离信息,下标i与扫描点的角度之间存在映射关系。计算并记录离小车最近障碍物的距离。当最近障碍物的距离小于0.8时,记录has_obs = True。先确定雷达避障状态,再执行小车的行为。基本原理:通过高速旋转及高频收发激光对平面进行采样,以前进正方向为采样角度θ零点,在连续的两个采样点间的夹角角分辨率为Δθ=ω/f≈0.25其中,ω为雷达转速,f为激光发射频率。​二、激光雷达避障思路及代码解析定义如下:nwindows: 窗口数;window_height: 窗口高度;nonzero: 画面中所有不为0的像素点的坐标索引;lane_current: 当前窗口底边中点的x坐标;margin: 窗口底边长度的一半;good_inds: 所有处在当前窗口中不为0的像素点的索引;lane_inds: 当前跟踪的车道线上的所有像素点索引,即所有good_inds的并集。通过二次函数拟合出车道曲线。根据aimLanP的斜率正负来计算像素点的x坐标求车道线端点。计算目标点的真实坐标,其中红框部分是为了避免行人的存在所产生的误导。计算轮胎旋转角度。根据相机及雷达的打开状态控制小车的行为,其中初始值为FALSE。
  • [传感器适配] mdc300f运行camera_mviz无数据,topic不输出
    运行camer_mviz示例工程,图像不显示,另外在本机mviz似乎不全,有些模块显示不出来,可能不是新版本mviz,能帮忙看看吗,摄像头是森云的imx390-h60f,配置文件json那些选的wissen390如下图所示,是森云不适配mdc300f吗