일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- TP4056
- ChatGPT
- QA
- 테스트자동화
- 엠블록
- 업로드모드
- Dynamixel
- 코딩봇
- 크롬드라이버
- testautomation
- 다이나믹셀
- 아두이노코딩봇
- 로보티즈
- 효용감
- 절벽아래은둔자
- 무명의개발자
- NocoDB
- mysql4
- arduino
- Robotis
- 테스트 자동화
- MBLOCK
- Ollo
- CM-50
- chromedriver
- c#
- automation
- hutc
- 올로
- 아두이노
- Today
- Total
목록hutc (27)
Hermit Under the Cliff

mBlock의 라이브 모드는 이전에도 설명한 바와 같이 mBlock과 디바이스가 시리얼로 연결이 되어있고, 이 시리얼을 통해 명령을 내려 디바이스를 제어하는 방식으로 작동이 됩니다. 시리얼을 통해 받은 명령어로 특정한 동작을 수행하는 올빈봇의 펌웨어는 이미 지난번 포스트 들을 통해 작성을 해 두었습니다. 그리고 그렇게 빌드된 펌웨어 파일을 등록하는 것 까지 알아 보았습니다. 이제는 실제로 블록을 만들어 볼 차례 입니다. 카테고리를 하나 추가해 주시고 카테고리 안에 블록 하나를 추가 합니다. OPCODE는 함수의 이름과 같은 개념이므로 무슨 동작을 하는지 알아볼 수 있게 적어 줍니다. Blocks category는 명령어 블록인지, 이벤트 블록인지 등의 구분을 합니다. 우선 만들 것은 로봇을 이동시키는 블..

블록코딩을 위한 블록들을 작성하기 전에 mBlock에서 지원하는 라이브 모드와 업로드 모드에 대해 조금만 더 자세히 짚고 넘어갈까 합니다. 이 두가지 모드를 모두 지원하는 점 또한 블록코딩 툴로 mBlock을 선택한 이유이기도 합니다. 라이브 모드 라이브 모드는 디바이스(코딩봇)과 PC가 서로 USB로(혹은 다른 인터페이스도 가능하겠죠) 연결된 상태에서 블록코딩의 결과를 확인할 수 있는 모드 입니다. 보통 다른 엔트리나 스크래치 같은 블록코딩 툴이 제공하는 기능입니다. 코딩봇이 USB를 통해서 시리얼 통신을 하는 환경에서 라이브 모드는 아래와 같이 동작을 합니다. mBlock과 코딩봇은 시리얼로 통신을 하고 있고 이 시리얼 채널로 각각의 명령의 블록이 실행되는 시점에 해당하는 명령어를 전송하여 코딩봇을 ..

이제 길고 긴 길을 돌아 마지막으로 블럭코딩을 위한 커스텀 블럭을 만들 순서입니다. 앞서 말씀드린바와 같이 블럭코딩 툴로는 mBlock이란 툴을 결정하였습니다. 가장 큰 이유 중 하나는 아래와 같이 Extenstion builder를 제공하여 원하는 커스텀 블럭을 자유롭게 만들 수 있기 때문입니다. https://ext.mblock.cc/ mBlock Extension Builder - Create your own extensions for mBlock ext.mblock.cc 계정을 만든 후 로그인을 하시면 아래와 같이 나의 Device를 등록할 수 있습니다. Add device를 눌러 새로운 디바이스를 등록해 줍니다. ID/Version/Name의 필수 항목을 넣어 주시고, 아래와 같이 Serial ..

이제 코딩봇의 펌웨어를 만들 차례입니다. 그러기에 앞서 제품의 이름을 먼저 지어주어야 합니다. 회사에서 사내 테스트 툴을 만들때에는 별별 이상한 이름으로 지어서 사용하는 사람들이 이름을 말할 때 부끄러워 하게 하는 편이었는데, 이 녀석은 따님이 쓸꺼라 평범하게 이름을 붙여줍니다. 간단히 올로와 따님의 이름중 한 글자씩 따서 올빈봇으로 지었습니다. 펌웨어는 블록코딩 프로그램 (Mblock)에서 시리얼을 통해 받는 명령어를 CM-50 모듈에 전달하는 역할 및 각 센서의 값들을 시리얼을 통해 전송해주는 역할을 하게 됩니다. 먼저 CM-50에 전달할 Instruction packet을 만들어 주는 것 부터 시작해 봅니다. Instuction packet은 지난번 포스트에서 살펴본 바 아래와 같은 구조로 구성이 ..

지난번 포스트에서는 아두이노를 USB to Serial 보드로 활용하여 이미 제공되고 있는 소프트웨어를 이용해서 CM-50을 제어를 해 보았습니다. 저의 목적은 아두이노를 통해서 CM-50을 컨트롤을 하고, 이를 다시 블록코딩을 통해서 간단한 코딩봇을 만드는 것 입니다. 그러기 위해서는 PC의 소프트웨어가 아니라 아두이노에서 직접 CM-50을 컨트롤 할 수 있어야 합니다. 이에 앞서 간단한 구조를 정합니다. 제가 쓰기로 결정한 블록코딩 툴인 Mblock은 물론이고 다른 블록코딩 툴 대부분이 아두이노와 시리얼 통신으로 명령어를 전달 합니다. 이 말은 아두이노의 시리얼 포트는 이미 사용이 된다고 가정을 해야 하기 때문에 기본 시리얼 포트를 사용할 수 없다고 봐야 합니다. 제가 쓰는 아두이노 Uno 보드는 시..

지난번 포스트에서 로보티즈 올로의 CM-50 모듈의 UART 커넥터를 찾았고, 메뉴얼을 찾아 이 커넥터의 Pin 구성까지 알았습니다. 이제 Serial 통신을 이용하여 CM-50을 좀 더 자세히 알아볼 차례입니다. 우선 PC에서 Serial 통신을 하려면 요즘 나오는 PC에는 시리얼 포트가 없기 때문에 거의 대부분 USB to Serial 칩을 이용하여 합니다. 회사라면 여기 저기 굴러다니는 저런 USB to Serial 보드들이 있을텐데 집에 당장 가진 것이 없으니 아두이노를 USB to Serial로 이용해 봅니다. 구글 검색을 통해 아두이노의 GND와 RESET 단자를 점퍼선으로 이어주면 간단하게 USB to Serial 장치로 이용을 할 수 있다고 합니다. 결선은 아래와 같이 해 줍니다. 아두이노..

아두이노를 통해 컴퓨터에서 작성한 코드를 이용하여 여러가지 전자 부품들을 컨트롤 하는 것은 가능합니다. 지난번 포스트에서 살펴보았던 Mblock을 통해 프로그램을 블럭코딩으로 짜는 것도 가능합니다. 이제 실제로 코딩봇의 몸체가 될 녀석을 만들 차례 입니다. 제가 구매한 아두이노 스타터 킷에는 서보모터 하나, 스텝 모터 하나가 포함이 되어 있습니다. 하지만 이것만 가지고 로봇의 몸체를 만들기에는 뭔가 부족한 느낌이 듭니다. 따님의 방으로 가서 장난감을 뒤져봅니다. 레고도 좋은 선택 중 하나인 듯 보이지만 아쉽게도 따님이 레고를 크게 즐기지 않는 터라 가장 중요한 바퀴 등의 부품은 없습니다. 그러다 유치원에서 수업도 하고 집에서도 가지고 놀았던 로보티즈 올로 라는 블록 꾸러미가 있는 게 생각 났습니다. 집에..

2022.02.13 - [Personal Projects] - [Arduino] 아두이노 코딩봇 만들기 (1) - 아두이노 알아보기 [Arduino] 아두이노 코딩봇 만들기 (1) - 아두이노 알아보기 아이들 코딩공부를 위해 아두이노를 구매할까 고민하는 친구의 이야기를 듣다 그 녀석이 보내준 아두이노 스타터 킷 상품이 3만원도 되지 않는 가격에 아두이노는 물론 여러 종류의 센서들까지 hutc.tistory.com 이전 글에서 아두이노를 이용해 따님의 코딩공부를 시켜보자, 라는 목적으로 아두이노 스타터 킷을 구매하였지만, c++ 기반의 아두이노 스케치는 초등학생의 눈높이에는 상당히 높았습니다. 초등학생 대상으로는 블록코딩이 가장 알맞을 것 같아, 아두이노를 이용해서 블록코딩을 할 블록코딩 프로그램을 찾아 ..