콘텐츠로 바로가기

now0930 일지

이런저런 생각

  • 홈
  • 비공개
  • 강좌
  • 잔여 작업 조회
  • 위치

원격 조종기 만들기

집에서 놀고 있는 안드로이드 폰으로, LEGO EV3을 조종하는 리모콘을 만들어 보려고 한다.

갤럭시 노트1 조종기 개념

화면에 포켓 몬스터 볼을 표시한다. 사용자가 휴대폰을 기울이면, 공이 그 방향으로 이동한다.
이 공의 좌표가 레고를 전진/후진, 좌회전/우회전 등으로 움직인다.

좌표 설정의 문제점

처음에는 아래와 같이 그리면, 멋지게 움직인다고 생각했다!!
그림의 x,y 좌표가 휴대폰 디스플레이의 시스템이다.

  • 1번: 레고가 전진한다. 끝에 있을 수록 세게 간다.
  • 5번: 후진
  • 2번: 약한 우회전. 왼쪽 바퀴가 오른쪽 바퀴보다 더 돈다.
  • 3번: 강한 우회전. 왼쪽이 2번보다 더 많이 돈다.
  • 4번: ??그림의 (0,0) 기준으로 3번->4번으로 가면, 두 바퀴가 모두 거꾸로 돌아야 된다.후진으로 강한 우회전을 한다.
    L/R 값이 (4,1) -> (-4,-1)로 변경되고, 변화되는 값이 크다. 그림이 어느 영역을 넘어가면 바퀴가 급격히 변하게 되면 좀 이상할 듯 하다.

위 표를 그려는데, L/R 바퀴가 방향이 항상 같다. 단순한 움직임만 구현될 듯 하다.

좌표 설정 제안

디스플레이 좌표(X,Y)를 135도 반시계 방향으로 돌려, L/R 축으로 표시했다. 아래 그림과 같이 표시 가능하다.

직진->적은 우회전->많은 우회전->적은 우회전->후진 이렇게 된다.
값으로 표시하면..(R,L).

  • 직진: (+10,+10)
  • 적은 우회전: L값이 0선을 닿으면 (0,MaxL)
  • 많은 우회전: L값이 0선을 넘어가면 (-1,MaxL), R이 거꾸로 돌면서 더 회전
  • 적은 우회전: L이 줄면서 R이 – 방향으로 증가(-5,MeanL)

원점을 수정하여 rotation 하려면, 여기를 참조한다.
여기를 참조하여 새로운 좌표계를 아래와 같이 설정했다.


디스플레이의 X, Y 좌표가 오른손 좌표가 아니기 때문에, 임의로 Y,X로 변경한 다음, L/R을 설정했다.
아래 동영상이 기울기에 따른 L,R 값이다.

이제, 레고에서 받는 부분을 만들기로 하고, 이건 접어야겠다.

이 글 공유하기:

  • Tweet
발행일 2017-09-03글쓴이 이대원
카테고리 생활코딩 태그 EV3, LEGO, 장난감, 좌표계, 회전이동

댓글 남기기응답 취소

이 사이트는 Akismet을 사용하여 스팸을 줄입니다. 댓글 데이터가 어떻게 처리되는지 알아보세요.

글 내비게이션

이전 글

슬럼개 직장인!

다음 글

Lego MindStorm EV3 제어기

2025 5월
일 월 화 수 목 금 토
 123
45678910
11121314151617
18192021222324
25262728293031
4월    

최신 글

  • common mode, differential mode 2025-05-11
  • signal conditioner, 신호 처리기 2025-05-10
  • strain gage 2025-05-09
  • 칼만 필터 2025-05-01
  • positioner(I/P) 2025-04-26

카테고리

  • 산업계측제어기술사
  • 삶 자국
    • 책과 영화
    • 투자
  • 생활코딩
    • LEGO
    • ROS
    • tensorflow
  • 전기기사
  • 피아노 악보

메타

  • 로그인
  • 엔트리 피드
  • 댓글 피드
  • WordPress.org

페이지

  • 소개
  • 잔여 작업 조회
    • 작업 추가
    • 작업의 사진 조회
    • 작업 수정 페이지
  • 사진
    • GPS 입력된 사진
    • 사진 조회
  • 위치
    • 하기 휴가 방문지
    • 해외 출장

태그

android bash c docker driver FSM gps java kernel LEGO linux mysql network program opcua open62541 plc programmers python raspberry reinforcementLearning ros state space system program tensorflow transfer function 경제 미국 민수 삼국지 세계사 실기 에너지 역사 유전자 일본 임베디드 리눅스 전기기사 조선 중국 채윤 코딩 테스트 통계 한국사 한국어

팔로우하세요

  • Facebook
now0930 일지
WordPress로 제작.
 

댓글 로드중...