산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

Leap Motion 레이저 탱크!

구성품 및 소모품

적외선 LED
× 1
적외선 수신기
× 1
Arduino UNO
× 1
라즈베리 파이 2 모델 B
× 1
RF24 모듈
× 1
LED-RGB-공통 음극
× 1
L293D 집적 회로 모터 드라이버
× 1
브레드보드(일반)
× 1
점퍼 와이어(일반)
× 1
배터리 홀더
× 1
AA 배터리
충전식 NiMH 배터리
× 1
레고 브릭
× 1
볼 캐스터 금속 - 3/8"
× 1
Leap 모션 컨트롤러
× 1

이 프로젝트 정보

이 프로젝트의 목표는 로봇 탱크 세트를 만들어 운전자가 Leap Motion 컨트롤러를 사용하여 차량을 제어하는 ​​데 보다 사실적인 느낌을 주는 전투를 수행하는 것이었습니다. 사람들이 최대한 쉽게 프로젝트를 복제할 수 있도록 로봇 탱크를 저렴하게 만들고 싶었습니다.

탱크 본체는 일반 레고 브릭과 플레이트로 만들어졌습니다. 전원은 4개의 AA 충전식 배터리로 구성된 간단한 블록입니다. 탱크 컨트롤러는 Arduino Uno R3입니다. "추진"은 단일 L293D 집적 회로를 사용하여 전면에 단일 캐스터가 있고 후면에 바퀴가 있는 두 개의 간단한 DC 모터입니다. "무기"는 단일 IR LED 조명이고 "방어구"는 상대 탱크 IR LED의 명중을 감지하는 IR 센서 세트입니다. "헤드업 디스플레이"는 갑옷 상태를 포함하여 탱크에서 발생하는 모든 작업을 알려주는 단일 멀티 컬러 LED입니다. 마지막으로 탱크의 "제어"는 각 탱크에도 장착된 RF24 무선 모듈을 통해 연결된 NodeJS를 실행하는 Raspberry Pi 2를 통해 무선으로 처리됩니다.

작업자의 손을 사용하여 Leap Motion은 Leap Motion Javascript SDK를 사용하여 탱크를 제어합니다. SDK를 사용하여 손 동작을 감지하면 javascript는 Raspberry PI 2의 NodeJS 서버와 통신하고 RF24 모듈을 통해 탱크와 통신합니다. 양손을 앞으로 움직이면 탱크가 앞으로 이동합니다. 양손을 뒤로 젖히면 탱크가 뒤로 이동합니다. 왼손은 앞으로, 오른손은 뒤로, 탱크는 우회전합니다. 오른손은 앞으로, 왼손은 뒤로, 탱크는 왼쪽으로 회전합니다. "중립" 위치에 있는 양손은 탱크를 멈춥니다. 한 손은 앞으로(왼쪽 또는 오른쪽), 다른 손은 떨어뜨리면 탱크의 무기가 "발사"됩니다.

다음은 탱크 무기, 방어구 및 헤드업 디스플레이에 대한 간단한 데모입니다.



전방위 고급 갑옷과 판지 상자를 대피소로 사용하는 Laser Tanks는 사냥과 회피의 게임이 됩니다.



프로젝트 설정 단계:

1) 탱크를 조립하고 아래 회로도를 사용하여 배선합니다. 필요한 Arduinolibraries(github 저장소의 README 참조)를 다운로드하고, 한 탱크에 tank1에 대한 thearduino 스케치를 컴파일 및 업로드하고, 다른 탱크에 tank2에 업로드합니다.

2) RF24 트랜시버를 Raspberry Pi에 연결합니다. Pi에 Raspbian OS 및 노드 JS를 설치합니다.

3) Pi에서 RF24 라이브러리를 다운로드, 구성 및 빌드(github 저장소의 README 참조)합니다.

4) github 사이트에서 NodeJS 서버 소프트웨어를 다운로드하고 앱 서버/웹 서버를 구성 및 시작합니다(githubrepository의 README 참조).

5) 컴퓨터에 Leap Motion 및 드라이버를 설치합니다. 브라우저를 열고 Raspberry Pi Rest/Web 서버에 대한 URL을 로드하여 웹 페이지를 로드(github 리포지토리의 README 참조)하여 탱크 1 또는 탱크 2를 제어합니다.

6) 캘리브레이션 버튼을 클릭하고 도약 동작 위에 손을 올려 두 손을 감지하고 중립 위치를 알 수 있도록 합니다. 보정이 완료되면 탱크를 손으로 제어할 수 있습니다.

탱크 섀시에 대한 간략한 참고 사항:

탱크의 본체는 탱크의 부품(모터, 브레드보드 등)에 "고릴라 접착"된 단순한 레고로 조립되어 탱크를 함께 고정하는 데 도움이 됩니다. 다음은 이 작업을 수행한 방법을 보여주는 슬라이드 쇼입니다.

적외선 LED에 대한 간략한 참고 사항:

적외선 리모컨은 소파나 바닥, 의자에 앉고 싶을 때 매우 기능적이며 어디서나 TV의 채널을 변경할 수 있습니다. 적외선 LED는 광선이 가능한 한 많은 방향으로 이동하여 적용 범위를 개선하도록 제작되었습니다. 그러나 원격 센서를 공격하기 어렵게 하기 위해 LED의 빔을 더 작게 제어하려는 경우(탱크 전투 게임과 같이) 조금 더 어렵습니다. 나의 독서에서 나는 튜브 끝에 있는 매우 간단한 돋보기 렌즈를 사용하여 적외선 빔에 초점을 맞출 수 있다는 것을 알게 되었습니다. 다음은 내가 말하는 내용을 보여주는 다이어그램입니다.

나는 결국 약국에서 매우 저렴한 포켓 돋보기를 구입하여 렌즈를 꺼내어 주위에 튜브를 만들고 튜브의 다른 쪽 끝에 적외선 LED를 설치했는데 이것은 빔의 빔을 좁히는 데 완벽하게 작동했습니다. IR LED가 더 정확합니다.


적외선 센서의 360도에 대한 간략한 설명

적외선 센서는 적외선 LED가 바로 앞에 있거나 초점이 약 90도일 때 적외선 LED의 신호를 감지할 수 있습니다. 적외선 LED가 센서 뒤에 있으면 전송된 신호를 감지할 수 없습니다.

완전한 360도 감지 각도를 달성하려면 4개의 서로 다른 센서에서 4개의 서로 다른 핀에서 신호를 감지하도록 적외선 라이브러리를 수정하거나 4개의 센서를 데이지 체인으로 연결하여 단일 핀. 간단한 AND 집적 회로를 사용하여 4개의 센서를 단일 입력 핀에 연결하는 방법을 보여주는 온라인 기사를 찾았습니다. 적외선 센서 중 하나가 적외선 신호를 감지하면 해당 핀에 보고했습니다. 이를 통해 적외선 라이브러리를 수정하거나 최대 4개의 입력 핀을 사용할 필요 없이 360도 감지가 가능합니다.


<섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">

코드

레이저 탱크 Github
Leap Motion Laser Tanks 프로젝트의 모든 사용자 정의 코드 파일https://github.com/corky/LaserTanks

회로도

적외선 LED를 사용하여 탱크는 다른 탱크가 히트로 식별하는 "코드"를 발사합니다. 탱크는 단일 적외선 센서를 사용하여 적외선 신호가 반대 탱크에서 오는 시점을 감지하고 이를 다음과 같이 등록할 수 있습니다. 히트 간단한 AND 게이트 집적 회로(74HCT21)와 함께 데이지 체인으로 연결된 4개의 적외선 센서를 사용하여 탱크는 다음을 수행할 수 있습니다. 주변 360도에서 적중하는 상대 Tank의 LED에서 적외선 신호를 식별합니다. 탱크는 RGB LED를 사용하여 색상을 변경하여 현재 상태(얼마나 맞았는지)를 식별합니다. LED의. 또한 탱크는 발사할 때마다 LED의 색상을 녹색으로 변경합니다. L293D 집적 회로와 몇 가지 간단한 DC 모터를 사용하여 탱크는 전진, 후진 및 선회할 수 있습니다. 왼쪽 아니면 오른쪽. 간단하고 저렴한 RF24 트랜시버를 사용하여 탱크는 통신수로부터 명령을 받고 통신할 수 있습니다. 운영자는 간단하고 저렴한 RF24 트랜시버인 Raspberry Pi2와 Node JS를 사용하여 다음과 통신할 수 있습니다. REST API 호출을 통해 각 탱크.

제조공정

  1. 알루미늄 레이저 마킹 가이드
  2. 레이저 마킹 가이드
  3. 파이버 레이저 마킹이란 무엇입니까?
  4. 레이저 포인터
  5. 반도체 레이저
  6. 고체 레이저
  7. 라즈베리 파이용 DIY 적외선 모션 센서 시스템
  8. Raspberry Pi를 사용한 모션 센서
  9. MOSMusic
  10. 레이저 마킹 머신의 3가지 핵심 구성요소