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 3 years have passed since last update.

PyCharmからRasberry Piにssh接続して開発する

Posted at

はじめに

JetBrainsのIDEじゃないと開発できない体になってしまったので最初はRaspberryPi(以下ラズパイ)にPyCharm入れようと思ったのですがあまりにも非力すぎてIDE動かすのは無理ということでMacのPyCharmから操作できないかなと思って調べました。
公式のリファレンスが古い&ディレクトリのマッピングまでは載ってなかったので書いておきたいと思います。
ssh接続はProfessional版でしかできません。

環境

macOS Catalina
Raspberry Pi 3 Model B+ OS:Raspberry Pi OS(GUI版で検証しています)
PyCharm 2021.1.2 Professional

本文

0. 前準備

マイコンでssh接続とかVNC使うときのお決まりを書いてるだけなのでわかる方は読み飛ばしてください。

IP固定化

起動する度に接続先修正するのが微妙なので固定化しちゃいます。
以下を参考に固定化しましょう。

ラズパイ側のSSH有効化

GUIなら設定からSSHを有効にするだけです。

1. ラズパイ側

Mac側のディレクトリとマッピングするためのディレクトリを作成しておきます。

RaspberryPi
pi@raspberrypi:~ $ mkdir qiitaproject
pi@raspberrypi:~ $ ls
Bookshelf  Documents  Music     Public     Videos     nfcpy
Desktop    Downloads  Pictures  Templates  nfclocker  qiitaproject

2. PyCharm側

任意のPythonプロジェクトを作成して右下のインタプリタの設定でInterpreter Setting...を選択
スクリーンショット 2021-09-06 17.41.14.png

インタプリタの設定が出るので Python Interpreterの歯車からAddを選択
スクリーンショット 2021-09-06 17.44.09.png

SSH InterpreterのNew server configurationのHostにラズパイのIPを指定
UserNameはラズパイのユーザー名(デフォルトでpi)
Portはデフォルトで22なので何もしてなければそのままで大丈夫です。
スクリーンショット 2021-09-06 16.50.30.png

次画面のpasswordはユーザー名に対するパスワードを入力してください。(さすがに貼ると怒られそうなので)

正常に接続できると使うインタプリタの設定画面が出ます。
デフォルトが/usr/bin/pythonになっています。
これはRaspberry Pi OS:2021-05-07の時点でPython2.7です。
2系を使う方はそのままで大丈夫ですが自分は3系にしたいので変更します。
右のディレクトリマークをクリックするとラズパイに接続して中身が見れるのでデフォルトで入っている3系である/usr/bin/python3.7のインタプリタを選択します。
Sync foldersには最初に作成したマッピングしたいディレクトリを選択します。
スクリーンショット 2021-09-06 17.50.08.png
Local PathがMac側の現在のPyCharmプロジェクト Remote Pathが最初に作成したラズパイ側のディレクトリです。

Execute code using this ~ sudoはPyCharmからコマンドを実行するときにsudoをつけるかどうかというチェックボックスなので、ラズパイ側で特に何もしてなければチェックしておきましょう。
Automaticlally ~ serverはファイルの変更があった場合自動でラズパイにアップロードしてくれるモノですが設定しても次回起動時から手動に勝手に変わるのでどちらでも大丈夫です。
以下はチェックしなかった場合で進めます。

Finishを押してこんな感じになればOKです。
スクリーンショット 2021-09-06 17.56.44.png

OKを押すと初回のみラズパイ側との初回設定が始まるので待ちます。(5分くらいかかります)

3.実行

準備はできたので早速ラズパイ側にコードをアップロードして実行してみましょう。
アップロードしたいファイルを右クリックしてDeployment→Upload to... でアップロードします。
スクリーンショット 2021-09-06 17.59.49.png

PyCharmでRun

PyCharm
ssh://pi@192.168.11.50:22/usr/bin/python3.7 -u /home/pi/qiitaproject/main.py
Hi, PyCharm

Process finished with exit code 0

最後のRunでディレクトリが見つからないエラーが出る場合

今回やっていて毎回再現できるわけではないのですが、アップロードはできるけどRunしたときにうまくパスを入れてくれないエラーが出てきました。
その場合はもう一度以下のPython Interpreterからマッピングし直してみてください。
スクリーンショット 2021-09-06 18.31.59.png

これじゃ動かないよとかありましたらコメントください。

参考

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?