ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login
    1. Home
    2. Liping
    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 5
    • Best 0
    • Controversial 0
    • Groups 0

    Liping

    @Liping

    0
    Reputation
    4
    Profile views
    5
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    Liping Unfollow Follow

    Latest posts made by Liping

    • Read Point Cloud Data by ROS (voxl-dfs-server, voxl_mpa_to_ros, MV SDK)

      Hi
      Do you plan to include the interface for voxl-dfs-server in the voxl_mpa_to_ros?

      7a5c73d4-70aa-440d-995c-aea4e63feca4-image.png


      On the other hand, I try to use the voxl-camera-server + voxl_mpa_to_ros + dfs_ros_example(https://github.com/ATLFlight/dfs-ros-example) to get the point cloud data for ROS.

      The dfs_ros_example requires mvDFS.h. Therefore MV SDK needs to be installed. For your info, I'm developing ROS applications in a docker container deployed on VOXL.
      But I met the following issure:

      root@apq8096:~/yoctohome# dpkg -i mv_1.2.13_8x74.deb 
      dpkg: error processing archive mv_1.2.13_8x74.deb (--install):
       package architecture (armhf) does not match system (arm64)
      Errors were encountered while processing:
       mv_1.2.13_8x74.deb
      

      However, I can see the MV SDK is preinstalled when I flash the system image 3.2.0.
      2f992d85-4389-4b23-81a1-d766353c9a54-image.png
      How do you manage to install it? I want to install it again in the docker container.


      My current environment:
      System Image 3.2.0 + Docker(Ubuntu18.04, ROS melodic)

      yocto:~# opkg list-installed | grep "libmodal"
      libmodal_json - 0.3.4
      libmodal_pipe - 1.7.9
      yocto:~# opkg list-installed | grep "voxl"
      libvoxl_io - 0.5.4
      voxl-camera-server - 0.5.5
      voxl-dfs-server - 0.0.7
      voxl-docker-support - 1.1.1
      voxl-imu-server - 0.7.8
      voxl-mpa-tools - 0.1.6
      voxl-nodes - 0.1.2
      voxl-qvio-server - 0.2.1
      voxl-streamer - 0.2.1
      voxl-utils - 0.5.9
      voxl-vision-px4 - 0.8.1
      
      posted in Ask your questions right here!
      LipingL
      Liping
    • RE: VIO Indoor Navigation

      @Lynn-Koudsi Thanks a lot! The issue has been solved. The QGroundControl shows meaningful ODOMETRY data now. As you mentioned, the issue comes from the voxl-camera-server and voxl-imu-server. voxl-qvio can not get data from both the camera and the imu.

      Besides, I noticed that the configuration of the camera and imu does not work as expected. It may be caused by the conflict of the old (imp_app, voxl-cam-manager)and new (voxl-camera-server, voxl-imu-server) camera and imu ipk.

      To make it simple, I flashed the image with the System Image 3.2.0 (https://developer.modalai.com/asset/eula-download/64) without installing the voxl-suite, since I want to use the new Modal Pipe Architecture (https://gitlab.com/voxl-public/modal-pipe-architecture).

      I manually installed the following voxl packages:

      yocto:/#  opkg list-installed | grep "libmodal"
      libmodal_json - 0.3.4
      libmodal_pipe - 1.7.6
      
      yocto:/#  opkg list-installed | grep "voxl"
      libvoxl_io - 0.5.4
      voxl-camera-server - 0.5.5
      voxl-dfs-server - 0.0.7
      voxl-docker-support - 1.1.1
      voxl-imu-server - 0.7.8
      voxl-mpa-tools - 0.1.6
      voxl-qvio-server - 0.2.1
      voxl-utils - 0.5.9
      voxl-vision-px4 - 0.8.1
      

      Then I run the configuration commands for the qvio, voxl-vision-px4 and camera (voxl-imu-server has done some default configuration during the ipk installation):

      yocto:/# voxl-configure-qvio -f
      rm: cannot remove '/etc/modalai/voxl-qvio-server.conf': No such file or directory
      loading qvio config file
      Creating new config file: /etc/modalai/voxl-qvio-server.conf
      The config file was modified during parsing, saving the changes to disk
      enabling voxl-qvio-server systemd service
      Created symlink from /etc/systemd/system/multi-user.target.wants/voxl-qvio-server.service to /etc/systemd/system/voxl-qvio-server.service.
      starting voxl-qvio-server systemd service
      Done configuring voxl-qvio-server
      
      
      yocto:/# voxl-configure-vision-px4 -f
      rm: cannot remove '/etc/modalai/voxl-vision-px4.conf': No such file or directory
      Created new empty json file: /etc/modalai/voxl-vision-px4.conf
      The JSON config file data was modified during parsing, saving the changes to disk
      enabling voxl-vision-px4 systemd service
      Created symlink from /etc/systemd/system/multi-user.target.wants/voxl-vision-px4.service to /etc/systemd/system/voxl-vision-px4.service.
      starting voxl-vision-px4 systemd service
      DONE configuring voxl-vision-px4
      
      
      yocto:/# voxl-configure-cameras
      ...
      

      Regarding the configuration of the camera, i was following the guidance in https://gitlab.com/voxl-public/modal-pipe-architecture/voxl-camera-server to use the command voxl-configure-cameras provided by voxl-utils package.

      I rebooted the VOXL and checked related services (camera, imu, qvio, voxl-vision-px4) using

      systemctl status
      

      But I noticed that the voxl-camera-server was not automaticly started on boot.
      So I enabled it with:

      yocto:/# systemctl enable voxl-camera-server
      

      @modaltb Please correct me if any step was not right or there is a better way.

      In addition, I also followed the https://forum.modalai.com/topic/70/warning-px4-disconnected-error-message-from-voxl-vision-px4 to solve the WARNING PX4 DISCONNECTED error message from voxl-vision-px4

      posted in Ask your questions right here!
      LipingL
      Liping
    • RE: VIO Indoor Navigation

      @Lynn-Koudsi It shows waiting for imu and camera. Could you help to point out where is the calibration file located? Is it this calibration process (https://docs.modalai.com/calibrate-cameras/) that you refer to?

      yocto:~# systemctl status voxl-qvio-server 
      
      ● voxl-qvio-server.service - voxl-qvio-server
         Loaded: loaded (/usr/bin/voxl-qvio-server; disabled; vendor preset: enabled)
         Active: active (running) since Mon 2021-03-08 15:13:41 UTC; 7min ago
       Main PID: 3199 (voxl-qvio-serve)
         CGroup: /system.slice/voxl-qvio-server.service
                 └─3199 /usr/bin/voxl-qvio-server
      
      Mar 08 15:13:42 apq8096 voxl-qvio-server[3199]: LNX_8096 supported? 1
      Mar 08 15:13:42 apq8096 voxl-qvio-server[3199]: LNX_IA64 supported? 1
      Mar 08 15:13:42 apq8096 voxl-qvio-server[3199]: WINDOWS supported? 0
      Mar 08 15:13:42 apq8096 voxl-qvio-server[3199]: AR ERROR: arFileOpen(): Failed to open file: //vislam/Configuration.SF.xml
      Mar 08 15:13:42 apq8096 voxl-qvio-server[3199]: FASTCV: fcvAvailableHardware Linux
      Mar 08 15:13:42 apq8096 voxl-qvio-server[3199]: mempool cur block size 307200, new block size 307200
      Mar 08 15:13:42 apq8096 voxl-qvio-server[3199]: Please ignore the error about Configuration.SF.xml above. ^^^
      Mar 08 15:13:42 apq8096 voxl-qvio-server[3199]: It's an optional file, and should be a warning not an error
      Mar 08 15:13:42 apq8096 voxl-qvio-server[3199]: waiting for imu
      Mar 08 15:13:42 apq8096 voxl-qvio-server[3199]: waiting for cam
      

      Before, I was using the following two command to set the configuration file:

      voxl-configure-vision-px4
      voxl-configure-modalai-vl
      
      posted in Ask your questions right here!
      LipingL
      Liping
    • RE: VIO Indoor Navigation

      @Lynn-Koudsi Thanks Lynn. But in my case, the issue still exists after installing the voxl-qvio.

      What are your installed voxl package versions?

      I installed some latest stable version packages.

      yocto:~#  opkg list-installed | grep "voxl"
      libvoxl_io - 0.5.4
      voxl-cam-manager - 0.2.2
      voxl-docker-support - 1.1.1
      voxl-hal3-tof-cam-ros - 0.0.2
      voxl-modem - 0.10.0
      voxl-mpa-tools - 0.1.6
      voxl-nodes - 0.0.8
      voxl-qvio-server - 0.2.1
      voxl-rtsp - 1.0.2
      voxl-time-sync - 0.0.1
      voxl-utils - 0.5.2
      voxl-vision-px4 - 0.8.1
      voxl-vpn - 0.0.2
      voxl_imu - 0.0.4
      
      posted in Ask your questions right here!
      LipingL
      Liping
    • RE: VIO Indoor Navigation

      Hi @modaltb

      I'm getting the same problem as described by Lynn. I had also done a clean image installation at V3.1.0 and had removed my data folder.

      yocto:~# voxl-vision-px4 -o
      loading our own config file
      =================================================================
      Parameters as loaded from config file:
      qgc_ip:                     192.168.43.84
      en_localhost_mavlink_udp    1
      en_secondary_qgc:           0
      secondary_qgc_ip:           192.168.1.214
      qgc_udp_port_number:        14550
      localhost_udp_port_number:  14551
      en_vio:                     1
      en_voa:                     0
      en_send_vio_to_qgc:         0
      en_send_voa_to_qgc:         0
      en_adsb:                    1
      adsb_uart_bus:              7
      adsb_uart_baudrate:         57600
      px4_uart_bus:               5
      px4_uart_baudrate:          921600
      offboard_mode:              off
      follow_tag_id:              0
      en_apriltag_fixed_frame:    0
      fixed_frame_filter_len:     5
      en_transform_mavlink_pos_setpoints_from_fixed_frame:0
      =================================================================
      loading extrinsics and apriltag external config files
      #0:
          tag id:          0
          name:            default_name
          location:        fixed
          size_m:            0.400
          T_tag_wrt_fixed: 0.0  0.0  0.0 
          R_tag_to_fixed:  0.0 -1.0  0.0 
                           1.0  0.0  0.0 
                           0.0  0.0  1.0 
      #1:
          tag id:          1
          name:            default_name
          location:        fixed
          size_m:            0.400
          T_tag_wrt_fixed: 0.0  0.0  0.0 
          R_tag_to_fixed:  0.0 -1.0  0.0 
                           1.0  0.0  0.0 
                           0.0  0.0  1.0 
      loaded in 2 fixed apriltags
      #0:
          parent:                imu1
          child:                 imu0
          T_child_wrt_parent:   -0.048   0.037   0.002 
          RPY_parent_to_child:   0.0     0.0     0.0  
          R_child_to_parent:     1.000  -0.000   0.000 
                                 0.000   1.000  -0.000 
                                 0.000   0.000   1.000 
      #1:
          parent:                imu0
          child:                 tracking
          T_child_wrt_parent:    0.065  -0.014   0.013 
          RPY_parent_to_child:   0.0    45.0    90.0  
          R_child_to_parent:     0.000  -0.707   0.707 
                                 1.000   0.000  -0.000 
                                -0.000   0.707   0.707 
      #2:
          parent:                imu1
          child:                 tracking
          T_child_wrt_parent:    0.017   0.015   0.013 
          RPY_parent_to_child:   0.0    45.0    90.0  
          R_child_to_parent:     0.000  -0.707   0.707 
                                 1.000   0.000  -0.000 
                                -0.000   0.707   0.707 
      #3:
          parent:                body
          child:                 imu0
          T_child_wrt_parent:    0.020   0.014  -0.008 
          RPY_parent_to_child:   0.0     0.0     0.0  
          R_child_to_parent:     1.000  -0.000   0.000 
                                 0.000   1.000  -0.000 
                                 0.000   0.000   1.000 
      #4:
          parent:                body
          child:                 imu1
          T_child_wrt_parent:    0.068  -0.015  -0.008 
          RPY_parent_to_child:   0.0     0.0     0.0  
          R_child_to_parent:     1.000  -0.000   0.000 
                                 0.000   1.000  -0.000 
                                 0.000   0.000   1.000 
      #5:
          parent:                body
          child:                 stereo_l
          T_child_wrt_parent:    0.100  -0.040   0.000 
          RPY_parent_to_child:   0.0    90.0    90.0  
          R_child_to_parent:     0.000  -0.000   1.000 
                                 1.000   0.000  -0.000 
                                -0.000   1.000   0.000 
      #6:
          parent:                body
          child:                 tof
          T_child_wrt_parent:    0.100   0.000   0.000 
          RPY_parent_to_child:   0.0    90.0    90.0  
          R_child_to_parent:     0.000  -0.000   1.000 
                                 1.000   0.000  -0.000 
                                -0.000   1.000   0.000 
      #7:
          parent:                body
          child:                 ground
          T_child_wrt_parent:    0.000   0.000   0.100 
          RPY_parent_to_child:   0.0     0.0     0.0  
          R_child_to_parent:     1.000  -0.000   0.000 
                                 0.000   1.000  -0.000 
                                 0.000   0.000   1.000 
      exising instance of voxl-vision-px4 found, attempting to stop it
      starting geometry module
      starting uart mavlink
      Successfully opened mavparser
      starting udp mavlink
      Detected PX4 Mavlink SYSID 1
      Adding manual QGC IP address to udp connection list: 192.168.43.84
      Added new UDP connection to 192.168.43.84
      starting px4 shell
      starting fixed pose input
      starting vio manager
      starting apriltag manager
      starting adsb manager
      ADSB thread starting
      Init complete, entering main loop
      PX4 Connected over UART with sysid 1
      
      
      

      But when I run 'voxl-test-vision-lib -o' I can see the VIO works.

      ...
      [6619.210687] SNAV INFO: IMU sensor finished initializing.
      [6619.211066] SNAV INFO: IMU sensor settings retrieved.
      [6619.211122] SNAV INFO: Creating IMU thread.
      [6619.211332] SNAV INFO: Creating VISLAM processing thread.
      [6619.211463] SNAV INFO: ImuManager thread has tid = 3558, nice = -15
      [6619.211483] SNAV INFO: Creating VISLAM publishing thread.
      [6619.211768] SNAV INFO: VISLAM publishing thread has tid = 3560, nice = -5
      VIO camera frame: points:  0 X:  0.000 Y:  0.000 Z:  0.000 R:  0.000 P: -0.000 Y:  0.000
      [6619.211958] SNAV INFO: VISLAM processing thread has tid = 3559, nice = -5
      VIO camera frame: points:  0 X:  0.000 Y:  0.000 Z:  0.000 R:  0.000 P: -0.000 Y:  0.000
      VIO camera frame: points:  0 X:  0.000 Y:  0.000 Z:  0.000 R:  0.000 P: -0.000 Y:  0.000
      VIO camera frame: points:  0 X:  0.000 Y:  0.000 Z:  0.000 R:  0.000 P: -0.000 Y:  0.000
      VIO camera frame: points:  0 X:  0.000 Y:  0.000 Z:  0.000 R:  0.000 P: -0.000 Y:  0.000
      VIO camera frame: points:  0 X:  0.000 Y:  0.000 Z:  0.000 R:  0.000 P: -0.000 Y:  0.000
      VIO camera frame: points: 39 X:  0.000 Y:  0.000 Z:  0.000 R:  0.000 P: -0.000 Y:  0.000
      VIO camera frame: points: 39 X:  0.000 Y:  0.000 Z:  0.000 R:  0.000 P: -0.000 Y:  0.000
      VIO camera frame: points: 39 X:  0.000 Y:  0.000 Z:  0.000 R:  0.000 P: -0.000 Y:  0.000
      VIO camera frame: points: 39 X: -0.000 Y:  0.000 Z: -0.000 R: -0.000 P: -0.000 Y: -0.000
      VIO camera frame: points: 39 X: -0.000 Y:  0.000 Z:  0.000 R: -0.000 P:  0.000 Y: -0.000
      VIO camera frame: points: 39 X: -0.000 Y:  0.001 Z:  0.000 R: -0.001 P: -0.000 Y: -0.000
      VIO camera frame: points: 39 X: -0.001 Y: -0.002 Z: -0.005 R:  0.001 P: -0.001 Y: -0.000
      VIO camera frame: points: 39 X:  0.000 Y: -0.000 Z: -0.008 R:  0.000 P: -0.001 Y: -0.001
      VIO camera frame: points: 39 X: -0.000 Y: -0.001 Z: -0.010 R:  0.001 P: -0.002 Y: -0.001
      VIO camera frame: points: 39 X: -0.000 Y: -0.000 Z: -0.014 R:  0.002 P: -0.003 Y: -0.001
      VIO camera frame: points: 39 X:  0.002 Y:  0.002 Z: -0.019 R:  0.001 P: -0.003 Y: -0.002
      VIO camera frame: points: 39 X:  0.003 Y:  0.002 Z: -0.022 R:  0.001 P: -0.004 Y: -0.002
      VIO camera frame: points: 39 X:  0.004 Y:  0.002 Z: -0.023 R:  0.001 P: -0.004 Y: -0.001
      VIO camera frame: points: 39 X:  0.004 Y:  0.001 Z: -0.020 R:  0.001 P: -0.004 Y: -0.001
      VIO camera frame: points: 39 X:  0.002 Y:  0.001 Z: -0.015 R:  0.001 P: -0.004 Y: -0.001
      

      In QGroundControl, I can not see the ODOMETRY section in the MAVLink inspector.

      My serial # M20000005GT

      posted in Ask your questions right here!
      LipingL
      Liping