Category (Click)
개발보드 덕질하기

[AiMate] 4. PCB 주문, 조립 그리고 테스트

 차완기 - @7/20/2023, 11:57:00 PM
team-androino AiMate 프로젝트
AiMate 프로젝트는 한국방송통신대학교 대구경부지역대학 컴퓨터과학과 androino 동아리에서 진행중인 2023년 스터디 및 메이킹 프로젝트입니다.
이 프로젝트에서 프로그래밍을 처음 접하는 팀원들을 대상으로 펌웨어 개발(아두이노 프로그래밍) 멘토 역할을 수행하고 있으며, 하드웨어 설계를 담당하고 있습니다. 아래 포스팅을 통해 프로젝트를 진행하며 겪은 여러 시행착오 과정을 소개합니다.
프로젝트가 한번 엎어지는 바람에 2~4편은 실제 결과물에 반영되지 않았습니다

PCB 주문

거버파일과 BOM, CPL 파일을 준비한 뒤 JLCPCB에 개발보드를 주문하였습니다.
처음 사용해보는 부품이 여럿 있어 Footprint 불일치로 취소당하는거 아닌가 걱정했는데, 다행히 잘 진행되었습니다.
일요일날 저녁에 주문해 그 주 수요일날 완성되었고, 금요일날 도착하였습니다.

납땜 시작

우선 테스트버전이기 때문에 2개씩 주문해보았습니다. 한 세트만 납땜하고 다른 한세트는 문제가 발생했을 때 디버깅용으로 사용할 예정입니다.

중간 점검

두 모듈을 결합하기 전에 전원부를 먼저 테스트하였습니다.
파워서플라이를 통해 Li-Ion 3S에 해당하는 11.1V를 공급하고 5V 출력 전압을 확인하였습니다. 의도한 대로 약 5.2V가 출력되는것을 확인하였습니다.
이제 본격적으로 전원부를 테스트해야겠죠. 전원의 켜짐과 자기 유지, 자기 유지 해제를 테스트하였습니다.
버튼을 클릭했을 때 5V 출력과 연결된 LED가 켜진 상태를 유지하고 자기 유지를 위한 단자(파란색)를 제거했을 때 자기 유지가 올바르게 해제되었습니다.
잘 작동하네요. 다음은 버튼 입력 신호가 정상적으로 출력되는지 확인하였습니다.
노란색 LED가 버튼의 클릭 신호입니다. 부 논리로 작동하기 때문에 버튼을 클릭했을 때 꺼지고 버튼을 누르지 않았을 때 다시 켜지는 것을 확인할 수 있었습니다.
10k 저항이 붙어있다 보니 밝기가 약하기는 하지만 LED를 켤 정도면 MCU에서 HIGH로 인식되기에는 충분해 보입니다.

결합

두 모듈을 결합하였습니다.

2차 점검

회로가 결합된 상태에서 MCU에서 전원을 제어할 수 있는지 테스트를 진행하였습니다.
MCU가 켜지면 전원 회로의 자기 유지 단자에 HIGH 신호를 보내고, 스위치를 길게 누르면 자기 유지 신호를 끊도록 펌웨어를 작성하였습니다.
잘 동작하네요. 대기전류가 발생하지 않는 점도 확인할 수 있었습니다.

포고 핀 납땜

얼마 뒤 해외에서 구매한 포고 핀 커넥터가 도착했습니다. 포고 핀은 라즈베리파이와 제어 회로를 연결할 때 사용하고 이 포고 핀을 통해 MCU와 SBC의 통신(UART), 음성 인식 모듈과의 통신(I2C, I2S)이 이루어집니다.
따라서 굳이 모든 핀을 다 납땜 할 필요는 없고 통신에 필요한 몇몇 핀들만 납땜해주면 됩니다.
ReSpeaker 2-Mics Pi HAT Schematic - (출처)
위 Schematic은 AiMate에서 사용하는 음성 모듈인 ReSpeaker으로, 온보드 LED와 커넥터의 스위치 등을 사용하지 않기 때문에 모듈 제어를 위한 I2C음성 데이터를 전송하는 I2S 단자만 연결해주면 되었습니다.
물론 MCU와 SBC의 통신을 위한 UART도 연결해야겠죠.
…라고 생각하다가 나름 기념비적인 첫 보드이니 이쁘게 모든 커넥터를 다 연결하기로 했습니다.
납땜을 편리하게 하기 위해 포고 핀을 모두 꽂은 후 라즈베리파이와 임시 결합한 후 납땜을 진행하였습니다.
포고 핀까지 결합하니 멋져보입니다 잠시 감상하고 가시죠 ㅋㅋ
PCB 제작이 완료되었으니 다음 포스팅부터는 다시 하드웨어 설계로 돌아갑니다!