ROS経由でKinectの骨格情報を得る(Groovy) (続編)

以前、ROS経由でKinectの骨格情報を得る(Groovy)という記事で、Kinectの骨格情報をROS経由で得る方法について述べた。しかし、久しぶりにFluoで骨格情報を表示してみたところ遅すぎて(ポーズが1分後くらいに表示される)使い物にならない。最初はマシンのスペックが低すぎるのかと思ったのだがCore 2 Duoのマシンでも同様なので、スペックの問題ではなく通信の問題なのではないかと思って調べてみた。
続きを読む →

Scratch 1.4でブロックを追加するチュートリアル(続き)

前回のエントリは思ったよりアクセスがあったので補足しておく。
リストを扱うブロックを作る場合、ブロック追加のメソッドの修正と、リスト処理を行うメソッドの追加だけでは十分ではない。その他に、デフォルト値としてリスト名を自動的に設定することと、要素の位置を表す引数に数値以外が指定された時の処置を行う必要がある。
その辺りは、前回も参考にした’replace item’を真似しながら対応していくことにする。
続きを読む →

Scratch 1.4でブロックを追加するチュートリアル

授業でアルゴリズムを教えるのに普通のプログラミング言語を使わない方法を探していて、Scratchでいいじゃんと思ったけど、Scratchだと簡単なアルゴリズムを記述するのに多くのブロックが必要だったりするので、かえって面倒くさくなる。
そこで、簡単なソートアルゴリズムを実装するのに有用なブロックをScratchに追加することにした。
そもそもScratch 2.0を使えば自由にブロックを作れるが、ここではSmalltalkerらしくScratch 1.4を改造してブロックを追加する方法を示す。
簡単に説明しようと思ったら、かなりの大部になったのでチュートリアルとして公開することにした。おそらく今の時点でこれを必要とする人はいないだろうが、備忘録として残しておく。
続きを読む →

さくらVPSのubuntuアップグレードでトラブル

さくらVPSで運営しているサーバーにログインするとOSアップグレードしろとうるさいので、つい出来心でアップデートしてしまった。
作業そのものは簡単だったが、いろいろトラブルが発生してしまった。
アップデート作業後に再起動したところ、sshでサーバーにログインできない。pingをかけても到達しない。VPSのコントロールパネルからコンソールログインは可能なのでそこからpingをかけても名前の解決すらできない。

トラブル1: 名前の解決ができない

まずは名前解決から。http://blog.libero-tecnologia.net/?p=6を参考にして、/etc/resolvconf/resolv.conf.d/base に以下を追加した。

search sakura.ne.jp
nameserver 210.188.224.10
nameserver 210.188.224.11

その後、sudo resolvconf -uを実行したらresolv.confが生成されて名前解決するようになった。(実際にはネットワークにつながらないので名前参照中にフリーズする)

トラブル2: ネットワークにつながらない

ネットワークがつながらない原因はよくわからない。が、https://plus.google.com/+%E5%B0%8F%E6%9E%97%E7%85%A7%E5%B9%B8/posts/giYfUvF9DxRを参考にしたらうまくいった。
具体的には、sudo ln -s /sbin/ethtool /usr/sbin/ethtoolとするだけ。(本当にこれが原因か?)
この後再起動したらネットワークがつながるようになった。

トラブル3: MySQLが起動しない

ネットワークがつながったところで、このブログを閲覧しようとしたら、大きな文字で「データベース接続確立エラー」と表示されてしまった。
mysqlコマンドでデータベースに接続しようとしても接続できない。(エラーメッセージは失念)
https://d.hatena.ne.jp/riritea0119/20120825/1345808156を参考に、/etc/mysql/my.confを修正したら接続できるようになった。
理由は以前のサーバーの設定として認識されていたdefault-character-set=utf8が、アップデートされたサーバーで認識できなくなったからで、それらを全て(ウチの環境では2カ所)character-set-server=utf8に置き換えればよかった。
置換後にsudo service mysql startとしたら、無事にサーバーが起動しブログもこのように閲覧できるようになった。

やっと一息

今までの積み重ねでようやくここまできた。
Screen Shot 2014-03-06 at 21.36.20
上は、Cortex-M4ベースのマイコンボード(STM32F4DISCOVERY)上でMicroSqueakが動くの図。今のところシリアルにメッセージを流すくらいしかできないけど。

OS X(Mavericks)にSTM32F4DISCOVERY用の開発環境を構築する(サンプル実行編)

前回ビルドしたサンプルプロジェクトの実行方法について説明する。
ST-LinkはSTM32のデバッガ&プログラマで、STM32F4DISCOVERYではジャンパピンの設定によりオンボードでST-Linkが利用できるようになっている。
openocdは、ST-Link経由のマイコンとのインターフェースをTCP/IP通信で提供するもので、gdbなどを用いたデバッグが容易にできる。
続きを読む →

OS X(Mavericks)にSTM32F4DISCOVERY用の開発環境を構築する(サンプルビルド編)

前回に引き続いて、STM32F4DISCOVERYのプログラムのビルドについて説明する。
STM32の開発環境は有償、無償も含めていろいろあるようだが、Eclipseのような○○なものを使いたくないので(○○はお気に入りの言葉を挿入)、Emacsおよびシェルを用いて開発を行うことにする。
続きを読む →