Arduino 초보자가 하지 말아야 할 10가지 실수

Arduino 초보자가 하지 말아야 할 10가지 실수

Arduino 보드와 그 뒤를 이어 나온 많은 저렴한 마이크로컨트롤러는 취미 전자 제품을 영원히 바꿔 놓았습니다. 전자 및 컴퓨팅에 대한 광범위한 지식으로 무장한 슈퍼 괴짜의 영역이 이제는 모두가 사용할 수 있습니다.



하드웨어 가격은 항상 떨어지고 있으며 온라인 커뮤니티는 항상 성장하고 있습니다. 우리는 이전에 다루었습니다 아두이노 시작하기 , 그리고 많이 있다 훌륭한 초보자 프로젝트 당신을 알게 하기 위해, 그래서 바로 뛰어들지 않을 이유가 없습니다!

하지만 오늘은 이 세상을 처음 접하는 사람들이 자주 범하는 몇 가지 실수와 이를 피하는 방법에 대해 알아보겠습니다.





파워업!

대부분의 Arduino 보드에는 보드에 전원 레귤레이터가 있습니다. 즉, USB 또는 전원 공급 장치에서 전원을 공급할 수 있습니다. 각 보드는 정확히 무엇을 취할 수 있는지에 차이가 있지만 일반적으로 7-12v DC 배럴 잭 또는 VIN 핀을 통해 입력합니다. 이것은 우리의 첫 번째 실수를 멋지게 보여줍니다.

1. 외부에서 보드에 '역방향' 전원 공급

이 첫 번째는 항상 사람들을 사로잡습니다. 배터리 또는 전원 공급 장치에서 보드에 전원을 공급하는 경우 다음을 확인해야 합니다. V + 에 간다 와인 핀, 그리고 지면 와이어가 간다 접지 핀. 이것을 거꾸로 이해하면 보드를 완전히 튀길 수 있습니다.



이 명백한 오류는 생각보다 자주 발생하므로 전원을 켜기 전에 항상 전원 설정을 확인하십시오!

공기에서 튀긴 Arduino의 냄새가 나면 이것이 주된 이유입니다. 두 번째로 가장 가능성이 높은 것은 무언가가 보드에서 너무 많은 전류를 끌어오려고 했기 때문입니다. 보드가 제공할 수 있는 양과 비교하여 구성요소에 필요한 전력량을 아는 것이 중요합니다.

이에 대해 알아보기 전에 권력 배후의 이론을 간단히 살펴보겠습니다.

시사

마이크로컨트롤러로 작업하는 데 있어 필수적인 부분은 전자공학의 기초를 아는 것입니다. 천재 전기 엔지니어가 될 필요는 없지만 다음을 이해하는 것이 중요합니다. 볼트 , 앰프 , 저항 , 그리고 그것들이 어떻게 연결되어 있는지. Sparkfun은 우수한 전자공학 입문서 , 설명하는 여러 동영상과 함께 전압 , 현재의 (암페어) 및 옴의 법칙 (저항).

구성 요소에 필요한 전력의 양을 정확히 이해하는 것은 Arduino 보드 작업에 필수적인 부분입니다.

2. 핀에서 직접 구성 요소 실행

이것은 프로젝트에 바로 뛰어들기를 열망하는 많은 사람들을 사로잡습니다. Arduino 핀과 함께 일부 저전력 구성 요소를 직접 사용할 수 있습니다. 그러나 많은 경우에 이렇게 하면 Arduino에서 너무 많은 전력을 끌어내어 마이크로 컨트롤러가 손상될 위험이 있습니다.

여기서 최악의 범죄자는 모터입니다. 저전력 모터조차도 다양한 속도의 전력을 끌어오기 때문에 일반적으로 Arduino 핀과 직접 사용하는 것이 안전하지 않습니다. 모터를 사용하는 진정한 DIY 방법을 위해서는 H-브릿지 . 이 칩을 사용하면 보드를 튀길 위험 없이 arduino 핀을 사용하여 DC 전원 모터를 제어할 수 있습니다.

이 작은 칩은 Arduino에서 전원 공급 장치를 분리하고 모터가 양방향으로 움직일 수 있도록 합니다. DIY 로봇 또는 원격 제어 차량에 적합합니다. 이 칩을 사용하는 가장 쉬운 방법은 Arduino용 실드의 일부로 사용할 수 있습니다. 알리익스프레스에서 이하 , 또는 모험심이 느껴진다면 항상 당신만의 것을 만드세요 .

Arduino와 함께 모터를 사용하는 초보자를 위해 Adafruit에는 다음을 사용하는 자습서가 있습니다. 둘 다 칩 자체 그리고 그들의 브레이크 아웃 모터 실드 .

릴레이 및 MOSFET

다른 전기 구성 요소 및 가전 제품은 더 예측 가능한 양의 전력을 끌어올 수 있지만 여전히 마이크로컨트롤러에 직접 연결되는 것을 원하지는 않습니다. 5v LED 스트립도 위험할 수 있습니다. 테스트를 위해 몇 개를 보드에 직접 부착하는 것도 괜찮지만 일반적으로 외부 전원을 사용하고 릴레이를 통해 제어하는 ​​것이 더 좋습니다. MOSFET .

둘 사이에는 차이점이 있지만 취미 전자 제품 내의 많은 응용 프로그램에서 기능적으로 동일합니다. 둘 다 Arduino에 의해 켜지거나 꺼지는 전원과 구성 요소 간의 스위치 역할을 할 수 있습니다. 릴레이는 그것을 제어하는 ​​회로와 완전히 분리되어 있으며 온/오프 스위치로만 기능합니다. Dejan Nedelkovski는 릴레이 사용에 대한 좋은 비디오 소개를 가지고 있습니다. 튜토리얼 기사 .

MOSFET은 펄스 폭 변조 (PWM) 아두이노 핀에서. LED 스트립이 있는 MOSFET 사용에 대한 입문서는 다음을 확인하십시오. 궁극의 가이드 Arduino에 연결하는 것입니다.

3. 브레드보드에 대한 오해

시작할 때 일반적인 오류는 단락을 일으키는 것입니다. 이는 회로의 일부가 있어서는 안 되는 위치에 결합되어 전원이 따라야 하는 더 간단한 경로를 제공할 때 발생합니다. 이렇게 하면 회로가 제대로 작동하지 않고 최악의 경우 튀긴 구성 요소나 화재 위험이 발생할 수 있습니다!

브레드보드를 ​​사용할 때 이를 방지하려면 브레드보드가 어떻게 작동하는지 이해하는 것이 중요합니다. Science Buddies의 이 비디오는 친해질 수 있는 훌륭한 방법입니다.

여기서 중요한 측면은 각 보드에서 레일이 작동하는 방식을 기억하는 것입니다. 전체 및 절반 크기 브레드보드에서 외부 레일은 수평으로 작동하고 내부 레일은 수직으로 작동하며 보드 중간에 틈이 있습니다. 미니 브레드보드에는 수직 레일만 있습니다.

브레드보드의 단락을 방지하는 가장 쉬운 방법은 장치의 전원을 켜기 전에 작업을 확인하는 것입니다. 그 마지막 순간의 시선은 많은 불행을 덜어줄 수 있습니다!

4. 납땜 사고

Arduino 또는 구성 요소를 프로토보드에 납땜할 때, 특히 Arduino Nano와 같은 더 작은 보드에서 동일한 문제가 발생할 수 있습니다. 필요한 것은 두 핀 사이에 작은 땜납 덩어리가 있으면 단락을 일으켜 마이크로컨트롤러를 망가뜨릴 수 있습니다. 이것을 피하는 유일한 방법은 경계하고 가능한 한 납땜을 연습하는 것입니다.

처음 시작할 때 납땜은 상당히 섬세하고 어려운 작업으로 보일 수 있지만 시간이 지남에 따라 훨씬 쉬워집니다. 초보자를 위한 프로젝트 가이드는 브레드보드에서 프로토타이핑의 세계로 나아가고 있는 모든 사람에게 도움이 될 것입니다!

5. 잘못된 핀까지 배선하기

마이크로컨트롤러로 작업한다는 것은 핀으로 작업하는 것을 의미합니다. 대부분의 구성 요소와 많은 보드에는 프로토보드에 부착하기 위한 핀이 함께 제공됩니다. 어떤 핀이 원하는 대로 작동하는지 확인하는 데 중요한 역할을 하는 핀을 아는 것입니다.

일반적인 예는 앞서 언급한 MOSFET입니다. MOSFET의 세 다리를 , 물을 빼다 , 그리고 원천 . 이들 중 하나를 혼합하면 전원이 잘못된 방향으로 흐르거나 단락이 발생할 수 있습니다. 이것은 MOSFET, Arduino, 기기를 파괴할 수 있으며, 운이 좋지 않다면 세 가지 모두를 파괴할 수 있습니다!

사용하기 전에 항상 구성 요소의 데이터 시트 또는 핀 배치를 찾아 정확히 어떤 핀이 어디로 가는지, 얼마나 많은 전력을 사용해야 하는지 결정하십시오.

6. 코드의 구문 오류

Arduino의 하드웨어 측면에서 벗어나 코딩할 때 많은 실수를 하게 됩니다. 가장 일반적인 오류는 다음과 같습니다.

  • 줄 끝에 세미콜론 누락
  • 괄호 유형 누락/잘못
  • 철자 오류

위의 문제 중 하나라도 경미하더라도 프로그램이 제대로 작동하지 않게 됩니다. Blink 스케치를 예로 들어 보겠습니다. 아래는 도움말 텍스트가 제거된 Arduino IDE에 포함된 간단한 Blink.ino 스케치입니다. 얼핏 보기에는 다소 괜찮아보이죠?

void setup() {
pinMode(LED_BUILTIN, OUTPUT)
}
void loop {
digitalWrite(LED_BUILTIN, HIGH);
delay{1000};
digitalwrite(LED_BUILTIN, LOW);
delay(1000);

이 코드는 컴파일되지 않으며 5가지 이유가 있습니다. 그것들을 살펴봅시다:

  1. 2행: 세미콜론이 없습니다.
  2. 5행: 함수 대괄호가 없습니다.
  3. 7행: 잘못된 유형의 대괄호.
  4. 8행: DigitalWrite 기능의 철자가 잘못되었습니다.
  5. 8/9행: 닫는 중괄호가 없습니다.

코드는 다음과 같아야 합니다.

void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
}

이러한 각각의 오류는 사소하지만 프로그램 작동을 중지합니다. 무엇이 잘못되었는지 정확히 말하는 것은 처음에는 상당히 답답할 수 있지만 시간이 지나면서 훨씬 쉬워집니다. Arduino 프로그래밍에 익숙해지기 위한 좋은 팁은 대부분의 경우 구문과 형식이 다른 프로그램 간에 동일하기 때문에 참조할 수 있는 다른 프로그램을 열어 두는 것입니다.

Arduino 코딩이 코딩에 대한 첫 번째 시도라면 환영합니다! 배우는 것은 보람 있는 취미이며 특정 유형의 프로그래머에 대한 수요를 감안할 때 경력의 큰 변화가 될 수 있습니다! 코더로서 배울 수 있는 좋은 습관이 있으며 이러한 습관은 모든 프로그래밍 언어에 적용되므로 일찍 배울 가치가 있습니다.

7. 연속적인 넌센스

직렬 모니터는 Arduino의 콘솔입니다. 여기에서 Arduino의 핀에서 가져온 데이터를 보내고 텍스트를 읽기에 친숙하게 표시할 수 있습니다. 불행히도 이미 많은 분들이 알고 계시겠지만 항상 이렇게 간단하지는 않습니다.

일을 작동시키려는 초기에는 마이크로컨트롤러를 직렬 모니터로 인쇄하도록 설정하고 완전히 말도 안되는 소리 외에는 아무 것도 얻지 못하는 것보다 더 실망스러운 것은 없습니다. 다행히도 거의 항상 쉬운 솔루션이 있습니다.

코드에서 직렬 모니터를 시작할 때 해당 모니터도 설정합니다. 전송 속도 . 이 숫자는 단순히 직렬 모니터로 전송되는 초당 비트 수를 나타냅니다. 아래 예에서 전송 속도는 코드에서 9,600으로 설정되어 있습니다. 직렬 모니터 하단의 드롭다운 메뉴를 사용하여 동일한 값으로 설정했는지 확인하십시오. 그러면 모든 것이 올바르게 표시되어야 합니다.

직렬 모니터에서 선택할 수 있는 몇 가지 속도가 있음을 알 수 있습니다. 많은 양의 데이터를 전송하는 경우가 아니면 전송 속도를 변경할 필요가 거의 없습니다. 9,600에서 직렬 모니터는 초당 거의 1,000자를 인쇄할 수 있습니다. 그렇게 빨리 읽을 수 있다면 축하합니다. 당신은 분명히 마법사입니다.

8. 누락된 라이브러리

Arduino에 사용할 수 있는 광범위하고 계속 증가하는 라이브러리 목록은 신규 사용자가 Arduino에 쉽게 액세스할 수 있도록 하는 것 중 하나입니다. 숙련된 코더가 작성하고 무료로 제공하는 라이브러리를 통해 복잡한 코딩을 몰라도 개별 주소 지정이 가능한 LED 스트립 및 날씨 센서와 같은 복잡한 구성 요소를 사용할 수 있습니다.

다음을 선택하여 IDE에서 직접 라이브러리를 설치할 수 있습니다. 스케치 > 라이브러리 포함 > 라이브러리 관리 라이브러리 브라우저를 불러옵니다.

라이브러리를 설치하면 모든 프로젝트에서 라이브러리를 사용할 수 있으며 대부분은 자체 예제 프로젝트와 함께 제공됩니다. 여기에는 두 가지 가능한 함정이 있습니다.

  • 가지고 있지 않은 라이브러리가 필요한 코드를 사용합니다.
  • 프로젝트에 포함하지 않은 라이브러리의 일부를 사용하려고 합니다.

첫 번째 경우에 프로젝트에 완벽해 보이는 코드 조각을 찾았지만 IDE에 코드가 있으면 컴파일을 거부하기만 하면 아직 설치하지 않은 라이브러리가 포함되어 있지 않은지 확인합니다. 이것을 보면 확인할 수 있다. #포함하다 코드 상단에 있습니다. 아직 설치하지 않은 항목이 포함되어 있으면 작동하지 않습니다!

두 번째 경우에는 반대 문제가 있습니다. 컴퓨터에 설치한 라이브러리의 기능을 사용하고 있고 코드가 컴파일을 거부하는 경우 현재 작업 중인 스케치에 라이브러리를 포함하는 것을 잊었을 수 있습니다. 예를 들어 환상적인 금식 네오픽셀 LED 스트립이 있는 라이브러리를 추가하려면 # 'FastLED.h' 포함 코드 시작 부분에 라이브러리를 찾도록 알립니다.

9. 플로팅 어웨이

두 번째 실수로 부동 핀을 살펴보겠습니다. 플로팅이란 핀의 전압이 변동하여 판독값이 불안정하다는 것을 의미합니다. 이것은 버튼을 사용하여 Arduino에서 무언가를 트리거할 때 특정 문제를 일으키고 원치 않는 동작을 초래할 수 있습니다.

이것은 주변 전자 장치의 원치 않는 간섭으로 인한 것이지만 Arduino의 내부 풀업 저항을 사용하여 쉽게 대응할 수 있습니다.

이 비디오에서 추가옴 문제 및 해결 방법을 설명합니다.

10. 달 촬영

이것은 특정한 문제가 아니라 인내의 문제입니다. Arduino를 사용하면 아이디어 프로토타이핑을 시작하고 시작하기가 매우 쉽습니다. 어려운 프로젝트가 빠른 학습 경험을 제공하는 것은 사실이지만 작게 시작할 가치가 있습니다. 시도하는 첫 번째 프로젝트가 매우 복잡하면 위의 문제 중 하나에 빠지게 되어 좌절감을 느끼고 잠재적으로 전자 제품에 문제가 생길 수 있습니다.

마이크로컨트롤러로 작업할 때 가장 좋은 점은 배울 수 있는 프로젝트의 양이 엄청나게 많다는 것입니다. 복잡한 조명 시스템을 만들 계획이라면 간단한 신호등 시스템으로 시작하여 계속 진행할 수 있는 기반을 제공할 것입니다. 거대한 LED 스트립 라이트 쇼를 만들기 전에 PC 케이스 내부와 같은 테스트 실행으로 더 작은 것을 시도해 보십시오.

각각의 작은 프로젝트는 Arduino 컨트롤러 사용의 또 다른 측면을 가르치며, 당신이 알기도 전에 이 영리한 작은 보드를 사용하여 전체 삶을 제어하게 될 것입니다!

학습 곡선

Arduino에 대한 학습 곡선은 초심자에게는 상당히 벅차게 보일 수 있지만 전용 온라인 커뮤니티는 학습 과정을 훨씬 덜 고통스럽게 만듭니다. 이 기사에서와 같은 쉬운 실수를 조심함으로써 많은 좌절감을 피할 수 있습니다.

이제 어떤 실수를 피해야 하는지 알았으니 자신만의 Arduino를 구축해 보세요. 어떻게 작동하는지 배울 수 있는 이보다 더 좋은 방법은 없습니다.

USB 플래시 드라이브를 사용하는 방법

자세한 내용은 VS Code 및 PlatformIO를 사용한 Arduino 코딩을 살펴보십시오.

이미지 크레디트: SIphotography/ Depositphotos

공유하다 공유하다 트위터 이메일 Windows 11로 업그레이드할 가치가 있습니까?

Windows가 새롭게 디자인되었습니다. 그러나 Windows 10에서 Windows 11로 전환하도록 설득하기에 충분합니까?

다음 읽기
관련 항목
  • DIY
  • 아두이노
저자 소개 이안 버클리(216건의 기사 게재)

Ian Buckley는 독일 베를린에 거주하는 프리랜스 저널리스트, 음악가, 공연자 및 비디오 프로듀서입니다. 글을 쓰지 않거나 무대에 오르지 않을 때는 미친 과학자가 되기 위해 DIY 전자 제품이나 코드를 만지작거리고 있습니다.

이안 버클리가 참여한 작품 더보기

뉴스레터 구독

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

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