2008年12月11日木曜日

PostgreSQL -- 新しいテーブルスペースを作る

PostgreSQL

新しいテーブルスペースを作ろうと思いました。
テーブルスペースのファイルをDドライブに置きたかったからです。

ちょっとSQLを書く自信がなかった(単に調べるのが面倒だった)ので、
pgAdmin III を立ち上げて、「編集」メニューから「新規オブジェクト」で「新しいテーブル空間」を選ぶ。

「名前」をつける
「ロケーション」に D:/Robot/db と入力する
「オーナー」に postgres を選択する
--この作業を※1と呼びます

さて、出来るかな… …出来ない!

どうやら、postgres さんには、上記ロケーション(パス)に対する書き込み権限がないらしい。

使用しているOSは windows xp home edition なので、フォルダのプロパティで権限を設定できない。

でも、同じことを考えている人はいるもので…


結局のところ、コマンドプロンプトから
cacls D:\Robot /T /E /C /G postgres:F
と打つと、権限を与えることが出来ました。
--この作業を※2と呼びます

(正解を出す前に間違った設定をしてしまったらしく、
Dドライブにアクセスできなくなってあせりました。
そんなときも、落ち着いて、
cacls D: /T /E /C /G owner:F
で、権限を取り戻しましょう。)

さて、では、気を取り直して、
※1の作業をやると… …こんどは出来ました!


で、pgAdmin で「ファイル」メニューから「サーバーの追加」を選択。
「名前」に※1でつけた名前を入れ、
「ホスト」に localhost と入れて
「ユーザー名」に postgers を選択、
「パスワード」も入力して(これをしなかったので後でちょっと困りました)
OKボタンを押しましょう。

はい、つながりました。

気をよくしたので、ついでにデータベースも作っちゃいましょう。
同じく pgAdmin で、
「編集」メニューから「新規オブジェクト」で「新しいデータベース…」を選ぶ。

適当に入力すれば出来ますね。
ただ、「テーブル空間」に さっき作った新しいテーブルスペースの名前を選びましょう。
今回は robot という名前を付けました。

ここで気が付いたんだけど、元々あるデータスペースにも新しいデータベースを作るときに、さっき作った新しいテーブルスペースの名前が選択できるんですね。



ふむふむ。
では、新しいデータベース robot をいじり倒すために、どうすればいいのか調べましょう。


実験の結果、できました。

まず、スタートメニューのすべてのプログラムにある「postgreSQL 8.3」の実体のフォルダにアクセスします。
「'postgres'へのpsql」のショートカットをコピーします。
「リンク先」の内容を次のように修正します。
"C:\Program Files\PostgreSQL\8.3\bin\psql.bat" -h localhost -p 5432 robot "postgres" SJIS

ついでに、「コメント」の内容も次のように修正します。
PostgreSQLインタラクティブ・ターミナルで、「robot」データベースに接続します。


これで、巨大なDドライブにでっかいテーブルを作成できるようになりました。

めでたし めでたし!


2008年12月9日火曜日

PostgreSQL -- PL/pgSQL を使うために

PL/pgSQL を使うために必要なことがありました。

インストールしただけだと、PL/pgSQLが使えないのでした。

そこで、このページ<PostgreSQL 編19 - ストアドファンクション、function、PL/pgSQL、トリガー>を参考にして…



1 俺の場合は、Windows xpでPostgreSQLを使っているので
   スタートメニューのすべてのプログラムにあるPostgreSQL 8.3 の
   「コマンド・プロンプト」ショートカットを実行します。

2 createlang -h 127.0.0.1 -d postgres -U postgres plpgsql
   と、入力して、エンターキーを押します。

3 パスワードを聞いてくるので、入力して、エンターキーを押します。

「'postgres'へのpsql」の画面から
select * from pg_language
を実行すると、登録されているLANGUAGEを確認することができます。


これでようやく、↓みたいな文を書くことが出来ました。

PostgreSQL 8.3.1文書 38.6. 制御構造 例 38-1. UPDATE/INSERTの例外から抜粋
CREATE OR REPLACE FUNCTION getAllFoo() RETURNS SETOF foo AS
$BODY$
DECLARE
r foo%rowtype;
BEGIN
FOR r IN SELECT * FROM foo
WHERE fooid > 0
LOOP
-- can do some processing here
RETURN NEXT r; -- return current row of SELECT
END LOOP;
RETURN;
END
$BODY$
LANGUAGE 'plpgsql' ;

SELECT * FROM getallfoo();

2008年12月8日月曜日

PostgreSQL -- ファイルからpsqlを実行する方法

PostgreSQL 

Windows xpでPostgreSQLを使っています。

今日はちょっとしたメモを。


ファイルからpsqlを実行する方法:


1 スタートメニューのすべてのプログラムにあるPostgreSQL 8.3 の
        「'postgres'へのpsql」ショートカットを実行します。

2 パスワードを入力して開始します。

3 \cd 'D:\\ddddd\\ddddd'    --これにより実行したいファイルの入っているフォルダに移動します。
      バックスラッシュを2重にするのがポイントです。

4 \i fff.sql     --これにより指定したファイル(ここでは fff.sql )を実行します。


2008年12月1日月曜日

KHR-2HV体は完成

いやいやいや
出来ましたよ、

先週PCがあれば、先週出来ていたでしょう。
所要時間は大体6時間から8時間くらい。
塗装もしなかったし、接着剤が乾くのを待つこともない。
間違えてもビスをはずせばいいだけだし。
なので、昔のプラモデルより簡単かも。


で、記念写真:

まず1枚目は、定番で正面から。
後ろになにやらペコポン侵略中(建前上)な顔がありますが…


胸の位置に見えている薄緑のものがバッテリーです。


次はあまり見ないであろう、後ろから。
後ろのカバーの中はコードだらけで
コントロールボードがこの線の下にあるんですが
まったく見えませんねー。

実際、パイロットランプが光っているのを見るのがやっとの状態です。


お次は左斜め前から。
後ろの2段重ねの緑の顔は、
最近「ミロ」を侵略した小隊の隊長です(ロボットと関係ないけど)。


最後は座っているところを。
手におもちゃの自動車を持っています。


当然お気づきだとは思いますが
足と腕が同じ太さなんですよ。
片足で立てるなら、片手で逆立ちとか出来そうですが
どうでしょうねー

ちなみにこの撮影の後でサンプルモーションを読み込ませて
2歩半歩きました。が、我が子の初めて歩いた瞬間はビデオに収められないのと同じで
撮っていません。。。。

電圧低下時に自動起動するモーションというところに、
こけそうにうなだれるモーションを作って設定したら
設定した瞬間にうなだれてやんの!

電池の持ちが問題です。

有線での電源供給を考えようかなぁ。


ともかく、このように体は完成しましたが
まったく何のセンサーもなく、当然目も耳もなく
脳みそもありません。

電源を切ってしまうと、意外に関節がやわらかく動きます。
ずしっと重くて、くて~っとやわらかいヒト型のモノって
なんだか不思議な感覚をもたらします。
無生物なのに、そうじゃない感覚になります。

ちょっとでも自立的に動いたら、もっと生き物みたいに感じる気がします。

加速度センサー、ジャイロセンサーは、オプションであるんですが
足の裏につけたい感圧センサーや
目にしたいカメラ、耳にしたいマイク、口にしたいスピーカーなどは、
自力でひっつけるしかないようです。

あー、金ねえな(泣)

2008年11月27日木曜日

KHR-2HVに追記しました

写真1つ追加、リンク少々、誤字訂正2つほど、その他ちょっとだけ文を追加。

さらっと見てやってくださいまし

→「KHR-2HV

新しい iPod nano

ちょっと眠いっす

昨夜(というか日付は今日)MacのOSをアップグレードして
今朝、新しいiPodをつなぎました〜
満足満足♪

OSの説明書に、windowsなら必ず書いてある
「バックアップを取って置いてください」
の文字がないことに気づいて。
口車に乗ってアップデートしたら…
何の問題もなく、移行成功!

ただ…
予想残り時間が「約1分」になってから30分ほどかかったのには閉口したわ…

ともかく、
カバーフロー出来るiPod
曲間の隙間なく再生できるiPod

小さな幸せでっす

2008年11月25日火曜日

世知辛い世の中

iPod nano G4を買いました。
意気揚々と帰りました。
マックにつなげました。

「同期にはiTunes8.0以上が必要です」

なにそれ。

俺のiTunesは最新のはず。
いつも更新してるもの。

しゃあねえ。アップルのサイトに行って…

あ、

OSのバージョンが0.1だけ足りない…
そういえば、OSのバージョンをこれ以上あげるには
買うしかないんだった…

で、その日のうちにビックに注文の憂き目に。

世知辛い世の中です。
アップルさんはそれで食ってる会社なので
当然っちゃあ当然ですが

まったく、うまいビジネスモデルだよ。
まんまとアップルとビックを儲けさせちまった。。。


2008年11月23日日曜日

KHR-2HV


写真の向き、直しました…



今年の10月に、ROBO Japan という催し物が横浜であったのを、覚えているでしょうか。

その初日の、アッカワイヤレス賞品が、実売価格12万円の「KHR-2HV8」だったのを、覚えているでしょうか。

誰も覚えてないよね~

↑:ここからかってにコピーしました(問題あればお知らせください)。



本当は自分で買ったことにしようと思っていたんだけど、告白します。
それ、当たったの、俺なんです。

KHR-2HVは、近藤科学の自前の通販サイトでも9万ちょっと。
で、KHR-1HVは、12万とちょっと。

なんで「2」なのに、12万なの?
って、思うでしょ?

もらう方からすると、値段じゃなくて型番が間違ってて欲しいよねぇ。
でも、間違ってたのは値段のほうで。
最後の「8」ってなんですか?ってアッカさんに聞いたら、
「間違いです」。

でも、まあ、いいよね。
もらえるんだから、ありがたくいただきましょう。

で、11月中旬発送予定ですって言われて
すっごく楽しみにしてたのに
待てど暮らせど来ない。

11月21日に、もう下旬になりましたけど?ってメールしたら
電話で、来週末になる、みたいなことをのたまう。
(直接聞いた訳じゃないからちょっと違うかもしれないけど)


PCも遅れることだし、ま、しゃあねえな。。。
と、あきらめていたら
今朝、届きました。KHRー2HV。

一番上の写真は、おしゃべりポッチャマと並んで大きさ比較。
もっと大きい気がしてたんですが
わりとこぶり。

届くんだったら、PCも届けてもらえばよかった!!!

アッカさんの宣伝を、次回以降の投稿で、
ちょっとだけ、やります。

2008年11月22日土曜日

何もかも1週間遅れかい!!

ぷんすか!

PCは金曜日に検品をしていたとかで
今日は届きません。。。。

本当に20日に届いたのだろうか。
それとも、彼らの処理能力以上の入荷をしちゃったのだろうか。
大容量バッテリが後から届くが、2回に分けると送料がかかるから
一緒に26日に送ろうか?というメールが朝の6時に送られてきていました。
と、いうことは…彼らは徹夜で検品とかをしてたのかも。。。

ともかく、仕方がないので
平日は受け取れないので、来週土曜に届くようにしてもらいました。


実は…ロボットも届くはずだったんですけど
これも来週末にのび延びのび~


仕事でもクライアントが材料をくれず、
1週間遅れ発生中。


3つも重なるなっちゅうねん!!!

2008年11月21日金曜日

パイプロイド


おもしろいものもらいました~
いやあ、たのしいですねぇ

パイプロイドっていうそうです。
こいつは、No.4のハンマー★ローズ、という名前らしい。
パッケージには大きく「恋」の文字。

早速、作ってみました。

下の写真は、あまり出てこないであろう、後姿です。

実ロボット風にいうと、
合計13自由度かな

(腰が左右方向に回るので1自由度
頭とあごが上下に動くので2自由度)
=3自由度
(肩は体軸に垂直に軸を持って回転(1自由度)
上腕が回転(1自由度)
前腕が回転(1自由度)
足の付け根が体軸に垂直に軸を持って回転(1自由度)
足先が体軸に平行に軸を持って回転(1自由度))×2=10自由度






2008年11月19日水曜日

Everun note D60H 発注済

昨夜、ようやく Everun note D60H を注文しました。
うまくいくと22日土曜日には手に入るはず。

検討の結果、にしました。


決め手は、周辺機器が豊富にあったこと、
独自の2年保証、
値段は中くらい、
入荷予定が11月20日だったこと(ただし、残り台数の記載がないのはいただけません)、
などです。
24時間以内に確認のメールをくれることになっているようですが
まだ24時間経っていないので、次回入荷分に間に合うかどうか判りません。。
(13:45追記:メールが来ました。どうやら11月20日の入荷分で来そうな気配です。明記されていませんが)

銀行振り込みだと入金確認後1~2日で発送、
代金引換だと1~2日で発送、とあったので、代引手数料が発生しますがこちらを選択。


ベストカカクさんには送ってなかったのですが…
サルテックさん、ブリュレさん、エクスパンシスさんには次のようなメールを
送って、反応を見ました。

しかし、コンペに参加してないトコロがもってくなんて、ヒドイな >俺


> ご担当者様
> Raon 小型PC (EVERUN D60H) を1台注文すると、お支払する金額の合計
>(関税、送料などもろもろを含む)はおいくらでしょうか。
> 商品の届け先は東京23区内です。
> よろしくお願いいたします。



▼各社の返答について

返答のメールの転載許可はありません(求めてもいませんが)ので
感想を書きます。




Bruleさん

問合せに一番早く答えてくれたのがここでした。
カード払いと銀行振り込みの場合と代金引換の場合で送料が異なることを
送料と本体の合計金額つきで丁寧に教えていただけました。
返信の速さにびっくりしました。

このブログからは伝わらないかもしれませんが、
真剣に検討した結果、今回のブリュレさんへの発注は見送りました。
理由は、、、やはり価格が高いこと。そしてそのメリットを理解できなかったこと、です。


expansysさん

ここも早かったのですが
商品価格と送料については、ページへのURLを記載してあったのみ。
送料は明記していました。

ここは安いのですが、バッテリなどのアクセサリについての記載がなく、
メールで問合せしたのですが黙殺されましたので、今回は発注見送り。
OQOはここで買ったのですが…

SaruTekさん

3番目に返信してくれたのがサルテックさん。
OSありとなしの金額と、在庫がなくて入庫未定であることも書いてありました。
送料については記載がありませんでした。

値段はまあまあいいですね。でも、保障期間が3日って、だめでしょう。
ベストカカクさんは2年で同等の値段ですから。




と、言うわけです。

2008年11月14日金曜日

ニューラルネットワークへのセンサーからの入力についての考察

さて、ニューラルネットワークを(データベースを使うかどうかに関わらず)使用するとして、
その人工知能もどきの身体である物理的な、あるいは仮想的なロボットボディーからの入力を
どのようにニューラルネットワークの初めの細胞に渡すか。


近藤化学のKHRシリーズに使用されてるサーボモーターをロボットの体として想定する。

このサーボモーターにICS2.0通信で問合せれば、現在の角度が手に入るようなので
(どうせなら他の各社みたいに各速度とか電流とか温度とかも手に入ればいいのに…と思うけど、高くなるのかなぁ
愛知大学のシリアルサーボというページによるとFUTABAのものが一番優れているようだが…
いかんいかん、脱線してしまった)
この角度を擬似的なセンサーからの値としてニューラルネットワークの初めの細胞に渡すことを考えてみる。

と、角度の値そのものを渡してしまえばそれで完了、みたいですねぇ。


パルスを受け取る場合は、たくさん曲がるほど密度の濃いパルスを発する(受け取る)とか、
「23度」にだけ反応してパルスを発する(受け取る)とか(この場合は、180度動く関節の場合には例えば分解能を1度にしたら180個の細胞が必要)。
どちらにしても、「25度の位置まで曲げよう」と決めた時に、この25度を知るためには細胞が絡み合ってネットワークを作って、最終的に欲する分解能に応じた細胞数が必要で、例は「この細胞が発火するまで曲げよう」と書き換えられるのではなかろうか。

しかし、各細胞が値そのものを処理できるとしたら、「この細胞からの報告数が25になるまで曲げよう」となり、1ステップで済みそうな気がする。


ヒトの場合は、数にモノを言わせて時間的に密度の変わる入力のみを用いて処理しているみたい。
でも現在のPCの処理能力からみても、全部真似しなくていいと思う。

2008年11月12日水曜日

コンピュータでのニューラルネットワークでの実装についての考察

コンピュータでニューラルネットワークを備えた人工知能もどきを実装しようと思う。

まず、神経細胞の使い方というか、興奮の伝え方をまず決めなくてはいけない気がする。
実物のようにパルスとして伝達するか、値の大きさ(3とか-29とか:量)を伝達するか。

これは、現実に作成を目論んでいるロボットに取り付けたい各種センサーがパルスではなく量を出力するものが多い(気がする)ので
量を伝えるように設計したほうがいいように思う。
パルスを出力するセンサーももちろんある(ロータリーエンコーダーとか加速度センサーとか)。
これらは「シビアな単位時間当たり」のパルス数を数えないといけない場面が多いと思うので、
全ステップの実行にどのくらい時間が掛かるかわからないコンピュータでの
ニューラルネットワークでの実装には向いていないと思う。
別途タイマーを持った小さな装置や別のプログラムで量として計算しなおしてから
入力に用いたほうがいいだろう。

実際の神経細胞は1回発火したら次の発火までに一定の時間休む必要があるみたいだけど
数千の入力を持っていても1ステップ(1単位の実行時間)で処理し終わることが出来る。
なので一つ一つがタイマーとカウンターを持っているようなものであろう。

コンピュータでのニューラルネットワークでの実装にパルス伝達を使用しようとしたら
タイマーや興奮の減衰や累積の仕組みを組み込まなくてはならないようだ。
それは面倒である。


よって、今回は量をそのまま伝達する方式を取りたい。

2008年11月5日水曜日

人工知能におけるデータベースの活用法

「人工知能 データベース」でネットを検索すると、
知識データベース、といった意味でデータベースを使用している例が出てくる。

しかし、データベースに出来ることは、データの蓄積と検索だけではない、と思う。

例えば、計算して値を保持することが出来る。
例えば、レコードをまたがって合計することが出来る。

ならば、神経細胞が発火するかどうかを、データベースを用いて
シミュレートできるのではないだろうか。


ついでに、どんなテーブルが考えられるのかを、考えてみる。。。

神経細胞ひとつにつき1レコードで、その細胞の発火状態を持つテーブル?
(神経細胞が1000万個あれば…1000万レコード…)

神経細胞ひとつにつき複数レコードで、その細胞にどの細胞が接続しているかを説明するテーブル?
(ある神経細胞ひとつ分のレコード数=シナプスにより接続している神経細胞の数。
全レコード数はこれを神経細胞数分だけ合計した数となる。
平均1000個のシナプスがつながっている神経細胞が300億個あれば…
10^3 * 3 * 10^10 = 30^13 …これは 30兆?レコード?…あれ?なんだ?正しい?これ)

シナプスひとつあたり1レコードを持つ、あるシナプスの興奮または抑制の度合いを説明するテーブル?


なんだか わかんなくなってきちゃった。

つづく~

2008年10月21日火曜日

製品情報 | ハードウエアソリューションセールスチーム 【ユニ

こういうカメラを2つ、目玉のなかに仕込んで
ロボットの目にしたいっすねーーー

あ、その場合は、目玉を動かすためのモーターが最低でも3つ必要ですなぁ…


製品情報 | ハードウエアソリューションセールスチーム 【ユニテックシステム株式会社】

ハードウエアソリューションセールスチーム 【ユニテックシステム株式会社】


UTS-C03MBシリーズ


USB搭載超小型CMOSカメラ基板

UTS-C03MBシリーズはオムニヴィジョンテクノロジーズ社OV7660CMOS
センサを搭載した小型で低消費電力の組込み機器用に設計されたUSB2.0
I/Fを備えた超小型CMOSカメラ基板です。
VGAサイズで30フレーム/秒の撮影が可能です。
低価格な為、大量ロット製品への組込みに適しております。


UTS-C03MB-1007 (水平画角:53.7° 垂直画角:41.1°)

UTS-C03MB-1025 (水平画角:92° 垂直画角:72°)




無料貸出キャンペーン!【申し込みはこちら】

2008年10月17日金曜日

あたまぐるぐる

ここんとこ、頭の中に渦巻いてることが2つあります。

1:モンスターハンターポータブル2nd G

2:人工知能のプログラミング

1番目はゲームです。PSPで。
でっかいモンスターを狩りまくり〜〜〜
たまに狩られてしまいますが…
なんでこんなにおもしろいんだろうか。
かれこれ半年くらいやってるかも。
200万本以上売ったキラーアプリだってのも
わかります。


2番目は…
「私」という意識は特別で脳のすべての機能を司っていて、
すべて意識が決定している、
のではなく、
エピソード記憶を会得するために必要だった
脳内の1機能にすぎず、
物を見るのと同列の機能であり、
他の脳機能による決定を情報の下流で見ているだけの存在である、
という本を前に読んで、
激しく同意したのと、
心というものも脳内の他の機能と同じで
受け身的に働いているんだと思ったら
人工知能が作れそうな気がしちゃって、ね。

自分で成長する知能を作るためには、体が必要なんですよ。
ロボットですよね〜

はぁ〜
視覚を与えるためのプログラムは のろのろと進んでいるんですが、
頭ぐるぐる〜〜〜です

2008年10月14日火曜日

blogerにLispのプログラムを載せるのが難しい件

(if (< b 100)
(progn
(format (standard-output) " *** a= ~S b= ~S ~%" a b)


<



"

あたりが悪さするらしく。

修正しようとすると<の後ろから崩れてなくなっちゃう。
文字の修飾をすると崩れるようだ。
<pre>をかけられるようにするとか、
ある指定した範囲内の制御記号は無視するとか、
エスケープ文字を教えてくれるとか、
して欲しいっす。

OpenLispでlet変数がstack-overflowする件

OpenLispでletで作った変数がstack-overflowしちゃいます。

↓stack-overflowする例


(defun testmem (a b)
(let ((aa a) (bb b))
(setq aa (+ aa 1))
(if (= aa 100)
(progn
(setq aa 0)
(setq bb (+ bb 1))))
(if (< bb 100)
(progn
(format (standard-output) " *** aa= ~S bb= ~S ~%" aa bb)
(testmem aa bb)))
))

(testmem 0 0)



↓stack-overflowしない例



(defun testmem (a b)
(setq a (+ a 1))
(if (= a 100)
(progn
(setq a 0)
(setq b (+ b 1))))
(if (< b 100)
(progn
(format (standard-output) " *** a= ~S b= ~S ~%" a b)
(testmem a b)))
)

(testmem 0 0)


違いは(let ((aa a) (bb b))があるかどうか、のみ。
前者は手元の環境(ver.8.8.0-win32-x86)では

前略



*** aa= 5 bb= 19
** eval : stack-overflow : nil
と終わります。


無駄なlet変数は使わないように > 自分

どこで買うべきか?SSD版も出たらしい、Everun Note

ただし、車の車検代を支払ってから、です!


SSD版も出たらしい、Everun Note。Raon Digital Everun Note (AMD Turion 1.2G, 1GB, English) (White, XP Home) | eXpansys 商品番号: 173224
Everun NoteにSSD採用の上位版、Ubuntu + Sempronの廉価版

どこで買うべきか。
もっと取扱店があるかもしれませんが…

サルテック Everun Note



BRULE Brule Everun Note


expansysトップページ Everun Note

2008年9月26日金曜日

VBAを使わずExcelで祭日と会社指定の休日も”赤”色に設定する

VBAを使わずExcelで勤務表を作成する

というページを見つけました。
作者への連絡方法が見つけられませんでしたので、
自分のブログに書いちゃいます。



・続・VBAを使わずExcelで勤務表を作成する

というページに…
祭日と会社指定の休日も””色に設定する
のはVBAを使わずには無理、と書いてあったものですから…

実証エクセルファイルをアップロードしようと思います。
あ、どうやったらBloggerにアップロードできるのだ??
これでどうだ
↑これをクリックすると 3.zip というファイルをダウンロードできます。
5KBです。解凍後は23KBのエクセルファイル(EXCEL 2003)になります。
しかし無理やりだなぁ…このアップロード方法は。無事に誰からでも読めるのかな。
本題とは関係ないけど、googleさん、ブログにもファイルをアップロードできるようにして欲しいなぁ。
あるいは、googleドキュメントに倉庫みたいな領域があるとか。

出来るじゃないかーー!どーだぁ!
とはいえ、紹介したページは4年ほど前のもののようですので、
彼も今は出来るかもしれません。

2008年9月21日日曜日

参考程度に、トラックボールの回路図(決して鵜呑みにしないでください)




よくわかんないけど、手持ちのトラックボールの回路図を、基盤から起こしました。
自分の実験のときの参考になるかと思って書いたものです。
トラックボールは創朋 使えてマウス! 3DUSB/PS2/OFF-TABLEと同じものです。
回路図は回路図エディタBSchで書きました。

詳しくQCしてないので、間違いもあるかもしれません。
さらに、R1とかは基盤に印刷されていたものですが、何Ωなのか調べてません。

発行ダイオードは赤外線だと思われます。透明です。4本足が出てますが、2本しか使用されていません。
受光側(図中のRX, RY)は黒くて4本の足を全部使っているようです。部品のメーカーも型番もわからないのでほとんど意味のない回路図ですが…

2008年9月18日木曜日

Everun Note ほっしーなぁ


http://brule.co.jp/everun-note/main.shtml

BRULÉから、ついに発売される(近日)ようです。
その高いCPU能力と小ささにより、結構前から注目していました。

が、先立つ物がないので…

2008年9月17日水曜日

雑誌立ち読みできないampmに怒りを覚える

会社近くのampmで、suica pasmo での支払が可能になってしばらくして、
pasmoを持っていながらEdyを使っていた俺は、ICマネーをpasmoに一本化しました。
複数のカードにそれぞれ残高を気にしながらチャージするのが面倒だったから。

結果、わりと快適に昼飯を買っていました。

ところで、昼の買い物の時にはジャンプやサンデーを立ち読みするのが日課だったんですが、
このampm、雑誌に変なゴムをかけて、読めなくしちまいやがったんです。
もう、他のコンビニに行こう、と 決めたんですが、
近所にpasmoが使えるコンビニが見つからず。
クヤシイ~~!!!

2008年9月16日火曜日

とりあえずのギャラリーに写真を追加しました

先代の「変なキーボード」ですが…

http://around.taichi.googlepages.com/とりあえずのギャラリー

このブログに投稿したことのある写真ですが、上記リンクにまとめました。

2代目の「変なキーボード」の作業はこの週末には進みませんでした。。。

2008年9月9日火曜日

新しい「変なキーボード」作成中 写真その4

写真その4~~

ここから右手用の部品です。
やってることは左手と同じなので面白くないですよね~
これは配線後、半田付けの前、ですね


左側が人差し指(スイッチ6個)、中央やや左が中指(3個)、中央やや右が薬指(3個)、右が小指(4個)。
左下にダイオード、右上に抵抗です。これらはセロハンテープで上から留めています。
ちなみに、スイッチは両面テープやテープのりで留めています。

裏側のアップ…
今回の秘密兵器は実はこの台かも知れません。
東急ハンズだと1300円くらい、アキバだと900円くらいです。
台がもうちょっと安定してくれるといいんですが、あまり重いと使いにくいでしょうしね。
両手が使えて便利です。

2008年9月8日月曜日

新しい「変なキーボード」のキーアサイン、キーコード

新しい「変なキーボード」のキーアサイン、キーコードです(一部工事中)
http://spreadsheets.google.com/pub?key=pDRBztiNYVSCBysufNOztGQ


この記事(っていうのかな、この短さで (汗))、公開したの2008-09-08だったんですねー
ほぼ5年経ってますなぁ

2013-06-09、ファイルが一応の完成をみました。

今はFirmwareの実験中です。

新しい「変なキーボード」作成中 写真その3






写真垂れ流しその3~です


この写真じゃあ、赤い配線の重なり具合は分かりませんねぇ。。。


テスターを使って、これでもか、というくらい、半田付けの確認をします。配線を目に出来るのはこれが最後ですから、しつこいくらいに確認します。



で、自信が出たら、細い細い線が引っ付いてショートしたり、何かに引っかかって切れたりしないように留めるわけですが、今回はグルーガンを使ってみます。

前作では紙テープでしたから、何かミスを後で発見したら はがせばいいや、と気楽でしたが 今回はそうはいきません。

とはいえ、前作でもテープで留めたあとで配線をしなおすような憂き目にはあいませんでしたから、何とかなるでしょう。





当然ですが、ショートしていないことを確認しながら、下から順に留めていきます。














まだ留めます。

新しい「変なキーボード」作成中 写真その2






写真垂れ流しその2~です

まだ左手用です。

この写真の右上のリード線はEZ-USB本体に接続するためのものです。









上のが行、下のが列とGND
































横から見ても醜いですなぁ…

2008年9月7日日曜日

Blender mobile は 挫折 (やっぱり?)

マウス周りの操作が、em-oneでは無理、というのと、
リアルWVGA化してるせいなのか、文字が小さすぎて、メニューが読めません~!

それより LISP がおもしろくて、
それより モンスターハンターがおもしろすぎて、
さらにキーボードをまた自作し始めて。。。
3DCGは、ちっちゃいPCを買うことができたら、あるいは、また始めるかもしれませんね

新しい「変なキーボード」作成中 写真その1






自作キーボードを作って使っていますが、腱鞘炎はよくなりません。
そこで、新しく設計し直すことにしました。
今度は、両手で包み込むように胸の前で持つような使い方をするつもり。

まず初めは、左手の人差し指から小指までで操作する部分。
前作は2段でしたが、今作では3段です。
左上はプルアップ抵抗、右下はファントムキー防止のためのダイオードです。

スイッチはオムロンのD2F-01FL3。

プルアップ抵抗のアップ。
















ダイオードのアップ。

















裏面、配線と半田付け済の状態。















人差し指用のスイッチあたりの裏面のアップ。

モンスターハンター ハンターレベル4!

ごぶさたですって
言っても
誰も見に来てないでしょうけど…

ハンターレベルが4になりました。

なにげにうれしいんですけど

喜びを分かつ相手がいない~~~~

2008年7月15日火曜日

works4Life season V » Blog Archive » Excelの数式で、フルパスからファイル名を取得でき

works4Life season V » Blog Archive » Excelの数式で、フルパスからファイル名を取得できたよー

なんちゅうか、すごい人がいるもんですねぇ
俺なんか、
Function reverse (ss As String) As String
reverse=StrReverse(ss)
End Function
をユーザ関数として使うことしか思いつかなかったもん。


このエントリの全文をコピー↓しちゃいましてどうもすみません。一番上のリンク先の人が考えたんだよー

Excelの数式で、フルパスからファイル名を取得できたよー

嬉しさのあまりと自分リマインドのためのエントリです。

Excelの数式って使っていますか? 私は大いに使っています。特に使っているのはTEXT関数で、フォーマットを揃えるのに重宝しています。シート全部が数式だけを使って表示されているようなものも作ったりもしました。

いやいや昔はマクロやVBAもがんばって使ったもんです。でも面倒なのよね、プログラム見るのが。そんなわけで、最近は数式だけでなんとかするようにしていました。

が、一つだけ前々から実装できなかったものがあります。それはファイル名とパスの分離。

数式でフルパスからファイル名を取得するのは無理なのか?

例えば、「/var/apps/abcapplication/setup.exe」なんてフルパスがあって、このうち「setup.exe」だけ を取得したいだとか、「/var/aaps/abcapplication」だけを取得したいだとか思うのですよ。VBAで実装するのは、ウェブで検索し てもよく見つかるんです。しかし、これが数式だとやり方が見つからない。

ぐーぐる先生にも聞いてみても、 「マクロしか無理」というかVBAのやり方しか見つけられません。そろそろ数式の限界が! というかExcel2003にはsplit関数がないんじゃよー。split関数さえあれば、ファイル名とかパスだけとかを取得するのは簡単なのですよ。 2007ぐらいからは確かsplit関数がExcelにも標準装備されるとかなんとかいう噂を聞くんですが、私の今使っているExcelは2003。 split関数ありません。

数式でフルパスからファイル名を取得するのは無理ではなかった!

でもできたんです! とうとう数式だけでファイル名を取れる数式ができたんです!! その数式がこれ↓

=MID(A1,FIND("★",SUBSTITUTE(A1,"/","★",LEN(A1)-LEN(SUBSTITUTE(A1,"/",""))),1)+1,LEN(A1)-FIND("★",SUBSTITUTE(A1,"/","★",LEN(A1)-LEN(SUBSTITUTE(A1,"/",""))),1))

ちなみに「/var/apps/abcapplication/setup.exe」がA1にある時の数式です。これで、「setup.exe」が取得できます。

そして、「/var/aaps/abcapplication」だけを取得する場合は、こちらの関数になります。

=LEFT(A1,FIND("★",SUBSTITUTE(A1,"/","★",LEN(A1)-LEN(SUBSTITUTE(A1,"/",""))),1)-1)

数式ざっくり解説

この関数のポイントは、一番右側にある「/」の順番をどうやって取得するか、です。関数の流れとしてはこんな感じで組んでます。

(1)「/」を空置換して文字数差分より、「/」の数を調べる
(2)一番最後の「/」をSUBSTITUTE関数で★に変換する
(3)★の場所をFIND関数で取得する
(4)MID関数もしくはLEFT関数で、目的の文字列部分を抜き出す

かなり無理やり感がありますが、そこは目的が果たせたので万事オッケーです。ちなみに、★に置換するのは勿論パスに存在しない前提。★が出てきそう だったら、別の文字に変更すればいいです。上記はUNIXパスなので、Windowsのパスなら「/」が「\」になるだけなハズです。

終わりに

GTDとは全然関係ない話でしたが、あまりに嬉しかったのでエントリしました。フルパスからファイル名等を数式で取得するのは、前々からできないか と気になってたんですが、数式では無理というのが通例でした。性も懲りずにいろいろ調べた結果、ヒントが見つかって今回の数式を作ることができました。本 当に嬉しかったです。

2008年7月14日月曜日

Open Lisp 超初心者用 コード集 01

;;Open Lisp です

;;ファイルへの書き出し(ファイルは上書きされる)
(with-open-output-file
    (outstream-test
    "T:/Lisp/test_code/test-output-file.txt")
    (format outstream-test "Hello file!~%")
    (format outstream-test "Hello line!~%")
    (format outstream-test "Hello strings!~%")
)

;;ちょっと調べたところでは、Lispでよく出てくる「with-open-file」は、存在しない模様…


;;ファイルを読む(ただし、この例だと初めの1行のみ読む)
(with-open-input-file
    (inputstream-test
    "T:/Lisp/test_code/test-input-file.txt")
    (read-line inputstream-test))


;;listの連結
;;(append list*) → <list> function
    ;;連結するlistはいくつでもいい
(defglobal aa nil)
(setf aa (append '(a b c) '(d e f)))
;;⇒ (a b c d e f)


;;文字列の連結
;;(string-append string*) → <string> function
    ;;連結する文字列はいくつでもいい
(string-append "abc" "def")
;;⇒ "abcdef"


2008年6月20日金曜日

Blender mobile 続き

http://russose.free.fr/BlenderPocket/
は、2008年6月20日現在、
The new BlenderPocket Website is under construction...
It will be soon available
です。

Blender挫折経験者である私は、チュートリアルでもやってみます

WBS+(Web/Blender Studio+)
http://wbs.nsf.tc/index.html
さんちの

Blenderチュートリアル・メニュー
http://wbs.nsf.tc/tutorial/tutorial_blender.html


windows mobileだと、マウスの扱い(右クリック)に癖がありそうだけど
そこは自分で調べるしかないかな。


Blender.jp
http://blender.jp/
というサイトを発見!
いえ、みんな知ってることですけどね…

modelをダウンロードしたければ、
The Official Blender Model Repository
http://e2-productions.com/repository/
が、よさそうです。
が、この記事を書いているwindows mobile 機ではこのサイトを表示出来ません…もしかしたらスペルミスかもしれませんが。

あんまり質の高い人間のmodelはないようですな。


では、また

Windows Mobileで3D CG

なんと、windows mobile でも、3Dのアプリがありました。
それも、Blenderです!

インターフェースがトッツきにくくて、以前PCで使おうとしたときに
挫折した覚えがあるので、使いこなせるのかどうか、
ちょいと不安ではあります。

http://freewareppc.com/graphics/blenderpocket.shtml

気が向いたら周辺情報を調べてみます

2008年5月12日月曜日

Google Japan Blog: Google カレンダーを使いこなそう

Google Japan Blog: Google カレンダーを使いこなそう


俺、イーモバイル、使ってます。
Googleカレンダーから携帯電話のメールアドレスにリマインダを受け取ろうと思ったら
そもそも携帯電話キャリアの選択肢に出てこないじゃない!!

なんとかしてよ、Googleさ~ん

2008年4月30日水曜日

モジラとモバイル Firefox Hacks 翻訳日記/ウェブリブログ

モジラとモバイル Firefox Hacks 翻訳日記/ウェブリブログ
http://firefoxhacks.at.webry.info/200710/article_1.html

し、知らなかった ...orz...

Minimo は生きているか?
http://firefoxhacks.at.webry.info/200701/article_6.html

Minimoがもう開発されないなんて

2008年4月11日金曜日

Matrox Millennium G550 LP PCIe 注意! \0で出来る WINDOWS2000/XPパフォーマンス・アップ

\0で出来る WINDOWS2000/XPパフォーマンス・アップ


私はMatrox Millennium G550 LP PCIe を使っています。
上記ウェブページの↓を設定したら、マルチスクリーンが使えなくなりました。。。。
とても素晴らしいページなのですが、使用は自己責任で。
注意しましょう。


2)LargeSystemCache:Windows2000(SP3)/XPのパフォーマンス・アップ2(DLする)

Windows XPは,デフォルトで4MBのアプリケーションの起動用メモリが確保されている。
搭載メモリが64MB以下の環境では効果を期待できるが,128MB以上の環境では逆にスワップが発生し効果を実感できない。
そこで,大容量メモリを搭載している環境では,このメモリを無効にしよう。
アプリケーションの起動用メモリを無効化するには,「LargeSystemCache」を変更する。アプリケーションの起動用メモリを空き物理メモリに解放することで,若干ながらアプリケーションの処理速度が向上する。

2008年3月18日火曜日

とりあえずの「変なキーボード」 というページ

around@taichi - around@taichi

例の自作したキーボードについて、
ここに載せた写真数点(まだ全部作業していないだけですが)などを

いつものページ、というほど頻繁に載せていませんが
このページとりあえずの「変なキーボード」 というページを追加しました。

ファームウェアソースも見れるので
みなさまごひいきに~

2008年3月17日月曜日

変なキーボード5

今回は写真なしです…

小さな箱(タッパーなんですが)に入れていた基盤は
はじめは細いリード線で配線したまま箱につっこんでいたのですが
あとから一本一本丁寧にテープで留めて絶縁しました。

思わぬ接触があったようで、予期せぬ動作は
この絶縁作業でなくなりました。


また、スイッチもハンダゴテのあてすぎで
内部が溶けちゃって、常時通電状態というものが2つありましたので
取り替えました。
(中が溶けてたのは分解して確認しました…)

チャタリング対策をハードウェア的にとっていないので
ファームウェアでウェイトをかけて吸収するようにしているのですが
スイッチの重さと指の力のかねあいか、なんだかわからないですが
2回押したつもりが3回入力されたりすることがあって
(薬指で操作するスイッチで頻発)、もしかしたらそのスイッチを取り替えると
うまく行くのかもしれません。


このへんなキーボードをEM・ONEにつないでみたところ、
当然のようですがキーボードとして使うことができました。

あとはブート時にBIOSが認識してくれるかどうかを実験する必要があります。


この後する事は
 チャタリング対策のためのウェイト時間の最適化
 キャップスロック等のLEDの実装
 マウス機能の実装
 ファームウェアの公開
 キーマトリックスの公開

といったところでしょうか。

ファームウェアとキーマトリックスはとりあえず現在のものを公開すべく
準備中です。

変なキーボード4

今日の1つ目は、醜いのですが
スイッチの下側の配線のごちゃごちゃ具合です。


2つ目は、右のモジュールの側面です。
スイッチを支えているアクリル版が半透明なので、配線が透けて見えています。


3つ目は右のモジュールの親指部分です。
こちらにはマイクロスイッチの針金が1本だけついています。


4つ目は、右のモジュールの奥側 人差し指から小指までで操作するスイッチです。

2008年3月13日木曜日

変なキーボード3

↓これは左のモジュールのキーマトリクスの基盤です。
逆流防止のダイオードと、上のほうにプルアップ抵抗が写っています。


↓これは左モジュールのキーの奥側です。
モードを切り替えながら使うキーボードなので、キートップへの文字の表示は
意味がないというか文字が小さくなりすぎるので やめました。
↓これは左手の親指用のキーです。
白いキーが前後に2つあり、さらに左右に針金がのびているのが
この写真なら見えるのではないでしょうか。
この針金2本と右手の親指でも1本あつかうので
合計3本の針金(マイクロスイッチ)でモードを切り替えます。