Implement acceleration-limited velocity controller: - Subscribe to /cmd_vel_raw, publish smoothed /cmd_vel - Max linear acceleration: 0.5 m/s², angular: 1.0 rad/s² - Deceleration: 0.8 m/s² (linear), 1.0 rad/s² (angular) - S-curve jerk limiting with 0.2s ramp time - E-stop immediate stop capability - Command priority system (e-stop > teleop > geofence > follow-me > nav2 > patrol) - Publish /saltybot/velocity_profile for monitoring - 50Hz update rate (configurable) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
25 lines
913 B
Python
25 lines
913 B
Python
from setuptools import setup
|
|
setup(
|
|
name="saltybot_smooth_velocity",
|
|
version="0.1.0",
|
|
packages=["saltybot_smooth_velocity"],
|
|
data_files=[
|
|
("share/ament_index/resource_index/packages", ["resource/saltybot_smooth_velocity"]),
|
|
("share/saltybot_smooth_velocity", ["package.xml"]),
|
|
("share/saltybot_smooth_velocity/launch", ["launch/smooth_velocity.launch.py"]),
|
|
("share/saltybot_smooth_velocity/config", ["config/smooth_velocity_config.yaml"]),
|
|
],
|
|
install_requires=["setuptools"],
|
|
zip_safe=True,
|
|
maintainer="sl-controls",
|
|
maintainer_email="sl-controls@saltylab.local",
|
|
description="Smooth velocity controller with S-curve jerk reduction",
|
|
license="MIT",
|
|
tests_require=["pytest"],
|
|
entry_points={
|
|
"console_scripts": [
|
|
"smooth_velocity_node = saltybot_smooth_velocity.smooth_velocity_node:main",
|
|
],
|
|
},
|
|
)
|