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

Raspberry Pi 및 Arduino를 사용한 웹 제어 LED 애니메이션

구성품 및 소모품

라즈베리 파이 3 모델 B
× 1
Arduino UNO
Arduino Nano도 사용할 수 있습니다. 더 많은 LED 픽셀을 구동하려면 Arduino Mega가 필요할 수 있습니다.
× 1
NeoPixel 스트립
모든 WS8212 LED 스트립을 사용할 수 있습니다.
× 1

앱 및 온라인 서비스

Arduino IDE

이 프로젝트 정보

프로젝트 개요

Arduino Light Animation(ALA)은 최소한의 노력으로 LED를 제어하고 다채로운 애니메이션을 실행하기 위한 Arduino 라이브러리입니다. 라이브러리는 30개 이상의 미리 정의된 애니메이션과 여러 색상 팔레트를 제공합니다. ALA 라이브러리에 대한 자세한 내용은 내 블로그를 방문하십시오.

이 프로젝트는 웹 브라우저를 사용하여 스마트폰이나 PC에서 애니메이션, 색상 및 속도를 제어할 수 있는 웹 페이지를 제공할 Raspberry Pi 3 보드를 소개합니다. 다음은 AlaWeb이 작동하는 짧은 동영상입니다.

이 프로젝트에 필요한 구성 요소가 거의 없습니다.

<울>
  • WS8212 RGB LED 스트립 :이 스트립에는 단선 인터페이스를 사용하여 개별적으로 처리할 수 있는 여러 RGB LED가 포함되어 있어 각 RGB LED의 색상을 완벽하게 제어할 수 있습니다.
  • <울>
  • 아두이노 :유명한 마이크로 컨트롤러 보드는 USB 직렬 포트를 통해 Raspberry PI에서 명령을 수신하는 LED 스트립을 구동하기 위해 내 ALA 라이브러리를 실행합니다. Arduino Uno, Nano 및 Mega 보드를 사용할 수 있습니다.
  • <울>
  • 라즈베리 PI :이 작은 PC는 조명과 애니메이션의 매개변수를 제어하는 ​​웹 페이지를 제공합니다.
  • Arduino 및 Rapberry PI 보드에 익숙하다면 프로젝트가 매우 간단합니다. 설정 프로세스를 안내하기 위해 프로젝트를 두 단계로 나누었습니다.

    배선

    WS8213 LED 스트립은 연결이 매우 쉽습니다. 이 모든 LED를 구동하기에 충분한 전력만 있으면 됩니다. 매우 짧은 스트립(10개 이하의 LED)의 경우 USB 포트에서 직접 전원을 공급할 수도 있지만 더 긴 스트립의 경우 우수한 전원을 제공해야 합니다. 시작점으로 위의 비디오에서 볼 수 있듯이 Arduino 5V 핀을 사용하여 led 스트립에 전원을 공급하는 것이 좋습니다.

    <울>
  • WS2812 GND에 대한 Arduino GND 핀
  • <울>
  • WS2812 5V에 대한 Arduino 5V 핀
  • <울>
  • WS2812 Ctrl/Din 핀에 대한 Arduino 핀 6
  • 더 많은 픽셀을 구동하려면 더 많은 전력을 제공해야 합니다. 계산은 쉽습니다. 각 RGB LED는 완전 밝은 흰색에서 60mA를 끌어옵니다. 예를 들어, 60 LED/m로 2m 길이의 스트립을 구동하려면 2m * 60pixel/m * 60mA =7.2A를 제공하는 5V 전원 공급 장치가 필요합니다.

    전원 공급 장치, Arduino 보드 및 WS8212 스트립을 이렇게 연결합니다.

    <울>
  • GND를 Arduino GND 및 WS2812 GND로 전원 공급
  • <울>
  • 5V에서 Arduino 5V 핀 및 WS2812 5V로 전원
  • <울>
  • Arduino 핀 6-WS2812 CTRL 핀
  • Arduino 5V 핀에 전원을 공급하면 Arduino에 전원이 공급되므로 배럴 커넥터의 두 번째 전원에 연결할 필요가 없습니다. 5V 핀이 전압 조정기 및 보호 장치를 우회하므로 이 연결 방식을 사용할 때 매우 주의하십시오. 자세한 내용은 이 가이드를 참조하세요.

    WS8212 LED 스트립 배선 방식에 대한 자세한 내용은 이 가이드를 읽으십시오.

    Arduino 설정

    Arduino 보드를 PC의 USB 포트에 연결합니다. Arduino IDE를 열고 라이브러리 관리자(스케치> 라이브러리 포함> 라이브러리 관리)를 실행하여 최신 ALA 라이브러리를 설치합니다. .

    RgbStripSerial을 엽니다. example(Files> Examples> ALA> RgbStripSerial) 및 NUM_PIXELS 상수 정의는 RGB 스트립의 LED 수와 일치합니다. 10픽셀 이상을 구동하려면 개선된 연결 방식을 사용해야 한다는 점을 기억하십시오.

    이제 Ctrl+U를 눌러 스케치를 보드에 업로드할 수 있습니다. Arduino IDE에서 또는 업로드 선택 스케치 메뉴의 작업. 스케치 업로드에 문제가 있는 경우 도구 메뉴에서 보드 유형과 포트를 확인하세요.

    Arduino 직렬 모니터(도구> 직렬 모니터)를 열면 다음과 같은 환영 메시지가 표시됩니다.

    오른쪽 하단에서 끝나는 'Newline' 줄을 설정하고 전송 속도가 9600으로 설정되어 있는지 확인합니다.

    이제 공백 없이 다음 명령(굵게 표시)을 시도하십시오.

    <울>
  • A=101 - LED 켜기
  • <울>
  • A=251 - '라슨 스캐너' 애니메이션 실행
  • <울>
  • P=2 - 무지개 팔레트 설정
  • <울>
  • A=242 - 또 다른 애니메이션
  • 멋지죠?

    이 짧은 참조를 따라 다양한 명령과 조합을 실험할 수 있습니다.

    <울>
  • A=[애니메이션 코드] - 애니메이션을 설정합니다. 사용 가능한 애니메이션 코드는 AlaLed.h 헤더 파일에 나열되어 있습니다.
  • <울>
  • B=[밝기] - 밝기를 설정합니다. [0-100] 범위에 있어야 합니다.
  • <울>
  • D=[기간] - 애니메이션 주기의 지속 시간을 밀리초 단위로 설정합니다. 표준 값은 500에서 5000 사이입니다.
  • <울>
  • C=[색상] - 색상을 설정합니다. E8A240과 같은 16진수 RGB 표현이어야 합니다.
  • <울>
  • P=[팔레트] - 팔레트를 설정합니다. [0-5] 범위에 있어야 합니다.
  • 이제 스마트폰에서 애니메이션을 제어할 수 있습니다.

    라즈베리 파이 설정

    프로젝트의 이 부분에서 우리는 웹 브라우저에서 LED 스트립을 제어하기 위해 작은 웹 서버를 실행하도록 Rapberry Pi 보드를 설정할 것입니다. Python 3이 설치된 모든 PC에서 동일한 응용 프로그램을 실행할 수 있습니다.

    전제 조건은 Raspberry PI가 이미 구성되어 있고 최신 Raspbian OS(Stretch로 테스트했습니다)를 실행하고 있으며 인터넷에 연결되어 있어야 한다는 것입니다.

    먼저 다음 명령을 사용하여 Python 3용 라이브러리를 몇 개 설치해야 합니다.

    sudo pip3 설치 pyserial flask 

    프로젝트의 홈 디렉토리 생성:

    mkdir /home/pi/AlaWebcd /home/pi/AlaWeb 

    AlaWeb git 저장소를 LightStrip 디렉토리에 다운로드하고 압축을 풉니다.

    wget https://github.com/bportaluri/AlaWeb/archive/master.zipunzip master.zip 

    이제 모든 소프트웨어가 준비되고 설정되었습니다. Arduino USB 포트를 Raspberry PI에 연결합니다. 방금 다운로드한 AlaWeb 애플리케이션은 USB 직렬 연결을 통해 Arduino 보드와 통신합니다.

    cd AlaWeb-mastersudo python3 AlaWeb.py 

    AlaWeb 애플리케이션은 모든 USB 직렬 포트를 나열하고 Arduino를 자동으로 감지하려고 시도합니다. 계속 반복되는 경우 실행을 중단하고 다음과 같이 포트 이름을 전달해 보십시오(필요한 경우 포트 ID 교체).

     sudo python3 AlaWeb.py /dev/ttyACM0 

    모든 것이 정상이면 다음과 같이 표시되어야 합니다.

    웹 브라우저를 열고 표시된 URL에 연결합니다. 웹 브라우저에서 LED 스트립을 제어할 수 있는 버튼으로 가득 찬 웹 페이지가 표시됩니다.

    즐기세요!

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

    코드

    알라웹
    AlaWeb은 웹 브라우저에서 애니메이션을 제어하기 위해 Python 및 Flask로 작성된 tini 웹 서버입니다.https://github.com/bportaluri/AlaWeb
    알라
    Arduino Light Animation(ALA)은 LED 및 LED 스트립을 사용하여 조명 애니메이션 개발을 단순화하는 Arduino 보드용 라이브러리입니다. 자세한 내용은 이 페이지를 방문하세요. http://yaab-arduino.blogspot.it/p/ala.htmlhttps://github.com/bportaluri/ALA

    회로도


    제조공정

    1. Samsung SAMIIO, Arduino UNO 및 Raspberry Pi로 몇 분 만에 화재 감지기 만들기
    2. Raspberry Pi 및 습도 센서를 사용한 수경재배
    3. Raspberry Pi 및 Python으로 로봇 구축
    4. Arduino 및 Raspberry Pi로 인터넷 제어 비디오 스트리밍 로봇 구축
    5. 동영상이 있는 Raspberry Pi 웹 제어 로봇
    6. 비행 시뮬레이터용 Arduino가 있는 LCD 패널
    7. FS2020용 Arduino가 있는 스위치/LED 패널
    8. Bluetooth가 탑재된 Arduino로 LED 제어!
    9. Arduino Quadruped
    10. Arduino 및 MPU6050으로 서보 모터 제어