[아두이노중급] 계속 튀는 센서 값, 필터링으로 노이즈 잡는 방법!

Поделиться
HTML-код
  • Опубликовано: 11 ноя 2024

Комментарии • 22

  • @worynim
    @worynim 4 года назад +7

    영상에서처럼 값 흔들리는 정도가 아니라 값이 많이 튀는 스파이크 성 노이즈에는 평균을 내는 것은 좋은 방법이 아닙니다. 평균을 내면 노이즈가 값에 녹아 들기 때문이죠. 그런 경우 평균보다는 메디안 필터를 추천합니다. 메디안 필터는 여러번 샘플링을 하고 샘플링 한 센서값을 크기별로 정렬해서 중간값을 취하는 방법입니다. 위 아래로 튀는 스파이크성 노이즈에는 탁월한 성능을 발휘 합니다.

    • @LOVOTLAB
      @LOVOTLAB  4 года назад

      네~~ 의견 감사합니다. 미디언필터도 한번 다뤄야겠네요.

    • @박진웅-p2z
      @박진웅-p2z 4 года назад

      노이즈의 랜덤워크를 적분할 경우 바이어스로 인해 드리프트가 발생되는경우 인가요?

  • @정연민-s3k
    @정연민-s3k Год назад

    이동평균 구하는 건데 일일이 센싱한 것을 다른 어레이로 저장하지 않고 그냥 한줄 식으로 계산할 수 있습니다. 인테넷 검색하면 그식 나와 있어요.

  • @최실장-t2e
    @최실장-t2e 3 года назад +2

    loop마다 계속 버퍼값을 옮기는거보다, 인덱스를 지정해서 저장하고 증가하면 속도가 더 빠르겠네요.
    for()문장을 1번만 사용하면 되니까..

  • @미기엘라이
    @미기엘라이 2 года назад +1

    서보모터 노이즈는 못 없애네요...

  • @anchorson67
    @anchorson67 2 года назад

    감사합니다 잘 봤습니다. 고생했어요

  • @정재욱-s6t
    @정재욱-s6t Год назад +1

    잘배우고가요

  • @알콩달콩-b9p
    @알콩달콩-b9p 4 года назад +1

    항상 잘 보고 있습니다.
    CD4051을 사용한 8개의 아날로그 신호를 1개의 A0 입력포트로 순차적으로 읽어 들이는 기술과, 74HC597 (HC165) 을 이용한 디지털 멀티입력, 즉 DIP-SW 8개를 1개의 디지털입력핀으로
    읽어들이는 방법도 좀 강의해 주세요.

    • @LOVOTLAB
      @LOVOTLAB  4 года назад

      4051도 한번 다뤄야겠네요~ ^^

  • @kton09
    @kton09 3 года назад

    그럼 하드웨어적으로 노이즈를 제거하는 방법은 무엇이있나요

  • @utimezgd
    @utimezgd 3 года назад +2

    Circular Queue사용하면 깔끔하겠네요 ㅎ 고마워요

  • @sshifeed
    @sshifeed 3 года назад +2

    혹시 파이썬 코드도 공유 가능 하신가요??

    • @LOVOTLAB
      @LOVOTLAB  3 года назад

      필터링하는 코드는 인터넷에 찾아보시면 많이 있습니다.

  • @Mangoringo__l__o
    @Mangoringo__l__o 3 года назад

    센서 입력값이 만약 2개일 경우 코드를 어떻게 하죠?? A4,A5번입니다.

  • @hengunmok
    @hengunmok 4 года назад +1

    좋군

  • @요산요수-n3z
    @요산요수-n3z 5 лет назад

    구독하면서 잘 보고 있습니다.
    ACS172(20A)를 사용한 "전기 사용 알림" 구상중 입니다.
    60W이상의 전기를 사용(전류가 흐르면) 전류량을 감지하고 전기를 사용하는동안 릴레이를 작동시켜서 알림장치를 작동하려고합니다.
    센서에서 나오는 값(mV)을 mA값으로 바꿔계산해서 일정수준이상으로 받으면 릴레이를 작동시키려고 하는데
    DC전압에서는 쉬울것 같은데 220V AC전압을 사용하니까 +값과 -값이 사인파로 나오다보니까 어찌해야할지 고민입니다.
    함수에서 abs()를 써서 절대값이 나오도록했더니 "산모양"만 나오고있죠.
    노이즈 없애는 방법을 평균값 계산으로 해결하는것을 보고 혹시 최고치와 최저치의 평균값을 계산하여 2를 곱해서 하면 어떨까합니다.
    가능한지요?
    지식이 워낙 미천하여 마음은 급한데 이런저런 생각만 많네요.

    • @요산요수-n3z
      @요산요수-n3z 5 лет назад

      1~2초간의 들어온 데이터의 "최대값의 평균"을 찾아서 띄워주고
      10초간 릴레이를 작동하는 루프를 돌리면 또한 방법이라고 할 있겠네요. 가능할까요?

  • @ck5364
    @ck5364 5 лет назад +2

    이건 혹시 00필터 라는 명칭이 있나요??

    • @LOVOTLAB
      @LOVOTLAB  5 лет назад +2

      이동평균 필터 (Moving Average Filter) 라고 합니다.