の形で呼ぶ。
//
// anchor_idはフレームを使う場合最低限各フレームごとに設定。お互い他のフレームを書換えたときにへんな干渉をさけるため。
// その他ページの種別毎などで変えてもよいが、あまり小分けにするとcookieが増える。
// 同じanchor_idで保存されるcookieは1セットのみ。でも単独ページ表示のサイトなら概ねこれで充分。
anchor_id = "anc_main";
noanchor = false; // bodyにanchorをしかけたときなど場合によって一時無効にするためのフラグ。
// アンカーの記憶。
function anchor_save(object_id, page_id) {
if(noanchor) { anchor_erase(); return; }
get_scroll();
setcookie(anchor_id+"_pid", page_id, 0);
setcookie(anchor_id+"_st", scroll_top, 0);
setcookie(anchor_id+"_sl", scroll_left, 0);
if(object_id) {
object_top = scroll_top + get_object_top(object_id);
object_left = scroll_left + get_object_left(object_id);
setcookie(anchor_id+"_oid", object_id, 0);
setcookie(anchor_id+"_ot", object_top, 0);
setcookie(anchor_id+"_ol", object_left, 0);
} else {
setcookie(anchor_id+"_oid", "", -1);
setcookie(anchor_id+"_ot", "", -1);
setcookie(anchor_id+"_ol", "", -1);
}
}
// アンカーの適用。
function anchor_apply(page_id) {
if((saved_page_id = getcookie(anchor_id+"_pid")) && page_id != saved_page_id) { return; }
get_scroll();
if((anchor_st = getcookie(anchor_id+"_st")) != "" && (anchor_sl = getcookie(anchor_id+"_sl")) != "") {
anchor_st = parseInt(anchor_st);
anchor_sl = parseInt(anchor_sl);
} else {
anchor_st = scroll_top;
anchor_sl = scroll_left;
}
if((object_id = getcookie(anchor_id+"_oid"))
&& (anchor_ot = getcookie(anchor_id+"_ot")) != ""
&& (anchor_ol = getcookie(anchor_id+"_ol")) != "") {
offset_top = (scroll_top + get_object_top(object_id)) - parseInt(anchor_ot);
offset_left = (scroll_left + get_object_left(object_id)) - parseInt(anchor_ol);
} else {
offset_top = offset_left = 0;
}
window.scrollTo(anchor_sl + offset_left, anchor_st + offset_top);
}
// アンカー消去。あえてとっておく必要がなければanchor_apply()後すぐ消去が望ましい。
function anchor_erase() {
setcookie(anchor_id+"_pid", "", -1);
setcookie(anchor_id+"_st", "", -1);
setcookie(anchor_id+"_sl", "", -1);
setcookie(anchor_id+"_oid", "", -1);
setcookie(anchor_id+"_ot", "", -1);
setcookie(anchor_id+"_ol", "", -1);
}
//-->
オーディオの世界/自作
大きい出力を出そうと思ったらろくなことにならない... |
|
|
パワーアンプの制作
QM20TD-Hというパワーモジュールが家の中から見つかった。 どうやらエアコンの室外機に使われていたらしい。 どうにか使えるところはないかと考えていると、ある一つの案が浮かんだ。 それは、準コンプリメンタリ回路を使って(「純コンプリメンタリ」とは違う)パワーアンプを作れないか、と。 ちょっと調べてみると、 こちらや こちらが見つかった。 早速制作。
|
歪みの除去
どれだけ電圧を上げても1W未満という小さい出力で音が歪む問題に直面した。 さてどうするか、と考えてプリ段を考えてみる。
続きはまた後で。
2024/3/13 追記) 今見れば電流不足だった。 単純な間違い。 なんでこんなところを間違えたんだ...?
|
2024/2/7 追記1)まさか...
部品を紙の上で並べてみてふと気がついた。 「あれ...?もしや...?」 これだけのパワーモジュールは流石に小さいトランジスタで動かすのは無理があるだろう... データーシートを見ると「 Note: All Transistor Units are Darlingtons.」の文字がしっかりと書かれていた。 ...結局以下のように考えた。 続きはまたいつか...
|
で、結局...
2024ハムフェアでの戦利品その1 アルインコのDC-DCコンバーター(ED-12D)を解体してたらふと思いついた。 ...これって...パワーアンプにできるのでは...? たしかに、昔のアンプは定電圧電源を改造したものが多かった。 これは...? で、回路を調べたら専用ICから2SD880と2SD845*3のダーリントン接続で出力していることがわかった。 これならいける! ...ってことで回路を考える...( 参考)
|
すごく間が開いたけど回路を再検討(2024/10/18)
今度は本気で考えてみた。 部品箱にある部品だけを使うように回路を作成。 初段はJ-FETとNPNを組み合わせた差動増幅、それをまた差動増幅で受けるという構成。 フィードバックももちろんかけた。 これなら最初のパワーモジュールでもできそう。 ちなみにcircuitjsで計算してみた。 なんか動きそう...?? あとは...電源とスタートアップ回路かぁ... (ちなみにゲインはものすごい高い。もちろんボリュームに負荷をかけないため。ん?まてよ...これは迷信...?)
|
|
|