임베디드랜드

    ▶ 회로설명 (circuit description) : 이번 시간에는 "MY 로거" 내부의 PWM 신호를 사용한 아날로그 출력 을 시험해 보겠습니다. 단 "MY 로거"에는 외부단자의 부족으로 PWM 출력단자가 없습니다. 그러므로 시험을 위해... "MY 로거" 내부의 16F873A 12, 13 번 단자에서 선을 (외부로) 뽑아내야 합니다. -_-
    ※ "MY 로거" 내부에서 (외부로) 선을 끌어 내 오는데는 납땜작업이 꼭 필요합니다. 납땜작업전에 반드시 16F873A 칩을 IC 소켓에서 먼저 제거하여야 합니다. (IC 소켓에서 칩을 분리할 때는 전원을 끈 후에, 작은 드라이버를 사용하면 편리합니다. 작업후에는 16F873A 칩의 1 번을 확인하고 IC 소켓에 끼우십시요. ^^)

    (PWM 신호를 사용한) 아날로그 출력 명령은... d1+숫자, d2+숫자의 두 가지로, 처음의 'd' 문자는 digital to analog의 의미를, 두 번째 1, 2 문자는 PWM 출력 핀을, 세 번째 "숫자"는 듀티비를 의미합니다. 듀티비는 명령중 세 번째인 "숫자"값 0~127에 의해 0~100%까지 변화합니다. (주파수는 변하지 않습니다) 그러므로 "d1+숫자" 명령은 16F873A 13 번, PWM 1 단자에서, "숫자"값으로 듀티비를 셋팅한 펄스열이 출력되도록... "MY 로거"에 지시합니다.

    예를들면... "d1+0" 명령은 0% 듀티비, "d1+63" 명령은 50% 듀티비, "d1+127" 명령은 100%의 듀티비를 가진 펄스열을 생성하고 PWM 1 단자에서 출력되도록 만듭니다. ^^
    ※ 아날로그 출력 명령의 리턴 문자는 없습니다. ^^
    ※ 듀티비 = (펄스 1 주기의) ON 시간 / OFF 시간 x 100 (%)
     
    ▶ 회로도 (The circuit diagram) : PWM 출력을 사용한 "MY 로거" D/A 실험 ^^

    (출력된 PWM 펄스를 사용하여 직류전압을 만드는) 아날로그 출력 시험에는... "MY 로거" 외부에 2 단 (로우패스) 필터회로가 필요합니다. 필터회로는 PWM 펄스열을 입력으로 받아서, (펄스열의) 평균값에 해당하는 직류전압(DC)을 출력해 줍니다.
    ※ 2 단 (로우패스) 필터회로를 만들 때... "MY 로거"의 GND와 필터의 GND를 반드시 연결하십시요.
    ※ 제작시 16F873A의 PWM 신호핀 순서에 주의하여야 합니다.

    PWM 펄스에서 변화된 직류전압은... 0% 듀티비에서 0V, 50% 듀티비에서 2.5V, 100% 듀티비에서 5V가 출력되며, 출력 직류전압은 (필터의 출력단에서) 테스터로 확인할 수 있습니다. ^^

    ※ 16F873A에서 출력된 PWM 펄스는 5V의 전압크기를 가집니다. 100%의 듀티비 펄스는 (항상) ON 상태이므로... 결과적으로 직류(DC) 5V를 의미합니다. 반면에 0% 듀티비는 (항상) OFF 상태의 펄스입니다. (펄스라고 말하기도 뭐하군요...) 그러므로 0% 듀티비 펄스는... 직류(DC) 0V와 같은 의미가 됩니다. ^^

    실험회로를 보면 내/외부의 전원이 전혀 필요없다는 것을 알 수 있습니다. (외부회로와 GND는 연결하여야 함) 이러한 조건은... 외부 응용회로를 "MY 로거"와 무관하게 설계할 수 있도록 만들어 주므로, (인터페이스 회로 설계에서) 무척 중요한 포인트가 됩니다. ^^


    D/A 실험결과... "MY 로거"를 이용해서, PC에서 (원격으로) 아날로그 단자에 원하는 전압을 출력하는 작업이 가능하다는 사실을 확인하게 되었습니다. (외부의 2 단 로우패스 필터회로 필요) "MY 로거"는 두 개의 D/A 기능을 가지고 있으므로... 모터 속도제어등의 재미있는 사용들이 예상되는군요... ^^
Posted by suvisor