Skip to content
Commits on Source (3)
/**:
ros__parameters:
camera_topics: ["camera_front/compressed"]
dir: "./photos_for_dataset"
\ No newline at end of file
...@@ -98,8 +98,8 @@ def main(): ...@@ -98,8 +98,8 @@ def main():
add_state(GarageSelectorState(c), "select_garage", {"red": "move_to_red", "green": "move_to_green", "yellow": "move_to_yellow"}) add_state(GarageSelectorState(c), "select_garage", {"red": "move_to_red", "green": "move_to_green", "yellow": "move_to_yellow"})
add_con({"move_left": TwistMotionState(c, 1, 1), "timeout": WaitState(c, 5)}, c, "move_to_red", "start") add_con({"move_left": TwistMotionState(c, 1, 1), "timeout": WaitState(c, 5)}, c, "move_to_red", "start")
add_con({"move_left": TwistMotionState(c, 1, 0), "timeout": WaitState(c, 5)}, c, "move_to_green", "start") add_con({"move_forward": TwistMotionState(c, 1, 0), "timeout": WaitState(c, 5)}, c, "move_to_green", "start")
add_con({"move_left": TwistMotionState(c, 1, -1), "timeout": WaitState(c, 5)}, c, "move_to_yellow", "start") add_con({"move_right": TwistMotionState(c, 1, -1), "timeout": WaitState(c, 5)}, c, "move_to_yellow", "start")
# ВАША МИССИЯ ЗДЕСЬ # ВАША МИССИЯ ЗДЕСЬ
......
...@@ -65,7 +65,7 @@ class CVMasking(Node): ...@@ -65,7 +65,7 @@ class CVMasking(Node):
self.__show_mask() self.__show_mask()
def __show_mask(self) -> None: def __show_mask(self) -> None:
self.info(f'lower_limit: {self.__lower_limit}\thigher_limit: {[self.__higher_limit]}') self.info(f'lower_limit: {list(self.__lower_limit)}\thigher_limit: {list(self.__higher_limit)}')
def update(self) -> None: # fixed rate def update(self) -> None: # fixed rate
if self.__frame is None: return if self.__frame is None: return
...@@ -103,12 +103,19 @@ class CVMasking(Node): ...@@ -103,12 +103,19 @@ class CVMasking(Node):
def main(args=None): def main(args=None):
rclpy.init(args=args) rclpy.init()
opencv = CVMasking() try:
rclpy.spin(opencv) node = CVMasking()
opencv.destroy_node() rclpy.spin(node)
rclpy.shutdown() except KeyboardInterrupt: # предотвращает появление ошибок при завершении ROS 2 нод сочетанием Ctrl+C
pass
finally:
node.destroy_node()
try:
rclpy.shutdown()
except Exception: # предотвращает ошибки, если ROS 2 ещё не успел запуститься
pass
if __name__ == '__main__': if __name__ == '__main__':
main() main()
...@@ -43,7 +43,7 @@ setup( ...@@ -43,7 +43,7 @@ setup(
# Ноды для настройки параметров # Ноды для настройки параметров
f"cv_masking = {package_name}.tools.CVMasking:main", f"cv_masking = {package_name}.tools.CVMasking:main",
f"multi_photocamera = {package_name}.tools.MultiPhotocamera:main", f"multi_photocamera = {package_name}.tools.Multiphotocamera:main",
# Другие ноды # Другие ноды
f"my_node_1 = {package_name}.my_nodes.MyNode1:main", f"my_node_1 = {package_name}.my_nodes.MyNode1:main",
......