-
当CameraVencProcess及CameraProcess进程状态为已退出(TERMINATED)或者终止(ABORTED)时,说明进程启动存在问题。一、查询进程状态处理进程启动失败类问题通常需要首先查询进程的状态。登录MDC系统。执行系统进程查询命令。mdc-dbg em query processStatus在回显中查看CameraVencProcess和CameraProcess的状态。二、Camera相关进程处于TERMINATED状态现象描述CameraVencProcess及CameraProcess进程的ProcessState为TERMINATED,且UpdateManagerProcess处于RUNNING状态。可能原因MDC系统处于升级流程中。处理方式执行自动完成升级流程命令:mdc-tool upgrade finish auto三、Camera相关进程处于ABORTED状态现象描述查询平台进程运行情况,发现CameraVencProcess或CameraProcess进程处于ABORTED状态。可能原因可能原因1:进程异常退出。可能原因2:进程逻辑存在问题。可能原因3:进程启动时间超出上限,EM进程主动向进程发送kill信号关闭进程。处理方式排查原因1:进程异常退出(即core_dump)。1)查看“/home/mdc/var/log/npu/core_dump”目录下是否有进程相关core_dump文件生成。2)若有则请及时备份core_dump文件,提供给华为工程师进行问题排查。如果没有则执行步骤2。排查原因2:进程逻辑存在问题。1)查看最新came*日志或VENC_*日志末尾是否有error日志。2)若有则请及时备份came*或VENC_*日志文件,提供给华为工程师进行问题排查。如果没有则执行步骤3。排查原因3:进程启动时间超出上限,EM进程主动向进程发送kill信号关闭进程。1)查看最新came*日志末尾,是否有退出流程的相关打印。2)请及时备份came*或VENC_*日志文件以及同目录下的EM*日志文件,提供给华为工程师进行问题排查。
-
一、查看Camera抽象进程状态前提条件已启动Camera抽象进程。操作步骤登录MDC系统。执行ps -aux|grep camera,查看已启动的进程。二、查看venc数据流情况通过cat命令查询各个camera通道的编码状态。登录MDC系统。执行命令cat /proc/umap/venc,在VENC STREAM STATE栏目查询通道编码状态信息。“UserGet”为编码器在该通路上获取到的数据帧总数,用于观察是否发布过YUV消息结构体或Image消息结构体。“FrameRate”为当前通路送入编码器的数据帧率(帧数/秒),用于判断YUV通路情况,如帧率异常等情况。三、查看Camera发布消息使用rtf工具查看通道数据的发布和订阅状态须知:Camera数据订阅进程退出时需要正确释放缓存mbuf以及销毁接收端队列,出现接收端进程异常退出,或者使用kill -9关闭进程,MDC系统会进行mbuf回收及队列销毁,回收时间(一般在1min内)后数据流会恢复。因此尽量避免在进程运行过程中采用kill-9关闭进程或者其他会导致异常退出的操作。rtfevent list命令查询camera发布的所有event信息。命令格式说明rtfevent list |grep camera获取所有camera相关发布数据的event。rtfevent list |grep cameraDecoded获取所有YUV消息结构体的event。rtfevent list |grep ImageData获取所有Image消息结构体的event。rtfevent list |grep cameraEncoded获取所有H.265消息结构体的event。使用实例:命令:rtfevent list |grep camera回显:查看完整的发布通道信息
-
(1)目前开源社区里基于深度学习的LiDAR目标检测方法还是蛮多的,但是目前没有看到华为MDC上相关的应用案例。(2)能否给广大应用开发者提供一个完整的教程和学习案例?该方案不一定是最新的方法,老掉牙的pointpillar也行呀。(3)建议:非python版本,在MDC上实际部署成功的,包括数据预处理、推理、后处理。中间遇到个别算子不支持是如何自定义算子的。雷达点云的来源可以是读取点云文件、或者在线解析点云数据都欢迎。
-
camera业务流处理过程中会产生不同类型的日志。camera_a和camera_venc_app进程的日志如下:日志路径:camera_a日志路径 :“/opt/log/aos_linux/platform_log/debug/”camera_venc_app日志路径 :“/opt/log/aos_linux/platform_log/debug/”查看日志came_*和VENC_*日志默认加密,需用解析命令查看日志内容。解析命令如下:mdc-tool log-convert came_* (came_*为具体解码日志名)mdc-tool log-convert VENC_*(VENC_*为具体解码日志名)
-
接入的模组需是MDC 610支持的型号。1、修改系统上的根文件系统读写权限,改成可写状态。2、按照实际接入的模组个数修改 “/opt/platform/mdc_platform/manual_service/camera_tool/conf/userConf.json”配置文件。 同级目录下的"demo"文件里是几款模组的配置示例,可做参考。3、加载配置cd到“/opt/platform/mdc_platform/manual_service/camera_tool/bin/”目录下,执行pmupload ./camera_tool filepath加载配置。“filepath”表示userConf.json配置文件所在的路径。当输出显示“success”表示配置加载成功。当加载有错误时,请根据《产品文档》中“错误码信息”表格排查问题原因。4、reboot重启MDC,使配置生效。
-
信息来源:cid:link_0现象描述编译并安装自定义算子包时,运行如下命令,出现“......error: command 'g++' failed with exit status 1”报错。说明:查看报错的详细信息请单击上述“信息来源”链接。cd amct_onnx_op && python3 setup.py build可能原因AMCT安装时系统要求和环境不满足要求。AMCT目前支持在Ubuntu 20.04 x86_64(推荐)和Ubuntu 18.04 x86_64架构操作系统安装。处理方式按照《产品文档》中工具安装要求重新安装AMCT。
-
信息来源:cid:link_0现象描述模型转换时输出如下内容:“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.......”。说明:查看详细的输入、输出请单击上述“信息来源”链接。可能原因python3.7.5环境变量问题安装配置的环境变量问题。处理方式重装系统后按照《产品文档》安装配置开发环境。
-
MDC 300F:以下简称MDC。须知:MDC内网卡的修改很容易导致重启后通过ssh登录不上MDC的现象,所以在修改网络配置前,备份当前环境下的网络配置文件,方便后续通过串口登录MDC进行恢复。MDC对外提供了9个网口,一个通用以太网口和8个车载以太网口。修改网卡属性若是修改网卡的属性,如速率speed、MasterSlave等属性,可直接在“usr_network_port.json”配置文件中修改相关字段的参数即可。修改网卡IP如下描述修改8个车载以太网口IP。IP的设置分别在两个配置文件中,分别是“/opt/platform/mdc_platform/conf/” 路径下的usr_network_port.json、sys_os_network.json。找到该网卡所在的配置文件。说明:eth0.12网卡IP配置在“sys_os_network.json”配置文件中。执行vim sys_os_network.json命令,打开配置文件,修改IP。执行reboot 命令重启MDC,使配置生效。
-
您可以按照优先级依次尝试升级,以此恢复环境。MDC 300F:以下简称MDC。优先操作恢复环境方式查看环境所在区域是主区还是备区,方便升级后确认环境是否恢复。执行df -h命令。“/dev/nvme0n1p2“表示主区;“/dev/nvme0n1p3”表示备区。在“/opt/usr/upgrade/”目录下操作升级,强制升级版本。提示“Update success”表示升级成功。升级完成后MDC会自动重启,ssh重新登录到MDC,执行swmc -t 4查看升级状态是否校验成功,当显示”VerifyResult : Upgrade success ”执行下一步结束升级。执行swmc -t 3结束升级。其次操作恢复环境方式一般环境损坏只会损坏一个区,主备区环境不会同时损坏,所以当一个区环境损坏时,可以通过串口切区,在备区强制升级恢复主区的环境。环境准备:一根USB转DB9的转接线。一台便携电脑,电脑上有串口驱动(网上下载)。转接线的一端(USB)连接电脑,一端连接MDC上80Pin线缆上标签为“debug_0“的线缆。通过串口工具打开电脑上对应的串口连接,波特率设置为115200。将MDC重新上电,在PC上查看串口输出。MDC上电后不管环境是否损坏都会有打印。当有输出打印时表示串口连接正常。当串口页面没有打印时,则表示配置失败。请排查线束是否接好、电脑上的串口驱动是否正常。在串口页面打印BIOS结束,开始5秒倒计时时,按下键盘上的“Esc”,页面发生跳转。在跳转页面,选择"Continue" ,按回车键确定选择,并立即按下键盘上的"Esc"。说明:回车与“Esc”的间隔时间越短越好,间隔时间长会导致切区失败,需要重新上下电一次,重新操作切区。选择成功后,页面再次跳转。 "Ubuntu OS1"表示主区,"Ubuntu OS2"表示备区,选择对应命令切换主区或备区。切换成功后,ssh或串口登录到MDC上,此时执行强制升级命令即可。说明:环境上执行df -h查看磁盘挂载情况,可操作切区前作对比即可知道是否切区成功。
-
MDC 300F:以下简称MDC。登录MDC,切到root权限,执行命令mdc-dbg sm query MachineState,查看MDC环境。当显示 " Startup" 表示环境正常。当显示的状态不是" Startup",表示环境异常,可能原因如下:① 操作过升级,但是没有执行mdc-tool upgrade finish 命令结束升级。② 修改过MDC环境上的某些配置,但是由于修改的有问题导致环境异常。当MDC环境异常时,请通过升级修复环境。
-
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。
-
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发来的时间同步报文。
-
毫米波雷达支持的型号为: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。
-
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正常接入且电压满足要求。
-
以下内容适用于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”。通过升级版本修复环境。
上滑加载中
推荐直播
-
全面解析华为云EI-API服务:理论基础与实践应用指南
2024/11/29 周五 18:20-20:20
Alex 华为云学堂技术讲师
本期直播给大家带来的是理论与实践结合的华为云EI-API的服务介绍。从“主要功能,应用场景,实践案例,调用流程”四个维度来深入解析“语音交互API,文字识别API,自然语言处理API,图像识别API及图像搜索API”五大场景下API服务,同时结合实验,来加深开发者对API服务理解。
回顾中 -
企业员工、应届毕业生、在读研究生共探项目实践
2024/12/02 周一 19:00-21:00
姚圣伟 在职软件工程师 昇腾社区优秀开发者 华为云云享专家 HCDG天津地区发起人
大神带你一键了解和掌握LeakyReLU自定义算子在ONNX网络中应用和优化技巧,在线分享如何入门,以及在工作中如何结合实际项目进行学习
即将直播 -
昇腾云服务ModelArts深度解析:理论基础与实践应用指南
2024/12/03 周二 14:30-16:30
Alex 华为云学堂技术讲师
如何快速创建和部署模型,管理全周期AI工作流呢?本期直播聚焦华为昇腾云服务ModelArts一站式AI开发平台功能介绍,同时结合基于ModelArts 的实践性实验,帮助开发者从理论到实验更好地理解和使用ModelArts。
去报名
热门标签