6edb8d39ab
在开始'设备契约层 + 目录重构 + 通止规装配'改造之前,先钉住当前可运行状态, 使后续任何删除/重构都可回退。 本基线包含: - 现有 ROS 2 工作区全部源码(arm_application / arm_control / arm_bringup 等) - 官方 flexiv_ros2 栈(含 flexiv_hardware / flexiv_controllers 等符号链接) - 设备契约层 src/arm_interfaces(新增,46 项单测通过) - devices/ 设备选型与品牌清单(新增) - scripts/gen_site_example.py 与由它生成的 config/site.example.yaml 按 .gitignore 排除:build/ / install/ / log/ / config/site.yaml / 模型权重二进制。
35 lines
1.1 KiB
Bash
Executable File
35 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
||
# Orisys visuo-tactile (finger cameras, not D405). Config: site.yaml tactile:
|
||
#
|
||
# bash ~/ros2/scripts/run_tactile.sh --cli
|
||
# bash ~/ros2/scripts/run_tactile.sh # ROS node /tactile/left|right/status
|
||
|
||
set -eo pipefail
|
||
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||
CLI=0
|
||
|
||
while [[ $# -gt 0 ]]; do
|
||
case "$1" in
|
||
--cli) CLI=1; shift ;;
|
||
-h|--help) sed -n '2,10p' "$0"; exit 0 ;;
|
||
*) echo "Unknown: $1" >&2; exit 1 ;;
|
||
esac
|
||
done
|
||
|
||
# shellcheck disable=SC1091
|
||
source "${ROOT}/scripts/lib/load_site_config.sh"
|
||
# shellcheck disable=SC1091
|
||
source "${ROOT}/scripts/env.sh"
|
||
|
||
echo "=== tactile backend=${SITE_TACTILE_BACKEND:-orisys} L=${SITE_TACTILE_LEFT:-0} R=${SITE_TACTILE_RIGHT:-2} cfg=${SITE_TACTILE_CONFIG:-dd03} ==="
|
||
|
||
if [[ "${CLI}" -eq 1 ]]; then
|
||
exec python3 -m arm_application.tactile_cli
|
||
fi
|
||
|
||
pkill -f 'arm_application/tactile_node.py' 2>/dev/null || true
|
||
pkill -f 'lib/arm_application/tactile' 2>/dev/null || true
|
||
pkill orisys_tac_w 2>/dev/null || true # 清理孤儿 worker(占死 /dev/video*)
|
||
sleep 0.2
|
||
exec ros2 launch arm_application tactile.launch.py
|