유니티에서 뭔가를 만지작 거리는 것이 점점 재미있어 집니다.^^. 뭐 그거야 제가 첫 글[바로가기]에서도 이야기했지만, 아주 좋은 헬퍼(^^)를 두고 있기 때문이기도 하며, 또 아두니티(ARDUnity)라는 재미난 애셋을 이용해서 아두이노라는 하드웨어를 건드리는 재미도 같이 느끼기 때문이겠지요^^. 오늘은 ARDUnity가 제공하는 몇 몇 자원을 이용해서 서보모터를 돌리는 것을 해볼려고 합니다.^^
첫화면입니다. 이제 아두니티(ARDUnity)를 import하는 것은 지나가죠~~^^ import까지 되고 서보모터 돌리기 예제를 따라가볼까요^^
일단, UI->Canvas를 추가합니다.
저렇게 생성됩니다.
이제 Canvas의 하위에서 UI->Panel을 추가합니다.
저렇게 생성됩니다.
이제 방금 생성한 Panel을 선택한 상태에서 메인 메뉴의 ARDUnity->add Utility->DialSlider를 선택합니다.
그러면 Panel의 Inspector에 Dial Slider가 생성되었음을 확인할 수 있습니다.
Panel에서는 Image 속성이 필요없어서 지웁니다.^^
이제 아까 Panel의 이름을 DialSlider로 변경하고...
Rect Transform의 속성값을 위와 같이 해 둡니다. 그리고, Dial Slider의 minAngle과 maxAngle을 잡아줍니다. 이 각도는 실제 서보모터의 구동 각도를 제한하는 것입니다.
그리고, DialSlider에 Empty Create를 선택한 후 위 그림처럼 이름은 Knob으로 하고, Canvas Renderer와 Image라는 Component를 추가(add)합니다.
이제 Assets->ARDUnity-Resources의 SteeringWheel을 마우스로 끌어다가 Knob의 Image의 Source Image에 놓습니다.
그러면 위 그림처럼 됩니다.^^
이제 다시 Canvas 밑에 만들어 둔, DialSlider의 Dial Slider 속성의 knob 항목을 클릭해서 나타난 창에서 Knob을 선택해 줍니다. 이제 여기까지만 작업한 후에 중간 점검을 해 볼까요???
이제는 아두이노와 연결을 해야죠^^ Empty Create를 한 다음 ARDUnity로 이름을 잡고, Ardunity App과 Comm Serial을 추가합니다. 이 내용은 이 전 글을에서 다루었으니 이제는 살짝 가볍게 지나가도록 하죠^^
그리고, ARDUnity 하위에 Servo를 만들어서 Generic Servo를 Add Component합니다.
그리고, DialSlider를 선택한 후, ARDunity의 DialSliderReacotor를 선택합니다.
그러면 ARDUnity의 Wire Editor에 저 블럭 4개가 이미 생성되어 있을 겁니다.
위 그림처럼 연결해 주면 됩니다.^^ 아 서보 모터의 연결 핀 : Pin 2로 해주구요^^
이제 ARDUnity를 선택하고, Export Sketch를 해서 아두이노 소스코드를 생성합니다.
아두이노와 서보모터는 위 그림처럼 연결합니다.^^
생성된 아두이노 코드를 아두이노 보드에 업로드해주면 됩니다.^^
이제 보드와 모터를 연결한 그림이구요~~~
헨들의 움직임에 따라 서보모터를 구동하는 그림입니다.^^
'Robot > Robot Program - ROS' 카테고리의 다른 글
ROS의 RViz로 세계적인 수술용 로봇 daVinci 다빈치를 만나보자 (2) | 2016.06.21 |
---|---|
ROS 3D 시각화 툴 RViz 쉽게 쉽게 처음 시작해보기 (17) | 2016.06.16 |
ROS 메세지 - 토픽과 서비스 실습하기 (12) | 2016.06.15 |
ROS 팩키지 만들기 따라하기 (4) | 2016.06.08 |
아두이노 푸시버튼으로 아두니티(ARDUnity)를 이용해서 유니티에서 폭파 효과 주기 (14) | 2016.06.03 |
Robot Operating System을 처음 접근하려는 분들께 추천할 책 - ROS 로봇 프로그래밍 - 표윤석 지음 (6) | 2016.06.01 |
ARDUnity를 이용해서 튀는 공(bounced ball)의 방향에 따라 아두이노의 LED를 유니티에서 끄고 켜기 (11) | 2016.05.20 |