October 20, 2017

디바이스마트 미디어:

NT-ARSv1 절대 각도를 얻는 센서

공간상에서 물체의 기울어진 각도, 기울기를 측정하고 싶으시다면, 저희의 NT-ARSv1을 추천합니다. 저가의 MEMS형 자이로센서와 가속도센서를 융합하여 2축 각도를 측정하도록 설계가 되었습니다.

자이로센서와 가속도센서를 왜 융합하는가?

각도를 측정할 만한 센서들은 많이 있습니다. 그중에서 자이로센서와 가속도센서가 많이 이용되는데요. 왜 이 둘을 융합해야할까요. 만약 고급의 고가의 센서를 사용한다면 문제는 없습니다. 그러나 저가의 MEMS형 센서를 사용한다면, 자이로나 가속도세서를 하나만 사용해서는 문제가 생깁니다.

자이로센서를 이용하는 경우는 적분이라는 문제가 생깁니다. 자이로센서의 출력은 각속도이기떄문에 각도를 얻기 위해서는 적분해야하거든요. 문제는 이 적분이 그리 아름답지 않다는 것이 문제입니다. 작은 오차라도 적분이 시작되면, 이후 결과에 누적으로 영향을 미치기 때문입니다. [관련글]

가속도센서를 사용하는 경우 자이로처럼 적분에 대한 부담은 없습니다. 그러나, 가속도센서가 회전중심충에서 직선방향으로는 움직이지 않아야한다는 전제가 필요합니다. 만약 가속도센서가 회전뿐만 아니라 병진운동까지 한다면, 추정한 각도에는 문제가 발생합니다. [관련글]

그래서 일반적으로 낮은 금액에서 원하는 성능을 얻기 위해서는 자이로센서와 가속도센서를 융합하여 필터를 설계합니다.

ARS는 무엇인가?

자이로센서와 가속도센서를 융햡하여 각도를 추정할때, 흔히 공간상의 3개 자세중에서, z축 중심의 회전인 yaw를 제외하고, pitch와 roll을 측정하는 장비를 ARS라고 합니다.

001

ARS를 만들기 위해서는 3축 가속도 센서와 2축 자이로센서에 추가로 자이로의 온도특성을 보정하기 위한 온도센서, 3개의 센서를 융합하고 필터를 설계하기 위한 MCU가 포함됩니다. 만약, Yaw까지 측정한다면, 흔히 AHRS라고 부릅니다.

NT-ARSv1

000

위에서 보시다시피, 저희 NT-ARSv1은 90내의 pitch와 roll을 검출합니다. 동적상태에서 에러는 2도이내, 정적상태 에러는 0.5도 이내입니다. 분해능은 0.001radian입니다. 저희 센서 모듈은 각속도 500도/sec이내, 가속도값 1.5g이내에서 동작하도록 설계되어있습니다. 또한, 29.6mm*31.4mm*10mm의 아주 작은 사이즈를 가지고 있습니다. 그리고, 통신방식은 RS232와 CAN통신을 지원합니다.

002

통신명령은 위와 같이 해당 통신환경에서 명령을 주시면, 결과가 전송되어옵니다.

 

003

저희 제품의 커넥터 핀맵입니다.

기타 제공 사항

 

Comments
18 Responses to “NT-ARSv1 절대 각도를 얻는 센서”
  1. minekiki says:

    2011년부터 현재까지도 10여개 정도 사용하고 있습니다. 유저와 개발자 분 모두에게 도움이 되었으면 하는 바램에서 요약해 봅니다:

    pros)
    1. CAN통신 지원으로 다 수의 IMU를 동시에 사용할 수 있어 좋습니다. 동급 사이즈 대비 CAN 통신 지원하는 IMU는 아마 요 모델이 독보적일 거라 판단됩니다.
    2. 기본 케이스의 내구성이 우수합니다.
    3. 무난하고 안정적인 신호를 제공합니다.

    cons)
    1. +-80도 정도를 넘어가면서 부터 데이터를 신뢰할 수 없습니다.
    2. noise level이 타 사 동급 사이즈 IMU 대비 높은 편입니다. (e.g. 위드로봇 myARS_USB와 비교측정 결과 평균 약 3배 높은 노이즈)
    3. Cable 커넥터가 매우 약해서 주의가 필요합니다.

    결론: CAN통신의 장점이 대단히 크기 때문에 동급 사이즈의 3축 360도 IMU(serial type) 또는 보다 성능이 좋은 모델(serial type)을 사용하지 않을 정도 입니다. 아무튼 현재는 8개 센서를 동시에 잘 쓰고 있습니다.

    바라는 점: 측정 각도를 360도로 확장해 주시면 감사하겠습니다. ^^;

    • NTRexLAB says:

      좋은 의견과 칭찬에 감사드립니다. 사실… 저희도 고민이 많았던 부분이기도 하구요.
      아직은 계획에 없지만, 곧 좀 더 업그레이드 된 모델로 다시 찾아뵙겠습니다.

  2. 구매자 says:

    혹시 c++형태의 예제소스를 받아볼수 있을까요?

    • NTRexLAB says:

      죄송합니다. 예제를 준비하지 못했네요.
      그런데 VB쪽 예제는 올라가 있습니다. 제품리뷰에 보시면 있는데요. 그부분을 참조하셔도 되지 않을까합니다

  3. 구매자 says:

    하……
    왜 정상적인 출력값이 나오지 않나요?ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ

  4. 구매자 says:

    시리얼 통신예제 소스가 at90can64 가 타겟인데요 저는 atmega128보드를 통해 자이로 값을 받으려 하는데 잘안되서요 혹시 소스를 수정해야하나요 ? 그렇다면 atmega128 용 예제소스를 좀 받아볼수 있을까요 ? 통신은 되는데 자꾸 쓰레기값이 나오네요. 하이퍼터미널의 명령어도 먹질 않구요…

    • NTRexLAB says:

      안녕하세요. 엔티렉스 연구소입니다.
      시리얼 통신을 통해 ARS를 구동하고자하는 명령체계는 이미 메뉴얼에 있습니다.
      그 외에도
      http://www.ntrexgo.com/archives/12020
      http://www.ntrexgo.com/archives/12755
      등을 보시면 또한 예제가 나와 있습니다.
      다양한 MCU를 대상으로 한 소스들을 제공하면 좋겠지만, 그게 또 현실적으로 힘들어서요.
      그래도 일반적인 시리얼 통신을 사용하기 때문에
      조금만 감을 잡으시면 될겁니다.

  5. 김기정 says:

    이센서 그냥 가속도만 나오게 할수 있습니까:?

  6. 조영진 says:

    제가 다른곳에 질문을 올렸었네요
    혹시 다음과 같은 상황에서 각속도와 회전각을 안정적으로 측정할 수 있을까요?

    상황 : 고정물(1) – 제어신호가 들어오고 현재상태값을 피드백, 아래 고정물을 움직이기 위한 공압 공급

    고정물 (2) – 공압을 공급받아 0~90도 범위로 회전운동(밸브 개폐 동작)

    고정물1(포지셔너) : 아래 고정물이 얼마나 돌아갔는지 알려주면서 다른 제어기기에서
    이동하라는 각도만큼 이동하도록 공기를 조절공급하는 부분입니다
    고정물2(액추에이터) : 위 고정물1에서 공기를 받아 회전하는 부분입니다

    아래 액추이에터가 정해진 만큼 회전했는지 축을 통하여 검지하고자 합니다
    축 부위에는 충분히 센서를 고정시킬 수 있는 공간이 있습니다

    질문 : 상기 센서모듈로 각속도 및 회전량을 계측할 수 있을까요?
    회전범위는 0~90도 입니다.
    만약 PC에서 바로 사용하려면 어느모듈(센서모듈+기타통신모듈)을 구매해야 하나요?

    • NTRexLAB says:

      안녕하세요 엔티렉스 연구소입니다.

      저희 ARS는 ROLL AXIS 와 PITCH AXIS 를 측정할 수있습니다.

      저희 ARS는 작동벙위가 +- 90도 라고 적혀있습니다. 그러나 80도 이상 각도가 올라가면 데이터가 신뢰를 하지 못합니다.

      그리고 밸브 축이 YAW 방향으로 되어있으면 저희 ARS장비로는 측정을 하지 못합니다.

      • 조영진 says:

        질문을 간단히 드리지 못해 죄송합니다.

        간단히 다시 질문드릴께요
        회전축에 암이 용접되어 있습니다.
        회전축이 돌면 암은 자연히 회전축을 중심으로 돌아갑니다
        이때 암 중간에 이 센서를 붙여서 암이 회전한 각도를 잴수 있는 것인가요?
        그리고 어떤 모듈을 구매해야 할까요?

    • NTRexLAB says:

      본 제품은 PITCH와 ROLL을 측정하는 장비입니다. 혹시 YAW를 측정하고자 하신다면 본 제품과 맞지 않습니다.
      그리고 액추에이터의 회전 정도를 축기준으로 측정하고자 하신다면
      정도가 떨아지는 MEMS형 ARS 장비보다 엔코더나 포텐셔미터를 설치하는게 더 정확하지 않을까요?

  7. 구매예정자 says:

    안녕하십니까 문의사항이 있어 방문하였습니다.

    NT-ARSv1의 경우 sampling frequency 가 몇 Hz인지 스펙에 나와있지 않은데 궁금합니다.

    그리고 저는 센서를 해상에서 선박의 rolling과 pitching 측정에 사용할 예정인데 중력외의 다른 가속도, 진동같은 것이 있을경우에도 센서의 성능이 보장되는지 궁금합니다. 센서 개발자의 입장에서 선박의 rolling, pitching 측정에 적합하다고 생각하시는지도 궁금하네요..^^;;

    • NTRexLAB says:

      일단 sample 주파수는 1kHz이며 이를 10ms마다 사용자에게 결과를 줍니다.
      센서 내부로는 1Khz의 동작 주파수를 가지지만, 응답을 보여주는
      response 주파수는 100Hz입니다.
      그리고, 선박의 용도에서는 (학생들의 프로젝트 수준이 아니라면) 어렵습니다.
      물론 사용자의 환경을 판단해봐야할 문제지만,
      선박은 여전에 수 천만원 정도 (요즘은 수 백만원으로 싸졌다고들 하더군요)의 고급형 자이로를 사용합니다.
      10만원도 안되는 MEMS 기반의 센서한테는 무리라고 생각합니다.

  8. 구매예정자 says:

    안녕하세요 저희는 가속도센서만으로 이동거리를 알아내려고 하다가 어렵다는 것을 느끼고 가속도 + 다른 센서를 하여 물체의 이동거리를 구할 수 있는 제품을 찾고 있습니다. 제가 알아보기엔 가속도 + 자이로 센서를 하면 각도 뿐만 아니라 이동거리도 구할 수 있다고 들었는데 혹시 그런 제품이 있는지 여쭤보구자 문의드립니다.

  9. ruins1942 says:

    현재 ATmega128로 밸런싱 로봇을 만들고있는데요
    Rs232통신으로 데이터를 받아서 Roll값을 추출해 예제 공식에 맞게 각도값으로 변환을 하여서 0도보다 크면 왼쪽 0도보다 작으면 오른쪽으로 움직이게 모터를 제어해놓았습니다. 그런데 각도가 다르게 들어오는지 컴파일 해놓았다가 다시 해보면 0도기준으로 프로그래밍 해놓은게 한쪽으로 치우쳐서 방향전환을 합니다. 그래서 그에맞게 각도 변환공식에 +혹은 -를 해주어도 그 순간에는 되다가 다시 좀 지나고 하면 기울어져 있습니다. 밸런싱에 중요한점이 각도값이 정확한 제어인데 할때마다 다르게 들어오니 답답하고 진행이 안됩니다.
    빠른 답변 부탁드리겠습니다.
    혹시 제가 각도값 추출하는 부분이 이상해서 그럴수 있으니 각도값을 받는 avr 소스파일을 첨부하겠습니다.
    01050554084 이주용입니다.
    괜찮으시면 전화통화를 하고싶습니다.
    수고하세요~

Leave A Comment

*