본문 바로가기

만들기/아두이노35

아두이노 시리얼 모니터 0 자동 입력 오류 아두이노를 이용하여 서보모터를 사용중 시리얼모니터에 각도값을 입력하면 loop를 뒤 0이 자동으로 입력됐다. 코드에선 자동으로 변경하는 값이 없는데 왜그럴까 찾아보니 시리얼모니터에서 입력설정이 새줄로 선택되어 생기는 문제였다. 전송버튼을 눌렀을 때 입력되는 설정을 보면 새줄, 캐리지리턴, both LN&CR 이라고 있는데 이것은 시리얼 모니터에서 어떤 값을 입력했을 때 보기 좋게 만들기 위해 자동줄바꿈 혹은 커서위치를 조절하는 \r과 \n을 자동으로 입력해준다. 하지만, Serial.parseInt를 사용했을 때 여러개의 값이 입력하면 시리얼모니터에 순서대로 입력하는데 \n, \r이 입력되는 경우 숫자가아닌 문자이기 때문에 0 으로 입력된다. 그래서 새줄 혹은 캐리지리턴이 설정되어 있다면 0 값이 반복적.. 2022. 4. 15.
아두이노 무선데이터통신 HC-05 블루투스 연결하기 (2) 블루투스 모듈을 사용하기 위해 아두이노에서 데이터를 송수신 할 수 있도록 프로그래밍을 해줘야한다. 소프트웨어 아두이노 핀을 보면 RX,TX로 고정된 핀이 있지만 소프트웨어적으로 핀을 지정하여 RX, TX로 사용할 수 있다. SoftwareSerial 함수를 이용하여 아두이노의 디지털핀을 RX와 TX로 사용할 수 있다. #include SoftwareSerial BTSerial(9, 8); //9번을 RX로 8번을 TX로 지정한다. BTSerial이라는 이름으로 블루투스 모듈을 사용한다. void setup() { Serial.begin(38400); // 시리얼통신 BTSerial.begin(38400); // HC05의 AT mode 와 데이터송수신에 사용 } void loop() { if (BTSer.. 2022. 4. 14.
아두이노 무선데이터통신 HC-05 블루투스 연결하기 (1) 아두이노를 이용하여 무선 데이터 통신방법중 블루투스를 사용하기 위한 모듈이다. HC-05와 HC-06은 블루투스 2.0을 사용하여 데이터통신을 하고 HC05는 마스터와 슬레이브 둘다 설정할 수 있으며 HC06은 슬레이브모드만 가능하다. (마스터는 데이터를 보내는 장치이고 슬레이브는 마스터에서 보낸 데이터를 받을수만 있다) 1) 하드웨어 HC-05 모듈에는 6개의 핀이 있는데 이중에서 RXD(데이터수신), TXD(데이터전송), GND(접지), VCC(전원), EN(모드변경)을 사용한다. 모듈의 뒷면에 적힌것처럼 블루투스 모듈은 3.3-6V에서 동작하고 데이터의 송수신은 3.3V로 이루어진다(그렇기 때문에 전선을 아두이노 우노와 연결시 디지털핀에서 나오는 5V를 3.3V로 변경시켜줘야한다) 아두이노와 블루투.. 2022. 4. 14.
아두이노 서보모터 외부전원 작동하지 않을때 일반적으로 아두이노를 이용하여 서보모터를 연결하면 다음과 같이 연결된다. 하지만, 토크가 강한 모터를 쓰기 위해서는 아두이노에서 출력되는 전류가 충분하지 않아 외부전원을 연결해줘야한다. 그래서 다음과 같이 연결하면 작동하지 않는다. 아마 틱하고 움직이고 고정된 상태로 멈춰있는다(모터를 손으로 돌려보면 안움직이는 것을 확인할 수 있다. 전류가 계속 흐르고 있다) 그래서 다음처럼 연결해줘야 아두이노가 코딩된 신호에 맞춰서 전류를 on/ off 할 수 있다. 2022. 4. 9.
아두이노 서보모터 회전운동을 왕복운동으로 MG996R 서보모터를 이용해서 회전운동을 왕복운동으로 바꾸는 장치를 만들어보았다. 준비물: MG996R 서보모터, 아두이노 우노, 3D프린터 갈색 - GND 연결 빨강 - + 연결 주황 - 아두이노 9번핀 연결 아두이노 코드 #include int servoPin = 9; Servo servo; int angle = 0; // servo position in degrees void setup() { servo.attach(servoPin); } void loop() { // scan from 0 to 180 degrees for(angle = 0; angle < 70; angle++) { servo.write(angle); delay(20); } servo.detach(); delay(2000); se.. 2022. 4. 9.
[아두이노] 토양습도센서 고장 (부식) 인터넷에서 토양습도센서를 1000원이하로 구할 수 있다. 하지만 너무 안좋은 제품들은 일정시간 사용하면 산화되어서 센서값에 정확성이 많이 떨어질 수 있다. 처음 센서를 사용했을 때 700 정도 나오던 토양 환경에서 일주일동안 사용한 다음 사라진 전극 상업적으로 사용하기 위해서는 부식에 강하고 안정적인 센서를 사용해야할 것 같다. 2021. 11. 14.