제조공정
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 2 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
|
| ||||
|
우리의 이야기 :
이 프로젝트는 지도나 건물 배치 계획이 아니라 위치 지정을 위해 GPS나 WiFi 또는 Bluetooth를 사용하지 않고 미리 정의된 경로로 로봇을 정밀하게 이동시키는 것입니다. 그리고 실시간으로 실제 경로(축척까지)를 그립니다. 블루투스는 실시간 위치 정보 전송을 위해 유선 대신 사용할 수 있습니다.
그림> 그림>
배경 이야기:
우리는 Arduino 기반 로봇의 실내 탐색을 위한 강력한 솔루션을 찾고 있었습니다. 이 애플리케이션에 적합한 모션 감지 솔루션을 선택하는 동안 우리는 Oblu(오픈 소스 IMU)도 고려했습니다. 저렴한 비용과 오픈 소스 특성으로 인해 유력한 후보가 되었습니다. 여기서 까다로운 부분은 oblu의 오픈 소스 프로그램이 간단히 말해서 발에 걸치는 실내 보행자 추측 항법(PDR) 또는 보행자 탐색에 적합하다는 것입니다. 발 장착형 IMU로서 실내에서 Oblu의 PDR 성능은 상당히 인상적입니다. 큰 장점은 실시간 위치 추적을 위한 무료 Android 앱(Xolu)이었습니다. 그러나 우리는 인간의 보행 모델을 기반으로 하는 기존 보행자 탐색 알고리즘을 사용하는 방법을 확신하지 못했습니다.
Oblu의 내부 계산은 사람의 보행을 기반으로 합니다. Oblu는 두 개의 연속 단계 사이의 변위와 표제 변경을 제공합니다. 발이 지면에 닿으면 발바닥의 속도는 0입니다. 즉, 발바닥은 정지합니다. <위 영상 참조> 이런 식으로 Oblu는 '단계'를 감지하고 일부 내부 오류를 수정합니다. 그리고 이렇게 자주 오류를 수정하면 뛰어난 추적 성능을 얻을 수 있습니다. 그래서 여기에 캐치가 있습니다. 우리 로봇도 같은 방식으로 걷는다면 어떨까요? 이동, 중지, 이동, 중지..
우리는 Oblu를 선택했고 곧 로봇과 추적 시스템을 조립할 수 있었습니다. 나머지 이야기는 다음 동영상에 있습니다...
작동 원리:
로봇은 사전 프로그래밍된 경로로 이동하고 실시간 추적을 위해 실제 이동 정보를 (블루투스를 통해) 전화기로 전송합니다.
Arduino는 경로로 미리 프로그래밍되어 있으며 oblu는 로봇의 움직임을 감지하는 데 사용됩니다. oblu는 일정한 간격으로 움직임 정보를 Arduino에 전송합니다. 이를 기반으로 Arduino는 바퀴의 움직임을 제어하여 로봇이 미리 정의된 경로를 따르도록 합니다.
로봇의 경로는 일련의 직선 세그먼트로 프로그래밍됩니다. 각 선분은 이전 선분에 대한 길이와 방향으로 정의됩니다. 로봇의 움직임은 신중하게 유지됩니다. 즉, 직선으로 움직이지만 더 작은 부분으로 움직입니다(단순함을 위해 '보폭'이라고 함). 보폭이 끝날 때마다 oblu는 보폭과 직선에서 벗어난 정도(방향 변경)를 Arduino로 전송합니다. Arduino는 이러한 정보를 수신할 때마다 미리 정의된 직선에서 이탈을 발견하면 로봇의 정렬을 수정합니다.
프로그램에 따라 로봇은 항상 직선으로 움직여야 합니다. 그러나 고르지 않은 표면, 로봇 어셈블리의 질량 불균형, DC 모터의 구조적 또는 전기적 불균형 또는 전면 자유 주행 휠의 무작위 방향과 같은 비이상으로 인해 직선에서 벗어나 특정 각도 또는 비뚤어진 경로로 걸을 수 있습니다. 한 걸음 .. 방향을 수정하십시오. 전진하십시오. 로봇은 특정 선분의 프로그래밍된 길이보다 더 많이 이동하는 경우에도 뒤로 이동합니다.
다음 보폭은 특정 직선 세그먼트를 덮을 나머지 거리에 따라 다릅니다. 로봇은 이동할 거리가 멀수록 큰 보폭을 하고 목적지(즉, 모든 직선 세그먼트의 끝)에 가까워지면 작은 보폭을 합니다.
IMU Oblu는 데이터를 Arduino와 전화(블루투스를 통해)에 동시에 전송합니다. Xoblu(Android 앱)는 전화에서 실시간 추적에 사용되는 로봇에서 수신한 움직임 정보를 기반으로 경로를 구성하기 위해 몇 가지 간단한 계산을 수행합니다. (Xolu를 이용한 경로 구성은 아래와 같습니다.)
요약하면, Oblu는 움직임을 감지하고 움직임 정보를 Arduino와 전화에 정기적으로 전달합니다. 프로그래밍된 경로와 모션 정보(oblu에서 전송)를 기반으로 Arduino는 바퀴의 움직임을 제어합니다. 로봇의 움직임은 시작/중지 명령을 제외하고 원격으로 제어되지 않습니다.
경로 모델링 :
로봇은 직선 세그먼트로만 걷는 경우 가장 잘 제어될 수 있습니다. 따라서 경로는 먼저 일련의 직선 세그먼트로 모델링되어야 합니다. 아래 그림에는 변위 및 방향 측면에서 몇 가지 예제 경로와 해당 표현이 포함되어 있습니다. 이것이 Arduino에서 경로가 프로그래밍되는 방식입니다.
그림>마찬가지로 직선 세그먼트의 집합인 모든 경로는 Arduino에서 정의하고 프로그래밍할 수 있습니다.
순회 회의:
Arduino, oblu, 모터 드라이버 및 배터리 팩 간의 전기적 연결은 H/W 섹션을 참조하십시오.
<울>1단계 :Xolu가 oblu에 START 명령을 보냅니다.
2단계 :oblu는 Xolu에 적절한 ACK를 보내어 수신 명령을 확인합니다.
3단계 :oblu는 모든 단계에서 각 보폭에 대한 변위 및 방향 정보를 포함하는 DATA 패킷을 Xoblu로 보냅니다. (단계 =제로 모션 또는 정지가 감지될 때마다).
4단계 :Xolu는 oblu에 적절한 ACK를 전송하여 마지막 DATA 패킷 수신을 확인합니다. (Xoblu가 STOP을 보낼 때까지 3단계와 4단계의 주기를 반복합니다. STOP 명령을 받으면 oblu는 5단계를 실행합니다.)
5단계 :STOP - (i) oblu에서 처리 중지 (ii) oblu에서 모든 출력 중지
START, ACK, DATA 및 STOP에 대한 자세한 내용은 oblu의 애플리케이션 노트를 참조하십시오.
Oblu IMU는 어떻게 작동합니까(선택 사항):
Oblu의 개요 및 발 장착형 PDR 센서 작동의 기본 원리에 대한 몇 가지 참고 자료 제시:
--> oblu의 사용 가능한 소스 코드는 발 장착 탐색을 대상으로 합니다. 그리고 그 목적에 가장 최적화되어 있습니다. 아래 비디오는 기본 작동 원리를 다룹니다.
--> 다음은 발 장착 PDR 센서에 대한 몇 가지 간단한 기사입니다.
1. 내 걸음 수 추적
2. 내 걸음 수 계속 추적
--> 발 센서를 사용한 보행자 추측 항법에 대한 자세한 내용은 이 문서를 참조하십시오.
--> Oblu 개요에 대한 다음 비디오:
----------------
피드백, 제안 사항을 공유하고 의견을 남겨주세요.
최고의 소원!
----------------
섹션> <섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">제조공정
이 튜토리얼에서는 어떤 방향으로든 움직일 수 있는 Arduino Mecanum Wheels 로봇을 만드는 방법을 배울 것입니다. 로봇의 이러한 독특한 이동성은 메카넘 휠(Mecanum Wheels)이라는 특수한 유형의 바퀴를 사용하여 이루어집니다. 다음 비디오를 보거나 아래에 작성된 튜토리얼을 읽을 수 있습니다. 개요 저는 실제로 이 휠을 디자인하고 3D로 인쇄했습니다. 구매 비용이 조금 비쌀 수 있기 때문입니다. 그것들은 아주 잘 작동하고 나는 이 로봇 플랫폼을 운전하는 것이 매우 재미있다고 말해야 합니다. NRF24L01
이 튜토리얼에서는 Arduino hexapod를 구축하는 방법을 보여줍니다. 이름에서 알 수 있듯이 헥사포드에는 6개의 다리가 있지만 그 외에도 꼬리 또는 복부, 머리, 안테나, 하악 및 기능적인 눈도 있습니다. 이 모든 것이 헥사포드를 개미처럼 보이게 하므로 Arduino Ant Robot이라고도 부를 수 있습니다. 다음 비디오를 보거나 아래에 작성된 튜토리얼을 읽을 수 있습니다. 개요 로봇을 제어하기 위해 맞춤형 Android 애플리케이션을 만들었습니다. 앱에는 4개의 버튼이 있어 로봇에게 전진 또는 후진, 좌회전 또는 우