ROSでrealsense(melodic)
※noeticではこの方法では無理です。noeticからカーネルのバージョンが5.11.0-37になったことが原因。melodicは5.4.0-81。
手順
- git clone https://github.com/IntelRealSense/librealsense.git
- cd librealsense/
- sudo apt install git libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
- sudo apt install libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev
- sudo apt install cmake
- ./scripts/setup_udev_rules.sh
- ./scripts/patch-realsense-ubuntu-lts.sh
- 2時間ぐらいかかる
- mkdir build && cd build
- cmake ../
- sudo make clean && make && sudo make install
- realsense-viewer
- 起動して動作確認
参考
turtlebotでgmapping
基本的には↑このサイトを参考にさせてもらったが、
invoking "make -j12 -l12" failedを吐かれてgmappingのcatkin_makeが通らなかった。
原因はわからなかったが、apt経由でインストールできた。
sudo apt-get install ros-melodic-gmapping
arduinoをCUIで開発する
基本的に以下のサイトを参考にやらせてもらった。
qiita.com
シリアルモニタの使い方は以下のコマンドを実行する。
platformio device monitor
他のサイトでは「platformio serialports」を使っているが、私の環境ではserialportsというオプションは存在しなかった。
あとplatformioはtabキーで補完されず困った。
rosserialを使う(melodic)
rosserial関連のインストール
sudo apt-get install ros-melodic-rosserial-arduino sudo apt-get install ros-melodic-rosserial
下のコマンドを実行してros_libを作成する。(私の場合は~/Arduino/librariesの中に作成)
rosrun rosserial_arduino make_libraries.py ~/Arduino/libraries
arduinoIDEをVScodeにする(ubuntu)
VScodeにarduinoのパスを設定する。私の場合は/home/ユーザー名/ドキュメント/arduino-1.8.13-linux64/arduino-1.8.13
VScodeの検索欄に「C_cpp.intelliSenseEngine」と入力する。defaultからTag Parserに変更する。
念の為にVScodenの再起動。ctrl+shift+Pでarduino:Examplesがあり、サンプルプログラムに移動できたらOK。
あとは参考サイトをみて、ボードタイプとシリアルポートを設定すれば実行できる。
追記
VScodeでarduinoのプログラムファイルを新規作成できなかったため、shellscriptでプログラムを作った。テキトーに.inoファイルを作ってもArduinoへ書き込むことはできない。どうやら.vscodeフォルダにarduino.jsonとc_cpp_properties.jsonを作成しないといけないらしい。
実行方法(hoge.inoを作成する場合)
./shellscript hoge
mkdir $1 cd $1 mkdir .vscode cd .vscode echo "{ "sketch": "$1.ino", "port": "/dev/ttyACM0", "board": "arduino:avr:uno" }" > arduino.json echo "{ "configurations": [ { "name": "Linux", "defines": [ "ARDUINO=10800" ], "includePath": [ "/home/ユーザー名/ドキュメント/arduino-1.8.13-linux64/arduino-1.8.13/tools/**", "/home/ユーザー名/ドキュメント/arduino-1.8.13-linux64/arduino-1.8.13/hardware/arduino/avr/**", "${workspaceRoot}", "/home/ユーザー名/ドキュメント/arduino-1.8.13-linux64/arduino-1.8.13/hardware/tools/**", "/home/ユーザー名/ドキュメント/arduino-1.8.13-linux64/arduino-1.8.13/libraries/**", "/home/ユーザー名/Arduino/hardware/tools/**", "/home/ユーザー名/Arduino/libraries/**" ], "forcedInclude": [ "/home/ユーザー名/ドキュメント/arduino-1.8.13-linux64/arduino-1.8.13/hardware/arduino/avr/cores/arduino/Arduino.h" ], "intelliSenseMode": "clang-x64", "cStandard": "c11", "cppStandard": "c++17", "compilerPath": "/usr/bin/gcc" } ], "version": 4 }" > c_cpp_properties.json cd ../ echo "void setup() { } void loop() { }" > $1.ino