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

음성 제어 로봇

구성품 및 소모품

Arduino Nano R3
× 1
L298n 모터 드라이버
× 1
HC-05 블루투스 모듈
× 1

필요한 도구 및 기계

뜨거운 글루건(일반)

앱 및 온라인 서비스

Arduino IDE

이 프로젝트 정보

로봇은 멋지다. 당신의 음성 명령을 듣고 돌아다닐 수 있는 로봇이 있다는 것은 더 멋진 일입니다. Arduino로 이러한 음성 또는 음성 제어 로봇을 만드는 것은 점점 더 멋집니다. Arduino는 저렴하고 쉽게 조정할 수 있기 때문입니다.

만들기를 시작해 보겠습니다. 동영상 튜토리얼도 시청할 수 있습니다.

1단계:필요한 부품

로봇은 PCB를 기반으로 합니다. 다른 로봇에 사용하도록 설계한 PCB입니다. 내가 사용한 다른 구성 요소를 보자 -

전자제품:

<울>
  • Arduino 나노 - 1x
  • <울>
  • L298n 모터 드라이버 모듈 - 1개
  • <울>
  • Hc05 블루투스 모듈 - 1개
  • <울>
  • DC 모터 및 호환 휠 - 2개
  • <울>
  • 다기능 로봇 PCB - 1x(링크)
  • <울>
  • 일부 남성 및 여성 헤더
  • 몸을 만들기 위해:

    <울>
  • PVC 시트
  • <울>
  • 뜨거운 글루건
  • 소프트웨어:

    <울>
  • Arduino.ide
  • <울>
  • 내가 만든 앱
  • 이제 시작하겠습니다.

    2단계:원칙:어떻게 작동합니까?

    실제로 일을 망치기 시작하기 전에 무엇을 할 것인지 명확하게 이해하는 것이 항상 좋습니다. 당신은 엉망이 아닐 수도 있지만 나는합니다.

    따라서 Arduino는 미니 컴퓨터 또는 마이크로 컨트롤러입니다. 음성 인식을 수행할 수 있는 능력이나 능력이 충분하지 않습니다(현재로서는). 그러나 운이 좋게도 내 PCB 보드에는 Bluetooth 모듈을 연결할 수 있는 포트가 있습니다. 즉, Arduino를 다른 장치에 무선으로 연결할 수 있습니다. 그리고 저는 그 점을 이용하고 있습니다. 그래서 구글 API(인터넷 필요)를 사용하여 "Speech to Text" 작업을 수행할 수 있는 Android 앱을 만들어야 하고 텍스트를 수신한 후 Bluetooth를 통해 Arduino에 명령합니다.

    따라서 '앞으로'라고 말하면 로봇은 'F'를 받고 앞으로 이동합니다. 그게 바로 개념입니다. 이제 만들어 봅시다.

    3단계:몸 만들기

    이 로봇의 섀시/몸체는 13cm/13.5cm PVC 시트로 만들었습니다. 칼날/칼을 사용하여 자르기가 더 쉽고 접착제와도 잘 어울립니다.

    비디오에서 볼 수 있듯이 보드 영역 내부에 두 개의 모터와 휠을 장착하기 위해 조각을 잘라냅니다. 그리고 그것들을 붙였습니다.

    당신이 당신의 것을 만들 때, 당신은 그것을 정확히 다음과 같이 만들 필요가 없습니다. 당신의 봇은 당신의 선택입니다.

    4단계:회로를 구축하거나 PCB를 사용하시겠습니까?

    여기에서 우리는 그것이 전적으로 당신의 선택임을 지적합니다. 그러나 이와 같은 회로를 만들려면 많은 배선이 필요하며 브레드 보드를 사용하여 만들면 하나의 잘못된 연결이 전체 프로젝트를 방해할 수 있습니다. 이것이 제가 프로젝트에서 PCB를 사용하는 것을 좋아하는 이유입니다.

    EasyEDA를 사용하여 이 PCB를 설계하고 PCBWay.com에서 주문했습니다. PCBWay는 더 저렴한 가격으로 품질을 제공합니다. 단 5$로 10개의 다층 PCB를 얻을 수 있습니다. 그들은 또한 나에게 기분 좋은 학생 프로젝트를 후원합니다.

    어쨌든 빠른 주문 섹션으로 이동하여 PCB를 업로드하기만 하면 시스템이 자동으로 보드의 모든 매개변수를 감지하고 색상만 선택했습니다. 블랙은 제가 가장 좋아하는 색상이며 얼마나 빛나고 시원한지 보세요. 엔지니어링 팀이 PCB를 검사할 때까지 돈을 받지 않아도 되므로 더 좋습니다.

    여기에서 PCB 보드를 가져옵니다.

    그러나 이 PCB를 주문하거나 사용할 수 없다면 브레드보드나 베로보드에서 하셔도 됩니다. 나는 당신을 위해 fritzing 회로를 업로드했습니다. 아래에서 다운로드하거나 여기에서 받으세요.

    음성 제어 로봇 도식.fzz

    5단계:전자 제품 연결

    연결은 간단합니다. 회로도에 표시된 대로 모든 것을 연결하십시오. 모터를 모터 드라이버에 연결하는 것부터 시작하겠습니다. -

    모터 대 모터 드라이버,

    <울>
  • Motor1 와이어는 드라이버의 한쪽 끝으로 연결됩니다.
  • <울>
  • Motor2가 반대쪽 끝으로 이동합니다.
  • 모터를 제어하려면

    <울>
  • L298n 모터 드라이버의 Motor1 핀은 Arduino 2 및 3 핀(디지털)에 연결됩니다.
  • <울>
  • Motor2는 4와 5에 연결됩니다.
  • 블루투스 모듈,

    <울>
  • Tx에서 Arduino Rx로
  • <울>
  • RX에서 TX로
  • <울>
  • VCC에서 5V/VCC로
  • <울>
  • Gnd에서 GND로(접지)
  • 배터리,

    나는 모터 드라이버 입력과 Arduino VIN 및 접지 핀에 연결하는 모터에 7.4V 배터리를 사용했습니다. 공통 접지 연결이 필요합니다.

    그런 다음 모든 것에 불이 켜진 배터리를 연결했습니다. 즉, 나는 실수하지 않았습니다.

    6단계:Arduino 프로그래밍

    간단한 프로그램입니다. 프로그램은 문자를 확인하고 문자가 수신되면 왼쪽 오른쪽 등으로 이동합니다. 목록은 -

    입니다. <울>
  • 'F' - 앞으로
  • <울>
  • 'B' - 뒤로
  • <울>
  • 'L' - 왼쪽
  • <울>
  • 'R' - 오른쪽
  • 블루투스 모듈은 시리얼 포트에 연결되어 있어서 아두이노는 9600bps로 시리얼 통신을 합니다.

    나는 핀과 부화율을 정의한 섹션을 설정했다 -

    void setup(){//pinMode(lm1,OUTPUT);pinMode(lm2,OUTPUT);pinMode(rm1,OUTPUT);pinMode(rm2,OUTPUT);//핀 모드 초기화 직렬 통신 rateSerial.begin(9600);} 

    in mainloop에서 직렬로 수신된 데이터를 확인했습니다-

    //arduino가 신호를 수신하는지 여부를 확인합니다.while(Serial.available() ==0);val =Serial.read(); // signalSerial.print(val);를 읽습니다. 

    그런 다음 여기에서 메인 코드를 다운로드하십시오. 아래에 전체 코드를 붙여넣었습니다 -

    /**** Arduino Speech/voice Controlled robot **** by Ashraf Minhaj* [email protected]* tutorial-ashrafminhajfb.blogspot.com*///Declare the arduino pinint lm1 =4; //첫 번째 모터 핀 선언int lm2 =5;int rm1 =2; //오른쪽 모터 pinint rm2 =3;char val;void setup(){//pinMode(lm1,OUTPUT);pinMode(lm2,OUTPUT);pinMode(rm1,OUTPUT);pinMode(rm2,OUTPUT) 모드 초기화 );//직렬 통신 rateSerial.begin(9600);}void loop(){//arduino가 신호를 수신하는지 여부를 확인합니다.while(Serial.available() ==0);val =Serial.read(); //신호를 읽습니다//Serial.print(val);/********ForForward motion*********/if (val =='F'){//Serial .println("FORWARD");digitalWrite(lm1,HIGH);digitalWrite(rm1,HIGH);digitalWrite(lm2,LOW);digitalWrite(rm2,LOW);}/************뒤로 모션용 *********/else if(val =='B'){digitalWrite(lm2,HIGH);digitalWrite(rm2,HIGH);digitalWrite(lm1,LOW);digitalWrite(rm1,LOW);} /************오른쪽*********/else if(val =='R'){digitalWrite(lm1,HIGH);digitalWrite(rm2,HIGH);digitalWrite(lm2, LOW);digitalWrite(rm1,LOW);}/*********Left*********/else if(val =='L'){digitalWrite(lm2,HIGH); digitalWrite(rm1,HIGH);digitalWrite(lm1,LOW);digitalWrite(rm2,LOW);}/************STOP*********/else{digitalWrite(lm1,LOW) );digitalWrite(rm1,LOW);digitalWrite(lm2,LOW);digitalWrite(rm2,LOW);}지연(10);} 

    코드를 업로드하고 앱을 만드세요.

    7단계:SPEECH to TEXT용 앱

    MIT 앱 인벤터를 사용하여 앱을 만들었습니다. 요구 사항에 따라 이 앱을 편집하고 사용자 지정할 수 있습니다. 여기에서 aia fie를 받으세요.

    이 앱은 블루투스 연결을 사용하여 로봇을 제어합니다. 이를 위해 HC05 Bluetooth 모듈을 휴대폰에 페어링해야 했습니다. 기본 비밀번호는 1234 또는 0000입니다.

    이 앱은 Google Speech to Text API를 사용하여 내가 말한 내용을 텍스트 형식으로 변환합니다. 그런 다음 문장을 소문자로 만들어 처리하기가 더 쉽습니다. 그리고 if else 문을 사용하여 일치합니다. 사용자가 'forward'라고 말하면 Arduono에 'F' 문자를 보내면 진행됩니다. 그게 다야.

    APK 파일로 빌드하여 저장하거나 내 휴대폰에 설치하여 사용하세요.

    음성 제어 로봇 도식.fzz

    8단계:봇에 전원을 공급하고 앱을 실행하고 이동하세요!

    이제 배터리를 연결하고 Android 앱을 사용하여 새로운 로봇을 가지고 놀기만 하면 됩니다!

    읽어 주셔서 감사합니다. 내 최신 프로젝트를 확인하세요 -

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

    코드

    <울>
  • 코드 스니펫 #1
  • 코드 스니펫 #3
  • 코드 스니펫 #1일반 텍스트
    void setup(){ //핀 모드 초기화 pinMode(lm1,OUTPUT); 핀모드(lm2, 출력); 핀모드(rm1, 출력); 핀모드(rm2,출력); //시리얼 통신 속도 설정 Serial.begin(9600);}
    코드 스니펫 #3일반 텍스트
    /**** Arduino 음성/음성 제어 로봇 *** * Ashraf Minhaj 작성 * [email protected]으로 메일을 보내주세요. //첫 번째 모터 핀 선언int lm2 =5;int rm1 =2; //오른쪽 모터 pinint rm2 =3;char val;void setup(){ //핀 모드 초기화 pinMode(lm1,OUTPUT); 핀모드(lm2, 출력); 핀모드(rm1, 출력); 핀모드(rm2,출력); // 직렬 통신 속도 설정 Serial.begin(9600);}void loop(){ //arduino가 신호를 수신하는지 여부를 확인합니다. while(Serial.available() ==0); val =직렬.read(); //신호를 읽습니다. //Serial.print(val); /************정방향 모션의 경우*********/ if (val =='F') { //Serial.println("FORWARD"); 디지털 쓰기(lm1, 높음); 디지털 쓰기(rm1, 높음); 디지털 쓰기(lm2,LOW); 디지털 쓰기(rm2,LOW); } /************역방향 모션의 경우************/ else if(val =='B') { digitalWrite(lm2,HIGH); 디지털 쓰기(rm2, 높음); 디지털 쓰기(lm1, LOW); 디지털 쓰기(rm1,LOW); } /*********오른쪽*********/ else if(val =='R') { digitalWrite(lm1,HIGH); 디지털 쓰기(rm2, 높음); 디지털 쓰기(lm2,LOW); 디지털 쓰기(rm1,LOW); } /*********Left*********/ else if(val =='L') { digitalWrite(lm2,HIGH); 디지털 쓰기(rm1, 높음); 디지털 쓰기(lm1, LOW); 디지털 쓰기(rm2,LOW); } /************STOP*********/ else { digitalWrite(lm1,LOW); 디지털 쓰기(rm1,LOW); 디지털 쓰기(lm2,LOW); 디지털 쓰기(rm2,LOW); } 지연(10); }
    깃허브
    https://github.com/ashraf-minhaj/speech-controlled-robothttps://github.com/ashraf-minhaj/speech-controlled-robot

    회로도

    Speech-controlled-robot-schematic_hUoWKpapKe.fzz

    제조공정

    1. Bluetooth를 통해 제어되는 Raspberry Pi Robot
    2. Arduino 및 Raspberry Pi로 인터넷 제어 비디오 스트리밍 로봇 구축
    3. Windows 10 IoT Core :음성 제어 로봇
    4. 라즈베리 파이를 사용하는 Wi-Fi 제어 로봇
    5. 조이스틱 제어 RC 자동차
    6. 라인 팔로워 로봇
    7. Nunchuk 제어 로봇 팔(Arduino 포함)
    8. 이더넷을 통해 제어되는 로봇 암
    9. MobBob:Android 스마트폰으로 제어되는 DIY Arduino 로봇
    10. Arduino 제어 피아노 로봇:PiBot