活動報告No.139 夏休まない
カテゴリ: 未分類
土日はオープンキャンパス展示、月曜はインターンシップへ参加していた三年タカハシです。

8/8(土)~8/9(日)はMaker Faire Tokyo 2017がありましたがオーキャンとかぶってしまい二年連続行けませんでした(去年はブラジルへの準備で)。ヒュー研も二足にこだわらずこういったモノ作り系のイベントに出てもいいのではないかと思います。

さてブログのほうですが最近のブログを確認したところしっかりと後輩が更新してくれていました。まぁネタがややソフトよりなので私やODA部長がハードネタを入れるとバランスがいいのかな(笑)

とは言っても自分も半年間、機体は改修してないので夏休み中ないし今後に改修すべき点を今回は列挙していきたいと思います。

Image_b3c5316.jpg 
※いい加減見飽きたと思うのでフロント部分を開けてみました。受信機はピンの向きを改造してます。

まずこの機体のコンセプトですが「操作性特化」です。バトルのことは一切考えてません。このようなコンセプトを設定したのは第29回のROBO-ONEでの台湾勢のロボットの動作の安定性に感銘を受けたからです。ヒュー研は機体製作のノウハウこそ蓄積してきましたが歩行に関するノウハウは浅くきっちりとした歩行ができる機体ができてきたのもここ最近かと思います。そこで操作性すなわち動作の安定性と多様性に取り組むことにしました。

ここからはハードウェアとソフトウェアに分けて工夫した点や今後回収すべき点を書いていきます。

長々適当に書いたので要約を読むことをお勧めします

ハードウェア
1.脚の剛性
大前提として脚の遊びは0を目指すべきだと思います。前歩行ができない機体の多くは股関節等のロールの遊びが大きく重心移動がままならないパターンが多いです。自分の機体はFutabaサーボを使った結果遊びをほぼ0にすることが出来ました。これができた理由は機体重量が軽くサーボに負荷がかからなかったことと、そもそも負荷のかかるモーションを付けなかったことが考えられます。ただ股関節ロールはほんのわずかですが遊びが出てきたのでVstoneサーボに変えようかと思っています。K社のサーボは遊びが大きい(扱い方が悪いだけか?)ので使いません。というか教示機能のおかげでVstoneマイコンでは脱力できないので使えないです(面倒な設定をすればいけないこともないけど面倒)

要約→遊びの原因となる負荷のかかるモーションや設計をやめろ

2.軸配置
機体としては珍しい腕yawと脚yaw軸を追加しました。腕yaw軸は単純にモーションを多様化するためです。脚yaw軸は歩行での左右のブレを補正するために付けました。人間ですら目をつぶったらまっすぐ歩けないのですからましてやそれをロボットに求めるのはナンセンスです。そのためアナログスティックで歩行動作中に補正してあげるのが妥当だと思います。もしくは磁気センサで初期位置とのブレを取ってやるのも一つの手だと思います。あと脚yaw軸を付けることでその場での旋回が簡易的になり結果として負荷を減らすことが出来ました。ヒュー研流旋回(足の開きを利用)は負荷は掛かり過ぎですからね。私の機体でやったら確実にギアが砕けます。逆に腰yaw軸は無くしてもいいかなと思ってます。実際のところ起き上がりぐらいしか使ってないし、腰yaw軸がなくなることで胴体が短くできるのでこの点も問題ないかと思います。

要約→脚yaw軸は必須。

3.整備性
ここまでわりとポジティブに書いてきましたが失敗したのが整備性です。VSRCなので配線がごっちゃになるのがわかっていましたが、整備的に一か所に固めるのが良かれとおもって開閉部に固めてしまいバッテリーを入れるたびにモニュっと押し込まなくてはならなくなってしまいました。これは配線の損傷につながるため改善しなくてはなりません。ヒュー研ではバッテリーをコネクタで直接試合毎に接続していますがこれは配線を一回一回引っ張り出す必要があり面倒だしショートなどのトラブルに繋がりかねないのでできれば避けたいものです。個人的にはバッテリーをパソコンのようにモジュール化するのがいいかなと思っています。あと電源スイッチの位置が微妙だしオンオフがわかりずらかったのがよろしくなかったです。この辺はODA君の新機体が非常によい設計だったのでいずれ紹介してほしいと思います。

要約→配線は動作中以外にも考慮すべし

ソフトウェア
1.マイコン
正直言って圧倒的にVstoneの方が使いやすかった。特にUIが見やすい。K社のマイコンは確かに全く知識のない人でもできるけど複雑なことをしようとするとごっちゃになってモーションが組みにくい。その点Vstoneはフロートチャートにプログラム的なアルゴリズムが入っているのでわかりやすい。センサー類の拡張性も高いのも良い点だ。部活の予算が許せば三軸加速度、三軸ジャイロ、三軸磁気が一枚に乗った小型ボードを乗せたいと思っている。

要約→VSRC-003は最高

2.モーション
前後歩行に関して言うと足裏の動きが三角形よりは五角形にした方がいい気がする。そのほうが遊脚が設置する際に慣性による反動を減らせると思う。あと足を動かす際のyaw軸回りのモーメントを腕で相殺するのは有効だった。歩行という動作は周期的に変化する為場合によっては共振が起こる。例えば数歩歩けても数十歩で転倒するというのは脚の剛性のなさにより振動が減衰しないためと考えられる。この辺はジャイロを使えばより動的にできると思うがどの程度の角度変化で重心がどれだけ動くかなどの数式化をすべきだと思っている。

要約→動的安定性を追求すべき


といったところだろうか長々と書いてしまった。これらのことを改善しようとすると全体的な再設計が必要となるので夏休み中にできるのか.....?

その前にFusion360講座の資料作成とロボ研の活動もしなきゃいけないし。

ps.週休二日制を導入したのは松下電器(現Panasonic)だがその意図が「一日休養、一日教養」というのは知っているだろうか。君は一体何のために休みをつかう?
スポンサーサイト
編集 / 2017.08.09 / コメント: 0 / トラックバック: 0 / PageTop↑
活動報告No.138 進捗状況 + α ~ ROBO-ONE auto
カテゴリ: 未分類

どうもおはこんばんにちは、無事に夏休みに入れた2年のマエダです。


学期末考査は今までで一番きつい科目群でしたが、単位はありそうです。




進捗状況の前にいうことがあるのですが、それは、


OBの先輩方がサポート募金をしてくださったようです。

感謝っ・・・

圧倒的 感謝っ・・・!!!



1年生が機体つくるのに予算請求しておけばよかったモノがちょいちょいあるので、そこに行くのかな?



さてさて、今回は私が夏休みに入ったというわけで、夏休み明けに控える2足歩行ロボット大会「ROBO-ONE」に向け、今の進捗状況と、この夏にやることを整理して行こうかなと思います。


去年の夏休みでは、1年性の私は無計画でロボ以外のいろんなことをやっていたので、時間を無駄に浪費した感がありました。


そんな堕落した夏を送るなら、大学に来ている意味はないので、自分で夏休みの課題を課そうと思います。


ヒュー研でも夏休みの一番最初の会議で、各々が今季やることを明確にした方が今後の活動のためになるんじゃないかなと思いますが、果たして、全然やらなかったわー はっはっは! となる人は何十人いようか。。。



1、目指すもの



大きな目標としては、今度の9月中旬にある「ROBO-ONE auto」に出場することです。autoの方に興味があるので、まあそっち目指します。


本当は自分で機体を製作してそいつに処理エンジン載せようと思っていたのですが、部内にあるサーボモータの個数が足りないため、既存の機体を拝借して、それに無理やり処理エンジンを載せます。


ロボットの認識には位置センサなどは使わず、カメラで認識しようと思います。


「ROBO-ONE における操作」

人間が状況判断 → 無線コントローラで動作コマンド送信 → 機体が動く


というのが、


「ROBO-ONE auto における操作」

カメラの映像から、ラズパイが状況判断 → ラズパイがRCB4HVにコントーラコマンドをシリアルUSBアダプタ経由で、コントローラコマンドを送信 → 機体が動く


という手順になります。



2、前期の間にやったこと



前期は初めての実験の授業があったことで自分のやりたいことがなかなか進まない数ヶ月でしたが、夏休みにやることが明確・細分化できるレベルまでは達しました。


其の一(画像処理)

とりあえずLinuxでPython(←プログラミング言語)を使って画像処理をする方法を確立しました。処理部はラズパイ(もしくはラズパイと同サイズの高スペックシングルボード)に絞り、USB端子からカメラモジュールにアクセスし、映像をリアルタイムに入手。リアルタイムの映像に対して処理をかけることができました。

ほんで、色検出や円検出、ステレオカメラによる距離検出、などなどのコードを記したものをまとめました。


其の二(機械学習の勉強)

機械学習のお勉強をしていました。ロボットをカメラで認識するには、カスケード分類器か機械学習による学習モデルを使うかする必要があります。

カスケードでもまあいいのですが、個人的に機械学習の方が興味あったので、その学習モデルを使います。さらにいうと、畳み込みニューラルネットワーク(CNN)というディープラーニングの一種を使って学習モデルを生成したいです。

現状は単純な機械学習の勉強と、そのコーディングの練習を大体終わらせた感じです。機械学習ライブラリは先日のブログで出した、Google参加のDeepMind社が提供しているTensorFlowを使っています。

CNNは単純な機械学習と違って次元下げるのに特徴量を失わないように全結合層以外の様々な層と、それらの組み合わせがあります。ここら辺がまた複雑なので、理論よりとりあえずTnsorFlowのCNNチュートリアルをやって、動作を体感してから理論を学んでいく方針でやっていこうと思います。


其の三(入力データの収集)

機械学習は、学習に必要なデータ(入力データ)が集まって初めて成り立ちます。そもそもデータがなければどうにもならない。しかも、私の考えている方法だと、その入力データは全て正方形で同サイズ(ピクセル)である必要があります。

その肝心な入力データは、ロボットバトルの動画から一定間隔で静止画を切り出して、それを正方形にトリミングすることで得ようと考えました。

実は、ヒュー研の先輩方がその昔、各大会のロボットバトルの様子を動画として記録し、それらをヒュー共有のPCに保存されていたようです。そして、その記録伝統はちゃんと今でも受け継がれ、今のヒュー研は、大量の動画データが蓄積されています。何百GBあるんだろう。。


とりあえず、この伝統を始めた先輩にはお礼を申し上げたいです。


そのおかげで機械学習に必要なデータは潤沢にあります。このデータという財産は、多分私が一番ありがたく感じていると思います。

圧倒的感謝。


個人的に使っていた240 GBのポータブルSSDにそれらの動画データのごく一部を複製し、家に持ち帰って自分のPCに入れていました。



3、夏休みの間にやること



其の一(入力データの加工ソフト作成)

動画データから静止画を抽出、ほんでそれを人間が一旦トリミングと其の画像が何であるかということを示すラベル付けを行います。さらにトリミングした画像へアクセスする絶対(または相対)パスと、それに対応するラベルをスペースを一つ挟んでテキスト形式にまとめます。一つのデータに対して一行書き込むことで、学習の時にちゃんと機械が答え合わせしてくれ(ると思い)ます。


其の二(畳み込む)

前述でちょろっと述べたので、簡単にいうと、TensorFlow使ってコーディングして学習させて分類器をつくります。


其の三(ラズパイで使う)

学習モデルができても、ラズパイで使えなくては実装不可能です。問題はその学習モデルの扱い方です。カスケード分類器はXML形式で読み込めば、対象物のXY座標と大きさ(横幅と縦幅)を配列で返してくれますが、TensorFlowの学習モデルはどう扱えばいいのかわからないです。

正直ここが一番の難関になりそうな気がします。小耳に挟んだ程度だと、TensorFlow形式からプロトコルバッファ形式に変換して、それを読み込めばいけるとか、いけないとか。。。

計算資源が制限されているスマートフォンなどでもリアルタイム認識ができる方法があるようなのですが、それどうやってやるのかわからないです。


其の四(チューニング)

夏休み明けは地獄の実験が始まり、本番までの日数は残りわずかなので、上記の其の一~三までは8月中に終わらせたいところです。

チューニングでは、認識結果から攻撃までの行動を決定し、それをRCB4HVにコントローラのボタンコマンドを送信するのに最適なパラメータを決めます。ステージから落ちないようにするのに単眼ビジュアルオドメトリという方法を採用したかったのですが、それをしているともう本格的に時間がなくなりそうなので、そこだけPSDセンサを使おうかなと思います。



4、データの公開範囲に関して



かなり重要な話ですが、もしこのプロジェクトが成功を収めたら、実際に使用した学習用オリジナルデータ、学習モデル、学習のレイヤー構造、行動決定パラメータなどの情報を公開するか否かに関してです。


先に言うと、現段階の判断では、公開しないと思います。


と言うのも、上記のデータを公開してしまうことは、またハードの戦いになり、すなわちそれは札束の殴り合いを意味すると考えています。それならもう、autoである必要ないよねっていう。なので、開発環境のセットアップや学習モデルの作り方をブログにして公開することは可能性としてありますが、実装データは一切公開しない方針で行こうと思います。



5、さいごに



今週はオープンキャンパスがあることもあり、機体持ちの人は機体の調整に取り掛かると思われるので、思われるので、、最近できた(改良された)機体のご紹介と製作者へのインタビューをブログにしようかな。。調整に取り掛かると思われるので。

ほんじゃまったの〜(o・ω・)ノ




編集 / 2017.07.23 / コメント: 0 / トラックバック: 0 / PageTop↑
活動報告No.137 Windows10 にTensorflow(GPU版)を入れるまで
カテゴリ: 未分類
どうもおはこんばんにちは、ロボットユーザの大半を置き去りにしていくのを省みないでシステム系のブログばかり書いている2年のマエダです。

某氏が「最近ヒュー研らしいロボットわちゃわちゃのブログ見ないなあ」とつぶやかれておられたようなのですが、なに、気にすることはない。システム系のことのほうがネタあるんだもん。

tensorflow.jpg

さてさてタイトルだけで本記事が何しようかわかっている人はほとんどおらんと見た。というわけでザっと概要説明します。

Tensorflow(テンソルフロー)は、簡単に言うとAIを効率的につくるためのソフトウェアのことです。AIと聞くと何を思い出しますかね、最近ではGoogleのつくった AlphaGo が世界トップクラスの囲碁棋士を軒並み打破していますね。あれは全ての手を片っ端から走査して最適解を求めているのではなく、機械が今まで経験して得た技能により最適らしい解を打っているのです。

人間で頭の要領がいい人とそうでない人がいて、それはもはや教育でどうこうなるようなものではあまりないですが、機械は教育次第で要領がよくなったり、逆にバカにだってなれちゃいます。Tensorflowはそんな機械を賢くする道具なのです。

本記事ではWindows10とかいう環境にTensorflowを使えるところまでを紹介します。

ネット上で「Tensorflow」て調べると「Tensorflowを使ってみた」みたいな記事が多く、導入まではめっちゃ簡素な記事が多いので、本記事が導入の参考になればと思います。順番があって結構面倒。

そんじゃやっていきましょう。



必要な環境

OS:Windows10 (←S以外で)
CPU:それなりのモノ
GPU:NVIDIA製で、Compute Capability (*1) が3.0以上のモノ
メモリ:8 GBは欲しい

(*1)
Compute Capabilityに関しては以下のURLよりご覧になれます。こいつが具体的に何なのかはプログラムというかシステム系の勉強している人以外に話しても簡潔に収まらないのでスルー。

Compute Capabilityのチェック:
https://developer.nvidia.com/cuda-gpus


当方の環境

各操作の例として画像を添付するので、参照までに。

OS:Windows 10 Education
CPU:それなりのモノ
GPU:Quadoro M4000 (Compute Capability 5.2)
メモリ:多め



以下は全体の流れです。順番通りにやらないとファイルが見つからなかったりTensorflowのインストールに失敗したりします。

1、GPUのドライバインストール
2、CUDA (*2) のインストール
3、cuDNN (*3) のインストール
4、Anaconda (*4) のインストール
5、Tensorflowのインストール
6、完成

(*2)
CUDAはGPUでいろいろな演算を並列で処理してもらうための基礎的なソフトです。これによって計算能力をさらに上げることができます。

(*3)
cuDNNはNVIDIAが提供しているDeep Learning (深層学習) 用のライブラリです。本記事で扱うTensorflowやその同類のCaffeやMicrosoft Cognitive Toolkitなどの演算速度を向上してくれます。

(*4)
ここにきてやっとですが、プログラミング言語はPython 3.5を扱います。AnacondaはPython周りの環境をGUIで整えられるソフトです。ぶっちゃけコマンド一発でできるところをコイツだとあーだこーだしなくちゃならないので、コマンドでやりたい人はコマンドでやればいいと思います。私はGUIでやるところとCUIでやるところで分けていますが。



詳細な手順

1、GPUのドライバインストール

以下のURLよりNVIDIAから自分のGPUに合ったドライバをダウンロードしましょう。ダウンロードタイプはODEの選択でOK。ちなみにもうすでに入っている人はこの手順を飛ばしてもらっても構いません。

GPUのドライバ:
http://www.nvidia.co.jp/Download/index.aspx?lang=jp

私の環境では以下のようにして「検索」ボタンを押し、「ダウンロード」しました。

cap01_convert_20170704172901.png

ダウンロードが終わったらインストールして一度PCを再起動です。



2、CUDAのインストール

以下のURLよりNVIDIAからBase Installerをダウンロードしましょう。ダウンロードサイズが1.3 GBと大きめなので、回線が細い環境だと厳しいです。

CUDAのダウンロード:
https://developer.nvidia.com/cuda-downloads

2017/7/2現在ではclick cuda_8.0.61_win10.exeが最新でした。ちゃんと8.0系のCUDAですね。

私の環境では以下のようにして「Download (1.3 GB)」を押しました。

cap02_convert_20170704173112.png

ダウンロードが終わったらインストールして一度PCを再起動です。



3、cuDNNのインストール

以下のURLよりNVIDIAからダウンロードしたい所なのですが、

cuDNNのインストール:
https://developer.nvidia.com/cudnn

cuDNNをダウンロードするには、NVIDIAに開発者として登録せねばなりません。まずはNVIDIA DEVELOPERとヘッダに書いてあるページ(↑のリンクからでもおk)に行って、ヘッダの1番右に「Log in」と書いてあるのでそこ押して登録します。NVIDIA Developerに登録ってなんか音だけ聞くとカッコよいですね//

んで、NVIDIA Developerに登録したら
I Agree To the Terms of the cuDNN Software License Agreement
のチェックボックにチェックを入れて、よくやくcuDNNのダウンロードリストがでてきます。

とここで注意点なのですが、以下の画像のように、

cap03_convert_20170704173122.png

「Download cuDNN v5.1[Jan 20, 2017], for CUDA 8.0」の「cuDNN v5.1 Library for Windows 10」をダウンロードしてください。ここでCUDAのバージョンを前項と合わせてください。

なんか v6.0 ではAnacondaの仮想環境上では対応していないとか何とかでTensorflowが入らなかった気がします。setuptoolsがダメなのかそこら辺は確認取っていないです。サーセン

ダウンロードしたものはZIPファイルなので、そのZIPファイルを解凍します。
展開したやつの中には cuda というフォルダが一つ入っていて、さらにその中に bin, include, lib という三つのフォルダがあると思います。それぞれのファルダの中に入っているファイルを、

ローカルディスク(C:) > Program Files > NVIDIA GPU Computing Toolkit > CUDA > v8.0

の中の該当するフォルダに入れてください。入れ先のフォルダは前項で紹介したCUDAを入れないと出現しないので、必ずCUDAを入れてからこのcuDNNを入れるようにして下さい。


4、Anacondaのインストール

以下のURLよりAnacondaをダウンロードします。

Anacondaのダウンロード:
https://www.continuum.io/downloads

現在の最新版はAnaconda 4.4.0でPython 3.6まで使えますが、Windows版のみTensorflowが対応状態によりPython 3.5でのコーディングしなければなりません。MacとLinuxは最新版の3.6で使えるのにねぇ…。
Windowsは対応機器が安いために世間的に一般的なOSになったかもしれないですが、macOSは根底にあるのがUNIX系なOSなので、UNIXライクなLinuxと同時期に最新版に触れられるのはアドですわ。
お金が無尽蔵にあったらMacほしいなぁ。。あ、ちなみに私はMacBook AirとMac miniを所持しているので立派な林檎信者ですかね(違う)。



5、Tensorflowのインストール

さてようやくここまで来ました。先ほどインストールしたAnacondaにTensorflowをブチ込んでやるぜ^〜↑。

とりあえずAnacondaを起動!。Windows 10だと左下のWindowsマークを左クリックして、出てきた黒ウィンドウの左側のアプリ一覧からAnacondaのフォルダがあるはずです。

そのAnacondaフォルダを開いて、「Anaconda Navigator」というものを起動しましょう。他のはイジらなくていいです、rootで起動しちゃうので。

cap04_convert_20170704173134.png

初回起動時は結構時間かかりますが、コーヒーでも淹れて待ちましょう。

起動すると以下の画面が出てきます。

cap05_convert_20170704173143.png

まず左サイドの「Environments」をクリック!
すると以下のような画面が出てきます。

cap06_convert_20170704173153.png

ここでやる作業は、仮想環境というものを作ったり消したりと、それを整理するところです。

仮想環境ってなんぞ?てなりますよね。

さきほど、本記事ではプログラミング言語のPythonのバージョンは「3.5」でやっていくと言いました。しかし、今後もしかしたらPython 2.7であの作業やりたいなーっていう場面が出てきたとき、いちいちその度に合わんバージョンを削除しては別のバージョンを入れてっていう作業をやっていると非常に非効率なのです。

そこで役立つのが仮想環境。その名の通りですが、任意のフォルダごとに、プログラミング言語やライブラリのバージョンを設定できるのです。こいつは便利!

コマンドでやれば一発なのですが、今回はなるべくコマンドなしでやっていきたいと思います。最後にちょろっと出てくるくらいで。

んで、その仮想環境をつくるために[+]マークのある「Create」ボタンをクリックして、「Environment neme」に仮想環境の名前を入れます(なんでもいいです)。ここでは、「Tensorflow121gpuFC2Blog」という名前でやっていきたいと思います。ネーミングは以下を参照するとよいと思います。

Tensorflow:仮想環境内で使う機械学習ライブラリの名前。
121:今回はTensorflow 1.2.1 でやっていくので、そのバージョンをピリオド無しで。
gpu:TensorflowにはGPU版とCPU版があるので、それを明示的に記述。

ほんで「Python version」は 3.5 を選択!!

私の場合は以下のようになりました。

cap07.png

出来たら右下の「Create」を押しましょう。ここも結構時間かかります。

完了するとrootの下に先ほどの仮想環境が表示されるので、そいつをクリックして選択状態にしてください。すると右側に三角マークがあるので、そこをクリックして、「Open Terminal」を開きましょう。すると黒背景のテンション上がる画面が出てくると思います。

s_cap08.png

さて、この黒い画面にコマンドを打ち込みたいという衝動に駆られないわけもなく、今すぐコマンド打ちたいですよね。

じゃあとりあえず

> pip install --upgrade tensorflow-gpu

と打ち込んで、GPU版のTensorflowをインストールしましょう。(> ←これはTerminalの入力待ち状態のサインです)
一連のインストールが終わったら、最後に

FileNotFoundError: [WinError 2] 指定されたファイルが見つかりません。

などと出てくるかと思います。これは、Tensorflowが想定しているPythonのsetuptoolsのライブラリとpipで入れられたバージョンが異なるために出てきます。ので、

> pip install --upgrade setuptools

と叩いてインストールしましょう。

じゃあこれでTensorflowがPythonで使えるようになったのか確かめてみましょう。

> python

で、数行文字が出てくるので、その中で「Python 3.5.3」などと表示されていれば正常です。
こうするとPythonを実行できる環境に入ります。これを「Pythonの対話的実行環境」といいます。このときはさっきから使っている「>」ではなく、「>>>」で表すとします。

>>> import tensorflow as tf
>>>

このように入力待ちの状態になっていれば、Tensorflowのインストールに成功してます。
ちなみに対話的実行環境を抜けるためには

>>> exit()
>

で抜けられます。
Python 3系の文法知識がなければこの先に進みづらいですし、これ以上記事を伸ばすのも難なので今回はこれで終わりたいと思います。

では、よいTensorflow on Python ライフを!


〜 余談 〜
この余談は時間を空けて書いてあるので、本編と多少被っている事かもしれませんが、今回Windows10に機械学習の環境を整えることに対して意義を申し立てる人がいるかもしれません。
私もWindowsでこういう特殊なことするのは最新バージョンをいじれなかったりそもそもライブラリが対応してくれなかったりで、オススメはしないです。んで、Linuxで開発環境を整えようにしたのですが、、、色々と苦労しましてね。。
Ubuntu16.04LTSとCentOS7ででやろうと思ったのですが、どちらもグラボのドライバインストールでつまづいてできませんでした。
CentOS7には標準でNouveauというグラフィックドライバが入っていて、それ無効化してX Window止めてNVIDIAのドライバをインストールしようとしたら適応されませんでした。なんでやろなぁ。。
Ubuntuに関してはUnity(だったっけかな)という標準のグラフィックドライバが干渉しているとかいないとかで、NVIDIAドライバ入れたらログイン画面が無限ループされました。18.04LTSからはUnityではなくてGNOMEが復活するようなので、そちらが発表されたらまた試してみようと思います。




編集 / 2017.07.03 / コメント: 0 / トラックバック: 0 / PageTop↑
活動報告 No.136 ニソコンに行ってきたぞい!
カテゴリ: 未分類
今週で前期の実験が最後な2年のマエダです。
実験による新規レポートの介入が無くなることで、前期の間に進捗が滞っていた深層学習(CNN)の実装方法開拓にようやく手がつけられそうです。

さて、ちょいと報告が遅くなりましたが先日の6月10日(土)に、東京理科大さん主催のニソコンに行ってまいりました。

今年のニソコンは川崎にある東芝未来科学館という所で開催されました。(東芝ァ…)

nisokonn201701.jpg 

我々ヒュー研は全部で6機体の出場でした(エントリー7機体)。各機体の結果は以下の通りです。バトルは詳細に順位が出たところまでで。
 
 機体名   障害物競走   バトル 
 メビウスK   1分29秒   4位 
 FHR   1分53秒   ーーー 
 墨   30秒   ーーー 
 サツ・マイモ  1分24秒   ーーー 
 テオ   2分54秒   ーーー 
 釣り式   1分51秒   ーーー 

障害物競走では墨の30秒で部内最速、ニソコンでは2位タイの結果でした。バトルは4位のメビウスKが部内トップでした。メビウスKがとてもエネルギッシュでした。

ちなみに私は機体を持っていないので、会場に行って控え室とを行き来していました。遠かったですねー、今年も去年の未来科学館みたいな感じかと思いきや今年はなかなかトリッキーな会場になったものです。まあ会場に行く途中や休憩タイムの際は周りのイベントを見て回って楽しめたので個人的には(足の疲労感を除いて)とても良かったです。
現場にあまりいなかった自分がこうしてブログにて感想を書くのはちょいと厳しいですが、結果だけ見るとニソコン3~4日前に完成したばかりのテオはともかく、全体的に歩行モーションが良いんじゃないかと思いました。小型機体にとってはコースの段差に苦労した者が多いようです。一枚板ならFHRや釣り式はもっと良いタイムが出せたんじゃないかな。10 mm以上足あげないとって言われるかもだけどROBO-ONE本部は多分そこらへん黙認しているし...
バトルについては今年度から部内戦が定期的に行われているので、それを通して徐々に各オペレータの習熟度が上がって行くのではないかと思うので、9月にあるROBO-ONEに期待です。

nisokonn201702.jpg 

私事ではありますが、先日企画書を発表して、ついに自律型機体の製作が本格化することにな...るはずだったのですが、、、発表まで今年の予算の分でサーボを買えばギリ足りるかなと思って発表したのですが、発表当日に1年生が4000番台をガッツリ使う企画書を作っているとSAに言われ、その時点で自分の作りたい自律式機体製作の夢は潰えました。。。この前サーボの配置図見たときはフル2000番台だったのだが...まあしょうがない。
というわけで私は既存の機体にラズパイとカメラを載せて頑張ってあの4HVも使いつつ自律制御できる方法を模索しております。深層学習による機体の分類器はあと2~3週間もあれば作り方だけ確立できそうなので、ラズパイと4HV間の通信が未だにネックです。

だんだん自分の話に入っていきそうなので、そこらへんはまたアタマの中が整理できてから別の機会にブログにするとしましょう。
ほんじゃ待ったの〜( ^ω^)二⊃ブーン

編集 / 2017.06.25 / コメント: 0 / トラックバック: 0 / PageTop↑
活動報告No.135 糸鋸のベルトを換えるのである。
カテゴリ: 未分類
どうもどうもこんにちは
最近新しいことを始めたいと思いましてMMDとやらに手を出しているオダです。
ポーズを1つ1つ作ってつなげることでモーションを作るあたりがロボットのモーション付けと同じ要領でできて楽しいですよ。アカネチャンカワイイヤッター

さて、記事タイトルの通り糸鋸のベルトを換えてみました。
ホントは「役職:監督」の方がやるらしいんですけど私が設計書を書くことに飽きたのと監督がハンターライフに勤しんでいらっしゃるようなので交換しました。しょうがないね

早速手順を紹介する前に今回交換した糸鋸はこちら↓
糸鋸
メーカ:株式会社ユタカ
型式:MC-800

で、古くなったベルト君がこちら↓
古ベルト君
なんかもののはずみでブチィッ!!って切れそうなんですよね...
まずこのベルト君を外します

1.プーリについてるイモネジを六角レンチで外す
6角レンチ、プーリにin
このとき注意したいのはイモネジは1つのプーリにつき2本刺さっているという点。左の白いプーリはベルトで隠れていますが合計4本、しっかり外しましょう。
こちらは外したイモネジ↓左の銀色2つが白のプーリで黒い方は銀色のプーリに刺さってました。
イモネジ君×4
色は違いますが規格は一緒です(多分)

2.プーリを外す
これでプーリを外せるようになったので引っこ抜きます。
普通に軸方向に引っ張ればあっさり抜けるので落っことさないようにしましょう。ちなみに、作業中の事故の原因は人間のちょっとした油断なんかが大半です。
プーリ、外す
3.新しいベルトを着ける
上のプーリを半分くらい差し込んでベルトをひっかけます。
その後、下のプーリにベルトをかけて軸にはめこみ、上下のプーリをちょっとずつ軸に差し込んでいきます。ポイントはどちらかのプーリを一気に差し込むのではなくバランスよく差し込むことと、後述する軸の切り欠きの向きに注意することです。
はめこむ 切り欠きがこちらになります
4.イモネジで締める
さて、切り欠きについてこのプーリは軸の切り欠き部にイモネジを差込み、押し付けることで軸の回転を伝達しています。(下イメージ図参照)
イメージ
そんなわけで軸の向きとプーリの向きが正しくはまっていることが重要です。
今回行った確認方法は...
上の白いプーリ→六角レンチを挿して切り欠きと並行か確認
上プーリ軸確認
下の銀色のプーリ→イモネジの刺さっていた跡が見えるか確認
下プーリ軸確認
で、確認できたら六角レンチでしっかりと締めましょう。なんで確認できるのかについては割愛
5.空回しして動作確認
最後にきちんと動力を伝達しているか確認のため空回しします。
ここで異音や異常振動があれば原因を確認し対処します。今回は何もなかったからヨカッター
ちなみに新しいベルト君はこんなにきれいです↓
新ベルト君
古い方は興味本位で逆向きに握ってみたらミチィッ...!って音がしたのでそっとしておきます
裂けそう
以上でベルトの交換は終わりです。お疲れ様でした。画像多いせいで記事が長いなぁ
そういえばこのブログ書こ~と思って編集画面開いたらなんか仕様が変わってるんですね。
前は、
 記入欄
ーーーーーー
 プレビュー
みたいなレイアウトだった気がするのに今や直接記事をいじくる感じでやり易いような気がします。(慣れれば)
あとは1年生の企画書がそろそろ完成する予定とのことなので楽しみですね。今年はバトル向けの機体ではなくパフォーマンス主体のマスコットロボがメインらしいので企画内容も楽しいものになるでしょう。

じゃあ次回をお楽しみに(´_ゝ`)


編集 / 2017.06.23 / コメント: 0 / トラックバック: 0 / PageTop↑
プロフィール

ヒュー研の中の人

Author:ヒュー研の人
このブログは東京電機大学理工学部ヒューマノイド研究部の公式ブログです。2012年から部に昇格しました!
その日の活動や大会の記録をできるだけ更新していきたいです!!

☆だいたい金曜日前後に更新します☆

FC2カウンター
カレンダー
07 | 2017/08 | 09
- - 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 31 - -
リンク
ブロとも申請フォーム
携帯でみるには↓
QR