2026/04 8

# 0 Docker를 활용한 ROS1 개발환경 구축

Docker를 이용해 PC의 구성 환경을 분리할 수 있습니다.Ubuntu 20.04에서 가상환경을 이용해 ROS1 개발환경을 구축하고 ROS2와 동시에 설치될 수 있도록 하겠습니다.1. Docker설치PC에서 ROS1과 2를 구동하기 위해서는 Docker를 사용해 환경을 분리해야 합니다.두개를 동시에 설치하면 의존성 문제로 충돌할 가능성이 있기 때문이죠.먼저 Docker를 설치하겠습니다.sudo apt-get updatesudo apt install ca-certificates curlsudo install -m 0755 -d /etc/apt/keyringssudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/d..

드론/ROS 2026.04.26

#4 인버터 구동 - 인버터 제작의 실질적 애로사항

이전 게시글에서 Ti의 MCU를 이용해 SPWM을 발생하기 까지의 과정에 대해서 설명했습니다.이번에는 인버터를 제작할 때 이론과 실제적용의 차이점에 대해서 설명하도록 하겠습니다.1. How To Control Gate-Source Surge Voltage가장 신경썻던 부분은 MOSFET의 게이트-소스 양단의 서지전압을 어떻게 컨트롤 할 것인가에 대해서입니다.Gate - Source surge voltage를 +26V에서 -4V 사이에서 제어하라고 추천하고 있습니다. 만약 이를 초과하는 전압을 인가했을 시에는 FET가 소손될수 있습니다. 그 외에도 나중에 설명하겠지만, Gate-Source Surge Voltage는 인버터 손실의 원인이 되므로 제거하는 것이 바람직합니다게이트 소스 서지전압은 대부분 인덕턴..

#1 MAVSDK 환경구성 및 Offboard 예제

이전 게시글에서 PX4 Autopilot의 개발환경을 구축하였습니다. 이번 게시글에서는 MAVSDK를 이용해 Simulation 환경에서 드론을 비행하는 방법에 대해서 알아보겠습니다.1. PX4 Autopilot Setup - MAVSDKMAVSDK는 MAVLINK 시스템을 사용하는 드론, 지상국 시스템과 상호작용 하기 위해서 사용하는 SDK입니다.mavsdk를 설치하겠습니다.pip3 install mavsdkPX4를 사용한 드론은 MAVLINK 프로토콜을 이용해 통신합니다.그래서 사용자가 "Arm"라는 MAVLINK 프로토콜을 드론에게 전송하면 드론은 시동을 걸게 됩니다.MAVLINK 프로토콜 기반으로 코드를 작성하면 원하는 대로 드론을 작동시킬 수 있습니다.하지만, 드론은 기체 상태에 따라 "비행 ..

드론/PX4 2026.04.25

#3 인버터 구동 - PWM 출력을 위한 TMS320F28335 레지스터 설정(2)

이전 게시글에서 Ti의 MCU 인 TMS320F28335의 ePWM Submodule에 대해서 설명했습니다.TB, CC, AQ에 이어서 DB와 인버터 제작을 위한 카운터 설정에 대해서 알아보겠습니다.1. ePWM Submodule - Deadband(DB)인버터에서 중요한 Deadband입니다.인버터는 Highside와 Lowside FET가 각각 상보적으로 작동합니다. High가 On이면, Low가 Off인 상태로 작동하죠.그런데, 만약 Highside가 Low에서 High로 변화하는 순간 Lowside가 High이면 어떻게 될까요??이렇게 FET가 소손되게 됩니다. 이를 방지하기 위해 Highside와 Lowside가 스위칭되기 전 시간적 여유가 필요합니다. 서로의 간격을 두고 On, Off를 해야 ..

#2 인버터 구동 - PWM 출력을 위한 TMS320F28335 레지스터 설정(1)

인버터를 구동하기 위해서는 0~5V의 PWM을 게이트드라이버에 인가해야 하고 이를 게이트 드라이버를 통해 0-18V로 승압하는 과정을 거쳐야 한다고 이전 게시글에서 설명해 드렸습니다.이번 글에서는 MCU를 이용해 어떤 방식으로 PWM을 발생하고, 인버터에 SPWM을 이용해 입력하는지에 대해서 설명하도록 하겠습니다.1. TMS320F28335 기능 설명 - ePWM(Enhanced Pulse Width Modulator Module )Ti사의 MCU인 TMS320F28335에는 ePWM을 통해 PWM 출력이 가능합니다.ePWM을 쉽게 설명하자면, 다양한 기능을 가진 PWM발생 장치라 생각하면 좋습니다.정말 다양한 기능을 가지고 있기 때문에 서브모듈별로 기능과 동작방식을 을 자세히 알아두어야 합니다.Subm..

#1 MOSFET 밎 게이트 드라이버 선정

1. 인버터 설계를 위한 SiC MOSFET 선정제가 원하는 인버터는 최대 300V의 입력 전압으로 3kW까지 출력 가능한 인버터를 설계하는 것이므로 이에 충족하는 소자를 선정해보겠습니다.정격전압이 600V이상일 것정격전압은 설계할 인버터의 서지전압과 연관이 깊습니다.인버터의 서지전압에 의해 소자가 소손될 수 있으므로 설계 목표보다 정격이 높은 모스펫을 선정해야합니다.정격전류가 30A이상일 것정격전류는 추후에 사용할 모터에 사양에 맞춰서 구성하였습니다. 유도전동기의 V/F제어시 기동전류로 인해 정격의 3~4배 이상의 전류가 인버터를 통해 흘러들어가므로 소자의의 소손을 방지하기 위해선 높은 정격 전류의 MOSFET이 요구됩니다.기생커페시터 성분이 낮을 것 기생커페시터 성분은 스위칭속도와 손실에 영향을 줍니..

#0 PX4 개발환경 구성 (WSL2와 Ubuntu)

0. 서론실무에 투입되면서 드론에 기반이 되는 기술을 스터디 할 필요성을 느꼈습니다.딥하게는 아니더라도 "이러한 기술이 있고, 어떤 것 까지 할 수 있다"는 알 수 있을 정도로 공부를 할 필요성을 느꼈습니다.들어가기에 앞서...기본적으로 우분투에서 동작하는 PX4이지만, 윈도우에서 wsl로 Ubuntu를 실행해 그 위에서 PX4를 동작할 수 있습니다.디버깅의 편리성으로 인해 WSL2에서 세팅을 진행해보는 것도 의미가 있다 생각합니다.1. PX4 Autopilot Setup - WSL2WSL2를 사용하면, Windows 환경에서 PX4를 디버깅 할 수 있습니다.현재 제 PC에는 wsl2 ubuntu 20.04가 설치되어 있습니다.PX4 1.16.1 버전을 사용할 예정이므로, 공식적으로 추천하는 Ubuntu..

드론/PX4 2026.04.13

#0 인버터 개요 및 인버터 원리

1. 인버터 개요인버터는 직류전압을 교류전압으로 변환해주는 역할을 합니다.간단히 전기차 시스템을 예로 들어보겠습니다.전기차에는 고전압 배터리가 내장되어 있습니다.이 배터리로 모터를 구동할 수 있습니다.하지만, 배터리의 출력은 직류전압입니다.전기자동차에 주로 사용되는 교류 모터를 작동시키기 위해서는 교류전압이 필요하기 때문에 인버터를 이용해 DC전압을 AC전압으로 바꿔주는 장치가 필요합니다.2. 인버터의 역할인버터는 AC전원의 전압의 크기, 주파수의 주기를 조절할 수 있습니다.시스템에서 요구하는 주파수와 전압을 출력해 인버터의 출력을 조절할 수 있습니다.그래야지 다양한 시스템에 적용시킬 수 있으니까요.3-1. 인버터의 작동 원리 - 스위칭 동작인버터의 작동 원리를 알기 전에, H 브릿지의 스위칭 동작에 대..