-
使用PointNet模型进行推理,可正常设置输入输出,但是调用HafDNNModelInitialize()时,报错:Model inference failed, id is 1, acl error number: 507011
-
以上的代码就是用于把points的数据往sampleLidar->data中按字段传入信息。然后打印出数据在传输过程中,各个变量的值:可以看到,points中的点的坐标数据正确传入pointx_as_int是 x 的二进制表示对应的无符号整数值,这个结果也是正确的x_be 是将 x_as_int 转换为大端字节序后的值,这也是正确的。理论上将 x_be 的值通过 memcpy 写入 sampleLidar->data 时,实际上是将 x 的二进制表示以大端字节序存储到 data 中。当解析端以大端字节序读取这些字节并将其解释为 float 类型时,应该会正确还原出原始的 x 值 -0.276121但是在收端:ADSFI:Lidar_det的结果:显而易见:坐标的数据解析的不正确的。问题:ADSFI里的lidar_det是一个Lidar抽象的接收端,在接收到Lidar抽象发布的LidarPointCloud数据,会读取LidarPointCloud.data,转换成PointXYZIRT类型,那为什么造成了数据解析不正确的结果?还是说收端是按照小端字节序的格式进行解析的?
-
收端:在Lidar_det的收数代码中:根据产品文档中GetLidar()函数说明:它的输出是一个指针,指针指向的数据类型是LidarFrame对于里边的pointCloud的说明类型是PointXYZIRT:发端:auto sampleLidar = m_Skeleton->mdcEvent.Allocate();定义了一个名为sampleLidar的分配内存指针。根据产品文档的说明:sampleLidar指针指向的数据的类型应该是LidarPointCloud结构体,如下说明:而在sampleLidar->data中,该data是一个vector<uint8_t>类型的数据流LidarPointField结构:可以看到,真正的点云数据就是储存在这里,然后CM通信到上层lidar_det中。我现在重定义了一个如下的结构体,用来接收雷达传来的原始数据,然后将数据在传给sampleLidar。typedef struct PointXYZITR {float x;float y;float z;int32_t time;float distance;float pitch;float yaw;uint16_t intensity;uint16_t ring;}VPoint;std::vector<VPoint> points;points就是我用来接收原始点云数据的中间量,但是在给sampleLidar数据传输过程中,出现了数据传输失败的问题。以下是我的代码:使用的是memcpy指令,因为我定义的这个VPoint的结构类型和sampleLidar->data下的数据结构完全一样,但是如上图所示,在打印消息中,并未打印出sampleLidar->data的数据,同时在收端也没有看到消息。问题:请问我对收发端的数据传输分析有没有问题?为什么我在把数据从points->sampleLidar中memcpy失败?打印不出来消息?还是说应该用别的方式?
-
关于lidar_det接收不到消息引发的一个“阻塞式接收”的问题:以上是技术人员的回答。然后我根据回答查看了netbind文件对应修改处:疑惑的是:我把雷达接在了5口上,对应的位置是Rear.Lidar发布的数据是Front,是因为我是用的instanceIdentifier=3.然后我根据我接的“5“口的“Rear”认为应该改为“4”,就应该通信成功。但是改为4之后,仍然无法成功。然后,我依据我的“安装位置-5”将instanceIdentifier改为5,看看等否通信成功。结果还是无法成功。然后我就只能再尝试6和7,最终发现只有改为7的时候,才能通信成功。(为什么?)回显结果:想问一下为什么?另外想问一下,这两种方式有什么区别?
-
产品名称:MDC 610软件版本:MDC 610 1.1.029-0000000T1问题现象(问题描述):毫米波雷达传感器,型号:ARS408-21XX,接入mdc610对应CAN接口上(线缆标签RADAR_C3~RADAR_C8都尝试过),手动拉起抽象进程/opt/platform/mdc_platform/script/radar_a_ars408_start.sh后,执行rtfevent list | grep -i sensor无法查询到数据收发事件故障后已采取的措施:1>尝试使用candump抓取线缆标签RADAR_C3~RADAR_C8(分别对应can0~can4和can6)的数据,但未抓取到任何数据; 2>将毫米波雷达接入线缆标签GPS_C11(对应can7),使用candump能够抓取到can7的数据(另外,can7与1>中所有的can接口配置一致,如,波特率为500KBaud,采样点为:800,CAN模式为CANFD).具体版本信息截图如下:SOC侧的can配置均一样,部分截图如下(所有can都有“state ERROR-ACTIVE”字样,包括can7)
yd_292650359
发表于2025-03-04 14:35:20
2025-03-04 14:35:20
最后回复
yd_292650359
2025-03-07 15:42:08
524 16 -
在完成关于LidarParsing()函数中所有的功能性代码的调试内容后,尝试与ADSFI端的Lidar_det进行通讯:Lidar_det端:在LidarDetection::SubLidar()函数体中,添加如下代码,当收数成功或失败后,打印相应的消息提醒。在LidarParsing()函数中,我增加了打印点云坐标的代码:运行结果:同时也可以用mviz可视化看到点云原始数据:但是运行Lidar_det的结果:发现没有打印收数成功或者失败的消息,而是程序卡在if判断语句(if (node.GetLidar(my_lidarData, node.GetLidarInsIdx()[0]) != HAF_SUCCESS))了,既没有打印成功,也没有打印失败。然后我们怀疑是前端(抽象)没有发送成功,所以使用rtfevent hz <eventname>查看前端是否在发:可以看到,前端确实已经发送了,但是为什么ADSFI端收不到数呢?我们查询手册,想看看if判断语句中使用的GetLidar的接口使用说明:这里边说了一个“阻塞式接收”,是不是有可能是因为这个问题?问题:Lidar_det收数失败的原因是不是“阻塞式接收”的问题?又该如何解决呢?
-
在官方例程MDC_Sample-2.1.003-T0000000> PLATFORM_Sample> modules> can_sample> can_receive_sample例程中添加CM通讯相关代码。并发送数据,并编译通过接着在MDC板端运行二进制文件,没啥问题接着使用rtfevent hz查看发布主题是否有数据发送,发现一直没有数据发送,这该怎么解决呢?
-
1.启动ros:roscore 2.启动mviz:./run.py回显结果:[ERROR] [1740377559.226422968]: PluginlibFactory: The plugin for class 'rviz_plugin/Positioning and Traffic Elements' failed to load. Error: Failed to load library /home/noob/MDC/MDC_Application_Visualizer-3.0.002-0000000-Ubuntu20/rviz_plugin/lib//librviz_plugin.so. Make sure that you are calling the PLUGINLIB_EXPORT_CLASS macro in the library code, and that names are consistent between this macro and your XML. Error string: Could not load library (Poco exception = /home/noob/MDC/MDC_Application_Visualizer-3.0.002-0000000-Ubuntu20/rviz_plugin/lib//librviz_plugin.so: undefined symbol: _ZN4rviz12BoolPropertyC1ERK7QStringbS3_PNS_8PropertyE)
-
问题描述1智能驾驶计算平台设备无法通过ACC唤醒,但可以通过CANN方式唤醒。对比另一台智能驾驶计算平台设备,可以通过相同的ACC唤醒。解决方式两个设备上MCU二次开发的版本不一致,不能通过ACC唤醒的设备上使用的MCU版本过老。问题描述2使用TBB库,SDK中的交叉编译工具编不出来。解决方式支持在MDC上使用TBB库,更新TBB版本或许能解决问题。问题描述3MDC610 上是否支持 Ascend sample 代码中samples/cplusplus/common/acllite目录下的 ACLLite库的编译。解决方式MDC配套软件栈未适配ACLLite库,可以使用ADSFI框架,或者原生ACL接口。说明:信息来源于cid:link_0,单击此链接查看原贴。问题描述4在同样的网络环境下,从MDC610内通过scp向服务器上传文件的速率,明显低于从MDC300F内上传,平均速率只有后者的三分之一左右。从MDC610内上传起始速率较高,但随着上传进度,速率逐渐降低,最后稳定在一个较低的速率上传,原因是什么。MDC300F MDC610 答复1、在局域网传输速率很快,说明MDC网络传输正常。2、向广域网主机传输,受公网带宽、网络拥塞情况等情况影响,无法做出答复。 3、即使是在同一局域网下,向同一公网传输,由于原IP和mac的不同,在网关或vpn处有针对IP或mac的限速或优先级相关处理,需要排查。4、跳数多的链路速率较慢,符合分析逻辑,即一个报文经过的设备越多,速率一般越慢,MDC 本身对网络传输速率 未做限制。说明:信息来源于cid:link_1,单击此链接查看原贴。问题描述5系统开机启动一段时间后,突然MDC610风扇狂转,系统通过ssh也连不上,过差不多5-7分钟风扇才恢复正常,ssh才能连上,重新登录系统后发现系统应该是重启过了。这个现象经常发生,只要开机启动一段时间后就会复现,但是复现的时间不规律。可能原因程序占用的内存一直在增加,没有释放,导致系统内存被占满,故触发了系统自动重启。解决方式将程序占用的内存及时释放后重启系统,查看是否还会自动重启。说明:信息来源于cid:link_2,单击此链接查看原贴。
-
升级内核后,MDC差不多5分钟就自动重启一下,这个是什么问题呢
-
我们把ins的cm通信的相关的代码整合到canreceive例子里我这里只是添加了头文件,并且我再CMakeLists文件中也添加了头文件路径但是编译未通过,结果如下,说是没有定义,这怎末解决
-
MDC和路由器接在一起,九个设备上电2分钟就可以ssh连接上,有一台MDC连上wifi后要5分钟以上才可以连接上。这个怎么排查,有什么命令可以看一下系统启动时间的
-
硬件连接:在MDC中运行PLATDFORM_Sample->modules->can_sample->can_receive_sample程序在这里读取soc侧的can0口显示读取超时,我再下位机端也在不停发送报文,这是啥原因。
-
毫米波雷达采用大陆•ARS408-21毫米波雷达毫米波雷达接入CAN4口,没有修改任何CAN网络配置手动拉起抽象进程/opt/platform/mdc_platform/script/radar_a_ars408_start.sh抽象服务正常启动验证数据收发执行命令rtfevent list | grep -i sensor,查询毫米波雷达抽象的event信息。查询不到任何信息,请问各位大佬问题可能出现在哪里之前连接激光雷达挺顺利有没有可能是毫米波雷达的连线或者是毫米波雷达本身的问题,有没有排查方法
-
问题描述升级版本后订阅相机数据失败。解决方式查看MMC通信是否为NDSHM,若不是,需要修改通信为NDSHM。
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第三期2026/08/21 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;念擎-华为云AI开发者运营案例开发专家
本期直播内容:AI六层能力首次详细解读 + 新一代华为云开发者空间亮相 + 校园案例直播带练
正在直播
热门标签