반응형

아두이노 20

[잡담] 아두이노로 LED알리미 만들기(버스도착, 시계, 환경정보)

예전에 만들었던 LED디스플레이를 정리해볼까한다. 첫번째로 시계로 작동된다. 두번째로, 미세먼지 정보가 표시된다. 미세먼지(PM10) 좋음 14, 초미세먼지(PM2.5) 좋음 10, 오존 좋음 순으로 좌로 스크롤되면서 정보가 나타난다. 세번째로, 집 주변의 버스정류장 버스 도착 정보를 표시한다. 아래 사진은 05번 버스가 10분후에 도착한다는 내용이다. 그 다음버스의 도착 시간은 스크롤되면서 표시된다. 나무판에서 글자가 나오는 것 처럼 보이게 했다. 전체 디자인은 심플하게 직사각형 모양으로 만들었다. 반 정도 더 얇게 만들수도 있지만, 안정감 있는 이 모습이 나을 것 같았다. 바닥에는 설명서를 간략하게 요약해서 붙였다. 집에 있는 레이저프린터로 출력해서 만들었다. 아래 동영상은 집에서 몇년동안 사용하고 ..

(작성중) 인코더 기어 DC모터 제어하기(MX1508)

스텝모터 처럼 DC모터를 원하는 만큼 회전하도록 할 수 있도록 하기 위해 인코더 기어 모터를 사용하였다.엔코더가 없는 일반 DC모터는 2달러 정도에 구매할 수 있는데, 엔코더가 있는 것은 6.5달러까지 올라간다. 가격차이가 너무 나지만, 필요하니, 인코더가 있는 DC모터를 사용하여 움직여 보자. 어떤 종류의 엔코더DC모터를 사용해도 무관하지만, 밸런싱 로봇을 만들 생각인지라, 그 용도로 나온 아래의 모터를 사용하였다. (GA12 N20 모터) https://www.aliexpress.com/item/4000714958348.html 10.0US $ 17% OFF|uxcell Gear Motor DC 3V/6V/12V 16 1000RPM Encoder Speed Velocity Measurement for..

모터드라이브(MX1508) 를 이용하여 DC모터 속도 조절

지금까지 모터드라이브는 L298N 을 사용했었는데, 금년 초에 알리에서 검색을 하다가 보니, 싸고 작은 모터드라이브가 있길래 이 놈을 구매하였다. 작은 모터를 돌리기 위한 목적인지라, 당연히 충분할 것으로 생각하고 주문해서 장장 5개월 만에 받게 되었다. 코로나19 때문에 어디서인가 한참을 대기하고 있었을 것으로 생각된다. 5개월 걸려서라도 도착한다는 것이 신기했다. 물류의 힘... 구매한 모듈은 아래에 링크를 넣어두었다. 5개에 1.33달러 https://www.aliexpress.com/item/33058629638.html US $1.33 20% OFF|5Pcs 1.5A 2 way MX1508 DC Motor Driver Module PWM Speed Dual H Bridge Stepper Moto..

(작성중)아두이노로 2바퀴 밸런싱 로봇 만들기(4일차)

오랫동안 기다려서 도착한 모터드라이브 모듈. 거진 5개월만에 도착했다. 주문을 하고 잊고 있었는데.... 코로나 때문에 어딘가를 돌고 돌다가 나에게 도착했는 것 같다. 포장지를 보면, 땡볕에 오래 방치가 되어서인지 인쇄된 감광종이 전체가 검게 되어 있어서 주소를 찾기가 어려운 상태였다. 어렴풋이 보이는 주소를 갖고 5개월만에 배달되어온 것이 신기했다. 난 주문한 것도 잊고 있었던 터라... 받은 모듈의 사진은 다음과 같다. 모델명과 스펙 등에 대한 내용은 수개월 전에 적은 이전글(3일차)을 참고 바란다. 아두이노 우노와 점퍼로 연결하기 위해서 헤드핀을 연결하였다. 당연히 땜질 했다. 지금 이 글은 PC가 아닌 폰으로 적고 있는 것이라서, fritzing으로 보드연결과 회로도를 추가하지 못하였다. 우선 하..

[아두이노] TMP36 으로 온도계 만들기

여름철 차량의 온도가 아주 높이 올라간다. 70도 이상도 올라가기 때문에 라이터, 휴대폰 같은 터지기 쉬운 것은 놔두지 않도록 얘기를 한다. 위험하다는 것은 익히 알지만, 어쩔수 없이 차량에 전자 제품을 놔두어야 만하는 경우에는 어떻게 해야할 까. 차량용 블랙박스 배터리를 조수석 바닥에 놔두도록 하고 있고, 물론, 리튬이온과 다른 리튬인산철 배터리는 폭발 및 인화에 강한 제품이지만... ^^ 미러링크를 위해서 차량 내에 언제나 안쓰는 휴대폰을 연결해두려고 하고 있다. 배터리를 빼고 사용하고픈 마음이 있지만, 돌아가는 폰의 배터리를 뺐을 경우, 배터리 우선 모드로 작동하는 폰이라면 켜지지 않으니 낭패이고, 어떤 상황이 생길지 몰라서 그냥 배터리 채로 차에 두는 생각을 하고 있다. 다른 계절은 문제가 없지만..

서보모터를 이용한 카메라 움직이기

상하좌우 움직일 수 있는 카메라를 집에 설치해볼까 싶어서, 서보모터 브라킷을 구매한지 어언 1년이 지났다. 구매할 시점에는 무언가 하려고 했지만, 알리의 싼 가격으로 구매하는 장점과 달리, 배송이 거의 2달 가까이 걸리니, 그 사이에 그 니즈는 시들해져버리고, 도착한 부품은 계속 쌓여만 간다. 취미생활이 아두이노로 무엇을 만드는 것이 아니라, 부품 구매하기가 되어버린 것이 현실이다. 구매한 SG90에 맞다고 하는 서보모터 마운트 브라킷은 이렇게 생겼다. 아주 단순하기는 한데, 볼트 너트가 많이 들어있다. 이 브라킷을 끼워넣어보려니, 생각보다 사이즈가 맞지 않는듯.... 했으나, 사진을 잘 보니 대충(?)은 맞아 들어간다.. 단지, 서버모터에 끼워져 있는 명칭을 모르겠는데, 모터에 꽂혀지는 플라스틱 막대의..

서보모터(MG90S) 사용

아두이노를 시작하게 되면, LED 를 켰다가 껐다 하는 것. 그 다음은 센서를 이용해서 정보를 측정하는 것들을 해보게 된다.그 다음 단계로는 무언가 움직이는 것을 해보고자 하는 생각이 들게 된다. 직접 움직일 수 있는 것을 만들면 기존에 했던 것 보다 훨씬 더 잘했는 것 같고, 성취감도 높아지는 것 같다. 개인적인 생각이기는 하지만 말이다.2족로봇의 경우에도 서보모터를 여러개 연결해서 각 관절이 움직이게 해서 만든 것이고, 무선조정 자동차의 앞바퀴 방향을 바꾸는 것도 서보 모터를 이용하여 휠의 방향을 바꿀수 있게 한다. 또한, 무선조정 비행기의 경우에도 서보모터를 이용하여 방향을 조정할 수 있다. 이 처럼 서보모터를 이용하고 활용되는 곳은 아주 많다. 기존의 제품을 변경하지 않고 사람이 하던 인터페이스를..

[잡담] 다리미를 이용한 PCB만드는 꿀팁 및 제일 좋은 방법

다리미 신공을 이용하여 회로기판을 만드는 다양한 동영상과 소개가 인터넷에 잘 나와있다. 그 여러가지를 따라 하면서 느낀점을 아주 짧게 적는다. 레이저 프린터로 인쇄회로를 프린트 하는 종이를 전단지를 사용해라, 아트지를 사용해라 등 다양한 의견들이 있었는데.... 제가 그 다양한 것을 해본 경험으로 결론은 돈 들여서 하면 절대 실패없이 좋은 품질의 PCB를 만들수 있다는 것을 알게 되었다. 돈만 투자하면 된다. 1번은 종이를 직접 사라. PCB를 인쇄할 수 있는 좋은 종이가 있고, 이것을 이용하면 절대 실패하지 않는 좋은 품질을 얻을 수 있다. 시간이 있다면 aliexpress 또는 ebay접속하면 다양한 형태의 PCB만들기 위한 종이를 판다. 내가 이것을 직접 사용해본 결과 절대 실패하지 않았다. htt..

(최종) 아두이노에서 테트리스 게임을 만들어보자(5)

앞의 4회에서 소스코드와 설명을 간략히 했는데, 전체 소스코드를 아래에 공개한다.돌아가는 사진은 아래에 있고, 동영상 촬영한 것은 맨 아래에 유튜브에 올려둔 동영상을 연결했다. 더 간단하게도, 더 확장될 수 있게도 만들수 있겠지만, ^^/*============================================================== Tetris.ino 그냥 테트리스의 일반적인 구현(아두이노) Copyright (c) 2015, myjunu@gmail.com (KANG, YOUNG-IG) All rights reserved. 아무나 알아서 수정해서 쓰면 됨... 그런데 위에 웬 copyright? ... ^^ GLCD에 시험용으로 어떤 것을 만들어 볼까 고민하다가 24년 전에 프로그램 처..

(4) 아두이노에서 초소형 테트리스를 만들어보자(4)

테트리스의 블럭이 있는 곳을 1로 표시하고, 공간 즉 공백인 곳을 0으로 지정한다. 움직이려는 곳이 블럭이 있으면 움직일 수 없도록 할 것이라서, 테트리스의 테두리를 1로 가득채우고, 가운데는 0으로 채웠다. 아래와 같다. // 전체 화면의 크기 #define BOARD_ROW_CNT 19 #define BOARD_COLUMN_CNT 10 // 화면의 초기 설정을 함. // 이 부분을 다양화 시키면, 스테이지를 구분해 가면서 이미 블럭이 존재하도록 // 하는 등 다양한 표현을 할 수 있다. // 화면의 좌우 및 하단은 1로 정의를 하여, 블럭이 좌우 및 맨 아래를 뚫고 // 지나가지 않도록 초기 설정함 char board[BOARD_ROW_CNT][BOARD_COLUMN_CNT+2] = { { 1, 0,..

반응형