목록dev (29)
To Be Develop
파일 무결성 검사 자동화: md5sum을 사용하여 파일 무결성 검사Overview파일 무결성 검사는 파일이나 데이터가 손상되거나 변경되지 않았는지를 확인하기 위한 중요한 과정입니다. md5sum은 이러한 무결성 검사를 자동화하는 데 매우 유용한 도구입니다. 이 글에서는 md5sum을 사용하여 파일 무결성을 검사하는 방법과 그 과정에서 발생할 수 있는 어려움 및 해결 방법에 대해 자세히 설명하겠습니다.md5sum을 사용한 파일 무결성 검사md5sum의 기본 개념md5sum은 파일의 MD5 해시 값을 계산하여 파일의 무결성을 검증하는 명령어입니다. MD5는 주어진 파일에서 고유한 128비트 해시 값을 생성하는 알고리즘으로, 파일이 변경되었는지 여부를 확인하는 데 사용됩니다.사용법md5sum을 사용하여 파일의..
자동화된 개발 환경 설정: Rundeck과 Vagrant 연동Overview소프트웨어 개발 과정에서 개발 환경 설정은 매우 중요합니다. Rundeck과 Vagrant을 결합하여 자동화된 방식으로 개발 환경을 설정하는 것은 효율적이고 일관된 환경을 유지하는 데 도움이 됩니다. 이 글에서는 Rundeck을 사용하여 Vagrant을 통해 가상화된 환경을 관리하고, 이를 통해 개발 팀이 신속하게 일관된 개발 환경을 구축할 수 있는 방법에 대해 자세히 설명하겠습니다.구성 요소Rundeck 소개Rundeck은 오픈 소스 자동화 도구로, 작업 스케줄링, 실행 및 관리를 중앙에서 수행할 수 있는 기능을 제공합니다. 주로 IT 운영에서 사용되지만, 개발 환경 설정에서도 매우 유용하게 활용될 수 있습니다.예를 들어, Ru..

세미콜론은 문장의 끝을 나타내는 기호로, 거의 모든 문장의 끝에 사용됩니다. 콜론은 초기화 목록과 범위 지정 연산자로 사용되며, 클래스의 생성자에서 초기화 목록을 지정하거나 클래스나 네임스페이스의 멤버에 접근할 때 사용됩니다. 이중 콜론은 범위 지정 연산자로 클래스나 네임스페이스의 정적 멤버에 접근할 때 사용됩니다. 이러한 기호들은 C++에서 프로그램의 의미를 명확하게 표현하는 데 중요한 역할을 합니다. 1. 세미콜론 (;)의 의미 세미콜론은 C++과 같은 많은 프로그래밍 언어에서 문장의 끝을 나타내는 역할을 합니다. C++에서는 거의 모든 문장의 끝에 세미콜론을 붙여야 합니다. 이는 컴파일러에게 문장의 끝이 어디인지 알려주는 역할을 합니다. 세미콜론을 빼먹으면 컴파일 오류가 발생할 수 있습니다. 예를 ..

ArUco Markers의 감지에 대한 이해 ArUco Markers는 컴퓨터 비전과 로봇 비전에서 많이 사용되는 인식 가능한 패턴입니다. 이러한 마커들은 고유한 시각적 패턴을 가지고 있어 로봇이나 카메라 등에서 사용되는데, 주로 위치 추적이나 객체 식별에 활용됩니다. 이 블로그 글에서는 ArUco Markers의 감지에 대해 자세히 설명하겠습니다. 1. ArUco Markers가 무엇인가요? ArUco Markers는 ArUco 라이브러리에 의해 생성되는 시각적 패턴입니다. 이러한 마커는 블랙 앤드 화이트 패턴으로 구성되어 있으며, 일련의 고유한 패턴이 있습니다. 이러한 패턴은 카메라 이미지에서 쉽게 감지할 수 있으며, 각 마커는 고유한 식별자를 가지고 있습니다. 2. ArUco Markers의 활용 ..

ROS (로봇 운영체제)를 완전히 지우기 위해서는 다음과 같은 단계를 따를 수 있습니다. 아래의 지침은 일반적인 ROS 설치와 관련된 파일 및 디렉터리를 제거하는 방법을 안내합니다. 이 과정을 수행하기 전에 데이터를 백업하고, 신중하게 진행해야 합니다. ROS 패키지 및 관련 도구를 제거합니다. 터미널을 열고 다음 명령을 실행합니다. sudo apt-get remove ros-* sudo apt-get purge ros-* 설치된 ROS 패키지와 관련 파일들을 삭제합니다. sudo apt-get autoremove ROS 설치 디렉터리를 삭제합니다. 기본적으로 /opt/ros/에 설치됩니다. 아래의 명령으로 제거할 수 있습니다. sudo rm -rf /opt/ros/ ROS의 설정 파일과 캐시 파일을 삭..

에러 메세지: RLException: [rrbot_rviz.launch] is neither a launch file in package [rrbot_description] nor is [rrbot_description] a launch file name The traceback for the exception was written to the log file 에러 발생 상황: $ roslaunch rrbot_description rrbot_rviz.launch 위 명령어를 입력하였더니 에러가 발생하였다. https://classic.gazebosim.org/tutorials?tut=ros_urdf&cat=connect_ros Gazebo : Tutorial : URDF in Gazebo Tutorial..

에러 메세지: E: Unable to locate package ros-noetic-gazebo9 or E: Unable to locate package ros-noetic-gazebo11 상황: ROS 에서 가제보를 사용하기 위해서 연동을 시켜주려고 가이드를 따라 설치를 하려고 하는데 에러가 발생했다. sudo apt install ros-noetic-gazebo9 sudo apt install ros-noetic-gazebo11 내 ROS 버전은 noetic 이라서 버전 충돌은 아닌데 도대체 왜 패키지에 없다는 거지 ...?? 해결: 완전한 해결방법은 아니지만 이런 저런 시도를 다 해봤다. 일반적으로 ROS 연동을 위한 것이 아니라면 그냥 가제보를 설치하고자 하는 명령어를 사용하면 된다. https:..

발행-구독(Publish-Subscribe)은 소프트웨어 아키텍처에서 많이 사용되는 디자인 패턴 중 하나로, 여러 컴포넌트 간의 느슨한 결합을 가능하게 합니다. ROS에서도 발행-구독 패턴이 중요한 역할을 합니다. 발행-구독 패턴은 데이터의 생산자(발행자, Publisher)와 데이터의 소비자(구독자, Subscriber)를 분리하여 상호작용할 수 있도록 합니다. 발행자는 데이터를 발행하고, 여러 구독자가 해당 데이터를 동시에 수신할 수 있습니다. 이러한 방식으로 데이터의 생산과 소비가 분리되어 각 컴포넌트를 독립적으로 유지할 수 있습니다. ROS에서 발행-구독은 토픽(Topic)을 통해 이루어집니다. 토픽은 메시지(Message)의 흐름을 정의하고, 여러 발행자와 구독자 간의 통신을 가능하게 합니다. ..