제조공정
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
| ||||
|
| ||||
| ||||
| ||||
| ||||
|
스마트 홈 문제를 해결해야 하는 이유는 무엇입니까?
새로운 기능은 무엇입니까?
우리가 그것을 만들기로 결정한 이유는 무엇입니까?
작업
디지털 에너지 미터
그림>
AI 가상 비서
신호의 흐름은 다음과 같습니다.
<울>핀 연결:
<울>그림>
에너지 측정기 연결:
<울>
회로도
사용된 하드웨어 및 장비: <울>
프로그래밍 플랫폼
<울>
구현: <울>
동영상
유용한 링크: 섹션> <섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">
#includeLiquidCrystal lcd(7,6,5,4,3,2);int led=13; // 13번째 핀에서 LED 선언#define pulsein 8 //펄스 입력 핀 8 정의 unsigned int pusle_count=0; //펄스 카운트 유형을 integerfloat 단위로 선언 =0; //단위를 Floatunsigned로 선언 int rupees=0; // 루피 유형을 unsigned integerunsigned로 선언 int temp=0,i=0; //temp&i를 부호 없는 정수로 선언char str[70],flag1=0,flag2=0; // 문자 길이를 문자열로 선언하고 flagsvoid setup() { lcd.begin(16,2); // LCD 타입을 16x2로 초기화 Serial.begin(9600); // 직렬 전송 속도를 9600으로 초기화 pinMode(led, OUTPUT); 핀모드(펄스인, 입력); digitalWrite(펄세인, HIGH); lcd.setCursor(0,0); lcd.print("무선 에너지"); lcd.setCursor(0,1); lcd.print(" 미터 "); 지연(2000); lcd.clear(); lcd.print("별"); 지연(2000); lcd.clear(); lcd.print("GSM 초기화 중..."); gsm_init(); lcd.clear(); lcd.print("시스템 준비"); Serial.println("AT+CNMI=2,2,0,0,0"); init_sms(); send_data("시스템 준비"); 문자를 보내다(); 지연(1000); 디지털 쓰기(LED, LOW); lcd.clear();} 무효 루프() { 직렬 이벤트(); // 직렬 이벤트 확인 단위=루피/5.0; // 단위 계산 lcd.setCursor(0,0); lcd.print("단위:"); lcd.print(단위); lcd.print(" "); lcd.setCursor(0,1); lcd.print("루피:"); lcd.print(루피); lcd.print(" "); 읽기_펄스(); if(temp==1) { 체크(); }}void serialEvent() // 들어오는 SMS를 수신하고 확인하기 위한 직렬 이벤트{ while(Serial.available()) { if(Serial.find("#")) { digitalWrite(led, HIGH); 지연(1000); 디지털 쓰기(LED, LOW); 동안 (Serial.available()) { char inChar=Serial.read(); str[i++]=inChar; if(inChar=='*') { 임시 =1; 반품; } } } } void init_sms() //초기화 및 메시지 전송 구성{ Serial.println("AT+CMGF=1"); 지연(200); Serial.println("AT+CMGS=\"여기에 휴대폰 번호를 입력하세요\""); delay(200);}무효 send_data(문자열 메시지){ Serial.println(메시지); delay(200);}void send_sms(){ Serial.write(26);}//에너지 측정기에서 펄스 읽기void read_pulse(){ if(!digitalRead(pulsein)) { digitalWrite(led, HIGH); 단위++; 루피=단위*5; 동안(!디지털읽기(펄세인)); 디지털 쓰기(LED, LOW); }}//메시지 상태 확인 void check(){ if(!(strncmp(str,"units",5))) { Serial.println("AT+CMGF=1"); 지연(200); Serial.println("AT+CMGS=\"여기에 휴대폰 번호를 입력하세요\""); 지연(200); lcd.setCursor(0,1); send_data("에너지 미터 단위:"); Serial.println(단위); send_data("\n루피:"); Serial.println(루피); 지연(200); Serial.write(26); 플래그1=1; 플래그2=1; 온도=0; } } 무효 message_sent(){ lcd.clear(); lcd.print("메시지를 보냈습니다."); 지연(1000);} 무효 gsm_init(){ lcd.clear(); lcd.print("모듈 찾기.."); 부울 at_flag=1; while(at_flag) { Serial.println("AT"); while(Serial.available()>0) { if(Serial.find("OK")) at_flag=0; } 지연(1000); } lcd.clear(); lcd.print("모듈이 연결되었습니다.."); 지연(1000); lcd.clear(); lcd.print("에코 비활성화"); 부울 echo_flag=1; while(echo_flag) { Serial.println("ATE0"); while(Serial.available()>0) { if(Serial.find("OK")) echo_flag=0; } 지연(1000); } lcd.clear(); lcd.print("에코 끄기"); 지연(1000); lcd.clear(); lcd.print("네트워크 찾기.."); 부울 net_flag=1; while(net_flag) { Serial.println("AT+CPIN?"); while(Serial.available()>0) { if(Serial.find("+CPIN:준비")) net_flag=0; } 지연(1000); } lcd.clear(); lcd.print("네트워크를 찾았습니다.."); 지연(1000); lcd.clear();}
제조공정
구성품 및 소모품 Arduino UNO × 1 12v 4채널 릴레이 × 1 Adafruit RGB 백라이트 LCD - 16x2 × 1 GSM 모듈 SIM900A × 1 12v 어댑터 × 1 필요한 도구 및 기계 납땜 인두(일반) 앱 및 온라인 서비스 Arduino IDE 이 프로젝트 정보 휴대 전화는 세기의 혁명적인 발명품입니다. 주로 전화와 문자를 주고받기 위한 용
Arduino 오픈 소스 하드웨어 플랫폼에서 회로를 생성하려면 Arduino 실드를 사용해야 합니다. 프로젝트에서 하드웨어 및 회로 배선의 복잡성을 줄이는 데 도움이 됩니다. 이 기사에서는 Arduino Sheild가 무엇인지, 다양한 유형 및 설치 프로세스에 대해 알아봅니다. Arduino Shield란 무엇입니까? Arduino 실드는 추가 기능을 제공하기 위해 Arduino 보드에 부착되는 하드웨어 애드온 보드입니다. Bluetooth, 모터 드라이버 및 WiFi와 같은 기능을 사용하여 다양한 IoT 프로젝트를 만드는 데