スクラッチプログラミング - でんしゃをはしらせよう

線路(せんろ)にそって電車(でんしゃ)をはしらせましょう。電車(でんしゃ)にセンサーをとりつけて、線路(せんろ)からはみださないようにうごかします。いろで確認(かくにん)するセンサーなので、プログラムは簡単(かんたん)です。

スクラッチプログラミング - でんしゃをはしらせよう

サンプルさくひんをみてみよう

今回(こんかい)は、線路(せんろ)をはしる電車(でんしゃ)のプログラムを紹介(しょうかい)します。

(みどりのはたをおして、スタートです。プロジェクトは、ScratchのPyxofyページでもごらんになれます。)

でんしゃをはしらせる

電車(でんしゃ)をはしらせるために、「ずっと」ブロックと「()ほうごかす」ブロックをくみあわせましょう。

  • ずっとうごかしつづける
 電車をずっと動かし続けるプログラム
電車をずっと動かし続けるプログラム

でもこのままだと、まっすぐにしかうごきませんね。線路(せんろ)がカーブしていても、それにそってうごくようにします。そのために、電車(でんしゃ)にセンサーをとりつけますよ。

センサーをつくる

センサーは、電車(でんしゃ)の前方(ぜんぽう)にとりつけます。いろちがいのセンサーを2つつくってください。

赤と青の小さな丸を電車の前方左右に描く
赤と青の小さな丸を電車の前方左右に描く

でんしゃのむきをかえる

電車(でんしゃ)が線路(せんろ)のうえをはしっているかどうかを確認(かくにん)できるようにプログラミングしましょう。そのために、センサーの「いろ」をつかいます。線路(せんろ)からはみだしそうになったらセンサーがはたらいて、電車(でんしゃ)のむきがかわるようにしますよ。

でんしゃのひだりがわ

電車(でんしゃ)のひだりにあるセンサーが、線路(せんろ)の外側(そとがわ)のいろにふれたなら、みぎへむきをかえます。

  • いろで確認(かくにん)して、むきをかえる
赤色が緑色に触れたなら、右に15度まわす
赤色が緑色に触れたなら、右に15度まわす

でんしゃのみぎがわ

電車(でんしゃ)のみぎにあるセンサーが、線路(せんろ)の外側(そとがわ)のいろにふれたなら、ひだりへむきをかえます。

  • いろで確認(かくにん)して、むきをかえる
青色が緑色に触れたなら、左に15度まわす
青色が緑色に触れたなら、左に15度まわす

うごいている途中(とちゅう)でむきがかわるときは、最初(さいしょ)のむきを指定(してい)しておきましょう。

  • 「90どにむける」を追加(ついか)する
最初は右へ向ける
最初は右へ向ける

電車(でんしゃ)が線路(せんろ)にそってはしるようになりました!でも、センサーがみえたままだとヘンですよね。

センサーをかくす

センサーをみえないようにかくして、電車(でんしゃ)をはしらせましょう。そのためには、センサーのついていないコスチュームをつくりますよ。

  • 「コスチューム1」を複製(ふくせい)して「コスチューム2」をつくる
  • 「コスチューム2」のセンサーは削除(さくじょ)する
センサーのついていない電車のコスチューム
センサーのついていない電車のコスチューム

「ずっと」ブロックのなかに、コスチュームのブロックを2つ追加(ついか)してください。

  • 一番(いちばん)うえ:センサーのある「コスチューム1」
  • 一番(いちばん)した:センサーのない「コスチューム2」
「コスチュームをコスチューム1にする」と「コスチュームをコスチューム2にする」を追加する
「コスチュームをコスチューム1にする」と「コスチュームをコスチューム2にする」を追加する

くりかえしのブロックのなかで、複数(ふくすう)のコスチュームブロックをつかうと、一番(いちばん)したのコスチュームだけが表示(ひょうじ)されますよ。

プログラムかんせい

センサーがみえない状態(じょうたい)で、電車(でんしゃ)がはしるようになりました!

電車の完成プログラム
電車の完成プログラム

こんなときどうする?

「センサーをつけてプログラミングしたのに、電車(でんしゃ)が線路(せんろ)からでていってしまう!」

電車(でんしゃ)がカーブをまがりきれずに、線路(せんろ)からはずれてしまうことがあります。そんなときは、電車(でんしゃ)のスピードをおそくしてみてください。

また、かえる角度(かくど)がちいさすぎると、カーブをまがりきれない場合(ばあい)があります。かえるむきのおおきさを調整(ちょうせい)してみましょう。


まとめ

今回(こんかい)は、線路(せんろ)をはしる電車(でんしゃ)のプログラムを紹介(しょうかい)しました。

このプログラムをしっていると、「道路(どうろ)にそって、くるまをはしらせる」、「みちにそって、動物(どうぶつ)をあるかせる」など応用(おうよう)できますね。

今回のプログラムを応用したプロジェクトの例
今回のプログラムを応用したプロジェクトの例

最後まで読んでいただき、ありがとうございます。この記事をシェアしてくれると嬉しいです!

かんれんきじ

Start Here - Scratch (スクラッチ)
Scratch (スクラッチ)記事(きじ)のレベル別一覧です。初級、中級、上級、拡張機能にわけてまとめました。
Scratch Programming ebook for Beginners - 入門
スクラッチ初心者の方へ向けた内容を ebook にまとめました。スクラッチの基本から簡単なスクリプト(プログラム)の作り方まで、全108ページ。ぜひダウンロードしてご活用ください。