去年に続き、夏休みの福井県立高志中サイエンス部訪問。 新1年生にプログラミングの楽しさを!上級者にはもっと楽しい創造のヒントを!の2本立て。

高志中サイエンス部のみんな!

はんだづけからはじめるプログラミング入門。その間に、上級者向けレクチャー、世の中には無料で使える楽しいおもちゃがたくさん!オープンソース、オープンデータ、IoT、思う存分遊びましょう!


はんだづけできたら、LED1、やった光った!(LEDを最初反対に付けてしまったのを手術し修正後)


ビーズでかわいくオリジナルIchigoDake!(ビーズで飾る電子工作


早速、IchigoJamでゲームづくり!
IchigoJamプリントや、IchigoJam教材スライドもオープンデータとして公開しています。
教材づくりへのチャレンジもぜひ → 33ステップで解説、GitHubオープンソース貢献入門 IchigoJamプリントをつくってみよう


IchigoJamで、ペアプログラミング!楽しさ2倍!?


経験者チームは、持っていったいろんなおもちゃで思い思いに遊ぶ。


オシャレな画面と共に、ランダムに奏でるIchigoJamプログラム!


VIDEOのパラメータをRNDにするのが斬新!


PCN上田発、ハンドスピナー型IchigoJamをPC冷却ファンをMapleSyrupで制御して、回してた!


JavaScriptで改造したカオスなブロック崩しゲームを見せてくれました。
物理エンジン使うと、また楽しいものがつくれるよ!


缶サット、昨年度の取り組み「模擬人工衛星の挙動制御と構造的工夫」を紹介してくれました。 今年は地面のマーカーにめがけて着地制御にチャレンジしたいとのことで、使用するセンサーの相談。 今オススメは、RISC-V 64bit x 2coreのカメラ付きモジュール、M1n

USB-Cでパソコンと接続し、rshellをセットアップ(初回だけ)

sudo pip3 install rshell

rshellコマンドで接続(usbeserialのあとの番号は自身の環境に合わせる)

rshell -p /rshell -p /dev/tty.usbserial-xxxxxxxxx0 edit /pyboard/flash/boot.py

viが起動するので、microPythonでプログラムを貼り付ける

import sensor import math sensor.reset() sensor.set_pixformat(sensor.RGB565) sensor.set_framesize(sensor.QVGA) sensor.run(1) green_threshold = (50, 80, -70, -10, -0, 30) #red_threshold = (40, 80, 30, 70, 0, 40) fm.register(20, fm.fpioa.UART2_TX) fm.register(15, fm.fpioa.UART2_RX) uart = machine.UART(machine.UART.UART2, 115200) print(0) while 1: img = sensor.snapshot() #blobs = img.find_blobs([red_threshold]) blobs = img.find_blobs([green_threshold]) if blobs: for b in blobs: print(b.cx(), b.cy()) #n = ((b.cx() // 2) << 8) + (b.cy() // 2) x = b.cx() / 320 * 100 y = (b.cy() + (320 - 240) / 2) / 320 * 100 n = math.floor(x) * 100 + math.floor(y) uart.write(str(n) + "\n") break time.sleep(.1)

「:wq」エンターと押して保存。これで書き込み完了!

M1nの20ピンをIchigoJamのRXDへ、M1nのGNDをIchigoJamのGNDへ、接続。

秋月電子の3Vで動くサーボと、AIカメラモジュールを組み合わせます。


IchigoJamでのプログラムはこれだけ!
シリアル信号で受信したXY座標をまとめた4桁の数が送られてくるので、100で割ったX座標のみを使って、サーボを動かす!


サーボに貼り付けたAmabieDakeが緑色を見せる場所に合わせて傾きます。
缶サット、空中での移動はどう実現するか?いろいろ試してみるのがおもしろそうですね。
マーカーの認識は、green_threshold のパラメータで微調整します。
IchigoJamのPC接続のように、M1nにシリアルで接続し、Ctrl-C で、動作を停止、プロンプトがでてくるので、下記コマンドで自動起動するプログラムを一旦消して、再度書き込みましょう。

os.remove('boot.py')

IchigoJamでのソフトウェア、制御するハードウェア、M1nのmicroPython、いろいろ分担して取り組んでみよう!


IchigoJamでコントロールするドローン、TELLOを使った実験中とのこと!


今回、声をかけてくれた前田くん、高志中サイエンス部のWebサイトがいい感じ!

IchigoJam 1.4のWS.LED命令についてかいてくれてます!)
ぜひいろいろ作って、オンライン、オフライン問わず、バンバン発表して、見てもらう人増やしましょう!(NT鯖江もよろしく)

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / RSS