忍者ブログ
ロボット、千葉ロッテマリーンズについていいかげんなことを書きます。
[69]  [70]  [71]  [72]  [73]  [74]  [75]  [76]  [77]  [78]  [79
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

OpenRTM.NETは.NETフレームワーク上で動作するので,F#からでも使えるはずです.

OpenRTM.NETはここからダウンロードできます.


簡単なサンプルを作ってみました.

ソースはこんな感じ.








#I @"C:\Program Files\SEC\OpenRTM.NET\bin";

#r "OpenRTM.Core.dll";

#r "OpenRTM.Extension.dll";

#r "OpenRTM.IIOP.dll";

#r "OpenRTM.WCF.dll";




#light

open OpenRTM.Core;
open OpenRTM.Extension;
open System;
open System.Collections.Generic;
open System.Linq;
open System.Text




[<Component(Category = "Examples", Name = "Sample")>]
[<DetailProfile(
        ActivityType = "DataFlowComponent",
        Description = "Hello World Component",
        Language = "F#",
        LanguageType = "Compile",
        MaxInstance = 10,
        Vendor = "Nobu",
        Version = "1.0.0")>]
[<CustomProfile("CreationDate", "2010/11/20")>]
type Sample() as x =
    inherit DataFlowComponent()
   
   
    override x.OnExecute(exec_handle) =
       
            Console.WriteLine("Hello World");
            ReturnCode_t.RTC_OK;
   






let main() =
    let manager = new Manager()
    manager.Activate();
    let comp = manager.CreateComponent("Sample");
    comp.GetComponentProfile().Display();
    manager.Run();

do main()







F#も悪くないかも.










にほんブログ村 IT技術ブログへ
にほんブログ村

PR
と言うわけで新企画です.

・・・・なんか中途半端で終わりそうな気配がプンプンしますが.

F#とXNAでゲームを作ってみると言う新企画です.

僕自身,F#を始めたのが5時間ぐらい前で,XNAに関しても全くのド素人なのでむしろ教えて貰うことのほうが多いと思いますがよろしくお願いします.


では,さっそくインストールから始めます.

インストール方法はF#XNAもインストーラを実行するだけです.

F#はインストール後にPathを通しといた方が良いかも.(勝手にPath通るんだっけ?)
C:\Program Files\FSharp-2.0.0.0\binみたいなところに.


とりあえず,簡単な画面を出すだけのサンプルを作ってみましょう.

ソースはこんな感じ.


#I @"C:\Program Files\Microsoft XNA\XNA Game Studio\v3.0\References\Windows\x86";

#r "Microsoft.Xna.Framework.dll";

#r "Microsoft.Xna.Framework.Game.dll";

#light

open System;
open System.Collections.Generic;
open Microsoft.Xna.Framework;
open Microsoft.Xna.Framework.Audio;
open Microsoft.Xna.Framework.Content;
open Microsoft.Xna.Framework.Graphics;
open Microsoft.Xna.Framework.Input;
open Microsoft.Xna.Framework.Storage;

type MyGame() as x =
        inherit Game(IsMouseVisible=true,
                     IsFixedTimeStep=false)
      


        let m_graphics = new GraphicsDeviceManager(x)
       
        let mutable m_num = 0
        let mutable m_bgc = new Color(20uy, 80uy, 80uy)

        let mutable charaTexture = null
        let mutable spriteBatch = null


        do
            x.Window.Title <- "sample0"
            m_graphics.PreferredBackBufferWidth <- 640;
            m_graphics.PreferredBackBufferHeight <- 480;
       

        override x.Initialize() =
            base.Initialize()


        override x.Update gametime =
            m_num <- m_num + 1
            base.Update gametime
       



        override x.Draw gametime =
            m_graphics.GraphicsDevice.Clear(
                m_bgc
            )

     
            base.Draw gametime

   
let main() =
    let game = new MyGame()
    game.Run()


do main()




作ったら,sample.fsxみたいな名前で保存して,

fsc sample.fsx

とコマンドプロンプトから打つなりしてやれば実行ファイルを作ってくれますし,右クリックしてRun with F# Interactiveをしてやっても実行できるようです.


大体,C#でやるのと同じだと思うので,他を参考にした方が良いかも.
・・・正直,C#でもやったことのない僕が上手く説明出来るとは思えないし.

とりあえず今の進捗状況





キーボードで動画に映っている鼻くそみたいなのを動かしています.
アクションゲームっぽくなってきたかな?







にほんブログ村 IT技術ブログへ
にほんブログ村
前回の続きです.

結果は動画を見ての通りです.






このクローラーロボットは,研究室で置物(と言うかゴミ)同然となってたものです.








xPC TargetをRTMで利用するためのツールを作りたいとは思ってますけど,大して需要もなさそうだしどうしようかと思っているところです.










にほんブログ村 科学ブログ ロボットへ
にほんブログ村のロボットのカテゴリから
全然人が来ない・・・
組み合わせてみたと言う表現が合ってるかどうか微妙ですが,平たく言うとxPC Target用のモデルのパラメータをRTCの入力で変えてやっただけです.




・・・でも,考え直さないといけなさそうなところが多いですな.

ysugaさんのRTC-scilabみたいな感じでやれるのが良さそうだけどね.


xPC Targetのプログラムは基本Simulinkで作るので,それと連携できるのは便利そうですが,xPC Target自体が有料だし,微妙に使いづらいような気もするしなぁ.(僕だけ?)


なお今回は,MATLABによるリアルタイム制御入門 : xPC Targetを使ったモデル・ベース開発(大川善邦著,CQ出版,2007)の15章を参考にしました.

リンク先のページで立ち読みできるみたいです.



<追記>

ちょっと考えてみたんだが,こうしてはどうだろうか?


1.RTC-scilabみたく,Simulink上にデータポートのブロックを用意

2.モデルをビルドするとRTCを自動的に作成

3.RTCを起動したら,ターゲットPCに実行ファイルが送られる

4.RTCをアクティブにするとターゲットPCの実行ファイルが起動


ただ,ディアクティブにしたときはどうしような・・・・

どうやって,モデルのビルドとRTCの作成を同時にやるかも問題だな.

別に同時にやる必要もないかもだけど.






にほんブログ村 科学ブログ ロボットへ
にほんブログ村のロボットのカテゴリから
全然人が来ない・・・

産総研、CGキャラを扱うような感覚で安定した動作軌道を作成できる統合ソフト開発(ロボナブル)


産業技術総合研究所 知能システム研究部門 ヒューマノイド研究グループの中岡慎一郎研 究員らは、ヒューマノイドの動作軌道を編集できる統合ソフトウエア「Choreonoid(コレオノイド)」を開発した。入力した「キーポーズ」と呼ばれ る動作姿勢を力学的に安定した動作に自動変換することができ、CGキャラクターを扱うような感覚で編集することができる。ロボット制御の専門知識を持たな いようなクリエイターでも容易に扱えることから、ヒューマノイドを活用したコンテンツ制作に向け広く配布する。同ソフトの詳細は、10月18~22日開催 の「IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS2010)」で発表する。

  ユーザーが入力するキーポーズをつなぎ合わせることで力学的に安定した動作姿勢に変換しつつ、一連の動作軌道を構成する。キーポーズの入力や修正をするた びに、これらを補正したりつなぎ合わせたりすることで動作姿勢を自動的に安定させるため、様々な動作軌道を容易に生成することができる。 Humanoid(人間型ロボット)にChoreograph(振り付けをする)ことから、Choreonoidと命名した。

 具体的には、まず入力したキーポーズの接地状態を確認し、足裏が地面にめり込んだり接地すべき足が浮き上がっていたりしないよう足裏を床面に接地 する補正がなされる。次に、接地状態を滑らかに推移できるよう、目標ZMP(Zero-Moment Point、床反力の圧力中心)の遷移と、それに伴う各関節の角度および軌道などを決定する。このとき足裏の地面への接地や離反を滑らかに行うための補助 的なキーポーズを自動的に挿入したり追加したりされる。さらに、必要に応じてキーポーズの腰の位置が自動的に補正されることで、安定した動作軌道が生成さ れる(写真下)。
  「デジタルコンテンツEXPO2010」にて、東京大学IRT研究機構の石川勝特任研究員とダンスクリエイターのSAM氏のプロデュースのもと、同ソフトで生成したプログラムを「HRP-4C」に実装し、ダンスを披露した。

 ロボット制御の専門知識がなくても様々な動作軌道を容易に生成できることから、専用ホームページを通じて、一般にも公開することを予定する(ただ しライセンスなどの詳細は未定)。また、クリエイターと共同でヒューマノイドを活用したコンテンツ制作にも取り組む。なお、同ソフトの一部である動作パ ターン設計ツールは「次世代ロボット知能化技術開発プロジェクト」(NEDO)で開発した。





・・・・そっちが本体?

コレオノイドというソフトはヒューマノイド以外でも出来ると言うことなのでしょうか?

動作パターン設計ツールはたしかヒューマノイド以外でもできたと思いますので.

この記事読む限りではヒューマノイド専用みたいですが.

う~む,この記事だけではよくわかりませんな.論文が出回り次第,読んでみますけど.


ところで,操作パターン設計ツールのテスト公開ページの更新が滞ってるのは何故でしょうね?

去年の7月ぐらいでしたっけ?最後に更新されたの.







その他の話題

東大・中村研究室、NAOを30体導入、自由にコミュニケーションできるロボの研究に活用(ロボナブル)


そんな資金力の違いを見せつけるようなことしなくても.

今の環境で東大や東工大に勝つ,そんな風に考えていた時期が俺にもありました




こっから完全に個人的な話ですけど.

何というか,「君はどうせ大した研究成果出せないから,金のかからない研究やりなさい」と遠回しに言われて今の研究やってるようにしか思えないんだよな.

最初に希望は出すけど,いつの間にか別の研究にすり替えられてるし.

留学生がやたらでかいロボット作ってるのを端で見ながら,「お前に出す金はねぇ!!」みたいな感じで数式をひたすら書いてるというそんなに他へ移って欲しいのかと言わんばかりの状況なので,勝ち目0ですね.

どうせ,今の制御法が実機で試せるレベルになった頃には,博士の人とかに研究取られてるんでしょうし.


・・・まあ,ほとんど被害妄想ですけど.






にほんブログ村 科学ブログ ロボットへ
にほんブログ村のロボットのカテゴリから
全然人が来ない・・・


&lt;&lt; 前のページ 次のページ &gt;&gt;
カレンダー
10 2024/11 12
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
フリーエリア
最新CM
[08/31 ysuga]
[08/31 Nobu]
[08/31 ysuga]
[12/11 Nobu]
[12/11 Kanamura]
最新TB
プロフィール
HN:
Nobu
年齢:
36
性別:
男性
誕生日:
1988/09/22
職業:
あれ
趣味:
妄想、自堕落
バーコード
ブログ内検索
P R
カウンター
忍者ブログ [PR]