岩手県立総合教育センター 情報教育ウェブこのページの本文へ

3DS(DSi,DSiLL)を用いた制御教材の提案

3DS(DSi,DSiLL)と音センサーを使った制御

基本情報

  • 教材名: DSi、3DSを用いた制御教材
  • 開発言語:SMILEBASIC (プチコン 株式会社スマイルブーム)
  • 公開:平成23年8月
  • 著作権者:岩手県立総合教育センター 情報教育担当 奥田昌夫
  • 動作環境:ニンテンドー 3DS、DSi、DSi LL

教材の提案

  • 中学校技術・家庭の「D情報に関する技術」には「プログラムによる計測・制御」の学習があります。
  • ニンテンドー 3DS等で制御教材を作ることで、生徒達の興味を引くことができるのではないかと考えて作成しました。
  • ニンテンドー 3DS等は多く生徒達が所有しているゲーム機でSMILEBASIC(愛称「プチコン」 株式会社スマイルブーム)は、ニンテンドー 3DS、DSi、DSi LLで作動するBASICです。
  • SMILEBASICで音を出す時間をプログラムします。
  • ニンテンドー 3DS等からの音声出力を音センサーを使ってモータを制御します。
  • 音センサーとしてイーケジャパン社 ELEKIT「リレー付き 音センサ PS-3001S」を2個使いました。
  • ニンテンドー 3DS等から左右のモータをON、OFFすることで、前進・右折・左折・停止ができます。

教材の提案ビデオ

  • 動いている様子 動画

プログラム例1

  • 前進1秒、右折2秒、左折3秒のプログラム
     BEEP 0,0,127,64   '左モータON、右モータON
     VSYNC 60       ' ウェイト1秒間
     BEEP 0,0,127,64   '左モータOFF、右モータOFF
     VSYNC 30       '命令の音を連続させないためのウェイト(0.5秒)

     BEEP 0,0,127,0    '左モータON
     VSYNC 120       ' ウェイト2秒間
     BEEP 0,0,127,0    '左モータOFF
     VSYNC 30       '命令の音を連続させないためのウェイト(0.5秒)

     BEEP 0,0,127,127   '      右モータON
     VSYNC 180       ' ウェイト3秒間
     BEEP 0,0,127,127   '      右モータOFF

  • 命令の説明

     BEEP [音の種類],[音程],[音量],[左右のバランス]  :音を出す
     SCYN [60で1秒]       :時間を待つ

プログラム例2(LRボタンでリモート制御)

  • 「Lボタン」で左折、「Rボタン」で右折のプログラム

     @MAIN
     B=BUTTON() '押されたボタンを取得
     LR=1    '数値の初期化
     IF B AND 256 THEN KR=0 'Lボタンが押された場合
     IF B AND 256 THEN KR=127 'Rボタンが押された場合
     IF LR==1 GOTO @MAIN 'LRの値が1の場合には@MAINへ
     BEEP 0,0,127,LR    '音を出す
     GOTO @MAIN