佐倉です。
本日の研修ではDARwIn-OPの簡単なプログラムを組んでみました。
まず、DARwIn-OPのソフトウェアの構成を調べなければ始まりません。様々な所に散らばっているDARwIn-OPの資料には、どんなクラスがあるか、どんな分類になっているか は書いてあるのですが、使う上で参考になるような資料は見つけられませんでした。
というわけで、ソースを見て構成をつかむ事にしました。
まず、動きに関してはMotionManagerという物が実際にサーボモータ(CM730)に司令を送っている部分を持っており、MotionManagerをLinuxTimerに登録する事で一定周期でProcessというメソッドが呼ばれる という仕組みになっているようです。
MotionManagerが送信する情報はMotionModuleを継承したクラスがMotionManagerに提供する形になっていました。
ここまで調べた所で、WalkingというMotionModuleがあり、これを使うだけで簡単に歩かせる事ができそうだったので、歩かせてみる事にしました。
前回動かしたtutorialのball_followingを削ってから簡単に付け足して、速度を変えて歩けるようにしてみました。
使いやすいフレームワークで安心しましたが、サービスとしてMotionManagerのような物があり、メッセージキュー等でメタな指令を出すような構成の方がアプリケーションの作りこみはやりやすそうなので、そういった感じのシステムを作るのを目標にしようと思います。
明日からは研修が別の内容になるのでしばらくDARwIn-OPとはお別れです。