미래에서 온 것처럼 맥동하는 Arduino LED 큐브를 만드는 방법

미래에서 온 것처럼 맥동하는 Arduino LED 큐브를 만드는 방법

초보자 Arduino 프로젝트에 손을 댔지만 조금 영구적이고 완전히 다른 수준의 멋진 것을 찾고 있다면 겸손한 4 x 4 x 4 LED 큐브가 자연스러운 선택입니다. 구성은 생각보다 훨씬 쉽고 멀티플렉싱을 사용하여 단일 Arduino Uno 보드에서 모든 LED를 직접 제어할 수 있습니다. 훌륭한 납땜 방식이며 구성 요소의 총 비용은 약 를 넘지 않아야 합니다.





오늘 저는 사물의 구성 측면에 대해 자세히 설명하고 인상적이고 기본 사항을 가르치는 몇 가지 소프트웨어를 제공할 것입니다.





Windows 10 외장 하드 드라이브가 작동하지 않음

필요할 것이예요

  • NS아두이노. 제공된 코드는 Arduino Uno를 가정하지만 더 큰 모델로도 조정할 수 있습니다.
  • 64개의 LED - 정확한 선택은 여러분의 몫이지만, 저는 이 매우 밝은 3mm Blue LED를 사용했습니다( 3.2v 30ma ) @ 50개에 £2.64.
  • 16 저항기 당신의 LED에 대한 적절한 값. 위의 LED의 경우 99펜스가 100개를 샀습니다. 사용하다 ledcalc.com - 공급 전압, LED의 전압(내 경우에는 3.2) 및 전류(밀리암페어)에 5v를 입력합니다(3.2). 원하는 저항이 표시된 상자에 표시됩니다. 가장 가까운 높은 정격 저항 , 다음 eBay에서 해당 값을 검색하십시오.
  • 일부 공예 와이어 기본 구조를 강화하고 장식을 위해 - 나는 사용 0.8mm 두께.
  • 에게 프로토타이핑 보드 모든 비트를 납땜할 수 있는 유형입니다. 저는 트랙커터가 없어서 풀트랙이 없는 것을 사용했지만, 본인에게 맞는 것을 사용하세요. Arduino 프로토타이핑 실드는 LED를 실제로 압착하지 않는 한 너무 작습니다.
  • 랜덤 컴포넌트 와이어 - 일부 네트워크 케이블 가닥과 키트의 일부 프로토타이핑 와이어는 제대로 작동합니다.
  • 악어 클립 또는 도움의 손길은 비트를 제자리에 고정하는 데 유용합니다.
  • 납땜 인두, 납땜.
  • 일부 스크랩 나무입니다.
  • LED와 동일한 크기의 드릴입니다.

참고: 이 튜토리얼의 3D 도면은 다음을 사용하여 몇 분 안에 완료되었습니다. 팅커캐드 . 사용자가 Instructables에 대해 자세히 설명한 기존 빌드를 따랐습니다.포르테1994, 이것을 시도하기 전에 읽어볼 수도 있습니다.





이 모든 지침을 읽으십시오. 첫 번째 자신을 위해 이것을 시도하기 전에.

이 디자인의 원리

구성을 시작하기 전에 이 작업이 어떻게 작동하는지에 대한 완전한 개요를 갖는 것이 중요하므로 진행하면서 즉석에서 오류를 식별하고 식별할 수 있습니다. 일부 LED 큐브는 모든 단일 LED에 대해 단일 출력 핀을 사용하지만 4x4x4 큐브에서는 다음이 필요합니다. 64핀 - 확실히 Arduino Uno에는 없는 것입니다. 한 가지 해결책은 시프트 레지스터를 사용하는 것이지만 이는 불필요하게 복잡합니다.



20개의 핀으로 모든 LED를 제어하기 위해 멀티플렉싱이라는 기술을 사용할 것입니다. 큐브를 4개의 개별 레이어로 나누면 16개의 LED에 대한 제어 핀만 필요합니다. 따라서 특정 LED를 켜려면 레이어와 제어 핀을 모두 활성화해야 하므로 총 16+4 핀이 필요합니다. 각 레이어에는 공통 음극(회로의 음극 부분)이 있으므로 모든 음극 레그가 함께 연결되고 해당 레이어의 단일 핀에 연결됩니다.

양극에서 (긍정적 인) 측면에서 각 LED는 위와 아래 레이어의 해당 LED에 연결됩니다. 기본적으로 포지티브 레그의 16개 열과 네거티브 레그의 4개 레이어가 있습니다. 다음은 이해를 돕기 위한 연결에 대한 몇 가지 3D 보기입니다.





건설

전체 금속 구조를 사용하여 납땜하지 않을 것이기 때문에 LED의 모든 다리가 약 4분의 1 정도 겹치고 구조에 강성을 부여하기를 원합니다. 그림과 같이 LED의 음극(머리에 평평한 노치가 있는 쪽과 다리가 짧은 쪽)을 접습니다. (좌우로 구부려도 상관없습니다. 일관성이 있고 양극에 절대 닿지 않는 한)

이 프로젝트의 첫 번째 중요한 부분은 나무 지그를 만드는 것입니다. 이것은 다리를 함께 납땜하는 동안 LED 레이어를 고정하므로 정확하고 너무 느슨하지 않아야 합니다. LED와 동일한 크기의 드릴 비트를 사용하여 4x4 매트릭스를 측정한 다음 드릴링합니다. 등거리 구멍. 다리의 약 1/4이 이웃과 겹치도록 하고 실제 자를 사용하십시오. 각 구멍을 확인하여 LED가 꼭 맞는지 확인하십시오. 그러나 너무 조여서 다시 꺼낼 수 없거나 완전히 납땜된 레이어를 제거하려고 할 때 문제가 발생하지는 않습니다.





LED 4줄의 음극을 납땜합니다. LED를 태우지 않도록 조심하십시오. 좋은 뜨거운 다리미를 원하고 출입을 원합니다. 여기 내 처음 4개의 행이 완료되었습니다.

이제 레이어의 강성을 강화하기 위해 두 개의 직선 공예 와이어를 잘라서 양쪽 끝에 납땜하여 각 행에 연결되도록 합니다. 이것은 완성된 첫 번째 레이어입니다. 지금은 모든 여분의 다리가 옆으로 튀어나온 상태로 둡니다.

이제 테스트하기에 좋은 시간이 될 것입니다. 기본 Arduino 깜박임 앱을 로드하고 저항이 연결된 상태에서 레이어 프레임에 접지를 놓고 각 LED에 대한 양극 리드를 차례로 누르십시오.

바라건대, 그들은 모두 빛날 것입니다. 그렇지 않은 경우 어딘가에 납땜 조인트를 놓친 것이 아닌지 확인하고 필요한 경우 LED를 교체하십시오.

지그에서 해당 레이어를 제거하고 프로세스를 반복하십시오. 3번 더 .

납땜이 완벽하지 않더라도 걱정하지 마십시오. 끊어지지 않고 연결이 견고하기만 하면 최종 제품에 영향을 미치지 않습니다. 내 납땜은 매우 절망적이었고 내 지그는 꺼져 있었고 모든 것이 피사의 사탑과 닮았다는 것을 인정합니다. 그래도 완성된 큐브가 자랑스럽습니다. LED가 켜지면 어쨌든 솔더 조인트를 보지 않을 것입니다!

레이어 결합

4개의 레이어가 완성되면 모든 수직 다리를 함께 결합하고 싶을 것입니다. 나는 이것이 빌드의 가장 어려운 부분이라는 것을 알았고 프로세스를 돕기 위해 카드에서 라이저를 잘라냈습니다.

이것은 레이어를 적절한 높이로 유지했지만 많은 다리가 여전히 완벽하게 정렬되지 않았습니다. 이를 위해 악어 클립을 사용하여 제자리에 고정했습니다.

피해야 할 첫 번째 어리석은 실수

전체 레이어를 완료한 후에야 카드 라이저가 제자리에 고정되어 있다는 것을 깨달았으므로 잘라내야 했습니다! 저와 같은 실수를 하지 마십시오. 라이저를 측면에서 더 길게 만들고 큐브 외부의 카드 조각을 결합하여 레이어를 완성하면 라이저를 분해하고 카드를 꺼낼 수 있습니다.

피해야 할 두 번째 어리석은 실수

물론 수직 다리를 음극 프레임에 납땜하지 마십시오. 수직 다리는 다른 수직 다리에만 연결해야 하며 다른 것은 연결하지 않아야 합니다.

다시 각 레이어가 부착된 후 테스트합니다. 모든 레이어를 테스트하십시오. 사실, 양극 리드를 최상층의 끝 부분에만 터치하여 모든 레이어를 통과하는 좋은 접촉이 있는지 확인하십시오.

4개의 레이어가 모두 함께 납땜되었을 때 저는 약간의 정리를 시작했습니다. 일종의 디딤돌 방식으로 각 레이어에서 하나의 다리를 확장한 상태로 남겨 두었습니다. 이것은 나중에 보드에 떨어뜨릴 것입니다. 금속 프레임과 다리의 다른 불필요한 부분이 잘렸습니다. 분명히 수직 다리를 자르지 마십시오. 이 다리를 프로토타입 보드에 넣어야 합니다.

보드에 고정

각 레이어를 자체적으로 고정하는 것이 가장 어려운 부분이라고 말했던 것을 기억하십니까? 나는 거짓말했다. 프로토타이핑 보드의 작은 구멍에 16개의 LED 다리를 맞추는 것은 실제로 더 어렵습니다. 내가 찾은 가장 쉬운 방법은 한 번에 4개를 뚫고 악어 클립으로 아래에 고정한 다음 4개의 다음 행으로 이동하는 것입니다. 도움이 된다면 마커 펜을 사용하여 미리 간격을 표시하십시오.

돌이켜보면 저항을 프로토보드에 먼저 배치했을 것입니다. 그대로 큐브의 모든 다리를 보드에 먼저 납땜 한 다음 각 다리 사이에 저항을 섬세하게 짜내려고했습니다. 내 실수에서 배우고 저항을 먼저 배치하십시오.

나는 계단식 방식으로 균등하게 간격을 두려고 시도하여 Arduino에 대한 모든 최종 연결을 위해 큐브의 한쪽 전체를 사용할 수 있도록 했습니다. 다음은 내가 사용한 회로도입니다.

네 개의 네거티브 레이어의 경우 각 레이어에서 하나의 와이어를 아래로 떨어뜨린 다음 다음과 같이 옆으로 잡아당겼습니다.

마지막으로 관련 Arduino 핀에 배치할 수 있는 몇 가지 플러그 와이어를 추가했습니다. 가지고 있는 가장 긴 종류를 사용하십시오. 참고 부실한 계획으로 인해 주문을 엉망으로 만들었습니다. LED의 각 행은 색상으로 구분되어 있습니다.

그게 다야 완성 된!

큐브 프로그래밍

이 일이 시작되기를 기다릴 수 없다는 것을 알고 있으므로 4개의 네거티브 레이어를 아날로그 I/O 항구 A2(하단) ~을 통해 A5(상층) (디지털 I/O 역할도 할 수 있음) . 그런 다음 16개의 LED 제어 핀을 꽂습니다. +1 맨 오른쪽에 에게 디지털 I/O 포트 0 , 와 함께 +15 그리고 +16 아날로그로 가다 A0 및 A1 . (AREF 및 GND를 사용하지 마십시오)

다운로드 데모 패턴 및 코드 지시 가능한 사용자로부터 포르테1994 . 그는 또한 제공 유용한 온라인 도구 자신의 시퀀스를 사용자 정의하기 위해 바이트 패턴을 디자인하기 위한 것입니다. 내 큐브에서 이 코드가 작동하는 동영상입니다. (기본 20이 아닌 5로 속도를 조정했습니다) .

온라인에서 모든 계정을 찾는 방법

물론 이것이 큐브를 프로그래밍하는 유일한 방법은 아니므로 몇 분 동안 자신만의 패턴을 만드는 기본 사항을 가르쳐 드리겠습니다. 프로그래밍 방식으로 , 위의 데모처럼 사전 설정 패턴을 재생하는 대신.

큐브를 프로그래밍할 때 알아야 할 몇 가지 사항이 있습니다.

  1. 단일 LED를 처리하려면 다음을 사용합니다. 비행기 (레이어) 번호 0–3 및 LED 핀 번호 0–15. 평면을 LOW 출력(음극 다리이므로)으로 돌리고 LED 핀 번호를 HIGH(양 다리)로 돌려 LED를 활성화합니다.
  2. 단일 LED를 활성화하기 전에 다른 모든 플레인이 꺼져 있는지 확인하십시오. 즉, HIGH 출력으로 설정해야 합니다. 이렇게 하지 않으면 단일 LED가 아닌 LED 열이 켜집니다.

이를 염두에 두고 조사할 두 개의 매우 간단한 프로그래밍 방식 시퀀스를 만들었습니다. 여기에서 코드를 다운로드하세요. 첫 번째는 단순히 모든 LED를 순서대로 하나씩 켜는 것입니다. 이를 위해 두 개의 for 루프를 사용하여 각 레이어와 각 제어 핀을 반복합니다.

두 번째는 임의 루프입니다(테스트하려면 첫 번째 루프를 주석 처리하고 메인 루프에서 활성화해야 합니다). 단순히 임의의 레이어와 임의의 제어 핀을 선택하여 켜고 끕니다.

요약

이 빌드에 겁먹지 마세요 - 저는 납땜 기술이 심각하게 부족하고 잘 처리했습니다. (제 생각에는?) . 총 빌드 시간은 일주일 동안 하루에 한 시간 정도였습니다. 다음 시간에는 큐브에 대한 좀 더 야심찬 프로그래밍을 가르치려고 하므로 이번 주에 자신만의 큐브를 만들고 다음 주에 새 코드를 로드하는 데 참여해 주시기 바랍니다. 멋진 앱이나 시퀀스가 ​​있으면 Pastebin에 업로드하고 댓글로 알려주세요!

공유하다 공유하다 트위터 이메일 이메일이 진짜인지 가짜인지 확인하는 3가지 방법

다소 의심스러운 이메일을 받았다면 항상 해당 이메일의 진위 여부를 확인하는 것이 가장 좋습니다. 이메일이 진짜인지 확인하는 세 가지 방법이 있습니다.

다음 읽기
관련 항목
  • DIY
  • 아두이노
저자 소개 제임스 브루스(707건의 기사 게재)

James는 인공 지능 학사 학위를 보유하고 있으며 CompTIA A+ 및 Network+ 인증을 받았습니다. 하드웨어 리뷰 편집자로 바쁘지 않을 때는 LEGO, VR 및 보드 게임을 즐깁니다. MakeUseOf에 합류하기 전에 그는 조명 기술자, 영어 교사 및 데이터 센터 엔지니어였습니다.

제임스 브루스가 참여한 작품 더보기

뉴스레터 구독

뉴스레터에 가입하여 기술 팁, 리뷰, 무료 전자책 및 독점 거래를 확인하십시오!

구독하려면 여기를 클릭하세요.