전체 글

안녕하세요! 방문해주셔서 감사합니다!
개발

JetsNano 초기 설정

1. 준비물 JetsNano Micro SD Card 혹은 USB (이미지 설치) 노트북 혹은 컴퓨터 (이미지 설치 및 원격 접속) 모니터, 마우스, 키보드 (초기 설정) 2. 이미지 굽기 1. 이미지 다운로드 yahboom 홈페이지에서 Learn을 클릭한 후, Jetson > Jetson board > Jetson Nano 4GB (B01/SUB)로 접속한다. (바로가기 링크) Download의 SUB Udisk official system file을 클릭하여, jetson-nano-jp46-udisk.zip 파일을 다운받는다. (바로가기 링크) 다운 받은 이후에 압축을 해제한다. 다운로드 파일은 16.8GB, 압축해제 이후는 57.3GB로 상당한 시간이 소요된다. 2. Etcher 프로그램 실행 ba..

개발

Chart.js Realtime 적용하기

1. 패키지 설치 호환성 문제로 다음에 지정된 버전의 라이브러리를 설치한다. npm install chart.js@^3.9.1 react-chartjs-2@^4.3.1 luxon chartjs-adapter-luxon chartjs-plugin-streaming --save 2. 코드 작성 Chart.register 를 통해서 필요한 변수는 모두 불러와야 한다. 아래 코드에서는 data에 빈 배열을 넣고, onRefresh 함수 내에서 데이터를 추가해주었다. 이와 달리 state 값을 따로 할당하고, 특정 이벤트에 해당 값을 변경하도록 개발해도 괜찮다. import { CategoryScale, Chart, Legend, LinearScale, LineElement, PointElement, Title,..

개발

Electron에서 명령어 실행하기

💡 electron-react-boilerplate 템플릿 내에서 명령어를 실행하는 방법에 대해서 서술하였다. 기존 템플릿에서는 뷰 코드에서 node.js의 시스템 명령어를 즉시 사용할 수 있었으나, 최근에 IPC를 통해서 시스템 명령어를 실행할 수 있게 변경해놓아 정리한다. 1. Electron(React, Typescript) 프로젝트 생성 git clone --depth 1 --branch main https://github.com/electron-react-boilerplate/electron-react-boilerplate.git {PROJECT_NAME} cd {PROJECT_NAME} npm install npm start 2. nodeIntegration 활성화한다. BrowserWindo..

ROS

ROS2 YDLidar 테스트

구동 환경 WSL2에서 USB 연결을 하기 위해서, 별도의 설정이 필요하다. 📓WSL2 설치 및 기본 설정 (Windows11) Windows 11 WSL2 Ubuntu 20.04 ROS2 Foxy YDLidar X4 설치 원하는 이름으로 wordspace 생성 이후 src 폴더를 만들고, 그 src 폴더에 https://github.com/YDLIDAR/ydlidar_ros2_driver를 받는다. {workspace}/src/ydlidar_ros2_driver 식으로 경로가 구성된다. launch 스크립트 사용을 위해서 필요한 파라미터를 설정해준다. ${workspace}/src/ydlidar_ros2_driver/params/ydlidar.yaml를 수정한다. ydlidar_ros2_driver_n..

개발

라즈베리파이4 GPIO 제어

Digital Input/Ouput import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BCM) def setup_digital(pin): GPIO.setup(pin, GPIO.OUT) def digital_on(pin): print("digital_on", pin) GPIO.output(pin, 1) def digital_off(pin): print("digital_off", pin) GPIO.output(pin, 0) def get_digital_staus(pin): return GPIO.input(pin) Analog Input import spidev import time sample = 10 sampleValue = [] spi = spidev.Spi..

ROS

ROS2 설치해보기 (Ubuntu)

ROS2란? Robot Operating System의 약자로, 응용 프로그램 개발을 위한 운영체제와 유사한 플랫폼이다. 원래 로보틱스를 연구할 목적으로 설계되었으나, 산업 및 상업용 로보틱스 분야에서 사용하고 있다. 다른 운영체제나 이기종 디바이스간의 통신에서 데이터를 주고 받을 수 있는 장점이 있다. ROS 버전에서 ROS2 버전이 개발되었으며, ROS2가 새로운 로보틱스 분야의 표준이 되고 있다. ROS에서 마지막으로 배포된 Noetic는 2025년에 지원이 완료된다. ROS와 ROS2의 차이점은 많이 있지만, 대표적으로 ROS2부터는 리눅스 이외의 윈도우와 맥에서 지원이 되고, Python3을 지원하고 있다는 점이다. 메타 운영체제 중의 하나로, 전통적인 운영체제라고는 할 수 없다. 메타 운영체제..

개발

WSL2 설치 및 기본 설정 (Windows11)

💡 윈도우에서 WSL를 통해서 리눅스를 자유롭게 사용할 수 있다. 최신 WSL에서는 GUI 프로그램 및 USB 연결까지 가능하므로, 가상 머신 설치보다 WSL 설치를 권장한다. 설치 방법부터 기본 설정과 명령어에 대해서 알아보도록 한다. 설치 방법 BIOS에서 virtuzlization을 활성화한다. 버전이 Windows 10 버전 2004 이상 혹은 Windows 11을 실행해야 한다. Linux용 Windows 하위 시스템을 활성화하여야 한다. 제어판에서 프로그램 > Windows 기능 켜기/끄기를 통해서 활성화할 수 있다. 관리자용 Powershell을 실행하여 다음의 명령어로 설치할 수 있다. dism.exe /online /enable-feature /featurename:Microsoft-Wi..

ROS

Gazebo SLAM 실행해보기 (WSL2)

💡 omo_r1mini의 원격 로봇을 활용하여 SLAM을 테스트하여 본다. SLAM이란? Simultaneous localization and mapping의 약자로, 로봇이 스스로 위치 추정(localization)과 주변 환경에 대한 지도 작성(Mapping)을 동시에 하는 기술이다. 로봇이 다양한 센서를 통해서 주변 공간을 지도화시킨 후, 완성된 지도와 센서로 얻어 낸 공간 데이터를 활용하여 스스로 로봇의 이동 경로를 결정하는 방법이다. SLAM에 필요한 센서 정보와 로봇의 위치 정보인 오도메트리 정보가 필요하다. omo_r1mini 패키지 설치하기 omo_r1mini의 read.md를 통해서 관련 패키지를 설치할 수 있다. omorobot 공식 홈페이지에서도 설치 방법을 안내해주고 있다. 설치 이..

티스토리

코드블럭 클립보드 복사 버튼 추가하기

Clipboard.js를 활용하여 코드 블럭에 복사하기 버튼을 추가하고자 한다 사이트 설정 티스토리 설정에서 꾸미기 > 스킨 편집을 클릭한다 html 편집 버튼을 클릭해서, html 편집 화면으로 진입한다 HTML 메뉴에서 앞에 Clipbaord.js CDN 스크립트를 추가한다 앞에 다음의 코드를 추가한다 CSS 메뉴에서 다음의 코드를 추가한다 pre {text-align: start; position: relative; overflow: visible; } pre .copy-button { opacity: 0; position: absolute; right: 2px; top: 4px; padding: 2px 6px; color: #aaa; background: rgba(0,0,0,.6); border-..

티스토리

티스토리에 highlight.js 적용해보기

코드의 가독성을 높이기 위해, highlight.js를 이용하여 코드 강조 및 라인 수 활성화 기능을 설정한다 기본 플러그인 비활성화 티스토리 사이트 설정의 플러그인에서 코드 문법 강조를 비활성화한다 (스타일 충돌 방지) highlight 데모 살펴보기 아래의 링크로 접속한 뒤, 맘에 드는 컬러 테마를 선택한다. highlight.js demo highlightjs.org 폰트 정하기 아래의 링크로 접속한 뒤, 코드 스타일에 적용할 폰트를 탐색해본다 (Ubuntu mono, IBM Plex Mono, Nanum Gothic Coding 추천) Google Fonts Making the web more beautiful, fast, and open through great typography fonts.g..

유용한 정보

라즈베리파이 OS

라즈베리파이에서 사용할 수 있는 OS는 다양하다. 그 중에서도 많이 사용하거나 권장할 만한 라즈베리파이용 OS를 소개하고자 한다. 1. Raspbian (Raspberry Pi OS) 특징 라즈베리파이에서 가장 많이 사용하고, 기본적으로 권장되는 OS이다. 다만 현시점에서는 ROS2 설치가 지원되지 않아서 우분투를 설치하는 경우가 있다. 라즈베리파이에 최적화되어 설계되어 있고, raspi-config를 통해서 라즈베리파이를 관리할 수 있다. 다른 OS와 달리 구형 라즈베리파이에서도 원활히 작동이 된다. 설치 방법 라즈베리파이 OS는 상당히 편리하게 설치할 수 있다. 과거에는 라즈베리파이 사이트에서 이미지를 제공하여, 별도의 프로그램으로 SD카드에 이미지를 구워야만 하였다. 현재는 단순히 공식 홈페이지에서..

유용한 정보

AI ROBOT LIST (RC카)

Turtle Bot3 ROS의 공식 레퍼런스 로봇으로서, 로보티즈에서 개발하였다.라즈베리파이, 라이더센서 등이 장착되어 있다.Buger와 Waffle 버전으로 나눠지는데, 가격과 성능에서 차이가 난다.터틀봇3 버거 RPi4 2GB는 현재 786,00원으로 판매된다.터틀봇3 와플파이 RPi4 2GB는 현재 1,827,100원으로 판매된다. OMOROBOT R1 MINI젯슨 나노와 YD Lidar, Raspberry PI 카메라가 장착되어 있다.제조사에서 ROS2용 패키지를 제공하고 있다.R1 mini Basic와 R1 mini Pro로 나누어 진다.R1 mini Basic은 현재 398,400원으로 판매된다.R1 mini Pro는 현재 689,700원으로 판매된다. Stella N2오드로이드(odroid)..

개발일지
devskim