目標:PC画面のボタンをクリックして以下の運転を自動で行いのんびり眺める。
列車が駅を発車、実物同様にゆっくり加速する。次の駅に近づくと滑らかに減速してホームの定位置に停車し、
数秒後に再び発車する。
以下の3モードを想定
1.単線エンドレス (駅で発車と停車)
2.単線往復運転 (2駅を往復)
3.単線交換運転 (将来、開発予定)
DCCはデジタルコントロールなんだからPCに接続すれば容易に自動制御が出来る可能性を秘めています。
しかし、具体的に検討すると結構面倒くさそうです。
1.既存メーカのシステムでPCの接続しようとするとDigitraxのMS100やLenzのLI101FはRS232接続であり、
何も考えずに差し込めばつながる(正確にはつながる事もある)USBより面度で難しそう。
費用も2万円以上掛かりそうで上記目標に限れば少々大げさです。
2.市販の自動コントロールソフトは画面、機能が充実していて完成度も高そうですが
導入が難しそうで私にとって敷居がたかい。
3.既存メーカの列車位置検知は電流タイプで配線が多くなるし、貨物列車など非集電車両の検知は難しそう。
4.2008年9月現在私が趣味で使っているPCはWin98ディスクトップで高度なソフトを導入しても動くか分からない。
Vistaのノートパソコンもあるが遅い、重い、よけいな機能が邪魔、不必要に立体的な画面表示は眼に負担。
精神修養のため以外にVistaを使うメリットがない。
そこで、パソコンからDCC指令を出して自動コントロールが可能になる永末システム事務所のDP1(赤い箱)の
DP1x (DP1ソフトウエア開発キット)を検討しました。
。
1.接続もUSBで簡単、赤い箱(DP1)はWin98に対応している。
2.DP1xはExcelで動かせる。
小規模なレイアウトなら簡単に運転画面(コントロールボード)が作れそうだし、
DCCのアドレスや運転特性の管理はExcelシートで行えばいいので、簡単にDCC自動運転が出来そう。
3.価格も2500円と手ごろ。
4.DP1の電流出力は1A以下に限られるが、HOでも最近の車両なら問題なさそう。
ただし、3重連をやると苦しい、また室内灯に電球を使っているときは要注意です。
当面Win98で遊ぶには支障なさそうなのでDP1xを購入することにしました。
ところが永末さんに確認したらDP1xはWindowsXP/2000で動作確認しているがWin98に対応しておらず、
仮に動いても将来バージョンアップしたときに動くかなくなるかもしれないとのこと。
従って私のWBサイトのDP1xのWin98上の動作は、たまたまなので他のWin98上でDP1xで動くとは限りません。
2009年4月2日 追記 5.2009年4月よりミニノートパソコンWinXPを使用することにしました。 Vistaの2年間は結局なんだったんだろう。 |
自動運転は、次の3要素に分けて検討を進めました。
a.列車検知センサ(光センサ)
b.検知データをUSB接続でExcelにデータ取込む機器(USB-IO)
c.DP1を制御(DP1x)するプログラム作成(Excelのプログラム)
DCC、アナログDC運転の両方で使える列車検知センサとして光センサ回路を試作しました。
私は電子関係は弱いのでThe
World of Marklin HO railroad model
の光センサ回路と電源回路を
そのまま使用させて頂きました。 電源5V、フォトトランジスタで車両の影を検知します。
車両は確実に検知できました。ただし可視光線に反応するので手をかざしても動作します。
LED消灯 |
写真が見にくいですが センサ上に車両が来るとLED点灯 |
お座敷運転用にIMONトラック S73に組み込みました 2008.11.3 |
部品:照度センサ(フォトトランジスタ)NJL7502L(@50円)
トランジスタ 東芝2SC1815GR(@5円×2)
半固定ボリューム500kΩ(@80円)
コンデンサ0.1μF(@10円)
LEDと抵抗は手持ちを利用
1回路当たりの材料費は200円程度、接続コードに利用したTOMIX延長コードが一番高価でした。
図−1 光センサ ブロック図
2008.9.6作成 2009.2.7追記
フォトトランジスタを使った列車センサは明るいところでしか使えません。
トンネルや切通しなどでも使用できるように反射型フォトセンサを試してみました。
使用したのはフォトリフレクタRPR-220(ROHm)で赤外発光ダイオードとフォトトランジスタがセットになっています。
フォトリフレクタはフォトインターラプタとも呼ばれています。
ケーシングの寸法は4.9mm×6.4mmで反射距離は6mm(実用4mm〜14mm程度)。
もう少し小さければ外観をATS地上子に出来そうですがケーシングが小さくなると検出距離も1mm程度に短くなるので、このサイズにしました。
左がフォトトランジスタ、右が赤外LED |
赤外LEDは220Ωの抵抗を直列に入れています。 |
LEDとフォトトランジスタの5V側は共用するので配線は5V、0Vとフォトトランジスタの3線になります。
反射型は白紙程度に赤外線を反射する必要がありあます。未塗装の木製床板はそのまま検知できますが
黒い床板は検知できません。床に白い紙を貼り赤外線を反射させる必要がありました。
図−2 反射型センサ ブロック図
照度センサは列車がいないとき抵抗が小さくON、反射型は列車がいるとき抵抗が小さくなりONとなります。
照度センサの誤動作は列車がいないのに検知することがありますが、反射型は逆に列車を検知し損なうことがあります。
それぞれの特徴を生かして使い分けていく予定です。(2009.1.12)
反射型光センサは白い部分(磨き出し金属面は検知)しか検知しないので、USB-IOのデータ取込タイミングにセンサ上が黒い床板だと列車を検知しません。(図−2)そこでタイマー(NE555)を組合せ一度検知したら数秒間は検知信号を保持するようにしました。これで誤動作が大幅に少なくなりました。タイマNE555は2番端子の入力電圧がVCC(5V)から約0Vに落ちるのをきっかけ(トリガ)として端子3の出力が0Vから5Vとなり所定時間経過すると0Vに戻ります。図−2ではフォトインタラプタの出力は検知時5V、非検知0Vでしたが図−3では逆に検知時0V、非検知5Vになります。初めはフォトカプラを入れて逆転しましたが、その後、フォトインタラプタの配線を変更し、フォトカプラを1個省略しました。
図−3 タイマー組合せ ブロック図
センサはフォトトランジスタの+側 フォトトランジスタの−側は赤外線ダイオード と共用に配線変更 |
2009.2.7
左:検出時 0V 非検出 5V 右:検出時 5V 非検出 0V |
反射形光センサ部の回路図です。 左が2009.1.12 右が2009.2.7の改良版 R1とR2は適当に手持ちの R1: 220Ω R2: 51kΩ 2011.4.9追記 |
タイマーの回路図 |
2011.4.27追記
線路をブロックに区切り、走行電流が流れているか検知する方式も試してみました。光センサは一点の上に車両がいるかどうか検知するのにたいして、ブロックの中に列車がいるかどうかを検知します。ダイオードの電圧降下によりフォトカプラを作動させ、ブロックの出入りでを車両がギャップを跨ぐときの誤動作防止タイマーをかませてUSB−IOでPCへデータを送ります。
図−4 走行電流検知ブロック図
|
動力車だけでなく、テールライトを積んだ客車等も検知出来るので、光センサ、反射型光センサーとそれぞれの特徴を生かして使っていく予定です。
2009.2.15
2008年9月現在、個人使用のパソコンはWin98のデスクトップです。
この環境でExcelにデータを簡単に取込むにはどうしたらよいのか調べたらテクノキットの「USB_IO」がありました。
送料込み1500円なので早速試してみました。
キットを組み立ててUSBポートに接続すれば自動認識し、12点のON/OFF信号の入出力が出来ます。
5回路分 作ったところでプラケースに入れました 2008.11.3 |
ソフトはバケさんの趣味の部屋の「Excel(VBA)で汎用USB-IO」を使用させて頂きました。
入力は接点をGRG(0V)と接続でビット0、解放で1になります。
出力は接点をVCC(5V)とつなぐとON、OFFします。 (2008.10.5)
自動運転プログラムはExcelで組みました。まずは駅の発車と停車(単線エンドレス1駅)を組みました。
各列車のアドレス、種別、最高運転速度、停車直前速度、加速率、減速率のデータをExcel sheetに入れておきます。
画面で列車名を選択すればデータを呼び出します。
運転種別はSL(サウンド付き)とEL、EC(サウンドなし)の2種類としました。(サウンド付き列車もEL、ECで運転すれば喧しくない)
プログラムは、私には昔なつかしいベーシック(ExcelのはVBA
Visuial Basic for Application)です。
ExcelでAlt+F11で編集していきます、昔のN88 Basicと細かな点は多少ちがいますが、
N88 Basicはほとんど忘れいるのでかえって違和感無く作れます。
Excelの運転画面
SL DirectとEL、EL Direct はクリックすれば設定したスピードで走ります。
「A Auto」、「B Auto」は駅で停車の自動運転で設定回数だけ発車、停車を繰り返します。
センサは減速開始位置Aと停車位置Bの2箇所です。
レイアウトは単線エンドレス、DCCポイントは1個なのでコントロールボードも簡単です。
(当たり前ですが、残念ながら手動ポイントはExcelで制御できません。)
ポイントはボタンをクリックすると開通方向が緑になります。(Point1,3は16番用)
「A Auto」はSLサウンドに対応しています。まだ、駅の自動発車と停車のみですが、蒸機が汽笛をならしゆっくりスタート、
所定の場所から減速目標位置で停車できるようになりました。
ただし、発車毎に汽笛が鳴ると喧しいので運転時間には注意が必要です。
2008.10.26
2駅往復とポイント1個を組合せ、A,B2列車を交互に発着させるプログラムを組みました。
「A駅」2線と「B駅」1線の2駅を往復します。列車は「A列車」と「B列車」の2列車まで設定可能です。
「A列車」または「B列車」単独で往復するモードと、「A列車」と「B列車」が交互に発着するモードが自動運転できます。
交互発着の動画ページを作りました。
2008.11.3
自動制御ポイントが1個では運転パターンも限られるのでA駅の反対側の分岐器にポイントマシンを取付て
DS52ポイント用デコーダで制御するようにしました。
お座敷運転なのでポイントマシンは手動でも動かせるシノハラとPECOを使用しました。
|
DS52は回路がムキだしですが、 お座敷運転なので線路脇に設置しました。 |
ポイントの自動切換と単線エンドレスの「A列車」と「B列車」のプログラムを組み合わせて交互に運転します。
「A列車」「B列車」ともにA駅、B駅に停車する普通列車、B駅を通過しA駅を所定回数通過後停車する
急行列車の2種類の運転モードを作りました。
2009.2.22
要素技術に目途が付いたのでモジュールレイアウトの瀬里駅をB駅、お座敷運転の竹谷駅をA駅として自動運転対応にしました。
と言ってもレイアウト側の工作は瀬里駅に電流検知ブロックを設けただけです。
エクセル運転画面の主な変更点
(1)上下を反転し、運転モードを整理しました。
(2)竹谷駅の1番線、2番線に列車名、進行方向を矢印で表示しました。
(3)中央に運転列車名と速度を表示しました。
No.1 Loop No.2 Loop |
竹谷駅1番線と2番線を発着するエンドレスの自動運転で、 瀬里駅に停車する各駅停車と通過する急行を選択出来ます。 なお分岐器は運転する番線に自動で転換します。 |
|
A/B Loop | 1番線と2番線を交互に発車するモードです。 | |
No1/No.2 | 1番線の列車を自動で2番線に移動するモード。 | |
Seri return | 竹谷駅と瀬里駅の往復運転モード | |
Yard return | 竹谷駅とヤードの往復運転モード | |
Manual Control | Start | 自動加速して巡航速度で走行します。 |
Slow | 徐行速度まで自動減速 | |
Stop | 自動減速して停止 | |
UP | 停止中は1クリックで徐行まで速度を上げます。 走行中は1クリックで4/126step速度を上げます。 |
|
down | 走行中は1クリックで4/126step速度を下げます。 徐行速度以下になると自動停止します。 |
|
Semi-Automatic | 減速センサ番号と停止センサ番号を指定して Startをクリックすると自動化加速し減速センサ感知で徐行 停止センサ感知で停止します |
センサ回路は10回路に増えたのでケースを大きくしました。
2009.3.13
ユニトラックのエンドレスにDCC自動運転を組み込みました。 | EXCELのプログラムは12mm用をアレンジ。 センサはフォトトランジスタを4カ所に設置。 USBとのデータ接続は12mmと共用です。 2010.7.4 |
車両の近くで操作するためワイヤレステンキーマウスを 2011.3.12 九州新幹線が全通しましたが前日の東日本大震災で |
サンワサプライのワイヤレステンキーマウス |