★ 英語学習&ドラムマニアのホームページ ★

★ 英語学習&ドラムマニアのホームページ ★

回路作成と隘路事項



さて、、、長らく作業が中断しておりましたが、ようやく時間を見つけて回路を作成してみました。


回路図を再掲しますと、、、

回路図V2

こんな感じ。

さてさて、部品を調達してとりあえずざっと作ってみました。
回路図には抜けておりますが、PICは16F84Aを使い、ECMの信号を増幅した結果(Tr1の出力)をPORTB0ピン、プレステ側の出力をPORTA0ピンとしました。また電源や発振器の結線も省略しています。

また、今回適当に作ったPICのプログラムも、参考までに下のほうに載せておきましょう。。

で、作ってみたものの、うまく行かなかった部分がいくつかありました。

 1)増幅回路をB級動作させたつもりが、なっていない。
 2)増幅回路の出力電圧のピークが低い。

さて、問題の分析を。

予定していた挙動としては、ECM無信号時の増幅回路のTr1出力は5V、そして信号が入ると0Vまで下がる、というもの。

しかし今回は、無信号時に0V付近となり、信号が入ると電圧が上昇。しかも、上昇した場合でも3.5Vが限界。

要するに、1.電圧の上下反転、2.振幅が大きく振れない、という問題がありました。

ECMを口にくわえつつ、息を吹きかけて増幅回路の振幅をテスタで測って頑張ったんですが、原因が良く分かりませんでした。

1.の原因は、設計の方法がまずかったのかもしれませんが、どこがまずかったのか、分かりませんでした。カットアンドトライにて、いろいろ抵抗値を変えたりしたんですが、、、動作点が上手いこと設定できなかったのでしょう。

やっていて1つ気づいたのは、470kの抵抗を入れた部分の抵抗を測定すると、なぜか80kくらいしか出ていないってこと。

個人的な想像としては、トランジスタのB-C間が多少導通することによって、この回路の合成抵抗が現れ、それが80kに見えてしまったのだと思ってるんですが、、、正直謎です。ここが470kに見えてくれないと設計どおりじゃあなくなるんですが。。。 回路の作り方がまずかったのかなあ、、、。


何はともあれ、電圧が逆転したのはいっそのこと諦めましょう。PICのソフトで何とでもなるから、気にしないで進めたいっす。

が、最大でも3.5Vまでしか出力信号が出ないってのは、どのみち致命的な現象かと。。。 なにせ、PICにとっては0Vだろうが3.5Vだろうが、どちらも入力はLOWだ! と判定するのです。 当然、PICの出力に変化は無し。プレステコントローラも無反応。


とまあ、こんな感じで今回の回路がうまく行かなかった、、、ということを報告いたしました。


次回ですが、

 A) PICの入力をADコンバータ付きのものに変える(16F819など)。
 B) 増幅回路はB級にはこだわらない(ADコンバータ使う前提で)。

という感じで進めて参ります。
とりあえず、日を空けないように(TOEICが近いのでちょっと遅くなりそうですが)やっていこうと考えとります。

それ以前に、

 C) 増幅回路のお勉強をしておく。

というのも必須ですな。



****** ↓ PIC プログラム サンプル ******

;
; PIC Drum system; test program
; Copyright (c) 2005 MIU
;

LIST P=16F628,ST=OFF
INCLUDE P16F628.INC

ERRORLEVEL -302,-306
__CONFIG _CP_OFF & _PWRTE_ON & _WDT_OFF & _HS_OSC
__IDLOCS H'FFFF'


; プログラムスタート

ORG 0x0000
GOTO START
ORG 0x0004
GOTO START


; メインプログラム

START
; 入出力のピン設定
BSF STATUS, RP0 ; BANK 1
CLRF TRISA ; PORT A -> OUTPUT
MOVLW 0FFH ;
MOVWF TRISB ; (11111111)->TRISB ( PORT B -> INPUT )
BCF STATUS, RP0 ; BANK 0

; メインループ
MAIN01
; 入力ピンをチェックする
NOP
MOVF PORTB, W ;
BTFSC W, 0 ; CHECK 0BIT OF PORT B
GOTO BUTTONOFF ; IF 0BIT IS 1, GOTO BUTTONOFF

; ポートBの0ビット目が0だったときの処理
NOP
MOVLW 0FFH ; 00000001 -> WORKING
MOVWF PORTA ; WORKING -> PORTA
GOTO MAIN01 ; LOOP

BUTTONOFF
; ポートBの0ビット目が1だったときの処理
NOP
MOVLW 000H ; 00000000 -> WORKING
MOVWF PORTA ; WORKING -> PORTA
GOTO MAIN01 ; LOOP

END

******




© Rakuten Group, Inc.
X
Design a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: