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

LED 큐브 7x7x7

구성품 및 소모품

Arduino UNO
× 1
74hc574
× 7
74hc138
× 1
저항 220옴
× 49
16MHz 크리스탈
× 1

필요한 도구 및 기계

납땜 인두(일반)

이 프로젝트 정보

저는 항상 저만의 LED 큐브를 만들고 싶었고, 이제 제 프로젝트를 여러분과 공유합니다.

1단계

가장 먼저 할 일은 LED 매트릭스를 만드는 것입니다.

이 경우 7x7 LED 매트릭스 7개를 만들었습니다.

양극과 음극을 나누어 행과 열로 납땜하여 결국 각 led 매트릭스에 대해 7개의 양극과 7개의 음극을 갖게 되었습니다.

2단계

이제 LED 큐브를 사용하는 데 필요한 하드웨어가 필요합니다.

전자를 잘 모른다면 가장 어려운 부분입니다.

하지만 이 부분을 명확하게 설명하려고 합니다.

저는 74HC574를 7개 사용했습니다.

이 IC는 8비트 D플립플롭이며 8비트 메모리입니다. 이런 식으로 큐브의 이미지를 보기 위해 비트를 로드할 수 있습니다. 7개의 LED 매트릭스가 있기 때문에 7개의 74HC574가 필요합니다.

어떤 레이어가 켜지는지 결정하려면 7개의 NPN 트랜지스터도 필요합니다.

이런 식으로 멀티플렉서 기술을 사용하여 모든 큐브에서 이미지를 시각화할 수 있습니다.

마지막으로 74LS138도 필요합니다. 3-8 라인 디코더 디멀티플렉서입니다. 데이터를 저장하기 위해 펄스도 필요하기 때문에 3비트로 모든 플립플롭을 제어할 수 있습니다.

이것은 하드웨어의 블록 다이어그램입니다:

회로는 제가 직접 만들었고, 아두이노의 독립형 ATmega328P를 사용했습니다.

아래에서 모든 회로도를 볼 수 있습니다.

3단계

하드웨어와 LED 큐브를 위한 구조도 필요합니다. 나는 그것을 만들기 위해 몇 가지 나무 조각을 사용했습니다.

그런 다음 모든 것을 조립할 수 있으며 각 LED 매트릭스는 다른 것 앞에 배치되어야 하고 각 레이어의 음극은 동일한 트랜지스터에 연결되어야 합니다.

4단계

마지막으로 큐브를 만드는 코드를 작성할 수 있습니다. 위의 블록 다이어그램이 코드 작성에 도움이 될 것입니다.

이 부분은 많이 혼동될 수 있지만 몇 번 연습하면 더 쉬울 것입니다.

아래 코드는 가장 쉬운 애니메이션을 나타냅니다. 다른 애니메이션은 너무 길지만 약간의 환상만 있으면 원하는 대로 할 수 있기 때문입니다.

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

코드

<울>
  • 애니메이션
  • 애니메이션Arduino
    //이 코드는 LED에 대한 가장 쉬운 애니메이션을 나타냅니다. CUBEint temp =50, cont =0;//이 함수는 모든 큐브를 로드합니다. load_all(void) { //레이어 1 digitalWrite(A2, LOW); 디지털 쓰기(A1, LOW); 디지털 쓰기(A0, LOW); 지연(1); //레이어 2 digitalWrite(A2, HIGH); 디지털 쓰기(A1, LOW); 디지털 쓰기(A0, LOW); 지연(1); //레이어 3 digitalWrite(A2, LOW); 디지털 쓰기(A1, HIGH); 디지털 쓰기(A0, LOW); 지연(1); //레이어 4 digitalWrite(A2, HIGH); 디지털 쓰기(A1, HIGH); 디지털 쓰기(A0, LOW); 지연(1); //레이어 5 digitalWrite(A2, LOW); 디지털 쓰기(A1, LOW); 디지털 쓰기(A0, HIGH); 지연(1); //레이어 6 digitalWrite(A2, HIGH); 디지털 쓰기(A1, LOW); 디지털 쓰기(A0, HIGH); 지연(1); //레이어 7 digitalWrite(A2, LOW); 디지털 쓰기(A1, HIGH); 디지털 쓰기(A0, HIGH); 지연(1); //레이어 8 digitalWrite(A2, HIGH); 디지털 쓰기(A1, HIGH); 디지털 쓰기(A0, HIGH); delay(1);}//이 함수는 각 레이어를 한 번 활성화하고 레이어가 켜지는 시간을 결정할 수 있습니다. scrolling(int t) { PORTB =0x00; 디지털 쓰기(7, 높음); 지연(t); 디지털 쓰기(7, 낮음); 디지털 쓰기(8, 높음); 지연(t); 디지털 쓰기(8, 낮음); 디지털 쓰기(9, 높음); 지연(t); 디지털 쓰기(9, 낮음); 디지털 쓰기(10, 높음); 지연(t); 디지털 쓰기(10, 낮음); 디지털 쓰기(11, 높음); 지연(t); 디지털 쓰기(11, 낮음); 디지털 쓰기(12, 높음); 지연(t); 디지털 쓰기(12, 낮음); 디지털 쓰기(13, 높음); 지연(t); digitalWrite(13, LOW);}//이 애니메이션은 한 번에 한 레이어를 켜고 속도를 증가시키므로 마침내 모든 큐브가 onvoid one(void) { PORTD =0xff; load_all(); 동안 (1) { 스크롤링(온도); 온도 =온도 - 2; if (온도 <=0) { 온도 =1; 계속++; if (계속 ==1000) { 계속 =0; 온도 =100; } } }} 무효 설정() { DDRD =0xff; DDRB =0xff; DDRC =0xff;}무효 루프() { one();}

    맞춤형 부품 및 인클로저

    gestione_mankWMoVhz.sch

    회로도

    구성 요소 배치에 이미지를 사용합니다.

    제조공정

    1. 루빅스 큐브
    2. 발광 다이오드(LED)
    3. DIY 37 LED 룰렛 게임
    4. 관춤 멜로디
    5. 5x5x5 LED 큐브
    6. 오래된 리모컨 재활용
    7. Bluetooth가 탑재된 Arduino로 LED 제어!
    8. 사운드에 의한 8x LED 조명
    9. Arduino Quadruped
    10. Arduino RGB 컬러 믹서