roll, pitch, yaw
·
Balancing robot/이론공부
Roll X축을 기준으로 회전한 각도  PitchY축을 기준으로 회전한 각도 YawZ축을 기준으로 회전한 각도  roll, pitch, yaw표현 방법은 Euler Angle을 표현 하는 방법 중 하나이다.
ST LINK
·
MCU/stm32
SWD(Seruak Wire Debug) 통신을 위해 사용한다.    처음 stm32를 접하면 여기서부터 애를 먹을 수 있는데 보통 해줘야 할게 1. st link 드라이버 설치 (설치해 줘야 컴퓨터에서 인식한다) 2. st link 펌웨어 업데이트  검색하면 나오니까 검색 ㄱㄱ  Nucleo보드 같은 경우는 st link 회로가 보드 안에 같이 내장되어 있다. 그래서 usb 5핀으로도 업로드/디버깅이 가능함 ㅇㅇ  st사에서 공식적으로 회로도를 제공하지는 않지만 nucleo 회로도 보면 st link 회로도가 있긴 하다.  STM32F103CBT6으로 설계된 거 같은데 봐도 뭔 소리인지 모르겠다.  위에 회로도 참고해서 나중에 시간 나면 st link를 직접 만들어보는 것도 재밌을 것 같다.
개발보드도 사망
·
Balancing robot/일지
현재 사용중인 개발보드 NUCLEO F103RB  MPU6050 라이브러리 작성중인데 갑자기 I2C 통신이 안된다.. 전에는 잘만 됐던 코드 그대로 복붙해도 안되고.. mpu6050 모듈을 바꿔봤는데도 안되고. i2c 채널도 바꿔도 보고,.,  결국 동아리실로 가서 오실로스코프로 파형을 찍으려고 했으나 오실로는 있는데 프로브는 어디간건지 못 찾았다 ㅋㅋ  이것저것 해보다가 혹시 싶어서 개발보드를 바꿔봤는데(누가 동아리 책상위에 두고갔길래 잠시 썼다;) 잘 되는 것을 확인했다. 아마 저번에 mpu6050 쇼트냈을 때 같이 죽어버린듯.  I2c빼고는 문제없었어가지고(adc, tim 등등) 보드가 죽었다는 생각을 아예 못 했다 ㅠ.  아 그리고 3d프린터 망가졌다는데 프레임은 박스같은거 잘라서 만들생각도 해봐..
탄탈 커패시터 극성 이슈
·
Balancing robot/일지
메일을 확인해보니 Jlcpcb업체로부터 메일이 하나 왔다.  보니까 커패시터 (C12)하나가 극성 반대로 연결되어있는데 이거 맞냐고 연락이 왔다.  탄탈커패시터 말하는거같은데 회로 상에서는 문제 없지만 아마 주문할 때 내가 뭔가 실수한 것 같다.  이렇게 사진도 보내주셨는데 저거 지금 +-표시가 반대로 되어있다 +가 위로가야한다 ㅎ  그래서 반대로 배치해야한다고 알려줬다.
MCU 주변회로 설계 : Clock 회로
·
Balancing robot/HW
0. 데이터시트 살펴보기 st사의 an2586 데이터시트를 보면 stm32f10xxx시리즈의 클럭 회로에 대해서 어떻게 설계해야 할지 레퍼런스가 나와있다. 이번 프로젝트에서는 외부 8Mhz 크리스탈을 사용한다(HSE). 참고로 STM32F103에서 외부 크리스탈의 허용 범위는 4MHz에서 16MHz이다.   외부 클락 탐지 후 없을 시, 내부 RC 오실레이터(8 MHz)가 자동으로 설정된다.    데이터시트에는 다음과 같이 회로설계를 하도록 권장되어 있다. 클럭의 각 핀은 mcu에 있는 OSC_IN과 OSC_OUT핀으로 연결하도록 되어있으며, 각 핀마다 커패시터를 병렬 연결하도록 되어있다.  본 프로젝트에서 사용하는 MCU는 stm32f103이며 LQFP64타입이다.  PC14 포트가 OSC_INPC15..
1차 PCB 설계 완료 및 견적 요청 완료
·
Balancing robot/일지
주요 변경점 : 모터드라이버 l298에서 l293으로 변경      글을 안 올린 지 좀 되었는데, 생각 이상으로 회로 수정이 많았다.. 모터드라이버도 L298에서 L293으로 교체했으며 자잘한 것들 수정을 많이 했다.그리고 라우팅 하면서 느낀 건데 HW쪽으로는 재능 없는 듯.. 이쁘게 배선하고 싶었는데 결국은 개판엔딩 일단 현재 회로에도 문제가 많다고 생각하고 수정할 부분도 좀 있다고 생각하는데 너무 늦어져서 일단 죽이 되든 밥이 되든 발주를 넣어보기로 했다. 혼자 회로도보면서 머리싸매는거보다 보드 태워보면서 고치는게 더 빠를듯..  납땜에 많은 시간을 투자하기는 좀 그래서 smt조립까지 맡기려고 하는데 이런 견적 넣는 것도 처음이라 뭐가 뭔지를 모르겠다. 일단 bomlist 작성하는데 너무 머리 아팠..
mpu6050 사망
·
Balancing robot/일지
현재 mpu6050 데이터시트보면서 라이브러리 작성중인데, 테스트 과정에서 실수로 gnd에 5v 꼽아버리니 연기나면서 모듈이 죽어버렸다.. 이래서 센서는 여러개 사야하는데,,  다음 주 월요일에 학교 근처로 입주하게 되어서 그때부터 본격적으로 작업이 가능할 것 같다!
모터 드라이버
·
Balancing robot/일지
일단 l298을 사용한다는 가정하에 이런식으로 회로를 그렸다. 나는 회로도를 그리면 항상 https://electronics.stackexchange.com/ 여기에서 사람들한테 검증받고 넘어가는데  이분이 l298 쌍팔년도에만 쓰는 모터드라이브고 쓰레기니 쓰지말라고 하셔서 다른거 알아보는 중,,  L293D 이걸로 한 번 해볼까..?  일단 내일부터 3일 연속 알바라 나중에 고민해봐야겠다.
[ESP-IDF] UART
·
MCU/esp32
개발 IDE : ESP IDF (on vscode) 개발 보드 : Lolin D32 0. 설명ESP32에는 3개의 UART 채널이 있다. (UART0, UART1, UART2) 보통 UART0이 기본 UART 포트로 디버깅, 시리얼모니터 연결 등에 사용된다.  예를 들어 아두이노에서 Serial.begin()과 같은 함수를 사용해서 시리얼 모니터에 문자를 출력하면 uart0 채널을 사용한 것이다.     1. 코드     2. 코드설명#include "driver/uart.h"uart 관련 api include    uart_config_t uart_config = { .baud_rate = 115200, .data_bits = UART_DATA_8_BITS, .parity = UART_..
모터 고민
·
Balancing robot/일지
모터 드라이버를 뭐를 사용해야할 지 고민중인데 솔직히 말하면 l298n 사용하고 싶다. 전에 사용한 적도 있고 해서.. 뭔가 안심이 된다고 해야하나.. 근데 다른 모터드라이브 써보고싶은데 만약 실수로 안되기라도 하면,,,  BA6208써보고싶은데 이유는 딱히 없다. 그냥 낭만? 심지어 보니까 DC모터 한 개만 제어 가능해보여서 두 개 굴리려면 두 개 써야한다  센서나 모터처럼 부품 선택에 있어 점점 보수적으로 되가는거같다 ㅋㅋ