제조공정
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
|
| ||||
| ||||
|
여기에서 속도 제어를 위해 Amazon Alexa를 통합하여 일반 천장 선풍기를 스마트한 것으로 만든 방법에 대해 자세히 설명하겠습니다. 우리는 속도 변경을 시작하기 위해 amazon alexa 기술 세트를 사용할 것이며 ngrok 일 것입니다. 요청을 로컬에 있는 RPi 서버로 라우팅하는 터널링 서비스는 Arduino uno에 관련 릴레이를 켜라고 지시합니다.
로컬 Raspberry Pi 서버 설정
서버를 사용하려면 다음 서비스가 필요합니다.
<울>sudo apt-get install python-pip
<울> pip 설치 플라스크
<울> pip install flask-ask
<울> sudo apt-get install pyserial
<울> sudo apt-get intall libpython2.7-dev
필요한 모든 모듈이 설치되면 서버가 실행되도록 설정됩니다. 동일한 항목에 대해 python 스크립트를 입력해야 합니다.
플라스크에서 가져오기 Flaskfrom flask_ask 가져오기 Ask, statementimport requestsimport jsonimport 직렬 ser =serial.Serial("/dev/ttyAMA0",9600)app =Flask(__name__)ask =Ask(app, '/')@ [email protected]("FanOn")def on():ser.write(b'1') return statement("천장 선풍기가 켜졌습니다.")@ask.intent("FanOff")def off() :ser.write(b'0') return statement("천장 선풍기가 꺼졌습니다.")@ask.intent("FanLevelUp")def up():ser.write(b'+') return statement("천장 선풍기 속도를 높입니다.")@ask.intent("FanLevelDown")def down():ser.write(b'-') return statement("천장 팬 속도를 줄입니다.")if __name__ =="__main__":app.run (디버그=참)
이 python 스크립트를 실행하고 이 스크립트를 RPi의 자동 시작 목록에 등록하십시오.
3. Ngrok 다운로드
Ngrok은 장치를 온라인으로 만드는 보안 터널링 플랫폼입니다. 이 플랫폼을 사용하면 매우 간단한 방법으로 웹 응용 프로그램이나 모든 응용 프로그램을 온라인 상태로 만들 수 있습니다. 다운로드는 공식 사이트로 이동하여 ARM용으로 다운로드하십시오.
https://ngrok.com/
압축을 풀고 압축을 푼 디렉토리로 이동합니다. 명령을 사용하여 실행
./ngrok http 5000
알렉사 스킬
Amazon 개발자 페이지로 이동하여 개발자 계정에 가입
https://developer.amazon.com/
로그인 후 개발자 콘솔에 들어가 "Alexa 기술 키트" 선택
이제 "새 기술 추가"를 선택하십시오.
스킬 이름을 입력하고 호출 이름을 입력합니다. 호출 이름이 필요한 조건을 충족하는지 확인하십시오.
저장하고 다음 단계로 진행
여기에 스킬 호출의 의도와 발화 예(예:각 의도를 시작할 단어 조합)를 입력합니다.
의도는 다음과 같습니다
{ "intents":[ { "intent":"FanOn" }, { "intent":"FanOff" }, { "intent":"FanLevelUp" }, { "intent":"FanLevelDown" }] }
샘플 발언
FanOn은 팬 켜기라고 말함FanOn은 켜기로 말함FanOff라고 말함FanOff는 팬 끄기라고 말함FanLevelUp 팬 수준 올리기FanLevelUp 팬 속도 올리기FanLevelDown 팬 속도 낮추기FanLevelDown 팬 속도 낮추기 말
저장하고 다음 단계로 진행합니다. 여기에 의도가 호출되면 데이터를 보낼 위치를 입력해야 합니다.
ngrok를 사용하고 있기 때문에 , HTTPS를 선택합니다. ngrok serve에서 생성된 보안 링크를 입력하고 저장하고 다음 단계로 진행하세요.
SSL 인증서에 대한 두 번째 옵션을 선택하고 계속
설정이 작동하는지 여부를 확인하려면 . ngrok 서버가 작동 중이고 Python 스크립트도 실행 중인지 확인하십시오. 그렇지 않으면 작동하지 않습니다.
서버가 요청을 받고 업데이트하는 것을 볼 수 있습니다.
아두이노 코드
첨부된 스케치를 arduino에 업로드하고 회로도에 설명된 대로 라즈베리 파이에 연결합니다.
int Fan[] ={13,12,11,10,9,8}; int n=0;void reset();void set(char);void setup() { // 여기에 설정 코드를 넣어 한 번 실행:for(int i=0;i<6;i++){ pinMode(Fan [i], 출력); } Serial.begin(9600); } 무효 루프() { char x;if (Serial.available()){ x=Serial.read(); 초기화(); set(x);}} 무효 리셋(){ for(int i=0;i<6;i++) { digitalWrite(Fan[i], LOW); }}void set(char x){ switch (x) { case '1':n=1; 부서지다; 대소문자 '+':n++; 부서지다; 경우 '-':n--; 부서지다; 경우 '0':n=0; 부서지다; } 디지털 쓰기(팬[n],높음);}
하드웨어
회로도에 표시된 대로 하드웨어를 연결하십시오.
행복한 만들기. 비슷한 방식으로 다른 기기 음성을 활성화합니다. :)
섹션> <섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">int Fan[] ={13,12,11,10,9,8}에 연결하십시오. int n=0;void reset();void set(char);void setup() { // 여기에 설정 코드를 넣어 한 번 실행:for(int i=0;i<6;i++){ pinMode(Fan [i], 출력); } Serial.begin(9600); } 무효 루프() { char x;if (Serial.available()){ x=Serial.read(); 초기화(); set(x);}} 무효 리셋(){ for(int i=0;i<6;i++) { digitalWrite(팬[i], LOW); }}void set(char x){ switch (x) { case '1':n=1; 부서지다; 대소문자 '+':n++; 부서지다; 경우 '-':n--; 부서지다; 경우 '0':n=0; 부서지다; } 디지털 쓰기(팬[n],높음);}
제조공정
기계는 육체 노동의 작업 부하를 줄이기 위해 제작되었지만 결국에는 통제됩니다. 사용자에 의해. 이러한 기계를 사용자가 제어할 수 있도록 하는 플랫폼을 HMI 또는 Human Machine Interface라고 합니다. . HMI는 단순한 인터페이스이며 MP3 플레이어 및 가전 제품과 같은 장치에서 제조 산업의 제어 시스템을 처리하는 데 사용할 수 있는 매우 광범위한 용어입니다. HMI는 시스템의 시각적 표현을 제공하고 사용자에게 실시간 모니터링 및 제어 기능을 제공하여 사용자 친화적인 방식으로 생산성을 높입니다. HMI 제품 더
이 튜토리얼에서는 Arduino와 릴레이 모듈을 사용하여 고전압 장치를 제어하는 방법을 배웁니다. 다음 비디오를 보거나 아래에 작성된 튜토리얼을 읽을 수 있습니다. 개요 릴레이를 사용하여 고전압 전자 장치를 제어할 수 있습니다. 릴레이는 실제로 전자석에 의해 전기적으로 작동되는 스위치입니다. 전자석은 예를 들어 마이크로컨트롤러의 5볼트와 같은 저전압으로 활성화되고 접점을 당겨 고전압 회로를 만들거나 끊습니다. HL-52S 릴레이 모듈 이 Arduino 릴레이 튜토리얼의 예로서 10A @ 250 및 125 V AC 및 1