« 2007年12月 | トップページ | 2008年2月 »

2008年1月

MIDIファイルからMUSICコマンド(1)

いまCMで流れてますが、「週刊My Music Studio」(デアゴスティーニ)というのが創刊されましたね。音楽は基本的に好きで、こんなのとか、音楽関係のソフトをいくつか作ったりしてます。今は聞くことしかしてませんが、こんな私も高校まではバンド組んでて、打ち込みを習得したいなぁと思いつつ、中々機会が作れずやったことがありませんでした。なんで定期購読申し込んでしまいました。

さて、音楽と言えば、ロボザックは、roboBASICに"MUSIC"というコマンドがあって、「ビロリロリン〜」と音を出すことができますよね。roboBASICのコマンドリファレンスに使い方が書いてありますし、そ〜んな難しくはないと思うのですが、ちっとは便利になるかと思い、RZ1Basicでは、キーボードをクリックしてメロディーを作れるようにしてあります(図)。

Rz1basicscreensnapz004

Screensnapz0031)RZ1Basicを起動して、「コントローラー」ウインドウのいちばん左のボタンをクリックして下さい。
2)新規ウインドウが開きますので、その右の方にあるキーボードの絵柄のボタンをクリックすると上の図のようなMUSIC編集ウインドウが開きます。Rz1basicscreensnapz003
3)エディットフィールドにすでに入力されているので、それを消してから、キーボードをクリックして、メロディーを作って下さい。右の方にある「再生」のボタンをクリックして、メロディーを確認することができます。※現在まだ、速度の値は、TEMPOのコマンドに対応してません。
4)オッケーならば、「適応」のボタンをクリックすれば、「新規ウインドウ」にMUSICコマンドが書込まれます!

ビジュアル的に作れますので、少しは便利になると思いますが、どうでしょう?

と、今日は、このキーボードによるMUSICコマンドの作り方の話なんですが、タイトルにありますように、「週刊My Music Studio」も購読し始めたし、MIDIファイルのフォーマットを勉強中!!
で、MIDIデータを読込む部分まで作れましたので、これをroboBASICのMUSICコマンドに変換できるような機能を組み込もうと思ってます。MIDIファイルはネット上にいっぱいあるし、MIDIファイル作成ソフトもフリーでいろいろあるようですし、もっと楽してMUSICコマンドを作成できるのではないかと思ってます。完成したら「MIDIファイルからMUSICコマンド(2)」としてお知らせします。

メモ:
Standard MIDI File (SMF) Format
詳説MIDI規格
SMFファイルフォーマット解説
SMF (Standard MIDI Files) の構造 <--ここ解りやすい

| | コメント (0) | トラックバック (0)

RZ1Basic v0.1.6 公開

Rz1bicon04RZ1Basic v0.1.6を公開しました。

RZ1Basicも久々にバージョンアップしましたので、簡単に説明します。Robozak-1/Robonova-1の制御用のベーシック言語(ROBOBASIC言語)対応の統合開発環境ソフトウエアです。私は基本的にマックを使っていますので、roboBASICに変わるものが必要で作り始めたソフトウエアです。Mac OS XはLeopard, Tiger、Windowsは Vista, XPで動作確認しております。なお、MR-C3024のファームは、v2.5で起動テストしています。

今回の更新内容は、昨日話題にした、ADポートの値を取得する方法がありましたが、これをもう少し分りやすいインターフェースで取得できるようにしました。今回はWindows版のスクリーンショットで簡単に説明します。

1)ロボザックをプログラムを転送する時と同じく、ケーブルでつないでマイコンの電源を入れます。
2)メニューの「コントローラー」の中の「ADポート読込み」を選択するとダイアログが表示されます。Parallels_desktopscreensnapz012

3)調べたいADポート番号を選択
4)インターバルを入力します。あまり短いインターバルにしてもその速度で読み取れないかもしれませんのでほどほどにしておいた方がよいかと思います。
5)何回か読み取ってた後、自動的に読み取りを終了させる場合は、必要に応じて「自動停止」で、その回数を入力して下さい。
6)「取得開始」ボタンをクリックすると、読み取りが開始されます。
7)真ん中の欄に表示されているのが、ポートの値です。
8)「ストップ」ボタンをクリックすると読み取りを終了します。
9)ストップすると、読み取ったデータをグラフや一覧で表示できます(図)。右下のポップアップメニューで選択して下さい。
 
たぶん簡単にできると思います。
Finderscreensnapz004

ただ何があるかわからないので、やるときは、自己責任においてよろしくお願い致します。

ダウンロードはこちらから

| | コメント (0) | トラックバック (0)

ADポートの値を取得してみる

ここんところ、avalonさんの「ロボットのいる生活」とか、takuoさんの「RoboZak奮戦記」とかで、アナログポートの値の取得が流行っているみたい。例えば、「データ送信(EXT)にチャレンジ」で書かれているようなケーブルを作らなきゃなんないのかな??私はどうもハードウエアは苦手だし、作るのも面倒なんで、MR-C3024の通信コマンドで、ADポートの値を得るコマンドがあるので、RZ1Basicで、真似っこしてみました。

1)普通にロボザックにプログラムを転送するときのようにケーブルをつないで、RZ1Basicを立ち上げます。
Rz1basicdebugscreensnapz001
2)メニューの「コントローラー」の中に「コマンドテスト」という項目がありますので、選択して下さい(※図の「ADポート読込み」という項目は今作成中の機能なので公開中のRZ1Basicにはありません)。

Rz1basicdebugscreensnapz003
3)コマンドテストのダイアログが開きますので、「Data」の隣のポップアップメニューから、「AD IN = No 00」と書かれてある項目を選択して下さい。

 
Rz1basicdebugscreensnapz002
4)「E2 No 00」と入力されたかと思います。0xE2はADポートの値を取得するという意味、NoはADポートの番号、0x00はおまじないみないなものになります。
5)例えば距離センサを3番に接続したとしたら、「E2 03 00」として下さい。

Rz1basicdebugscreensnapz004
6)あとは、「Send Data」のボタンをクリック
7)すると、「Result」のフィールドに結果が返ってきます。例えば「E203AA」となってたとしたら、最後の「AA」の部分が値です。
8)「AA」は16進数ですから、図の様にHexの所に「AA」と入力して、三角形をクリックすると10進法の数値がDecの所に計算されます。
Rz1basicscreensnapz002

ケーブルを作る必要がないので、もしご興味のあるかたは試してみて下さいね!!ただ何があるかわからないので、やるときは、自己責任においてよろしくお願い致します。

| | コメント (0) | トラックバック (0)

RZ1Disguise v0.1.0 公開

Rs2rz13_2RZ1Disguise v0.1.0 公開しました。

久々に更新しましたので、ここでRZ1Disguiseの機能について簡単に書いておきますね。

Robozak-1(デアゴスティーニ)または、Robonova-1(ハイテック)対応の拡張子rsfのモーションファイルには、週刊ロボザック14号付属のプログラミング・シミュレータによって作られたrsfファイルと、roboScriptによって作られたrsfファイルがあり、それぞれ似ているようで異なっています。RZ1Disguiseは、これらのファイルを双方向に変換することができます。また、rsfファイルをroboBASICのファイルとして変換することもできます。

Rz1disguisescreensnapz001

今回のバージョンアップでは、1)画面に入り切らないというリクエストもあり、縦長だったウインドウを、ロボットの図を横に置くことで短くしました(図)。2)あと、少し仕様を変更し、プログラミング・シミュレータからroboBASICへの変換において、DIRの設定を、roboBASICの基本的なDIRと同じ設定に変換できる様になりました。プログラミング・シミュレータでモーションを作成していた方にとって、roboBASICへのデータの移行が少しは簡単になったかと思います。3)プログラミング・シミュレータからroboScriptおよびroboScriptからプログラミング・シミュレータへの変換では、反転させなくてはいけないモータは既知ですので、いちいち選択しなくて済む様にしました。

ダウンロード

| | コメント (0) | トラックバック (0)

ロボ DE 解剖学【9】組織と器官系(2)

今日は「組織と器官系」についてのお話のつづき、筋組織と神経組織についてです!なんだかロボットのことが全然出てこなくて普通に解剖学になっちゃってますよね(汗)今回もロボット出てきませんのであしからず。。。

筋組織
収縮できる機能を持つ細胞からできた組織です。筋細胞は、細長いので、筋線維という言い方もします。筋組織には以下の3種類の細胞があります。

骨格筋細胞:骨と骨、骨と皮膚、皮膚と皮膚に付いて、骨や皮膚を動かす筋肉を作る細胞で、ロボットで言えばサーボの中のモーターということになりますかね。骨格筋細胞の長さは筋肉の長さに匹敵するため、長いものでは30cmくらいある非常に細長い多核の細胞です。骨格筋細胞を顕微鏡でみると規則正しくならんだ縞(しま)模様があり、これを横紋といいます。細胞が収縮すれば横紋の間隔は狭くなります。従って、それぞれの横紋が引き合うことで収縮するという感じに理解して下さい。モーターは回転運動なんで、収縮とは少し違いますよね。第7号の14ページに書かれているシリンダーみないなものが筋細胞の動きと近いですよね。

心筋細胞:心臓を動かしている細胞です。ロボットには心臓に相当するものがないので対応するものはないと言っていいでしょう。心筋細胞は骨格筋と同じように横紋を持ちますが、骨格筋細胞は基本的に自分の意志で動かすことのできますが、心筋はそうはいきません。自分の意志で動かすことのできる筋を随意筋、動かせないものを不随意筋といいます。

平滑筋細胞:血管や、消化管などの、管状の器官の中にある紡錘形をした細胞で、血管を細くすることで血流量を調節したり、小腸などでは、蠕動運動(細くしたり、短く=太くしたり)により食べた物を動かします。骨格筋、心筋と異なり、横紋は持ちません。収縮する際、細胞は雑巾をギュッとしぼるように収縮します(管がねじれるという意味ではないです)。ロボットではケーブルが電気を伝えているという意味で血管と考えると、ケーブルには収縮の機能はないので平滑筋細胞に相当するものはないと考えていいですね。でも、特に太めの動脈では、弾力性も大切で、弾性線維を多く含んでいます。ケーブルのビニールは弾力性を持ちますので、血管の弾性線維に相当すると考えていいかもしれませんね。

筋細胞 横紋 核の位置 神経 ロボット
骨格筋細胞 細長い あり 多核 周囲 随意 モーター
心筋細胞 長方形 あり 1~2核 中央 不随意 なし
平滑筋細胞 紡錘形 なし 単核 中央 不随意 なし
 

Photo
 

神経組織
神経組織は、神経細胞とグリア(神経膠)細胞から構成されています。これらの細胞から、脳、脊髄、脳神経、脊髄神経といったものが作られています。ロボットで言えば、マイコンが脳/脊髄に、サーボモータのケーブルや、各種センサーのケーブルが、脳神経/脊髄神経になりますかね。ちなみにセンサーは感覚器でしょうかね。

神経細胞:神経細胞は、長〜い細胞突起を持ち、細胞の膜電位をコントロールすることで、細胞突起に沿って電気的な興奮を伝導することができる細胞です。神経細胞は、細胞核のある細胞体、他の細胞からの入力を受ける樹状突起、他の細胞に出力する軸索に分けられます。神経細胞どうしはシナプスと呼ばれる連絡部位を持ち、そこから別の神経細胞へと細胞膜の興奮の刺激を体の隅々まで伝えています。神経細胞は、マイコンに搭載されているCPUやメモリーといった感じでしょうか。

グリア細胞:グリア細胞は、刺激を伝える細胞ではありません。神経細胞の機能をさまざまな側面からサポートする細胞の総称で、支持するという意味で、マイコンの基盤や、ロボットの栄養という意味で、バッテリーからの電気を伝えている部分などが対応するでしょうか。グリア細胞には、それぞれの機能によって、以下のような細胞に分けられています。

グリア細胞 働き ロボット
マイクログリア
(小膠細胞)
免疫、異常代謝物などの回収を行う、お掃除屋さんです。マクロファージ(日本語で大食細胞という)の神経組織版として考えられます。 なし
オリゴデンドロサイト
(希突起膠細胞)
脳や脊髄で、軸索に巻きついて髄鞘を形成し、巻きついた神経細胞の支持と栄養補給の機能を持つ細胞です。 基盤の配線
シュワン細胞
(鞘細胞)
脳神経や脊髄神経で、軸索に巻きついて髄鞘を形成します。髄鞘を持つ神経細胞を特に有髄神経と呼びます。 ケーブルの
ビニール?
アストロサイト
(星状膠細胞)
支持細胞として働いています。 基盤
上衣細胞 脳室系の壁を構成する細胞です。 基盤のコーティング?
 

Photo_3
 

は〜い、今回は、ここまで、次回は器官/器官系についてです。
お楽しみに〜=*^-^*=♪


| | コメント (0) | トラックバック (0)

RZ1DisguiseのLinux版を作ってみた

Rs2rz13_2ま、ニーズはないと思いますので、あくまでも私の自己満だけで作ってみたのですが、Parallelsを使ってLinuxを動かしてみたついでに、RobomicのRZ1ソフトのLinux版を作ってみました。

使ったLinuxはFedora 8です。
FedoraのページからiMacにインストールしたかったので、「i386 - インストールDVD」をダウンロード。けど、あまりにも遅かったので、こちらのページのミラーからダウンロードしました。

Parallelsへのインストールは、そんなに難しくありませんが、Parallels Toolsのインストールと、解像度の変更が手作業的になってしまうので、ちょっとやっかいです。

1、Parallelsを起動、「新規」を選択
2、オペレーティングシステムを「カスタム」を選択
3、OSタイプを「Linux」、OSのバージョンを「Fedora Core Linux」を選択
....
....
と「次へ」をクリックしながら進める。

4、設定が済んで起動前に、起動ディスクとして、ダウンロードした「Fedora-8-i386-DVD.iso」をディスクイメージとして選択して、起動
5、Fedoraのインストーラーが起動するので、いくつか設定を聞かれる。
ほぼデフォルトのまま進めれば問題なくインストール完了です。

Parallels Toolsのインストール方法は、
1、rootで、ログイン
2、Parallelsのメニューの「デバイス」「CD/DVD...」「イメージに接続」を選択(図)
Parallels_desktopscreensnapz007
 
3、「/ライブラリ/Parallels/Tools/」の「vmtools-linux.iso」を選択する(図)
Parallels_desktopscreensnapz008
 
4、Parallels-tools.runをダブルクリックして起動(図)
Parallels_desktopscreensnapz009
 
 
解像度が800x600のまま選択できません。
画面のサイズを変更する
1、rootでログイン
2、ターミナル(端末)を起動(図)
3、etc/X11/xorg.confをviで開く(図)
Parallels_desktopscreensnapz010
 
4、ず〜っと下の方の、Modes "800x600"に、以下のように、いくつかのサイズを書いて、保存して終了(図)
Parallels_desktopscreensnapz011
 
5、私の場合は、"1280x800"で使ってます
 
 
 
さてさて、本題のRobomicのRZ1ソフトのLinux版ですが、
RZ1Actionは、3DのエンジンのQuisaのLinux版が使えないので、たぶん簡単には対応できない。
RZ1Basicは、たぶん動く物が作れるような気がする(まだできてない)。
RZ1Disguiseは、動くものが作れましたよ!!(図)うれし〜!!

Parallels_desktopscreensnapz006

| | コメント (7) | トラックバック (0)

ロボ DE 解剖学【8】組織と器官系(1)

久々にロボ DE 解剖学です!
今回は「組織と器官系」についてのお話です!

《組織》
人とロボットを簡単にはアナロジーすることはできないですけど、人の体は、細胞と細胞の外の物質(細胞外基質/細胞外マトリックスと呼ばれる)で構成されています。ロボットの場合は、金属やプラスチックなど、って感じになるでしょうかね!?

組織という言葉は「会社組織」とか、「組合を組織する」とかで使われますが、辞書的には、「特定の目的を達成するために、諸個人および諸集団に専門分化された役割を与え、その活動を統合・調整する仕組み。または、そうして構成された集団」を意味しています。生物において使われる組織とは、「同一の機能と構造とをもつ細胞の集団」のことになります。動物の場合は、4種類の細胞に分類されています(植物は6種類かな?)。人の体の細胞は成人で約60兆個あると言われていますが、その細胞は、たったの4種類に分類されちゃうんです!で、その4種類とは

 上皮組織:表面を覆う役割を持つ細胞(集団)
 支持組織:支える為の基質を作る細胞(集団)
 筋 組織:収縮できる機能を持つ細胞(集団)
 神経組織:情報を伝達する細胞(集団)

の4種類になります。

上皮組織の細胞とは、いちばん分りやすいものとして、皮膚の表皮の細胞ですかね。兎に角、体の内外問わず、組織や器官の表面を覆って、体や器官や組織を保護している細胞集団になります。ですから例えば心臓や肺、肝臓の表面も上皮細胞が覆っています。また管状の器官の管腔面もすべて上皮細胞が覆っています。例えば「酒飲みすぎて胃の粘膜が荒れてる...」とか言いますが、上皮細胞が表面を覆うことで胃の粘膜を保護する働きをしている訳ですね。外界と体内が繋がる管の表面という意味で、消化器系の食道、胃、小腸、大腸などの管の内腔面、呼吸器系の気管や気管支の内腔面、肺胞だって上皮細胞なんです。泌尿器系の尿道とか膀胱の内腔面も上皮細胞ですね。これらの上皮細胞は、消化液を作ったり、栄養を吸収したり、酸素を取り入れたり、味を感じたりと、保護だけでなく、いろんなことをしなくちゃいけないんですよね。外界と繋がる部分でじゃないので、少し理解しにくいのですが、閉じた空間の表面も表面なんで、前回の【7】で出てきた腹腔の空間の表面を覆う腹膜も上皮細胞の種類になります。また同じく閉じた空間として血管の内腔面を覆う細胞も上皮細胞の種類になります。

支持組織は支える...と書きましたが、細胞がその組織の特徴を示しているのではなく、その組織の細胞が分泌した細胞外基質に特徴があり、硬い順に書くと、骨組織、軟骨組織、結合組織、(それと血液)に分類されます。骨は骨細胞が硬いのではなく、骨芽細胞(こつが細胞)が作った基質が硬いんです。ちなみにリン酸カルシウム(85%)、炭酸カルシウム(10%)、リン酸マグネシウム(1.5%) が骨に硬さを与えています。細胞外基質として細胞が分泌するタンパク質の代表的なものとして、コラーゲン(膠原線維:こうげんせんい)と、エラスチン(弾性線維)があります。コラーゲンの線維が規則的に並んで束状に作られた器官として腱や靭帯があります。たまにスポーツ選手が切っちゃうやつですね。コラーゲンは引っぱりに対して非常に強い組織を作ります。それに対してエラスチンは弾性線維という日本語名から分るように弾力性のある線維です。耳は弾力性がありますよね。耳の軟骨は弾性線維を多く含む軟骨なんで弾性軟骨というんですよ。あと結合組織はイメージしにくいと思いますが、例えばタンスの下に防震・耐震粘着マットをしきますよね。例えると、それが結合組織です!細胞と細胞、組織と組織、器官と器官をくっつけているというような意味合いから結合組織という名前が付いています。ガーゼのような膜状のもの(基底膜、骨膜、筋膜など)や、スポンジのような中に多くの空間を持つもの(骨髄、脂肪組織など)があります。

さて、長くなりましたので、今回はここまでにしますが、図のそれぞれの臓器を見てみて、外界と接する表面を覆っているのは上皮組織、体内の表面を覆っているのは結合組織であるのが分りますか?!ではでは、つづきは次回のお楽しみ...
 
Photo_2

| | コメント (0) | トラックバック (0)

Parallelsでプログラミング・シミュレータが動いた!

Parallels_desktopscreensnapz005マックな方しか関係ありませんが、Parallels Desktopの新しいビルド(5582)をインストールしたので、プログラミング・シミュレータを動かしてみた。結果、図のように、見た目はWindowsマシン上で動かしているのとは違いますが、とりあえず動きましたよ。=*^-^*=にこっ♪

Parallels_desktopscreensnapz004注意点として、画面のプロパティで、16ビットにしておかないとうまく動かないみたいです。
Screensnapz002あと、画面のサイズが小さすぎると、「実行」「停止」のボタンが、プログラムのエディットフィールドに隠れてしまいます(図)。プログラミング・シミュレータの起動後、Parallelsのウインドウをマウスで大きくすると落ちてしまいますので、あらかじめ大きくしておいてから起動する必要があります。画面のサイズが1024x768以上なら大丈夫だと思います。

| | コメント (0) | トラックバック (0)

roboBASIC_v26j(20071220)も...

ロボットまったくやってません(汗)早く組み立てたい!!!

久々に、roboBASICのページを覗いてみて、ダウンロードしてみたら、
roboBASIC_v26j(20071220)というのがダウンロードされた。

バージョンアップされていることが、ページ上ではまったくわからんゾ〜〜!!!も〜なんつ〜かずぼらだなぁ。。。


Screensnapz001で、Vistaにインストールしてみた。インストールされたバージョンは、図のように、roboBASICはv2.61になっているようです。

結果は、「コンポーネントMSINT.OCX、またはその依存関係のひとつが適切に登録されていません。ファイルが存在しないか、あるいは不正です」とエラーメッセージが出て立ち上がりませんでした。

| | コメント (0) | トラックバック (0)

« 2007年12月 | トップページ | 2008年2月 »