Codey Rocky

以下に、プログラム例と詳しい解説を一つのテキストにまとめました。これを活用して、Codey Rockyの基本機能をマスターしてください。 — # **Codey Rockyのセンサーやモーターを活用したプログラム例と解説** ## **1. ライトセンサーを使った自動ライト点灯** **概要**: Codey Rockyの光センサーが周囲の明るさを検出し、暗くなるとLEDが点灯する仕組みです。 **プログラム**:

python
from mblock import *

# 初期化
codey = codeyblock()

while True:
    light_level = codey.light_sensor.get()  # 光センサーの値を取得
    print("光のレベル:", light_level)       # 光のレベルを表示
    if light_level < 10:                   # 光のレベルが10未満の場合
        codey.led.show("blue")             # LEDを青に点灯
    else:
        codey.led.off()                    # LEDをオフ
    wait(0.5)                              # 0.5秒待機

**解説**: – codey.light_sensor.get() は光の強さを数値で取得します。 – 条件分岐 (if light_level < 10:) を用いて、暗いと判断した場合にLEDを点灯します。 – wait(0.5) により、連続的なセンサー読み取りを制御します。 — ## **2. 赤外線リモコンでモーターを制御** **概要**: 赤外線リモコンの操作でCodey Rockyの前進・後退を制御します。 **プログラム**:

python
from mblock import *

# 初期化
codey = codeyblock()

while True:
    ir_signal = codey.ir_remote.get()  # 赤外線信号を取得
    if ir_signal == "up":              # 「上」ボタンが押された場合
        codey.drive_motor.move(50, 50) # 前進
    elif ir_signal == "down":          # 「下」ボタンが押された場合
        codey.drive_motor.move(-50, -50)  # 後退
    else:
        codey.drive_motor.stop()       # 停止
    wait(0.1)                          # 0.1秒待機

**解説**: – codey.ir_remote.get() で受信した赤外線信号を取得します。 – 信号が "up" の場合に前進、"down" の場合に後退、それ以外は停止します。 – モーターの速度は move(speed_left, speed_right) で設定され、-50は逆方向の速度を意味します。 — ## **3. 超音波センサーを使った障害物回避** **概要**: 超音波センサーで障害物を検知し、自動的に回避動作を行います。 **プログラム**:

python
from mblock import *

# 初期化
codey = codeyblock()

while True:
    distance = codey.ultrasonic_sensor.get()  # 距離を取得
    print("距離:", distance)                   # 距離を表示
    if distance < 10:                         # 障害物が近い場合
        codey.drive_motor.move(-50, -50)      # 後退
        wait(1)                               # 1秒待機
        codey.drive_motor.move(50, -50)       # 右に旋回
        wait(1)                               # 1秒待機
    else:
        codey.drive_motor.move(50, 50)        # 前進
    wait(0.1)                                 # 0.1秒待機

**解説**: – codey.ultrasonic_sensor.get() で障害物までの距離を測定します(単位: cm)。 – 距離が10cm未満の場合、障害物が近いと判断し、後退後に右に旋回します。 – 障害物がない場合は、モーターを前進モードに設定します。 — ## **4. ボタンを押して音楽を再生** **概要**: Codey Rockyのボタンが押されると、ハッピーな音楽を再生します。 **プログラム**:

python
from mblock import *

# 初期化
codey = codeyblock()

while True:
    if codey.button.is_pressed():         # ボタンが押された場合
        codey.sound.play("happy")         # ハッピーの音を再生
        wait(2)                           # 音が終わるまで待機
    wait(0.1)                             # 0.1秒待機

**解説**: – codey.button.is_pressed() でボタンの押下を検知します。 – codey.sound.play("happy") で音声ファイルを再生します。 – 再生中の他の処理を避けるために、wait(2) で一定時間待機します。 — ## **5. OLEDディスプレイにメッセージを表示** **概要**: Codey RockyのOLEDディスプレイに文字列を表示します。 **プログラム**:

python
from mblock import *

# 初期化
codey = codeyblock()

# メッセージを表示
codey.oled.display("Hello!")
wait(5)  # 5秒間表示
codey.oled.clear()  # ディスプレイをクリア

**解説**: – codey.oled.display("Hello!") で画面に「Hello!」を表示します。 – wait(5) は文字列を表示する時間を設定しています。 – 表示を消去する際は codey.oled.clear() を使用します。 —

Leave a Comment

Your email address will not be published. Required fields are marked *