Hardware | Arduino 를 DIY 해보자 - 1

|

1. Arduino 를 실제로 만들어 보자


PCB를 직접 만들어 보고자 이곳저곳을 찾아 다니던 중,

BinGoon 이라는 분의 블로그를 알게 되었습니다.


* BinGoon 의 소소한(?) 일상

http://binworld.kr/


여기서 보게된 Arduino 직접 제작기.

http://binworld.kr/25?category=494229


원래 PCB 부터 설계, 프린팅부터 하는게 진정한 DIY 이긴 하지만, 준비할게 너무 많은지라

블로그에 안내된 대로 Arduino PCB를 무료로 보내주는 분에게 부탁하여 PCB 만 따로 받기로 합니다.


Board Lab (Board Free)

http://www.boardfree.kr/





2. Arduino 의 역사


Arduino 를 처음 시작할 때도 그랬지만, 그 종류가 많아 초보자가 처음 선택하기란 쉽지 않습니다.

자료를 찾고 알아가는 재미도 있지만, 처음에는 막막하더군요.


무료 PCB 주문을 위해, 어떤 Arduino 를 할 것인지 선택함에 있어서도 다시금 고민이 됩니다.

그래서 이번에 좀더 체계적으로 알아보기로 합니다.


기본적인 정보는, 아래 Wikipedia 를 참고했습니다.


* List of Arduino boards and compatible systems

https://en.wikipedia.org/wiki/List_of_Arduino_boards_and_compatible_systems


제작에 앞서 기준이 되는 것은 "최신 업그래이드 된 버전의 Arduino" 였습니다.

Arduino 도 햇수가 지나면서 최적화 되고, 새로운 버전들이 생겨났거든요.


이왕 만들꺼면 최적화가 가장 많이 이루어전 최신 arduino 로 하는게 좋다는 생각이었습니다.

과거 발전사를 한눈에 보려면 아래 arduino 사이트를 보면 됩니다.


* Arduino Older Boards

https://www.arduino.cc/en/Main/Boards


위의 Wikipedia 와 Arduino 두 사이트를 보고 정리된 발전 수순은 대략 다음과 같습니다.

(많이 쓰이는 메인 스트림 기준으로)


NG --> Diecimila --> Duemilanove --> Uno --> Leonardo --> Zero


Zero 는 2015년부터 정식 릴리즈 되었지만, 사양이 넘사벽이고 DIY 하기엔 너무 부품이 많습니다.

또한 무로 PCB 사이트에서도 제공되는 리스트에 포함되어 있지 않습니다.


그럼 Duemilanove / Uno / Leonardo 정도로 좁혀지는군요.





3. Arduino 중에서 어떤걸 선택해야 할까?


이제 하나씩 알아봅니다.


* Arduino Duemilanove

https://www.arduino.cc/en/Main/arduinoBoardDuemilanove



* 제작 연도 : 2009

* CPU : ATmega328P

* USB chip : FTDI FT232R

* USB socket : USB 1.0 Standard Type B


Improved : automatically switching between USB and external power, eliminating jumper


* ARDUINO UNO REV3

https://store.arduino.cc/usa/arduino-uno-rev3



* 제작 연도 : 2010

* CPU : ATmega328P

* USB chip : ATmega16U2

* USB socket : USB 1.0 Standard Type B


This uses the same ATmega328 as late-model Duemilanove, but whereas the Duemilanove used an FTDI chip for USB, the Uno uses an ATmega16U2 (ATmega8U2 before rev3) programmed as a serial converter.


* ARDUINO LEONARDO WITH HEADERS

https://store.arduino.cc/usa/arduino-leonardo-with-headers



* 제작 연도 : 2012

* CPU : ATmega32U4

* USB chip : USB controller built-in at CPU

* USB socket : USB 2.0 Micro B


The Leonardo uses the Atmega32U4 processor, which has a USB controller built-in, eliminating one chip as compared to previous Arduinos.


참고로 compact version 인 Nano 도 확인해 봅니다.


* ARDUINO NANO

https://store.arduino.cc/usa/arduino-nano



* 제작 연도 : 2008

* CPU : ATmega328

* USB chip : FTDI FT232R

* USB socket : USB 2.0 Mini B


역시 제작년도가 가장 최근(?) 인 2012년에다가 USB chip 이 내장되어 있어서 깔끔하며,

USB socket 도 휴대폰 충전용으로 가장 많이 쓰이는 USB micro B 인 "Leonardo" 로 결정합니다.







4. 선택의 재고


Leonardo 로 선택했지만, 몇가지 마이너한 문제가 있습니다.


* 제공되는 PCB 의 형태


BoardFree 에서 제공되는 Leonardo 의 부품들은 SMD 형태가 아니라,

예전 라이오 공작시 사용되는 큰 부품들을 사용할 수 있도록 제작되었습니다.



향후 여러가지 PCB를 직접 제작하여 회로를 꾸밀 때,

부품을 SMD 로 많이 준비하려 하려던 차라 이와 맞지 않습니다.


또한 왠일인지 USB socket 이 USB 1.0 Standard Type B 입니다.

결국 대상에서 제외할 수밖에 없네요.



* chip 실장의 난위도


그럼 그 다음 타자인 Uno 가 괜찮냐? 그건 또 아닙니다.
그 이유로는 USB 컨트롤로인 ATmega16U2 이 아래와 같이 생겼습니다.



실제로 납땜하게 되면 아래와 같은 모습이 되는데, 좋은 플럭스와 납땜 팁이 필요합니다.



결국 무난하게 "Duemilanove" 가 가장 적당해 보이는군요.

BoardFree 에서는 2가지의 PCB 를 보내주므로 "Nano" 도 함께 부탁하기로 합니다.


USB socket 은 micro USB 로 변환시켜주는 부품을 찾아서 해결해 보기로 합니다.





5. Part list 만들기

각 arduino 사이트를 가면 "EAGLE file" 이라는 것이 있습니다.
Autodesk 에서 만든 전자회로 설계 software 에서 읽을 수 있는 파일입니다.


이 파일을 통해서 회로를 볼 수 있습니다.

또한 export 를 통하여 part list, 즉 부품 리스트도 뽑아볼 수 있습니다.

간단한 사용법은 다음에 오는 포스트에서 설명하겠습니다.


* Software | 회로설계 프로그램 EAGLE 

http://chocoball.tistory.com/entry/Software-circuit-design-EAGLE


위의 방법을 통해 만들어진 Duemlianove 와 Nano 의 부품 리스트 입니다.


arduino-duemilanove-part-list.txt

nanov3.2-part-list.txt





6. BoardFree 신청 및 도착

신청서 양식대로 메일을 보내면 착불로 보내 줍니다.
전날 신청했는데 바로 그 다음날 도착했습니다! 고마운 분들이십니다.


PCB 부품이라서 부피가 그리 크지 않습니다.


뽁뽁이로 잘 쌓여 있습니다.
그리고, 2가지 PCB를 보내주시면서 서로 긁히지 않도록 중간에 명함도 끼워 주셨습니다.


짜잔~ Duemilanove 와 Nano 의 PCB 입니다.






7. PCB 의 품질

도착한 PCB 의 클로즈 업 사진입니다.


무료라서 기대하지 않아 그랬는지, 처음 받고나서 놀랬습니다.

품질이 예상 이상으로 좋았습니다. 쓰루홀도 정확했고, 프린딩도 좋았습니다.



무엇보다도 두께가 1.7mm 로 상당히 두껍습니다. 이렇게 좋은 품질일줄은 몰랐네요.

또한번 이자리를 빌어 감사의 말씀 드립니다.



앞면입니다.



뒷면입니다. 볼수록 깔끔하네요.



왼쪽 윗부분은 전원부 입니다. 아름답네요.



Nano 의 PCB 입니다.





8. 최종 부품 리스트 및 구매

Duemilanove / Nano 에 동일하게 들어가는 부품 포함하여 최종 리스트를 만들어 보려 했으나,
Nano 는 0603 SMD 기준이고, Duemilanove 는 0805 SMD 기준이라서 FT232RL 와 LED 빼고는 따로 구입해야 하네요.

우선 Duemilanove 부품만 최종 리스트업 해 봅니다.

-------------------------------------------------------------------------------------------------------
|                  name                  | value         | type                                       |
-------------------------------------------------------------------------------------------------------
| C1, C4, C5, C8, C9, C10, C11, C12, C13 | 100nF         | 0805 SMD                                   |
| C2, C3                                 | 22pF          | 0805 SMD                                   |
| C6, C7                                 | 100uF 35V     | Aluminum Electrolytic Capacitor            |
-------------------------------------------------------------------------------------------------------
| R1, R10, R11                           | 10k Ohm       | 0805 SMD                                   |
| R4, R5, R6, R7, R8, R9                 | 1k Ohm        | 0805 SMD                                   |
| L, PWR, RX, TX                         | LED           | 0805 SMD                                   |
-------------------------------------------------------------------------------------------------------
| D1                                     | M7 (1N4007)   | Rectifier Diode                            |
| F1                                     | 500mA 15V     | L1812 Resetable Fuse                       |
-------------------------------------------------------------------------------------------------------
| J1, J3                                 | 8             | single row female 2.54mm pitch pinhead     |
| J2, POWER                              | 6             | single row female 2.54mm pitch pinhead     |
| ICSP                                   | 6             | double row male 2.54mm pitch pinhead       |
| S1                                     | B3F-10XX      | OMRON B3F-10XX series switch               |
| X2                                     | DC-21MM       | 5.5/2.1mm female DC power jack plug socket |
| X4                                     | USB B type    | USB B type female socket                   |
-------------------------------------------------------------------------------------------------------
| IC1                                    | ATMEGA328P-PU | DIP28 8-bit Microcontroller                |
| IC2                                    | FT232RL       | SSOP28 USB UART interface IC               |
| IC4                                    | MC33269D-5.0  | 5V 800mA LDO voltage regulator             |
| IC5                                    | LM358D        | SOP8 Op Amp                                |
| Q2                                     | 16MHz         | HC-49S crystal oscillator                  |
| T1                                     | NDT2955       | SOT-23 MOSFET                              |
-------------------------------------------------------------------------------------------------------
| R2                                     | 100_NM        | no need to implement "no-mount"            |
| RESET-EN                               | jumper        | "auto-reset" on ATmega168                  |
| X3                                     |   JP4         | use like FTDI breakout board               |
-------------------------------------------------------------------------------------------------------


위에서 R2, RESET-EN, X3 과 관련한 부품은 실제로 실장할 필요는 없습니다.

이제 구매를 진행하고 납땜을 하면 되겠습니다.


Nano 부품 구입은 이번 프로젝트에 회사 동료를 한명 꼬셨으니, 그 분이 구입하도록 해야겠습니다. :-)

물론 제가 구입한 Duemilanove 부품은 2개 이상씩 구입했으니 나누면 됩니다.





FIN

부품이 도착하면 실제로 납땜해 보도록 하죠.

마지막 한가지, USB B type 은 아직 주문하지 않았습니다.
micro USB 로 변경하고 싶은데, PCB 모양과 micro USB 를 어떻게 붙여야 할지 모양이 나오지 않네요...

음... 어떻게 해야 할까?

And