Robotino2を再利用

Robotino WikiにあるRobotino Raspberryを参考に,研究室で眠っているRobotino 2を復活させましょう.
(というのを,学生にやってもらったので,そのメモです)

まず,Raspberry pi用のOSの準備.
残念ながら64bit版には対応していないっぽいので,32ビット版(armhf)を探して取ってくる必要があります.
Index of /raspios_armhf/imagesからbusterを落としてみましょうか.
とすると,2021-05-07-raspios-buster-armhf.zipですね.

Raspberry pi を起動したら,まぁ,いろいろと初期設定が必要ですが,raspi-configを使って,SSHとVNCはONにしておきましょう.
あと,SerialPortもEnableにしておくべきかな.
VNCは,暗号化をOFFにしておかないと,MacOSとかからつながらないはず.
vncの設定の画面から,「Security」-「Encryption」を「Prefer off」へ変更.
「Autentication」を「VNC password」へ変更.
これで,手元のパソコンから遠隔で作業ができます.

Robotino_Raspberryのページに従って作業します.
まず,aptにopenrobotinoのレポジトリを追加.

sudo su
echo "deb http://packages2.openrobotino.org buster main" > /etc/apt/sources.list.d/openrobotino.list
exit
sudo apt-get update

公開鍵(public key)が見つからないって言われるので追加 しようとしたけど,keyserver.ubuntu.com には登録されていないっぽい…


仕方が無いので,deb パッケージを手動で入れますか….

cd ~/Downloads
wget https://packages2.openrobotino.org/pool/buster/main/g/gmapping/gmapping_54_armhf.deb
wget https://packages2.openrobotino.org/pool/buster/main/libo/libopen62541-1-dev/libopen62541-1-dev_1.0.1_armhf.deb
wget https://packages2.openrobotino.org/pool/buster/main/r/rec-rpc/rec-rpc_1.6.1_armhf.deb
wget https://packages2.openrobotino.org/pool/buster/main/r/robotino-api2/robotino-api2_1.1.14_armhf.deb
wget https://packages2.openrobotino.org/pool/buster/main/r/robotino-daemons/robotino-daemons_2.0.20_armhf.deb
wget https://packages2.openrobotino.org/pool/buster/main/r/robotino-dev/robotino-dev_1.0.3_armhf.deb
wget https://packages2.openrobotino.org/pool/buster/main/u/urg-library/urg-library_1.2.5_armhf.deb
sudo dpkg --install *.deb

えーと.依存関係があるのか….cmake,libqt5serialport5,at,wput,jq,gawk,libcpprest2.10,libboost-program-options1.67.0,が足りないって言われる.
で,そいつらを入れようとしたら,さらに依存関係で文句を言われる….

sudo apt-get install cmake libqt5serialport5 at wput jq gawk libcpprest2.10 libboost-program-options1.67.0 cmake-data libjsoncpp1 librhash0 libuv1 libsigsegv2 libjq1 libonig5 libboost-chrono1.67.0 libboost-date-time1.67.0 libboost-filesystem1.67.0 libboost-random1.67.0 libgnutls-openssl27 libgnutls30

これで,必要なパッケージがそろったかな.

やっぱり最初の方法で良かったのか….
public key の追加方法を見落としていました.
Deb repositoryの一番最初にあるImport key fileの作業をやり忘れていました.

wget -qO - http://packages.openrobotino.org/keyFile | sudo apt-key add -

これで,aptが通るようになるので,debファイルから直に入れる必要性はなくなります.

sudo su
echo "deb http://packages2.openrobotino.org buster main" > /etc/apt/sources.list.d/openrobotino.list
exit
sudo apt-get update
sudo apt-get install robotino-daemons

これでいいのかな(あとで試します.予想と違う反応をしたら,また書き込みます)
ここから先は,同じ話になるはず.

なんかjaistにつなぎに行っているけど,サーバが落ちているっぽい….とほほ.
Raspberry Pi(Raspbian)にやっといたほうがいい設定(運用:レポジトリ変更)にある筑波大のサーバに変更.

deb http://ftp.jaist.ac.jp/raspbian/ buster main contrib non-free rpi

再度,apt-get を実行.

sudo apt-get update
sudo apt-get install cmake libqt5serialport5 at wput jq gawk libcpprest2.10 libboost-program-options1.67.0 cmake-data libjsoncpp1 librhash0 libuv1 libsigsegv2 libjq1 libonig5 libboost-chrono1.67.0 libboost-date-time1.67.0 libboost-filesystem1.67.0 libboost-random1.67.0 libgnutls-openssl27 libgnutls30

これで,raspberry pi のソフトウエア側の対応は完了かなぁ.

違った.robotino wikiには,まだ続きの作業が書いてありましたね.

sudo systemctl enable controld2.service

/boot/cmdline.txt から「console=」を削除しろとありますので,以下の形になるのかなぁ.

削除前: console=serial0,115200 console=tty1 root=PARTUUID=1aa64d24-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=DE
削除後: root=PARTUUID=1aa64d24-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=DE

(あ,無線LANにDEを指定しているのがバレる…)

sudo systemctl stop serial-getty@ttyS0.service
sudo systemctl disable serial-getty@ttyS0.service
sudo reboot

クロスコンパイルの環境は,reaalsenseを使うためかなぁ.
openrobotino のコンパイルは,そもそもソースが手に入らなくなっているような….

とりあえず,これでwebブラウザ経由でrobotino を制御する画面が出てきます.
(まだ,ハードウエアはつないでいないので,実際には制御できませんが…)

さて,ROSを入れましょうか.

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu buster main" > /etc/apt/sources.list.d/ros-noetic.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
sudo apt-get update
sudo apt-get install -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential cmake
sudo rosdep init
rosdep update
mkdir ~/ros_catkin_ws
cd ~/ros_catkin_ws/
rosinstall_generator desktop --rosdistro noetic --deps --wet-only --tar > noetic-desktop-wet.rosinstall
wstool init src noetic-desktop-wet.rosinstall
rosdep install -y --from-paths src --ignore-src --rosdistro noetic -r --os=debian:buster
sudo src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/noetic -j4 -DPYTHON_EXECUTABLE=/usr/bin/python3
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

次は,ハードウエアの結線かなぁ.

コメントを残す

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

*