Let’s make LED pendant by Forth language! / シンプルの極み「Forth」言語で作ろうLチカ ペンダント!

Let’s make LED pendant by Forth language! / シンプルの極み「Forth」言語で作ろうLチカ ペンダント!

IchigoJam機で動くForth環境「IchigoLatte Forth 0.2.0」完成。

I made “IchigoLatte Forth 0.2.0” for IchigoJam machine.

BEGIN
BTN LED
REPEAT

ボタンを押している時だけLEDが光るForthプログラムはこんな感じ、簡単!

This is a program to turn LED on by BTN, how easy!

BEGIN
1 LED 1000 SLEEP
0 LED 1000 SLEEP
REPEAT

これがLチカ、わかりやすっ!

And this is LED blinking, so easy!

ファームウェアのダウンロードはこちらから。Forth、いいかも!

You can download the firmware from here. AWESOME Forth!









.

ネパール旅行記

ネパール旅行記

ネパール、初でした。

カトマンドゥの空港でロストバゲージ。手荷物内に下着1つだけ入れておいてよかった。

泊まったのは Hotel Sapana Garden、綺麗だし朝食もコーヒーも美味しかった。

ホテルの周りには商店街、おみやげものから日用品まで、物量すごい。こういうの大好物です。

ネパールの文字はこんな具合、全く読めませんでした。

紙幣はこんな感じ、「9000」のように見えるけど「1000」ルピー。ちなみに1ルピー1円、覚えやすい。

食べ物は基本的にカレー、こちらはダルバート。

こちらはモモ、ギョウザ(?)にカレーをつけて食べます。

焼きそばにモモがのったやつ。

米パンをあげたやつ、おやつ的な。

ナンを探し求めて注文してみましたが、だいぶ違います。ちなみにネパールに日本でいうところのナンはNone。

地元ビールもあります。その名も EVEREST、Nepal Ice、GORKHA(?)。

やはり1番の驚きは暦。そもそも2075年だし、1月3日だし、数字は違うし、面白いです。

お正月なので Happy New Year のお祭りやってました、にぎやか。

近年、車が増えたらしく街の中は大混雑。信号はどこにもなくルール不明。

街を歩けば仏具屋さんもたくさんありました。ネパールの宗教は主に ヒンドゥ教、ネワール仏教、チベット仏教 とのこと。

素人にこれらの宗教の違いは難しいのですが、共存しているところに尊敬。

こちらはマニ車。中にお経が入っていて、回すだけでお経を読んだことにしてくれる、忙しい人には必須アイテム。きっと発明当時はイノベーション。

欲しくなるモノたち。

前回も書きましたが、電源事情には気をつけましょう。停電は幾度もありますし、そもそもコンセントに想定電力が来ていません。ネパールではテスターを携帯した方が良いです。

ネパール語のPS2キーボードも福野くんが見つけて来ました。電気屋さんがあれば住める。

こんな車を何台も見ます。

お嫁さんを乗せたおめでたい車とのことで、後部には二人のイニシャルとハートが大きくかかれています。日本でも受けるかも。

そもそもカトマンドゥの標高は高いとのことですが、岡に上がると景色も良く、雲がなければヒマラヤ山脈が望めるとのこと。残念ながらこの日は雲だらけ、でもマナスル方面は一瞬山肌が、ラッキー。

床屋さんで最新のネパールヘアーにカットしてもらいました。

ネパール移住のはるなさん、お世話いただきありがとうございました!

Pradev にIchigoDakeペンダントをプレゼント!

Sijan、PCN講師お願いします!

Keshav、トリプバン大学のPCNサポートリーダー!

Deepaさん、お世話になりました!

帰りの飛行機は左側に座るとヒマラヤ山脈みえるよ!とのことでしたが。。。

エベレストの近くを飛びはしました。

後発チームは見えたとのこと、めちゃきれい!

この感じ、ただいま日本感。

PCN仙台 荒木さん、PCNカトマンドゥ 島村さん、KidsVenture、みなさん、たいへんお世話になりました!

PCN Kathmandu、スタート!









.

円上の点の高さを測ってみよう!Sinはエンジニアに必須のツール!

円上の点の高さを測ってみよう!Sinはエンジニアに必須のツール!

春もスタートし、そろそろ使い出しているエンジニアの卵もいることであろうエンジニアの必須ツール「三角関数」。僕がはじめてsinを知った27年前、衝撃のあまり固まった記憶があります。sinを使えばこの先のエンジニア人生はとても楽なものになることでしょう。というわけで、少し解説を。

「円上のある一点の高さ H を知りたい」という人がいました。そのためには鉛筆で紙に円を描いてテキトーな点を打ち、定規で高さを測ります。「ある点」の場所を伝えるために、中心の角度θを使います。「30˚」と言えば「X軸方向から反時計回りに30˚の位置の点」ということで、これなら相手に伝えやすい。

というわけでひとまず人間がよく使う角度 0˚, 30˚, 45˚, 60˚, 90˚, 120˚, 135˚, 150˚, 180˚ あたりを定規で測ってみたのがこちら。円の大きさはテキトーに半径1mにしました。ちゃんと90˚の時に1.00mになっていますね。0˚と180˚の時はもちろん高さ0mです。それらの間の点はどうなっているでしょう?

ざっくりプロットしてみました。なんとなく綺麗な山型になっていますね。180˚以降は高さがマイナスになり、下向きの山があらわれるはずです。

今回は半径1mの円で計測しましたが、相似の関係から半径が2mなら高さも2倍、3mなら3倍になることでしょう。1˚ずつもっと細かく測って360˚分のメモを持ち歩けば、知りたい時にいつでもどの点の高さでも知ることができますね。

360˚分のメモを持ち歩くのは大変、コンピュータに任せましょう。IchigoLatte JavaScript には sin8 というコマンドがあり、点の位置(角度)を渡すと高さを返してくれます(半径256)。

画面にプロットすればこんな感じ、sin(高さ)のグラフはきれいですね。cosはY軸方向を0˚にするだけ、自分の首を90˚かたむければいいでしょう。

「だから、これがいったい何なの?」って思いますよね。そう、僕もそう思いました。「円上の点の高さを知りたいなんて、クレイジーな人だ」ってね。

大丈夫、半年もすればあなたもクレイジー。君もノートに円を描いて定規で高さを測ってレポートを書いてみよう!









.

ネパール カトマンドゥ でも始まった PCN!現地学生に託したIchigoJamプログラミング!

ネパール カトマンドゥ でも始まった PCN!現地学生に託したIchigoJamプログラミング!

PCNカトマンドゥ キックオフ会 in ネパール。

所用のため1日遅れで合流も、ロストバゲージ。

なんとネパールは1月3日、ハッピーニューイヤー。

年だって 2075年、日本との時差も 3:15、数字は全く読めず独自路線がカッコイイ!

IchigoJamワークショップ2発目はこちら、MADAN-AASHRIT SHCOOL。

英語があんまり伝わらなかったようだけど、現地の大学生 Sijan が現地語に訳してくれて助かった!

お次はこちら、CHILD HAVEN。

ここからはやれそうだったので Sijan が先生役に!

Sijan先生、プログラミングの楽しさをバッチリ伝えてくれました!

あまりの Sijan の活躍に急遽 講師認定! PCN Kathmanduの講師としてこれからよろしく!

最後はネパールの東大、Tribhuvan University

こちらの学生たちもIchigoJamプログラミング、PCN Kathmandu の良きサポート役に!

PCN Kathmandu の立ち上げに協力いただいた皆さん、本当にありがとうございます!また来ます!

ネパールノウハウ、プログラミング前に電源を確認すること!コンセントから 10V 程度しか来ていないことが多い、電気の来ている部屋をまず探そう。停電も頻発、常に SAVE を、テスターは必需品!電圧計付きのステキ電源タップもおすすめ!










.

IchigoLatte JavaScript で粒度 4cm 、¥112 距離センサー HC-SR04 でロボット作り!

IchigoLatte JavaScript で粒度 4cm 、¥112 距離センサー HC-SR04 でロボット作り!

昨日の距離センサー HC-SR04、福野くんから「カウンタ方式の方が精度出るかも」との声に早速試験。

function dist(){
var t=0;
video(0);{
out(1);out(0);
while(!gpin(1)*(t<99)) t=t+1;
while( gpin(1)) t=t+1;
}
video(1);
return t;
}

while(1){
var d=dist();
lc(d/2+1,23);log("*\n");
log(d);
sleep(1000);
}

video(0)でNTSCを止めてカウンティングに専念、dist()に飛ぶたびにTV画面が揺れて見にくいので試験は1秒に1回。

IchigoLatte JavaScriptでもここまで綺麗に、その粒度 4cm、実用できそう!









.