.. include:: /index.rst :start-after: start_hello_message :end-before: end_hello_message レッスン10:RGB LEDストリップで道を照らそう =============================================================== マーズローバーは熟練した探検家になりましたが、今度はカラフルな個性を加えましょう!このレッスンでは、あらゆる色に光るRGB LEDストリップでローバーを変身させます。 SF映画の宇宙船のように、GalaxyRVRが進路を照らしているところを想像してみてください: - 前進時は緑色に光る - 停止時は赤色に光る - 旋回時は黄色に点滅 - 楽しいカラーショーも! これらの素晴らしいライトをプログラミングし、ローバーの動きと同期させる方法を学びます。自分だけの光る火星探検機を作成する準備をしましょう! .. raw:: html 学習目標 ------------------- * RGB LEDストリップの仕組みとプログラミング方法を発見する * Mammoth Codingを使用して色を制御し、照明効果を作成する方法を学ぶ * 火星探検ミッション用の信号色とライトをデザインする RGB LEDストリップで光の魔法を探る ------------------------------------------------------------- 自分だけの虹を作りたいと思ったことはありませんか?今ならできます!RGB LEDストリップを使えば、マーズローバーを想像できるあらゆる色に光らせることができます。カラフルな光の魔法を発見しましょう! .. image:: img/4_rgb_strip.jpg LEDストリップの4つの重要なピン: * **+5V** - すべてのライトにエネルギーを与える電源ピン(5Vの電力が必要) * **B** - 青色の光を制御 * **R** - 赤色の光を制御 * **G** - 緑色の光を制御 .. image:: img/rgb_5050.jpg 図工の時間に三原色について学んだことを覚えていますか?絵の具を混ぜるのと同じように、各LEDは赤、青、緑の光を混ぜ合わせて素晴らしい色を作り出せます!各「5050」LEDは、3色すべてを含む小さな色の工場のようなものです。 .. image:: img/rgb_5050_sche.png これらの色の工場はすべて、フレキシブル回路(カラフルな電気高速道路のようです!)で接続されています。電源ピンは一緒に接続され、各色のピンにはそれぞれ独自の特別な経路があります。 .. image:: img/rgb_strip_sche.png 最もエキサイティングな部分は?すべてのLEDを同時に色を変えるようにプログラムできることです!わずか数個のコードブロックで、自分だけのライトショーを作成することを想像してみてください。マーズローバーの冒険を照らし出す準備をしましょう! ライトを輝かせよう ------------------------------ #. まず、:ref:`app_connect` を行います。 #. それでは、GalaxyRVRを光らせましょう!「色を表示」ブロックをドラッグして開始します。 .. image:: img/9_rgb_block.png #. カラーメニューから好きな色を選びます。 .. image:: img/9_rgb_color.png #. ブロックをクリックすると、GalaxyRVRが選んだ色で光ります! **カラーコントローラーの作成** 次に、インタラクティブなカラーコントローラーを作りましょう!ステージ上にカラフルなボタンを作成し、タップするとGalaxyRVRのライトが変わります。 1. まず、既存のスプライトをすべて削除して、まっさらな状態から始めます。 .. image:: img/6_animate_delete.png 2. ライブラリからBallスプライトを追加します。このスプライトには複数の色のコスチュームが付属しているので最適です。 .. image:: img/9_animate_rgb_ball.png 3. 「このスプライトがクリックされたとき」ブロックを追加します。これにより、ボールをタップしたときに動作が発生します。 .. image:: img/9_animate_rgb_when.png 4. 「色を表示」ブロックを接続してGalaxyRVRを光らせます。 .. image:: img/9_animate_rgb_display.png 5. 小さな画面では、目のボタンをクリックしてステージが表示されていることを確認します。 .. image:: img/9_animate_rgb_eye.png 6. 表示ブロックの色ボックスをクリックし、下部のカラーピッカーボタンをクリックします。 .. image:: img/9_animate_rgb_pick.png 7. ステージエリアを長押しすると、虫眼鏡が表示されます!ボールスプライトの上で離して、その色をコピーします。 .. image:: img/9_animate_rgb_pick_color_n.png 8. ボールスプライトを長押しして複製し、さらにカラーボタンを作成します。 .. image:: img/9_animate_rgb_duplicate.png 9. 各複製のコスチュームを切り替えて、異なる色に変更します。 .. image:: img/9_animate_rgb_change_costume.png 10. 新しい色ごとに、カラーピッカーを使用して表示ブロックをスプライトの現在の色に合わせます。 .. image:: img/9_animate_rgb_pick_blue.png 11. 5つの異なるカラーボタンができるまで繰り返します! .. image:: img/9_animate_rgb_ball5.png ステージ上の色のついたボールをタップすると、GalaxyRVRがその色に光ります!タップするだけで、自分だけのライトショーを作成できます。 .. _rgb_move: GalaxyRVRの信号灯を実際に使ってみよう ---------------------------------------------------------------- **方向指示器ライト** 光の色と動きを組み合わせて、GalaxyRVRの信号灯を作りましょう!車に方向指示器があるように、ローバーは動くときに異なる色で光ります。 #. まず、:ref:`app_connect` を行います。 #. 次に、4方向すべての移動ブロックで方向キーを設定します。 .. image:: img/9_rgb_move.png #. 各方向に色表示を追加します: - 前進時は緑色のライト .. image:: img/9_rgb_green.png - 左折・右折時は黄色のライト .. image:: img/9_rgb_yellow.png - 後退時は赤色のライト .. image:: img/9_rgb_red.png 方向キーを押すと、GalaxyRVRが動き、対応する色で光ります! **呼吸灯効果** ローバーが停止しているときに、ゆっくり明るくなったり暗くなったりするクールな呼吸灯を作成しましょう。まるで息をしているかのようです! 1. 「停止」という新しいブロードキャストメッセージを作成して、ローバーが動いていないことを知らせます。 .. image:: img/9_rgb_new_message.png .. note:: ブロードキャストメッセージは、適切なタイミングで特定のアクションをトリガーすることでコードを整理し、プログラムをよりクリーンで理解しやすくします。 2. 各移動コマンドの後にこのブロードキャストを追加します。 .. image:: img/9_rgb_new_boardcast.png 3. 「[停止] を受け取ったとき」ブロックを作成して、呼吸灯を開始します。 .. image:: img/9_rgb_when_receive.png 4. 明るさを0%に設定して、完全に暗い状態から始めます。 .. image:: img/9_rgb_set_bright.png 5. リピートループを使用して、青色のライトの明るさを0.2秒ごとに10%ずつ徐々に上げます。 .. image:: img/9_rgb_increase.png 6. 次に、明るさを徐々に下げて、1回の呼吸サイクルを完了します。 .. image:: img/9_rgb_decrease.png 7. 再度「停止」をブロードキャストして、呼吸効果を継続させます。 .. image:: img/9_rgb_stopagain.png 8. 各キーイベントの最後に「他のスクリプトを止める」を追加して、色の競合を防ぎます。 .. image:: img/9_rgb_stop.png 9. 各方向キーイベントでライトの明るさをリセットします。 .. image:: img/9_rgb_set_bright_each.png これで、GalaxyRVRは移動中に色付きの信号で光り、停止中は青い呼吸灯で優しく脈動します! RGBモジュール関連ブロック ------------------------------- * GalaxyRVRを好きな色で光らせます。 - 色パッチをクリックして好きな色を選択 .. image:: img/block/rgb_display.png * GalaxyRVRを指定した時間だけ光らせます。 - 任意の色を選択 - ライトが点灯する時間を設定 .. image:: img/block/rgb_display_1s.png * 赤、緑、青の光を混ぜてカスタムカラーを作成します。色のフェードプロジェクトに最適です! - R:赤の明るさ(0~255) - G:緑の明るさ(0~255) - B:青の明るさ(0~255) .. image:: img/block/rgb_display_RGB.png * カスタムRGBカラーを設定時間表示します。 - 赤、緑、青の値を調整(0~255) - 表示時間を設定 .. image:: img/block/rgb_display_RGB_1s.png * ライトの明るさを設定します(0~100%)。 .. image:: img/block/rgb_set_brightness.png * ライトを明るくしたり暗くしたりします。負の数を使用すると明るさが減少します。 .. image:: img/block/rgb_increase_brightness.png * RGBライトをオンまたはオフにします。 .. image:: img/block/rgb_turn_on.png