목록하드웨어 (79)
마음 속 하늘은 항상 맑음~!
간단히 기본 회로에서 약간의 구성을 바꾼 buck 컨버터로 5v 출력 전원을 위한 회로. LM2576-5.0이 800냥, 쇼트키 다이오드 150냥 코일 350냥 등등의 가격이다. 출력단에 쇼트키를 물린 것은 배터리 같은 부하를 연결했을 때 반대로 흐르지 않게 하기 위함. 필요가 없을지도 모른다. 최대 출력 전류는 3A. RV1은 쇼트키 다이오드의 전압 강하(0.4v정도)를 보완하기 위해서 조절이 필요하며, 더 높은 전압을 뽑아내는 것도 가능하다. RV1은 10k 이상의 값을 사용하면 된다. 출력전압을 측정하기 위해서는 부하가 물려야 제대로 테스터로 확인이 가능. D2 앞단에서 5.5v로 조절하면 5.3v정도 찍으면 출력으로 5.0v 전압이 나온다. (회로도를 업데이트) R2 10k를 추가했는데, 보다 잘..
N 채널 FET는 Source는 접지로 Drain은 부하로 연결해서 Drain쪽의 부하를 컨트롤 하기 위해, Gate와 Source에 10v나 논리레벨은 5v의 전압을 인가하는 방법을 따른다. 그런고로 만약 N 체널 FET에 Source쪽에 부하를 연결하면 스위칭은 제대로 작동하지 못한다. 이는 NPN 트랜지스터와 마찬가지로 트랜지스터에서도 이런 경우 Base에 걸린 전압보다 약간 낮은 출력이 이미터에 나타난다. N FET 도 마찬가지로 Gate에 인가해주는 전압보다 조금 낮은 전압이 Source에 나타난다. 그런고로 출력에는 스위칭하려는 전압보다 더 낮은 전압이 나타나 스위칭을 할 수 없는 묘한 상황이 이른다. 이를 해결하기 위해서는 G-S 사이에 전압을 걸어주는 Bootstrap이란 회로를 추가해야 ..
기존의 PWM회로의 성능을 더 안정시킨 것으로, 전력 컨트롤 회로의 경우에는 확실히 높은 PWM 주파수를 써야 한다는 것을 깨달음. 1W 정도의 부하에서는 FET에서 미열조차 없어서 그냥 차가운 상태로 기존의 펌웨어에서 발열이 심하던 문제의 해결. 그리고 PWM을 약 1KHz로 조정해서 보다 나은 안정된 전압이 나오도록 함. 기존에는 64레벨로 미세전압 조정이 어려웠지만, 255레벨로 늘려서 더 미세 간격의 조절이 가능해짐. 출력 합선을 인지해서 전압을 낮추는 기능을 넣었고, 이 부분의 소스는 공개하지 않을 예정. LED는 안정된 전압에 도달하면 깜박이는 속도가 느려지고, 평소에는 빠름. PWM 인터럽트 부분의 소스만 공개하자만 다음과 같고, 응용하는데 크게 어렵지 않음. // 상수 선언들. const ..
12볼트의 납축전지의 충방전 컨트롤러를 간단하게 구현. PWM 전원소스보다 이것을 더 빨리 만들다보니 두개를 합할 수 있는데 넘어가게 된 것 같다. 그리고 만능기판의 크기가 작아서 통합하더라도 둘을 모두 하나에 넣기는 어려웠을 것. 여튼 대충의 작동을 확인하고, 회로도와 펌웨어 소스를 정리. FET는 논리게이트 레벨을 사용하는 것을 썼다. 아니면 일반 FET(10볼트 입력)를 써서 트랜지스터를 붙여서 12V로 드라이브 하는 방법도 있다. FET는 스위칭 동작만 하며 방열판이 필요.반고정 저항으로 배터리의 전압의 조절이 필요하다. 태양광 입력 전압을 그대로 사용하는 것은 아니고 아래의 buck 컨버터가 연결되는 것으로 입력 전원의 전압 컨트롤은 큰 의미가 없다. PWM 기능을 넣으려다 빼고 만들어진 펌웨어..
간단하게 삽질을 해서 만든 FET로 구동하는 PWM 레귤레이터. D3이후의 회로는 일반적인 Buck converter 회로이고, 중요한 것은 바로 Q1, Q2, Q3의 부분이다. Q4는 논리신호를 N ch FET를 켜기위한 BootStrap회로를 컨트롤하는 목적을 가진다. 주의할 점은 Q4로 신호가 반전되어 Q3에서는 반전된 신호가 전달되게 된다. D2는 역전압이 흘러나가지 않게 하기 위해서 사용. PIC는 ADC의 값을 받아서 출력의 전압을 조절하고 PWM값을 수시로 변동시킨다. D3도 아주 중요한데 N ch FET의 기생다이오드로 통해 역방향으로 전류를 흐르지 않게 한다. 이 D3가 없으면 제대로 전압 조절이 안된다. 여기서는 3A의 쇼트키 다이오드를 사용했다. 그냥 3A의 다이오드를 사용해도 상관없..
몇몇 회로도 그리기 툴에서 그나마 가장 업데이트가 잘되고 윈도우즈용이 있는 것이 KiCAD인 듯 싶다. 처음엔 인터페이스의 낯설음 때문에 잠시 머뭇거리지만 사용하다보면 금방 익숙해진다. 그 중 가장 최근의 빌드(5월 3일)로 배포사이트에서는 다운로드하는데 꽤 시간이 걸린다. 그래서 다른 업로드 링크를 마련. https://mega.co.nz/#!VRRF3QpB!qhFizt8TFZZVQZaNU9WNQaJSFk_RLIhUG2jNF9HXKIQ 근데 이것만으로는 부족하다. 부품의 라이브러리가 없으면 말짱 도루묵. 새로 만들 수 있기는 하지만 이 무슨 삽질인가 싶을 때가 있다. https://mega.co.nz/#!pIQ1nI5L!koZKEf-ggy_mfA8OosA4pBHvahVEfQcvEm-ErPU8ACo ht..
인터페이스의 한글화는 잘 되어 있는 것 같고, 그게 어려운 부분은 없었다. 하지만 역시 가장 큰 문제는 한글의 입력. 나비도 생각났지만 그냥 더 간편한 UIM으로 결정. 물론 다운로드가 가능하다. UIM-벼루를 이용하면 깔끔한 한글 입력이 가능하다. sudo apt-get update sudo apt-get install uim sudo apt-get install uim-byeoru 이렇게 하면 설치되고 설정은 먼저 키보드 입력기 설정을 하고, 그 다음에 파란 아이콘의 UIM 설정을 실행하면 된다. 키보드 입력기 설정에서는 중간에 한번 권장(Recommended)으로 No를 선택하고 나머지는 그냥 넘어가면 된다. 그리고 벼루 아이콘이 태스크바에 나타나면 눌러 설정화면으로 들어가서 벼루를 기본 입력(처음..
최근 라즈베리파이2를 사용해서 여러가지 삽질을 시작했는데, 라즈베리는 음성에 소신호 출력 밖에 없다. 외부기기가 연결되지 않는다면 HDMI 출력에 연동되지 않는다면 소리는 들을 수 없다. HDMI의 소리를 분리해주는 젠더가 있기도 하지만, 오드로이드와의 비교에서 소리가 나오는 출력 부분이 있어서 되는 줄 알았다. 소신호라는 것을 나중에 인지했다 =_=; 결국 해결 방법은 2가지로 1만 5천냥 정도를 더 투자해서 젠더를 구입(그나마 저렴하고 기능이 괜찮은게 이 가격)하는 것 밖에 없는 줄 알았더니 또다른 방법이 있었다. 그 방법은 USB 사운드카드(모듈?)을 이용하는 것으로 2천5백냥 정도면 구할 수 있었다. 싼거라서 잡음이 좀 들린다던지 혹은 케이스가 부실하다느니 오래 사용할 수 없다느니 하는 이야기는 ..
ATTiny2313이나 ATTiny4313은 ADC가 없다. 그래서 다른 방법으로 ADC를 읽어오는 방법을 고안했는데, 약간의 딜레이를 무시하고 사용할 수 있도록 고려했다. 이러한 핀 중에서 7,6,5를 아날로그 입력으로 이용하고, 4번을 읽을 때 1번으로 하면 활성화되도록 했으며, 읽을 수 있는 상태가 되면 2번이 1이 된다. 3번으로 클럭을 입력하면 높은 비트에서 낮은 비트 순으로 10비트의 데이터를 전달한다. 1. GP3에 1을 할당.2. GP5가 1이 될 때까지 대기.3. GP4에 클럭을 입력. 0에서 1이 되면 비트가 GP5에 설정된다. 10번을 반복해서 ADC0, 10번을 반복해서 ADC1, 10번을 반복해서 ADC2를 얻는다. 높은 비트에서 낮은 비트 순으로로 출력된다. 4. 만약 GP3가 ..
직류-직류로 변환하는 간단한 회로로 문제는 전류량이 많이 줄어든다. 클럭을 발생시켜서 인턱터(코일)로 고전압을 발생시키는 방법으로 방법론은 비슷하다. 다른 점은 약간의 부품의 변형. 인턱터는 100uH이고, 트랜지스터와 R2저항의 값도 다르다. R2는 출력의 전류량을 조절하는데 낮을수록 더 많은 전류량을 보장한다. 브레드보드에서는 무부하시 21V가 나왔는데, 실제로 기판에 옮기니 30V가량이 나왔다. 제너 다이오드를 없애면 부품을 태워버리기에 좋은 전압이다. =_=; 다이오드 앞단에서는 입력한 전압 그래도가 나오고 다이오드를 거쳐야 비로소 제대로된 전압을 측정할 수 있다. 오실로스코프가 아니면 다이오드 앞단의 전압을 체크하기가 힘들거라본다. 낮은 전류이기에 부하가 많이 걸리는 장치를 운용할 수는 없다. ..