Posts

Showing posts with the label TPS61090

ASRock BC-250 보드 RAZER CORE X CHROMA 에 설치하기 5

주문 제작 하였던 브라켓이 도착하였다.  재질은 철이 아니고 알루미늄이라 그런지 상당히 가볍고 잘못하면 휘어질 것 같은 느낌이 든다. 제작하고 수령하기 까지 거의 3주라는 긴 시간이 걸렸다. 원래 이렇게 까지 걸리진 않는데 원인은 가공 엔지니어로 부터 온 메일을 확인하지 않고 3일이나 흐른 뒤에 답장을 하였고, 연말 기간도 걸려서 늦어져 버렸다. BC-250 카드에 기존 브라켓을 제거하고 새로 설계한 브라켓을 달아보니 아주 잘 맞았다. 버튼도 잘 눌리고 이더넷, USB, DP 포트 모두 사용에 문제가 없다. 이렇게 보고 나서 알아차린 부분이지만 하단 쪽에 고정 다리를 추가한다는 것을 빼먹었다. 다시 만드는 건 금액도 만만치 않았기 때문에 수정해서 발주를 다시 넣지는 않을 예정이고 튼튼하게 고정하기 위해 다른 솔루션을 찾아 보려고 한다. 사실 브라켓을 설계한 건 설치 문제도 있지만 완성된 시스템이 외관상으로 봤을 때 튀는 부분 없이 완성도가 높아 보이길 원했기 때문이다. 이렇게 보니 모양도 그럴싸하고 원래 이런 제품일지도 모른다는 착각도 든다. 타공 모양도 벌집 모양으로 했으면 더 완벽했겠지만 만드는 동안에는 그런 생각 없이 만들었기 때문에 큰 후회는 없다. 장착 되어있던 USB 허브 보드 대신 사용될 PCB도 도착하였다. 기존 허브 보드와 비교하자면 사이즈만 많이 커졌지만 브라켓과 호환이 되는지 확인하였고 장착하는 데는 문제가 없을 것으로 예상하고 있다.  지금 보니 오디오 앰프가 꼭 있어야 했는지 살짝 욕심이 과했다는 생각도 든다. 조립에 사용될 부품들은 아직 수급 중이며 차근차근 조립을 해 나갈 예정이다. 먼저 설계했던 PSU 전원 컨트롤 보드는 다음과 같이 장착 되었고 주요 동작에는 큰 이상이 없으나 몇 가지 수정 사항이 생겼다. 수정 사항은 허브 보드을 새로 설계하면서 발생한 것으로 두 보드 간에 별도의 통신 선이 연결된다. 사실 이렇게 기능을 분리할 필요는 없었는데 첫 번째로 만든 보드에서 하드웨어 적으로 누락된 기능이 있기 때문에 허...

RP2040 개발보드 설계 2

Image
지난번 설계에 이어서 전반적인 레이아웃이 수정되었다. 먼저 지난번 보다 더 많은 포트를 구성하여 배열하였다. ADC 기준 전압을 외부 창조하기 편하게 하였고 GND 와 3.3V 전압 포트가 추가 되었다. 오른쪽에 새로운 보드는 리튬 충/방전 모듈로 5.1V 의 전압을 출력하도록 설계되었다. 이 모듈을 상단에 장착할 경우 BOOTSEL 버튼이 가려지기 때문에 별도의 BOOT 버튼을 추가해 주었다. 본래 리튬 충/방전 회로를 하나의 보드에 구성하려 했지만 너무 과한 설계가 되는것 같아 모듈형식을 생각해보았다. 이번에 추가된 기능적인 부분으로 보드가 USB와 VIN 전원소스를 선택할 수 있도록 하였다. 왼쪽이 기존 설계이고 오른쪽이 새로설계된 보드의 모습이다.보드는 기본적으로 USB 전원을 사용하여 구동되지만 VIN 입력이 있는경우 VIN 전압소스를 선택하여 사용하도록 설계하였다. 리튬 충/방전 모듈은 충전과 전원 공급을 동적으로 관리할수 있도록 설계되어 충전중에도 안정적인 전원공급이 가능하다.

Raspberry Pi Zero W/2W - 게임보이 만들기 4 - 샘플 테스트

Image
샘플을 주문하여 PCB 납땜을 하면서 설계하면서 발견하지 아쉬운 점들이 하나 둘 발견되었다.  첫 번째로 원활한 테스트에 필요한 테스트 포인트 설계를 누락 했다.  이게 없어서 PCB 도 너무 지저분해졌고 회로 찾아가며 테스트 하는데 너무 많은 시간을 소비했다.  두 번째로는 디스플레이 백라이트 설계가 완전히 잘못되었다. 지금 생각하면 너무 바보 같은데 회로도 설계시 심볼을 회전하면서 결선이 틀어진 모양이다. 일단 테스트는 백라이트 컨트롤 없이 항상 켜져있도록 만들어두고 테스트를 하였다    전원부의 경우 예상했던 5.15V 보다 높은 5.18V을 얻게 되었다.  이 정도의 전압도 사용에 큰 문제가 되지는 않지만 정확한 값을 얻기 위해서는 가변저항을 사용하는 것이 좋아 보인다. 큰 문제는 USB 에 특정 장치들을 연결할 때 발견되었다. 충전이 가능한 제품 중에서 연결하면 무조건 5W 이상을 끌어가도록 설계된 제품들이 있는데 이런 제품들이 문제였다. TPS61230의 최대 출력은 2.1A 이기 때문에 저방전 배터리를 사용하면 1.2A 이상 끌어가는 상황이 오면 시스템이 불안정해지면서 전원부가 셧다운된다.  가장 먼저 Raspberry Pi OS 를 설치해보았다. USB 장치와 microSD 카드도 잘 인식되고 컨트롤러도 잘 인식이 되었다. 구현된 모든 인터페이스는 잘 작동됨을 확인하였다. 사용자의 손길이 필요한 부분은 디스플레이와 오디오 출력 말고는 없어 보인다. RetroPie 의 경우 Wi-Fi 드라이버를 직접 넣어줘야 하지만 그 외에는 Raspberry Pi OS 와 동일하다. RecalBox는 Raspberry Pi OS 와 많이 다르기도 하고 화면 출력과 네트워크 드라이버 부분에 좀 더 연구가 필요하다. 디스플레이는 2.8 인치 ili9341 TFT 를 사용했으며, RetroPie 와Raspberry Pi OS에서 fbcp-ili9341 드라이버를 사용하여 구동 시킬 수 있었다. fbcp-il...

Raspberry Pi Zero W/2W - 게임보이 만들기 2 - 전원부 설계

Image
새로운 IC 를 헌팅 하면서 데이터시트를 보고 하는 회로도 작성은 재미있지만 아트워크 만큼은 지루함의 연속이다. 기구설계와 함께 해야 하는 아트워크는 많은 시간이 소요되는데, 가능하면 PCB 에 각 부품을 배치하면서 사이즈를 가늠한 다음 3D CAD 프로그램으로 하우징 설계를 먼저 하는 것을 선호한다.  아트워크 작업은 인테리어와 같다고 볼 수 있다. 효율이냐, 안전이냐, 깔끔하냐, 개판이냐, 둘 다 전문성이 높을수록 안전하고 효율적으로 깔끔한 작업이 가능한 것 같다.  그러나 개판인지는 누가 개판이라고 하기 전까진 스스로 깨닫기 힘들다.  마치 나는 내 방이 정리 정돈이 잘 되어 있다고 생각하지만 항상 엄마는 개판이라고 하는 것 처럼 말이다.  개판처럼 보여도 그 안에도 철학과 질서가 있다고 생각한다. 아래 사진은 이번에 새로 만들고 있는 게임보이의 PCB의 전원부이다.  수동 소자의 경우 현미경이 없기 때문에 가능한 큰 부품들을 사용했다. 작은 부품들은 현미경 없이 작업하면 하루만에 시력 저하를 느낄 수 있다. 전반적인 설계를 보자면 U4 가 배터리 충전 관리를 하고 U3 가 U4가 보내는 DC 전압을 승압 시켜준다. PCB 레이아웃은 가능한 권장 설계를 따라서 만들어서 그런지 큰 고민 없이 금방 끝난 부분 같다.  IC 동작에 대한 부분은 데이터시트에서 제공하는 방정식을 통해 IC 의 동작이나 출력 전압, 충전 전압 등을 프로그래밍 할 수 있는데 R11, R12, R17~ R19 저항이 해당 부분을 담당한다. 그 외에도 샘플을 테스트를 하는 동안 예상치 못한 결과나 너무 높은 온도 등으로 인해 원하는 결과를 얻지 못할 경우를 대비하여 R7~R10에 0옴 저항을 사용해 회로를 단락 시켜 IC의 동작을 변경할 수 있도록 하였다. 다음은 배터리 관리 부분 회로이다. 배터리 관리 IC BQ24072를 거친 출력은 Vbat+225mV 로 출력 된다고 한다. 만약 부스트 회로를 별도로 구성하고 싶지 않다면...

Raspberry Pi Zero W/2W - 게임보이 만들기 1 - 디자인 설계

Image
Raspberry Pi Zero 2W 를 사용한 세로 형 게임기 설계가 어느 정도 마무리 되었다. 상단에는 아날로그 볼륨 조절기와 USB C 충전 포트가 있으며, 정면에는 디스플레이와 조작 버튼과 2개의 LED 가 디스플레이 우측에 있다.  후면에는 5개의 나사 홈이 위치하며 토글 방식의 전원 스위치와 스피커 홈이 있다. 하단에는 왼쪽부터 microSD 카드, USB OTG, 컨트롤러 USB 가 있다. 컨트롤러 USB는 기본적으로 아무런 기능을 하지 않으며, 사용자가 내장 컨트롤러의 펌웨어를 업데이트 하는 용도로만 사용된다. Raspberry Pi Zero의 코어가 위치한 곳은 시원하게 열어주었다. 버튼은 첫 번째 줄은 왼쪽부터 L, M, P, R 이 위치한다. M 은 마이너스, P 는 플러스를 뜻 한다. 닌텐도의 -,+ 키를 의식하여 만들었다. ABXY 는 XBOX 배열을 사용하였다. 우측 하단의 두개의 작은 버튼 두 개는 OS의 reset 과 power 버튼이다. 기본적으로 뒷면의 전원 토글 스위치가 On 에 위치하면 전원이 켜지지만, 이 두 버튼으로도 시스템의 전원을 켜고 끌 수 있다. power 버튼의 경우 짧게 누르면 현재 열려있는 에뮬레이터를 끄거나 메인 메뉴로 돌아가고 길게 누르면 전원 끌 수 있다. reset 버튼의 경우 게임을 초기화 시키며, 길게 누르면 시스템을 재부팅한다. 버튼의 경우 이런식으로 회전하지 않고, 고정되도록 하였다. D-Pad의 중앙의 구멍에는 적당한 길이의 기둥을 꼽아서 상하 좌우키가 동시에 눌리지 않도록 되어있다. 기둥을 3D 프린터 출력물을 사용할 경우 잘 부러질 수 있기 때문에 적당한 길이의 나사를 이용하는 것도 좋은 방법이다. 배터리는 1500mAh를 사용하려고 한다. 뚫려있는 부분은 방열판을 설치하려고 하는데, 아직 적당한 사이즈의 방열판을 찾지 못했다.

텍사스 인스트루먼트 BQ2407x 리튬 충전/방전 프리뷰

Image
얼마전 IP5305 칩셋을 사용한 회로는 시스템에 충분한 전류를 제공할 수 없었을 뿐만 아니라 충전을 중단하면 시스템으로 전원 공급이 끊어지는 문제가 있었다. 차기 버전에는 돈을 좀 더 투자해서 텍사스 인스트루먼트의 BQ2407x 제품군으로 설계를 해보려고 한다.  이 제품의 좋은점은 간단한 설계로 충전 전류를 프로그래밍 할 수 있고, 충전 전류를 독립적으로 모니터링 하면서 시스템에 부하를 끊김 없이 제공할 수 있다. 거기다 모델 이름 뒤에 Q1 이 붙은 제품군은 AEC-Q100 인증을 받은 제품으로 차량용으로도 사용할 수 있고 설명한다. 풋프린트와 3D 모델 데이터 텍사스 인스트루먼트에서 모두 제공하기 때문에 직접 작도 할 필요도 없어서 매우 좋다. 기본적으로 제공하는 회로도이다. BQ24075 의 경우 위 설계대로 사용하면 최대 충전 전류는 1.3A로 제한되고 0.8A 로 충전된다.  ILM 과 ISET 은 서로 관련이 있다고 볼 수 있는데, 왜냐하면 바로 이 핀들이 최대 전류와 충전전류를 프로그래밍 하는 부분이기 때문이다. ILM 과 VSS 사이에 연결되는 저항값으로 최대 입력 전류를 프로그래밍 할 수 있고 ISET 과 VSS  의 저항값으로 빠른 충전 전류를 설정할 수 있다. 스펙상 최대치인 1.5A 로 설정 할 수도 있지만 125°C 를 넘지 않도록 방열 대책도 마련해주어야 한다. 그렇지 않으면 수명이 줄어든다고 한다.  방정식은 다음과 같으며, 각각의 K 값은 데이터 시트의 9 페이지에서 찾을 수 있다. R(ISET) = K(ISET) / I(CHG) K = 890AΩ, R = 590Ω ~ 8.9KΩ R(ILIM) = K(ILIM) / I(I_MAX) K = 1550AΩ, R = 1.1KΩ ~ 8KΩ 예를 들어  R(ISET) = 1KΩ, R(ILIM) = 1.1KΩ 으로 세팅하면, 충전 전류 0.89A 최대 입력 전류 1.4A 로 설정할 수 있다. 데이터 시트 상으로는 이렇지만 실제 테스트에서는 ...

부스트 컨버터

Image
프로젝트를 진행하다 보면 순간적으로 높은 전류 소비, 다이오드, 레귤레이터 혹은 장치간 연결에 사용된 케이블 저항으로 인해  전원 공급이 불안정해 지는 상황이 발생한다. 이런 현상을 감안하여 실제 필요한 것보다 더 높은 출력을 갖고 있는 제품들이 있다. 이는 컴퓨터 주변기기에서도 불 수 있으며 USB 또 어댑터의 DC 출력이 정직하게 5.0V 가 아닌 5.1~5.2V 인 제품을 본 적 있을 것이다. 반대로 모자란 녀석들도 있다. 이렇게 타겟 장치가 요구하는 전압보다 어느 정도 높게 출력하면 선형 동작을 위한 헤드룸을 확보할 수 있다. (여유가 생긴다는 말이다.) 이번에 만들 회로는 TPS61090을 사용하여 리튬 이온/폴리머 전지의 3.7V 전압을 5.5V 로 만드는 회로이다. TPS61090 제품은 1.8V ~ 5.5V 의 입력 전압, 최대 5.5V 까지 조절 가능한 고정 출력, 저전압 감지, 절전 모드 등 96% 효율을 가진 부스트 컨버터 이며, 단가는 1릴 기준 $1.2 정도 된다.  무엇보다 출력 전압을 프로그래밍 할 수 있는 점이 나에게 챠밍 포인트로 다가왔다. 다음은 TPS61090 제품의 데이터 시트에 나와있는 회로도이다. R1, R2, R3, R4 의 저항으로 LBI/LBO 임계 전압과 출력 전압을 프로그래밍 할 수 있다.  방정식은 다음과 같다. 출력 전압 방정식 1 : R3 =  R4 * ( Vo / 500mV - 1 ) R4 에는 200KΩ 이하의 값을 권장하고 있는데, 만약 200KΩ 보다 너무 낮은 저항을 사용하게 되면 R3 에 추가적인 병렬 MLCC 사용을 권장하고 있다. 이때 MLCC 의 용량은 계산 방정식은 다음과 같다. R3 병렬 접속 MLCC 용량 방정식 2 :  Cr3 = 10pF * ( 200KΩ / R4 - 1 ) 임계 전압 방정식 3 :  R1 = R2 * ( Vbat / 500mV -1 ) R2 저항은 500KΩ이하의 값이 권장된다 . Vbat 에는 LBI/L...

Popular posts from this blog

[POE] - 패스 오브 엑자일 획득키 F 의 사용법 (Path of Exile)

[AD보드] - 맥북 패널을 모니터로 만들기 ( LP154WP4-TLA1 )

짱구개미 사육장에 위치한 브리기테 동상