본문 바로가기

분류 전체보기

[Spot Dynamixel - 6] Kinematic Motion 코드 설명 🦵🏼 Kinematic Motion 코드 설명 class TrottingGait gait란 걸음걸이를 뜻합니다. 곧, 이 클래스는 로봇을 걷게 하기 위한 구현입니다. def __init__(self): self.step_gain = 0.8 self.maxSl=2 self.bodyPos=(0,100,0) self.bodyRot=(0,0,0) self.t0=300 #0 #300 # senseless i guess self.t1=1200 #1200 self.t2=300 #0 #300 self.t3=350 #200 self.Sl=0 self.Sw=0 self.Sh=70 #100 self.Sa=0 self.Spf=87 self.Spr=77 self.Fo=120 self.Ro=50 self.Rc=[-50,0,0,1..
[Spot Dynamixel - 2] Dynamixel SDK manual 📰 Dynamixel SDK manual 로보티즈의 Dynamixel을 제어하기 위해 필요한 작업들을 소개하고 예시 코드를 실행합니다. Reprository download File Structure Device Setup Controller Setup Installation on Windows Installation in Linux Library Setup Editor install Download Python for Linux Library Install Sample Code 실행 Reference Reprository download $ git clone https://github.com/ROBOTIS-GIT/DynamixelSDK.git File Structure repo clone을 하게 되면 ..
[Spot Dynamixel - 4] IMU - BNO055 🌎 IMU - BNO055 1. 센서 소개 BNO055 IMU 센서 중 하나로 각가속도 3축, 각속도 3축, 지자기 3축을 측정해주는 센서 이 9가지 센서값을 활용하여 현재 센서가 기울어진 각도와 이동 속도를 알 수 있습니다. 기본적으로 센서값에 오차가 많이 있기 때문에 필터 등의 기법을 통해 데이터의 정제가 필요하지만, 이 센서의 경우 기본적인 필터가 내장되어 있어 안정적인 측정값을 제공합니다. 구매링크 Adafruit 9-DOF Absolute Orientation IMU Fusion Breakout - BNO055 [ada-2472] Adafruit / Adafruit 9-DOF Absolute Orientation IMU Fusion Breakout - BNO055 [ada-2472] / MCU보..
[Spot Dynamixel - 1] Hardware 🐕Hardware 사용된 모든 모델링 파일은 다음 압축 파일에 위치합니다.https://s3-us-west-2.amazonaws.com/secure.notion-static.com/fb1175b8-d8d6-477f-ba89-1cccd04568d6/Lo.ver.zip 1. 조립본 사진조립품 2. 각 파츠에 대한 설명파츠 구성품 목록B_coverT_coverF_shoulder *2R_shoulder *2Side plate *2L_arm-1 *2L_arm-2 *2R_arm-1 *2R_arm-2 *2L_joint *2R_joint *2L_wrist-1 *2L_wrist-2 *2R_wrist-1 *2R_wrist-2 *2 B_cover로봇의 베이스가 되는 파트회로, 배터리 등등을 고정시키고, 앞 뒷다리를 연결시킴..
[Spot Dynamixel - 7] 보행 코드 분석 🐕 보행 코드 분석 SD_automatic_gait_test.py 실질적으로 로봇을 움직이는 최종 코드를 분석해 봅니다. 라이브러리 import 및 초기 세팅을 진행합니다. from os import system, name import sys, os sys.path.append("..") sys.path.append(os.path.dirname(os.path.abspath(os.path.dirname(__file__)))) import matplotlib.animation as animation import numpy as np import time import math import datetime as dt import keyboard import random import board import bus..
[Spot Dynamixel - 5] Kinematics 코드 설명 🦵🏿 Kinematics 코드 설명 Kinematic class 설명 1. 클래스 생성자 - init 다리 길이 및 몸통의 길이 너비 등의 파라미터 입력을 해주는 곳입니다. def __init__(self): self.l1=50 self.l2=20 self.l3=100 self.l4=100 self.L = 140 self.W = 75 #leg iterators. ex. LEG_BACK + LEG_LEFT -> array[2] self.LEG_FRONT = 0 self.LEG_BACK = 2 self.LEG_LEFT = 0 self.LEG_RIGHT =1 #thetas, which will be used on controllers self.thetas = np.array([[0, 0, 0],[0, 0, 0..
[Spot Dynamixel - 3] Dynamixel Example 코드 💉 Dynamixel Example Code Path, import DynamixelSDK/python/tests 내의 Python read write protocol 1.0.py 를 단계별로 살펴보겠습니다. os.sys.path.append('../dynamixel_functions_py') # Path setting import dynamixel_functions as dynamixel # Uses DYNAMIXEL SDK library dynamixel_functions_py 패키지내에 dynamixel_functions 를 import 해줍니다. Address / Protocol # Control table address ADDR_MX_TORQUE_ENABLE = 24 # Control table..
25. [ROS RC카] Object Following - 3 & 강의 마무리와 Future Work 소개 👍🏻 25. [ROS RC카] Object Following - 3 & 강의 마무리와 Future Work 소개 🎇 지난 시간에 이어서, find_ball node를 분석해 보겠습니다. 🎇 그럼 이번엔, main문에 있는 이 수많은 코드들은 무엇일까요? params = cv2.SimpleBlobDetector_Params() # Change thresholds params.minThreshold = 0 params.maxThreshold = 200 # Filter by Area. params.filterByArea = True params.minArea = 2000 params.maxArea = 70000 # 640 * 480 = 307,200 # Filter by Circularity params.fi..