MW-AHRSv2U ROS1 IMU hz 문의 > Module_Forum

본문 바로가기
사이트 내 전체검색

Module_Forum

MW-AHRSv2U ROS1 IMU hz 문의

페이지 정보

profile_image
작성자 jstar0525
댓글 11건 조회 2,311회 작성일 23-08-29 17:04

본문

구매한 Sensor: MW-AHRSv2U

사용 환경: ROS melodic (Ubuntu 18.04)

개발 언어: c++

https://github.com/ntrexlab/STELLA_N1_N2_X4_ROS1_v2.0/tree/master/stella/stella_ahrs

위의 git을 이용하여
MW-AHRSv2U를 동작시켰을 경우
IMU센서의 데이터가 5hz 밖에 나오지 않습니다.
저는 100hz 정도 나오기를 원하고 있습니다.

https://github.com/ntrexlab/STELLA_N1_N2_X4_ROS1_v2.0/blob/master/stella/stella_ahrs/src/listener.cpp
위 파일의 MW_AHRS_Serial_Connect를 아래와 같이 수정하였습니다.

int main(int argc, char **argv)
{
    ros::init(argc, argv,"stella_ahrs_node");
    //char *port = "/dev/AHRS";
    MW_AHRS_Serial_Connect("/dev/AHRS" ,460800, 3);
    /*
        <ntrex::MwAhrsRosDriver>(port_name, baudrate, sel)

        sel 0 - 기능사용하지 않음
        sel 1 - Z축 캘리브레이션
        sel 2 - 각도리셋
        sel 3 - Z축 캘리브레이션및 각도리셋
   
    */
    RUN = true;

    MwAhrsRosDriver node;

    ros::spin();

    return 0;
}

Windows UI에서
RS-232와 USB의 baudrate를 460800으로 하고
period를 10ms로 변경하여도 데이터 hz에 변화가 없어 문의드립니다.

100hz정도(10ms)의 데이터 period를 만들려면 어떻게 해야하나요?

댓글목록

profile_image

최고관리자님의 댓글

최고관리자 작성일

안녕하세요.

GUI에서 설정 후 ROS에서 사용하실 때 안되시는 걸까요?

ROS  드라이버에서 주기를 변경 할 수 없게 해놓아서 원하시면

개선버전 금주내로 도와드리도록 하겠습니다.

감사합니다

profile_image

jstar0525님의 댓글

jstar0525 작성일

네, 감사합니다.
개선 버전이 나오면 아래 댓글 부탁드립니다.

profile_image

최고관리자님의 댓글

최고관리자 작성일

안녕하세요.
혹시 사용하시는 플랫폼이 어떻게 되실까요?
예를 들어 젯슨나노, 라즈베리파이, PC 등
사용 환경 알려주시면 감사드리겠습니다

profile_image

jstar0525님의 댓글

jstar0525 작성일

PC로, MW_AHRS_amd64.a를 사용하고 있습니다

profile_image

최고관리자님의 댓글

최고관리자 작성일

안녕하세요, 아이디어로봇(엔티렉스 부설연구소) 입니다.
요청사항 개선하여 깃허브 업로드 하였습니다.
한번 받아보셔서 사용해보시길 바랍니다

브런치 : 230831

https://github.com/ntrexlab/2th_NtrexAHRS_lib_ROS/tree/230831

profile_image

최고관리자님의 댓글

최고관리자 작성일

사용해보시고 잘 작동하는지 댓글 부탁드리겠습니다

profile_image

jstar0525님의 댓글

jstar0525 작성일

감사합니다.

제가 일정이 있어 9/4(월) 이후 테스트 진행해보겠습니다

profile_image

jstar0525님의 댓글

jstar0525 작성일

해당 git을 ROS2 foxy에서 테스트 해보니
10ms로 세팅해서 100hz를 예상했는데
약 890hz로 나옵니다.

해당 증상의 원인이 무엇일까요?

또한 코드를 ROS1 melodic으로도 만들어주실수 있나요?
MW_AHRS_amd64.a의 lib를 이용하여 코드 수정이 어렵네요

$ ros2 topic hz /imu/data
average rate: 892.711
        min: 0.000s max: 0.007s std dev: 0.00069s window: 894
average rate: 850.884
        min: 0.000s max: 0.009s std dev: 0.00095s window: 1703
average rate: 878.961
        min: 0.000s max: 0.009s std dev: 0.00083s window: 2639
average rate: 885.250
        min: 0.000s max: 0.009s std dev: 0.00079s window: 3544
average rate: 889.625
        min: 0.000s max: 0.009s std dev: 0.00077s window: 4452

profile_image

최고관리자님의 댓글

최고관리자 작성일

안녕하세요. 저희가 현재 개발하고 있는 프로젝트가 있어서
바로 대응은 어렵습니다.
한번 다음 링크 64번째 줄을 변경해보시겠습니까?
타이머를 사용하여 주기적으로 토픽을 발행하는 라인입니다.
https://github.com/ntrexlab/STELLA_N1_N2_X4_ROS1_v2.0/blob/master/stella/stella_ahrs/src/listener.cpp#L64C64-L64C79

profile_image

최고관리자님의 댓글

최고관리자 작성일

그래도 변화가 없다면 질문 남겨주시면 감사드리겠습니다.

profile_image

jstar0525님의 댓글

jstar0525 작성일

https://github.com/ntrexlab/2th_NtrexAHRS_lib_ROS/blob/230831/PC/stella_ahrs/mw/mw_ahrs.cpp
위 링크의 73번째 줄을 수정하여 정상작동 확인했습니다.
감사합니다.

회원로그인

회원가입