분류 전체보기210 Make IT! Arduino -#01 자동타켓과 고무줄 총 만들기 처음에 개별모형에 대한 설명서가 없는 줄 알았는데, 개별 물품을 개봉하니 설명서가 포함되있었다. 물론 소스코드와 함꼐 제공되어 진다. 조립은 그렇게 어렵지 않다. 나도 그렇게 장남감을 잘 만드는 사람이 아니라서 소프트웨어쪽으로 간 사람이다. 내가 한다면 모든 사람이 할 수 있다고 생각한다. 그런데 일부분에서 고정이 잘 되지 않아서 본인은 목공풀을 사용해서 일부 고정시켰다. 그리고 중국산이라서 가끔 발생하는 상황이지만 동봉된 서보모터가 작동하지 않는 불량 이었다. 그래서 본인이 가지고 있는것으로 했는데, 약간의 모양이 다른데, 사용하는데는 크게 지장은 없었다. 문제점 아닐수도 있는데, 하드웨어적으로 오류라고 생각하는 부분이 두가지 있다. 인쇄가 반데로 하던지 모양으로 반대로 그려야 하는 부분이다. 마치 거.. 2020. 6. 28. Make IT! Arduino 개봉기 Make IT! Arduino 개봉기 이것도 협찬 혹은 테스트라고 먼저 이야기하고 시작해야 할 듯하다. 아두이노 교육용 교재를 만드는분 같은데, 직접적인 만남은 없어서 일단 모른다고 하자. 그래도 본인이 직접신청해서 받은것이기 떄문에 열심히 만들어서 상세히 소개해야 한다고 생각해서 앞으로 이것만 해야 겠다. 본인이 받은것은 총 6개의 교재와 여분의 부속을 받았다. 책이나 아두이노 키트로 시작하기 어려운 사람이나 유아, 초등학생들에게 더 좋아 보인다. 대학생들이 아무것도 모르고 접근해서 포기하는것 보다는 어린이의 호기심으로 접근하는게 좋아 보인다. 본인이 열심히 만든다고해도 1주일에 하나씩 총 6주 정도 필요 할 것으로 보인다. (저도 생계라는 굴래에 벗어라지 못한 존재라서...) 전체적인 포장은 괜찮은데.. 2020. 6. 24. 아두이노 문자와 문자열-#8 마지막으로 숫자를 해야 한다. 수를 숫자라고 해야 하나 문자라고 해야 한다면, 숫자도 문자다. 입력단계에서는 문자일 뿐이다. 내가 꽃이라고 불러야 꽃이다. 우리아들이 색종이를 주면 꽃이라고 한다. 애들에게는 꽃인것이다. 마찬가지로 프로그래머가 숫자라고 인지하면 숫자이고 문자라고 인지하면 문자인것이다. 본인의 개념을 어떻게 잡는것이다. 내가 색종이라고 우기는것 보다는 그냥 꽃으로 받아 드리는게 편하다. 결론은 다른 프로그래머 하고 싸우기 보다는 그냥 받아 드리는게 편하다는 이야기다. void setup() { Serial.begin(115200); } void loop() { char c; String buf; while(1) { if(Serial.available()) { c = Serial.read().. 2020. 6. 21. 아두이노 문자와 문자열-#7 이전코드가 20글자를 넘어가면 오류가 발생 했다. 그것에 대한 보안으로 글자수를 제한 하거나 대책을 마련하면 된다. 그래도 C++이니 객체를 이용하자. 이전에도 언급한 String이다. 이것은 문자도 아닌것이 문자열도 아니다. 그냥 다 되는 놈이다. 아주 사용이 편리하다. 사용이 편리하지만 그것에 대한 댓가는 있다. 점점 무식해진다는것이다. 쉽게 말해 알려고 하지 않는다는것이다. 객체가 다 알아서해주기 떄문에 객체가 없는 환경에서는 아주 어려워 진다는것이다. 예를들어 자바가 대표적이다. 모든것이 객체로 이루어져 있다. 요것도 좀 논란의 여지가 있으니 다음에 커피나 한잔하면서 논의 하자. void setup() { Serial.begin(115200); } void loop() { char c; Strin.. 2020. 6. 21. 아두이노 문자와 문자열-#6 이제 문자열입력을 받아 보자. 사실 문자만으로 다 된다고 주장 할 수도 있다. 물론이다. 그래도 살다보면 밥만 먹고 살수 있나 ? 고기도 먹고 햄버그도 먹는다. 그리고 문자로만 다 된다는 이유는 곱셈을 모르는 사람이 덧셈으로만으로 모든것을 다 계산하는것과 같다. 예전에 러시아 교수를 7x7 매트릭스의 역행렬을 3일 동안 손으로 계산한다고 했다. 최근에 나는 400x400 역행렬을 계산한다. 그것도 1초에 수십번 계산이 이루어 진다. 결과 손으로 계산하기 어려운 부분이다. 그래서 문자열 입력도 필요한것이다. 다시 이야기 하면 안된다는것은 아니다. 단지 어려운것 뿐이다. 코드에 대한 방버 코드는 없다. 배열의 20글자를 넘게 입력하면 오류가 발생할 것이다, void setup() { Serial.begin(.. 2020. 6. 21. 아두이노 문자와 문자열-#5 최종형태의 프로그램이다. 처음에도 이야기 했지만, 아래코드가 내용도 없다. 단지 if 문장 하나 추가 된것 뿐이다. 결론은 아주 단순햐댜. 경험이 많은 프로그래머 조차도 코딩에는 별것 없다. 정말 단순하다. 경험많은 프로그래머 일수록 기본에 충실할 뿐이다. 단지 if 한문장이라고 이야기 할 수도 있다. 그러나 대단한 if 문자이다. void setup() { Serial.begin(115200); } // the loop function runs over and over again forever void loop() { if(Serial.available()) { char a = Serial.read(); if( a!= '\n' && a!= '\r') { switch(a) { case 'x': Seria.. 2020. 6. 20. 아두이노 문자와 문자열-#4 엔터 처리는 여러가지 형태로 제거 할수가 있다. char a = Serial.read(); 내가 입력받고 싶은 문자가 숫자일 경우, 문자만 입력받는경우, 단지 엔터가 아닌경우 등등 다양한 방법을 상상 할 수가 있다. if( a>= '0' && a= 'a' && a 2020. 6. 20. 아두이노 문자와 문자열-#3 지금까지의 문자, 문자열 입력에 대해 생각해보자. 마우스 이전에는 모두 키보드로 입력 했다. 키보드 입력의 형태는 알고 있듯이 두개다. 콘솔모드에서 입력 후 엔터, 혹은 엔터 없이 입력이다. 엔터 없이 입력의 좋은 예는 게임이다. 여러분들이 게임 할때 미사일 누르고 엔터 이러지는 않는다. 그냥 미사일 이다. 조이스틱 우로 누르고 엔터 하면 이상 하지 않는가. 그렇다 엔터의 유무가 대표적인 입력의 형태이다. 아두이노에서 비슷하다. 본인이 시리얼 입력을 할때 엔터 없이 할것인지 엔터 입력하고 입력을 받을지 정해야 한다. 그런데 아두이노 시리얼입력은 엔터를 기본 입력으로 하기 때문에 그냥 입력 + 엔터를 하자. void setup() { Serial.begin(115200); } // the loop func.. 2020. 6. 20. 아두이노 문자와 문자열-#2 char a = Serial.read() switch(a) { case 'x': Function1(); break; case 'y': Function2(); break; default: Serial.println("값을 입력하세요."); break; } 위의 코드가 일반적인 문자를 입력받는 아두이노 코드 이다. 보통 초보들이 많이 하는 실수중에 하나가 int a = Serial.read(); double a = Serial.read(); 물론 컴파일가 경고 정도는 출력해 주겠지만 명백히 잘못된 문장이다. 그러나 초보들은 인지 하지 못한다. 바로 C언어의 특징인 형변환 때문이다. char가 정수형이나 실수형으로 바로 변환되기 때문에 명백한 오류이지만 인식하지 못한다. 코드에 오류가 있다고 해도 받드시 문제.. 2020. 6. 20. 이전 1 ··· 12 13 14 15 16 17 18 ··· 24 다음