4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

IchigoJamAdvent Calendar 2018

Day 18

非公式Scratch 3.0のIchigoJam用extension

Last updated at Posted at 2018-12-18

#1.はじめに
ScratchID:Sheep_makerという方が、非公式Scratch 3.0を公開しています(以下、Scratch 3.0SMと呼ぶことにします)。
このScratch 3.0SMは、ブロックを自作し、「extension」として追加できるようになっています。

そこで、IchigoJamのプログラムを作成して実機に送信できるブロックのextensionを公開しました。
Scratch 3.0 IchigoJam extension

#2.何ができる?
Scratchのビジュアルプログラミングで、IchigoJamのプログラムを作成できます。
IchigoLinkとUSBモジュールを合わせて使えば、ブロックで作ったプログラムを実機に転送できます。

シリアル通信とブラウザJavaScriptをブリッジする IchigoLink のご紹介
イチゴジャムレシピ - USB-シリアル

#3.使いかた
はじめにIchigoLinkを起動させておきます。
img_terminal_ichigolink.png

Scratch 3.0SMにアクセスし、画面右下のボタンを押すと、extensionの選択画面が表示されます。
img_menu_button.png
img_menu_extension.png

「Choose an extension」を選択すると、URLの入力フォームが表示されるので、ここにextensionのURLを入力します(先にIchigoLinkを起動させておかないとエラーになるのでご注意ください)。
今回作ったextensionのURLは以下の通りです。
https://sije.shizentai.jp/extension/ichigojam_2.js

これでIchigoJam用のブロックが追加されます。
img_menu_ichigojam.png

USBモジュールでIchigoJam実機とパソコンをつないであれば、IchigoJamのブロックをクリックすることでプログラムを実機に送信できるようになります。
IchigoLinkを起動する前にextensionの読み込みを行ってしまうと、エラーになるので気をつけてください。
エラーになった場合は、ページの再読み込みが必要になります。
img_setup.png
img_example_led.png
img_example_console.png

#4.ブロック
ブロックに書かれているコマンドがそのままIchigoJamに送信されます。
プログラムを作る際は、最初をNEWブロック、最後をRUNブロック(またはSAVEブロック)にします。
引数はプルダウンメニューから選びます。

###NEWブロック
img_block_new.png

実行すると、ESCコードを送信後、NEWコマンドを送信します。
このブロックが実行されると、次のブロックからは行番号付きでコマンドが送信されるようになります。

###LED, OUT, PWM, WAITブロック
img_block_led.png
img_block_out.png
img_block_pwm.png
img_block_wait.png

各コマンドを送信します。引数はプルダウンメニューから選択できるようになっています。
ブロックを実行するたびに、行番号がインクリメントされます。

###GOTO, LABELブロック
img_block_goto.png
img_block_label.png

GOTOの引数はラベルになっています。
ラベルブロックは行番号とラベルを送信します。GOTOブロックと組み合わせて使ってください。
こちらもブロックを実行するたびに、行番号がインクリメントされます。

###SAVE,RUNブロック
img_block_save.png
img_block_run.png

プログラムの末尾に使ってください。
それぞれSAVEコマンド、RUNコマンドが送信されます。

#5.プログラム例
Lチカのプログラム例です。
img_example_ledlight.png

#6.まとめ
Scratch 3.0SMで使えるIchigoJam用extensionを使えば、ScratchのブロックでIchigoJamのプログラムを作成できます。公式のScratchでは使えないのでご注意ください。
より詳細な説明はwebサイトをご覧ください。
Scratch 3.0 IchigoJam extension

#7.課題
・IFコマンドの実装
・NEWコマンドの上にブロックをつなげられないようにする
ただし、この2点はScratch 3.0SMの仕様上、現在は実現できないようです。
Sheepmaker氏のアップデートを待って、可能になり次第、実現したいと考えています。

また、公式にScratch 3.0がリリースされたら、そちらでも使えるextensionを作る予定です。

#8.訂正(2018/12/18)
IchigoLinkの起動のタイミングについて修正しました。
先にIchigoLinkを起動させてから、extensionを読み込むようにお願いします。

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?