いじればいじるほどバグが出てきて、すみませんが
r2m13->r2m14変更点:
・EducationPlatformのみの変更です。
・バグの修正(引数指定型ブロックがまともに動かないバグ。止まれ、走れのブロック)
・速度の単位を全て%に固定。0〜100%の値を入れて動くようにしました。内部で0〜1023に計算し直します。
・MM2モード、DCCモードのブロックを追加(デフォルトはDCCなので、DCCを使う場合はブロック配置不要)
・ハイライトしなかったので、するように改良
・「はじまり」ブロックを追加。と言っても、機能としてはダミーです(無くても良い)。
・ロジックブロックに「もし〜でなければ」(If-else, If-If else-else)構文の2つを追加が使えます。
r2m14->r2m15変更点:
・ファンクションのモメンタリ動作(OFF->ON->OFF)を行うブロックを追加
・S88在線検出センサの命令からSleep2を削除
・でんげんブロックにSleep2秒を内蔵、チェックではなくプルダウンに変更
・メニューをひらがなで分かりやすくした
・進行方向の向きをプルダウンに変更(まえ、うしろ)
---------------------------
■画面の定義
以下のように画面を定義することとしました。

■「関数」ブロックの使い方
関数に引数を追加して、汎用性を高めたブロックを書いてみました。
「関数ブロック」に歯車のアイコンが付いていると思います。これを押すと、引数(関数に数値や情報を与えるもの)を追加できるのです!ここでは、addr(アドレス)を追加しています。名前は自由に変更できます。

引数は、以下のようにブロックの引き出しから使えるようになります。

spdという引数も追加し、以下のように「関数:何かする」を変更してみました。

「関数:何かする」は、以下のように使う事になります。引数に数字を入れると、「関数:何かする」を使い回していろいろな車両を動かす事ができます。

以上をまとめて、以下のようなブロック図になりました。

ブロック図ファイル:
userseqs (13).xml