2018年3月18日日曜日

Scratch 2.0(Web版)からWeDo 1.0を動かせるかテスト(Mac編)

Scratch 2.0を職場(学校)で使いたいと思っているところですが、現在のところ目処は立っていません。管理ポリシーによりFlashが動かないようになっているためです。しかし、プログラミング教育は、勧めていきたいという方向性はあるようで、こちらも心構えをしておかなければならないと思っています。

手始めに、WeDo 1.0の動かし方をおさらいしておこうと思いたち、普段使っているMacのFirefox(59.0.1)でやってみました。(もうWeDo 2.0が出ているためか、WeDo 1.0の情報はなかなか見つかりません)

Scratchの「作る」画面から、「スクリプト」タグで「その他」を選択します。「拡張機能を追加」ボタンを押すと、PicoBoard、LEGO WeDo 1.0、LEGO WeDo 2.0の3つの選択肢が現れます。この中から「LEGO WeDo 1.0」を選択して「OK」を押します。すると、WeDo 1.0を動かすブロックが現れますが、右に赤い丸「」が表示されます。ガイド画面が表示されるので、「LEGO WeDo 1.0またはPicoboardのセットアップ」をクリックすると、詳しいやり方が表示されます。今回は、「Mac(その他のブラウザー)」から「ScratchDevicePlugin.dmg」をダウンロードしました。
#「ブラウザーのScratch拡張機能プラグイン」に詳しい解説がありました。

dmgファイルを開いて、「ScratchDevicePlugin.plugin」を「Plugins」フォルダにドラッグ&ドロップします。プラグインのインストールは、これで完了、のはずでしたが、Firefoxでは、全く無反応でした。

もしかするとと思い、Safari(11.0.3)を起動してやってみたところ、無事にWeDo 1.0をコントロールすることができました。(先程の赤い丸「」が、プラグインのインストール完了で黄色い丸「」になり、WeDo 1.0のUSBハブを接続すると緑の丸「」になります)Chrome(65.0.3325.162)では、特別のdmgファイルをダウンロードしてインストール作業をすることで、同じように使えるようになりました。

というわけで、MacでPicoBoradやWeDo 1.0を使うなら、SafariかChromeでということになりそうです。

2018年3月3日土曜日

最後のオカヤドカリの世話(2018春)

2010年の冬になろうとする頃から(今は、何故?って思いますが、当時はそんな知識もなかった)飼い始めたオカヤドカリたちでしたが、何度か挫折しかけながらも、2017年の春頃まで約6年間飼育観察を行うことができました。このBlogに初めて登場したのは、2011年の春。そして、最後に記事を書いたのは、2016年の夏でした。この間に起きた出来事をまとめておきます。

2016年の冬前頃、最後に生き残っていた2匹のオカヤドカリのうち、1匹が急に亡くなりました。頻繁に宿貝を替えていた方のオカヤドカリでした。死体は、完全に宿貝から出ていました。 10種類を超えるくらいの貝を入れていたのですが、どれも合わなかったようでした。残り1匹となり、ヒーターを点けて越冬させました。この時点では、元気よく動き回っていたオカヤドカリでしたが、2017年の春頃になると、突然動きが止まりました。

この個体は、2016年に脱皮した直後に目撃した個体で、再び脱皮が始まるのかもしれないと思い、しばらく様子を見ることにしました。

毎日そっと覗き込みましたが、貝殻と砂の間の隙間から少し脚が見える状態で、動いているのかいないのかよくわからない感じでした。そうこうしている間に、春の繁忙期が訪れ、見る機会がぐんと減ってしまいました。湿度を保つために、淡水を切らさないようにしましたが、やはり動いているのかいないのかわからず、同じ場所にいました。

もうダメかもしれないという気持ちと、奇蹟を期待する気持ちが入り交じった複雑な状態で夏を超え、秋から冬になりました。オカヤドカリは、ずっと動かず同じ場所にいました。もうダメなことはわかっていましたが、気持ちの整理がつきませんでした。

そして、2018年の春になって、もう片付けをしようと思いたちました。生きていたときと同じ姿で、動かなくなっていたオカヤドカリ。すっかり水分がなくなっていました。きっと、1年前に亡くなっていたのだと思います。

片付けをしながら、うちに来たときに背負っていた小さな宿貝を見つけました。人差し指の上に乗せられるくらい小さい状態から、宿貝を含めると片手で覆えないくらいの大きさにまで成長していました。 オカヤドカリは、人に懐かないということも知っていましたが、私が世話をしていても、のそのそと動いていたり、貝殻を持ち上げると中から出てきてハサミで威嚇したりする個体でした。本当に、いろいろなことを教えてくれたオカヤドカリたちに感謝し、もう二度と飼わないと心に決めて、オカヤドカリ以外には使えないものをすべて捨てました。

2018年2月19日月曜日

micro:bitを:MOVE miniと組み合わせてミニバギーを作る

前回の続きです。micro:bitを使って、ミニバギーを作ります。出かけたついでに秋月電子で買ってきた、イギリスのKitronikが製造販売している「:MOVE mini」というミニバギーキットを使いました。(micro:bitは付属していないので、別途用意する必要があります)説明書は、すべて英語なのですが、Webサイトの情報と合わせて取り組めば、難しいことはないと思います。

SERVO:LITE基板にmicro:bitをビス止めしたら、プログラミングのためにUSBケーブルでパソコンとつなぎます。はじめのつまずきは、マイクロUSBケーブルのつまむところが厚すぎて、基板に干渉することでした。Webサイトによると、厚さ5.5mm以下のものであれば大丈夫のようですが、手元になかったので近所の家電量販店で購入してきました。

次に、「JavaScript Blocks editor」を使ってプログラムを組みます。「高度なブロック」メニューから「パッケージを追加する」を選択します。出てきた検索窓に「neopixel」と打ち込むと、パッケージリストの中に「neopixel」が表示されますのでクリックします。これでパッケージの追加が終了しました。

ここまででプログラミングの環境が整いました。説明書に従って、プログラムを組んでSERVO:LITE基板のテストを行いましたが、特に問題はありませんでした。後は一気に組み立てて、サーボモータの動作確認までしてしまいたいと思います。私が作ったプログラムを画像として書き出したので貼っておきます。

Aボタンを押して前進、Bボタンを押して後進、AボタンとBボタンを同時に押して停止するプログラムになっています。今後は、これを左右の方向転換もできるプログラムに変えていきたいと思っています。そして、BluetoothでiPhoneからコントロールできるようにすることも目標としています。ちょっと久しぶりにワクワクしています。

2018年2月18日日曜日

micro:bitはじめました

身近なところでScratchを使った授業づくりをはじめた教員がいるので、私も自分なりに教材研究を始めようと思いたちました。とは言え、既に自分で思い通りの授業ができる立場ではないので、今後の展開を見通して、いつでもサポートができるようにしておこうということです。

今回のターゲットはmicro:bitです。はじめは、スイッチサイエンスさんのchibi:bitを購入してちょっと動かしてみていたのですが、その後、日本国内でもmicro:bitが購入できるようになったので、3枚ほど購入しました。micro:bitは、イギリスのBBCが開発し、イギリス国内では子どもたちに配布されているもので、mbed日本語での案内)ベースのマイコン基板です。

micro:bitを動かすためには、いくつかの方法があるのですが、一番簡単なのは「JavaScript Blocks editor」を使う方法だと思います。Scratchライクなビジュアルプログラミングが可能で、JavaScriptベースの言語でも記述することができます。「最初だけ」と「ずっと」のブロックが置かれた状態からスタートするので、考え方はArduino IDE(「setup()」と「loop()」)に似ていると思いました。これだけで、結構いろいろなことができるように工夫されているのは、後発の強みだと思います。

プログラムを作った後は、自分のパソコンにダウンロードして、micro:bitにコピーします。micro:bitをUSBケーブルでパソコンにつなげると、USBメモリのように接続されますので、そこにダウンロードしたhexファイルをコピーするだけです。これから、以下のサイトも参考にしながら、時間を見つけていじってみたいと思っています。

ちなみに、はじめに入っているプログラムは、「first-experience demo program」にありますので、初期状態に戻したい場合は、こちらからhexファイルをダウンロードしてmicro:bitにコピーしてください。

2018年2月10日土曜日

Raspberry Pi(Raspbian)のアップデートをしながら思ったこと

私の手元には、6台のRaspberry Piがあります。内訳は、初代Raspberry Pi(もともと2台買ったのだけど、そのうちの1台は、早々に壊れたので残り1台)、B+(2台)、2B(1台)、3B(2台)です。いずれも、Raspbianで動かしています。事情により、しばらく放置していたのですが、活躍のチャンスが巡ってきそうなので、久しぶりにアップデートをすることにしました。

まずは、RPiを起動して「startx」でGUIの環境にします。次に、LXTerminalを起動して以下のコマンドを打ち込みます。

$ sudo apt-get update && sudo apt-get upgrade

これで、更新されているパッケージの情報を取得することが出来ます。あとは、更新するだけですので、「y」をタイプしてEnterです。結構時間がかかると思いますが、気長に待ちます。更新が終わったところで、以下のコマンドを打ち込んで余分なパッケージを削除します。

$ sudo apt-get clean && sudo apt-get autoremove

今回の作業では、余分なパッケージは検出されなかったので、大きな変更は行われていないのかもしれません。ここまでの作業を、6台分やりました。

今後の対応として、 SDカードなどのフラッシュメモリは書き込み回数に制限があるため、アップデートを繰り返してきたものは、新しいSDカードにコピーして使った方が良いと思います。
Gigazineの記事に解説がありました。古い記事ですが。

RaspbianのSDカードのコピーについては、以前にやったことがあるので(すっかり忘れていましたが)思い出しながらやってみたいと思います。こうしたメンテナンスを含めると、学校に導入する際には、様々なサポートが必要になると思います。ボランティアベースでやってもらうのにも限界があるでしょう。1人1台配布できたとして、家庭に持ち帰らせてメンテナンスまでさせるのは難しいと思われます。人も金も時間も足りない日本の学校教育に、大きな風穴を開けるのは本当に難しいと思います。私にとっても大きな課題だと思っています。

2018年2月6日火曜日

プログラミング教育をはじめます

いろいろな構想を思い描きながらも、立場的にできないことが多くなっていたこの数年間。ここに来て、新しい学習指導要領に「プログラミング教育」が明記されるなど、私がやりたかったことが、しやすくなってきたかなと思える状況になってきました。
#「小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ)」あたりから読まれることをおすすめします。

そんな折、教員向けのプログラミング教育に関する研修の案内が立て続けにやってきて、私だけでなく、校内の先生方にも参加してもらいました。希望制の研修ですから、希望が通るかどうか少し心配をしていたのですが、杞憂に終わりました。

その先生方から、「パソコンクラブの児童にScratchを使わせたい」との要望がありました。ここは全力で支援するところだと思い、動作チェックに付き合うことにしました。職員室のパソコンなら問題なく動くのに、コンピュータ室のパソコンではFlashが動かないようにしてあって、Web版のScratchが動きませんでした。いろいろ試しても結局動かず、最終的にインストール版のScratch 1.4を使うことにしました。
#オフライン版のScratch 2.0は、インストールの段階でつまずきました。

とは言え、Scratch 1.4も素直にはインストール出来ませんでした。「Program Files」の変更に制限がかけられているためです。そこで、インストール先を無難なところに設定し、そこに出来上がった「Scratch」フォルダを共有することにしたのでした。この方法なら、複数のパソコンでScratchを使うことができました。先生方も動かすことができたと大喜び。「これはハマる」と興奮気味でした。

こうした活動は、その面白さに教員が気づき、それが伝搬していくことで広がっていくのだと思います。教材研究は、かくあるべしと思います。私も一緒に教材研究をしながら、授業づくり、教材づくり、…何でもやってみたいと思っています。「秋(とき)は来たれり」

【追記】Scratch 1.4には、日本語にのみ修正が必要なところがあったのを忘れていましたので、追記しておきます。(2018.2.7) 

修正されている日本語ロケールファイルhttp://t.co/pSIKMIk3gC)をダウンロードして解凍し、「Scratch」フォルダ内の「locale」フォルダに「ja.po」ファイルと「ja_HIRA.po」ファイルをコピー(置き換え)します。詳しくは、「Scratch1.4のダウンロードと日本語翻訳ファイルの差し替え」の説明がわかりやすいと思います。

2018年1月6日土曜日

Windows 7 PCのUSB 2.0ポートからHDMI出力を試みる

仕事で使っているWindows 7で動くラップトップPCのVGAポートがダメになり、外部モニタに出力することができなくなってしまいました。(しかも複数台)いろいろと相談をしてみたのですが、近々に新しいものに更新される予定がなく、苦肉の策でUSB 2.0ポートからHDMI出力できる変換器を購入して、外部モニタに出力できるか実験してみました。

そもそもUSB 2.0だと速度が出ないため、全くお勧めできないところなのですが、特殊な事情により、どうしてもUSB 2.0しかないPCでHDMI出力を求めるなら、こんな方法もあるということでシェアしておきます。

購入したのは、BUFFALOGX-HDMI/U2というものです。USB 2.0対応の現行品としては、唯一に近い選択になります。
私個人が使うのであれば、中古の生産終了品に手を出すこともあるのですが、確実に使えないと意味がないので。

実験の意味もあってとりあえず1台購入し、付属CDからドライバーをインストールしてPC→外部モニタとつないでみました。しかし、何も表示されません。PC側では、モニタに出力する何かにつながっている雰囲気は感じられるのですが、解像度などのモニタの設定ができません。外部モニタ側も「信号がない」とメッセージを出したまま、数分でスリープ状態にまりました。

HDMIケーブルのせいではないかとか、別のモニタにつないだらどうかとか、いろいろ変えて試してみましたがうまく行かず、頭を整理するためにしばらく放置することにしました。
本当は、「うまく使えなかったら自腹で買い取りかな…」と涙目状態でした。

そして、昨年末になって時間が取れたタイミングでもう一度トライしてみることにしました。ところが、付属のCDが見当たりません。探すのも面倒なので、BUFFALOのWebサイトからドライバーをダウンロードしました。結果的には、これが良かったようです。(付属CDに収録されていたのは、古いドライバーでした)

ドライバーのインストール画面は、今までのものとそれほど変わりがなかったのですが、ドライバーをインストールし終わった直後にモニタを設定するウィンドウが自動的に開いて、外部モニタが接続されていることが確認できました。さらには、タスクバーにも新しいアイコンが追加され、いつでもHDMIにつなげた外部モニタの設定を変更できるようになりました。
ミラーリングだと、外部モニタいっぱいに画面表示できなかったので、外部モニタのみに出力するようにしたところ、しっかり画面いっぱいに表示するようになりました。

これで購入したGX-HDMI/U2が無駄にならずに済んだと同時に、VGAが壊れたラップトップPCを使い続ける目処がたちました。ついでに、後々のことを考えて、簡単なセットアップマニュアルを作っておきました。後は、このラップトップPCが更新されるまで、頑張って欲しいと思っています。