hotch-potch, Note to self

いろいろ作業記録

nvidia drivers for Linux, Note to self

1.はじめに

ROS開発において、Ununtu Linux & GPU & Dockerを使った環境を準備するときに、 ハマった内容について、成否関わらずメモします。

OSバージョン

$ cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.4 LTS"

$ uname -a
Linux devros 6.5.0-27-generic #28~22.04.1-Ubuntu 
  • 1.はじめに
  • 2.ドライバーのインストール
    • 参考資料
    • 作業例
  • 3.DockerのGPU対応
    • 参考資料
    • インストール
    • docker起動
    • やっちゃダメな話・snap版DockerはGPU対応できません
    • お試しが起動できないとき
  • 9.そのほかの覚え書き
    • 便利なコマンド
続きを読む

Elixirでステートマシンをつくる ~ gen_statem

1.はじめに

産業機械をPLCなどを使って制御する際に、 ラダーやST言語などを使って、シーケンスプログラムを書きます。

Elixir言語でシーケンスプログラム=ステートマシンを実現したい場合に、何か便利な仕組みがないか探していたところ、erlanggen_statemという仕組みを見つけました。

まずはgen_statemで、どんなことができるかを試行してみました。

  • 1.はじめに
  • 2.まずはお手本~ATMでお金を引き出す装置の例
    • (1)考え方
    • (2)ソースコードの準備
    • (3)サンプルの試行
      • 正常な手順
      • 異常な手順
  • 3.読み解きと理解
    • (1)現在のステートを保持する仕組み
    • (2)コールバック関数名が、現在のステートと同じ名前になる
      • API側の実装の抜粋
      • コールバック関数の実装の抜粋
  • 4.先ほどのコードを、非同期castに書き換え
  • 5.特定の処理にタイムアウトを加える
  • A.参考資料
続きを読む

Elixirでロボット「カチャカ」とgRPC通信

1.はじめに

 自律移動ロボット「カチャカ」との通信にgRPCが使えるので、Elixirからの通信を試してみました。

kachaka.life

 今のところ、カチャカのステータスを取得するところまでできました。運転命令を送るところができていないので、次回の課題です。

  • 1.はじめに
  • 2.準備
    • (1)protobuf-elixirをインストール
  • 2.サンプルコード
  • 3.実行例
  • 4.参考
続きを読む

ロボット「カチャカ」をリモートPCのPythonから操作

1.はじめに

 自律移動ロボット「カチャカ」に触る機会*1があったので、 カチャカと同じネットワークにあるLinux PC (Ubuntu 22.04) のPythonから、カチャカに指令を出す手順をまとめました。

kachaka.life

  • 1.はじめに
  • 2.プログラムの準備
    • (1)カチャカ本体の設定
    • (2)Linux PCの準備
  • 3.プログラムの試行
    • (1)Pythonからカチャカに指令できること
    • (2)しゃべらせてみる
    • (2)登録した場所に移動する
    • (3)家具を運んで片付ける
  • 参考資料
続きを読む

VSCode を 64bit版Raspberry Pi OS, Ubuntu Linux にインストール

はじめに

Raspberry Pi OSや、Raspberry PiUbuntuなどARM64版のOSで、VSCodeをインストールします。

インストール

ダウンロードツールとしてcurlをインストールします。

$ sudo apt install curl

GPGキーをダウンロードします。

$ cd ~/Download

$ curl -L https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /usr/share/keyrings/microsoft-archive-keyring.gpg >/dev/null

VSCodeリポジトリを追加します。 アーキテクチャarm64とします。

$ echo "deb [arch=arn64 signed-by=/usr/share/keyrings/microsoft-archive-keyring.gpg] https://packages.microsoft.com/repos/vscode stable main" | sudo tee  /etc/apt/sources.list.d/vscode.list

VSCodeをインストールします。

$ sudo apt update && sudo apt install code

パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
  code
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
88.4 MB のアーカイブを取得する必要があります。
この操作後に追加で 377 MB のディスク容量が消費されます。
取得:1 https://packages.microsoft.com/repos/vscode stable/main arm64 code arm64 1.82.0-1694038208 [88.4 MB]
88.4 MB を 14秒 で取得しました (6,110 kB/s)
・・・
desktop-file-utils (0.24-1ubuntu3) のトリガを処理しています ...

参考