회로도 비평


10

나는 첫 번째 전자 프로젝트를 설계했으며 이에 대한 의견을 보내 주시면 감사하겠습니다.

나는 초보자 실수, 회로에 잘못되었거나 비효율적 인 것을 찾고, 회로도를 구축하는 방식을 특별히 찾고 있습니다.

이 프로젝트는 Arduino가 제어하는 ​​주방 타이머입니다. 동시에 실행할 수있는 3 개의 타이머가 있으며 0에 도달하면 경고음을냅니다. 벽에서 전원이 공급되지만 연결이 끊어지면 타이머를 재부팅하지 않고 배터리를 사용해야합니다.

첫 번째 회로도는 전원 공급 장치입니다. 벽에 연결된 경우 배터리의 전원을 사용해서는 안되지만 연결이 끊어지면 배터리로 전환해야합니다.

회로도 1

두 번째 회로도에는 타이머를 제어하는 ​​데 사용되는 마이크로 컨트롤러와 스위치 및 버튼이 포함됩니다.

회로도 2

세 번째 회로도에는 디스플레이가 포함되어 있습니다.

회로도 3

나는 회로도를 평가하는 것이 많이 요구된다는 것을 알고 있으므로 의견을 보내 주셔서 정말 감사합니다.

편집하다

내 회로도에 대해 의견을 말한 모든 사람들에게 매우 감사합니다. 주변에 엔지니어 친구가 없으므로 귀하의 의견은 매우 소중합니다.

제안한 내용에 따라 변경하려고했습니다. 아직 브레드 보드에서 시도하지 않았으므로 모든 것이 작동하는지 확실하지 않습니다. R5에 가장 적합한 가치를 찾기 위해 몇 가지 테스트를 수행해야합니다.

업데이트 된 회로도는 다음과 같습니다.

회로도 1

회로도 2

회로도 3


3
LED의 220ohm은 약간 낮습니다. 값은 LED의 전압과 순방향 전압에 따라 달라집니다. 일반적인 LED 순방향 전압 0.7v 및 전류 10mA를 사용한다고 가정 해 봅시다. 12V LED의 경우 V = IR을 사용하여 저항은 (12v-0.7v) / 10mA = 1130ohm이어야합니다. 따라서 1.2K 저항이 있습니다. 5V LED와 동일하며 470ohm 저항 일 수 있습니다. 더 밝게하려면이 값을 조금 작게 만드십시오.
geometrikal

1
@geometrikal 감사합니다. 프로그램이 설치되어 있지 않아서 손으로 직접 그렸습니다.
André Wagner

4
Atmega 리셋 라인은 낮게 활성화되어 있으므로 접지되지 않은 Vcc에 연결해야합니다. 나는 8 비트 느낌을 좋아합니다.
s3c

2
디 바운스는 스위치를 누를 때 부드러운 로우에서 하이로 전환됩니다. S4는 3 극 스위치입니까? r3의 하단 저항이 필요 없으며 mcu에 연결되지 않은 경우 풀다운 할 필요가 없습니다.
geometrikal

2
소프트웨어 디 바운싱은 완전히 유효한 솔루션이며 매우 일반적입니다. 사이클 / 메모리가 사용되지 않는 한, 개발 후 단가가 0입니다.
Chris Stratton

답변:


10

(대부분의) 구성 요소에 refdes (참조 지정자)를 사용하는 것이 좋습니다. 특히 회로도를 논의하려면 적절한 의사 소통이 필요합니다.

전원

  • LED에는 refdes "L1"및 "L2"를 사용합니다. 하지마 "L"은 인덕터의 표준 지정자입니다. 다이오드에는 "LD"또는 "LED"또는 "D"를 사용하십시오.
  • R1의 값이 너무 낮습니다. 표시기 LED에 비해 너무 많은 LED 45mA를 제공합니다. 값을 560Ω으로 늘리면 18mA의 안전을 보장합니다. 그들은 보통 20 mA로 평가됩니다. 데이터 시트를 확인하십시오. 그건 그렇고, 당신은 정말로 그 LED가 필요합니까? 항상 전력을 소비합니다.
  • C1과 C2는 "10 mF"로 표시되며, 여기서 "10 µF"라고 가정하면 1000 배 차이가납니다. 그것들은 아마도 극성 인 전해 커패시터 일 것입니다. 편광을 나타내는 기호를 사용하고 어느 쪽이 양극인지 명확하게 나타냅니다. 또한 전해액의 경우 회로도의 전압도 언급하는 것이 좋습니다. C1은 20V, C2 10V 이상이어야합니다.
  • C1 및 C2에 평행 한 100nF 배치
  • C2를 LED보다 레귤레이터의 출력에 더 가깝게 끌어 오십시오. 전기적으로는 아무런 차이가 없지만 PCB에 배치해야합니다. 100 nF는 출력에 가장 가깝습니다.

마이크로 컨트롤러

  • ATmega328에는 VREF 핀이 없습니다. 아마도 Vcc 여야합니다. 핀에 최대한 가깝게 Vcc와 접지 사이에 100nF 디커플링 커패시터를 추가하십시오. 항상 IC의 전원 공급 장치를 분리하십시오.
  • 리셋이 접지에 연결되었습니다. 내부 리셋 회로를 사용하더라도 괜찮지 만 RSTDISBL 비트를 "1"로 프로그래밍하는 것을 잊지 마십시오.
  • I / O 핀에서 스피커를 직접 구동 할 수 없습니다. 거기에 트랜지스터가 필요합니다.
  • PC0의 내부 풀업을 사용하고 스위치를 접지에 연결하면 저항을 절약 할 수 있습니다. 그러면 R4가 필요하지 않습니다. 논리가 반전된다는 것을 기억하십시오.
  • PB2 ~ PB5 및 스위치 S2 및 S4와 동일 : 내부 풀업 및 + 5V 대신 접지로 전환합니다.
  • 스위치 S2와 S4는 혼동됩니다. 아래쪽에는 2 개의 접점이 있고 높은쪽에는 5 개의 접점이 있습니다. 전환 접점이어야합니까? 그렇다면 하나의 입력은 항상 다른 입력과 보완되므로 하나만 입력하면됩니다. 어쨌든 풀다운 저항 중 가장 낮은 저항은 작동하지 않습니다.
  • "Digit1", "Digit2"등과 같이 포트 D의 네트에 더 설명적인 이름을 사용합니다.

디스플레이

  • 다시 전원 공급 장치를 100nF 커패시터와 분리합니다.
  • R4의 저항 값이 너무 높습니다. 150Ω 유형으로 교체하십시오.
  • 5 개의 R5 저항을 제거 할 수 있습니다. 그들은 기능을하지 않습니다.
  • 마이크로 컨트롤러는 디스플레이 공통 음극을 직접 구동 할 수 없습니다. 모든 LED를 사용하면 7 20 20 = 140 mA로 I / O가 싱크 할 수있는 것 이상입니다. 여기에는 5 개의 NPN 트랜지스터가 필요하거나 ULN2803 과 같은 트랜지스터 배열이 필요합니다 . ×

결론
이것은 긴 목록이지만 첫 번째 프로젝트라는 점을 고려하여 훌륭한 일을했다고 생각합니다. 나는 훨씬 더 나쁜 회로도를 보았다. 성공!


편집 질문 업데이트
Q1 및 D3 주변의 회로가 제대로 작동하지 않습니다. 배터리가 LED를 공급하지만 나머지 회로는 공급하지 않습니다. 배터리 표시기로서 LED가 좋은 아이디어인지 확실하지 않습니다. 특히 배터리 전원을 사용하면 경제적이어야하며 LED의 전원을 낭비하지 않아야합니다.

어떻습니까 : 첫 번째 버전에서와 같이 다이오드를 유지하되 마이크로 컨트롤러에서 LED를 제어하십시오. 프리 핀 중 하나를 사용하여 5V 제너 다이오드 및 직렬 저항을 통해 12V의 존재를 감지하십시오. 그런 다음 배터리 전원으로 실행 중일 때 LED를 깜박일 수 있습니다. 1 초에 한 번 짧게 깜박이면 훨씬 경제적입니다.


회로도를 평가하는 데 시간을 내 주셔서 대단히 감사합니다. 첫 번째 질문은 마이크로 컨트롤러와 나중에 디스플레이를 분리하는 것입니다. 모든 + 5V 입력이 전원 공급 장치의 + 5V 출력에 연결되어 있다고 가정합니다. 전원이 이미 분리되어 있지 않습니까? 왜 다시 분리해야합니까?
André Wagner

3
@ André-좋은 질문입니다. 특히 많은 트랜지스터가 동시에 스위칭 할 때 디지털 IC는 짧은 전류 피크를 그릴 수 있습니다. 상승 시간은 매우 높을 수 있고 (= 고주파), PCB 트레이스의 인덕턴스는 전원 공급 장치의 커패시터에 대한 높은 저항 일 수 있습니다. 따라서 전원 핀 근처에 여분의 에너지 버퍼 (디커플링 캡이 있음)가 필요합니다. 문자 그대로 "가까이"를 가져 가십시오. 1mm가 5mm보다 낫습니다. 또한 전류 스파이크가 보드 위로 이동하지 않아 EMI가 발생할 수 있습니다. 모든 IC에 항상 디커플링을 제공하십시오 . 법입니다! :-)
stevenvh

또 다른 질문 : 마지막 의견에 대해, LED를 이끌려면 약간의 트랜지스터가 필요합니다. 트랜지스터없이 브레드 보드에 회로를 만들었고 (LED에 MC를 직접 연결) 내 요구에 충분히 밝았습니다. (220R 저항기를 사용하고 있습니다) 그대로 두거나 마이크로 컨트롤러가 손상 될 위험이 있습니까?
André Wagner

2
@ André-손상. 데이터 시트에 40 mA가 절대 최대 라고 표시 하는 동안 최대 140 mA를 끌어낼 것이라고 계산했습니다 . 주의 사항을 읽으십시오. ""절대 최대 등급 "에 나열된 것 이상으로 만지면 장치에 영구적 인 손상을 입힐 수 있습니다 ." 마지막 행 : "오랫 동안 절대 최대 정격 조건에 노출되면 장치 신뢰성에 영향을 줄 수 있습니다 ." 트랜지스터를 더 잘 사용하십시오.
stevenvh

확인! 그런 다음 트랜지스터를 넣을 것 같습니다! 정보 주셔서 감사합니다.
André Wagner

4

여기서 몇 가지 간단한 생각을하고 나중에 추가 할 수 있습니다.
의견에 다른 사람들의 목록은 결합 된 답변으로 효과적입니다.

제기 된 포인트 중 일부를 해결할 때까지 누군가 Olin을 잠 가야합니다 :-).

씨! & C2는 각각 10mF로 표시됩니다.
mF = 밀리 패러 드 = 10,000 마이크로 패러 드.
당신이 10 microFarad를 의미한다면 (아마도) 이것은 10 uF로 쓰여집니다.
이것을 uF로 작성했을 수도 있고 글꼴 대체로 10 mF (때때로 발생)로 변경되었지만이를 확인해야합니다.

저항기 그룹에 하나의 저항기 이름을 사용하고 있습니다. 예를 들어 R4 = 7 x 10k.
이는 이해하기 쉽지만 개별 저항 또는 이와 유사한 것을 쉽게 참조 할 수 없으며 레이아웃 목적으로 자동화하기에 적합하지 않습니다 (어떤 구성 요소가 R4인지는 확실하지 않습니다).

지정을 쉽고 명확하게 읽을 수있는 기능은 회로도의 주요 설계 목표입니다.
다른 장소에서 라벨의 다른 시각적 모양은 목적을 갖지 않는 것 같지만 일부는 눈에 어려워 보입니다.
예를 들어 DA DB DC DD에 연결하는 ABCD는 검은 색 사각형으로 흰색입니다. 읽기 어렵다.
구성 요소 본체 내부의 회색 흰색은 읽기 어렵고 불필요합니다.
회색의 회색이 더 나쁩니다.

현재이 다이어그램은 기능적인 강사이지만 다른 참조 자료 (또는 eidetic 메모리) 없이는 구성 또는 문제 해결에 사용할 수 없습니다.
핀 번호를 추가하면 다이어그램이 가질 수있는 사용 범위가 크게 향상됩니다.

모든 전자는 C1 :-)에서 소진됩니다.
물론 실제로는 아니지만 C2에 따라 리드를 세로로 정렬합니다.
애플리케이션에 적합한 곳에 커패시터를 수평으로 정렬하는 데 아무런 문제가 없지만, 수평 라인에서 접지로 커패시터를 표시 할 때 (예 : 전압 조정기 U1 전후) 커패시터는 C2에 따라 다릅니다.

마찬가지로 R2의 수평 배열은 덜 일반적이며 "좋은 느낌이 들지 않습니다". 이것은 공간을 절약하기 위해 수행되었지만, 예를 들어 U1을 위로 움직이면 입력이 D1에 의해 수평으로 공급되고 U1 위로 텍스트를 옮기면 동일한 공간을 사용할 수 있지만 L2 & R2는 모두 수직이됩니다.

SPK1 연결이 약간 이상해 보입니다. 의도가 분명합니다.

여러 장소에서 가독성은 접지에 대한 수평 연결 또는 긴 접지 간이 아닌 로컬 접지 기호를 사용하여 개선됩니다.
예를 들어 U3의 LE 핀


조정기는 Toshiba TA4805 일 수 있습니다 .
언로드 대기 전류는 일반적으로 0.85mA이며 최악의 경우 1.7mA입니다.
그러나 LED 상태 표시기는 약 3mA를 소비합니다. PP3 9V '트랜지스터 배터리'는 약 600mAh 용량을 가지므로 배터리 수명은 ~ = 600/5 = 150 시간 또는 24/7의 약 1 주 동안 24/7이지만 언로드 된 작동 상태입니다.
최신 LED는 매우 밝을 수 있으며 1mA 미만이면 충분합니다.

포트 핀 PC1-PC5는 그림과 같이 정상이지만 입력으로 설정되거나 출력으로 설정되어야하는 경우에는 풀업 / 다운으로 프로그래밍해야합니다.

R4 = 7 x 10k는 현재 제공을 위해 더 높은 전력을 공급하는 스마트 디스플레이가 아니라면 너무 높아 보입니다.

아논 ...


"더 높은 전력과 접촉하는 스마트 디스플레이가 아니라면" 이것들은 7- 세그먼트에 존재합니까? 나는 그들이 매트릭스 디스플레이에 대해 알고 있습니다.
stevenvh

아, 물론 이죠! 비싼 MAX7219처럼. 그러나 그것들은 일반적으로 직렬 인터페이스되어 있다고 생각합니다.
stevenvh

Olin이 갇혀서 지금은 없어졌습니다. Olin로 돌아와 우리가 당신을 그리워합니다.
RoyC
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.