Home Contact Sitemap

洛星ロボット研究部 開発日誌

洛星中学高等学校のロボット研究部・同好会のブログです。

    アーカイブ
    ブログロール
    • happybusy
    Amazonサーチ

ブラシレスDCモータードライバ

Filed under: HARP タグ: , , , , , ,

どうも。66thのSoulaSです。今回は、ブラシレスDCモータ用のモータードライバを設計しました。設計に至る経緯として、ホールセンサが使用可能なドライバはモジュールとして、安価には販売されていなかった、というものがあります。この基板では、TI社のDRV10970を使用しています。以下のリンクに基板データおいてます。
https://github.com/rakuseirobot/BLDC_MD_DRV10970

By Soula . 2020-07-19 . 20:59
コメントお待ちしております!

ROS2 FoxyでRPLIDAR A1M8を試してみた

Filed under: 未分類

どうも。66thのSoulaです。今日はros2 foxyで、RViz2を用いてRPLIDARのLaserScanを可視化してみました。

まず、RPLIDARのデータをLaserScanタイプのトピックに変換します。変換には、次のリポジトリを使用しました。https://github.com/youtalk/rplidar_ros/

このリポジトリの、Eloquentをチェックアウトし、colconでビルドの後、実行します。

次に、RViz2を起動し、Add->By topicからLaserScanを選択、追加します。トピック名は、デフォルトだと/scanになっています。

このままだと、エラーが出てしまい、Laserを可視化できませんので、Fixed Frameにlaser_frameを設定します。すると、以下のように可視化することができました!

By Soula . 2020-07-05 . 23:51
コメントお待ちしております!

Boost AsioをUbuntu 20.04で使用する際にリンカエラーではまった

Filed under: 未分類

どうも。66thのSoulaです。

今回は、g++でBoost Asioを使用する際にリンカエラーではまったので解決法と経緯を書いておきます。

解決法 g++の引数に -lboost_pthreadを付加する。

経緯 Boost Asioを用いてシリアル通信を行おうとしたところ、下記のようなリンカエラーが発生しました。

usr/bin/ld: /tmp/cc0BvY7L.o: in function boost::asio::detail::posix_event::posix_event()': main.cpp:(.text._ZN5boost4asio6detail11posix_eventC2Ev[_ZN5boost4asio6detail11posix_eventC5Ev]+0x51): undefined reference topthread_condattr_setclock’
/usr/bin/ld: /tmp/cc0BvY7L.o: in function boost::asio::detail::posix_thread::~posix_thread()': main.cpp:(.text._ZN5boost4asio6detail12posix_threadD2Ev[_ZN5boost4asio6detail12posix_threadD5Ev]+0x2a): undefined reference topthread_detach’
/usr/bin/ld: /tmp/cc0BvY7L.o: in function boost::asio::detail::posix_thread::join()': main.cpp:(.text._ZN5boost4asio6detail12posix_thread4joinEv[_ZN5boost4asio6detail12posix_thread4joinEv]+0x2f): undefined reference topthread_join’
/usr/bin/ld: /tmp/cc0BvY7L.o: in function boost::asio::detail::posix_thread::start_thread(boost::asio::detail::posix_thread::func_base*)': main.cpp:(.text._ZN5boost4asio6detail12posix_thread12start_threadEPNS2_9func_baseE[_ZN5boost4asio6detail12posix_thread12start_threadEPNS2_9func_baseE]+0x3e): undefined reference topthread_create’
/usr/bin/ld: /tmp/cc0BvY7L.o: in function boost::asio::detail::posix_signal_blocker::posix_signal_blocker()': main.cpp:(.text._ZN5boost4asio6detail20posix_signal_blockerC2Ev[_ZN5boost4asio6detail20posix_signal_blockerC5Ev]+0x68): undefined reference topthread_sigmask’
/usr/bin/ld: /tmp/cc0BvY7L.o: in function boost::asio::detail::posix_signal_blocker::~posix_signal_blocker()': main.cpp:(.text._ZN5boost4asio6detail20posix_signal_blockerD2Ev[_ZN5boost4asio6detail20posix_signal_blockerD5Ev]+0x31): undefined reference topthread_sigmask’
collect2: error: ld returned 1 exit status

By Soula . 2020-06-21 . 13:16
コメントお待ちしております!

Android Studio 3.5の紹介

Filed under: Android,AndroidStudio タグ: ,

どうも、65th会計のTomoです。

Android Studioのアプデが降ってきたのでざっくりと紹介します

Apply Changes(変更の適用)

Apply Changes はアプリを再起動させることなくコードやリソースの変更をできることを可能にします。—そして場合によっては今のアクティビティを再起動させることなくできます。Apply Changesはインスタントランに置き換わるクラスをその場で再定義するアプローチで、またランタイム計装はAndroid 8.0 (APIレベル 26)以上でサポートされています。

詳しくはこちらで

https://developer.android.com/studio/preview/features/?utm_medium=studio-assistant&utm_source=android-studio&hl=en

これで今のクラブ用のアプリ開発が楽になったらうれしい

By Tomo . 2019-02-24 . 20:14
コメントお待ちしております!

全自動全方向移動台車Carrotの支援のお願い

Filed under: 未分類 タグ: , ,

タイトルの通り全自動台車CarrotのクラウドファンディングをCampfireにて開始いたしました。また後日HPでも告知いたしますが、よろしければご支援お願いいたします!


こちら

By 63rd Kayaki . 2019-02-21 . 10:51
コメントお待ちしております!

[ROOT] Androidでルート証明書を入れる

Filed under: Android,ROOT,パケットキャプチャ,証明書 タグ: , ,

今日も、こんばんは。65th会計のTomoです。

アプリのパケットキャプチャをした時のことについてお話します。

Android 6.0.1のタブレットでは通信が見れたのにAndroid 7.0のスマホでは見れない。

何故かと思って原因を調べるとこちら(Android開発者ブログ : Android 7.0からの信頼できる証明書の変更)にありました。

要約するとAndroid 7.0からはデフォルトでユーザー証明書を信頼しなくなったよーんってことですがこれは困った。パケットキャプチャができないではないか。

しかし幸いにもこの端末はルートを取得していたのでユーザー証明書が保存されているパスからシステムの証明書が保存されているパスにコピーすれば信頼されたCA証明書として認識してくれるのではないか

ユーザー証明書は/data/misc/user/0/cacerts-added/に保存されています

CA証明書は/system/etc/security/cacerts/に保存されています。

そこにコピーするだけ?簡単でしょ

今日はこれで終わりです。それじゃまた明日~

By Tomo . 2019-02-04 . 22:08
コメントお待ちしております!

Win10でWindows File Managerを使ってみた

Filed under: Windows,Windows10 タグ: , , , ,

ブログの毎日更新をしようと頑張っている会計 65thのTomoです。

そもそもWindows File Managerとは何ぞや?

Windows File ManagerはMS-DOSに置き換わるファイルのコピー、移動、オープン、削除、検索などを行うソフトとしてWindows 95Windows NT 4.0に乗せられたものだそうです。 from Wikipedia

実はこちらのソフト、前に話題になったのでご存じの方も多いかと思いますが、オープンソースになり改良がくわえられ、Windows 10で動きます!!

GitHub(Microsoft/winfile) Original Windows File Manager (winfile) with enhancementsで公開されているの興味のある方は是非

さあ、インストールしよう!

Windows File Manager、インストールの図

まずは、Microsoft StoreでWindows File Managerと検索。でこれが出てくるのでインストール。そこまで大きくないのでインストールは結構早く終わります。

使ってみた

Android Studioのプロジェクトを見た図

この二つに分かれてるの悪くないけど慣れない。。。

でもドライブごとに見れるのはうれしいよね

左側、一つ奥に進むのにダブルクリックしないと、慣れんわ

でも軽いから大好き。

感想

やっぱ軽いのいいよね!ドライブごとに管理できるの最高やわ!

みんなも使ってみてね~

By Tomo . 2019-02-03 . 23:12
コメントお待ちしております!

Android StudioのCanary(早期運用版)導入でつまずいた話

Filed under: AndroidStudio,小ネタ タグ: , , , ,

会計、65th.Tomoです。

さっき、公式サイトからCanary版をダウンロードして展開したのですが何故か

ダウンロードしてアプデしろと言われる。。

公式サイトから最新版を入れてきたのに。。 困った 。

結論から言えば言語設定を日本語にしてたから悪かった。英語版ではしっかり表示されていた。

無事ダウンロードできたので使っていきますね~

By Tomo . 2019-02-02 . 22:40
コメントお待ちしております!

[2019] 新会計 自己紹介

Filed under: ブログ

皆様、はじめまして。新会計のTOMOです。

そもそもなぜロボ研へ入部したのか?

僕は実はもともとロボ研にいたわけではなく、中三(今年度)から入部しました。もとは帰宅部状態だったんですが、中学二年生の時にK君の話を聞いてロボ研への入部をしました。(中学一年にあるクラブ紹介でロボ研のことは聞いたものの「僕ソフトONLYだから需要ないか。。。」と思って入らなかった、損したあ)

そもそも自分のタイプは?

基本的にはJava推しですが、Pythonも書けます。Android Javaは得意中の得意(だが、ロボットで使う機会があまりない。。)

正直、おっちょこちょいで… いろいろあると思いますがよろしゅうお願いします。

最後に

とても頼りない僕ですがよろしくお願いします!

By Tomo . 2019-01-23 . 23:24
コメントお待ちしております!

[Aquila]2018年度ロボカップジュニア京滋奈ブロック補足資料

Filed under: Aquila タグ: , , ,

プレゼンシートでは載せきれなかったアルゴリズムについて少しだけ説明したいと思います。
(おそらくわかりずらいので、どしどしお聞きください。
以下相方(アルゴリズム担当)のそのままです。

実機での探索アルゴリズムにはDFSにほんのりと評価関数を加えたアルゴリズムを使用しています。
また、DFSにおける頂点間の移動時に、単一始点最短経路問題(SSSP)を解いているのですが、
後述の通り重み無しのグラフなのでダイクストラ法ではなくあえて幅優先探索(O(E))を用いる事で高速化しています。
マッピングについては、30*30のマス一つを頂点とした重み無し無向グラフを構造体をつなげることで表現しています。
fig01
(画像の出典はhttps://www1.doshisha.ac.jp/~mjin/R/61/61.html)
また、頂点の重複がないか確認する為に既存の頂点をすべて保存していて、
保存の為にAVL-tree(検索、挿入、削除共にO(log V))を用いる事で検索、構築を高速化しています。
以下補足。
※ダイクストラ法について
幅優先探索の特殊版のようなものです。(最良優先探索の一つ)
辺の重み(>0)に関する優先度付きキューを用いて辺集合を成長させる事で最短路を求める方法です。
(優先度付きキューの種類によって計算量は変化します。)
※AVL-treeについて
|左の部分木の高さー右の部分木の高さ|<=1を満たす木の事です。
これによって木の高さを平衡に近く保つ事で探索性能をO(log(V))に抑える事が出来ます。
(挿入、削除時に木を回転させています)
※DFS(深さ優先探索)とは一旦進めるまで進み、行き止まりに到着すると一つ前の分岐点にもどり、未探索の方へ進むという方法です。

らしいです。
自分でもわかりません(;’∀’)
こちらの資料(相方作)をご覧になると少しだけわかるかもしれないです・・・
ちゃんと動いてくれよ俺たちのロボット・・・
以上正月にプレゼンの原稿作ってるAquilaでした。

By 63rd Kayaki . 2019-01-01 . 23:28
コメントお待ちしております!
古い記事 »