でむ さん プロフィール

  •  
でむさん: demura.net: ロボットの開発と教育
ハンドル名でむ さん
ブログタイトルdemura.net: ロボットの開発と教育
ブログURLhttp://demura.net/
サイト紹介文ロボット達のサッカーW杯ロボカップ,つくばチャレンジ,物理計算エンジンODEを開発者の視点で情報発信
自由文とっても簡単なオープンソースのシミュレーションライブラリOpen Dynamics Engine (ODE),ロボット達のサッカーW杯ロボカップ(RoboCup),日本版グランドチャレンジ「つくばチャレンジ」など私が関わっているロボット関連とその教育についての情報を発信中
参加カテゴリー
更新頻度(1年)情報提供30回 / 365日(平均0.6回/週) - 参加 2010/01/02 16:20

でむ さんのブログ記事

  • Jetson TX1: JetPack3.0インストール後の作業
  • Jetson TX1にJetPack3.0をインストールした後の作業メモユーザの作成System Settings -> User Accounts でMy Accountsを作る。この例ではアカウント名をここではhappyminiとする。/etc/groupのvideoにアカウント名を加える。この例では以下になる。この作業をしないとそのアカウント名でloginできない。video:x:44:ubuntu,nvidia,happymini新しく作成したアカウントでログインしたら、端末を開き、次のコマンドでubuntuアカウン [続きを読む]
  • Jetson TX1 :JetPack3.0のインストール
  • Jetson TX1へJetPack3.0をインストールしたときのメモ。ホストPC環境ThinkPad T450CPU: Intel i7-5500UGPU: nvidia 940m, moemory 1GBxubunut14.04.5Kernel 4.4.0-66-genericgcc/g++ 4.8.4NVIDIA EMBEDDED COMPUTINGのウェブサイトへ行き、下の[DOWNLOAD]を する。上から2つのTitle [JetPack]を DOWNLOADSの下のUbuntu [64.bit]を する。Embedded Developer Programのメンバーにならないとダウンロードでき [続きを読む]
  • RoboCup2017世界大会@Homeリーグへ出場します!
  • happy miniチームがRoboCup2017世界大会@Home オープンプラットフォームリーグへの出場権を獲得しました。happy miniチーム(昨年まではdemura.netチーム)は金沢工業大学夢考房RoboCup@Homeプロジェクトと合同会社D.K.T.のコラボチームであり、世界大会へは2015年(9位)、2016年(8位)に引き続き3回目となります。なお、RoboCup@Homeプロジェクトは新しい形の夢考房プロジェクトでdemura.netから技術支援を受けて生活支援ロボ [続きを読む]
  • リアルタイム物体検出DNNのYOLO v2で少しはまる
  • facebookで先日、話題になっていた世界最先端の実時間物体検出DNN(Deep Neural Network)のYOLO v2 (real time object detection)を試したときのメモ。Cudaの out of memoryエラーで1日ハマったので他の方の参考になればと思う。環境ThinkPad T450CPU: Intel i7-5500U,GPU: nvidia 940m, moemory 1GBxubunut14.04.5Kernel 4.4.0-66-genericgcc/g++ 4.8.4Darknetのインストールこの指示にしたがいDarknetをインストールするgit clon [続きを読む]
  • ThinkPad T450 (Nvidia 940m)にXubuntu14.04.5とCuda7.5を入れたときのメモ
  • ThinkPad T450にXubuntu14.04.5, Cuda7.5インストールしたときのメモ。 T450はNvidia 940mと Intel HD 5500のGPUを搭載しており、NVIDIAのOPTIMUSテクノロジーを使っている。Windowsでは問題ないが、UbuntuをインストールするとXが立ち上がらなくなるブラックスクリーン問題で悩まされた。UnityとNvidiaの相性が悪いので、Unityを使わないXubuntuとCuda7.5rcに2年前に変更したら問題なくXが起動するようになった。昨年、学生が間 [続きを読む]
  • 音声認識エンジンKaldiでTED学習済みのDNNモデルを使うためのメモ
  • 音声認識エンジンKaldiは音響モデルにDNN-HMMモデルも使えます。RoboCup@Home2016世界大会ではTED学習済みDNNモデルを使いました。この記事はそのメモ。環境ThinkPad T450(CPU: Intel i7-5500U, GPU: nvidia 940m)xubunut14.04.5Kernel 4.4.0-66-genericgcc/g++ 4.8.4準備: Python用パッケージのインストール非同期のネットワークライブラリtornadoのインストールpip install tornadoPython用ウェブソケットプロトコルのインストー [続きを読む]
  • 音声認識エンジンKaldiのgstreamサーバーの構築メモ
  • Kaldiを使いやすくするためのKaldi-gstream-server設定のメモ。環境ThinkPad T450(CPU: Intel i7-5500U, GPU: nvidia 940m)xubunut14.04.5Kernel 4.4.0-66-genericgcc/g++ 4.8.4準備: Python用パッケージのインストール非同期のネットワークライブラリtornadoのインストールpip install tornadoPython用ウェブソケットプロトコルのインストールpip install ws4py == 0.3.2yamlのインストールpip install pyyamlJSONのインストールp [続きを読む]
  • Kinect V2 + Ubuntu14.04 メモ
  • Kinect V2をUbuntu14.04で使用する設定をしたときのメモ。カーネル3.16以上、USB3.0必須。libfreenect2とiai_kinect2が必要。OpenCLのインストールで少しはまったので記録に残す。OpenCLを使うとIntelの内蔵GPUを使えるので高速処理可能。1. libfreenect2のインストールhttps://github.com/OpenKinect/libfreenect2のLinuxの部分を実行。Get sourcegit clone https://github.com/OpenKinect/libfreenect2.gitcd libfreenect2cd dep [続きを読む]
  • numpyメモ:列の挿入
  • numpyのメモ.行列に要素が全て1の列ベクトルを挿入>>>import numpy as np>>>X = np.array([[1,2],[3,4],[5,6]])>>>print X[[1 2] [3 4] [5 6]]>>>a = np.column_stack((np.ones((3,1)),X))>>>print a[[ 1. 1. 2.] [ 1. 3. 4.] [ 1. 5. 6.]]>>>import numpy as np>>>b = np.concatenate((np.ones((3,1)),X),axis=1)>>>print b[[ 1. 1. 2.] [ 1. 3. 4.] [ 1. 5. 6.]]>>>import numpy as np>>>c = np.hstack((np.ones(( [続きを読む]
  • ROS演習8:ロボットアーム
  • 今週はgazeboを使い2自由度のロボットアームを作り、関節を動かします。2自由度ロボットアームのURDFは参考リンクを参照してください。このサンプルでは参考リンクのrrbot.xacroをベースに作っています。ソースTurtlebotをテレオペ(遠隔操作)したソースコードをベースに ~/catkin_ws/src/armbot2/src/teleop.cppを作成しました。ジョイント1とジョイント2の目標角度をパブリッシュし、/armbot2/joint_statesトピックをサブスク [続きを読む]
  • ROS演習7:ロボットビジョン (cv_bridge)
  • この記事は私が担当している講義ロボットプログラミングⅡ用です。今回はcv_bridgeを使います。ROSでOpenCVを使いgazeboシミュレータのRGB-Dセンサから取得した画像から赤色の抽出とエッジ抽出を行います。この記事は、以下のROSチュートリアルと「ROSで始めるロボットプログラミング、小倉著」を参考にしています。Converting between ROS images and OpenCV images (C++)ソース:ROSのチュートリアルと「ROSで始めるロボットプ [続きを読む]
  • ROS演習6:シンプルなゴール(ActionLib)
  • この記事は私が担当している講義ロボットプログラミングⅡ用です。今回はActionLibを使った以下のROSチュートリアルを実行しましょう。SendingSimpleGoalsソース // 本プログラムは// http://wiki.ros.org/ja/navigation/Tutorials/SendingSimpleGoals// を改変しています。#include #include #include typedef actionlib::SimpleActionClient MoveBaseClient;struct MyPose { double x; double y; double yaw;};int main(int a [続きを読む]
  • ROS演習5:地図作製・自己位置推定(SLAM, AMCL)
  • この記事は私が担当している講義ロボットプログラミングⅡ用です。今回は地図作成(SLAM)と自己位置推定(AMCL)のパッケージを使いロボットにナビゲーションをさせましょう! 本記事を以下のチュートリアルを参考にしています。Make a map and navigate with it1. 地図生成(1) 端末を3つ開き以下のコマンドを実行する。gazeboシミュレータを起動$ roslaunch turtlebot_gazebo turtlebot_world.launch地図生成のgmappingを起 [続きを読む]
  • ROS演習6:シンプルなゴール(ActionLib)
  • この記事は私が担当している講義ロボットプログラミングⅡ用です。今回はActionLibを使った以下のROSチュートリアルを実行しましょう。SendingSimpleGoalsソース // 本プログラムは// http://wiki.ros.org/ja/navigation/Tutorials/SendingSimpleGoals// を改変しています。#include #include #include typedef actionlib::SimpleActionClient MoveBaseClient;struct MyPose { double x; double y; double yaw;};int main(int a [続きを読む]
  • ROS演習4:双方向通信しよう!(サービス)
  • この記事は私が担当している講義ロボットプログラミングⅡ用です。今回はROSのサービスを理解しましょう。次のROS Wikiを参考にしています。C++でシンプルなサービスとクライアントを書くシンプルなサービスとクライアントを実行してみるサービスはROSの通信方法の一つで、双方向通信に使います。ある仕事をお願いするクライアントとそれを処理して返すサーバーからなります。今回、作成するプログラムは速度指令値を送るクライア [続きを読む]
  • ROS演習3:シミュレータを動かそう
  • この記事は私が担当している講義ロボットプログラミングⅡ用です。シミュレータGAZEBOを使い、Turtlebotを動かします。次のROS Wikiを参考にしています。turtlebot/Tutorials1. Turtlebot用のパッケージインストールまず、Turtlebot用のパッケージをインストール。端末を開き、次のコマンドを実行。$ sudo apt-get update $ sudo apt-get install ros-indigo-turtlebot ros-indigo-turtlebot-apps ros-indigo-turtlebot-interact [続きを読む]
  • ROS演習2:はじめてのROSプログラミング
  • この記事は私が担当している講義ロボットプログラミングⅡ用です。ROSでHellow Worldと表示するプログラムを作り、ビルドして実行してみましょう。この記事は以下のROS Wikiの記事を参考にしています。ROSパッケージを作るROSのパッケージをビルドする―――――――?1. ワークスペース(作業場所)の作成これからROSでいろいろなプログラムを作っていきます。まずは、その専用ディレクトリ(フォルダ)を作りましょう。ROSではこ [続きを読む]
  • ROS演習1:亀を動かす
  • この記事は私が担当している講義ロボットプログラミングⅡ用です。ROSをインストールしたので、動作確認を兼ねて亀で遊んでみましょう。この記事は以下の記事を参考にしています。ROSトピックの理解―――――――――――――――――――――1. 亀を動かす(1) 新しい端末を開き、「roscore」と入力しEnterキーを押し、roscoreを起動する。ノード間で通信するために必要。ノードはROSの実行プログラム。(2) 新しい端末を開き、「 [続きを読む]
  • ロボットプログラミングⅡ-2016 環境設定
  • この記事は私が担当している講義ロボットプログラミングⅡ用です。ロボットプログラミングⅡでは、フレームワークとしてROSロボットシミュレータとしてGAZEBOを使用します。インストールは次の手順です。Panasonic Let’s Note CF-LX3 (Windows 8.1, Core i7, Memory 8GB)で試しています。では、以下のリンクに従って第2週の授業までに作業を進めてください。VirtualBox5.0 + Ubuntu14.04のインストール注:仮想マシンの登録と起 [続きを読む]
  • RoboCup2016世界大会報告会7月29日(金)17時〜
  • RoboCup2016世界大会報告会を以下の予定で実施します。今、ロボット業界が注目しているRoboCup、その中でも一番ホットなのが@Homeリーグです。学生が世界大会に参加して何を見て、感じ、得たものは何か。学生の皆さん、是非お越しください。日時:7月29日(金)17時~18時場所:KIT扇が丘キャンパス12号館4階イノベーションホール演者:4年永島一輝、3年榎本光洋、2年山川武聖http://www.kanazawa-it.ac.jp/kitnews/2016/201607 [続きを読む]
  • RoboCup2016世界大会8位でした!
  • 6月28日から7月4日までドイツのライプチヒ市で開催されたRoboCup2016世界大会に出場した金沢工業大学demura.netチームが@Homeリーグで23チーム中8位の成績を収めました。RoboCup世界大会は人工知能を搭載した自律ロボットによる競技会で、今年の大会には世界45ヶ国から3500名の参加者、1200台のロボットが参加した世界最大のロボット競技会の一つで、年々規模が大きくなりオリンピックの様相を呈してきました。 [続きを読む]
  • 物理エンジンODEで学ぶC言語 [STEP6:補講] ジョイントの生成と制御
  •  STEP6: 玉突きロボット ODEで学ぶC言語のStep6です.Step5で一応終了しましたが、要望の多かったジョイントの使い方と制御を説明します。補講となります。ジョイントは我々の周りでは、折畳み携帯のヒンジやドアの蝶番に相当します。小難しくいうと、2つのボディの位置や姿勢をある一定の関係に保つ拘束がジョイントとなのです。ODEではジョイントと拘束を同じ意味で使っています。ODEのジョイント(関節)は2つのボ [続きを読む]
  • 物理エンジンODEで学ぶC言語 [STEP5:まとめ]
  • ブロック崩し風ゲーム。未完成。続きを作ろう!今回でこの講座は終わりです。先週作り始めたブロック崩し風ゲームを完成させましょう。この手のゲームで必要になることは、ボールがブロックの当たったときにブロックの消す処理です。このサンプルプログラムではブロックを3個用意し、それぞれの当たりを判定する変数をblock1_hit, block2_hit, block3_hitとして0で初期化します。ボールとブロックが衝突したらその変数を1に設定 [続きを読む]
  • 物理エンジンODEで学ぶC言語 [STEP4:構造体]力とトルクの与え方
  • ブロック崩しを作ろう!物理エンジンで学ぶC言語のStep4です.今回は構造体と物体へ力やトルクを加える方法,さらにシミュレーションのリセット法などを学びます.構造体の概要については既にわかっているものとし,サンプルコードを示すことにより具体的な使い方を学びます.例として、Step4とStep5でスティーブン・ジョブスがAtari社時代に、アップルの共同設立者ウォズニアックと開発に携わったBreakout(ブロック崩し)風のゲ [続きを読む]