Arduino를 사용하여 AutoLacing 신발을 만드는 방법?

현대 시대에 과학자와 엔지니어는 모든 것을 자동화하려고 노력하고 있습니다. 그것은 모든 것이 인간의 노력없이 자체적으로 작동한다는 것을 의미합니다. 어떤 사람들은 스스로 신발 끈을 묶는 데 어려움을 겪는 매우 흔한 문제가 사회에서 확인되었습니다. 여기에는 장애인, 허리 통증이있는 ​​사람, 어린이 및 시각 장애인이 포함됩니다. 그래서이 사람들이 이것을 문제로 보지 않도록 해결책을 만들어야합니다.

Instructables에서 찍은 사진

이 프로젝트에서는 사람의 노력없이 자동으로 끈을 묶는 Automatic Lacing 쇼를 만들 것입니다. 마이크로 컨트롤러 보드, 모터 쉴드 센서, 서보 모터의 도움으로 신발 안에 발을 넣는 즉시이를 수행합니다.



Arduino를 사용하여 쇼를 AutoLace하는 방법?

이제 프로젝트의 개요를 알고 있으므로 더 많은 정보를 수집하고 Arduino를 사용하여이 AutoLace 신발을 만드는 절차를 살펴 보겠습니다.

1 단계 : 구성 요소 수집

프로젝트를 시작하는 가장 좋은 방법은 구성 요소 목록을 만들고 이러한 구성 요소에 대한 간략한 연구를 진행하는 것입니다. 그 이유는 구성 요소가 빠졌다는 이유만으로 프로젝트 중간에 머무르고 싶어하는 사람이 없기 때문입니다. 이 프로젝트에서 사용할 구성 요소 목록은 다음과 같습니다.

  • Arduino 우노
  • 모터 실드
  • 서보 모터
  • LED
  • 1k-ohm 저항기
  • 구두
  • 금속 스트립
  • 플라스틱 지퍼 타이
  • 1/8
  • 점퍼 와이어
  • 배터리

2 단계 : 구성 요소 연구

이제 프로젝트의 개요를 알고 모든 구성 요소의 전체 목록을 얻었으므로 한 단계 더 나아가 사용할 구성 요소에 대한 간략한 연구를 진행하겠습니다.

Seeeduino v4.2 마이크로 컨트롤러 Atmega 328 MCU를 기반으로하는 세계 최고의 Arduino 호환 보드 중 하나입니다. 사용하기 쉽고 안정적이며 다른 많은 보드보다 더 좋아 보이기 때문입니다. Arduino 부트 로더를 기반으로합니다. FTDI 칩으로 사용할 수 있기 때문에 ATMEGA16U2를 UART-USB 변환기로 사용합니다. 일반적으로 안드로이드 케이블이라고 불리는 마이크로 USB 케이블을 사용하여 컴퓨터에 연결됩니다. DC 잭을 사용하여 보드에 전원을 공급할 수도 있습니다. 입력 전원은 7V ~ 15V 여야합니다.

Seeeduino 보드

Arduino 모터 실드 Arduino를 사용하여 손쉽게 모터 방향과 속도를 제어 할 수 있습니다. Arduino 핀만 처리 할 수 ​​있으므로 모든 모터를 작업에 쉽게 연결할 수 있습니다. 또한 최대 12v의 다른 전원 공급 장치로 모터를 제어 할 수있는 옵션이 있습니다. 무엇보다도 방패는 찾기가 매우 쉽습니다. 이러한 모든 이유로 Arduino Motor Shield는 신속한 프로토 타이핑 및 일반적인 실험을 위해 무기고에 약간만 있으면 좋습니다.

모터 실드

힘 센서 저항기 (FSR) 매우 간단하고 사용하기 쉬운 압력 센서입니다. FSR의 장애물은 탐지 영역에 적용되는 무게에 따라 달라집니다. 더 많은 가중치를 적용할수록 상대는 낮아집니다. 장애물 범위는 매우 큽니다 :> 10 MΩ (무게 없음) ~ ~ 200 Ω (최대 중량). 대부분의 FSR은 100g에서 10kg 범위의 전력을 감지 할 수 있습니다. FSR은 2 개의 층과 스페이서 접착제로 구성됩니다. 전도 층은 무게가 가해지지 않을 때 얇은 에어 갭으로 격리됩니다. 필름 중 하나에는 꼬리에서 감지 영역 (둥근 부분)으로 이어지는 두 개의 흔적이 있습니다. 이 흔적은 서로 엮여 있지만 접촉하지는 않습니다. 다른 필름은 선도 잉크로 덮여 있습니다. 센서를 누르면 잉크가 무게에 의존하는 반대편과 함께 두 흔적을 단락시킵니다.

힘 센서

서보 모터 정확한 증분으로 제어 및 이동할 수있는 회전식 또는 선형 액추에이터입니다. 이 모터는 DC 모터와 다릅니다. 이 모터를 사용하면 각도 또는 회전 운동을 정밀하게 제어 할 수 있습니다. 이 모터는 동작에 대한 피드백을 보내는 센서에 연결됩니다.

서보 모토

3 단계 : 작동 원리

이 프로젝트의 작동 원리는 매우 간단합니다. 힘 센서는 발이 쇼에 배치되었는지 여부를 감지하는 데 사용됩니다. 발을 감지하면 Arduino Motor Shield의 도움으로 서보 모터를 움직이는 Arduino 보드에 신호를 보냅니다. 이 서보 모터는 모든 끈을 한 번에 당기는 방식으로 움직입니다. 따라서 신발의 모든 끈을 자동으로 묶습니다.

4 단계 : 구성 요소 조립

이제이 프로젝트의 주요 아이디어와 작동 원리를 알고 있으므로 한 발 더 나아가 모든 것을 조립하여 자동으로 레이저를 발하는 쇼를 만들어 보겠습니다. 최종 제품을 만들려면 아래 단계를 따르십시오.

  1. 먼저 작은 금속판을 잘라서 쇼 뒷면에 고정합니다. 영구적으로 고정되고 풀리지 않도록 합성 섬유를 사용하십시오. 금속판과 쇼 사이에 틈을 남겨 두세요. 그 틈새로 케이블 타이를 통과 할 것입니다.
  2. 이제 두 개의 서보 모터를 가져다가 뜨거운 접착제로 금속판에 부착합니다. 이제 이것을 영구적으로 고정하려면 서보 모터가 나중에 움직이지 않도록 주변에 지퍼 타이를 사용하십시오. 서보 모터의 속도가 맞춰지면 남은 여분의 케이블을 자릅니다.
  3. 이제 모터 아래에 배터리 케이스를 장착하여 전원 스위치가 바깥 쪽을 향하도록합니다.
  4. 이제 Arduino 보드를 모터에 부착하십시오. 모터 실드를 Arduino와 연결하기 전에 회로에 몇 가지 사항을 추가해야합니다.
  5. LED를 가져와 저항기를 양극 다리에 납땜하고 짧은 길이의 전선을 음극 다리와 저항기의 다른 다리에 납땜하십시오. 그런 다음이 어셈블리를 Arduino에 연결하고 사용하지 않는 신발 끈 소켓 중 하나에 밀어 넣습니다.
  6. 이제 힘 센서 뒤꿈치가 쉴 수있는 신발에 넣으세요. 납땜 인두의 열이 센서의 플라스틱을 녹일 수 있기 때문에 힘 센서의 핀을 납땜하는 것은 권장되지 않습니다. 그래서 접착제로 붙이거나 테이프를 붙이면 더 좋습니다.
  7. 마지막으로 지퍼 타이를 사용하여 모든 끈을 서보 모터에 묶어 모터가 회전 할 때 모든 끈을 한 번에 당깁니다.

LED의 양극선이 Arduino의 핀 2에 연결되어 있는지 확인하십시오. 힘 센서의 Vcc 및 접지 핀은 Arduino의 5V 및 접지에 연결되고 힘 센서의 IN 핀은 Arduino 보드의 A0 핀에 연결됩니다. 마지막으로 서보 모터 핀을 모터 실드에 조심스럽게 연결하여 잘못 연결되지 않도록합니다.

5 단계 : Arduino 시작하기

이전에 아두 이노 IDE에 익숙하지 않더라도 걱정하지 마세요. 아두 이노 IDE를 사용하여 마이크로 컨트롤러 보드에서 코드를 굽는 명확한 단계를 볼 수 있습니다. 최신 버전의 Arduino IDE를 다운로드 할 수 있습니다. 여기 아래에 언급 된 단계를 따르십시오.

  1. Arduino 보드가 PC에 연결되면 '제어판'을 열고 '하드웨어 및 소리'를 클릭합니다. 그런 다음 '장치 및 프린터'를 클릭합니다. Arduino 보드가 연결된 포트의 이름을 찾으십시오. 제 경우에는“COM14”이지만 PC에서는 다를 수 있습니다.

    포트 찾기

  2. Servo Motor를 사용하려면 라이브러리를 포함해야합니다. 라이브러리는 코드와 함께 다운로드 링크에 첨부되어 있습니다. 이동 스케치> 라이브러리 포함> .ZIP 라이브러리 추가.

    라이브러리 포함

  3. 이제 Arduino IDE를 엽니 다. 도구에서 Arduino 보드를 Arduino / Genuino UNO.

    설정 보드

  4. 동일한 도구 메뉴에서 제어판에서 본 포트 번호를 설정하십시오.

    포트 설정

  5. 아래 첨부 된 코드를 다운로드하여 IDE에 복사하십시오. 코드를 업로드하려면 업로드 버튼을 클릭하십시오.

    업로드

다음 방법으로 코드를 다운로드 할 수 있습니다. 여기를 클릭하십시오.

6 단계 : 코드

코드는 주석이 잘되어 있고 설명이 필요하지 않습니다. 그러나 여전히 코드는 아래에 간략하게 설명되어 있습니다.

1. 처음에는 서보 모터를 마이크로 컨트롤러 보드와 통합하고이를 통해 프로그래밍 할 수 있도록 특수 라이브러리가 포함되어 있습니다. 서보 모터와 함께 사용하기 위해 두 개의 개체가 생성됩니다. 모터 드라이버에 연결되는 일부 핀 또는 Arduino가 초기화되고 나중에 메인 프로그램에서 사용될 일부 임시 값을 저장하는 일부 변수도 선언됩니다.

#include // miccrocontroller 보드 Servo myservo와 서보 모터를 인터페이스하기위한 라이브러리 포함; // 서보 objec 1 Servo myservo2를 생성합니다. // 서보 객체 2 생성 int forcePin = 0; // 힘 센서에 연결된 아날로그 핀 0 int ledPin = 2; // LED에 연결된 디지털 핀 2 int switchPin = 19; // 잠금 해제 스위치를 아날로그 핀 5로 설정 int valF; // 힘 센서 값 int valS; // 스위치 값 int thresHold = 500; // 힘 센서 압력 임계 값을 정의합니다. int servoUnlock = 0; // 메인 서보를 중립 언 레이스 위치 (0도)로 설정합니다. int servoLock = 180; // 메인 서보를 레이스 위치 (180도)로 설정합니다. int servoUnlock2 = 180; // 보조 서보를 중립 언 레이스 위치 (0도)로 설정 int servoLock2 = 0; // 보조 서보를 레이스 위치 (180도)로 설정합니다.

2. 무효 설정 () 마이크로 컨트롤러의 전원을 켜거나 활성화 버튼을 눌렀을 때 시작시 한 번만 실행되는 기능입니다. 이 기능에서 Arduino의 핀은 INPUT 또는 OUTPUT으로 사용되도록 초기화됩니다. 이전에 서보 모터 용으로 생성 된 객체는 서보 모터를 Arduino 보드의 특정 핀에 부착하는 데 사용되며 서보는 초기 비 레이스 상태로 이동됩니다. Baud Rate도이 기능에서 설정됩니다. Baud Rate는 마이크로 컨트롤러가 연결된 외부 장치와 통신하는 속도 (초당 비트 수)입니다.

void setup () {Serial.begin // 마이크로 컨트롤러의 전송 속도 설정 pinMode (ledPin, OUTPUT); // 디지털 핀 2는 LED에 대해 출력됩니다. pinMode (switchPin, INPUT); // 아날로그 핀 5가 스위치에 입력됩니다. myservo.attach (9); // 9 번 핀에 서보를 연결합니다. myservo2.attach (10); // 서보를 핀 10에 연결합니다. myservo.write (servoUnlock); // 서보 1을 비 레이스 위치로 이동 myservo2.write (servoUnlock2); // 서보 2를 비 레이스 위치로 이동}

삼. 무효 루프 () 루프에서 반복적으로 실행되는 함수입니다. 먼저 힘 센서가 아날로그 값을 읽습니다. 그런 다음 힘 센서의 값이 임계 값을 통과 할 때까지 기다립니다. 발이 제자리에 완전히 안착 될 때까지 기다렸다가 두 서보를 모두 잠금 위치로 설정합니다. 스위치를 누르면 서보가 잠금 해제되도록 설정되고 LED가 7 번 깜박일 때까지 대기합니다.

void loop () {valF = analogRead (forcePin); // 힘 센서 값 읽기 valS = digitalRead (switchPin); // 스위치 값 읽기 if (valF> = thresHold) {// 힘 센서가 압력 임계 값과 같거나 통과 할 때까지 기다린 다음 : delay (1000); // 발이 신발에 자리를 잡을 때까지 기다립니다. myservo2.write (servoLock2); // 보조 서보를 잠금 위치로 설정합니다. delay (1000); // 1 초 대기 myservo.write (servoLock); // 메인 서보를 잠금 위치로 설정합니다. delay (1000); // 1 초 대기 digitalWrite (ledPin, HIGH); // 서보 잠금이 해제 될 때까지 LED를 켭니다. 배터리 수명을 절약하려면이 줄을 제거하십시오. } if (valS == HIGH) {// 스위치가 눌릴 때까지 기다린 다음 : myservo2.write (servoUnlock2); // 보조 서보 지연 잠금 해제 (1000); // 2 초 대기 myservo.write (servoUnlock); // 메인 서보 지연 잠금 해제 (500); // 기다렸다가 LED를 7 번 깜박입니다. digitalWrite (ledPin, LOW); 지연 (200); digitalWrite (ledPin, HIGH); 지연 (200); digitalWrite (ledPin, LOW); 지연 (200); digitalWrite (ledPin, HIGH); 지연 (200); digitalWrite (ledPin, LOW); 지연 (200); digitalWrite (ledPin, HIGH); 지연 (200); digitalWrite (ledPin, LOW); 지연 (200); digitalWrite (ledPin, HIGH); 지연 (200); digitalWrite (ledPin, LOW); 지연 (200); digitalWrite (ledPin, HIGH); 지연 (200); digitalWrite (ledPin, LOW); 지연 (200); digitalWrite (ledPin, HIGH); 지연 (200); digitalWrite (ledPin, LOW); 지연 (200); digitalWrite (ledPin, HIGH); 지연 (200); digitalWrite (ledPin, LOW); // LED 끄기 delay (1000); }}

그래서 이것은 서보 모터, 마이크로 컨트롤러 및 모터 실드의 도움으로 자동으로 레이스를 묶는 쇼를 만드는 전체 절차였습니다. 이제이 전체 절차를 알고 있으므로 집에서 AutoLacing Show를 즐기십시오.

2019 년 10 월 15 일 8 분 읽기