psdk程序无法二次启动(每次启动psdk程序都需要启动无人机才行)

Completed

Comments

3 comments

  • 您好,请问下您使用的是8152的USB网卡吗?您退出程序的步骤具体是通过Ctrl+C退出还是其他的方式?二次初始化报错,原因是链路异常,我们怀疑PSDK端有相关的资源没有正常释放。如果您再次遇到失败的情况,您尝试下重新插拔USB网卡,或者重新down和up一下enP8p1s0
    0
    Comment actions Permalink
  • kwin

    1. 是8152的usb网卡
    2. 我是通过ctrl+c的方式触发信号量,然后关闭并释放资源。下面是我的代码和日志
    代码,可以看到是成功释放资源的。


    DjiFlightController_DeInit();
    std::this_thread::sleep_for(std::chrono::seconds(3));
    std::cout << "DjiFlightController_DeInit()" << std::endl;
    DjiCameraManager_DeInit();
    std::this_thread::sleep_for(std::chrono::seconds(3));
    std::cout << "DjiCameraManager_DeInit()" << std::endl;
    DjiGimbalManager_Deinit();
    std::this_thread::sleep_for(std::chrono::seconds(3));
    std::cout << "DjiGimbalManager_DeInit()" << std::endl;
    DjiWaypointV3_DeInit();
    std::this_thread::sleep_for(std::chrono::seconds(3));
    std::cout << "DjiWaypointV3_DeInit()" << std::endl;
    DjiCore_DeInit();
    std::this_thread::sleep_for(std::chrono::seconds(3));
    std::cout << "DjiCore_DeInit()" << std::endl;


    日志:


    $ ./build/bin/aib
    [0.003][core]-[Info]-[DjiCore_Init:106) Payload SDK Version : V3.9.2-beta.0-build.2125
    Reconnecting to MQTT broker...
    [0.042][adapter]-[Info]-[DjiAccessAdapter_Init:231) Identify aircraft series is Mavic 3 Series
    [0.042][adapter]-[Info]-[DjiAccessAdapter_Init:264) Identify mount position type is Extension Port Type
    [0.046][adapter]-[Info]-[DjiAccessAdapter_Init:365) Identity uart0 baudrate is 921600 bps
    Reconnected to MQTT broker!
    Subscribing to topic: thing/edge/xxx/services with QoS: 1
    Subscribed to topic: thing/edge/xxx/services
    start listen to mqtt
    [2.062][adapter]-[Info]-[DjiPayloadNegotiate_Init:228) Waiting payload negotiate finish.
    [3.062][adapter]-[Info]-[DjiPayloadNegotiate_Init:228) Waiting payload negotiate finish.
    [4.080][core]-[Info]-[DjiIdentityVerify_UpdatePolicy:474) Updating dji sdk policy file...
    [5.080][core]-[Info]-[DjiIdentityVerify_UpdatePolicy:482) Update dji sdk policy file successfully
    [5.094][core]-[Info]-[DjiCore_Init:174) Identify AircraftType = Mavic 3 Thermal, MountPosition = Extension Port, SdkAdapterType = None
    [5.101][core]-[Info]-[DjiCore_ApplicationStart:238) Start dji sdk application
    [5.101][user]-[Info]-[DjiUser_ApplicationStart:259) Application start.
    application start
    CameraManager::instance().init()
    GimbalManager::instance().init()
    WaypointManager::instance().init()
    [9.198][flight]-[Info]-[DjiFlightController_RegisterLinkerObj_M3:117) Init mavic3 enterprise series flight controller linker successfully.
    FlightControllerManager::instance().init()
    [9.219][user]-[Info]-[init:746) FlightControllerManager init ok
    ^C
    Signal received: 2. Initiating shutdown...
    DjiFlightController_DeInit()
    DjiCameraManager_DeInit()
    DjiGimbalManager_DeInit()
    DjiWaypointV3_DeInit()
    DjiCore_DeInit()
    Exiting successfully.

    3. 这是我up和down 网卡的操作,不行。

    网卡操作:


    # root @ box-001 in ~ [18:10:45] C:130
    $ sudo ip link set enP8p1s0 down

    # root @ box-001 in ~ [18:10:52]
    $ ip link show enP8p1s0
    4: enP8p1s0: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
    link/ether 3c:6d:66:16:12:62 brd ff:ff:ff:ff:ff:ff

    # root @ box-001 in ~ [18:10:57]
    $ sudo ip link set enP8p1s0 up

    # root @ box-001 in ~ [18:11:14]
    $ ip link show enP8p1s0
    4: enP8p1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 3c:6d:66:16:12:62 brd ff:ff:ff:ff:ff:ff

     

    重新启动日志:


    $ ./build/bin/aib
    [0.003][core]-[Info]-[DjiCore_Init:106) Payload SDK Version : V3.9.2-beta.0-build.2125
    Reconnecting to MQTT broker...
    [0.043][adapter]-[Info]-[DjiAccessAdapter_Init:231) Identify aircraft series is Mavic 3 Series
    [0.043][adapter]-[Info]-[DjiAccessAdapter_Init:264) Identify mount position type is Extension Port Type
    [0.047][adapter]-[Info]-[DjiAccessAdapter_Init:365) Identity uart0 baudrate is 921600 bps
    Reconnected to MQTT broker!
    Subscribing to topic: thing/edge/xxx/services with QoS: 1
    Subscribed to topic: thing/edge/xxx/services
    start listen to mqtt
    [2.062][adapter]-[Info]-[DjiPayloadNegotiate_Init:228) Waiting payload negotiate finish.
    [3.062][adapter]-[Info]-[DjiPayloadNegotiate_Init:228) Waiting payload negotiate finish.
    [4.063][adapter]-[Info]-[DjiPayloadNegotiate_Init:228) Waiting payload negotiate finish.
    [5.063][adapter]-[Info]-[DjiPayloadNegotiate_Init:228) Waiting payload negotiate finish.
    [6.063][adapter]-[Info]-[DjiPayloadNegotiate_Init:228) Waiting payload negotiate finish.
    Runtime error occurred: Core init error.
    [7.063][adapter]-[Error]-[DjiAccessAdapter_Init:381) Payload negotiate error, returnCode = 225
    [7.063][core]-[Error]-[DjiCore_Init:126) Access adapter init error, stat:225

     

    0
    Comment actions Permalink
  • 您好,感谢您补充的信息,您那边麻烦使用最新的PSDK和最新的飞机固件再尝试下,如果仍然不行,您可以把相关的日志提供给我们,我们为您与内部团队确认下,建议您均使用最新的版本,我们基于最新版本去分析,避免已知问题的影响。 如何导出PSDK Debug日志 如何导出飞机日志/调参日志
    0
    Comment actions Permalink

Please sign in to leave a comment.