Arduino 4

[Arduino] 4. Arduino Nano 사용해보기 (Mac)

나는 현재 인턴을 하고 있다. 인턴을 하면서, 그 기간의 절반은 인공지능을 배웠지만, 하드웨어 분야에도 관심이 있어 현재는 아두이노 보드를 만지면서 이것저것 공부와 나름의 연구(?)를 하고 있다. 그러던 중, 제 사수님이 아두이노 나노 보드를 주셨다. 이 아두이노 나노 보드로 난 남은 인턴 기간동안 해야할 것이 있다는 것이였다. 일단 해야할 일을 알아보기 전에 아두이노 나노 보드에 대해 알아보았다.1. Arduino Nano?일단 내가 전에 쓴 Giga 보드와 사양을 비교해보면 다음과 같다.사양Arduino GigaArduino Nano마이크로컨트롤러STM32H747XIH6ATmega328작동 전압3.3V5V입력 전압(제한)6~24V7~12V디지털 I/O 핀7622 (6 PWM 출력)아날로그 입력 핀12..

Arduino 2024.08.01

[Arduino] 3. HC-SR04 (초음파 센서)

1. HC-SR04 센서 DataSheet을 보면서 스펙을 따져보도록 하자.무려 4m까지 측정이 가능하다고! (진짜...일까..?)2. 초음파가 거리를 계산하는 방법우리가 통상적으로 거리를 구할 때 거리는 속도 * 시간으로 알고 있다. 그렇다면 초음파의 속도는 얼마일까?초음파도 소리이기 때문에 소리의 속도와 일반적으로 같다. (온도에 따라 다르지만) 일반적으로 소리의 속도는 343m/s이기에 초음파의 속도도 343m/라고 한다. 초음파가 물체에 도달하여 다시 돌아오는 원리로 거리를 계산하면 식은 다음과 같다.거리 = 시간 * 속도 / 2 이를 이용해서 거리를 계산한다.3. HC-SR04 결선HC-SR04는 다음과 같다.5V Vcc와 0V GND, 그리고 Echo, Trig가 있다.결선표는 다음과 같다.V..

Arduino 2024.07.26

[Arduino] 2. MPU6050 가속도 / 자이로 센서 (2) - 필터

1. 왜 필터를 써야 하는가? 전 게시물에 의하면 MPU6050에서 자이로스코프 센서는 오차가 난다고 했다. 이유는 바이어스 드리프트 (Bias Drift)에 있다. 자이로스코프의 출력 값에는 항상 작은 상수 오차(바이어스)가 존재할 수 있다. 시간이 지남에 따라 이 바이어스는 변하며, 이는 측정된 각속도 값에 지속적인 편향을 추가하여 누적 오차를 발생시킨다. 이 영향으로 자이로스코프가 정지 상태임에도 불구하고 각속도를 측정하게 되어 장기간의 통합 과정에서 큰 각도 오차가 발생할 수 있다.  또한, 시간에 따른 오차 누적 (Drift Over Time)도 원인 중 하나이다. 자이로스코프는 각속도를 측정하여 이를 시간에 대해 적분함으로써 각도를 계산하기에 작은 오차가 계속해서 누적되면 시간이 지남에 따라 ..

Arduino 2024.07.26

[Arduino] 1. MPU6050 가속도 / 자이로 센서 (1) - 구현

1. MPU6050 센서를 보기 전현재 쓰고 있는 아두이노 보드를 본다. 내가 쓰는 아두이노 보드는 "Arduino GIGA Wifi r1" 보드이다."Arduino GIGA Wifi r1" 보드의 PinMap은 다음과 같다.이 핀맵을 보면서 결선을 해야 센서가 고장이 안 난다.2. MPU6050 센서란?MPU6050 센서는 회전과 기울기를 측정하여 모터를 제어하는데 쓰이는 모듈이다. 이 모듈은 향후 드론에서 많이 쓰이며, 드론이 균형을 제어하는데 주로 쓰이는 모듈이 된다.MPU6050의 모듈은 3축의 가속도 센서와 3축의 자이로 센서 그리고 온도 센서로 나뉠 수 있다. 나중에 아두이노 코드로 구현해서 시리얼 모니터에 나오는 걸 보면, X, Y, Z 축에서의 가속도와 각속도가 출력될 것이다.  저렇게 생..

Arduino 2024.07.23