산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

리버스 자판기(RVM)

구성품 및 소모품

Arduino Mega 2560
× 1
NodeMCU ESP8266 브레이크아웃 보드
× 1
유도형 근접 센서, 15mm
× 2
용량성 근접 센서, 12mm
× 1
SG90 마이크로 서보 모터
× 2
영숫자 LCD, 16 x 2
× 1
초음파 센서 - HC-SR04(일반)
× 2
GPS 모듈(일반)
× 1
부저, 피에조
× 1
단일 회전 전위차계 - 100,000옴
× 1
스위치 액츄에이터, 스프링 리턴 푸시 버튼용 헤드
× 1
5mm LED:빨간색
× 2
점퍼 와이어(일반)
× 1
배터리, 12V
× 1
9V 배터리(일반)
× 1
브레드보드(일반)
× 2

필요한 도구 및 기계

납땜 인두(일반)
Digilent Mastech MS8217 자동 범위 디지털 멀티미터
와이어 스트리퍼 및 절단기, 18-10 AWG / 0.75-4mm² 용량 전선

앱 및 온라인 서비스

Arduino IDE
블링크
ThingSpeak API

이 프로젝트 정보

동기:

플라스틱 물병의 끝은 어디인가요?

매립지, 바다, 강 및 보도에 떠 있습니다. 제곱마일당 46,000개의 플라스틱 쓰레기가 바다에 떠 있는 것으로 추정됩니다. 이 플라스틱은 동물을 죽이고 화학 물질을 누출시키며 생태계를 교란시키고 있습니다. 각 병은 분해되는 데 최대 1000년이 걸릴 수 있으며, 이 과정에서 위험하고 유해한 화학 물질이 누출됩니다. 누출된 일부 독소는 암과 생식 장애를 유발할 수 있습니다. 플라스틱을 태우면 일산화탄소, 염소, 염산, 퍼안, 아질산염과 같은 독성 배출물이 생성됩니다. 불행히도, 재활용에 대한 주장은 1년에 사용되는 350억 병 중 12%만이 재활용되기 때문에 그 경우에 거의 할 수 없습니다. 이는 재활용 쓰레기통에 버린 것의 절반만 실제로 재활용된다는 것을 나타냅니다.

아이디어:

플라스틱 및 금속 폐기물 처리를 위한 스마트 기계는 플라스틱 폐기물(병) 및 금속 캔을 재활용용으로 수용하고 그 대가로 폐기물을 재활용하는 운영자에게 지갑에 파인트를 분배하는 시스템입니다. 역 자판기에는 병의 종류를 구별하는 근접 센서가 장착되어 있으며 사용자가 웹사이트에 코드를 입력하면 포인트가 적립됩니다. 본 발명은 일반적으로 폐기물 관리 및 플라스틱 및 금속 폐기물(병) 재활용에 관한 것입니다. 환경. 환경에 플라스틱 폐기물이 버려지고 플라스틱을 재활용하려는 의지가 낮아짐에 따라 환경과 모든 생명체에 지속적인 문제가 발생합니다.

<그림>

작동 중:

역 자판기는 사용한 음료수 용기를 받아 사용자에게 돈을 돌려주는 장치입니다(일반적인 자판기의 역순). 기계는 의무적인 재활용법이나 용기 보관법이 있는 곳에서 널리 사용됩니다.

기본 작업에는 재활용자가 빈 병/캔을 수용 구멍에 넣는 단계가 포함됩니다. 수평 인피드 시스템을 통해 사용자는 한 번에 하나씩 용기를 삽입할 수 있습니다. 그런 다음 용량성 및 유도성 근접 센서를 사용하여 병/캔을 자동으로 스캔합니다. 유도성 센서의 센서 값이 1이면 물체는 플라스틱이고 유도성 센서의 센서 값이 0이고 정전 용량 센서 값이 1이면 물체는 플라스틱입니다.

보상 시스템의 경우 RVM은 음료 용기를 재활용할 때 코인이나 쿠폰과 같은 가치 있는 토큰을 배포합니다. 쿠폰은 카운터에서 선물을 교환하는 데 사용됩니다. 그러나 환경 문제에 대한 인식과 종이 사용량을 줄이기 위한 목적으로 쿠폰 인쇄는 그다지 선호되지 않습니다. 따라서 우리가 제안하는 시스템에서는 플라스틱이 감지되면 LCD 화면에 암호화된 코드가 나타납니다. 그런 다음 사용자는 기계에 있는 OR 코드를 스캔하여 웹사이트로 이동하여 LCD 화면에 얻은 코드를 입력하여 포인트를 사용해야 합니다.

<그림>

역플라스틱 자판기 홈페이지에 계정이 있는 사용자를 위한 데이터베이스가 있습니다. 플라스틱 폐기에 대한 포인트를 사용하려면 웹사이트에 로그인하는 계정이 있어야 합니다.

이 기계에는 하나의 기능이 더 있습니다. 기계가 가득 차면 가비지 수집기 또는 재활용 공급업체가 애플리케이션의 도움을 받아 알림을 받을 수 있습니다. 기계가 가득 차면 초음파 센서와 NodeMCU를 사용하여 기계의 높이를 모니터링하고 GPS를 통해 기계의 정확한 위치를 수집기에게 알려줍니다.

<그림> <그림>

<섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">

코드

<울>
  • 폐기물 분리
  • 쓰레기통 수준 모니터링
  • 폐기물 분리C/C++
    #include //#include "Arduino.h"//#include "Button.h#include LiquidCrystal lcd(1,2,4,5,6,7);const int knapp =3;int ButtonState =0; // 버튼의 현재 상태int oldButtonState =0;const int ledPin1 =10; 상수 정수 ledPin2 =11; const int 버즈1 =12; const int 버즈2 =13; const int plasticsensor=A0;int metalsensor=A1;int metalsensor_M=A2;Servo myservo;Servo myservo_M;int pos =90;int pos_M =360;void setup() { pinMode(knapp, INPUT); digitalWrite(냅, LOW); lcd.begin(16,2);lcd.clear(); myservo.attach(9); myservo_M.attach(8); 핀모드(플라스틱센서,INPUT_PULLUP); 핀모드(금속센서,INPUT_PULLUP); 핀모드(금속센서_M,INPUT_PULLUP); 핀모드(LED핀1, 출력); 핀모드(LED핀2, 출력); 핀모드(버즈1, 출력); 핀모드(버즈2, 출력); Serial.begin(9600);} 무효 루프() { lcd.setCursor(0,0); lcd.print("금속 삽입 ON"); lcd.setCursor(0,1); lcd.print(" 오른쪽 "); 지연(6000); lcd.clear(); int sensor_read=digitalRead(플라스틱 센서); Serial.println("플라스틱 센서"); Serial.println(sensor_read); //지연(10); int sensor_read_m=digitalRead(금속 센서); //플라스틱 용기 Serial.println("금속 센서1"); Serial.println(sensor_read_m); //지연(10); int sensor_read_mm=digitalRead(metalsensor_M); Serial.println(sensor_read_mm); //지연(10); if((sensor_read==1)&&(sensor_read_m!=1)){ for (pos =90; pos <=240; pos +=1) { // 0도에서 180도까지 // 1도씩 myservo.write(pos); // 서보에 변수 'pos'의 위치로 이동하도록 지시합니다. //delay(5); 디지털 쓰기(ledPin1, HIGH); 디지털 쓰기(버즈1, 높음); // 서보가 위치에 도달할 때까지 15ms를 기다림 } //delay(5000); for (pos =240; pos>=90; pos -=1) { // 0도에서 180도까지 // 1도씩 단계적으로 myservo.write(pos); //지연(5); } } else { // 180도에서 0도까지 이동합니다. myservo.write(pos); 디지털 쓰기(ledPin1, LOW); digitalWrite(buzz1, LOW); } if((sensor_read_mm==1)&&(sensor_read==0)){ for (pos_M =360; pos_M>=50; pos_M -=1) { // 0도에서 180도까지 // 1단계로 이동 학위 myservo_M.write(pos_M); //지연(5); 디지털 쓰기(ledPin2, HIGH); 디지털 쓰기(buzz2, HIGH); } // 서보에 변수 'pos'의 위치로 이동하도록 지시합니다. // delay(5000); for (pos_M =50; pos_M <=360; pos_M +=1) { // 180도에서 0도 myservo_M.write(pos_M); // 서보가 'pos' 변수의 위치로 이동하도록 지시합니다. //delay(5);// 서보가 위치에 도달할 때까지 15ms를 기다립니다. } } else{ myservo_M.write(pos_M); 디지털 쓰기(ledPin2, LOW); digitalWrite(buzz2, LOW); } } 
    쓰레기통 수준 모니터링C/C++
    #include "ThingSpeak.h#include #include #include #include #define BLYNK_PRINT 직렬 #define TRIGGER2 5#define ECHO2 4WiFiClient 클라이언트, 정적 const int RXPin =4, TXPin =5; // GPIO 4=D2(GPS의 Tx 연결) 및 GPIO 5=D1(GPIO의 Rx 연결 const uint32_t GPSBaud =9600; // 전송 속도 9600이 귀하의 경우에 작동하지 않으면 4800unsigned long myChannelField =1067056을 사용하십시오. / Channel IDconst int ChannelField =1; // 데이터를 쓸 채널 const char * myWriteAPIKey ="FMV95MD2A1J7Y8SP"; // 쓰기 ATinyGPSPlus gps; // TinyGPS++ objectWidgetMap myMap(V0); // Map WidgetSoftwareSerial ss의 가상 핀용 V0 (RXPin, TXPin); // GPS 장치에 대한 직렬 연결BlynkTimer 타이머;// Blynk App.char auth[] ="YVvgHBx9fIM1-yR_2XrGXXkKdIuEmrYL";// WiFi 자격 증명.// 비밀번호 설정에서 인증 토큰을 받아야 합니다. 열린 네트워크의 경우 ""로 ssid[] ="diksha";char pass[] ="diksha19"; unsigned int move_index =1;void setup() { Serial.begin(115200), ss.begin(GPSBaud); Blynk.begin(auth, ssid, pass); // timer.setInterval(5000L, checkGPS); pinMode(TRIGGER2, OUTPUT); pinMode(ECHO2, INPUT); pinMode(BUILTIN_LED, OUTPUT); WiFi.mode(WIFI_STA);ThingSpeak.begin(client);}/*void checkGPS(){ if (gps.charsProcessed() <10) { Serial.println(F("GPS가 감지되지 않음:배선을 확인하십시오.")); }}*/void loop() { if (WiFi.status() !=WL_CONNECTED) { Serial.print("SSID 연결 시도:"); Serial.println(ssid); while (WiFi.status() !=WL_CONNECTED) { WiFi.begin(ssid, 통과); Serial.print("."); 지연(100); } Serial.println("\n연결되었습니다."); } while (ss.available()> 0) { // 스케치는 새 문장이 올바르게 인코딩될 때마다 정보를 표시합니다. if (gps.encode(ss.read())) Serial.println("GPS 연결됨");//displayInfo(); { if (gps.location.isValid() ) { 부동 위도 =(gps.location.lat()); //위도를 저장합니다. 그리고 론. 부동 경도 =(gps.location.lng()); Serial.print("LAT:"); Serial.println(위도, 6); // 소수점 x자리까지 부동 Serial.print("LONG:"); Serial.println(경도, 6); ThingSpeak.setField(3, 위도); ThingSpeak.setField(4, 경도); ThingSpeak.writeFields(myChannelField, myWriteAPIKey); Blynk.virtualWrite(V1, 문자열(위도, 6)); Blynk.virtualWrite(V2, String(경도, 6)); myMap.location(move_index, 위도, 경도, "GPS_Location"); } } } //긴 기간1, 거리1; 긴 기간2, 거리2; 디지털 쓰기(트리거2, 낮음); 지연 마이크로초(2); 디지털 쓰기(트리거2, 높음); 지연마이크로초(10); 디지털 쓰기(트리거2, 낮음); 지속 시간 2 =펄스 인(ECHO2, HIGH); 거리2 =(지속시간2/2) / 29.1; if (distance2 <=5) { Blynk.notify("제발!! 휴지통을 비우세요");} Serial.println("2 초음파 센티미터:"); Serial.println(distance2); Blynk.virtualWrite(V6, distance2); ThingSpeak.writeField(myChannelField, ChannelField, distance2, myWriteAPIKey); 지연(100); Blynk.run(); timer.run();} 

    회로도


    제조공정

    1. 재봉틀
    2. 스마트폰 근접 센서로 사무실 문 자동 잠금 만들기
    3. 감자 튀김 자판기는 어떻게 작동합니까?
    4. 우유 자판기란?
    5. 칩 자동 판매기는 어떻게 뜨겁고 신선한 칩을 제공할 수 있습니까?
    6. 국수 자판기 란 무엇입니까?
    7. 차 커피 수프 자동 판매기 란 무엇입니까?
    8. 식사 준비 자판기로 건강한 식사하세요!
    9. 청량 음료 자동 판매기에서 무엇을 기대할 수 있습니까?
    10. 아이스 자판기:비즈니스 잠재력