Package: triorb_os_setting

OS制御、環境設定API

有線ネットワーク設定取得

  • Topic:(prefix)/get/os/setting/network/wire
  • Node:(prefix)_os_setting
  • Type:triorb_static_interface/srv/SettingIPv4
  • Usage:
    triorb@orin-nx-XXX:~/$ ros2 service call /get/os/setting/network/wire triorb_static_interface/srv/SettingIPv4
    ...
    response:
    triorb_static_interface.srv.SettingIPv4_Response(result=[triorb_static_interface.msg.SettingIPv4(device='eth0', method='auto', adress=[], mask=0, gateway=[], mac=[72, 176, 45, 216, 224, 9])])
    

無線ネットワーク設定取得

  • Topic:(prefix)/get/os/setting/network/wifi
  • Node:(prefix)_os_setting
  • Type:triorb_static_interface/srv/SettingIPv4
  • Usage:
    triorb@orin-nx-XXX:~/$ ros2 service call /get/os/setting/network/wifi triorb_static_interface/srv/SettingIPv4
    ...
    response:
    triorb_static_interface.srv.SettingIPv4_Response(result=[triorb_static_interface.msg.SettingIPv4(device='wlan0', method='auto', adress=[192, 168, 21, 25], mask=24, gateway=[192, 168, 21, 1], mac=[212, 216, 83, 169, 227, 214])])
    

接続可能なアクセスポイント一覧取得

  • Topic:(prefix)/get/os/setting/network/ssid
  • Node:(prefix)_os_setting
  • Type:triorb_static_interface/srv/SettingSSID
  • Usage:
    triorb@orin-nx-XXX:~/$ ros2 service call /get/os/setting/network/ssid triorb_static_interface/srv/SettingSSID 
    ...
    response:
    triorb_static_interface.srv.SettingSSID_Response(result=[triorb_static_interface.msg.SettingSSID(ssid='TriOrb-wifi', passphrase='', security='WPA2/WPA3', signal=100), triorb_static_interface.msg.SettingSSID(ssid='KIC-wifi', passphrase='', security='WPA2/WPA3', signal=90), …])
    

シャットダウン・再起動

  • Topic:(prefix)/os/shutdown
  • Node:(prefix)_os_setting
  • Type:std_msgs/String
  • Note: 即時実行
  • Usage:
    triorb@orin-nx-XXX:~/$ ros2 topic pub /os/shutdown std_msgs/String '{data: reboot}'
    

ROS環境変数取得

  • Topic:(prefix)/get/os/setting/ros
  • Node:(prefix)_os_setting
  • Type:triorb_static_interface/srv/SettingROS
  • Usage:
    triorb@orin-nx-XXX:~/$ ros2 service call /get/os/setting/ros triorb_static_interface/srv/SettingROS
    ...
    response:
    triorb_static_interface.srv.SettingROS_Response(result=triorb_static_interface.msg.SettingROS(ros_localhost_only=True, ros_domain_id=0, ros_prefix=''))
    

ROS環境変数設定

  • Topic:(prefix)/get/os/setting/ros
  • Node:(prefix)_os_setting
  • Type:triorb_static_interface/msg/SettingROS
  • Note: 再起動後に有効化
  • Usage:
    triorb@orin-nx-XXX:~/$ ros2 topic pub -1 /os/setting/ros triorb_static_interface/msg/SettingROS '{ros_localhost_only: False, ros_domain_id: 33, ros_prefix: test}'
    publisher: beginning loop
    publishing #1: triorb_static_interface.msg.SettingROS(ros_localhost_only=False, ros_domain_id=33, ros_prefix='test')
    

アクセスポイントへ接続

  • Topic:(prefix)/os/setting/network/ssid
  • Node:(prefix)_os_setting
  • Type:triorb_static_interface/msg/SettingSSID
  • Note: 即時反映
  • Usage:
    triorb@orin-nx-XXX:~/$ ros2 topic pub -1 /os/setting/network/ssid triorb_static_interface/msg/SettingSSID '{ssid: TriOrb-wifi, passphrase: password}'
    triorb@orin-nx-XXX:~/$ nmcli -f ALL dev wifi | grep yes # 確認
    

有線ネットワークの設定を変更

  • Topic:(prefix)/os/setting/network/wire
  • Node:(prefix)_os_setting
  • Type:triorb_static_interface/msg/SettingIPv4
  • Note: 即時反映
  • Usage:
    triorb@orin-nx-XXX:~/$ ros2 topic pub -1 /os/setting/network/wire triorb_static_interface/msg/SettingIPv4 '{method: manual, adress: [192,168,21,155], mask: 24, gateway: [192,168,21,1]}' # 手動設定
    triorb@orin-nx-XXX:~/$ ros2 topic pub -1 /os/setting/network/wire triorb_static_interface/msg/SettingIPv4 '{method: auto}' # 自動取得
    triorb@orin-nx-XXX:~/$ ros2 topic pub -1 /os/setting/network/wire triorb_static_interface/msg/SettingIPv4 '{method: shared}' # DHCPサーバー化
    

Wi-Fiアクセスポイントを構築する

SSID設定をpublish後に無線ネットワークの設定を’{method: shared}’として設定することでアクセスポイントの構築が出来る

  • Note: 即時反映
  • Usage:
    triorb@orin-nx-XXX:~/$ ros2 topic pub -1 /os/setting/network/ssid triorb_static_interface/msg/SettingSSID '{ssid: TriOrb-AMR, passphrase: triorb_base}' # SSIDを設定する
    triorb@orin-nx-XXX:~/$ ros2 topic pub -1 /os/setting/network/wifi triorb_static_interface/msg/SettingIPv4 '{method: shared}' # APを立てる
    triorb@orin-nx-XXX:~/$ ros2 topic pub -1 /os/setting/network/ssid triorb_static_interface/msg/SettingSSID '{ssid: TriOrb-wifi, passphrase: password}' # 元に戻す(数分かかる)
    

OS制御、環境設定Types