본문 바로가기

분류 전체보기195

아두이노 버튼 노이즈를 제거해보자, Debounce 이해하기 아두이노를 사용할 때, 버튼입력의 신호가 이상하게 입력될 때가 종종 있다. 버튼이 오동작 하기 쉬운 이유는 접점 불량으로 발생하기 쉽기 때문이다. 이 오류를 해결하는 방법이 Debounce 알고리즘을 사용하는 것이다. 이번 포스팅에서는 이 Debounce 알고리즘을 살펴보고, 어떻게 쓰는 것인지 알아보도록 한다. Debounce 는 쉽게 말해 특정시간이 지난 후 하나의 이벤트만 발생하도록 하는 기술이다. 버튼이 오동작 할 때를 보면 상황이 아래와 같을 때이다. 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 신호를 엄청 빠르게 읽어오는데 0에서 1로, 1에서 0으로 바뀌는 구간이 바로 이상함이 감지되는 구간이다. 도저히 사람 손으로.. 2020. 12. 23.
아두이노 입출력 인터럽트에 대해서 알아보자 attachInterrupt() 이번 포스트에서는 임베디드 시스템에서 제일 중요한 부분 중 하나인 인터럽트에 대해서 알아보도록 한다. 인터럽트란 마이크로컨트롤러프로세서(MCU) 에서 프로그램이 실행 중에 있을때, 예외상황이 발생하면 우선적으로 처리하는 것을 말한다. 아두이노를 가지고 설명하자면, 아두이노는 흔히 LOOP() 함수에서 코드가 반복해서 돌아가게 된다. 그런데 이상하게 구동이 되는 경우 도중에 코드를 멈춰야 한다. 이걸 LOOP() 함수 안에서 구현하려면 코드가 매우 난잡해지고, 즉시 멈추는게 불가능 하다. 멈추더라도 이전 작업이 다 끝나야 멈출 수 있다는 것이다. 코드가 난잡해지면 실수가 발생할 수 있고, 오류가 생길 가능성이 커진다. 그리고 즉시 멈출 수 없어서 그 짧은 시간동안 다른 문제를 야기할 수 있다. 따라서 이런.. 2020. 12. 23.
[3D 모델링] 신정개발 살수차 3D 모델링 및 랜더링 신장개발특장차(주) 의 살수차 모델링입니다. 건설장비, 중장비 3D 모델링 및 랜더링 이미지가 필요하시다면 연락주세요~ 3D 모델링과 랜더링 견적상담 언제든지 환영입니다~ 2020. 12. 2.
[3D 모델링] 볼보 페이로더(L150E) 중장비 3D모델링 및 랜더링 볼보 페이로더 (모델명 L150E) 3D 모델링 및 랜더링 입니다. 몸체만 모델링 및 랜더링을 진행하였습니다. 건설장비, 중장비 3D 모델링 및 랜더링 이미지가 필요하시다면 연락주세요~ 3D 모델링과 랜더링 견적상담 언제든지 환영입니다~ 2020. 12. 2.
[3D 모델링] 현대 지게차(30D-9B) 3D 모델링 및 랜더링 현대 지게차 30D-9B 디젤엔진식 지게차 3D모델링 후 랜더링 입니다. 3D 모델링과 랜더링 견적상담 언제든지 환영입니다~ 2020. 12. 2.
[3D 프린팅 외주] Form2 미세한 Lagonda 로고 디테일 출력 오늘 포스팅 하는 3D 프린팅은 어느 대학교 디자인과 학생들의 과제입니다. 디자인과 학생분들께서 3D 모델로 설계는 다 끝냈었는데, 3D프린팅을 할 곳이 없어서 저희 업체를 찾아보셨습니다. 학생분들이 후가공은 자신들이 할 테니 출력만 해달라고 요청했을 때에는 그냥 FDM 방식의 프린터로 출력하면 되는 줄 알았습니다. 하지만 설계파일을 열어보니 크기가 너무 작았었습니다... 출력하고보니 면봉만한 사이즈였던 것이죠... 그런데 이렇게 작은 크기에 엄청나게 미세한 디테일들이 숨어 있었습니다. 보이실지 모르겠습니다만 글자도 너무 작고 중간의 미세한 디테일이 많이 있는 것을 볼 수 있습니다. 사실 이런 형상은 FDM으로는 절대 불가입니다. 물론 크기를 키운다면 가능하겠지만, 후가공은 불가능하다고 보시면 됩니다. .. 2020. 12. 1.
[3D 모델링 / 설계 외주] 드론 광고 전광판 홀더 설계 4차 산업혁명 시대를 맞이해서 드론은 최근 몇년동안 계속 많은 사람들의 관심을 받고 있죠 오늘 저희 업체를 찾아주신 의뢰주님 역시 드론으로 하는 사업을 진행 중이셨습니다. 단순히 드론으로 물건을 나르거나 카메라를 촬영하는 용도로만 생각했었는데, 광고 및 홍보용으로도 많이 사용된다는 사실 알고 계신가요? 당장 2018 평창 동계올림픽에서만해도 몇백대의 드론이 오프닝을 장식했었죠 드론으로 이렇게 웅장항 효과를 낼 수 있다니... 놀라울 뿐입니다. 아무튼 이번에 찾아주신 의뢰주님은 홍보목적으로 플렉시블 LED 판을 드론에 고정시키고 싶다고 하시네요. 이런식으로 홍보를 하는 것이죠 이렇게 드론에 전광판을 고정하려면 전광판 스펙에 맞게 작업을 해야합니다. 일단 3D 설계를 진행하고, 3D프린팅으로 뽑아서 실제로 .. 2020. 12. 1.
노브랜드버거 후평점 이용후기, 편의점 햄버거보다 저렴하다! Today 사무실 근처인 풍무동에 새로운 상가 건물이 들어섰다. 노브랜드 버거가 입점한다고 현수막 크게 홍보하고 했었어서 언제 한번 가보려고 했었었다. 서울에서 이미 노브랜드 버거를 먹어봤었다. 포장을 해서 그랬었나, 맛은 그냥 그랬었던것으로 기억한다. 역시 버거는 버거킹인가 싶었다. 포장때문에 맛을 제대로 못 느낀것은 아닌가 싶어서 이번에는 매장에서 먹어보기로 했다. Exterior Interior 코로나 시국이라 식탁에 떨어져 앉으라고한다. 위의 에어컨 시스템도 노란색으로 칠해놓았다. 확실히 내부 인테리어는 깔끔하다는 것을 느낄 수 있었다. 그리고 컬러감이 누가봐도 노브랜드 컬러라는 것이 느껴졌다. 다른 햄버거 가게들은 음료 무한리필이 되지 않는데, 노브랜드는 음료 무한리필이 가능하다! 탄산 좋아하는.. 2020. 11. 13.
계양구 사주팔자 봐주는 도장집, 도장파면 사주는 서비스 사업을 하게 되면서 서류에 도장을 찍어야 하는 경우가 생기게 되었다. 도장은 어릴때부터 몇개 선물 받고 해서 있었는데, 다 어디로 갔는지 모르겠어서 새로 도장을 파려고 여기저기 검색을 했다. 인터넷으로 구입하면 저렴해서 좋았지만, 배송이 필요한 날에 오기까지 시간이 안되기에 오프라인에서 도장집을 찾아야 했다. 원래는 막도장을 사려고 했었다. 온라인에서는 천원대에도 막도장을 파주는데, 오프라인에서는 보통 3천원으로 시세가 형성되어 있었다. 처음에 알아본 집은 1만원이라길래, 바로 등돌리고 다른 업체를 찾아보았다. 롯데마트 계양점 5층에 열쇠 도장집이 우연히 검색되었고, 전화해서 막도장 가격을 여쭤보니 3천원이라고 하기에 바로 달려갔다. 그런데 후기에서 보니깐 신기한 내용이 있었다. 도장집 사장님이 사주쪽도.. 2020. 10. 29.
마닉 x50 광축 키보드 실물 사진과 리뷰, 이쁜 키보드가 타자치는 것을 즐겁게한다. 기존에 사용하던 기계식키보드가 채터링 현상이 너무 많이 발생해서 키보드를 새로 구매하게 되었다. 채터링이란 키가 제대로 안 눌리고, 여러번 중복해서 눌리거나 하는 현상을 말한다. 기계식 키보드라면 고질적인 문제라고 한다. 비싼 체리키보드나, 레오폴드 같은 고가 키보드라도 채터링 현상이 발생한다고 한다. 이런 경우 스위치 자체를 바꾸거나, 심할경우 키보드의 메인보드를 교체해야 하기 때문에 관리가 필요한 부분이다. 하지만 대부분의 소비자들은 키보드 키가 이상하게 눌린다면 키보드를 바꾸지 않을까 싶다. 그러면서 이제 그나마 문제 없는 키보드를 찾고자 할 것이다. 물론 더 비싼 기계식가면 내구성이 더 좋으니 확실히 저가 기계식 키보드보다는 만족도가 높을 것이다. 필자는 문제가 없는 키보드를 찾고자 했다. 찾아보.. 2020. 10. 28.
[c++ opencv] 이미지서치 연산속도 향상, Template Matching 사용하기 #2 연산속도 빠르게 본문 목표 이전 포스트에서 이미지서치 Template Matching을 배웠었다. 이번에는 코딩에서 제일 중요한 연산속도 향상에 대해서 다뤄보도록 하겠다. 어떻게 하면 동일한 결과를 얻으면서도 연산속도를 빠르게 할 수 있는지 알아보자. 키워드 : 이미지서치, Template Matching, 템플릿매칭 알아볼 함수 원형 - 테플릿 매칭 ( matchTemplate ) matchTemplate(src, templ, result, 1); normalize(result, result, 0, 1, NORM_MINMAX, -1, Mat() ); minMaxLoc(result, &minVal, &maxVal, &minLoc, &maxLoc, Mat() ); matchTemplate( img, templ, resul.. 2020. 10. 25.
[c++ opencv] 이미지서치 기본사용법, Template Matching 사용하기 #1 기본사용 본문 목표 OpenCV를 다루다보면 이미지서치를 사용할 때가 온다. 자율주행 시스템에서도 표지판인식, 번호판 인식에 사용하기도 하고, 컴퓨터 화면에서도 이용하기도 한다. 또한 생산 공장등에서도 사용하기도 한다. 그만큼 중요한 내용인 만큼 어떻게 사용하는지도 알아보도록 하자. 키워드 : 이미지서치, Template Matching, 템플릿매칭 알아볼 함수 원형 - 테플릿 매칭 ( matchTemplate ) matchTemplate(src, templ, result, 1); normalize(result, result, 0, 1, NORM_MINMAX, -1, Mat() ); minMaxLoc(result, &minVal, &maxVal, &minLoc, &maxLoc, Mat() ); matchTempl.. 2020. 10. 25.
오토핫키로 해킹프로그램 만들기, 키보드입력 로그 저장 오토핫키를 이용해서 쉽게 해킹프로그램을 만들 수 있다. 당연 코딩을 좀 아는 사람한테 쉽다는 얘기다. 이번에 제작해본 것은 키보드 입력 로그를 저장하는 프로그램이다. 흔히 해킹 당했던 경험을 보면 아이디와 비번이 노출되었을 경우인데, 이 프로그램은 그런 아이디와 비번을 그대로 입력 받는 것이다. 문제는 아이디와 비번을 입력 받았다고 해도 어느 사이트의 아이디와 비번인지 모르면 의미가 없다. 따라서 어느 창을 실행시킨 상태에서의 아이디와 비번을 입력했는지를 알아야 한다. 이 역시 오토핫키에서 지원하는 기능으로 현재 실행중인 창 이름을 얻어오는 함수를 이용해 구현했다. 마우스 좌표까지 입력 받으면 더 완벽하겠지만, 그건 나중에 추가해보려 한다. 굳이 필요할까 싶다. 아래 시연영상을 확인해보자. youtu.b.. 2020. 10. 23.
아두이노와 ESP8266으로 wifi에 연결해서 웹서버 만드고, 센서값 출력하기 - 몇년 전부터 아두이노를 통한 IoT 개발이 정말 많이 이루어지고 있다. 자료가 많이 없어서 이렇게 글을 써보려 한다. 아두이노에 ESP8266 모듈을 장착하면 아두이노로 wifi연결을 통해 인터넷에 접속할 수 있다. 그리고 웹 서버도 만들 수 있는데, 이 웹서버를 통해서 센서값 등을 표현시킬 수도 있다. 그 방법을 한번 알아보자. 아두이노, ESP8266 모듈, 또는 아두이노 NodeMCU 같은 ESP8266이 포함된 개발보드, CDS센서 LED 아날로그 0번에서 CDS 센서값을 읽어오고, 주변이 밝으면 LED를 끄고, 어두우면 LED를 키는 회로를 구성하였다. 필자는 NODE MCU를 이용해서 회로를 구성하였다. 아두이노에 ESP8266 wifi 모듈을 연결하면 똑같이 사용 가능하다. 코드 작성에 .. 2020. 10. 23.
오토핫키만의 변수와 연산자 이해하기 이번에는 오토핫키만의 변수체계와 연산자를 알아보도록 한다. 오토핫키는 다른 프로그래밍 언어와 다르게 변수 선언도 없고, 연산자 사용도 좀 다르다. 이 부분은 따로 기억해두어야 코딩하는데 있어서 문제가 생기지 않을 것이다. 그냥 C언어 코딩하듯이 했다가 왜 제대로 작동 안하지? 라는 생각이 들더라도 어디가 문제인지 찾기 힘들테니깐 말이다. 일단 오토핫키 에서도 변수는 다른 프로그래밍 언어와 마찬가지로 값을 저장하는 역할을 한다. 그 값이 숫자일 수도 있고, 문자일 수도 있고, 문자열일 수도 있다. 다만 앞에 자료형을 붙여주지 않는다. 그러면 그 변수가 숫자 정보를 담고있는지, 문자정보를 담고 있는지는 어떻게 알 수 있냐가 궁금해져야 한다. 바로 연산자를 통해서 숫자형태로 저장하거나, 문자형태로 저장한다. .. 2020. 10. 20.