Hello World! 32

아두이노 빵판 ( 브레드보드)

아두이노 사용하다보면 여러 포트를 필요로 하기 때문에 배선을 해야하는 상황이 온다. 이때 빵판 (= 브레드보드) 는 어떻게 사용할까? 브레드보드의 + (빨간부분) - (파란부분) 이쪽은 다 연결되어 있는 것이라고 보면 된다. 그라운드는 많이 쓰이는 포트기 때문에 GND (그라운드 포트) 와 - 극 아무데나 연결해주면 -가 완성된 것이다. 그리고 연결하려는 LED 의 + 를 13번 포트에 꽂아주고 -극은 점퍼선을 이용해 빵판의 - 아무곳에나 껴주면 끝!

Hello World!/IoT 2020.09.21

아두이노 - GPS 모듈 사용해보기

처음 아두이노 gps 모듈을 받았을 때 저렇게 왼쪽 사진처럼 핀헤더가 꽂혀있지 않은 상태였다. 핀헤더를 꽂고 점퍼선을 연결하려면 납땜이 필수라고 한다... 그래서 납땜을 해서 핀헤더를 고정하고 점퍼선을 꽂아주었다. 다이소에 파는 납땜기랑 납을 사서 간단히 납땜을 완료했따. Neo6m은 디바이스마트에서 구매했다. GPS 모듈은 MCU 와 UART 통신을 통해 제어한다. 아두이노 우노보드에 GPS 를 달고 여러 예제를 다뤄보았는데 , 실내에서는 도저히 GPS가 잘 안 잡혀 다른 해결책을 생각해봐야겠다...^^;;;

Hello World!/IoT 2020.09.21

아두이노 와이파이 ESP8266 + ESP-01

아두이노에서 와이파이 통신을 위해 구매한 ESP8266 과 ESP-01 디바이스마트에서 구매했다. 어댑터 모듈에 시리얼 와이파이 모듈을 꽂은 후 점퍼선을 연결해주었다! 이걸로 와이파이가 연결되는지 해보았다! Arduino 스케치에 입력해줄 코드 ! 이렇게 입력하고 업로드를 해준 후 시리얼 모니터를 켜서 AT 라고 입력해본다. 이때 Both NL & CR 과 9600 보드레이트로 맞춰주지 않으면 이상한 글자가 나왔다.. OK 확인 후 이제 연결할 수 있는 와이파이들을 확인해본다. AT+CWLAP 을 치면 연결할 수 있는 와이파이들이 나온다. 연결할 와이파이를 고르고 AT+CWJAP="SSID","PASSWORD" 와이파이이름과 비밀번호를 차례로 써주고 엔터를 치면 연결이 된다. 연결이 완료되면 이런 메시지..

Hello World!/IoT 2020.09.16

알고리즘의 성능을 나타내는 복잡도

복잡도는 알고리즘의 성능을 나타내는 척도다. 복잡도 - 시간복잡도 : 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리는지 의미 - 공간복잡도 : 특정한 크기의 입력에 대하여 알고리즘이 얼마나 많은 메모리를 차지하는지 의미 일반적으로 복잡도가 낮을수록 좋은 알고리즘이다. 알고리즘 문제를 풀 때 '복잡도' 는 시간 복잡도이다. 시간 제한이 문제를 푸는 시간을 정한 듯하지만, 코딩 테스트에서는 작성한 프로그램이 모든 입력을 받아 이를 처리하고 실행 결과를 출력하는 데까지 걸리는 시간을 의미한다. 프로그램을 비효율적으로 코딩해서 시간제한을 넘긴다면 -> '시간초과' 와 함께 오답^^ 시간복잡도를 표현할 때는 빅오 표기법을 사용한다. 빅오 표기법 (아래로 갈수록 느림 !) 명칭 O(1) 상수 시간 O(l..

Hello World!/공부 2020.09.07

아두이노 LED

1) pwm 을 이용한 아두이노 밝기 조절 analogWrite(pin번호 , i) i는 0~255 까지만 받아들일 수 있다. 256이 들어간다면? LED 가 꺼진다! PWM (아두이노 판에 보면 ~ 로 표시되어 있음)PWM 을 통해 자신이 원하는 전압으로 바꿀 수 있다. 시리얼을 통해서 컴퓨터와 통신할수도 있는데,컴퓨터 -> 아두이노로 값을 보내준다. if(Serial.available()) { / /Serial.available() => 시리얼에 읽을 값이 있다면, Serial.println(Serial.read()); int r = Serial.parseInt(); // 컴퓨터에서 정수 입력 - > 아두이노에서 반응 analogWrite(8 , r) ; }0~ 255 로 밝기 조절이 가능하다! 2)..

Hello World!/IoT 2020.09.07

간단한 아두이노 스위치

아두이노에서 스위치를 동작시켜보았다. 우선 GND(그라운드, - ) 에 하나를 연결하고 8번에서는 + 가 나가서 스위치를 만났다. 스위치를 누르게 되면 회로가 닫히면서 전류가 흐르게 된다. [ 아두이노 회로 구성 ] 이때 회로의 문제점 ! 저항이 없다는 것이 문제라고 할 수 있다. V = IR (r 이 거의 0 으로 수렴해버리면 엄청 높은 값이 생기게 된다.) 그렇게 되면 아두이노가 고장날 수 있다고 한다. 하지만 저항을 안넣어줘도 정확하게 아두이노가 동작할 수 있었다. 아두이노에는 내부저항이 있기 때문이다! [ 아두이노 스케치의 코드 ] INPUT_PULLUP (off (스위치 안누름, 열린다.): 1 , on(스위치누름, 닫힌다.): 0 ) ON 닫힌다 0 OFF 열린다 1 결국 스위치를 쉽게 구성하..

Hello World!/IoT 2020.09.06

WAS 와 Web server 의 차이점

WAS (Web Application Server) 웹 애플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 소프트웨어 프레임워크, 미들웨어로 볼 수 있다. ( php,jsp,asp 등 이처럼 중간에 있는 것들을 미들웨어 라고 한다.) WAS 는 동적 서버 컨텐츠를 수행하는 것으로 정적인 콘텐츠를 처리하는 웹 서버와 구분된다. 데이터베이스 서버와 같이 수행된다. - 클라이언트/서버 환경 보다는 웹 환경을 구현하기 위한 미들웨어 - Http 세션 처리를 위한 웹 서버 기능 뿐만 아니라 미션 - 크리티컬한 기업 업무까지 Java, EJB 컴포넌트 기반으로 구현이 가능하다. -대표적인 구축 소프트웨어에는 Apache 재단의 Tomcat, Tmax 사의 Jeus, IBM 사의 Web Sphere와 Ope..

Hello World!/공부 2020.09.02

아두이노 시리얼 통신

시리얼 통신이란? 프로그래밍을 하다보면 정확하게 동작하는지 확인하게 된다. 아두이노는 아두이노 위로 프로그램이 올라가기 때문에 어떻게 돌아가는지 확인하기가 어렵다. 이때 읽어 들인 센서의 값을 눈으로 보기 위한 방법이 시리얼 통신이다. 시리얼 통신은 데이터를 주고 받기 위한 통신 방법이다. ( 통신의 가장 기본적인 방법 ) 시리얼 통신을 통해 LOW, HIGH 신호 (0,1) 의 데이터를 보낼 수 있다. setup () 한 번 실행되는 함수에 Serial.begin(9600) 입력! 보통 9600을 사용한다. 시리얼 통신이 열리게 됨 loop () 함수에서 받으면 되는데 한 번 루프를 돌때마다 시리얼 안쪽에 값이 들어가 있는지 아닌지 판별하는 if 문이 필요하다. if(Serial.available())..

Hello World!/IoT 2020.08.31

아두이노 기초

아두이노 UNO 기초 정리 - Tx Rx : 보내고 받을 때 불빛을 통해 자료를 주고 받는 것을 확인할 수 있다. (컴퓨터와 아두이노 보드간의 통신 상태를 볼 수 있음) - Power : 아두이노와 연결하여 전원을 공급하기 위한 5V, GND 핀들 (전원 LED를 통해 보드가 정상인지 판단하고 전원이 들어오고 있다는 것을 알 수있다.) - Reset 버튼 : 아예 리셋이 되는게 아니라 껐다 켜지는 버튼이다. - USB 포트 : 아두이노 우노 보드에 스케치 업로드 , 전원 공급 , Serial.print() 과 같은 명령을 통해 컴퓨터와 시리얼 통신을 하기 위한 용도다. (B type 이용 ) - 외부 전원 포트 - 아날로그 핀 ) 아두이노 판에 보면 ANALOG IN 이라고 써있는 부분에 A0~A5 까지..

Hello World!/IoT 2020.08.26

http 와 https 의 차이

Http Http(Hypertext Transfer Protocol) 는 서버와 클라이언트가 인터넷상에서 데이터를 주고받기 위한 프로토콜이다. Http 는 서버/클라이언트 모델 요청 메서드: GET, PUT, POST, PUSH, OPTIONS 등의 요청 방식 장점 : 클라이언트와 서버가 계속 연결된 형태가 아니기 때문에 클라이언트와 서버 간의 최대 연결 수 보다 훨씬 많은 요청과 응답을 처리할 수 있고 불특정 다수를 대상으로 하는 서비스에 적합하다. 단점: 연결을 끊어버리기 때문에, 클라이언트의 이전 상황을 알 수 없다. 무상태 (Stateless) 이기 때문에 정보를 유지하기 위해서 Cookie와 같은 기술을 사용한다. Https 하이퍼 텍스트 전송 프로토콜 보안 (Hypertext Transfer ..

Hello World!/공부 2020.07.22