일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 미국주식
- ConnectedHomeIP
- 홈네트워크
- Apple
- Python
- RS-485
- 힐스테이트 광교산
- MQTT
- 배당
- homebridge
- cluster
- 해외주식
- 매터
- 애플
- SK텔레콤
- 공모주
- 파이썬
- 현대통신
- Espressif
- 빅데이터분석기사
- 라즈베리파이
- 나스닥
- 주식
- esp32
- Home Assistant
- Bestin
- matter
- raspberry pi
- 월패드
- 국내주식
- Today
- Total
목록Software (71)
YOGYUI
[Environment]- Ubuntu 22.04.5 LTS- ROS2 Iron1. 문제상황 분석ROS2 Control의 admittance controller는 Force/Torque Sensor의 값을 토대로 로봇 end-effector의 이동 위치(혹은 속도)를 계산하기 위해 기구학(kinematics) 플러그인을 지정해 사용할 수 있다# https://github.com/ros-controls/ros2_controllers/blob/master/admittance_controller/src/admittance_controller_parameters.yamladmittance_controller: kinematics: plugin_name: { type: string, de..
macOS Sequoia - iPhone Mirroring 며칠 전, 맥북프로 M2에 새 OS인 macOS Sequoia(세쿼이아)를 설치했다'팁' 어플리케이션으로 새 기능들을 둘러보는데, 가장 먼저 나오는 신기능이 바로 'Mac에서 iPhone 사용하기'!!대시보드를 보니 'iPhone 미러링' 어플리케이션이 새로 설치된 것을 확인할 수 있었다바로 앱을 실행해보자맥 OS 환경에서 iCloud에 연동된 아이폰을 미러링해서 제어할 수 있다고 한다가장 좋은 건 사진, 동영상, 문서를 번거롭게 에어드랍을 사용하지 않고 다이렉트로 상호간 전송할 수 있다는 점!(에어드랍만 해도 충분히 편리한 기능이긴 했는데, 더 편해져버렸다.. ㅋㅋ) 맥에서의 아이폰 미러링을 위한 시스템 요구사항은 아래와 같다아이폰에는 iOS ..
Python application - Query Korean holiday from public data portal블로그 유입로그 리포트를 보면 거의 항상 최상위권에 '공휴일 데이터 조회'가 랭크되어있다 물들어올 때 노를 저어보자 ㅋㅋ (사실 추석 연휴 마지막날 심심해서 후딱 만들어본... ㅋㅋ)단순히 사용법만 안내할 게 아니라 Python과 Qt6를 활용한 어플리케이션을 만든 후 깃허브 저장소를 하나 만들어봤다https://github.com/YOGYUI/pyside_query_holiday GitHub - YOGYUI/pyside_query_holiday: Query yearly holidays from public data portal (data.go.kr)Query yearly holidays ..
EtherLab의 리눅스용 이더캣(EtherCAT) 마스터 소스코드인 IgH EtherCAT Master for Linux에서 제공하는 CLI(Command Line Interface)를 통해 손쉽게 이더캣 슬레이브에 SDO(Service Data Object, 메일박스를 이용한 비주기 통신 프로토콜)를 통한 Object Dictionary 읽기/쓰기를 할 수 있다https://gitlab.com/etherlab.org/ethercat EtherLab / EtherCAT Master · GitLabIgH EtherCAT Master for Linuxgitlab.com이 때, CLI로 값 입력 시 음수를 입력할 때는 약간의 트릭(?)이 필요하기에 그 방법을 간단하게 공유하도록 한다대상 소스코드 버전: Ig..
ROS2 - Configure namespace for multiple robots environment[ROS2 구동 환경]- ROS2 iron- Ubuntu 22.04.4 LTS - Python + XML + YAML 조합으로 런치 스크립트(launch script) 구성 (모든 노드는 rclpy의 Node 혹은 ComposableNode로 생성)- 로봇 모델은 xml 포맷의 URDF로 구성하며, Xacro 사용- 필수 설치 ROS 패키지에 대해서는 이글에서는 다루지 않음 (정보 필요시 댓글)1. Launch Argument 추가ROS2 실행 인자로 'namespace'를 추가해 ros2 launch로 실행할 때 네임스페이스를 변경할 수 있게 해준다launch 파일명은 임의로 my_robot.lau..
Running Ubuntu 22.04 using VMware on Apple silicon based Macbook Apple Silicon (M1, M2) 프로세서가 장착된 맥북에서 가상 머신(Virtual Machine)을 사용해 ubuntu를 설치 후 구동하는 방법을 알아보자 (개인적으로는 ROS2 개발 환경을 맥북에 구축하기 위해 울며 겨자먹기로 사용중.. ㅎㅎ) 이 글은 다음 하드웨어에서 실습한 결과를 토대로 작성되었다 MacBook Pro 13 inch (2022 model) Chip: Apple M2 Processor Memory: 8GB OS: Sonoma 14.4.1 1. VMware Fusion 설치 VMware는 상용 어플리케이션이라 유료 계정을 활성화해야 하나, 비상업적 용도로 무료..
2024년 공휴일 크롤링 (OpenAPI) 2024년 갑진년(甲辰年) 새해가 밝았다 올해도 어김없이 새해맞이 공휴일을 크롤링해보자 OpenAPI: 공공데이터포털의 "한국천문연구원_특일 정보" API 활용법 포스팅 링크 공공데이터포털::공휴일 데이터 조회 (REST API) 회사에서 사원별 공수(Man Hour) 관리 프로그램을 하나 만들었는데, 공휴일에는 입력이 안되게 만드는 기능이 필요하게 됐다 파이썬 써드파티 라이브러리 종류도 몇 개 있어 찾아봤는데, 중국의 yogyui.tistory.com 아래와 같이 Python(파이썬) 스크립트 실행 ※ API 키 획득 방법은 위의 링크 글 참고 import datetime import requests import pandas as pd from bs4 impo..
ROS2는 나름 다룬 경력도 오래됐고, ROS2와 EtherCAT을 연동해 로봇을 구동하는 프로젝트를 진행한지도 어언 1년이 넘어가고 있지만 ROS 관련 글을 왠만하면 포스팅하지 않으려 했다 (다뤄야되는 내용이 꽤나 전문적이다보니 글이 길어지는 경향이...) 그런데... 블로그 댓글을 보고 완전히 무시하는건 또 도리가 아닌것 같아 간단하게나마 글을 남겨야한다는 의무감이 생긴다 ㅠ ROS 관련해선 최대한 이론이나 작동 원리에 대한 설명은 배제한채 담백하게 코드 위주로만 글을 올려봐야겠다 ※ 이 글에서는 Ubuntu에 PREEMPT_RT 리눅스 커널이 설치된 실시간 환경과, ROS2 Humble 및 IgH EtherCAT Master가 설치된 환경을 필요로 한다 환경 구축 방법에 대한 내용은 아래 두 글을 ..
지난 포스팅에서 SBC 혹은 임베디드 PC에 Linux Ubuntu 22.04 LTS 운영체제 설치 후 PREEMPT_RT 커널 패치를 통해 Real-Time(리얼타임, 실시간) 구동 환경을 설정한 뒤 EhterLab의 IgH EtherCAT Master를 설치해 EtherCAT Master 디바이스로 구축하는 방법을 알아봤다 EtherCAT Master 환경 구축 - Ubuntu 22.04 LTS + PREEMPT_RT 커널 패치 EtherCAT Master 환경 구축 - Ubuntu 22.04 LTS + PREEMPT_RT 커널 패치 Setting EtherCAT Master Environment - Ubuntu 22.04 LTS + PREEMPT_RT Kernel Patch ROS2에서 EtherC..
Setting EtherCAT Master Environment - Ubuntu 22.04 LTS + PREEMPT_RT Kernel Patch ROS2에서 EtherCAT 기반 서보모터, IO보드 등을 제어하기 위해 사용할 수 있는 유용한 플러그인 EtherCAT Driver ROS2 Stack는 EtherLab의 IgH EtherCAT Master가 설치된 Ubuntu 22.04 운영체제에서 구동되어야 하는데, EtherCAT의 PDO 주기 통신을 문제없이 구동하기 위해서는 Ubuntu OS의 리눅스 커널을 Real-Time(리얼타임, 실시간) 성능이 보장되도록 환경을 구축해야 한다 ※ Xenomi 환경을 구축하는 방법도 있지만, Ubuntu 22는 RT 커널 패치를 손쉽게 구할 수 있어 개인적으로 ..
EtherCAT Driver ROS2 Stack SDO Async exchange service - ioctl magic difference issue 더보기 ROS2 중급 개발자 이상을 대상으로 작성된 글 (workspace, colcon 등 기초적인 내용은 다루지 않음) 1. 문제 상황 회사에서 자체적으로 만든 EtherCAT 모터 드라이버 기반 6축 다관절 로봇 제어 솔루션 구현을 위해 ROS2(Humble) / ros2_control / IgH EtherCAT Master(EtherLAB)를 설치한 뒤 ICube-Robotics의 EtherCAT Driver ROS2 Stack 패키지를 사용하고 있다 document page: https://icube-robotics.github.io/etherc..
C++: sort standard vertor by multiple attributes C++ 코딩 작업 중에, Standard Vector에 담아둔 클래스 인스턴스들의 내부 변수값을 토대로 벡터를 정렬해야 하는 경우가 있어서 기록삼아 포스팅해본다 의 std::sort 함수와 람다식을 사용해 정렬에 사용하고자 하는 속성들을 순차적으로 조건문을 작성해주면 된다 예를 들기 위해 다음과 같이 Student 클래스를 만들어보자 class Student { public: Student(const char* name, int class_no, int number) { memcpy(m_name, name, 32); m_class_no = class_no; m_number = number; } char m_name[3..
1. Introduction 로봇공학을 전공했거나 실무에 적용하고 있는 개발자라면 적어도 한번쯤은 EtherCAT(이더캣)을 사용해봤을 것이다 서보 모터 드라이버, I/O 보드 등 이더캣 슬레이브(Slave)를 구동하기 위해서는 이더캣 마스터(Master) 디바이스가 필요한데 개발 과정에서는 이더캣 개발사인 Beckhoff 등에서 판매(국내 모터 업체도 꽤 많다)하는 마스터 PC 혹은 마스터 PCI 슬롯 카드를 구매해서 사용하는게 일반적이다 좀 더 deep하게 모든 모듈을 내재화하고자하는 회사에서는 이더캣 마스터 모듈 자체도 개발하게 되는데, 일반적으로 Real-Time Linux를 OS로 사용하고 이더캣은 RT-LAB의 SOEM이나 EtherLab의 IgH EthreCAT Master 등 오픈소스 코드..
Jenkin Pipeline- Skip stage when slave node (agent) is offline 소스코드 빌드(build) 및 배포(release) 자동화 툴로 Jenkins를 유용하게 사용하고 있다 바이너리 빌드나 Unit Test를 master 노드가 아닌 다른 환경 (리눅스 환경 등)에서 진행해야 할 경우가 있는데, Pipeline에서 slave node 이름 기반으로 다음과 같이 구축해서 사용하고 있었다 pseudo-script pipeline { agent any environment { SLAVE_NODE_NAME = "slave_node" } stages { stage('Build') { parallel { stage('Master') { steps { ... } } stag..
2023년 공휴일 크롤링 (OpenAPI) 2022년이 저물어간다 매년 새해가 밝아오면 가장 먼저 하는 일은 역시 공휴일 확인 (직장인의 유일한 낙이랄까) 공공데이터포털의 "한국천문연구원_특일 정보" Open API를 사용해서 다가오는 2023년의 공휴일 정보를 가져와보자 (원래 노는 토/일 주말은 제외~) API 활용 포스트 링크 공공데이터포털::공휴일 데이터 조회 (REST API) 회사에서 사원별 공수(Man Hour) 관리 프로그램을 하나 만들었는데, 공휴일에는 입력이 안되게 만드는 기능이 필요하게 됐다 파이썬 써드파티 라이브러리 종류도 몇 개 있어 찾아봤는데, 중국의 yogyui.tistory.com 파이썬 코드로 매년 초 한번씩 정보를 가져와서 DB에 저장하는 자동화 코드를 개발해두면 여기저기..