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

EMAR 미니: 코로나19 대응 오픈소스 응급 지원 로봇 소형화 버전

EMAR 미니는 코로나19 팬데믹 기간 의료진을 지원하기 위해 설계된 EMAR 오픈소스 응급 로봇의 축소판입니다. 라즈베리파이 4 기반으로 인텔 리얼센스 카메라, 뉴럴 컴퓨트 하드웨어, 서보모터를 통합해 실시간 물체 감지, 깊이 감지, 원격 제어를 제공합니다.

이 가이드는 하드웨어 조립부터 안전한 소프트웨어 구성까지 EMAR 미니 설정의 모든 단계를 안내합니다.

안전 공지

전자제품 취급 시 항상 주의하세요. 이 튜토리얼로 인한 하드웨어 또는 신체 상해에 대해 책임지지 않습니다. 지침을 본인 책임 하에 사용하세요.

사전 요구사항

HIAS 서버

시작 전 완전히 작동하는 HIAS 서버가 설치되어 있는지 확인하세요. HIAS 설치 가이드를 따라 서버를 설정하세요.

3D 프린팅용 STL 파일

3D 프린팅용 STL 가이드에 제공된 STL 파일로 EMAR 미니 케이스와 섀시 출력.

라즈베리파이 OS 라이트

라즈베리파이 OS 다운로드 페이지에서 라즈베리파이 OS 라이트(Buster) 이미지 다운로드, 압축 해제 후 64GB SD 카드에 플래싱. 부팅 후 실행:

sudo apt-get update && sudo apt-get upgrade sudo raspi-config 

설정 도구로 파일시스템 확장, 키보드 설정, 네트워크 연결.

설치 개요

설치 과정 포함:

장치 보안

라즈베리파이 보안은 필수. 아래 단계로 전용 원격 사용자 생성 및 SSH 키 인증 활성화.

원격 사용자

sudo 권한 새 사용자 생성:

sudo adduser YourUsername usermod -aG sudo YourUsername 

SSH로 새 계정 로그인:

ssh [email protected] 

SSH 접근

로컬 머신에서( Pi에서 아님) SSH 키 쌍 생성:

ssh-keygen 

공개 키를 Pi에 복사:

ssh-copy-id [email protected] 

비밀번호 없는 로그인 테스트:

ssh [email protected] 

/etc/ssh/sshd_config 편집해 비밀번호 인증 비활성화:

sudo nano /etc/ssh/sshd_config # 다음 줄 변경: #PasswordAuthentication yes PasswordAuthentication no 

SSH 재시작:

sudo systemctl restart ssh 

UFW 방화벽

간편 방화벽 활성화 및 구성:

sudo ufw enable sudo ufw allow 22 sudo ufw allow OpenSSH sudo ufw status 

예상 출력:

Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere 22 ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 22 (v6) ALLOW Anywhere (v6) 

Fail2Ban

Fail2Ban 설치 및 UFW 연동 구성:

sudo apt install fail2ban sudo mv /etc/fail2ban/jail.conf /etc/fail2ban/jail.local sudo rm /etc/fail2ban/action.d/ufw.conf sudo touch /etc/fail2ban/action.d/ufw.conf sudo tee -a /etc/fail2ban/action.d/ufw.conf <<EOF [Definition] enabled = true actionstart = actionstop = actioncheck = actionban = ufw insert 1 deny from <ip> to any actionunban = ufw delete deny from <ip> to any EOF sudo sed -i "s#banaction = iptables-multiport#banaction = ufw#g" /etc/fail2ban/jail.local sudo fail2ban-client restart sudo fail2ban-client status 

출력에 다음 포함되어야 함:

Shutdown successful Server readyStatus |- Number of jail: 1 `- Jail list: sshd 

파이썬 의존성

sudo apt install python3-pip sudo pip3 install geolocation paho-mqtt psutil numpy requests zmq 

HIAS에서 EMAR 장치 생성

HIAS 서버에서 로보틱스 > EMAR > 생성 이동. 적절한 iotJumpWay 위치 선택, 이름 지정, Pi의 IP와 MAC 주소 입력. 실시간 물체 감지 & 깊이 설정은 커스텀 포트 필요 시 외엔 기본값 유지.

HIAS 서버 프록시

NGINX 프록시를 Pi로 라우팅하도록 조정. /etc/nginx/sites-available/default 편집:

sudo nano /etc/nginx/sites-available/default 

EMAR 블록 찾아 플레이스홀더 IP를 Pi 주소로 교체:

location ~* ^/Robotics/EMAR/Live/(.*)$ { auth_basic "Restricted"; auth_basic_user_file /etc/nginx/tass/htpasswd; proxy_pass https://###.###.#.##:8282/$1; } 

NGINX 리로드:

sudo systemctl reload nginx 

장치 설정 업데이트

HIAS UI 자격증명으로 Pi의 confs.json 편집, 포트와 호스트명이 구성과 일치하도록:

sudo nano confs.json { "iotJumpWay": { "host": "", "port": 8883, "ip": "localhost", "lid": 0, "zid": 0, "did": 0, "dn": "", "un": "", "pw": "" }, "EMAR": { "ip": "" }, "Realsense": { "server": {"port": 8282}, "socket": {"port": 8383} }, "MobileNetSSD": { "bin": "Model/MobileNetSSD_deploy.bin", "classes": [ "background", "aeroplane", "bicycle", "bird", "boat", "bottle", "bus", "car", "cat", "chair", "cow", "diningtable", "dog", "horse", "motorbike", "person", "pottedplant", "sheep", "sofa", "train", "tvmonitor" ], "inScaleFactor": 0.007843, "meanVal": 127.53, "size": 300, "threshold": 0.6, "xml": "Model/MobileNetSSD_deploy.xml" } } 

인텔® 리얼센스™ D415

Pi에 리얼센스 SDK 설치. 설치 중 카메라는 분리 상태 유지.

wget https://github.com/IntelRealSense/librealsense/raw/master/scripts/libuvc_installation.sh chmod +x libuvc_installation.sh sed -i "s/cmake ../ -DFORCE_LIBUVC=true -DCMAKE_BUILD_TYPE=release/cmake ../ -DFORCE_LIBUVC=true -DCMAKE_BUILD_TYPE=release DBUILD_PYTHON_BINDINGS=bool:true/" libuvc_installation.sh ./libuvc_installation.sh 

라이브러리 경로를 ~/.bashrc에 추가:

echo 'export PYTHONPATH=$PYTHONPATH:/usr/local/lib' >> ~/.bashrc source ~/.bashrc 

장치 확인:

rs-enumerate-devices python3 -c "import pyrealsense; print('PyRealsense loaded')" 

인텔® OpenVINO™ 툴킷 배포판

Pi에 OpenVINO 설치 단계:

sudo apt-get install build-essential cmake unzip pkg-config sudo apt-get install libjpeg-dev libpng-dev libtiff-dev sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev sudo apt-get install libxvidcore-dev libx264-dev sudo apt-get install libgtk-3-dev sudo apt-get install libcanberra-gtk* sudo apt-get install libatlas-base-dev gfortran sudo apt-get install python3-dev cd wget https://download.01.org/opencv/2020/openvinotoolkit/2020.1/l_openvino_toolkit_runtime_raspbian_p_2020.1.023.tgz tar -xf l_openvino_toolkit_runtime_raspbian_p_2020.1.023.tgz mv l_openvino_toolkit_runtime_raspbian_p_2020.1.023 openvino echo 'source ~/openvino/bin/setupvars.sh' >> ~/.bashrc source ~/.bashrc 

인텔® 뉴럴 컴퓨트 스틱 2

NCS2 의존성 설치:

sudo usermod -a -G users "$(whoami)" cd sh openvino/install_dependencies/install_NCS_udev_rules.sh 

넥 연결

Body-Middle.stl 상단을 통해 마지막 서보 장착 후 고정. 서보 암을 넥 베이스에 나사로 고정하고 서보 연결. 필요시 소량 접착제로 안정성 유지.

출처: EMAR 미니 – 응급 지원 로봇

제조공정

  1. 라즈베리 파이와 아두이노로 로봇 만들기: 단계별 통합 가이드
  2. 브리지 실드(Bridge Shield)로 스마트 로봇 만들기 - 라즈베리 파이 & 아두이노 통합
  3. DIY 월-E 영감 라즈베리 파이 CD-박스 로봇
  4. ANDY - 다목적 휴머노이드 로봇
  5. 구르는 알람 로봇: 라즈베리 파이와 구글 캘린더 연동 스마트 모바일 기상 시스템
  6. 아두이노로 만드는 모터 구동 마인크래프트 크리퍼 로봇
  7. JQR 4족 보행 자율 로봇: 자율 내비게이션·구조용 DIY 다리 로봇
  8. 아르키메데스: 감정 감지 AI 로봇 올빼미
  9. 녹스(Nox): ROS 기반 DIY SLAM 자율 주행 하우스 로봇
  10. 파이썬으로 와이파이 제어 라즈베리파이 로봇 만들기 – 단계별 가이드