ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [부산로봇코딩] 자율주행 자동차 짱이네
    카테고리 없음 2020. 2. 12. 12:40

    처음뵙겠습니다~


    이번에는 자율주행자동차 수업을 소개해 드리도록 하겠습니다.​, 자율 주행 자동차의 수업은 총 4회 때에 걸쳐서 진행되는 수업입니다.자동차가 자율 주행하기 위해 필요한 기능에 어떤 것이 있는지 알아보고 그 중 몇 가지 기능을 실현해 보았습니다.


    먼저 조립도를 보고 완성한 자동차 사진입니다.


    >


    뒷바퀴는 동력 시달 후에 하였고 앞바퀴는 조향이 뒤가 되도록 조립하여 앞면에 초음파 센서를 부착하여 앞쪽에 장애물 등을 감지할 수 있도록 하였습니다.


    조립 완성 후 조향을 담당한 앞바퀴를 중앙에 정렬시키기 위한 초기화 동작과 관련된 학습을 하였습니다.미디엄 모터로 제작되고 있는 조향 장치를 중립 위치에 위치시키기 위해서 사용되는 비조정 모터 명령 블록의 특성에 대해서도 살펴 보았습니다.(비조정모터란 모터에 작용하는 외부저항에 관계없이 사용자가 지정한 파워에 의해 꾸준한 전류를 흐르는 명령블록으로 모터의 과부하를 방지하기 위해 주로 사용됩니다.) 아래는 비조정모터블록을 사용하여 조향장치가 한끝에 도달하면 모터의 회전센서값을 초기화시킨 후 반대쪽 끝에 조향장치가 도달할 때까지의 측정된 각도값을 반으로 나눈 각도만큼 반대로 이동시켜 중심으로 정렬하는 영상입니다.


    자율주행자동차의 다양한 기능(크루즈, 자율주차, 회피주행 등)을 각 버튼에 매칭시키는 원리에 대해 공부했습니다.각 버튼을 누를 때마다 미리 정해진 기능이 실행되고 있는지 확인하는 영상입니다.


    1차 테스트 주행에서 S글자 주행을 코딩 칠로 확인하였습니다.뒷바퀴는 구동을 거꾸로 세웠고 전륜은 조타를 뒤로 하기 때문에 주행과 조타의 2가지 기능이 동시에 수행할 수 있도록 멀티 태스킹을 사용 칠로코ー디은그했습니다.


    2번째의 주행은 회피 주행에서 전에 장어의 물이 발견되면 회피하고에서 직진하는 과정을 반복합니다.초음파 센서의 거리 측정치를 판단하여 회피 기능을 실행하도록 코딩하였습니다.


    3번째의 주행은 "스마트 크루즈"기능이다.​ 지정된 속도로 1 정하게 달렸는데, 앞차와의 거리가 가까워지면 속력을 줄이고 멀어지면 다시 지정된 속도까지 증가시키는 기능을 반복해서 앞차와의 거리를 1 정하게 유지할 것이다.물론 앞차가 멈추면 충돌하지 않도록 정지할 수 있는 기능도 붙어 코딩했습니다.앞 차와의 거리를 실시간으로 체크하고 나서, 차의 파워를 미리 계산한 수식에 따라 정하도록 하기 때문에 난이도 높은 코딩이었습니다.


    4번째의 주행은 자동 주차 기능입니다.실습에서 이미 초음파 센서가 측면을 향해 측정되도록 변경하여 조립하였습니다.실습에 사용된 주차는 후면 주차기능으로 주차영역을 지본인 가다 옆에 달린 초음파 센서로 주차공간이 확인되면 정해진 대로 주차동작을 실행하도록 코딩하였습니다.


    이것으로 주행 실습을 마치고 적외선 센서와 비콘을 사용해 자율주행 자동차를 RC카처럼 조종할 수 있도록 개조해 보았습니다.개조에는 적외선을 방출하는 적외선 비콘과 적외선을 수신할 수 있는 적외선 수신 센서를 추가 사용했습니다.물론 적외선의 특징이나 주변에서 사용되는 예(리모컨 등)에 대해서도 공부했습니다.


    아래는 초음파 센서를 분리하고 적외선 센서를 장착한 모습입니다. 옆에 있는 사각 장치가 적외선 비콘입니다.


    >


    적외선 센서와 비콘은 다양한 기능(근접 모두, 비콘 방향 모두, 비콘 신호 강도 모두, 원격 모두 등)이 있습니다.예를 들어 다양한 신호를 지정하여 송수신할 수도 있으며 적외선 비콘이 방출한 적외선의 강도와 방향까지도 측정하여 코딩에 사용할 수 있습니다.이번 실습에서는 원격 모두를 사용하여 비콘에 있는 여러 버튼에 자동차 조향과 전진, 후진을 미루도록 배치하고 코딩을 했습니다.


    우선 비콘에 있는 버튼에 사운드 기능을 할당하고 버튼마다 정해진 기능을 수행하는지 확인하는 영상이다.


    이번에는 비콘 버튼에 주행 기능을 할당하여 테스트하는 영상이다.


    위와 같은 동작이 수행되도록 코딩한 이야기입니다.


    >


    테스트 완료 후 자유롭게 주행해 보았습니다.


    4차 때에 걸친 이번 수업에서 다양한 센서가 우리 실생 활에서 어떻게 사용되는지 여부에 대한 계기가 되어 이런 센서를 이용하여 원하는 기능이 수행되기 때문에 어떤 순서로 어떻게 코딩해야 할지 코딩에 대한 생각도 많이 하고 볼 때였습니다.다음번에 더 재미있는 수업에 찾아뵙겠습니다.


    감사하겠지~


    댓글

Designed by Tistory.