Arduino 2 단계 프로그래밍 가능 타이머 회로

문제를 제거하기 위해 도구를 사용해보십시오





이 기사에서는 독립적으로 조정 가능한 ON 및 OFF 타이밍으로 전기 부하를 ON / OFF 전환하는 데 사용할 수있는 간단한 2 단계 Arduino 프로그래밍 가능 타이머 회로를 만드는 방법을 배웁니다.

예를 들어 조명이 24 시간 동안 켜져 있고 2 시간 동안 꺼 지도록하려면 프로그램 코드를 빠르게 수정하면됩니다. 같은 방법으로 코드를 적절하게 변경하여 원하는 다른 시간 간격 세트로 출력 타이밍을 사용자 정의 할 수 있습니다.



당신은 단지 컴파일 및 업로드 Arduino 보드에 다음 코드를 추가하고 특정 애플리케이션 요구 사항에 따라 타이머 기능을 시작하십시오.

프로그램 코드

void setup(){ pinMode(13, OUTPUT) } void loop(){ digitalWrite(13, HIGH) delay(86400000) digitalWrite(13, LOW) delay(3600000) }

위의 예제 코드에서 지연 (86400000)지연 (3600000) 출력 ON 및 OFF 지연 시간 간격을 각각 밀리 초 단위로 결정합니다. 여기 그림 86400000 밀리 초는 24 시간에 해당하는 반면 3,600,000 1 시간 지연을 나타냅니다.



필요한 출력 지연을 얻기 위해 개인 선호에 따라이 두 값을 사용자 정의 할 수 있습니다.

설정 및 전원이 공급되면 Arduino는 두 단계의 ON / OFF 타이밍 시퀀스 사이를 계속 전환합니다. 시스템에 전원이 계속 공급되는 한.

회로도

Arduino 연결과 함께 전체 회로 다이어그램은 다음 다이어그램에서 확인할 수 있습니다.

Arduino One-Shot 타이머 회로

타이머가 2 단계 타이머를 반복하는 대신 타이머가 설정된 지연 후 영구적으로 꺼지는 원샷 유형이되도록하려면 다음 코드를 적용 할 수 있습니다.

int led = 13 // Pin 13 has an LED connected on most Arduino boards. unsigned long DELAY_TIME = 10000 // 10 sec unsigned long delayStart = 0 // the time the delay started bool delayRunning = false // true if still waiting for delay to finish void setup() { pinMode(led, OUTPUT) // initialize the digital pin as an output. digitalWrite(led, HIGH) // turn led on // start delay delayStart = millis() delayRunning = true } void loop() { // check if delay has timed out if (delayRunning && ((millis() - delayStart) >= DELAY_TIME)) { delayRunning = false // finished delay -- single shot, once only digitalWrite(led, LOW) // turn led off } }

동일한 프로그래밍 가능 타이머 회로의 개별적으로 설계된 버전을 원한다면 다음을 수행 할 수 있습니다. 이 회로를 선택하십시오

Arduino 프로그래밍 가능 타이머 회로에 필요한 부품

  • Arduino UNO 보드 = 1
  • IC 7809 = 1
  • BC547 = 1
  • 1N4007 다이오드 = 1
  • 10k 1/4 w 저항 = 1
  • 릴레이 12V / 400 ohm / SPDT / 5 amp = 1
  • 12V AC-DC 어댑터 = 1



이전 : 2 자리 디스플레이가있는 간단한 디지털 타이머 회로 Next : 디지털 온도계 회로 – 전력을 위해 태양 전지 사용