raspiホットスポット化
sudo apt install hostapd dnsmasq iptables git clone https://github.com/oblique/create_ap.git cd create_ap sudo make install
sudo iw dev wlan0 interface add ap0 type __ap sudo create_ap --no-virt ap0 wlan0 raspi
上手く行くと、このようなログが出てくる。
ubuntu@ubuntu:~$ sudo create_ap --no-virt ap0 wlan0 raspicatv2 WARN: brmfmac driver doesn't work properly with virtual interfaces and it can cause kernel panic. For this reason we disallow virtual interfaces for your adapter. For more info: https://github.com/oblique/create_ap/issues/203 Config dir: /tmp/create_ap.ap0.conf.6ESuWyuv PID: 2225 Network Manager found, set ap0 as unmanaged device... DONE Sharing Internet using method: nat hostapd command-line interface: hostapd_cli -p /tmp/create_ap.ap0.conf.6ESuWyuv/hostapd_ctrl WARN: Low entropy detected. We recommend you to install `haveged' Configuration file: /tmp/create_ap.ap0.conf.6ESuWyuv/hostapd.conf ap0: Could not connect to kernel driver Using interface ap0 with hwaddr e4:5f:01:68:fb:5c and ssid "raspicatv2" ap0: interface state UNINITIALIZED->ENABLED ap0: AP-ENABLED ap0: STA 80:32:53:62:73:c5 IEEE 802.11: associated ap0: AP-STA-CONNECTED 80:32:53:62:73:c5 ap0: STA 80:32:53:62:73:c5 RADIUS: starting accounting session EDCAFFAFD8EE1847
raspiインターネット時刻合わせ
ファイルの編集を行う。
sudo vim /etc/systemd/timesyncd.conf
なぜか、ntp.nict.jp
だと上手く行かなかったで、pool.ntp.org
を選択した。
# This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. # # Entries in this file show the compile time defaults. # You can change settings by editing this file. # Defaults can be restored by simply deleting this file. # # See timesyncd.conf(5) for details. [Time] NTP=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org FallbackNTP=0.pool.ntp.org 1.pool.ntp.org 0.jp.pool.ntp.org
修正内容を反映し、サービスを再起動。
sudo systemctl daemon-reload sudo timedatectl set-ntp true sudo systemctl restart systemd-timesyncd.service
こんな感じのログが出てくれば大丈夫そう。
ubuntu@ubuntu:~(17:54:19)$ sudo systemctl status systemd-timesyncd.service ● systemd-timesyncd.service - Network Time Synchronization Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2022-02-19 17:53:05 JST; 1min 16s ago Docs: man:systemd-timesyncd.service(8) Main PID: 1935 (systemd-timesyn) Status: "Connecting to time server 129.250.35.251:123 (pool.ntp.org)." Tasks: 2 (limit: 4442) CGroup: /system.slice/systemd-timesyncd.service └─1935 /lib/systemd/systemd-timesyncd 2月 19 17:53:05 ubuntu systemd[1]: Starting Network Time Synchronization... 2月 19 17:53:05 ubuntu systemd[1]: Started Network Time Synchronization. 3月 06 14:03:56 ubuntu systemd-timesyncd[18103]: Synchronized to time server 129.250.35.250:123 (2.arch.pool.ntp.org).
gmappingのマップの更新速度について
概要
「gmappingのパラメータであるmap_update_interval
を0.1などにしても
/mapトピックの配信頻度が0.5Hz程度ぐらいになってしまう」という話を聞いたので調べてみた。
〜map_update_interval ( float 、デフォルト:5.0) マップの更新間の時間(秒単位)。 この数を減らすと、計算負荷が大きくなりますが、占有グリッドがより頻繁に更新されます。
調査
ソースコードを読む
1.まず、/map配信頻度は/scanの配信頻度に依存している。
2.その上で/map配信頻度はmap_update_interval
のパラメータに依存している。
3.また、temporalUpdate
というパラメータにも依存している。(↓関係がある場所のリンクを色々ペタペタ)
実際に動かしてみる
実機
環境
raspicat
2D LiDAR
- UST-30LX(/scan 30Hz)
ノートPC
- core i7-10750H
- RTX2060
- melodic
gmapping
gmapping nodelet
rosbag
あとで載せます。実機と変わらず、cpuは100%に張り付いていて、/mapの配信頻度は0.3Hzぐらいだった。そして、徐々に配信頻度は下がっていった。
まとめ
ということで、map_update_interval
とtemporalUpdate
のパラメータを調整すれば、/map配信頻度を20Hzぐらいまで高くできるかというと、そうでもないみたい。すくなくとも、自分の環境では1Hzぐらいで頭打ちになってしまった。また、マッピングをし続けていくと/map配信頻度が徐々に下がっていくことがわかった。cpuに関してはgmappingのプロセスは100%まで張り付いてしまう。普通に処理が間に合ってなさそう。
hector slamもやってみた
hector slamは使ってみた所、cpu使用率が低く、/mapの配信頻度を300Hzまで高くしたら cpuが100%に張り付いた。今度、コードを読んでみます。(gmappingとの違いを探す)
非インターネット環境でNTP
参考記事
2021年を振り返って
概要
あー、あと3時間ぐらいで2022年になります。 なんか2がいっぱいありますね!。。。。。
今年は相変わらずコロナで何かと家にいる機会が多かった気がします。 大学4年生として過ごしていたわけで、授業はなかったのですが いつも忙しいかった気がします。来年は就活もあるのでヤバイです。
書きたいことは山ほどあるが、まずは今年やったことの整理をする。
さぁ振り返ろうじゃないか
正直、進捗が少ないのでは無いかと思ってる。 人それぞれだと思うけど。。。
まずは
1月
記憶にないのでツイッターを見てみます。
なんか勉強会やったらしい。 思うけど多分誰のためにもならなかった気がする。 ただただ資料の準備が苦痛だった。
酷い勉強会になってしまった(勉強します)
— BEIKE (@BEIKE_RE) 2021年1月19日
なんか遊んでますね。多分モルカーが流行ってた頃。
これは便利だhttps://t.co/fDeKYhNFc7 pic.twitter.com/5iRKDkZrkf
— BEIKE (@BEIKE_RE) 2021年1月22日
ということで、1月進捗ゼロです。 酷いですねー。
2月
CIの大切さに気づいたようです。 この頃からGitHub Actionsを使うようになったんですね。
CIの大切さに気づいた。
— BEIKE (@BEIKE_RE) 2021年2月3日
AWSデリバリーチャレンジに出場することを決意したようです。 なお、卒業研究のためといいつつ確実に勝利を掴むために 挑戦をせず既存の方法でやったんだけどね。。。
今年は卒業研究のために出場する
— BEIKE (@BEIKE_RE) 2021年2月17日
決意の一週間後にはシミュレータで何かやってますね。
ほんとだ、障害物動いてる pic.twitter.com/puNnZ0nLjS
— BEIKE (@BEIKE_RE) 2021年2月25日
まあ、2月は進捗合った気がしますね。
3月
ツイッターを見る限り進捗なさそうです。 何をやっていたのでしょうか???? 酷いですね。。。。
4月
何かイライラしてますね。 この頃、大会の2週間前ということは3月はその準備をしていたようです。 フムフム。。。
大会の決勝まで2週間しかないのに、ルール決まってないのどいうこと?
— BEIKE (@BEIKE_RE) 2021年4月10日
5月
大学院推薦の研究計画書を書いてるようですね。 めんどくさかった記憶が有ります。
大学院推薦の研究計画書書いてるなう
— BEIKE (@BEIKE_RE) 2021年5月4日
大会は2位だったようです。 今となっては、まぁそうだよなって感じです。。。 来年は1位を目指すらしいです。
結果は2位で惜しい結果でした。
— BEIKE (@BEIKE_RE) 2021年5月11日
実機とシミュレータでの挙動の違いの調整をしておらず、本番で苦戦しました。
大会に参加して、楽しかったですし勉強になりました。
大会の運営様、準備等ありがとうございました。#AWSロボコン
これはボスからおしかりを受けた時の話ですね。 人と共同で作業する時に気をつけることを知ったようです。 なお、改善されたか不明。
複数人で作業するときはインターフェースに関する共有資料を作っておく
— BEIKE (@BEIKE_RE) 2021年5月13日
まぁ、5月は大会で入賞したので進捗はあったと思います。
6月
なんか、自己位置推定のブログ書いたようですね。 こういうのやってもアウトプットがないのでダメですね。 しっかりプログラムも書きましょう。。。
昨日書いたブログがツイートされてる。
— BEIKE (@BEIKE_RE) 2021年6月6日
気合い入れて書かないと。。。
ワクチン接種したようです。 まだフルチンではないですね。。。
ワクチン接種した(1回目)
— BEIKE (@BEIKE_RE) 2021年6月25日
んんー、6月はワクチンを打ったので進捗がありますね・・・・。
酷いですね。
7月
津田沼チャレンジをやったようですね。 確かめっちゃ暑かった気がします。
マンホール乗り越えたら期待してない膨張リセットがかかってしまった。
— BEIKE (@BEIKE_RE) 2021年7月10日
つくばチャレンジに申し込んだようですね。 自分の中でビックイベントだった気がします。
つくばチャレンジ参加登録した。
— BEIKE (@BEIKE_RE) 2021年7月13日
東京オリンピックを観てたようですね。 開会式の音楽よかったです。
開会式ずっと見てる
— BEIKE (@BEIKE_RE) 2021年7月23日
ようやくフルチンです。
研究の発表資料作らないとなんだが
— BEIKE (@BEIKE_RE) 2021年7月24日
ワクチン接種2回目の副反応(熱)キツすぎて進まない
7月は津田沼チャレンジやっていたということで進捗は少しありますね。。。。。
8・9月
この2ヶ月はGITAIというベンチャー企業のインターンに行ってました。 2ヶ月って結構長いですね。。。。。
やった内容は移動ロボットのパーセプション周りやナビゲーションです。
正直言うと自分の力のなさをとても感じました。 結構、地獄だった気がします。普段の作業と比べたらの話なんですけどね。
でも、とても良い刺激を受けました。こんな感じにガツガツやっていくんだなーと思いました。 もちろんメンタルがやられそうになった時は何度もありましたが、インターンが終わった、今となっては そこでの経験が今の自分を後押ししてくれている気がします。もっと頑張らないといけないことに 気づかせてくれたので本当に感謝しています。
良い感じのような話しのまとめ方をしてますが卒論は進んでません。。。。。。。。。 あああああああああ。。。
お疲れ様です。自分。
夏のインターンが終わった🙂
— BEIKE (@BEIKE_RE) 2021年9月30日
8・9月は進捗出しまくりだったかもです。
10月
卒論を書き始めたようです。
重い腰を上げて、論文を書き始めた
— BEIKE (@BEIKE_RE) 2021年10月15日
10月は確か、つくばチャレンジの実験走行が合った気がします。 まぁ進捗は合った気がします。
11月
つくばチャレンジもSIもあって大忙しなようです。 SIに関してはだいぶ楽をしてしまったので申し訳なく思ってます。
si動画投稿できないんだが
— BEIKE (@BEIKE_RE) 2021年11月8日
これは!進捗ですね!
Raspberry Pi Catで確認走行区間完走した😃 pic.twitter.com/S0f29zs6N8
— BEIKE (@BEIKE_RE) 2021年11月19日
実装ミスですね。そもそも把握してなかったみたいです。 自分の中での目標は達成したから良いかな?(良くない)
横断歩道がないところは一時停止が必要だったが
— BEIKE (@BEIKE_RE) 2021年11月22日
実装していなかったので記録は確認走行区間の
ゴールから10m先ぐらい
11月は進捗の月でしたね。
12月
なんか記事を書いたようです。 こういうイベントって参加したくなるんですよね。
こんなパッケージがあったのか...
— porizou (@porizou1) 2021年12月3日
2次元地図からGazeboのmodelを作ってナビゲーションしてみた https://t.co/FMFOAMiXcQ #Qiita @BEIKE_REより
なんか記事を書いたようです。 疲れてきますね。
リーダーの池邉さんに執筆いただきました。単なる体験記じゃなくて、結構重要な情報があるような気がする。
— 千葉工大未ロボ上田研 (@uedalaboratory) 2021年12月6日
つくばチャレンジ2021に参加した話 | CIT自律ロボット研究室 https://t.co/v35hIfgbM2
SIに参加したようですね。 ポスターづくりがめんどくさかったです。(それぐらい頑張れ)
siなう(人が来ない)
— BEIKE (@BEIKE_RE) 2021年12月17日
そして現在つくばチャレンジシンポジウムのレポートを書いています。。。。。。
12月は書物が多すぎる??????!!!??!?!??!?!?!?! 疲れました。。。。。
まとめ
いやー振り返るのに1時間ぐらい掛かりました。
夏休み前は天狗になりすぎていた気がします。 なので全く成長した気がしてません。
夏休み以降は自分の力のたりなさに痛感して やるべきをことを考え始めました。
来年はつくばチャレンジ完走したいな−。
やらないといけないことは盛りだくさんなので、来年になったらやることを一旦まとめようと思います。
2021年お疲れ様でした^o^