// SSH接続 自律化
有線Ethernetで、ロボットとの距離が縮まった
USB-C Ethernetケーブル1本で、SSH接続が完全に自動化された。再起動後もモニターもキーボードも不要になった。下のパネルを選んで詳細を確認する。
// 接続構成(LOG131確定)
MacBook Pro
192.168.2.2 (en8)
Raspberry Pi
192.168.2.1 (eth0)
mechArm 270
/dev/ttyAMA0
01
接続設定
IPアドレスと
永続化の詳細
→
02
Before / After
何が変わったか
→
03
自動ループ
paramiko実行の流れ
→
↑
パネルを選択してください
接続設定の詳細 IP / 永続化
Mac側
192.168.2.2
en8(USB-C Ethernetアダプタ)
networksetupで永続設定
Pi側
192.168.2.1
eth0
netplan + rc.localで永続化
wlan0(10.42.0.1)も継続
解決した問題
rc.local -e オプション
can0がない行でエラー → eth0 upに届かず。#!/bin/sh -e を #!/bin/sh に変更で解決
SSHコマンド
有線接続
ssh ubuntu@192.168.2.1
-i ~/.ssh/id_rsa_pi
再起動後も自動で接続可能
何が変わったか Before / After
Before(LOG130まで)
WiFi接続(ElephantRobotics_AP)必須
切断時にモニターが必要
有線キーボードが必要
マウスが必要
手動でスクリプトを実行
After(LOG131〜)
Ethernetケーブル1本
再起動後も自動接続
モニター不要
キーボード不要
SSH自動実行(paramiko)
自動ループの流れ paramiko実装
01 SFTPで pick_and_place_fixed.py をPiの ~/ に転送
02 python3 ~/pick_and_place_fixed.py をSSH経由で実行
03 終了コードを取得 → 0 = success / 非0 = fail として判定
04 10秒待機後、iPhoneカメラのROI輝度でブロック配置を判定
05 結果を r2r2r_log.csv に記録 → 最大3回リトライ