BTR2021の設定(まとめ)

Ubuntu 18.04でRobviewの開発環境を構築に必要事項が書いてあるので,それを更新します.
まずは,Ubuntu 18.04.5 LTS (Bionic Beaver)をインストールして,初期設定を行います.
アカウントに関しては,各自,好きな名前を付けて下さい.
もし,研究室共通の設定にしたいのであれば,以下の設定にして下さい.
Display Name: Ryukoku Taro
Account Name: ryukoku
Password: elec
仮想マシンの場合,メモリは2GBだと少ないので,4GB以上にして下さい.
ハードディスクも20GBだと厳しいので,40GBぐらい欲しいですね.

インストール後の初期設定.
2021/08/18 現在,Robotino 3で以下を実行しようとするとパッケージの依存関係が解決せずに止まってしまいます.対処法を探しています.
2021/08/19 現在,通常のパソコン版のUbuntu 18.04に以下を試してみたところ,問題なくインストールできました.RefBoxインストールまでの速報動画はこちら(無音声・ノーカット版!)です.まだ編集していない段階ですので,1時間36分あります.コンパイルで時間がかかっている部分は早送りで飛ばして下さい.

### パッケージを最新版に更新
sudo apt-get -y update; sudo apt-get -y upgrade; sudo apt-get -y dist-upgrade

### ネットワーク周りと,開発関係のパッケージのインストール.
sudo apt-get install -y net-tools openssh-server subversion git gcc build-essential vim screen ccache
###
### (これで,ssh で他のマシンからログインして,触ることも可能になります)
###

### 言語設定
sudo update-locale LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8

### 標準のエディタをvim に変更
sudo update-alternatives --config editor

### sudo をNOPASSWD で使いたいならばsudo visudo で%sudo の項目を変更
### ここから
#%sudo  ALL=(ALL:ALL) ALL
%sudo ALL=(ALL) NOPASSWD:ALL
### ここまで.

# openCV のインストール
cd ~/Downloads
wget https://raw.githubusercontent.com/milq/milq/master/scripts/bash/install-opencv.sh
chmod +x install-opencv.sh
./install-opencv.sh

### RefBox のインストール
### まずは,必要なパッケージのインストール
sudo add-apt-repository ppa:timn/clips
sudo apt-get update
sudo apt-get install -y libmodbus-dev libclips-dev clips libclipsmm-dev \
                     protobuf-compiler libprotobuf-dev libprotoc-dev \
                     libboost-all-dev libmodbus-dev \
                     libglibmm-2.4-dev libgtkmm-3.0-dev \
                     libncursesw5-dev libyaml-cpp-dev libavahi-client-dev \
                     libssl-dev libgecode-dev \
                     lib64ncurses5-dev cmake-curses-gui git \
                     libmbedtls-dev gcc g++
git clone https://github.com/FreeOpcUa/freeopcua
cd freeopcua
### ↓ 選択肢は「c」→「e」→「c」→「e」→「g」
ccmake .
cmake .
make
sudo make install
sudo apt-get install -y libxml2-dev dh-autoreconf
# ./build.sh
# ./configure
# make
# sudo make install
sudo ldconfig

sudo apt-get install -y libmicrohttpd-dev rapidjson-dev libaprutil1-dev libwebsocketpp-dev
cd
git clone https://github.com/robocup-logistics/rcll-refbox.git
cd rcll-refbox
### ↓ mps_comm でエラーが出た場合は,ターミナルを再起動してみて下さい(もしくはシステムの再起動).
make
### 今年の大会はブランチを切り替える必要があります.
git checkout neltester/challenges-2021
git pull --ff-only
### このままだと, unused variable ‘it’ [-Werror=unused-variable] のエラーが出るので,
### rcll-refbox/etc/buildsys/config.mk の最後(「endif # __buildsys_config_mk_」の手前)に以下を追加.
### CFLAGS_EXTRA += -Wno-unused-variable
vi etc/buildsys/config.mk
make
cd

### ccache の有効化
### freeopcua のコンパイル時に、エラーが出やすいので,このタイミングで有効化します.
### もしかして,使わない方が無難かなぁ.
cat <<EOF >> .bashrc
export PATH="/usr/lib/ccache:$PATH"
export USE_CCACHE=1
export CCACHE_DIR=~/.ccache
export set CC='ccache gcc'
export set CXX='ccache g++'
EOF
source .bashrc

### RobView のインストール
sudo update-locale LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8
sudo apt-get remove -y libreoffice-core libreoffice-common

sudo apt-get install -y libqt5serialport5 libopencv-calib3d3.2 libopencv-core3.2 libopencv-features2d3.2 libopencv-flann3.2 \
                        libopencv-highgui3.2 libopencv-videoio3.2 libopencv-imgcodecs3.2 libgdcm2.8 libcharls1 libsocket++1 \
                        libopencv-imgproc3.2 libopencv-ml3.2 libopencv-objdetect3.2 libopencv-video3.2 libluajit-5.1-2 \
                        libluajit-5.1-common libboost-program-options1.65.1 libboost-regex1.65.1 libboost-chrono1.65.1
wget -qO - http://packages.openrobotino.org/keyFile | sudo apt-key add -
sudo su -
echo "deb http://packages2.openrobotino.org bionic main" > /etc/apt/sources.list.d/openrobotino.list
exit
sudo apt-get update
sudo apt-get install -y robview3

### Add ROS package repository, required e.g. for bullet
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install -y ros-melodic-actionlib ros-melodic-pcl-ros ros-melodic-geometry ros-melodic-image-common \
                        ros-melodic-image-transport-plugins ros-melodic-navigation \
                        libpcl-conversions-dev libtf-conversions-dev libvisualization-msgs-dev \
                        libudev-dev curl libtolua-dev
bash -c "$(curl -SsfL https://git.io/ros-melodic-desktop)"
sudo apt-get install -y python-rosdep python-rosinstall python-rosinstall-generator python-wstool
sudo rosdep init
rosdep update

sudo apt-get install -y ros-melodic-catkin ros-melodic-rplidar-ros
source /opt/ros/melodic/setup.bash
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
cd ..
catkin_make
cd src
git clone https://github.com/Slamtec/rplidar_ros.git
cd ..
catkin_make
source devel/setup.bash
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc

### チームのプログラムを取ってきましょうか.
### ownCloud のインストールですね.
#### 最初は,~/ownCloud/の下にスクリプトを保存していましたが,ownCloudのファイルと衝突するので,ホームの下に変更しました.
sudo apt-get install owncloud-client owncloud-client-cmd
mkdir ~/ownCloud
cd
### チーム関係者以外の方は,以下の部分をスルーして下さいませ.
### ↓ 10分ぐらいかかったかも….お茶でも飲んで待っていて下さい.
echo "#\!/bin/bash" > ~/ownCloud.sh
echo "owncloudcmd -s ~/ownCloud https://vega.elec.ryukoku.ac.jp/cloud/remote.php/webdav/btr" >> ~/ownCloud.sh
chmod +x ~/ownCloud.sh
~/ownCloud.sh

### チーム関係者以外の方は,以下の部分もスルーして下さいませ.
### ↓ ROS の部分.とりあえずこんな感じ?
cd ~/catkin_ws/src
cp -r ~/ownCloud/2021/ros-rcll_refbox_peer ~/ownCloud/2021/ros-rcll_ros_msgs ~/ownCloud/2021/git/BabyTigers/ros/ros-rcll_btr_msgs .
cd ..
ln -s ~/rcll-refbox/src/msgs ~/rcll-refbox/src/libs/llsf_msgs
catkin_make

### チーム関係者以外の方も,以下の部分は利用可能です.
### RobotinoSim をUbuntu で使う場合は,以下の作業をして下さい.
### Windows 側でシミュレータを動かす場合には不要です.
### 以下の作業(winecfgとwine)はGUIですので,Xが動く環境で実行して下さい.
cd ~/Downloads
sudo apt-get -y install wine-stable
wget https://doc.openrobotino.org/download/RobotinoSim/RobotinoSimDemo-1.4.2.exe
winecfg
wine RobotinoSimDemo-1.4.2.exe
cd ~/ownCloud
echo "\#!/bin/bash" > ~/robotinoSimDemo.sh
echo "wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Didactic/RobotinoSim\ Demo/bin/robotinosim.exe" >> ~/robotinoSimDemo.sh
chmod +x ~/robotinoSimDemo.sh
### これで,~/robotinoSimDemo.sh でシミュレータが立ち上がります.
### 本当は,cpulimit で使わないときの動作を遅くした方が良いのですが,それはまた今度.


2021/06/01 追記

cpulimit に関しては,

cpulimit -z -l 10 -p `ps aux| grep robotinosim.exe|head -n1|awk '{print $2}'`

という形で,robotinosim.exe の動作を抑える(上記はcpu使用率10%)ことができます

チーム関係の方は,ownCloudの中にそれらのスクリプトも入れていますので,
.bashrc に以下を追加しておくと幸せになれます.

export PATH="$PATH:~/ownCloud/2021/scripts/"

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*