0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

RaspberryPiセットアップ

Last updated at Posted at 2023-04-07

ロボットに載せるオンボードコンピュータとして,RaspberryPiを使いました.

一緒に使う予定のロボットに既にUbuntu18.04が搭載されていたので,rosのバージョンをそろえるためにこちらもUbuntu18.04をOSとして載せたものの... 少し古めのUbuntuなので,最新のものに比べてひと手間必要でした.

基本的なインストール方法やwifi設定などのセットアップ方法は,Ubuntu18.04に限らずほとんどのUbuntuに共通していると思います.

インストール&初期設定手順

  1. SDカードをFAT32で初期化(フォーマット)する
    a. 32GB以上のSDカードはデフォルトのWindowsフォーマッタでは初期化できないので,無料のアプリをインストールして頑張る.(私は,AOMEI Partition Assistant Standardを使いました.)
    b. そのアプリの手順に従って初期化する(AOMEIならこれに従う)

  2. raspberryPi Imagerをインストール

  3. ラスベリーパイ用Ubuntu18.04 server OSのダウンロード(ubuntu-18.04.5-preinstalled-server-arm64raspi4.img.xz の2つ)

    • Ubuntu serverはDesktop版と異なり,ターミナル画面しか表示されない(CUI操作のみ)
    • Ubuntu18.06以前のバージョンだと,RaspberryPi用のUbuntuはserverしか配布されていないのでこちらを利用した(もっと最新のものならDesktopもある.)
  4. raspberryPi Imagerを起動し,Operating System > Use custom > ダウンロードしておいたubuntuファイル を選択.さらに,保存する先のSDカードを選択して書き込む.

  5. microSDをRaspberryPiに挿入.モニターとかとつないで,最後に電源供給を行うと起動する

  6. Log in ID:ubuntu,password:ubuntu でログインすると,パスワードの変更を求められる.そこで,現在のパスワード → 新しいパスワード → 新しいパスワード の順に入力する

  7. 初期設定

有線 / 無線LAN接続&IPアドレスの固定

Ubuntuでは,ネット接続の設定にNetplanを利用している.デフォルトでは "/etc/netplan/50-cloud-init.yaml" にその設定ファイルがある.

このファイルは後で自動的に書き換えられる可能性があるので,接続設定はこのファイルをもとに "/etc/netplan/99_config.yaml" など適当なファイルを新規作成し,そこに記入する.

  1. 自分のubuntuにおけるwifiやイーサネットのアダプタ名を確認

    $ ifconfig
    
    wlan0: 無線LANのアダプタ名
        xxxyyyzzz
    eth0:  有線のアダプタ名
        aaabbbccc
    
  2. ファイル("/etc/netplan/99_config.yaml")の作成
    vimを使って作成&編集を行う場合は以下のコマンド

    $ sudo vim /etc/netplan/99_config.yaml
    
  3. 接続設定(無線→有線でひとつづつ試すのがいい)

    /etc/netplan/99_config.yaml
    network:
      version: 2
      renderer: networkd
      ethernets:
        eth0(有線のアダプタ名):
          dhcp4: false
          addresses: [192.168.aaa.bbb/24]
     wifis: 
        wlan0(無線LANアダプタ名): 
          dhcp4: false
          addresses: [192.168.xxx.yyy/24]
          gateway4: 192.168.xxx.zzz
          nameservers: 
              addresses: [192.168.xxx.zzz, 8.8.8.8]
          access-points: 
              wifi SSID:
                  password: "wifi_password"
    

    ただし,以下のようにアドレス関連で分からないことがあった場合は,とりあえずそのネットワークに接続されているPC(Windowsとか)で,ネットワーク情報を確認するといい.

    • 接続先のネットワークでのIPアドレスの型が分からない
    • 自分の接続しているwifiサーバのアドレス(gateway4nameserveraddress部分)が分からない

    参考サイトをもとに調べると,↓の写真のようにネットワーク情報が表示された.
    image.png

有線 / 無線LANによるssh接続

有線LANの場合も無線LANの場合もやり方は同じ.ただし,有線LANのほうが通信が安定しているので動作も軽い.詳細は参考サイトを参照.

Desktop版への変更

デスクトップ版は軽量版(xubuntu,lubuntu)など様々あるが,今回は普通のUbuntuにする.インストール終了後に再起動するとデスクトップ画面が表示される

$ sudo apt install -y ubuntu-desktop
$ reboot

トラブルシューティング

1.起動してすぐはwifiにつながるのに,その後つながらなくなる!

発生した事象:

起動直後はpingも通って間違いなくwifiにも接続できているのに,しばらくするとpingもsshも通らなくなった!

原因:

  1. wifiモジュールが暫くするとスリープモードに入る(wifiを利用できなくなる)
  2. セキュリティーソフトでブロックされている(ラズパイとsshをする側のPC,両方大丈夫か)
  3. 両方

解決策:

参考サイト

  1. wifiモジュールが暫くするとスリープモードに入る(wifiを利用できなくなる)場合
    この場合,wifiへの接続そのものが切れているので,ネットにも接続できなくなる
    a. 原因を確認

    $ iwconfig  
    // "Power Management:on"と表示されたら,低電力化のためにスリープ移行するモードになっている.
    

    b. 節電モードをオフにする

    $ sudo iwconfig wlan0 power off
    

    c. 変更を確認

    $ iwconfig
    //"Power Management:off"と表示されたら,OK!
    

2. セキュリティーソフトでブロックされている(ラズパイとsshをする側のPC,両方大丈夫か)

発生した事象:

このとき,ネットワークはつながっているのでpingは通る.しかし,sshは"connection refused"と表示される.

  1. ローカルPC(Windowsなど)→ラズパイにpingを送信:成功

  2. ラズパイ→ローカルPCにpingを送信:失敗

    このとき,ローカルPC側に「不正なアクセスをブロックしました」などというセキュリティーソフトからのメッセージが来ていないか確認する

  3. ローカルPCのセキュリティーソフトでラズパイとの通信を許可する

3.wifiのオンオフを切り替えたい

参考サイト

$ nmcli radio wifi on
$ nmcli radio wifi off

4.モニタに繋げないと起動しない

参考サイト1

  • RaspberryPiをモニタに繋げた状態で電源を入れる→起動する(pingもsshも通る)
  • RaspberryPiをモニタに繋げない状態で電源を入れる→起動しない(pingすら通らない)

これは,ラズパイの設定ファイルに追記することで直るらしい.

$ sudo vim /boot/fireware/usercfg.txt

// 以下,追記内容(開いたのは設定ファイルに追記するファイルなので通常は何も書かれていない)
hdmi_force_hotplug=1
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?