질문게시판 > 답변 : 수위센서, 압력센서를 이용한 서모모터 제어

TODAY274 TOTAL2,271,741
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 질문게시판 | 답변 : 수위센서, 압력센서를 이용한 서모모터 제어

페이지 정보

작성자 master 작성일2022-06-04 10:44 조회891회 댓글0건

본문

	

수위센서 및 압력센서를 이용하여 서보모터를 제어

 

제가 질문드리고자 하는 점은 

1. 수위가 일정 이상일 때, 모터가 45도 위 방향으로 돌아가게 하고, 

  압력이 일정 이하일 때 모터가 45도 아래 방향으로 돌아가게 하는 코드를 작성하였는데, 

  제대로 동작이 안하는 이유

2. map 함수를 이용하지 않고, 1에서 말씀드린 것 처럼 모터만 45도씩 이동할 수 있는 코드가 맞는지 

여쭙고 싶습니다. 

//

아래 코드에는 lcd, 부져를 작동시키고자 하는 코드가 포함되어있는데, 주석처리를 하여 알아보시기 편하게 하였습니다

//

#include<Wire.h>

#include<LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3f,16,2);

#include<Servo.h> 

Servo servo; 

// 

int speakerpin=12;

int sensor=A2;

//

int value=0; 

//

void setup(){

  pinMode(2,OUTPUT);

  lcd.begin(16,2); lcd.init(); lcd.clear(); lcd.backlight();

  servo.attach(7); 

  Serial.begin(9600);

}

//

void loop(){

  int waterSensorVal=analogRead(A0); Serial.print("Water Sensor : "); Serial.println(waterSensorVal);

  delay(500);

  if(sensor<=100){ int val=analogRead(sensor); value-=45; servo.write(value); }

  //

  if(waterSensorVal>=150){ value+=45; digitalWrite(2,HIGH); }

  if(waterSensorVal<= 50){ digitalWrite(2,LOW); }                           

  if(waterSensorVal>=200){ tone(speakerpin,500,5000); delay(500); }

  if(waterSensorVal>=  1){ lcd.setCursor(0,1); lcd.print(waterSensorVal); delay(500); }   

}

 

 

  if(waterSensorVal>=150){ value+=45; 

45도를 빼는 부분이 쌩뚱맞게 수위센서에 가있는지 모르겠고

더하든 빼든 저렇게 두세번만 실행되면 0도 이하로 내려가든지 180도를 넘게 됩니다.


int sensor=A2; 

if(sensor<=100){ 

sensor는 핀이므로 if문에서 체크 대상이 아닙니다.

 

 

 

 

#include<Wire.h>

#include<LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3f,16,2);

#include<Servo.h> 

Servo servo; 

// 

int speakerpin=12;

int sensor=A2;

//

int value=90; // 초기값 90도

//

void setup(){

  pinMode(2,OUTPUT);

  lcd.begin(16,2); lcd.init(); lcd.clear(); lcd.backlight();

  servo.attach(7); servo.write(value);

  Serial.begin(9600);

}

//

void loop(){

  int waterSensorVal=analogRead(A0); Serial.print("Water Sensor : "); Serial.println(waterSensorVal);

  if(waterSensorVal>=150){ digitalWrite(2,HIGH); }

  if(waterSensorVal<= 50){ digitalWrite(2,LOW); }                           

  if(waterSensorVal>=200){ tone(speakerpin,500,5000); delay(500); }

  if(waterSensorVal>=  1){ lcd.setCursor(0,1); lcd.print(waterSensorVal); delay(500); }   

  //-----------

  int val=analogRead(sensor); // 압력센서

  if(val<=100){ value= 45; servo.write(value); } // 압력 0~100

  else        { value=135; servo.write(value); } // 압력 101~1023

  //-----------

  delay(500);

 

}


 

 

  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글 0

조회수 891

등록된 댓글이 없습니다.

질문게시판HOME > 질문게시판 목록

MCU, AVR, 아두이노 등 전자공학에 관련된 질문을 무료회원가입 후 작성해주시면 전문가가 답변해드립니다.
ATMEGA128PWMLED초음파
아두이노AVR블루투스LCD
UART모터적외선ATMEGA
전체 스위치 센서
질문게시판 목록
제목 작성자 작성일 조회
질문 아두이노 도트 매트릭스 코딩댓글[1] 이미지첨부파일 끼룩 22-06-13 895
질문 아두이노 레오나르도 업로딩 오류댓글[1] 면지지 22-06-13 987
질문 통신에 대한 기초 책 추천댓글[2] 하리 22-06-13 1302
질문 스텝모터,릴레이모듈 9V 인가 (회로도 포함)댓글[1] 이미지첨부파일 아두이노대학 22-06-12 1141
질문 esp32댓글[1] 이미지첨부파일 ejdog 22-06-12 1224
질문 Simpletimer 라이브러리 질문입니다 홍머생 22-06-11 1158
답변 답변글 답변 : Simpletimer 라이브러리 질문입니다댓글[1] master 22-06-13 806
질문 millis()? 질문드립니다.댓글[3] 브링미히어 22-06-11 1522
답변 답변글 답변 : millis()? 질문드립니다.댓글[2] master 22-06-13 630
질문 토글스위치 질문드립니다.댓글[3] 412904 22-06-11 634
질문 조도센서로 서보모터 제어 질문입니다. 왕초보입니다 22-06-11 853
답변 답변글 답변 : 조도센서로 서보모터 제어 질문입니다.댓글[1] master 22-06-11 1702
질문 블루투스와 적외선센서댓글[1] 지훈 22-06-11 1029
질문 아두이노 수위센서 모터 3개 ...댓글[1] 고옹대 22-06-10 1321
질문 atmega128 인터럽트 이용한 dc모터 제어댓글[2] 이미지첨부파일 박맹 22-06-10 1690
질문 아두이노간 블루투스 질문 드립니다.댓글[8] 흐규흐규 22-06-10 2572
질문 토글스위치를 사용한 dc모터 정역회전 제어 부분에 있어서 질문드립니다...댓글[4] 쿤싼 22-06-10 1624
질문 atmega isp 연결관련해서 질문드려요댓글[3] 아트메가넘어려워 22-06-10 1495
질문 TFT LCD 이상이 있습니다댓글[4] 이미지 플립플롭 22-06-10 1847
질문 atmega128 순차적신호 질문있습니다댓글[1] 이미지첨부파일 졸업예정 22-06-10 1191
답변 답변글 답변 : atmega128 순차적신호 질문있습니다 master 22-06-10 1435
질문 아두이노 센서 3개와 모터 bldc연동 코딩 첨부파일 RLOP35 22-06-09 985
답변 답변글 답변 : 아두이노 센서 3개와 모터 bldc연동 코딩댓글[4] master 22-06-09 1560
질문 atmega 128 led 순차적 제어입니다 졸업예정 22-06-09 1403
답변 답변글 답변 : atmega 128 led 순차적 제어입니다 master 22-06-09 1266
질문 ATMEGA128 인터럽트 관련질문입니다댓글[2] 짜요쩌요 22-06-09 1285
질문 아두이노 코드를 보던 중, define부분이 이해가 안되서 해석 부탁드립니다댓글[2] 선학 22-06-09 1123
질문 LCD 화면 문자출력이 안되요..댓글[3] 이미지첨부파일 chelsea 22-06-09 614
질문 서보모터 2개... 살려주세요댓글[3] 브링미히어 22-06-09 1237
질문 아두이노 코딩 질문드립니다!댓글[2] 흑백 22-06-08 1164
게시물 검색

2022년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2021년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2020년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2020
모바일버전으로보기