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

라즈베리파이와 파이썬으로 아마존 알렉사로 크롬캐스트 제어하기

라즈베리파이에서 파이썬을 실행해 아마존 에코가 구글 크롬캐스트를 제어할 수 있도록 하는 업데이트된 가이드입니다.

개요

알렉사와 크롬캐스트 연결하기

알렉사로 크롬캐스트를 제어할 수 있을까 궁금하셨나요? 이 단계별 튜토리얼은 라즈베리파이, MySQL, AWS Lambda를 사용해 이를 실현하는 방법을 설명합니다.

참고: 최신 스크립트와 프로젝트 파일은 GitHub 저장소를 참조하세요.

이 접근 방식은 LoveMyEcho의 "AlexaDev Tuesday: Innovative Alexa Skills Spotlight"에서 강조되었으며, 개발자가 복잡한 통합 과제를 해결하는 방법을 보여줍니다.

왜 라즈베리파이인가?

파이의 작은 크기, 낮은 전력 소비, 라스비안과의 호환성은 알렉사가 크롬캐스트에 도달하는 데 필요한 MySQL 데이터베이스, 파이썬 스크립트, 네트워크 구성을 호스팅하기에 이상적입니다.

작동 원리

  • 사용자가 "알렉사, 크롬캐스트 실행"이라고 말하면 스킬이 시작됩니다.
  • 알렉사가 요청된 명령(기본적으로 유튜브 검색)을 스킬로 보냅니다.
  • 스킬이 명령을 라즈베리파이의 MySQL 테이블에 기록합니다.
  • 백그라운드 파이썬 프로세스가 테이블을 읽고 요청을 크롬캐스트 명령으로 변환해 실행합니다.
  • 실행 후 데이터베이스 항목이 제거됩니다.
  • 알렉사가 사용자에게 완료를 확인합니다.

1단계: 라즈베리파이 포트 포워딩 준비

시작 전 파이가 인터넷에 연결되어 있고 IP 주소를 알고 있는지 확인하세요.

파이 IP 찾기:

  • 파이나 다른 PC에서 터미널 열기.
  • ifconfig(리눅스) 또는 ipconfig(윈도우) 실행해 기본 게이트웨이 찾기.

게이트웨이 주소로 라우터 관리 페이지에 접속해 다음 포트 포워딩 구성:

  • 3306 – MySQL (기본 포트)
  • 80 – phpMyAdmin (선택 사항)
  • 22 – SSH (선택 사항)

보안 주의: 이 포트들을 노출하면 네트워크가 위험에 노출될 수 있습니다. 강력한 비밀번호를 사용하고 신뢰할 수 있는 IP로 접근을 제한하는 것을 고려하세요.

2단계: 라즈베리파이에 MySQL 설치

파이에서 다음 명령 실행:

sudo apt-get update && sudo apt-get install mysql-server --fix-missing

sudo mysql_secure_installation으로 설치를 안전하게 하고 스킬 전용 사용자 생성.

3단계: phpMyAdmin 설치 (선택 사항)

튜토리얼을 따라 phpMyAdmin을 설정해 데이터베이스 관리를 쉽게 하세요.

제공된 build.sql을 실행해 필요한 스키마 생성.

4단계: 스크립트 구성

index.py와 raspberry.py를 열고 플레이스홀더 교체:

  • RASP_PI_DNS – MySQL 서버 호스트명 또는 IP
  • MYSQL_USER – MySQL 사용자명
  • MYSQL_PASS – MySQL 비밀번호
  • DB_NAME – 데이터베이스 이름
  • CHROMECAST_NAME – 대상 크롬캐스트 기기 이름

5단계: AWS Lambda에 스킬 배포

speechAssets와 raspberry.py를 제외한 모든 파일을 압축한 후:

  1. AWS 관리 콘솔에 로그인해 Lambda 열기.
  2. "Create function" 클릭, 블루프린트 건너뛰기, 이름 alexaChromecast, Python 3.9 런타임 선택.
  3. "Upload a .zip file" 선택 후 아카이브 업로드.
  4. 핸들러를 index.lambda_handler로, 역할을 "Basic execution"로, 타임아웃을 30초로 설정.

6단계: 아마존 개발자 콘솔에서 스킬 생성

  1. Amazon Developer Console 방문 후 Alexa Skills Kit 열기.
  2. "Add a New Skill" 클릭, 이름 "Alexa Chromecast", 호출 이름 "chromecast"로 설정.
  3. speechAssets 폴더의 intentSchema.json과 sample-utterances.txt 업로드.
  4. Lambda ARN을 "Endpoint" 필드에 붙여넣기. 계정 연결 비활성화.

7단계: 라즈베리파이 스크립트 실행

raspberry.py를 파이로 전송(USB 또는 WinSCP). 다음으로 실행:

python3 raspberry.py

8단계: (선택 사항) 부팅 시 자동 시작 설정

다음 내용을 담은 셸 스크립트 launcher.sh 생성:

#!/bin/bash
sudo python3 /path/to/raspberry.py

부팅 시 launcher.sh를 실행하는 크론 작업 추가:

@reboot /path/to/launcher.sh

알렉사 개발자 콘솔의 "Test" 탭에서 스킬 테스트. 모든 구성이 올바르면 음성 명령으로 크롬캐스트를 제어할 수 있습니다.

비디오 데모: 여기서 보기.

제조공정

  1. 라즈베리 파이와 DS18B20을 이용한 전문적인 온도 모니터링
  2. 라즈베리 파이 2와 ADS-WS1로 야외 기상 관측소 구축하기
  3. 라즈베리 파이로 서버실 정확한 온도 모니터링하기
  4. 라즈베리 파이와 OpenCV로 탁구공 추적하기 – 고급 튜토리얼
  5. LIRC로 전문가급 라즈베리 파이 범용 리모컨 만들기
  6. 라즈베리 파이에서 PIR 모션 센서로 LED 제어하기
  7. 라즈베리 파이로 RF를 DC로 변환: 엔벨로프 검출기 제작 및 트러블슈팅
  8. 사이클 체이서: 라즈베리 파이로 자전거를 야간 라이트 쇼로 변신시키기
  9. 스마트 관수용 저가 라즈베리 파이 토양 수분 센서 만들기
  10. 라즈베리 파이 기반 도난 감지기 만들기 – 단계별 가이드