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

KINECT 및 RASPBERRY PI를 사용한 SONBI 로봇 인간 탐지

아. 목표

Sonbi 내부에 라즈베리 파이의 소프트웨어 시스템을 구축하고
Microsoft Kinect를 Raspberry pi에 통합하여 사람이 Kinect 앞에 섰을 때
손비 로봇과 상호작용하도록
, 손비 로봇이 사람들에게 팔을 흔듭니다.


나. 하드웨어 시스템


Sonbi의 체스트 섀시 내부에는 다음과 같은 기본 하드웨어 항목이 장착되어 있습니다.
• Raspberry Pi w/8GB Flash
• Pololu Maestro 24
• Microsoft Kinect
• ATX 500와트 PS
• 기타 부품(프로토 보드, 와이어, 기계)


라즈베리 파이:

• 700MHz ARM1176JZF-S 코어 프로세서
• 512MB SDRAM
• microUSB(5V)를 통해 전원 공급
• 이더넷, HDMI 및 주변 장치용 USB 포트 2개
• Raspbian OS
• 널리 사용되는 많은 문서!

폴로루 마에스트로 24


• 24개 채널
• 최대 333Hz의 펄스율
• 최대 8KB의 스크립트 크기
• 채널당 최대 1.5암페어
• 2개의 전원 옵션 USB/전원 헤더
• 스크립팅 또는 기본 API 지원

라즈베리 파이 및 Pololu 인터페이스


• 간단한 배선
– 전원, Gnd, Tx-Rx 및 Rx-Tx
• TTL 직렬 포트
– 기본적으로 Pi는 콘솔 입력/출력에 직렬 포트를 사용합니다.
– /etc/inittab 및 /boot/cmdline.txt를 편집하여 기본값을 변경하고
사용할 직렬 포트를 무료로 제공
• 훌륭한 자습서:
http://shahmirj.com/blog /raspberry-pi-and-pololu-servocontroller-using-c
Microsoft Kinect:
• 1280×960
해상도로 3개의 채널 데이터를 저장하는 RGB 카메라. 이를 통해 컬러 이미지를 캡처할 수 있습니다.
• 적외선(IR) 이미터 및 IR 깊이 센서. 이미터는
적외선을 방출하고 깊이 센서는 센서로 반사된 IR
빔을 읽습니다. 반사된 빔은
물체와 센서 사이의 거리를 측정하는
깊이 정보로 변환됩니다. 이렇게 하면
깊이 이미지를 캡처할 수 있습니다.
• 사운드 캡처를 위한
4개의 마이크가 포함된 다중 어레이 마이크. 4개의 마이크가 있기 때문에
오디오 녹음은 물론
음원의 위치와 오디오 파동의 방향을 찾을 수 있습니다.
• 다음을 위해 구성된 3축 가속도계 2G 범위, 여기서 G는 중력 가속도입니다.
가속도계를 사용하여
Kinect

의 현재 방향을 결정할 수 있습니다.

수직 틸트 각도:27도
• 프레임 속도:30fps

C. 라즈베리 파이와 키넥트 통합


다음은 Kinect를
Raspberry Pi와 통합하기 위해 취한 단계입니다.


라즈베리 파이에서 Microsoft Kinect 및 해당 센서 드라이버 연결:


이 프로세스는 프로젝트의 지루한 부분 중 하나입니다. Kinect가 Windows에서 작동하고 Unix 기반 운영 체제에서 작동하도록 하려면 관련된 모든 라이브러리와 드라이버를 수동으로 설치해야 하기 때문입니다. 어렵고 문제를 해결하는 데 많은 인력이 소요됩니다. 취한 단계와 설치된 패키지 목록 및 라이브러리는 소프트웨어 시스템 구축 섹션에 나와 있습니다.

Kinect의 모든 기능 사용:


깊이 센서, IR 센서, 마이크 및 모터와 같은 Kinect의 모든 기능을 사용하여 카메라를 기울이려면 이를 수행할 수 있는 라이브러리가 필요합니다. 기본적으로 RPI에는 OpenCV 및 Open GL/GLES가 탑재되어 있지만 아직 깊이 센서와 모터를 지원하지 않으므로(곧 지원할 예정이므로) OpenNI 또는 Libfreenect 패키지를 설치해야 합니다. 둘 중 하나면 충분하지만 둘 다 설치하기로 결정했습니다. 테스트하고 이해하기 위해 OpenNI 및 Libfreenect 폴더에서 사용할 수 있는 샘플 프로그램을 실행할 수 있습니다. 나는 이미 바이너리를 준수하고 구축했습니다. "bin" 폴더로 이동하여
./"샘플 프로그램"으로 샘플을 실행하기만 하면 실행할 수 있습니다.


D. 소프트웨어 시스템 구축

Libfreenect:
Libfreenect는 Microsoft Kinect용 사용자 공간 드라이버입니다. 실행
Linux 지원
• RGB 및 깊이 이미지
• 모터
• 가속도계
• LED
오디오는 현재 작업 중입니다.
libfreenect를 빌드하려면 다음이 필요합니다.
• libusb>=1.0.13
• CMake>=2.6
• python ==2.*(BUILD_AUDIO 또는 BUILD_PYTHON인 경우에만)
예를 들어, 다음이 필요합니다.
• OpenGL(OSX에 포함)
• glut(OSX에 포함)
• pthreads-win32(Windows)
git clone https:/ /github.com/OpenKinect/libfreenect cd libfreenect mkdir build cd
build cmake -L .. make # make가 없는 경우 또는 색상 출력을 원하지 않습니다. #
cmake –build

sudo apt-get install git-core cmake pkg-config build-essential libusb-1.0-0-dev
sudo adduser $USER video sudo adduser $USER plugdev # 필요한가요? # 예제를 빌드하는 경우에만
sudo apt-get install libglut3-dev libxmu-dev libxi-dev

래퍼:


다양한 언어에 대한 인터페이스가 wrappers/에서 제공됩니다. 래퍼
안정적인 API 또는 최신 버전이 보장되지 않습니다.
• C(동기 API 사용)
• C++
• C#
• python
• 루비
• 액션스크립트
• 자바(JNA)


OpenNI:


요구사항:
1) GCC 4.x
From:http://gcc.gnu.org/releases.html
또는 apt를 통해:sudo apt-get install g++
2) Python 2.6+/3.x
From:http://www.python.org/download/
또는 apt를 통해:sudo apt-get install python
3) LibUSB 1.0.x
발신:http://sourceforge.net/projects/libusb/files/libusb-1.0/
또는 apt를 통해:sudo apt-get install libusb-1.0-0-dev
4) FreeGLUT3
발신:http://freeglut.sourceforge.net/index.php#download
또는 apt를 통해:sudo apt-get install freeglut3-dev
5) JDK 6.0
보낸 사람:
http://www.oracle.com/technetwork/java/javase/downloads/jdk6u32-downloads-1594644.html
또는 apt를 통해:sudo add-apt-repository “ 데브

선택적 요구 사항(문서 작성을 위해):
1) Doxygen
From:
http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc
또는 apt를 통해:sudo apt-get install doxygen
2) GraphViz
From:http://www.graphviz.org/Download_linux_ubuntu.php
또는 apt를 통해:sudo apt-get install graphviz


OpenNI 구축:


1) "Platform/Linux/CreateRedist" 디렉토리로 이동합니다.
스크립트를 실행합니다:"./RedistMaker".
모든 것이 컴파일되고
“플랫폼/리눅스/레디스트” 디렉토리. 또한
"Platform/Linux/CreateRedist/Final" 디렉토리에 배포판을 생성합니다.
2) "Platform/Linux/Redist" 디렉토리로 이동합니다.
스크립트를 실행합니다. "sudo ./install.sh"(루트로 실행해야 함)
설치 스크립트는 키 파일을 다음 위치에 복사합니다.
Libs:/usr/lib
Bins:/usr /bin
다음에 포함:/usr/include/ni
구성 파일:/var/lib/ni
Mono 래퍼를 빌드하려면 "make
도 실행 mono_wrapper" 및 "mono_samples 만들기"


E. 사람 감지 및 SONBI의 조치:


Raspberry PI는 bootscript_sonbi.sh 프로그램을 실행합니다.
"bootscript_sonbi.sh"는 "python facedetect.py
–cascade=face.xml 0" 명령을 실행합니다.
다음이 필요합니다. 이 훈련된 얼굴 파일을 다운로드하려면:
http://stevenhickson-code.googlecode.com/svn/trunk/AUI/Imaging/face.xml
facedetect.py는 얼굴 감지 알고리즘을 실행하고
"Sonbi" 실행 파일. Sonbi 바이너리는
서보 모터를 작동시키는 역할을 합니다. 그 과정의 흐름도는 아래와 같습니다.

출처:KINECT 및 RASPBERRY PI를 사용한 SONBI ROBOT 인체 감지


제조공정

  1. NodeMCU와 Raspberry Pi 3 B+ 간의 MQTT 통신
  2. LabVIEW를 사용한 Raspberry Pi 온도 프로파일
  3. 라즈베리를 사용하여 24V 온도 조절 장치 이벤트(옵토커플러 + 라즈베리 파이)를 기록하고 그래프로 표시
  4. Python 및 Raspberry Pi 온도 센서
  5. Raspberry Pi를 사용한 원격 날씨 모니터링
  6. Node-RED를 사용하여 Blynk하는 SensorTag
  7. Raspberry Pi를 사용한 모션 센서
  8. Raspberry Pi 온도 및 광 센서
  9. Raspberry Pi 및 Twilio를 사용한 음성 및 SMS 지원 광 센서
  10. Raspberry Pi 센서 및 액추에이터 제어