ユーザ用ツール

サイト用ツール


it技術:ラズベリーパイ

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
it技術:ラズベリーパイ [2022/03/03 11:31] – [USBメモリ内のファイルを実行可能にする] yajuadminit技術:ラズベリーパイ [2022/04/11 18:17] (現在) – [Pyinstaller] yajuadmin
行 23: 行 23:
   * armhf … ARMv7 (32bit) までのプロセッサに対応   * armhf … ARMv7 (32bit) までのプロセッサに対応
   * arm64 … ARMv8 (64bit) からのプロセッサに対応   * arm64 … ARMv8 (64bit) からのプロセッサに対応
 +
 +32-bit OS と 64-bit OSの両方あるが、今回の実機はARMv7 (32bit)を使用している。\\
 +[[https://coconala.com/blogs/1638666/131490|Raspberry Pi 32-bit OS と 64-bit OS の違いは?]]
 ==== USBメモリのアクセス ==== ==== USBメモリのアクセス ====
 ラズパイ上では自動で認識してマウントしてくれる。 ラズパイ上では自動で認識してマウントしてくれる。
行 52: 行 55:
 <code ini usbmount.conf> <code ini usbmount.conf>
 MOUNTOPTIONS="sync,nodev,noatime,nodiratime" ←noexecを削除 MOUNTOPTIONS="sync,nodev,noatime,nodiratime" ←noexecを削除
-FS_MOUNTOPTIONS="-fstype=vfat,uid=pi,gid=pi" ←「""」内を追加+FS_MOUNTOPTIONS="-fstype=ntfs,uid=pi,gid=pi" ←「""」内を追加
 </code> </code>
  
行 546: 行 549:
 } }
 </code> </code>
 +
 +===== Python =====
 +C#版のインターフェイスではメモリ2GByteのラズパイでは5秒かかるなど動作が遅いこともあり、Pythonで作成しPyInstallerで実行ファイルを作成する方法を試す。
 +
 +ラズパイの実機は外部ネットワークに接続できないため、ラズパイ(raspi3)のエミュレーター環境で行う。
 +
 +==== Python3に切り替え ====
 +ラズパイのPythonのバージョンがデフォルトが2系になっているで、3系をデフォルトにする。
 +<code bash>
 +cd /usr/bin
 +
 +sudo unlink python
 +sudo ln -s python3 python
 +</code>
 +
 +[[https://python-academia.com/raspberry-pi-python-version/|ラズパイ(Raspberry Pi)のpythonバージョン確認、python3への変更方法。]]
 +
 +==== 仮想環境作成 ====
 +Python3ならデフォルトで仮想環境作成の「venv」が備わっている。
 +
 +<code bash>
 +pyhton -m venv {環境名}
 +# 例
 +pyhton -m venv cnvnet
 +</code>
 +
 +=== 仮想環境の有効化 ===
 +
 +<code bash>
 +source {環境名}/bin/activate
 +# 例
 +source cnvnet/bin/activate
 +</code>
 +
 +コマンドラインの先頭に(環境名)が追加された状態になります。
 +
 +<code bash>
 +({環境名}) pi@raspberrypi:~/ $
 +# 例
 +(cnvnet) pi@raspberrypi:~/ $
 +</code>
 +
 +==== Pyinstaller ====
 +=== Pyinstallerのインストール ===
 +仮想環境にPyinstallerをインストールする
 +
 +<code bash>
 +(cnvnet) pi@raspberrypi:~/ $ pip install pyinstaller
 +
 +(cnvnet) pi@raspberrypi:~/ $ pyinstaller -v
 +4.10
 +</code>
 +
 +=== テスト ===
 +<code bash>
 +(cnvnet) pi@raspberrypi:~/ $ mkdir test
 +(cnvnet) pi@raspberrypi:~/ $ cd test
 +</code>
 +
 +<code python test.py>
 +(cnvnet) pi@raspberrypi:~test/ $ nano test.py
 +print("Hello cnvnet")
 +</code>
 +
 +<code bash>
 +(cnvnet) pi@raspberrypi:~test/ $ pyinstaller test.py
 +</code>
 +[[https://ideal-user-interface.hatenablog.com/entry/20110304/1299232964|Pythonスクリプトを実行形式のファイルにまとめる(2)]]
 +
 +テストフォルダ配下にdistフォルダが作成され実行ファイルの「test」ファイルができる。\\
 +実行すると"Hello cnvnet"が表示される。
 +<code bash>
 +(cnvnet) pi@raspberrypi:~/ $ ./dist/test/test
 +Hello cnvnet
 +</code>
 +
 +==== Windows側にファイル転送 ====
 +Windows側に「WinSCP」をインストールして、「WinSCP」を使用すればGUI上でファイル転送ができる。\\
 +https://forest.watch.impress.co.jp/library/software/winscp/
 +
 +==== 速度検証 ====
 +dotNET版の半分程度の速度改善が見られた。
 +
 +^種類^1回目^2回目^3回目^4回目^5回目^
 +^dotNET版|4440ms|3130ms|3120ms|3110ms|3130ms|
 +^Python版|3690ms|1670ms|1630ms|1620ms|1620ms|
it技術/ラズベリーパイ.1646274675.txt.gz · 最終更新: 2022/03/03 11:31 by yajuadmin