5年3ヶ月使った除湿器が壊れました。触っていないのに音がしていたのは、その前触れ?だったかもしれません。無いと困るので早速注文しました。
PWM パワーパック(Nゲージ用)
開発中のNゲージ用PWMパワーパック基板。3次試作品でデバッグをほぼ完了。
出力素子をパワーMOSからフルブリッジのモータードライバ(TB6642)に変更。(レール短絡による過電流検知と過熱検知等安全対策のため。)
モータードライバで逆転動作ができるので前回品からリレーを1個削除。
基本はワンハンドル・マスコンユニットとの組み合わせで使用します。こだわったのは運転対象の車両毎(最大8種類)にパラメータの設定と記憶。例えば、常点灯の周波数と明るさ、モータ駆動の周波数、起動時の各ノッチの加速度と惰行時及び制動時の各ノッチにおける減速度。所有するの車両に合わせてあらかじめ設定しておけば、その車両毎に制御可能。貨物であればPWMの周波数を100Hz程度に下げて低速を重視といった使い方。常点灯も車両により設定できるので、走らせるたびにダイアルを合わせるといった手間いらず。
上記の設定が済めば、前後進のスイッチオンでライト点灯、ノッチをP1に入れると、決められた加速度でそのノッチの最高速まで加速。更にノッチを上げれば、そのノッチでの設定に従って加速。Nに戻すと惰行モードで、設定された数値に従い減速。制動へノッチを入れれば、そのポジションに対応した数値で減速・・という、実車に近い感覚で楽しめるように考えました。
パラメータの設定はRS232通信で、ターミナルソフト(上級者向け)を使うか、Windowsで使用できるエディターソフト(開発中 下の画像)で行います。
上の例では、Mode4が20KHz駆動、Mode5が800Hz駆動(TOMIX EF210で実験)の設定例です。
エディターでは、各モード毎にパラメータの読み込みと設定(書き込み)が出来るようになっています。
まあ、これだけ凝った内容で開発したので値段はそれなりになる予定ですが・・。
あとは、マスコンの外側(ケース)の設計を終わらせないと。
米ぬか入りのパン
自家精米をしているので日々米ぬかができます。そこで、パンの材料に使ってみました。
1回目 強力粉 450g 炒りぬか 50gでうまくできました。
もう少し増やしても問題なさそうなので、
強力粉 400g 炒りぬか 100g に。
その他の材料
塩 4g
サフ赤 6.5g
水 300CC
ミリン 大さじ2
酢 小さじ1
これだけ。
発酵も問題無く、焼き上がりもグッド。
小麦粉だけより「ふかふか」です。
ネットワーク型ポイントチェンジャー
半二重通信、RS-485制御のポイント切替器を作りました。
ボード1枚で4個のポイントの切り替えを行えます。RS-485で最大16枚のマルチドロップ接続が可能なので、4×16=64個!まで対応しますが、まさかそれほど多くのポイント切替を必要とすることは無いですよねぇ。
ユニトラックで動作検証をしたところ10mSのパルスでは少し短すぎて動作を保証できないので、余裕をみて50mSのオン時間としました。
PCから”010″とコマンドを送ると、1枚目の基板の1チャンネルを直線側に切り替えます。(分岐側にするときは、”011″)
PCを使わないときのことを考えると、手元のスイッチでコマンドを送れるスイッチボックスも考えないとダメですかね?
写真の上に見える青いものはUSB接続のRS-485インターフェースです。
車両検出用のセンサーボード
サーボの動作チェック
ラジコンなどに使うサーボ(SG92R)の動作チェック用に作ったソフトです。
サーボはタイマー1のPWM(OC1B)につなぎ、ADに接続したボリュームを回して180°動くことが確認できました。
(関係するところだけの抜粋です。)
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
$regfile "m328pdef.DAT" $crystal = 16000000 Config Portb.2 = Output '駆動用PWM OUT Dim Vin As Word 'ADC ch1 Dim I As Word 'ループ変数 Dim Adch1 As Word 'AD ch1の測定データ Dim V As Word Dim V_int As Integer Config Adc = Single , Prescaler = Auto , Reference = Avcc 'A/Dコンバータの設定。 10bit=1024 '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Config Timer1 = Pwm , Prescale = 8 , Clear Timer = 1 , Compare B Pwm = Clear Up '16MHz-->2MHz-->50Hz Set Tccr1a.wgm11 'fast PWM Set Tccr1b.wgm13 'top=ocr1A Compare1a = 39999 '分周値設定 Compare1b = 2899 ' Enable Interrupts 'すべての割り込みを許可。 Start Adc 'A/Dコンバータに電源を供給。 'main Do Gosub Adc_sub V_int = Adch1 * 3.71 V = V_int + 1000 Compare1b = V - 1 Waitms 10 Loop Adc_sub: Vin = 0 For I = 1 To 5 Vin = Vin + Getadc(0) ' アナログ入力0の変換値を変数へ代入。 Waitus 100 Next I Adch1 = Vin / 5 '5回サンプリングなので5で割る Return |