忍者ブログ

あやの

NゲージをベースとしたDCCについての日記を 書いています。 ある程度貯まりましたら、鉄道模型のDCCのまとめサイトに まとめています。 借りている容量が最大に達しましたので、移転します。 ★移転先:http://maison-dcc.sblo.jp/

2026/09    08« 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  »10
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

NmraDcc Library がVer1.3.0にバージョンアップ。
DCCのデコードにTimer0を使わず、割り込みを使うようになったと書いてあるかな。



拍手[0回]

PR
Smile Function Decoder Ver1 のFETはFDC6305 という、VGS(th)が0.4〜1.5Vのタイプで
ゲート抵抗無しです。

Smile Function Decoder Ver2 のFETはFDC6561 という、VGS(th)が1.0〜3.0Vのタイプで
ゲート抵抗1kΩです。


今回、FETの出力に高輝度白色LEDと10kΩの制限抵抗を取り付けて、
FETのG-S間電圧とD-S間電圧を観測しました。
本当はIdも測定したいところですが、電流プローブがありません。

※パッシブプローブで観測していますので、実際の波形からはちょっと変わっているかもしれません。

■観測風景
 ポリウレタン電線で観測ポイントを引き出しています。


■条件
・負荷:高輝度白色LEDと10kΩの制限抵抗
・周波数 31.1kHz
・Duty 50%
・PB4:3pin:OC1B:O4 のG-S間電圧とD-S間電圧を観測 

■Smile Function Decoder Ver1 
・CH1:黄色:G-S間電圧波形 // CH2:水色:D-S間電圧波形
①全体波形


②ON

80nsでONしています、D-S間に振動波形が見られます。

③OFF

80nsでOFしています、D-S間に負極?に一瞬なっています。

■Smile Function Decoder Ver2 
・CH1:黄色:G-S間電圧波形 // CH2:水色:D-S間電圧波形
①全体波形

ゲートは10kΩでプルダウンしているので、G-S間の電圧が4.5Vくらいに。

②ON

立ち上がりは、おそいですね。2msくらいかな。
ターン・オン損失が大きそう・・・
D-S間電圧波形に振動無し。

③OFF

立ち下がりも、2ms。
ターン・オフ損失が大きそう・・・

■考察
さて、ゲート抵抗の大切さが分かったところで、1kΩからもうちょっと
抵抗値を下げても良さそうですね。
Id見てないからなんとも言えませんが、損失大きそうです。
値を変えて見ても良いけど、0603のネットワーク抵抗なので、めんどくさ(^^;
LEDをPWMで点灯させるくらいでしたら、十分かな。

拍手[0回]

ATtiny85のPWM周りのおさらい(^^
twaydcc さん情報ありがとうございます。

以下のソースファイルの抜粋は、前進か後進かで、PWM出力するポートを
O2かO4に切り替えるスケッチです。
CS10レジスタを1〜15の設定、1分周〜16384分周まで設定できるので、
遅い点滅も出来ますね。

if( gDirection == 0){
// PB1:O2:6pin PWM 出力 , PB4:O4:3pin LOW出力

 //      OCR1B無効   OCR1B未使用 
GTCCR = 0; 

digitalWrite(O4, LOW); // PB4:O4:3pin LOW出力

 //               OCR1A有効   high出力          分周無し 
TCCR1 = 1<<PWM1A | 2<<COM1A0 | 1<<CS10; 

// analogWrite(F3, aPwmRef); // analogWriteは使えない 
OCR1A = aPwmRef;               // 0〜255 

} else {
// PB1:O2:6pin LOW出力  , PB4:O4:3pin PWM 出力

//               OCR1A無効   OCR1A未使用  分周無し 
TCCR1 = 1<<CS10; 

digitalWrite(O2, LOW); // PB1:O2:6pin LOW出力

//                OCR1B有効     high出力 
GTCCR = 1 << PWM1B | 2 << COM1B0; 

analogWrite(F1, aPwmRef); // 0〜255 
// OCR1B = aPwmRef;         // この設定もできる 

}

ということは、ATtiny85 でも、モータースケッチ作れますね!
 
【6/18追記】
arduinoのwiring_analog.cのソース内に
#if defined(TCCR1A) && defined(COM1A1)
 case TIMER1A:
 // connect pwm to pin on timer 1, channel A
 sbi(TCCR1A, COM1A1);
 OCR1A = val; // set pwm duty
 break;
#endif

なんか、設定すれば使えるようになるのかな。


拍手[1回]

最近導入した DS1054を4chフルに使ってファンクション出力O1〜O4を観測。

NmraDccのライブラリは、Timer0 を使っているんですね。
要領悪くてpwm周りの設定に理解苦しみます(^^;
OC1B で 3pin PB4のPWMが制御できるのはわかりましたが、OC1Aがウンとも・・・

OC0A,OC0Bとか、Timer0周りは触っちゃいけないんですよね?・・・
ん、分周比はいじれないけど、OC0Aはいじってもいいのかな・・・


拍手[0回]

SmileFunctionDecoderVer2 の組み立て図のPDFファイルを
直接リンクで貼っていましたが、見れないようでしたので、
暫定ページを作りました。

http://dcc.client.jp/FunctionDecoderVer2.html


拍手[0回]

ブログ内検索

プロフィール

HN:
あやのすけ
性別:
非公開
<< Back  | HOME Next >>
Copyright ©  -- あやの --  All Rights Reserved
Design by CriCri / Material by もずねこ / powered by NINJA TOOLS / 忍者ブログ / [PR]