목록분류 전체보기 (325)
공부중
1. 자료형(Data Type)을 사용하는 이유- 값의 종류를 구분하기 위해 (문자열, 숫자, 부울, 리스트 등을 구분할 수 있어야 한다.)- 자료형에 따라 메모리양이 다르기 때문이다. - 특정 자료형에 사용할 수 없는 연산자를 구분하기 위해서이다. - 연산 결과가 어떤 종류의 값으로 나올 것인지 파악하기 위해 2. 자료형에 적용할 수 있는 연산피연산자 1피연산자 2적용가능한 연산자정수정수 + , - , *. /, %정수실수+ , -, *, /실수실수+, -, *, /문자열문자열+문자열정수* 참고 ://는 정수의 나눗셈(몫)%는 나머지 2.2 흔히 확인할 수 있는 연산 오류- 문자열끼리 뺴기 연산은 안된다. 2.3 파이썬의 기본 자료형종류자료형메모리 공간 크기표현 범위정수int제한 없음제한..
1. 저수준 프로그래밍 언어 Vs. 고수준 프로그래밍 언어 저수준 프로그래밍 언어고수준 프로그래밍 언어- 하드웨어 종속적- 어셈블리어 등..- 하드웨어 비 종속적- 파이썬, C언어, 자바 등 2. 자연어 (Natural Language) / 기계어 (Machine Language) / 프로그래밍 언어 자연어 (Natural Language)기계어 (Machine Language)프로그래밍 언어 (언어)사람이 이해할 수 있는 언어컴퓨터가 이해할 수 있는 언어- 컴퓨터가 이해할 수 있는 언어(기계어)로 번역 가능한 언어. - 자연어에 비해 단순해야 함. 3. 프로그래밍 요소 - 입력 - 출력 - 순차 : 일을 순서대로 나누어 수행하는 과정 - 조건 : 경우에 따라 구분하여 일을 처리하는 과정 (if ..
Ubuntu 22.04 1. GCC 설치 sudo apt update && sudo apt upgradesudo apt install gcc g++ clang gdb 잘 설치 되었는지 확인해보자 gcc --version 2. VS codeVS code 설치는 아래의 글을 확인하자. https://brush-up.tistory.com/267 [ 우분투 ] 크롬(chrome), Vs code 설치이전에 명령어를 사용해서 크롬과 Vs code를 설치한 방법을 정리하였었다. https://brush-up.tistory.com/241 [ 우분투 ] 크롬(chrome), Vs code 설치 및 업데이트1. chrome 설치 및 업데이트 1. 터미널 열기: 터brush-up.tistory.com ..
다음 단계를 따라 .bashrc 파일에 새로운 단축 명령어를 추가하세요:터미널 열기: 터미널을 열고 다음 명령어로 .bashrc 파일을 편집합니다.vi ~/.bashrc 2. 단축 명령어 추가:.bashrc 파일의 맨 아래로 이동하여 다음과 같은 단축 명령어를 추가합니다.alias build_and_source='colcon build --symlink-install && source install/setup.bash' 근데 저건 너무 기니까 ccbs로 사용할 것이다. 3. 변경사항 적용:변경사항을 저장하고 나와서, 새로운 설정을 적용하기 위해 터미널에서 다음 명령어를 실행합니다.source ~/.bashrc 2. 노드 실행 및 테스트빌드 및 실행 환경 설정노드를 포함하는 패키지를 colco..
1. lamda 기초lambda areguments: expression lambda : 람다 함수를 정의 areguments: 함수의 입력 인자, x, y, z와 같이 여러개를 넣을 수 있다. expression : 인사를 사용하는 표현식. 표현식의 결과가 함수의 반환 값이 된다. 람다 표현식은 이름이 없는 함수를 만든다 -> 익명 함수 예를 들어 x + y에 대한 함수를 만들면 다음과 같다. def func_plus(x, y): return x + y 람다 표현식을 쓰면 다음과 같다. lambda x, y: x + y 람다 표현식을 변수에 할당해서 사용할 수도 있지만 람다 표현식 자체를 바로 사용할 수도 있다.(lambda 입력매개변수: 출력식)(인수)(lambda x, y: x + y)(1..
ROS에서 Twist 메시지는 로봇의 운동을 표현하기 위해 사용되며, geometry_msgs 패키지에 포함되어 있습니다. 이 메시지는 로봇의 선형 및 각속도를 3차원 공간에서 지정하는 데 사용됩니다. Twist 메시지는 선형 속도(linear)와 각 속도(angular)의 두 부분으로 구성되어 있습니다. 각 부분은 Vector3 타입으로 정의된 x, y, z 축의 값을 포함합니다. Twist 메시지 구조Twist 메시지는 다음과 같은 구조를 가지고 있습니다: geometry_msgs/Vector3 linear float64 x float64 y float64 zgeometry_msgs/Vector3 angular float64 x float64 y float64 z 각 필드 설명linear..
ROS 2를 사용하여 원격으로 로봇을 제어하기 위해 토픽을 사용하는 방법 기존에는 아래의 코드를 사용했지만 키보드를 사용하기 위해서는 루트 권한이 필요하다고 함. import rclpyfrom rclpy.node import Nodefrom geometry_msgs.msg import Twistimport keyboard # 키보드 라이브러리 임포트class RobotDriver(Node): def __init__(self): super().__init__('robot_driver') self.publisher = self.create_publisher(Twist, 'cmd_vel', 10) self.speed = 0.0 self.angle = 0..
시뮬레이션 환경에서 구동한 경우에 대해서 다룸 export TURTLEBOT3_MODEL=burger# ros2 launch turtlebot3_bringup robot.launch.py# 터미널 1 - 시뮬레이션 환경 선택(택 1)ros2 launch turtlebot3_gazebo empty_world.launch.py# ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py# ros2 launch turtlebot3_gazebo turtlebot3_house.launch.py# 터미널 2ros2 launch turtlebot3_cartographer cartographer.launch.py# 터미널 3 - 원격 조작ros2 run turtlebot3_t..