'PCB'에 해당되는 글 8건

  1. 2021.01.19 Hardware | JLCPCB 에서 PCB 주문을 해보자 2
  2. 2020.11.02 Hardware | FILCO ZERO 키보드 수리기
  3. 2020.01.02 Hardware | PCB 세척용 IPA 와 토출기
  4. 2019.12.28 Hardware | 3D 아이 핫 마스크
  5. 2019.11.07 Hardware | Arduino Gemma 를 DIY 해보자 2
  6. 2019.10.23 Hardware | SMD 솔더링에 대한 고찰
  7. 2019.10.02 Hardware | SMD 부품 납땜용 오븐 취득기
  8. 2018.09.04 Software | 회로설계 프로그램 EAGLE 2

Hardware | JLCPCB 에서 PCB 주문을 해보자

|

이번 포스트는 PCB 를 전문 제작자 (PCB house) 에 의뢰해 보는 글 입니다.




1. Gerber 파일


PCB 생산 주문은 "Gerber" 파일이라는 것으로 업계가 통일되어 있는 듯 합니다.

다양한 회로 생성 어플이 존재하나, Gerber 로 export 가 가능하게 생태계가 꾸며져 있더군요.


Gerber 파일은, pattern, hole, silk, mask, drill 등, PCB 제작에 필요한 적층 정보를 따로 가지고 있는 파일들의 묶음 입니다.

참고로, 2-layer PCB 제작에 필요한 Gerber 파일 확장자는 다음과 같습니다.


- Top Layer : GTL

- Bottom Layer : GBL

- Solder Mask Top : GTS

- Solder Mask Bottom : GBS

- Silk Top : GTO

- Silk Bottom : GBO

- Drill Drawing : TXT

- Board Outline : GML/GKO


어플에 따라서는 다음과 같은 파일 포맷으로 Gerber 파일을 구성하기도 합니다.


*.cmp (Copper, component side)

*.drd (Drill file)

*.dri (Drill Station Info File) – Usually not needed

*.gpi (Photoplotter Info File) – Usually not needed

*.plc (Silk screen, component side)

*.pls (Silk screen, solder side)

*.sol (Copper, solder side)

*.stc (Solder stop mask, component side)

*.sts (Solder stop mask, solder side)


EagleKiCad 어플에 따라 Gerber 파일로 만드는 방식이 다릅니다.




2.Eagle to Gerber


brd / sch 파일이 존재하면, Eagle 파일 입니다.

Autodesk 사이트에서 Eagle 설치 파일을 다운로드 받습니다.



설치 후, 회로 파일 로딩 합니다. 하나는 회로도, 또 다른 하나는 PCB diagram 입니다.


이제, Eagle 파일을 불러 들였으니, Gerber 파일로 변환하면 됩니다.

CAM Processor 를 클릭합니다.



Output type 을 Gerber RS-274X 로 설정. 이게 일반적인 Gerber file format 이라고 하더군요.

오른쪽 하단의 "Process Job" 을 누르면 Gerber 파일을 생성해 줍니다.



생성된 Gerber 파일 디렉토리를 보면, DrillFiles 라는 폴더가 따로 보입니다.


Drill 정보를 가진 파일도 포함된 상태로 zip 파일을 만들어야 하므로, DrillFiles 폴더에서 "drill_" 이라고 시작하는 파일을 한데 모읍니다.



Gerber 파일 모음에 Drill File 도 옮겨서 하나의 zip 압축 파일로 만듭니다.



위의 방법은 수동으로 Gerber 파일 만드는 방법이고, 아래 방법으로 한 방에 할 수 있습니다.


Seeed Fusion 사에서 이미 template 를 만들어 놨습니다.

아래 순서로 메뉴로 들어가면, 2 Layer / 4 Layer 에 맞게 파일을 선택하면 됩니다.


CAM Processor > System Examples > Third Party > Seeed Fusion > SeeedFusion_2_layer.com



따로 파일이 생성되는 것도 아니고, 그냥 zip 파일 하나 바로 만들어 줍니다.



주문 할 JLCPCB 사이트에서 파일을 올리면, Drill 정보 포함 모두 문제 없이 Gerber 파일로 변환 되어 있는 것을 알 수 있습니다.





3. KiCad to Gerber


KiCad 파일에서 Gerber 파일 변환 방법은, 아래 PCBWay 사이트 정보를 참고 했습니다.


* Generate Gerber file from Kicad

https://www.pcbway.com/helpcenter/technical_support/Generate_Gerber_file_from_Kicad.html


우선 KiCad 설치 파일을 아래 사이트에서 다운로드 합니다.


* KiCad

https://kicad.org/download/



설치하는 OS 별로 선택하여 설치 파일을 다운로드 받습니다.



Gerber 파일 변환해 보다, 처음으로 KiCad 를 설치해 봅니다.



우선 KiCad 파일을 읽어 드립니다.



pro 확장자네요.



회로도 아이콘을 더블클릭 하여 open 합니다.



Plot 을 클릭합니다.



플로트 설정에서 아래와 같이 선택합니다.

괜히 다른 옵션들을 선택하면 PCB house 들에서 읽어 드릴 수 있는 포멧에서 벗어납니다.



여기서도 마찬가지로 Drill 파일을 따로 생성해야 합니다. 옵션도 가능 한 아래 옵션으로 선택해야 합니다.



메뉴에서 드릴 파일을 확인해 볼 수도 있습니다. PCB 위에 잘 위치하고 있네요.



2 Layer 이면서 TOP / BOTTOM 이 잘 통전되게 설계되어 있네요.



마지막으로 zip 파일 압축 시, drl 파일이 있는 것을 꼭 확인해야 합니다.





4. 주문


이제야 준비가 되었습니다. JLCPCB 사이트에서 주문을 하기 위해 파일을 올려 봅시다.


* JLCPCB

https://jlcpcb.com/



등록 합니다. 전 쉬운 방법인 Google 계정으로 사용자 등록 했습니다.



처음 유저 등록하면, 몇 가지의 쿠폰을 주지만, 20 USD / 30 USD / SMT 용 쿠폰을 줍니다.

첫번째 주문 특혜 -2 USD, 20 달러 이상 구매시 -5 USD 를 적용하니, 2 Layer X 5장 X 4 가지 PCB 를 약 2만원으로 주문할 수 있었습니다.



Gerber 파일을 업로드 합니다. 알아서 분석해 줍니다.



주문하고 싶은 PCB 용 Gerber 파일을 마구마구 올리면 됩니다.



Analysis Result 에서 Layer 나, Drill 사이즈를 꼭 확인해 봅니다.



Gerber Viewer 에서 전체 layout 도 확인 가능합니다.



Product Detail 에서 최종 정보를 점검합니다.



4종류, 기본 5장 주문에 14 USD 면 정말 저렴하군요.



Shipping Method 에서 DHL 을 선택하면 1주일 정도 걸리겠지만, 꽤 비쌉니다.

S.F Express Economy 를 선택하면 9 USD 정도로 배송비를 책정 할 수 있습니다.



이번에 주문한 Gerber 파일들 입니다.


cdm324_backpack.zip

display_i2c_c.zip

hb100_backpack.zip

HVRescue_Shield_r212_2020-12-24.zip



5. 배송


주문을 넣으면, 제조부터 배송 상황을 자세히 보여줍니다.



복수의 PCB 를 주문하면, JLCPCB 가 보유한 여러 군데의 공장에서 따로 만든 다음, 한 곳으로 모아서 배송하는 방식인 듯 합니다.

주문이 몰리더라도, 여러 공장에서 동시에 제조가 가능하고 묶음 배송까지 지원하니, 배송 상황만 봐도 만족스럽네요.



제조 과정도 아주 자세하기 보여줍니다. Drilling 을 꽤나 먼저 하는군요.



제조가 완료되면, 배송이 시작되었다고 알려 줍니다. 배송시의 사진도 찍어서 보여주네요.

중국 회사 치고는 신뢰가 많이 갑니다.





6. 도착


10일 정도 걸려서 도착. 일반적인 배송이 아니라, 인수자 확인부터 수령 사인까지 받아 갔습니다.

배송에 의한 유실은 확실히 막을 수 있겠네요.



재활용한 박스에 포장되어 왔습니다. 지구를 위해서는 오히려 호감이 갑니다.



아... 비호감 하나. 이런 악세사리는 쓰레기. 바로 분리수거 하여 버렸습니다.



각 PCB 는 진공 포장과 실리카겔로 수분 방어가 되어 있습니다.



비닐 재질도 두꺼워 적절합니다.





7. 품질


예상 했던 것 보다, 훨씬 품질이 좋습니다. 2 Layer TOP/BOTTOM 간의 연결도 좋고, 스텐실도 잘 세겨져 있습니다.



제조 시간도 빠르고, 배송도 문제 없었으며, 품질까지 좋으니 앞으로 계속 이용하게 될 것 같습니다.



Gerber 파일을 완벽히 재현해 놨네요. 살짝 납이 먹여져 있어 보호도 되어 있고.



5장이면 Sample 주문인데, 완전 Production 수준의 품질입니다.



이번 주말은, 그 동안 하고싶던 실장과 테스트로 행복 할 것 같습니다.


FIN


And

Hardware | FILCO ZERO 키보드 수리기

|

1. 필코 제로 키보드


언제 구입했는지 기억도 안나는 키보드 하나를 집에서 사용하고 있었습니다. 필코 케로 키보드.



기계식 키보드라 무겁고 알프스 백축이 사용된 제품입니다.

10년 이상이 지났지만, 전혀 눌림이 없고, 타이핑 할 때 경쾌한 소리를 내 줍니다.


그러다 얼마 전, 키를 하나 눌렀을 뿐인데, 2~3개의 인접한 키들이 입력되는 오류를 내기 시작하더군요.

필시 회로 패턴의 문제라고 생각하고, 분해하여 수리 도전.




2. 분해


구조는 단순해서, 뒷판의 나사 3개를 풀어주면 됩니다.



마지막 나사 하나를 못 찾아서 헤맸는데, AS 보증 확인용 스티커 밑에 숨어 있었습니다.

지금에 와서 정식 AS 고 나발이고 없으니, 과감하게 찟고 나사를 풀어 줍니다.





3. 오염


세월의 흔적인가요. 사이 사이 쓰레기가 엄.청.납.니.다.



OMG. 10년치 먼지다~.

청소기 돌릴 때, 가끔 쓱쓱 흡입해 준다고 했는데도 이정도네요.



화살표 키 근처는 뭔가 끈적한 것을 엎었는지, 노락색 물체가 굳어 있네요.





4. 키캡 분리


완벽하게 분해 후, 싹 세척하기 위해 키캡푸터 분리를 시작합니다.

전용 툴이 없으니, 두꺼운 전선을 키 주위에 감아서 뽑아주는 방식으로 키캡들을 분리 했네요.



104 개 이상 되는 키들을 한땀 한땀 제거해 줍니다.



희한하게도 밑에 위치한 ALT / Window 키들은 스위치까지 같이 뽑혀 버렸네요.



키보드 밑부분은 얇은 탓에 스위치 다리를 짧게 자르고 납땜이 얇게 되어 있더군요.



그런 이유로 키캡을 뽑았는데, 무우 뽑히듯 스위치까지 PCB 기판에서 분리되어 버렸네요.



다행히 잘 뽑혀서 그런지, 기판 패턴은 살아 있고, 뾰루지 나오듯 "뽁" 하고 적출된 흔적입니다.



PCB 기판을 덮고 있는 철제 상판도 액체로 인하여 부식된 부분들이 몇 군데 있습니다.





5. 스위치 분리


두 손으로 작업하느라 과정 사진은 없습니다.

한 손으로 납땜 부분을 지지고, 다른 한 손으로는 스위치를 잡아 뽑으면서 PCB 에서 스위치를 제거 했습니다.





6. 세척


키캡은 바가지에 담고, PCB 기판과 철판, 그리고 캐이스 플라스틱을 가지고 목욕탕으로.



잘 말리면 되므로 높은 수압으로 10년 이상 묵은 먼지를 씻겨 냅니다. 더러운거 엄청 나옴.



직사광선은 피하고 바람 잘 드는 선선한 응달에서 일주일 정도 말려 줬습니다.





7. 기판 패턴 보호


기판 뒷부분에 종이 테이프가 붙어 있는데, 이 부분이 액체로 적셔 지면서 시간을 들여 기판을 부식시킨 부분이 있습니다.



기판 위의 오염물질을 들뜨게 하기 위해, WD-40 을 뿌렸습니다.



부식이 진행되면서, 코팅이 벗겨져 패턴이 노출되어 있습니다. 고장의 원인 중 하나인 듯.



파이버글라스 팬으로 살살 문질러, 남아있는 오염물질과 썩어있는 코팅을 벗겨 냅니다.



납을 살짝 뭍인 인두로 패턴 위를 살짝 왕복해주면, 노출되어 있는 동판에 납 코팅이 됩니다.



PCB 코팅액을 발라주고 UV 램프로 구워주면 완벽히 보호가 됩니다.



패턴이 들떠 있는 부분은 록타이트로 붙여 줬네요.





8. 스위치 수리


스위치들을 뽑아 내면서 다리가 휜 부분을 바르게 펴 줍니다.



이렇게 오염되어 있네요.



99% 알콜로 최대한 깨끗하게 씻겨 줍니다. 물로 하면, 스위치 내부에 물이 침투하여 부식을 초래할 수 있으니 알콜을 사용.



스위치 뽑으면서 다리가 하나씩 잘려버린 스위치 두 개.



스냅으로 고정되어 있는 부분을 젖혀 줍니다.



그러면, 밑부분이 분리되면서 키 스위치 내부가 노출되게 됩니다.



내부를 살펴 보면, 흰 색 돌기가 내려오며 접접을 short 시켜, 키 입력이 되게끔 하는 구조네요.



내부 부속들을 펼치면 다음과 같습니다. 움직이면서 short 시키는 네모난 부분의 다리가 없어졌네요.



어떻게 수리할까 고민하다, 스테이플러 심을 이용하여 다리 모양을 만들어 줍니다.



고정 부분을 납땜을 살짝 뭍히면 완성. 이제 다리가 생겼습니다.



원래 모양대로 조립해 주고.



원래 다리는 얇은 모양인데, 스테이플러 다리로 바뀌면서 두꺼워 졌습니다.

밑 뚜껑의 다리가 관통할 구멍을 PCB 드릴로 넓혀 줍니다.



가장 조그마한 드릴로 했더니만 구멍이 너무 작아서, 꽤 두꺼운 드릴날로 마무리.



조심조심 밑부분의 뚜껑을 닫으면 완성입니다.



눌렀을 때, 제대로 통전이 되는지 테스터로 확인 했습니다. 잘 동작 하는군요.



혹시 모르니, 모든 스위치의 통전 체크를 해봅니다. 그러다, 외형은 멀쩡한데 전혀 반응이 없는 놈 발견.

분해해 보니, 안쪽이 완전 썩어 있습니다.



사포로 갈아내고 알콜로 닦아 내고 해서 빤닥빤닥하게 복구. (아마 아래 사진은 다른 스위치 분리 했을 때 사진으로 보임.)



모든 스위치 통전 테스트를 PASS.




9. 하우징 조립


조립은 분해의 역순이라 말하며 끝내고 싶으나, 이번에는 과정이 있습니다.

일단, PCB 와 철판을 고정하기 위해, 모서리와 가운데 부분에 몇 개의 스위치를 꼽아서 고정.



ESCAPE 키의 스위치가 모양잡기 좋은 모서리.



딱 이정도를 먼저 납땜 합니다.



다리 잃었던 스위치를 완벽히 복구 했지만, 혹시 나중에 문제가 생기더라도 자주 쓰지 않는 키로 할당하면 사용에는 문제 없을 듯 하여 검색.

가장 쓰이지 않는 키는 "Scroll Lock" 과 "Pause" 키.



나중에 작업하면 잊어버릴 수 있으니, 먼저 작업 해줍니다.



꼽은 후, 납땜 전에 다시 통전 테스트. 문제 없네요. 납땜 후, 여분의 길이를 잘라 줘서 이쁘게 마무리.



나머지 스위치들도 하나 하나 납땜 합니다.



납땜 완료 후, 뒷면 사진.



안정된 고정을 위해 납을 조금 많이 먹였네요.



USB 케이블을 PCB 소켓에 연결하고, 하우징에 맞게 선을 빼 줍니다.



뒷 판을 나사로 조여주면, 거의 완성해 가네요. 이제 키캡만 조립하면 됩니다.





10. 키캡 조립


키캡의 면들을 하나하나 모두 닦아 줍니다.



준비된 놈부터 하나씩 조립 시작. 키가 긴 것들은 지지대가 있으니, 끼워 줄 것 잘 끼워 주며 조립하면 됩니다.



순식간에 마무리.



완전 새것 느낌이네요.



PC 에 연결하니 LED 도 잘 들어 오네요.



인터넷에서 Keyboard Test 로 검색하여, 키보드의 키들이 정상인지 테스트 해주는 사이트 찾아 갑니다.

모든 키들을 눌러 보면서 테스트. 동시에 눌리는 문제 완전 해결.





FIN


다시 탄생한 FILCO ZERO 키보드.



수리 끝.



걸린 시간은 약 4일 (3주간 주말 이용)


And

Hardware | PCB 세척용 IPA 와 토출기

|

땜쟁이 취미를 해오면서 필요한 것 중 하나가 PCB 기판 세척제 였습니다.

지금까지는 약국에서 1,000 원에 판매하는 소독 알콜을 사용했었죠.


* Hardware | 납땜 주변 용품

- https://chocoball.tistory.com/entry/Hardware-soldering-gadgets



소독용 알콜의 문제는, 많지는 않지만 찐득한 불순물이 남는다는 것입니다.

이번에 컴퓨터 본체에 음료수가 스며들어, 본격적으로 닦아 내야 하는 미션이 생겼습니다.

제대로 세척되지 못하면, 거진 50만원 돈이 날라가는 것이라, PCB 세척에 적당한 용액을 구매하기로 했습니다.




1. IPA


PCB 세척제로는 TCE, MC, NPBr 등이 있다고 합니다만, 문제는 독성이 강하다는 점.

구석구석 끼어있는 먼지나 플럭스를 제거하기 위해 그만큼 세척 성능이 필요하겠지만, 발암물질이라 개인이 사용하기엔 위험합니다.

대체재로는 BCS 라는 친환경 제품이 있지만, 여전히 독성 문제가 있다고 합니다.


너tube 에서 회로 세척용으로 요즘 가장 많이 보이는 것은 "ISO-Propyl Alcohol" IPA - 이소프로필 알콜 입니다.

병원에서 사용하는 소독 원액이며, 묽게 해서 소독용으로 사용한다고 하니, 떔취미용으로는 가장 적절하다고 생각합니다.


* 땜쟁이/IPA(1L)/세척제/이소프로필알콜

- https://smartstore.naver.com/soldering/products/3537414485



예전에 검색할 때에는 큰 용량으로 비싼 값에 팔리고 있었는데, 요즘은 수요가 많은지 싸게 파는 제품이 있네요.




2. 토출기


이 제품도 너tube 에서 자주 보던 것인데, 담겨있는 용액의 정량을 펌핑해주는 용기 입니다.

보통 IPA 와 쌍으로 사용하더군요.


IPA 를 사면 대용량인데, 이 통에는 180ml 정도 넣어 놓고 소량씩 사용할 수 있게끔 되어 있습니다.


* 고급형 TECHCO 정량 인출기 정량 토출기 정량 인출 약품통 IPA 약품통

- http://jaegoro.com/shop/item.php?it_id=techco_disp



제가 구입한 것은 위의 사진의 왼쪽에 보이는, 팔각형 - 고급형 - 10,000 원 짜리 입니다.




3. 도착


역시 한국의 배송... 이틀만에 도착했습니다.



드.디.어! 본 용품을 보유하게 되었군요.





4. 자세한 사진


IPA 는 그냥 용액이니 패스하고, 토출기의 사진을 좀 올려 봅니다.

싱가포르에는 공장이 별로 없는데, 많이 팔리는 본 토출기는, 싱가포르 회사인 이 회사 제품인 듯 합니다.



펌핑하는 머리 부분은 스테인레스로 구성되어 있어서, 부식용 용액에 대해서도 내성을 가진다는 것을 알 수 있습니다.



뚜껑은 스넵 처리가 되어 있어서, 적은 힘으로도 열리고 닫히고 합니다.



손으로 머리를 누르면, 일정량만큼 품어져 나옵니다.



동영상 올라 갑니다.



이후로는 PCB 세척에 스트레스 받지 않고, 땜취미를 영위할 수 있게 되었습니다.



And

Hardware | 3D 아이 핫 마스크

|

1. 샤오미 아이 마스크


나이가 들어가면서 눈 관리의 중요성에 대해 몸으로 느껴지기 시작했습니다.

노안도 오기 시작 했고... ㅠㅠ


특히 직업이 IT 이고, 업무 자체가 하루 죙일 모니터를 보고 있어야 하니, 투수의 어깨가 밥줄 이듯, 눈이 저의 밥줄인 것이죠.


회사 동료로부터 아래 아이 마스크를 추천 받습니다.

그렇지 않아도 안과 병원에서 진료 후, 눈 맛사지기에서 맛사지 받고 가라고 할 때, 뜨거운 온수로 맛사지 하는 기계를 봤었거든요.

집에 하나 있으면 좋겠다... 라고 생각 했으나, 고가의 장비는 무리인지라 현실 가능한 아래 제품을 구입해 봅니다.


* Xiaomi Mijia Ardor 3D Stereoscopic Hot Compress Eye Mask Surround Heating Relieve Fatigue USB Type-C Powered for Work Study Rest

https://www.aliexpress.com/item/32936513901.html



1만 5천원 정도로 눈 맛사지를 받을 수 있으면 괜찮다고 생각함.



기계적인 맛사지는 아니고, 열선을 통한 눈 주위 혈류 증가를 촉진 시켜주는 방법 입니다.





2. 도착


도착샷은 예의.

큼지막한 박스로 배송되었습니다. 총 구매액이 30 USD 이지만, 6 USD 로 표기되어 있군요.



포장이 꽤 찌그러져 있습니다. 다행인건 깨질 물건이 아니라는 것 정도.



가족용까지 생각해서, 두 개 구매했습니다.



글로벌 판매용은 아니 듯, 모두 중국어로 표기 되어 있습니다.



뒷면에는 상세한 제품 설명이 씌여 있습니다.



내용물로는, 본체, 캐링 파우치, (충실한) 설명서, 그리고 USB 케이블 정도네요.



한 살이라도 어릴 때, 중국어 공부해 둘껄...



요즘 대세에 맞춰 USB Type-C 입니다. (굳이?!)





3. 재품 구석구석


소재가 면 종류가 아니고, 인공 섬유 재품인 것이 아쉽습니다.


만일을 대비해, 불에 잘 타지 않은 소재를 사용한게 아닌가 합니다만,

공장에서 약품 처리하고 나온 부분을 눈 주위에 바로 닿아야 하니, 조금 문제가 있습니다.



머리에 밴드처럼 두르고, 찍찍이로 고정하는 형태라 귀 윗부분이 쓸릴 수도 있으니, 천을 덧대어 놓은 부분은 좋네요.



전원은 USB Type-C 커넥터로 5V 를 인가 받습니다.


커넥터는 오른쪽에 자리잡고 있어,

누웠을 적에 USB 전원이 왼쪽에 있으면, USB 연장 케이블을 추가로 달아야 하는 등, 번거로워 집니다.



USB Type-C 라서 장점은, ㄱ 자로 꺾인 커넥터를 위/아래로 자유롭게 틀어줄 수 있습니다.



이렇게요.



머리에 쓰면 대략 이런 모양이 됩니다.





4. 총평


소개할 사진이 더 이상 없으니, 바로 총평 갑니다.


---------------------------------

[좋은 점]

1. 비교적 싼 가격에 눈 맛사지기를 구입 할 수 있다.

2. 내장 타이머가 있는 듯, 일정 시간이 지나면 꺼진다. (확실한 시간은 측정하지 않음)

3. 요즘 트랜드인 USB Type-C 커넥터 이다.

4. 귀와 접촉되는 부분을 덧댄 마감으로, 귀에 닿는 부분이 아프지 않다.


[안좋은 점]

1. 면 소재가 아니라서 조금 포근한 감이 떨어진다.

2. 재품을 받는 순간, 발암물질인 폴리에틸렌 냄새가 지독하게 난다.

---------------------------------


사실 이 제품의 문제는, 제조 공정에서 심하게 오염 되었을 환경 호르몬성 냄새 입니다.


도착 후, 전원은 넣고 구동했을 시, 내부에 남아있던 물질로 눈이 따가워서 사용 중지.

그 후, 강한 햇볕에서 1주일간 말렸으나, 전원은 넣고 구동했을 시, 내부에 남아있던 물질로 눈이 따가워서 사용 중지.

그 다음, 시간 날 때마다 전원 넣고 햇볕에 말려 봤으나, 여전히 눈을 감고 있어도 따가워 지는 것은 어쩔 수 없었습니다.


신체 중, 매우 예민한 눈에 관련된 제품에도 불구하고, 제조 후처리를 하지 않았거나, 인체에 유해한 물질을 이용한 제조로 인하여,

신나 같은 냄새와 눈 따가움으로 사용하기가 매우 곤란합니다.


AliExpress 를 통하여, 전자 부품들을 많이 구입하고 있어서, 제품들이 어떤 상태인지 잘 알고 있지만, 이건 아닌것 같아요.

신체에 직접 닿는 제품마저도 일반 전자 부품과 동일한 제조방식을 따른 듯한 이 제품은 구입하지 않는게 좋을 듯 합니다.


결과적으로 비추 합니다.

이런 발암성 제품을 나와 가족이 생활하는 집에 들여놓는 것은 매우 위험하다고 생각합니다.


참고로 12가지 환경호르몬에 대해 설명해주는 자료가 있어서 첨부합니다.


* 12가지 환경호르몬

12_EDC.pdf




5. 여담


버리기엔 조금 아까워, 여직 베란다에서 햇볕에 쪼여 말리는 중...



And

Hardware | Arduino Gemma 를 DIY 해보자

|

1. Arduino DIY


Arduino 및 테스트용 PCB 등을 무료로 나누어 주는 좋은 회사가 있습니다.


* Board Lab (Board Free)

http://www.boardfree.kr/


Board Lab (Board Free)

http://www.boardfree.kr/



출처: https://chocoball.tistory.com/search/boardfree [초코볼의 inside Tech]


버려지거나 중복되는 PCB 들을 무료로 나누어 주시는 것을 사이드업으로 해주고 계십니다. (고마운 분들)

혹시, 요청하실 분이 계시다면, 수량에 한계가 있으며 무료나눔이 회사의 본업이 아니다 보니, 최대한 조심해서 요청하세요.

보다 자세한 유념 사항은 사이트에 잘 기재되어 있으니, 꼼꼼히 읽어 주시길 바랍니다.


PCB 무료나눔을 통해, 부품공부나 SMD 실장에 대해 경험 할 수 있었습니다.

그 결과물로는 arduino 를 가지게 되는 것이죠. 지금까지 아래와 같은 과정이 있었습니다.


* Hardware | Arduino 를 DIY 해보자 - 1

http://chocoball.tistory.com/entry/Hardware-Arduino-DIY-itself-1


* Hardware | Arduino 를 DIY 해보자 - 2

http://chocoball.tistory.com/entry/Hardware-Arduino-DIY-itself-2


* Hardware | Arduino 를 DIY 해보자 - 3

http://chocoball.tistory.com/entry/Hardware-Arduino-DIY-itself-3


Arduino Nano 도 작업하고 있습니다만, 과정중에 ATmega328P-AU 부트로더에 막혀 있습니다.

아마 AliExpress 에서 fake CPU 가 왔거나, 제가 처음에 fuse bit 을 잘못 해서 그런 것 같아요.


머리를 식힐 겸, 나눔 받은 BL-303 이라는 것을 작업해 보기로 합니다.



* 보드프리

BL-303.pdf


* Arduino

arduino-gemma-schematic.pdf

arduino-gemma-reference-design.zip


본 보드는, ATtiny85 를 CPU 로 사용하는 소형 arduino 입니다.

예전에 ATtiny85 를 이용하여 비슷한 arduino 계열인 Digispark 를 만들어 봤으므로, 그리 어렵지 않을 것이라 생각해서죠.


* Hardware | ATtiny85 를 사용해 보자 - 1

https://chocoball.tistory.com/entry/Hardware-ATtiny85-1


* Hardware | ATtiny85 를 사용해 보자 - 2

https://chocoball.tistory.com/entry/Hardware-ATtiny85-2


* Hardware | ATtiny85 개발 보드를 이용하여 Digispark 를 DIY 하기

https://chocoball.tistory.com/entry/Hardware-Digispark-DIY-using-ATtiny85




2. Arduino Gemma


작업 할 BL-303 보드는 Arduino Gemma 라는 보드를 기본으로 만들어진 보드 입니다.

Arduino Gemma 는 Wearable IoT, 즉 의상이나 소형 IoT 컨트롤러 용으로 만들어진 arduino 입니다.


* ARDUINO GEMMA

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



지금은 성능 좋고 소형화된 CPU 들이 많이 나와서, 단종 되었습니다.

참고로, 이 Arduino Gemma 를 업그레이드 시킨, 그렇지만 기본은 동일한 제품이 Adafruit 에서 Trinket 이라는 제품이 있습니다.



CPU 는 같은 ATtiny85 지만 pinout 을 늘여서, 더 많은 확장성을 가지게 한 제품 입니다.



Adafruit 는 3V out 버전과 5V out 버전 두 가지로 나뉘는데, 제가 받은 PCB 는 5V/3.3V 둘 다 지원합니다.

보드프리는 PCB 설계가 뛰어난 것 같습니다.




3. SMD capacitor 구입


다른 arduino DIY 하면서, 왠만한 부품은 모두 구입 했는데, 0805 SMD 용 1uF 캐패시터만 가지고 있지 않아, 구입합니다.


* 0805 SMD Ceramic Capacitor Assorted Kit 1pF~10uF 50values*50pcs=2500pcs Chip Ceramic Capacitor Samples kit

https://www.aliexpress.com/item/2025088658.html



이왕 구입하는 김에, 다른 치수들도 함께 들어 있는 패키지로 구입했습니다.


1pF  / 1.5pF / 3pF  / 4.7pF /  5p  / 5.6pF / 6.8pF/ 8.2pF / 10pF

12pF / 18pF  / 20pF / 22pF  / 27pF / 30pF / 33pF

47pF / 56pF  / 68pF / 75pF  / 82pF

100pF(101) / 120pF(121) / 150pF(151) / 180pF(181) / 200pF(201)

220pF(221) / 330pF(331) / 390pF(391) / 470pF(471) / 560pF(561) / 680pF(681)

1nF(102) / 1.5nF(152) / 2.2nF(222) / 3.3nF(332) / 4.7nF(472) / 6.8nF(682) 

10nF(103) / 22nF(223) / 33nF(333) / 47nF(473) / 68nF(683) 

100nF(104) / 150nF(154) / 220nF(224) / 330nF(334) / 470nF(474) 

1uF(105) / 10uF(106)


참고로, 캐패시터 값 변환 공식을 여기에 올려 놓습니다. (Googling)


1 mF (millifarad, one thousandth (10−3) of a farad) = 1000 uF = 1000000 nF

1 uF (microfarad, one millionth (10−6) of a farad) = 0.000 001 F = 1000 nF = 1000000 pF

1 nF (nanofarad, one billionth (10−9) of a farad) = 0.001 uF = 1000 pF

1 pF (picofarad, one trillionth (10−12) of a farad)


도착샷은 예의.



단위가 자잘하게 나뉘는지라, 간략화한 표시로 구분하고 있습니다. 예를 들면 474 는 470nF. 






4. 납땜


Flux paste 를 올리기 전에, 필요한 부품을 도열 시켜 봅니다.



한땀 한땀 flux paste 를 올리고, SMD 부품들을 고정 시켜 놓습니다.



오븐에서 구워져 나오면 이쁘게 자리를 잡아 안착되었습니다.

정리가 필요한 부분은 인두기로 정리해 주면 됩니다. 부품 수가 적은지라 이번에는 따로 할게 없었네요.



Pin header 까지 납땜하면 끝.



USB 핀 쪽의 납땜 정리가 힘들었으나, 새로 구입한 T12-ILS 팁으로 깔끔하게 정리할 수 있었습니다.

작은 PCB 납땜은 필수적으로 극세사 납땜 tip 이 필요합니다.





5. Bootloader


Arduino 를 제작하는 데 있어서, 마무리 작업은 납땜 후, bootloader 를 입히는 작업 입니다.


Arduino Gemma 이지만, Adafruit 의 Trinket 의 bootloader 를 입힐 것이기에, 아래 Adafruit 사이트를 참고합니다.

동일한 ATtiny85 이므로, Digispark 의 bootloader 를 입혀도 될 것 같으나, 새롭게 Trinket 용으로 가 봅니다.


* Repairing bootloader

https://learn.adafruit.com/introducing-trinket/repairing-bootloader



Trinket 의 pinout 정보는 위와 같습니다.

이전에 만들어 봤던 Arduino Duemilanove 를 이용하여 bootloader 를 입혀 봅니다.


-----------------------------
| Trinket     | Duemilanove |
-----------------------------
| VBAT+ (Vin) |      5V     |
|    GND      |     GND     |
|    RST      |     D10     |
|    PB0      |     D11     |
|    PB1      |     D12     |
|    PB2      |     D13     |
-----------------------------


Adafruit 사이트를 참고하여 Duemilanove 연결 합니다.



위의 사이트에서 bootloader 를 입혀주는 sketch 를 Arduino IDE 에서 Duemilanove 에 업로드 해 줍니다.

기록을 남기기 위해 여기에도 파일을 옮겨 놓습니다.


trinketloader_2015-06-09.zip


Duemilanove 에 sketch 를 업로드 하고 Serial Monitor 를 연 다음, "G" 를 입력하면 자동으로 bootloader 를 입혀 줍니다.



다른 arduino 들 처럼, IDE 의 "burn bootloader" 를 이용하는 것이 아니라서 생소하지만, 무사히 완료 되었습니다.


Bootloader 가 문제없이 올라가면, 아래 동영상 처럼, ready 상태임을 나타내는 LED 가 천천히 밝아졌다 어두워 졌다 합니다.

Sketch 를 업로드 할 때, USB 칩이 없으므로, 스위치를 눌러 주어, 강제로 ready 상태를 만들어 줄 때의 모습입니다.





6. Windows Driver


FTDI 나 ATmega16U2 처럼, USB 전용 chip 이 달려있지 않은 보드 이므로, 관련 driver 를 인스톨 해줘야 합니다.

그냥 꽂으면 아래와 같이 나옵니다. "알 수 없는 장치..."



최신 드라이버는 아래 링크에서 받습니다.


* adafruit/Adafruit_Windows_Drivers

https://github.com/adafruit/Adafruit_Windows_Drivers/releases/tag/2.4.0.0


다운로드 받은 파일을 실행하여 드라이버를 인스톨 합니다.



저는 Trinket 만 필요하므로, "Trinket / Pro Trinket / Gemma (USBtinyISP)" 만을 선택해서 인스톨 했습니다.



드라이버가 인스톨 되고 나면, 아래처럼 "libusb-win32 devices" 라는 항목이 생기고, "USBtiny" 라고 기기를 인식합니다.



Windows OS 가 추가로 뭔가를 설치/설정 하기도 합니다.





7. Arduino IDE


납땜 > 부트로더 > Windows Driver 까지 왔으면, 그 다음은 Arduino IDE 설정 입니다.


File > Preferences > Additional Boards Manager URLs 에 아래 링크를 등록합니다.

이는 Board Manager 에 등록되어 선택할 수 있도록 하기 위함 입니다.


https://adafruit.github.io/arduino-board-index/package_adafruit_index.json


메뉴는 아래와 같습니다.

일전에 ESP8266 을 설치 했으니, 그 밑줄에다가 등록해 줍니다.



그러면 Board Manager 에서 Adafruit AVR Boards 를 등록할 수 있게 됩니다.



짜잔~! 이제 Board 메뉴에서 아래처럼 선택할 수 있게 됩니다.


Tools > Board > Adafruit Trinket (ATtiny85 @ 8MHz)


16MHz 를 사용해도 될 듯 한데, 내부 기본 oscillator 가 8MHz 라고 하니, 안전하게 8MHz 로 선택합니다.

16MHz 는 소프트웨어적으로 doubling 한다고 하는데, 아직 필요하지 않으니...



Programmer 는 "USBtinyISP" 를 선택합니다.

이는 여러번 이야기 되었듯이, USB chip 이 없기 때문입니다.



여기까지 오면, 관련된 설정은 이제 모두 끝났습니다.

이후는 Happy Coding 인거죠!




8. Blink


실제로 Trinket 화 된 Arduino Gemma 에게 일을 시켜 봅시다.

센서를 연결해서 확인해도 되지만, 가장 간단한 PCB 상의 LED 점멸을 시켜 보아요.


* Setting up with Arduino IDE

https://learn.adafruit.com/introducing-trinket/setting-up-with-arduino-ide


소스는 위의 Adafruit 사이트 것을 그대로 사용했습니다.


/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.
 
  This example code is in the public domain.

  To upload to your Gemma or Trinket:
  1) Select the proper board from the Tools->Board Menu
  2) Select USBtinyISP from the Tools->Programmer
  3) Plug in the Gemma/Trinket, make sure you see the green LED lit
  4) For windows, install the USBtiny drivers
  5) Press the button on the Gemma/Trinket - verify you see
     the red LED pulse. This means it is ready to receive data
  6) Click the upload button above within 10 seconds
*/

int led = 1; // blink 'digital' pin 1 - AKA the built in red LED

// the setup routine runs once when you press reset:
void setup() {
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop() {
    digitalWrite(led, HIGH); 
    delay(1000);
    digitalWrite(led, LOW);
    delay(1000);
}


Sketch 주석에도 잘 설명이 되어 있듯이, 소스를 업로드 할 때에는 필히 스위치를 눌러서 ready 상태로 만들어야 한다고 나와 있습니다.

이게 타이밍을 맞춰야 해서, IDE > Trinket 에 밀어넣는 순간이, ready 10 초 안에 진행 될 수 있도록 해야 합니다.



성공하면, 위와 같이 다른 arduino 와는 다른 과정들을 보여 줍니다. 아무래도 USB chip 부재...


avrdude: Version 6.3-20171130
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

         Using Port                    : usb
         Using Programmer              : usbtiny
avrdude: usbdev_open(): Found USBtinyISP, bus:device: bus-0:\\.\libusb0-0001--0x1781-0x0c9f
         AVR Part                      : ATtiny85
         Chip Erase delay              : 400000 us
         PAGEL                         : P00
         BS2                           : P00
         RESET disposition             : possible i/o
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    12     4    0 no        512    4      0  4000  4500 0xff 0xff
           flash         65     6    32    0 yes      8192   64    128 30000 30000 0xff 0xff
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
           lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00

         Programmer Type : USBtiny
         Description     : USBtiny simple USB programmer, https://learn.adafruit.com/usbtinyisp
avrdude: programmer operation not supported

avrdude: Using SCK period of 10 usec
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e930b (probably t85)
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: Using SCK period of 10 usec
avrdude: reading input file "C:\Users\chocoball\AppData\Local\Temp\arduino_build_87390/sketch_nov06a.ino.hex"
avrdude: writing flash (700 bytes):

Writing | ####avrdude: 5 retries during SPI command
#####avrdude: 7 retries during SPI command
####avrdude: 8 retries during SPI command
#####avrdude: 7 retries during SPI command
####avrdude: 7 retries during SPI command
#####avrdude: 8 retries during SPI command
####avrdude: 9 retries during SPI command
#####avrdude: 8 retries during SPI command
####avrdude: 8 retries during SPI command
#####avrdude: 8 retries during SPI command
##### | 100% 0.42s

avrdude: 700 bytes of flash written
avrdude: verifying flash memory against C:\Users\chocoball\AppData\Local\Temp\arduino_build_87390/sketch_nov06a.ino.hex:
avrdude: load data flash data from input file C:\Users\chocoball\AppData\Local\Temp\arduino_build_87390/sketch_nov06a.ino.hex:
avrdude: input file C:\Users\chocoball\AppData\Local\Temp\arduino_build_87390/sketch_nov06a.ino.hex contains 700 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.13s

avrdude: verifying ...
avrdude: 700 bytes of flash verified

avrdude done.  Thank you.


자세한 과정 log 는 위와 같습니다. 동영상으로도 올려 봅니다.



좀더 다른 sketch 는 다음 링크를 참고해 보세요.


* Programming with Arduino IDE

https://learn.adafruit.com/introducing-trinket/programming-with-arduino-ide


Duemilanove 다음으로 성공한, 두 번째 arduino DIY 되겠습니다.

모두 Happy DIY!


And

Hardware | SMD 솔더링에 대한 고찰

|

1. SMD


Surface-Mount Device 의 약자로, PCB 기판을 뚫고 납땜하는 것이 아닌, PCB 기판 위에 바로 납땜할 수 있는 부품을 일컫습니다.


결과적으로 PCB 의 상하부 양면을 다양한 부품들로 채울 수 있고,

부품 자체를 소형화 할 수 있어, 제한된 공간 안에 많은 부품을 실장할 수 있는 장점이 있습니다.

다만, 작아진 부품 크기로 인해, 일반 인두기로는 한계가 있습니다.


그리하여, SMD 납땜은 다음과 같은 준비가 필요합니다.


- Solder Paste : 납 알갱이와 flux 가 결합된 paste. 가열하면 이쁜 납 접점이 만들어 집니다.

- 액체 Flux : 비교적 낮은 온도로 납을 녹여 패턴을 정리할 수 있슴.

- 온풍기 : 작은 소자에 열을 가해야 하므로, 인두기가 아닌 뜨겨운 바람으로 가열해 주는 장비.

- 트위저 : 핀셋 같은 것으로, 작은 부품을 세밀하게 위치시킬 수 있는 기구.


Arduino 를 DIY 하면서 SMD 실장을 하게 되었고, 그 시행착오 과정을 공유해 봅니다.




2. Solder Paste


솔더 페이스트는 주걱으로 떠서, 스텐실 위에 바르는 형식과, 주사기 같은 형식이 있습니다.


* High quality 35GSolder Paste Flux Original HK MECHANIC Soldering Paste XG-40 XG-50 XG-Z40Solder Tin Sn63/Pb67 For soldering iron

https://www.aliexpress.com/item/32957538277.html



스텐실이 없어 불필요함에도, 왜 구입했는지 이유는 모르겠지만, 깡통형과 주사기형 둘다 구입했습니다.



주사기형은 위와 같습니다. 183 도쯤에서 녹는다고 하네요.

구글에서 찾은, Solder paste 가 발라진 모양을 보면 아래 사진과 같습니다. 저게 녹아서 깔끔한 납접점을 만들어 줍니다.

인두기로 지져서 하는 납땜과는 결과물이 하늘과 땅 차이 입니다.





3. Solder Paste 주둥이


위의 주사기형 solder paste 는 조금씩 사용하기에는 주둥이가 너무 넓습니다.

조금씩 짜서 사용하려면, 주사기 바늘같은 제품이 필요합니다.


* 10pcs/set Dispensing Needles Syringe Tip Needle 1.5" Length 14 Gauge Syringes for Mixing Many Liquid

https://www.aliexpress.com/item/32978438776.html



위의 링크에서 구입했습니다.



도착샷은 예의 입니다.



각각 따로 구입한 solder paste 와 바늘.



설마 맞을까 했지만 기우.



딱 들어맞고 고정되는 바늘.






4. 트위저


끝이 뭉툭한 일반 핀셋으로는 힘들고, 끝부분이 첨예하게 만들어져 있는 트위저가 필수 입니다.


* 1/6 PCS Anti-static ESD Stainless Steel Tweezers Maintenance Tools Industrial Precision Curved Straight Tweezers Repair Tools

https://www.aliexpress.com/item/32955271790.html



도착샷은 예의.



2천원 정도에 이정도 제품이면 만족.



이 정도로 예리해야 조그마한 SMD 부품들을 집어서 원하는 위치에 안착시킬 수 있습니다.



오무렸을 때, 이렇게 끝이 딱 맞아야 사용하기 편합니다.



살짝 꺾인 트위저가 손목이 편한 상태로 작업이 가능합니다.



딱 2천원 정도의 품질. 많이 아쉬운 부분.



비교적 길이가 긴 부품을 잡을 수 있는 트위져.



강철로 만들어져 있어서, 끝 맞춰 보겠다고 구부려서 구부려지는게 아님.






5. 주사기


액체 Flux 를 적당량 뿌리기 위한 주사기도 필요합니다.

일반 약국에서 500원인가... 주고 샀던 기억이 (확실하지 않지만, 매우 저렴).



그냥 사용하기에는 너무 위험하니, 끝부분을 잘라냅니다.



액체 플럭스를 주입하고 사용하면, 엄청 경제적으로, 소량 / 적정량을 사용 가능합니다.

주사기를 활용하기 전까지는 거의 들이 붙다 싶이 하여, 필요 없이 많이 낭비했습니다.


액제 플럭스 구입기는 아래 링크 참조.


* Hardware | 납땜 주변 용품

https://chocoball.tistory.com/entry/Hardware-soldering-gadgets






6. 열풍기 / 오븐


열풍기로는 부분적으로 가열할 수 있어, 원하는 부분만 땜을 할 수 있습니다.

오븐을 이용하더라도 solder paste 를 녹일 수 있습니다.


다만, 오븐을 사용하면, PCB 전체를 가열하게 되므로, 작업을 한방에 해결할 수 있도록 밑작업이 필요합니다.

오븐 취득기는 아래 눈물의 포스트를 참고해 보세요.


* Hardware | SMD 부품 납땜용 오븐 취득기

https://chocoball.tistory.com/entry/Hardware-SMD-soldering-oven-salvage


오븐을 이용하여 solder paste 를 녹이면, 다음 동영상처럼 진행됩니다.

바쁘신 분은 40초부터 보시길.



제가 구한 오븐을 가지고 작업하면, solder paste 가 녹는 온도인 183도까지 대략 3분정도 걸립니다.

(알기 쉽도록 아래 사진에서는 타이머 10분부터 시작)


"쪼륵~" 하면서 붙는 모습을 지켜 보는 것이, 왠지 모를 쾌감.






7. Solder Paste 납땜의 주의점


아래는 실패한 arduino duemilanove 기판입니다. 좋은점과 실패한 부분을 하나씩 짚어 보죠.



- 빨간색 화살표 : solder paste + 오븐 작업 후, IC 다리가 서로 붙은 상태로 완성되는 경우가 많습니다.

인두기 + 액체 flux 로 살짝씩 지져주면서 정리해 줍니다.


- 파란색 화살표 : LED 전극이 잘못된 것을 알고, solder wick 으로 납을 제거 후, 기판에서 때어 내려고 했으나,

납이 완전히 제거되지 않은 상태에서 힘을 가해버려, PCB 기판 패턴이 일어나버린 상태. 이것때문에 이 기판은 폐기.


- 노란색 화살표 : solder paste 를 아주 조금만 했으나, 가장 적절하고 이쁘게 붙은 케이스.

부족하다 싶을 정도만 solder paste 를 도포하는 것이 맞는 방법인 듯 합니다.



위의 사진은 일반 인두기로 땜한 작품.

열이 너무 많이 가해지거나, 납이 필요 이상 많아진 결과를 보여줍니다.



일반 인두기로는 패턴이 부품 밑으로만 만들어져 있는 납땜은 거의 불가능 합니다.

Oscillator 바닥에 만들어진 패턴에 어찌어찌 인두기로 작업 했으나, 너무 많은 열을 가해서 정상 작동하지 못할 것으로 예상.

그 외의 부분은 납이 필요 이상 많은 경우.



Solder paste 끼리 가깝게 도포되었을 경우, 서로 붙어버리는 결과가.

오픈에서 구운 다음, 빨리 식힌다고 바로 꺼내면, 미처 굳지 못한 납으로 인하여 부품이 떨어져 버리는 결과도 생김.

시간을 충분히 들여, 완전히 식을 때까지 기다리는 것이 필요.



Solder paste 도포 후, 부품 실장 시, 살포시 올려만 놓으면, 삐뚤삐툴하게 고정됩니다.

Solder paste 도포한 위에, 부품을 꾹 눌러서 안착시키는 것이 필요.



더욱이 부품이 확실히 붙지 못하고 분리되어 버릴 수도 있슴.



부족하다 싶은 정도가 가장 적절.



대략 이런 모양으로 되면 best.



빨간색 사각형 안은, 전원 관련 부품들이 올라갈 부분이며, 패턴 면적도 크므로, 일반 부품보다 많이 도포한 케이스.

파란색 사각형 안은, 밀집된 IC 다리일 경우, 지그재그로 하면, 서로 붙지도 않고 후처리 필요 없는 깔끔한 땜이 됨.



Before.



After. 어때요? 잘 되었죠?

(4개 기판 실패 후, 겨우 성공)



세밀한 다리를 가지는 IC 는 최소한의 solder paste 만을 사용.




8. 양면 기판일 경우


양면 PCB 의 경우는 한쪽을 굽고, 열을 차단시키는 캡톤 테이프로 감쌓아,

반대편 작업 시, 먼저 작업한 부품들이 이탈되는 것을 방지.



양면 PCB 기판이지만, 위의 과정을 통해 성공한 케이스.



뒷면도 깔끔하게 마무리 되었습니다.



시행착오를 꽤 겪었지만, 하나씩 알아가는 것이 즐겁습니다.

이 경험들을 바탕으로, 최종적으로 성공한 arduino DIY 글을 올려보도록 하겠습니다.


And

Hardware | SMD 부품 납땜용 오븐 취득기

|

1. SMD 부품의 납땜


일전에 Arduino Nano 의 PCB 만을 구해서 DIY 했더랬습니다.


* Hardware | Arduino 를 DIY 해보자 - 2

https://chocoball.tistory.com/entry/Hardware-Arduino-DIY-itself-2



결국은 실패 했고, 그 원인 중 하나로는 SMD 납땜을 일반 인두기를 이용했기 때문이라고 생각했습니다.

그래서, soldering paste 를 활용하는 열풍기를 만들어야 겠다고 생각했고, 그에 따른 12V 전원을 위해 PC Power Bench 가 필요했습니다.


모두 DIY 로 진행하던 중이라, 부품 수급과 시간이 많이 걸리고 있었습니다. 그러다가 새로운 국면을 맞이하게 됩니다.





2. 득템


이 글 제목이, 왜 "구매기" 가 아니라, "취득기" 라고 제목을 붙였냐면,

저의 땜취미를 싫어하는 가족들의 비난을 조금이라도 회피하고자, 쓰레기장에서 "줏어" 왔기 때문입니다.



다만, 상태가 아래와 같이 전원선을 잘라 놨네요...

(재활용은 허락치 않겠다라는 굳은 의지)






3. 수리 항목


우선 잘려진 전원선을 구해다, 끊어진 부분과 이어줘야 합니다.



구조는 아주 간단합니다.

+, - 선과 접지선을 전원선과 이어주면 됩니다.

우선 필요한 부품은, 전원 케이블과 끊어진 부분을 서로 이어지는 커넥터네요.


전원 케이블은 주위에 굴러다니는, 굵고 아름다운 전원선을 사용하기로 합니다.



커넥터 부분은 납땜 + 절연 테이프를 사용해도 되나, 깔끔하게 작업을 진행하고자 커넥터를 따로 구입하였습니다.


* 단선 연선 복합꽂음커넥터 1P 2P 3P / 전선연결단자

http://shopping.interpark.com/product/productInfo.do?prdNo=747212445



전선 연결단자는 LED 전등으로 바꿔줄 시에도 필요한 부품이라, 1P 100 개 들이 1봉을 배송비 포함 10,500원에 구입했습니다.





4. 수리 진행


연결할 부분을 과감하게 자릅니다.



뾰롱~! 작업 하느라 사진을 못 찍어, 중간 과정 생략.



각 전선 3개 피복을 벗기고, 테스터기로 +/- 확인하여 전열선으로 연결해 줍니다.

접지선에는 남는 선 하나를 연결해 주면 끝납니다.



확실히 전선 연결 커넥터를 이용하니, 작업 시간이 엄청나게 짧아집니다.

좋은 공구와 자재는 작업 효율을 극대화 하는군요.



전원선 굵기가 너무 굵어, 기존 고정 부품이 구멍에 다 들어가지를 못합니다.

느슨해 지면 안되므로, 피복 벗기고 난 고무를 덧대었습니다.


이것으로 작업은 완료.




5. 온도 측정


작동 확인과 SMD 부품 납땜에 사용되는 solder paste 가 녹을 수 있는 온도까지 온라 가는지 확인해 봤습니다.



후훗, 작동도 잘 되고 150 도까지 무난하게 올라 갑니다.





6. 적합 테스트


납 알갱이가 버무려진 solder paste 로 테스트 해봅니다.



웃... 183 도가 필요했군요.



시험삼아 동판에 발라서 구웠더니만, 잘 녹고 굳었습니다.

계속 전원을 인가하면, 상한선 없이 계속 온도가 올라갑니다. 적절한 온도에서 전원을 차단하는 것이 포인트네요.


신기하게도, soldering paste 는 물처럼 녹았다가 물방울들이 모이듯 접점으로 납이 모여듭니다.

손으로 하는 납땜기술이 전혀 필요가 없습니다.


Arduino Duemilanove 의 PCB 를 가지고 테스트 해 봤습니다.



잘 되었는데, 확실하게 한다고 너무 구워버려 기판이 좀 탔네요. ㅠㅠ

납이 녹고 붙으면, 오래 끌지 않고 전원을 차단하는게 중요해 보입니다.





7. 이번에 확인한 사실들


* 온도 조절이 최종 품질을 좌우한다. 약 200 도 정도가 maximum.

* 온도 조절을 위해서 oven 용 온도계도 검토해 본다.

* SMD 를 기판에 바른다는 느낌의 납만 필요하므로, 부족하다 싶을 정도로 solder paste 를 발라 놓는다.

* 180 도 이상에서 납이 붙으므로, 플라스틱 재질이 들어간 부붐이나 열에 약한 부품은 따로 납땜한다.


SMD 부품을 올리는 arduino DIY 프로젝트에 속도가 붙을 것 같습니다.

많이 기쁩니다.


And

Software | 회로설계 프로그램 EAGLE

|

1. 회로 설계


가끔 필요한 도구를 기성품으로 구입하기에는 돈이 아깝고, 이왕 하는 김에 나만의 기판을 만들어 보고싶었습니다.

물론 간단하게 만들꺼면, 빵판을 사서 납땜하면 됩니다.



다만, 결과물이 깔끔하지 못하고 쇼트 등의 문제가 발생할 수 있습니다.

이왕 이쪽으로 발음 담궜으니, 본격적으로 PCB 회로를 만들어 보려고 합니다.


이럴때 맨 먼저 필요한것은 회로를 설계하는 것이죠.





2. EAGLE


대학 시절 OrCAD 라는 것으로 회로를 설계해 봤으나, 평가판으로 기초적인 설계였고,
앞으로는 상용적으로 사용되고 있는 버전으로 익혀보려고 찾아 봅니다.


Arduino 의 PCB는 공유되어 있으니, 공식 사이트에 가서 확인해 봅니다.
EAGLE Files 라고 되어 있네요.

EAGLE 이 이쪽 계열에서는 무엇인지 찾아봅니다.


EAGLE은 Autodesk 가 만든, 전문 회로 설계 어플입니다.





3. 설치해 보자


Autodesk 의 EAGLE 페이지 가면, "Free Download" 가 있습니다.



취미생활과 간단한 것을 만드는 사람들에게 적합하다 하네요.

저를 가르키는것 같습니다.


Free 하지만, single side - 즉 멀티 레이어나 듀얼 레이어가 아닌,

한면 layer 만을 가지고 만들꺼면 충분한 기능 (저에게는 과한 기능)을 제공합니다.



파일을 다운로드 받고 설치하면 해당 directory 가 생성됩니다.

"eagle.exe" 파일을 실행시키면 문제없이 실행됩니다.


요즘 최신 버전은 9.1.3 이군요.

버전이 upgrade 되면, 기존 폴더로 덮어 쓰는게 아닌 새로운 폴더를 또하나 만들어서 생성합니다.

아마 실행화일에 대해 예전 version 호환성 관리를 안하는 프로그램 같습니다.






4. 부품 리스트를 생성해 보자


지금 계획하고 있는 것은 Arduino 를 자체적으로 만들어 보자 입니다.

그러기 위해서는 어떤 전자 부품을 구입해야 하는지 part list 를 알아야 하는데,
internet 을 뒤져도 마땅한 정보가 없네요.

EAGLE 에서는 확인이 가능합니다.

우선 arduino 공식 사이트에서 EAGLE file 을 다운로드 받습니다.
압축을 풀면 그 중에 brd 라는 확장자 파일이 있어요.


이름으로부터 예상할 수 있듯이, 보드 정보 파일입니다.



파일을 열면, 도면 및 칫수 정보가 싸그리 다 나옵니다.



여기서, "File > Export > Partlist" 를 선택하면, 부품 리스트를 얻을 수 있습니다.



* Duemilanove Partlist : arduino-duemilanove-part-list.txt





FIN


위에서 추출한 부품 리스트 입니다.

Part     Value          Package       Library      Position (mil)        Orientation

C1       100n           C0805RND      rcl          (1870 990)            R180
C2       22p            C0805RND      rcl          (1620 1210)           R0
C3       22p            C0805RND      rcl          (1405 1210)           R180
C4       100n           C0805RND      rcl          (710 805)             R0
C5       100n           C0805RND      rcl          (710 685)             R0
C6       100u           PANASONIC_D   rcl          (1075 225)            R90
C7       100u           PANASONIC_D   rcl          (755 225)             R90
C8       100n           C0805RND      rcl          (795 1780)            R0
C9       100n           C0805RND      rcl          (1870 1210)           R180
C10      100n           C0805RND      rcl          (620 1780)            R0
C11      100n           C0805RND      rcl          (785 1030)            R0
C12      100n           C0805RND      rcl          (950 505)             R0
C13      100n           C0805RND      rcl          (1095 945)            R0
D1                      SMB           diode        (710 505)             R180
F1       500mA          L1812         rcl          (560 945)             R0
IC1      ATMEGA8        DIL28-3       atmel        (1825 645)            R180
IC2      FT232RL        SSOP28        SmartPrj     (700 1500)            R0
IC4      MC33269D-5.0   DPACK         linear       (300 685)             R90
IC5      LM358D         SO08          linear       (960 730)             R180
ICSP     ICSP           2X03          pinhead      (2555.51181 1098.0315) R270
J1                      1X08          pinhead      (2150 2000)           R180
J2                      1X06          pinhead      (2250 100)            R0
J3                      1X08          pinhead      (1290 2000)           R180
L                       0805RND       led          (1095 1655)           R180
POWER                   1X06          pinhead      (1550 100)            R0
PWR                     0805RND       led          (2325 1440)           R0
Q2       16MHz          HC49/S        crystal      (1525 1055)           R180
R1       10k            R0805RND      rcl          (1870 1100)           R0
R2       100_NM         R0805RND      rcl          (1095 1035)           R0
R4       1k             R0805RND      rcl          (1095 1305)           R180
R5       1k             R0805RND      rcl          (1095 1570)           R180
R6       1k             R0805RND      rcl          (2150 1440)           R0
R7       1k             R0805RND      rcl          (1095 1740)           R0
R8       1k             R0805RND      rcl          (1095 1125)           R180
R9       1k             R0805RND      rcl          (1095 1215)           R180
R10      10k            R0805RND      rcl          (940 945)             R0
R11      10k            R0805RND      rcl          (785 945)             R0
RESET-EN                SJ            jumper       (450 1330)            R270
RX                      0805RND       led          (1095 1390)           R180
S1                      B3F-10XX      switch-omron (2173.0315 1067.47244) R0
T1       NDT2955        SOT223        zetex        (240 1010)            R90
TX                      0805RND       led          (1095 1485)           R180
U$1      FIDUCIALMOUNT  FIDUCIA-MOUNT SmartPrj     (776.77165 2004.72441) R0
U$2      FIDUCIALMOUNT  FIDUCIA-MOUNT SmartPrj     (2469.68504 1644.09449) R0
U$3      FIDUCIALMOUNT  FIDUCIA-MOUNT SmartPrj     (146.85039 134.25197) R0
X2       DC21MMX        DC-21MM       powersupply  (210 330)             R90
X3                      JP4           jumper       (710 1175)            R180
X4                      PN61729       SmartPrj     (150 1500)            R270


바로 봐서는 뭐가 뭔지 모르겠지만, Part / Value / Package 정보를 가지고 구글링 등을 통하여 해당 부품을 확정할 수 있습니다.


익혀야 할 것이 하나 더 생겼네요. 아이 즐거워~.


And
prev | 1 | next