2009年04月12日

自動センサーVS.cVss踏切

私用でチョット忙しい毎日…。(汗)

自動センサーが登場してご利益があったかなぁ?と感じる部分「鉄道信号」一つのセンサーで複数(4箇所)の信号機を操れるのが嬉しい。特に貨物基地など入換信号、出発信号等が多数在る場合、威力を発揮する。今回のレイアウトスクリプト母体は「cVss」であるが出入りする信号機は現在「自動センサー」で制御している。

「場内信号機」の様に信号機が二つ在る場合(既に、ご存知かと・・・)
■初期値(スクリプト)を信号に与えておく。
 SetSignalEx 0,1  (赤)
 SetSignalEx 1,101 (赤)
■自動センサー設定
 上の信号色を変えたい場合「設定#0」を1:赤 6:青
 下の信号色を変えたい場合「設定#1」を101:赤 106:青

只今作成中…EF64貨車切離の瞬間
2009-04-12-01-j.jpg
機廻しテストで宙に浮いた線路も見る形に…

スイッチャーの瞬間
2009-04-12-02-j.jpg


続きを読む・・・
posted by 漆黒 at 21:26| Comment(2) | TrackBack(0) | スクリプト | このブログの読者になる | 更新情報をチェックする

2009年03月29日

cVss・ダブルスイッチャー完成!

昨日投稿したスイッチャーの作動にzioさんから追加スクリプトを頂きました。まぁ、スクリプト超初心者にはコピペしか脳が無いのでアタフタの連続でしたが無事、目的の動作(ダブルスイッチャー)が完成しました。一部、ワンサイクルが終わった後、後続車両が入線し機廻しでポイント制御が難しい部分があり線路配線を見直しました。

レイアウト 改善ポイント」(IEで拡大して下さい)
cVss08-02-b-j.jpg
ダブルクロスを断念!

出場時のポイントセンサー見直し
cVss08-b-j.jpg
最終機廻しでDE10と機関車が共有するポイントを「トグル1」タイプに変更。
続きを読む・・・
posted by 漆黒 at 19:22| Comment(0) | TrackBack(0) | スクリプト | このブログの読者になる | 更新情報をチェックする

2009年03月28日

cVss・スイッチャー機の動作

ビュワーを立上げ「一回」ポッキリの作動であれば拘る必要はないのだが…

開放された貨車を別機で牽引し貨物基地へ帰還、再出発するパターンを想定する。待機牽引車両をcVss規格外である「他編成発車センサー」で「編成名指定」(オブジェクト趣向から外れるかも?)で組み込むと初回動作は希望通りの動きをするが、開放されたのは貨車だけと見えるが「編成スクリプト」が(生存)残っているので前編成名は消えることが無い。ここで一回ポッキリで終わるかエンドレスで連結開放を繰り返すか悩むところだ…続きを読む・・・
posted by 漆黒 at 22:14| Comment(3) | TrackBack(0) | スクリプト | このブログの読者になる | 更新情報をチェックする

2009年03月20日

cVss・切離した貨物の処理

相変わらず空中に浮いた線路でアタフタしています。

zioさんが公開された「西濃鉄道ホッキホキ(仮称)」でホキを牽引して来たEF65が分離しホキ単独になった状態に待機していたDE10が出発、ホキと再連結して出発するシーンを再現したくここ数日、頭が爆発しそうだ!(笑)ここで使われているスクリプトは上記表題用なので使えない(残念!)。只今、公開されているcVssにも当て嵌まるスクリプトもなく途方に暮れておった…氏が公開された「cVss-PartsLayout-v114」をボ〜〜と眺めていた所、画面中央で再現されている「駅で通過待ち」をするスクリプトが目に入った。

cVss作業レイアウト抜粋
機廻しNO2-J-j.jpg続きを読む・・・
posted by 漆黒 at 17:33| Comment(2) | TrackBack(0) | スクリプト | このブログの読者になる | 更新情報をチェックする

2009年03月16日

cVss連結・開放

昨日からNewレイアウト作成に取り掛かる…

今回は一味違う「漆黒流レイアウト」でもと張り切って作成開始!エンドレスで直走るレイアウトも良いけど、旅情が無い!幸いにもzio氏が「cVss」を公開。本家公開予定の「自動センサー」もここまで気配りしたスクリプトは無理であろう…。

続きを読む・・・
posted by 漆黒 at 20:31| Comment(0) | TrackBack(0) | スクリプト | このブログの読者になる | 更新情報をチェックする

2009年03月10日

警笛を鳴らす

自動センサー」なるものが追加されるらしいが、これを習得するまで又時間がかかりそうだ。作成者が意図する作動を完璧に再現出来れば拍手!手直し続きなら既存の「スクリプト」に頼るしかない。と言う事はスクちゃんの勉強も中断してはいけないって言うことか?

zioさんの機廻しに追加機能(発進時、警笛を鳴らす)を教えて頂いた方法で組み込んでみた。
「車両編成」
//----------------------------------------------------------------------
//基本動作用メソッド群
//----------------------------------------------------------------------
//出発メソッド
BeginFunc MethodStart
PlayHorn ←A ここ
mov VarTargetSpeed VarTopSpeed
call this MethodSpeedChange
EndFunc

//途中駅自動出発メソッド
BeginFunc MethodStationStart
set VarDelayTime 5000
GetSystemTime VarStartTime
SetEventTimer this MethodStationStart2 TimerEventID 100
EndFunc
BeginFunc MethodStationStart2
Var VarEndTime
GetSystemTime VarEndTime
sub VarEndTime VarStartTime
if>= VarEndTime VarDelayTime
call this MethodStart
KillEvent TimerEventID
endif
EndFunc

//反転即出発メソッド
BeginFunc MethodTurnStart
Turn
PlayHorn  ←B ここ
mov VarTargetSpeed VarTopSpeed
call this MethodSpeedChange
EndFunc

//速度変更メソッド
BeginFunc MethodSpeedChange
//変数宣言
Var VarTemp
Var VarTime
Var VarTargetVoltage
Var VarAcceleration
//動作判断
GetCurrentSpeed VarCurrentSpeed
cmpeq VarTemp VarTargetSpeed VarCurrentSpeed
ifzero VarTemp
cmp> VarTemp VarTargetSpeed VarCurrentSpeed
if VarTemp
mov VarAcceleration VarTrainAcceleration
else
mov VarAcceleration VarTrainDeceleration
endif
//変移時間算出
mov VarTime VarCurrentSpeed
sub VarTime VarTargetSpeed
abs VarTime VarTime
div VarTime VarAcceleration
mul VarTime 1000
div VarTime VarUserParameter
//目標電圧算出
mov VarTargetVoltage VarTargetSpeed
div VarTargetVoltage VarTopSpeed
//速度変更
SetTimerVoltage VarTargetVoltage VarTime
endif
EndFunc

//方向取得メソッド
BeginFunc MethodDirection
GetDirection VarDirection
EndFunc
/*------------------------ここまで----------------------------------------*/
当初、「A」だけ設定したのだが、ビュワーの立ち上がりと貨車の切離し瞬間だけのみ警笛がなるが、分離した機関車の方向転換時は無音である。そこで素人考えで(汗)「反転即出発メソッド」中(B)を入れて見たところバッチリ!作動する。これで良いのか??


2009-03-10-j.jpg

posted by 漆黒 at 21:39| Comment(4) | TrackBack(0) | スクリプト | このブログの読者になる | 更新情報をチェックする

2009年03月08日

スクリプトエデッター

ここ数日、スクちゃんと語らう日々が続く…

で、何とかナラぬか?「VRMスクリプトエデッター」スラスラと記述出来るお方は不要だが、何が何だか分らぬものには「黒背景の白文字」に悪戦苦闘じゃわぃ!

本家」に問い合わせて見た
問い」:初めての方がスクリプトに挑戦したが旨く動かないとか、悩むケースが多いと思います。自在にスクリプトを組み込める方には不要だと思いますが、これからVRMを始める方には難題です。で、スクリプトの予約語は「別色彩(色)」で表現して戴けると、この部分も少しは和らげる効果があるのでは?黒背景に白文字だけでは頭が痛くなります…楽しく学ぶには遊び心が必要ですヨ!
例)
正:SetSignal
誤:Setsignal ←(小文字)
例)
正:call
誤:Call←(大文字)
など、ちょっとしたミスで悩むケースが多いと思います。
色が予約語に変化しない!と気づけばスペルミスだと特定出来ます。
「対が必須のもの」
BeginFunc
EndFun
等はBeginFuncと入力すると改行スペースにEndFunが自動的に挿入されるとか…巷に出回っている無料配布の「テキストエデッタ」さえこの位の機能は備えています。ユーザーが独自に変更(文字色、背景色等)出来るスタイル形式が欲しいと思います。ご検討下さい!!

回答」:テキストエディターですが、現在は、windowsの標準コントロールを使用しているため、インテリセンス的な仕組みの実装は、残念ながら構造上できません。エディターは、1つのアプリケーションとして成立できるほど複雑な仕組みになりますので、自前エディターの実装には
それなりに時間が必要になります。改良対象としていますが、実装時期は未定になっています。なお、実装された場合は、コンパイラと統合された統合開発環境になる予定です。

と言う事で「チンプンかんぷん」です。

仕方が無いので、こちらで「MKEdior」なるものをDLして学ぶ事にする。VRMスクリプト(Var等)は「エデッタオプションの強調表示」で登録し、文字色、リマークなど色設定をすると見違える様に見易くなりました
続きを読む
posted by 漆黒 at 20:00| Comment(3) | TrackBack(0) | スクリプト | このブログの読者になる | 更新情報をチェックする

2009年03月04日

西濃鉄道ホッキホキ(仮称)で遊ぶ

こちらでzioさんが作成された「スクリプト塊(センサー)」で埋め尽くされたレイアウトにて「スクリプト・プチ修行!」センサーは各線路に一つとなると微妙にセンサー位置を気にしてレイアウトを作成しなければいけないかも?平坦なレイアウトなら手直しも楽だけど勾配区間などは注意が必要だ。小生の様に単純なレイアウトならでスクリプトを設定することが出来るが、ホッキホキの様に複雑なセンサーで動くものはレイアウト初期段階から全体構想がシッカリしていないと仕上がらないと思った。
で、頭が痛くなったので………↓

「遊んでしまいました」(zioさん御免なさい!)
2009-03-04-j.jpg

夜間設定で「DD51-1146」運転席が綺麗じゃ〜


「ポイントが如何に動くか?」
2009-03-04-06-j.jpg
折角、可動ポイントを購入したが使わない日々(笑)まさか、この様なところで役に立つとは…
各ポイントに配置して眺めると動きが理解出来る。

2009-03-04-07-j.jpg
見事分岐!下記がそのセンサースクリプトじゃ…が◎△■?です。

//----------------------------------------------------------------------
/JRは直進、それ以外は分岐にするポイント用センサースクリプトPointSensorJR01
//----------------------------------------------------------------------
//変数宣言
//オブジェクト変数
VarTrain ObjTrain
VarTrain ObjTrainJR
VarLayout ObjLayout
//イベント変数
Var SensorEventID
//スタート
//レイアウトオブジェクト取得
getlayout ObjLayout
//センサーが編成を発見したらメソッドへ
SetEventSensor MethodSensorEvent SensorEventID
//メソッド
//ポイントを変更するメソッドへ
BeginFunc MethodSensorEvent
GetSenseTrain ObjTrain
mov this ObjTrainJR ObjLayout ObjTrainJR
//JRなら直進
ifeq ObjTrain ObjTrainJR
set ObjTrain VarTrainPointBranch 0
call ObjTrain MethodPointBranch
else
set ObjTrain VarTrainPointBranch 1
call ObjTrain MethodPointBranch
endif
EndFunc



碓氷峠・・・ブツブツ…構想…貴方にゃ無理じゃヨ!(お釈迦様より)
posted by 漆黒 at 19:55| Comment(2) | TrackBack(0) | スクリプト | このブログの読者になる | 更新情報をチェックする

2009年03月01日

スクリプト三昧

雪景色のレイアウト(冬神)も完結し次回作の下準備と思ったのですが…

VRM界隈でスクリプトアレルギーを解消する各名手方がお時間を割いて投稿下さっておる。完全習得となるとチョット時間がかかるが触り部分から入門しても面白そうな企画が満載である。

zio氏「VRM4CV標準化スクリプト構想」計画
樹形図は枝状に配線されたレイアウトにC57機が規則正しく進入・後退をする面白いスクリプトである。

moko氏「スクテン」(自動折返し運転その02)
超初心者にも分り易く「リマーク(//)」を入れた解説は有難いと思う、その度マニュアルを参照していると頭が痛くなりそう。VRMのエディタも白色一色ではなくmoko氏の解説の様に色分けして頂けるとより興味が湧く。(無料テキストエデッタでもこの位の機能はある)ローカルなレイアウトで単線を往復するレイアウトには使える。

沖ノ鳥島氏「自動機回し運転」
これは小生が一番気になる存在。小生は「貨物ファン」なので機回し的スクリプトは願ってもない。本日、午後は編成を変えたり、いろいろと試して楽しんで見た。又、スクリプトの勉強を兼ねて下記のような独自の「リマーク」を入れて見た。

//irekae1-SNR

//SetSensorMode
//センサーの検出モードを変更します。 変数に0を設定した場合は、従来と同じ先頭車両で検出します。
//1を設定した場合は、最後尾車両で検出します。
SetSensorMode 0

//VarTrain(t)
//編成オブジェクトを保持する変数を宣言
VarTrain t
Var s

//SetEventSensor(sens)(s)
//センサーイベントのコールバックを登録します。センサーは列車が通過するときにイベントを発生し、
//登録されたコールバックを呼び出します。
SetEventSensor sens s

BeginFunc sens

//GetSenseTrain(t)
//センサーが検出した編成を取得します
GetSenseTrain t

//ifeq(t.direction)(1)
//条件を判断します。
//変数AとBが等しいならば条件を満たしたと判断します。
//変数Aは、変数のみ指定可能です。変数Bは、変数の代わりに数値を設定できます。
ifeq t.direction 1

//call(t)(irekae)
//オブジェクトのメソッドを呼び出します。メソッドが終了すると、次の命令に移行します。
//メソッド (method)とは
//例えば、「テレビ」をオブジェクトとすれば、「画面を映す」「チャンネルを変える」といった操作がメソッドとなる。
//テレビのユーザはその内部の挙動の詳細を知らなくても、リモコンからメッセージを送って希望するメソッドを呼び出すだけで、
//テレビを操作することができる。

//オブジェクト変数(t)のメソッド(irekae)を実行
call t irekae


endif

EndFunc

本日はこれまで草臥れました(汗)

「機回しをプチ改造」
2009-03-01-j.jpg
posted by 漆黒 at 20:16| Comment(0) | TrackBack(0) | スクリプト | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。